Hallo liebe Gemeinde, ich stehe zur Zeit vor folgendem Problem: Ich besitze ein "Gerät" mit gen. CPU. Ich würde gern einige Funktionen des Gerätes erweitern, sozusagen ein Improvement durchführen. Ich habe mir das KPIT GNU-Toolchain (GNUSH) geladen und bin sehr zufrieden in Verbindung mit KIT-Eclipse. Ich bekomme jedoch die Binärdateien der Firmware nicht disassembliert. Beim Aufruf von "renesas-objdump -d ObjFile", erhalte ich immer die Fehlermeldung "File Format not recognized". Ich habe Erfahrungen in 6502, Z80, 8088, 80486, habe sowohl Assembler und Disassembler selbst programmiert und auch Erfahrungen im Compilerbau. Ich hoffe ihr könnt mir weiterhelfen. Danke fürs lesen. Gruß Reinhold
> Ich bekomme jedoch die Binärdateien der Firmware nicht disassembliert. > Beim Aufruf von "renesas-objdump -d ObjFile", erhalte ich immer die > Fehlermeldung "File Format not recognized". Hast du dir schonmal die Manualpage von objdump durchgelesen? -d --disassemble Display the assembler mnemonics for the machine instructions from objfile. This option only disassembles those sections which are expected to contain instructions. Mit anderen Worten objdump ist in der Lage objektfiles in einem bekannten Format zu verarbeiten. Aber vermutlich nicht irgenwelche beliebigen Binaerfiles! Olaf
Olaf schrieb: > Aber vermutlich nicht irgenwelche beliebigen Binaerfiles! Doch, Binärblobs gehen mit einigen Extraparametern ebenfalls. Hab' damit gerade ELSAs (RIP) UPX-Format reverseengineert, um eigenen Code auf einen alten DSL-Router zu bekommen. Beispiel:
1 | wget -O cv.upx ftp://ftp.lancom.de/LANCOM-Archive/LC-DSL-I-10/LC-DSLI10-A-CV-2.11.0007.upx |
2 | sh-elf-objdump --adjust-vma=0xc003eb0 -b binary -m sh3 -D cv.upx > cv.asm |
Entry ist bei c003fb0 zu sehen, jmp nach main (c005090) bei c003fde.
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.