Contents

La finestra principale

Dopo aver selezionato un file, premendo il pulsante Decompila e attendendo qualche istante, la struttura del progetto decompilato apparirà sullo schermo. Sul lato sinistro della finestra si trova una vista ad albero di form, moduli e procedure. Il contenuto della procedura o funzione selezionata appare nella sezione a destra. Se l'opzione Stile della come in Visual Studio è abilitata nelle Opzioni, la disposizione dell'albero degli oggetti sarà sulla destra, con il codice visualizzato sulla sinistra.

VB Decompiler stile della come in Visual Studio

Particolare attenzione dovrebbe essere rivolta agli elementi della barra degli strumenti. Sopra l'albero degli oggetti ci sono due pulsanti a freccia per navigare avanti e indietro nella cronologia delle visualizzazioni delle funzioni (appariranno dopo l'apertura di due o più funzioni), il nome del formato interno del file e due modalità di decompilazione: Parametri di compilazione e Analizza e ottimizza le procedure. Esamineremo ciascuno di questi elementi in dettaglio di seguito.

I pulsanti a freccia servono per navigare nella cronologia delle visualizzazioni delle funzioni. A volte è utile tornare a una funzione precedente durante la visualizzazione di una funzione di un programma decompilato, per poi tornare indietro. VB Decompiler tiene traccia della cronologia delle funzioni visualizzate e dopo l'apertura di due o più funzioni, appaiono i pulsanti di navigazione. Questi pulsanti memorizzano anche i passaggi di navigazione utilizzando la scorciatoia da tastiera Ctrl + G o attraverso l'opzione di menu corrispondente Vai all'indirizzo virtuale.

Successivamente si trova il nome del formato interno del file. Se vogliamo essere più precisi, si tratta del tipo di codice che è stato compilato nel programma. Questo tipo influisce direttamente sulla qualità della decompilazione e sul grado di somiglianza tra i risultati e il codice sorgente originale. Attualmente sono supportati i seguenti formati: P-Code, Codice Nativo, Assembly .NET. Per una descrizione dettagliata di tutti questi tipi, consultare la Descrizione.

Ora parliamo delle modalità di decompilazione. Ciascuna di queste modalità funziona automaticamente se è abilitata la Decompilazione rapida. Se la Decompilazione rapida è disabilitata, dopo aver impostato le caselle di controllo necessarie, è necessario riavviare la decompilazione. Ogni modalità di decompilazione descritta di seguito funziona in modo diverso a seconda del formato del file.

Per i file P-Code, l'analisi dai parametri dello stack include lo srotolamento delle operazioni dello stack, convertendo comandi come:

push var_b
push Rnd
call %x1(%x2)

in una forma più comprensibile:

call Rnd(var_b)

Disabilitare questa modalità è rilevante nei casi in cui il prototipo della funzione è sconosciuto e il contenuto dello stack non viene visualizzato dal decompilatore.

Per il Codice Nativo, quando la modalità Parametri di compilazione è disabilitata, il codice viene visualizzato in Assembler (il cosiddetto codice macchina). Con la modalità abilitata, il codice viene elaborato da un emulatore e convertito in una forma più leggibile (quando il codice Assembler viene trasformato in codice più simile al codice Visual Basic).

La modalità Analizza e ottimizza le procedure include una profonda ottimizzazione del listato generato. I blocchi di comandi vengono combinati, le variabili inutilizzate e le strutture ausiliarie vengono eliminate. Il codice diventa più simile all'originale. Questa modalità funziona in modo simile sia per il P-Code che per il Codice Nativo.

Per l'Assembly .NET, attualmente, il cambio delle modalità funziona in modo simile al P-Code, nel senso che il codice MS IL pseudo codice viene convertito in una forma più simile al codice C#.

Queste funzionalità saranno ulteriormente sviluppate e migliorate nel tempo.



Main     News     Products     Documentation     Articles     Download     Order now     About us    

Privacy policy