Contents

Decompilazione

Sono disponibili le seguenti impostazioni di decompilazione:

VB Decompiler opzioni di decompilazione

L'opzione Mostra comandi di debug è esclusiva per il P-Code della classica Visual Basic e consente di visualizzare anche funzioni e comandi senza carico semantico, progettati per scopi interni del compilatore e del debugger in Visual Basic ma presenti nel file binario. Sebbene ciò possa essere raramente utile per l'analisi, crea l'immagine più completa del programma in esame. Nella maggior parte dei casi, consigliamo di disabilitare questa opzione.

L'opzione Elabora blocchi If...End If (Codice Nativo) è progettata per convertire i salti condizionali all'interno delle procedure in blocchi If...End If. Consigliamo di disabilitare questa opzione solo nei rari casi in cui il decompilatore elabora erroneamente una particolare procedura. In tutte le altre situazioni, questa funzione dovrebbe sempre essere abilitata.

L'opzione Elabora blocchi 'Else' migliora il funzionamento della precedente opzione. Il decompilatore tenta di distinguere gli operatori condizionali Else dai blocchi annidati If...End If e dagli operatori GoTo utilizzando euristici. Purtroppo, questa funzionalità non può funzionare correttamente in alcuni casi, quindi abbiamo reso possibile disabilitare questa funzione manualmente. Nella maggior parte dei casi, come la precedente opzione, dovrebbe essere abilitata.

Se la modalità Decompilazione rapida è attivata nelle Funzioni Avanzate, il codice viene decompilato solo quando un utente apre una particolare procedura. Questo impone diverse limitazioni sulla qualità del codice decompilato. In questo caso, il decompilatore non conosce mai i prototipi di una qualsiasi procedura o funzione se non sono esplicitamente lasciati dal compilatore nel file binario. A tale scopo, viene utilizzata un'analisi euristica del codice per ogni procedura, sulla base della quale viene generato un prototipo. Questo prototipo si basa su supposizioni su quanti argomenti vengono elaborati all'interno del codice e se la procedura considerata restituisce qualcosa (cioè funziona come una funzione).

Purtroppo, non è sempre conveniente disabilitare la modalità Decompilazione rapida perché la decompilazione completa richiede molto tempo e non ci permette di cambiare le opzioni rapidamente in seguito. Ed ecco che arriva in nostro soccorso l'opzione Analizza prototipi. Consente un'analisi euristica di superficie con la Decompilazione rapida attivata, basandosi solo sul codice macchina, il che avviene più rapidamente e conserva la possibilità di cambiare le opzioni rapidamente in futuro.

L'opzione Aggiungi Indirizzi è estremamente utile per analizzare il codice. Aggiunge un indirizzo virtuale a sinistra di ogni riga decompilata, permettendoti di vedere sempre nel Disassemblatore o nel Editor Esadecimale a quale codice macchina o pseudo-codice corrisponde il codice decompilato. La conoscenza degli indirizzi semplifica anche la ricerca della parte specifica del codice all'interno dei file binari che deve essere modificata.
Questa opzione dovrebbe essere disabilitata solo quando non hai intenzione di indagare approfonditamente il codice ottenuto e il tuo obiettivo è salvare il risultato per aprirlo direttamente in un IDE di un linguaggio di programmazione. Inoltre, disabilitando questa opzione, perderai la possibilità di combinare codice decompilato e disassemblato attraverso un menu contestuale con clic destro Copia nel disassemblatore. Poiché senza conoscere gli indirizzi, il decompilatore non sarà in grado di unire il codice.





Main     News     Products     Documentation     Articles     Download     Order now     About us    

Privacy policy