Emulator interface for ARM 32-bit
JuniEmu is an emulator interface designed for ARM 32-bit.
JuniEmu is using Unicorn framework for emulation, Capstone disassembly framework and Python's standard GUI package - Tkinter.
The goal of the project was to visually emulate (single step, breakpoint, memory view\edit) raw ARM binaries (bootloaders, embedded firmware, standalone functions, etc).
help
- print help
d <addr>
- dump memory to current view windows e.g. d 0x1030
u <addr>
- unassemble address or register e.g. u pc
, u 0x1030
, u 0x1031
(disasm 0x1030 in Thumb mode)
bp <addr>
- set breakpoint
bc <addr>
- clear breakpoint
bl
- list breakpoints
r <register> <value>
- change register value e.g. r r0 0x101
rr
- print registers
?
- calc expression
dump <addr> <range> "PATH"
- dump memory range to a file e.g. dump 0x1030 100 "/Users/bob/Desktop/dump.bin"
r pc 0x1030
To switch into thumb mode provide unaligned address (add +1 to the destination address)
r pc 0x1031
sudo apt-get install python-tk
)