Disassembly
The translation of machine-code bytes into processor instructions and addresses for low-level program analysis.
Reverse-Engineering Context
Disassembly translates machine-code bytes into instructions and addresses for a target instruction-set architecture. Correct instruction boundaries, separation of code from embedded data, relocations, indirect control flow, and stripped symbols are central challenges in real binaries.
Abstraction Boundary
Disassembly does not reconstruct high-level semantics by itself. Decompilation is a later abstraction layer that tries to recover expressions, data types, and structured control flow from the lower-level instruction graph.
Related Reverse-Engineering Concepts
- Decompilation
- Instruction Set Architecture
- Static Analysis
- Control Flow Graph