Introduction
Part I. Binary Formats
1. Anatomy of a Binary
2. The ELF Format
3. The PE Format: A Brief Introduction
4. Building a Binary Loader Using libbfd
Part II. Binary Analysis Fundamentals
5. Basic Binary Analysis In Linux
6. Disassembly and Binary Analysis Fundamentals
7. Simple Code Injection Techniques for ELF
Part III. Advanced Binary Analysis
8. Customizing Disassembly
9. Binary Instrumentation
10. Principles of Dynamic Taint Analysis
11. Practical Dynamic Taint Analysis with libdft
12. Principles of Symbolic Execution
13. Practical Symbolic Execution with Triton
Part IV. Appendices
Appendix A: A Crash Course on x86 Assembly
Appendix B: Implementing PT_NOTE Overwriting Using libelf
Appendix C: List of Binary Analysis Tools
Appendix D: Further Reading