BalCCon2k25

A Modern Assembler for ROM Reversing
2025-09-19 , Tesla

Assemblers and their distant cousins, disassemblers, are important tools for writing low-level code and exploits, for debugging, and for reverse engineering. These tools have been developed separately, leading to incompatibilities.

This lecture introduces GoodASM, an open source tool that assembles and disassembles a wide variety of CISC and RISC architectures. Additional architectures can be added quickly, while rigorous self-testing prevents common mistakes in these definitions. A single definition provides both an assembler and a disassembler, along with a command-line REPL interpreter and a C++ library.

Practical examples will be presented in mask ROM reverse engineering and microcontroller exploitation.

Travis Goodspeed is a reverse engineer from East Tennessee, where he drives a 1946 Studebaker and knows all the neighborhood dogs by name. Recently he published Microcontroller Exploits, a book detailing dozens of tricks for extracting firmware from locked chips.