Esistono in realtà diversi (almeno 4) tipi di offuscamento molto diversi, che vanno dal semplice cambiamento del nome di metodi e variabili in nomi "anonimi", alla logica del programma di mangling e persino a un motore di de-offuscamento del runtime.
Gli strumenti per farlo vanno dai plugin gratuiti (alcuni programmatori addirittura scrivono tutto il loro codice in questo modo :)), attraverso strumenti commerciali costosi e di alta gamma. Dovresti sapere con cosa hai a che fare, a seconda che la risposta possa essere diversa.
Nel tuo caso, il tuo codice sembra probabilmente il Livello 2, cioè con qualche mangling del percorso del codice, non solo delle variabili. Il che significa che è ancora perfettamente valido, con gli stessi esatti risultati, solo incredibilmente difficile da analizzare manualmente. (Se si trattava solo di denominazione variabile, è possibile modificare i nomi in modo incrementale, a seconda del contesto e dell'intervallo, e cercare di capire da lì).
Non ho una soluzione semplice per te, ma la domanda è: cosa vuoi fare con esso?
- Se vuoi ricompilarlo, con piccole modifiche - dovrebbe funzionare bene,
non sarà troppo complicato, a meno che tu non abbia davvero bisogno di capire cos'è
che cosa.
- Se vuoi controllarlo manualmente per difetti - Buona fortuna,
ne avrai bisogno
- D'altra parte, non dovresti avere problemi
alimentando questo a uno scanner di codici automatico. Gli strumenti di fascia alta (:-)
) dovrebbe non avere problemi nell'analizzare questo (ma non promette), sebbene provi a verificare il
risultati, o individuare la linea di codice originale, potrebbe rivelarsi impegnativo. Ma almeno saresti in grado di ottenere una certa visibilità del livello di sicurezza.