Reverse Engineering for Beginners by Dennis Yurichev.
From the webpage:
Topics discussed: x86, ARM.
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.
I guess I have a different definition of “beginner.”
Chapter 2 starts off with “Hello, World!” from C and by section 2.1.1:
Let’s compile it in MSVC 2010:
😉
At more than 600 pages this took a lot of work. I suspect that it will repay a lot of work with the text.
I first saw this in Nat Torkington’s Four short links: 13 May 2014.