Legacy ROM Reverse Engineering
Analyzed a Sega Genesis ROM, its short timer, and the execution path controlling the program's display.
Publication context. This article summarizes an independently completed technical interview exercise using original commentary. The challenge was provided by a third party; the exercise is not represented as my own product, a public vulnerability, or a commissioned professional engagement. Original company branding, challenge assets, flags, and step-by-step solution details have been omitted.
The problem
The supplied binary behaved as a console ROM rather than a normal operating-system executable. Under emulation it presented a brief timer and limited controller interaction, leaving the intended output inaccessible through normal inputs.
Research methodology
- Determined the file’s execution environment and used an emulator to establish baseline behavior.
- Used Ghidra to navigate ROM strings, routines, and Motorola 68000 control flow.
- Studied the timer and display pathways and tested a local modification to understand how alternative execution paths affect the output.
Tools & techniques
GhidraSega Genesis emulatorCyberChefLinux
Result
A modified local copy revealed the intended result in the emulator. The original document describes a successful demonstration, not a vulnerability in a production game.
What I practiced
Architecture-aware binary analysis, emulation, control-flow mapping, and disciplined testing of a modified sample.
A summary of a completed controlled assessment, not a disclosure of a third-party vulnerability. Results refer only to the exercise materials described.