Control Flow Flattening
Trasforma la struttura del codice per nascondere il flusso originale del programma. Rende l'analisi manuale molto più difficile convertendo il codice lineare in una macchina a stati con un'istruzione switch.
Questa opzione può rallentare sensibilmente l'esecuzione; misura l'impatto sul tuo codice. Usa controlFlowFlatteningThreshold per impostare la quota di nodi da appiattire; valori più bassi preservano meglio le prestazioni.
Il control flow flattening si combina con le altre opzioni di base e con l'offuscamento VM. Quando vmObfuscation è attivo, la virtualizzazione viene eseguita per prima e il control flow flattening si applica poi al JavaScript rimanente, come le funzioni non selezionate per la VM; il codice già compilato in bytecode non viene appiattito.
