Eilam, Eldad,

Reversing : secrets of reverse engineering / Eldad Eilam. - xxxviii, 595 pages : illustrations ; 24 cm.

Includes index.

Part I: Reversing 101. Chapter 1: Foundations -- Chapter 2: Low-Level Software -- Chapter 3: Windows Fundamentals -- Chapter 4: Reversing Tools -- Part II: Applied Reversing. Chapter 5: Beyond the Documentation -- Chapter 6: Deciphering File Formats -- Chapter 7: Auditing Program Binaries -- Chapter 8: Reversing Malware -- Part III: Cracking. Chapter 9: Piracy and Copy Protection -- Chapter 10: Antireversing Techniques -- Chapter 11: Breaking Protections -- Part IV: Beyond Disassembly. Chapter 12: Reversing .NET -- Chapter 13: Decompilation -- Appendix A: Deciphering Code Structures -- Appendix B: Understanding Compiled Arithmetic -- Appendix C: Deciphering Program Data.

Beginning with a basic primer on reverse engineering-including computer internals, operating systems, and assembly language-and then discussing the various applications of reverse engineering, this book provides readers with practical, in-depth techniques for software reverse engineering. The book is broken into two parts, the first deals with security-related reverse engineering and the second explores the more practical aspects of reverse engineering. In addition, the author explains how to reverse engineer a third-party software library to improve interfacing and how to reverse engineer a competitor's software to build a better product. This is the first popular book to show how software reverse engineering can help defend against security threats, speed up development, and unlock the secrets of competitive products. It helps developers plug security holes by demonstrating how hackers exploit reverse engineering techniques to crack copy-protection schemes and identify software targets for viruses and other malware. The book offers a primer on advanced reverse-engineering, delving into "disassembly," code-level reverse engineering, and explains how to decipher assembly language.

0764574817 9780764574818

2005921595


Software engineering.
Reverse engineering.
Computer security.

QA76.758 / .E35 2005

005.1 EI.R 2005