FreeCalypso > hg > freecalypso-reveng
comparison arm7dis/README @ 107:c883e60df239
arm7dis: README and header comments added
| author | Michael Spacefalcon <msokolov@ivan.Harhan.ORG> |
|---|---|
| date | Mon, 31 Mar 2014 06:49:27 +0000 |
| parents | |
| children |
comparison
equal
deleted
inserted
replaced
| 106:a39a38bbec4d | 107:c883e60df239 |
|---|---|
| 1 The present package is a basic standalone disassembler for the ARMv4T | |
| 2 instruction set implemented on the ARM7TDMI CPU core, commonly used in classic | |
| 3 cellular phone baseband processors. The armdis utility interprets an arbitrary | |
| 4 raw binary image (i.e., one being reverse-engineered) as 32-bit ARM | |
| 5 instructions; thumbdis interprets the same image as 16-bit Thumb instructions. | |
| 6 | |
| 7 The form in which the disassembly output is presented is a look-and-feel copycat | |
| 8 of GNU objdump: armdis is meant to replace | |
| 9 | |
| 10 objdump -b binary -m arm -EL -M reg-names-std -D unknown-firmware.bin | |
| 11 | |
| 12 and thumbdis is meant to replace | |
| 13 | |
| 14 objdump -b binary -m arm -EL -M reg-names-std -M force-thumb -D unknown-fw.bin | |
| 15 | |
| 16 Aside from sparing the operator from having to remember all those options | |
| 17 every single time, and aside from being an independent from-scratch | |
| 18 implementation (lean and mean, only knows how to disassemble those instructions | |
| 19 which are meaningful on ARM7TDMI), these tools have one other feature which | |
| 20 partly prompted me to write them: whenever *dis disassembles a PC-relative | |
| 21 ldr instruction, it shows the value pulled from the literal pool on that ldr | |
| 22 line. In the reverse engineering jobs I've had to do, it has been a very | |
| 23 valuable feature for me. | |
| 24 | |
| 25 Happy hacking, | |
| 26 Spacefalcon the Outlaw |
