"Reverse Engineering for Beginners" free book

Written by Dennis Yurichev (yurichev.com).

Praise for the book

As seen on...

... hacker news: #1, #2, reddit: #1, #2, #3, #4, #5, #6, habrahabr.


Topics discussed: x86/x64, ARM/ARM64, MIPS.

Topics touched: Oracle RDBMS, Itanium, copy-protection dongles, LD_PRELOAD, stack overflow, ELF, win32 PE file format, x86-64, critical sections, syscalls, TLS, position-independent code (PIC), profile-guided optimization, C++ STL, OpenMP, win32 SEH.

Download PDF files

Download English version A4 (for browsing or printing) A5 (for ebook readers)
Скачать русскую (Russian) версию A4 (для просмотра или печати) A5 (для электронных читалок)


Q: I clicked on hyperlink inside of PDF-document, how to get back?
A: (Adobe Acrobat Reader) Alt + LeftArrow

Q: May I print this book? Use it for teaching?
A: Of course, that's why book is licensed under Creative Commons terms.

Supplementary materials

Exercises, exercise solutions

Be social!

Feel free to send me corrections, or, it's even possible to submit patches on book's source code (LaTeX) on GitHub or gitorious or Google Code or BitBucket, or SourceForge!

There is also supporting forum! You may ask any questions there!

Or write me an email: dennis(a)yurichev.com


See ChangeLog

Stay tuned!

My current plans for this book: MIPS, Objective-C, Visual Basic, anti-debugging tricks, Windows NT kernel debugger, Java, .NET, Oracle RDBMS.

Subscribe to my twitter. Here is also my blog.

Web 2.0 hater? Subscribe to my mailing list for receiving updates of this book to email.

Please donate!

Ways to donate

This book is free, freely available, also in source code form (LaTeX), and it will be so forever, I have no plans for publishing. So if you want me to continue, you may consider donating. Several ways to are available on this page: donate. Every donor name will be included in the book! Donor also have a right to rearrange items in my writing plan.


19 * anonymous, 2 * Oleg Vygovsky (50+100 UAH), Daniel Bilar ($50), James Truscott ($4.5), Luis Rocha ($63), Joris van de Vis ($127), Richard S Shultz ($20), Jang Minchang ($20), Shade Atlas (5 AUD), Yao Xiao ($10), Pawel Szczur (40 CHF), Justin Simms ($20), Shawn the R0ck ($27), Ki Chan Ahn ($50), Triop AB (100 SEK), Ange Albertini (10 EUR), Sergey Lukianov (300 RUR), Ludvig Gislason (200 SEK), Gérard Labadie (40 EUR), Sergey Volchkov (10 AUD), Vankayala Vigneswararao ($50), Philippe Teuwen ($4), Martin Haeberli ($10), Victor Cazacov (5 EUR), Tobias Sturzenegger (10 CHF), Sonny Thai ($15), Bayna AlZaabi ($75), Redfive B.V. (25 EUR), Joona Oskari Heikkilä (5 EUR), Marshall Bishop ($50), Nicolas Werner (12 EUR), Jeremy Brown ($100), Alexandre Borges ($25), Vladimir Dikovski (50 EUR), Jiarui Hong (100.00 SEK), Jim Di (500 RUR), Tan Vincent ($30), Sri Harsha Kandrakota (10 AUD), Pillay Harish (10 SGD), Timur Valiev (230 RUR), Carlos Garcia Prado (10 EUR), Salikov Alexander (500 RUR), Oliver Whitehouse (30 GBP), Katy Moe ($14), Maxim Dyakonov ($3).

About Korean translation

Acorn publisher in South Korea did huge amount of work in translating and publishing my book in Korean language.

Now it's available at their website.

Translator is Byungho Min (@tais9).

Cover pictures was done by my artist friend Andy Nechaevsky: facebook/andydinka.

They are also the Korean translation copyright holder.

So if you want to have a "real" book on your shelf in Korean language and/or want to support my work, now you may buy it.