Read a compiled program you built yourself: parse the file, decode the instructions, lift them to pseudocode, record evidence, and prove a rebuild equal, then learn the field around that pipeline with its main tools.
- Program Anatomy: An ELF Reader From Scratch — 120 min
- Disassembly and Control Flow: From Bytes to a Graph You Can Check — 150 min
- Lifting to Pseudocode: IR, SSA, and Structuring From Scratch — 150 min
- Evidence, Confidence, and Unknowns in Binary Analysis — 105 min
- Rebuild and Prove Equal: Differential Tests, Byte Comparison, and the Evidence Loop — 110 min
- The Reverse Engineering Landscape: History, Tool Families, and How a Decompiler Is Built — 150 min
- Calling Conventions and Stack Frames: System V, Windows x64, and AArch64 — 140 min
- Compiler Idioms: What Optimization Does to Your Code and How to Read It Back — 150 min
- Linking, Loading, and Stripped Binaries: PLT, GOT, Imports, Fixups, and Function Identification — 160 min
- Recovering Data and Types: Structs, Arrays, C++ Objects, and DWARF — 140 min
- Dynamic Analysis of Your Own Program: Debuggers, Traces, and Confirming Static Claims — 130 min
- Beyond Native Code: Python, JVM, .NET, and WebAssembly Bytecode — 150 min
- Binary Diffing and Symbolic Execution: Matching Functions and Solving for Inputs — 150 min
- AI-Assisted Reverse Engineering: LLM Decompilers, Analysis Agents, and Ground Truth — 140 min