Vlad Pirogov, "Disassembling Code IDA Pro And SoftICE"
A-List | Dec 2005 | ISBN: 1931769516 | 512 pages | CHM 2.5 MB
Modifying somebody else's code is unethical and even may be illegal. Long ago, when MS-DOS was the prevailing operating system, I wrote a small resident printer driver. At that time, the problem of localizing code or reencoding printers was urgent. One year later, I located my driver in use by some other company. This driver was installed by a Mister X. However, Mister X didn't limit himself to installing the driver. That person also modified the copyright information, specifying that the driver's author was himself. I do not feel angry about that occasion anymore, although a feeling of resentment still remains. Thus, I understand very well the feelings of software developers whose programs have been illegally reverse-engineered and modified.
However, ignoring reality is not the right behavior. To efficiently protect their programs, developers must know the cracker's toolset. Furthermore, in addition to negative effects, attacks on protection systems, worms, and computer viruses have some positive effect, because their existence makes software developers pay more attention to security and develop protection mechanisms more carefully. To a certain extent, attacks on software and computer systems play the role of stimulators for the software's "immune system," although indisputably on a large scale they can result in a virus epidemic harming many users or even ruining their computer systems. This book provides some examples of reverse engineering and of patching executable code. Note that all of these examples are intended for educational purposes only.
TABLE OF CONTENT:
Chapter 1 - Introduction to Disassembling
Chapter 2 - The Code Investigator's Toolkit
Chapter 3 - Main Paradigms of the Executable Code Analysis
Chapter 4 - The SoftIce Debugger
Chapter 5 - The IDA Pro Disassembler