I want to get into doing decomps. Looking for general guidance and educational materials.
I'm really interested in getting into decompilation projects. I picked a game to start with (Hover for Windows 95 - figured that would be an easier starting point than a console game), and while I've gotten my feet wet poking around with Ghidra and a debugger, I'm finding I need to pause, step back, take a wider view of the scope of the task, and fill in some gaps in my knowledge.
To that end, I have these questions:
- What does the overall process look like? Where does one begin, and what does it look like to make incremental progress?
- What are the essential tools common to decomp projects, and are there any good tutorials for them? In particular, is there a good one for Ghidra?
- Are there any core skills or background subjects that would be considered pre-requisites for this type of project rather than learn-as-you-go? For context, I don't have a comp sci degree, so I've never taken formal classes on operating systems or compilers. I do know C/C++ but am self-taught. The closest thing to a decomp I've done is write an Atari 2600 emulator.
- Are there any good decomp projects to study, especially any for which you can follow the start-to-finish history? I've looked at the Super Mario 64 decomp, and while it more or less makes sense in its finished state, it's hard to gain insights on how the project evolved over time.
Since AI usage seems to be a controversial topic here, I'll state that I fully intend to use AI as a learning aid and to help with tooling and analyzing disassembly. However I'm not interested in having it do all the work since my primary goal is to understand for myself how to do this.
Posted Sep 29, 2026, 2:16 AM UTC
335