Protect Object Declaration hides the structure of object literals by moving their visible declaration pattern into a generated helper call.
Example
Without this option:
var obj = { name: a[11], value: a[25] };
With this option enabled:
var obj = b(a[32], a[11], a[33], a[25]);
Why it helps: object literals often expose intent very clearly. Rewriting the declaration path makes those structures less obvious during static inspection.