Professional Documents
Culture Documents
Reverse Engineering
Reverse engineering is the process of creating a blueprint of a machine to discern its rules by looking only at the machine and its behavior. At a high level, this process involves taking something that you may not completely understand technically when you start, and coming to understand completely its function, its internals, and its construction. A good reverse engineer attempts to understand the details of software, which by necessity involves understanding how the overall computing machinery that the software runs on functions. A reverse engineer requires a deep understanding of both the hardware and the software, and how it all works together.
Like any skill, reverse engineering can be used for good and for bad ends.
Debugger
A Debugger is a software program that attaches to and controls other software programs. A debugger allows single stepping of code, debug tracing, setting breakpoints, and viewing variables and memory state in the target program as it executes in a stepwise fashion. Debuggers are invaluable in determining logical program flow. Olly Debugger, Soft Ice, IDA Pro are some of the very famous Software Debuggers
Disassembler
A Disassembler is a tool that converts machine-readable code into assembly language. Assembly language is a human-readable form of machine code (well, more human readable than a string of bits anyway). Disassemblers reveal which machine instructions are being used in the code. Machine code is usually specific to a given hardware architecture (such as the PowerPC chip or Intel Pentium chip). Thus, Disassemblers are written expressly for the target hardware architecture.
Error Tracing
Error tracing is the most thorough of all Software Cracking methods. First you identify the Text Strings in the software code and then look for the error message displayed to the user when a wrong serial number is provided to the software product. Identify the working and flow of Program or Function