Skip to main content

64. Reverse Engineering 101

How to read binaries.

Basic Tools

GDB (GNU Debugger)

The standard Linux debugger. The foundation of dynamic analysis.

Key commands:

  • break main - set a breakpoint
  • run - run the program
  • disassemble - disassemble code
  • info registers - inspect register state
  • stepi - step one instruction

LLDB

For macOS/iOS environments. Similar to GDB.

objdump / readelf

Static binary analysis.

Ghidra / IDA Pro

Advanced disassemblers and decompilers.

Basic Concepts

Assembly Language

Major x86-64 registers:

  • rax - return value
  • rdi, rsi, rdx - function arguments
  • rsp - stack pointer
  • rbp - base pointer

Learning Path

  1. Assembly basics (1–2 weeks)
  2. Debugger proficiency (1–2 weeks)
  3. CTF crackmes (2–4 weeks)
  4. Real-world binaries (ongoing)

Details will be updated later.