Sto cercando una libreria disassembler Java x86 che dovrebbe avere seguenti caratteristiche:Qualsiasi libreria di disassemblatore Java x86 flessibile orientata agli oggetti?
- smontaggio di codice X86
- Descrivendo i comandi X86 con le classi Java e oggetti
- Le classi di comando dovrebbe accettare un visitatore che ha un generico valore di ritorno
Quindi, se ho un po 'di codice che avrebbe smontare in questo modo:
MOV EAX, EBX
CALL 1234
JMP 88
quindi la libreria dovrebbe creare tre oggetti per MOV, CALL e JMP. Quindi realizzo un visitatore che fa cose diverse (es: interpretazione, conversione in x64 o in un'istruzione per un'altra architettura di processore).
Grazie in anticipo.
Non credo che esista un tale disassemblatore, perché l'assemblatore è procedurale. Quindi non puoi convertire da procedurale in Object Oriented senza ridisegnare l'applicazione e questo deve essere fatto a mano. – Zemzela
Il punto non riguarda la conversione procedurale alla progettazione orientata agli oggetti. Voglio solo una libreria che descriva le procedure come oggetti Java e posso fare tutto ciò che voglio con loro. – belgther
Ma perché non si usa un normale disassemblatore x86 per smontare il binario e analizzare l'output con un programma Java. È quindi possibile leggere semplicemente il codice smontato in un elenco di oggetti che rappresentano le istruzioni MOV o CALL; oppure potresti provare a costruire una struttura ad albero cercando di identificare i sottoelementi tramite le istruzioni di salto. –