http://binarysmash.googlecode.com
Qui ho messo l'SVN del mio ambizioso (e masochista) progetto del disassemblatore per Linux x86. Per ora ci stiamo lavorando su io e konrad, presto si dovrebbero aggregare anche Chuzz ed evilsocket. Il progetto è a buon punto, lo scheletro di gestione del codice via header ELF l'ho giàscritto e riconosce giàtutte le MOV, PUSH, POP, LEA, INT, JMP vari e ora sto lavorando sui CMP. Ora c'è solo da implementare il riconoscimento degli altri principali opcode Assembly per processori Intel (esempio, gli opcode logico-aritmetici, una rogna da gestire a livello di opcode in quanto le possibilitàdi accoppiata byte-byte, word-word, long-long, reg-reg, reg-mem, reg-scal ecc. sono tantissime). Il metodo più veloce, IMHO, è assemblare un file ASM con le istruzioni che ci interessa tradurre, andare di objdump per vedere l'associazione statement ASM -> opcode e vedere come impostare il riconoscimento nel sorgente. In alternativa c'è il manuale rilasciato da Intel per gli sviluppatori sulle proprie CPU, che se volete vi posso linkare, contenente l'elenco completo degli opcode, ma lo reputo molto dispersivo e da usare solo in casi di estrema necessità.
Se volete partecipare ditemi pure, e passatemi il vostro account GMail che vi addo come developer all'SVN.
Qui ho messo l'SVN del mio ambizioso (e masochista) progetto del disassemblatore per Linux x86. Per ora ci stiamo lavorando su io e konrad, presto si dovrebbero aggregare anche Chuzz ed evilsocket. Il progetto è a buon punto, lo scheletro di gestione del codice via header ELF l'ho giàscritto e riconosce giàtutte le MOV, PUSH, POP, LEA, INT, JMP vari e ora sto lavorando sui CMP. Ora c'è solo da implementare il riconoscimento degli altri principali opcode Assembly per processori Intel (esempio, gli opcode logico-aritmetici, una rogna da gestire a livello di opcode in quanto le possibilitàdi accoppiata byte-byte, word-word, long-long, reg-reg, reg-mem, reg-scal ecc. sono tantissime). Il metodo più veloce, IMHO, è assemblare un file ASM con le istruzioni che ci interessa tradurre, andare di objdump per vedere l'associazione statement ASM -> opcode e vedere come impostare il riconoscimento nel sorgente. In alternativa c'è il manuale rilasciato da Intel per gli sviluppatori sulle proprie CPU, che se volete vi posso linkare, contenente l'elenco completo degli opcode, ma lo reputo molto dispersivo e da usare solo in casi di estrema necessità.
Se volete partecipare ditemi pure, e passatemi il vostro account GMail che vi addo come developer all'SVN.