Code Ripper 1.3
|Description||Code Ripper is an easy way to rip disassembled assembler code from an app being debugged using Ollydbg. The ripped code can be formatted and saved in the syntax of the popular programming languages MASM, C/C++ (inline ASM) and Delphi (inline ASM).
Code Ripper prepares the disassembled code as far as possible for easy editing and compilation. The syntax of the ripped assembler statements conforms to the selected compiler systax but, of course there are limits to what can be done to a ripped code snippet to fix all address, data references etc so the code can be compiled. Some manual interpretation and fixing will usually be required.
1) Rips selected code from Ollydbg disassembler window and formats according to MASM, C/C++ (in line assembler) or Delphi (inline assembler) syntax. NOTE : Ideal (Borland) and HLA (Randall Hyde) assembler syntax should work too but have not been fully tested.
2) Ollydbg comments and user comments can be ripped with the code (option).
3) Code Ripper creates labels for call and jump destinations within the code snippet. The labels include the module name and assembler address value making it easier to cross reference those call/jump destinations back to the Ollydbg disassembler and debugged application. Symbolic addresses will be used where defined.
4) Where call/jumps and call/jump destinations are inside the code snippet, Code Ripper resolves the addresses and creates the labels with the correct language syntax.
5) Where call/jump destinations are outside the code snippet, Code Ripper will warn (option) that the address is not resolved. This makes it easier to identify other code snippets which are required or to fix those addresses manually before compiling. Calls to other modules and system APIs are identified by module name. If other code snippets are ripped, the call/jumps addresses and labelled destinations in one snippet will align with the call/jump addresses and labelled destinations in another. This makes it a lot easier to rip code snippets which may be at addresses scattered through a debugged app. In other words, a number of code snippets from one app can be more easily combined and compiled.
6) Unresolved jump and call destinations will need to be corrected by hand. Code Ripper flags (option) any unresolved addresses. Where necessary, labels are created which align with the assembler code addresses.
7) Procedure start and end statements (as analysed by Ollydbg) can be flagged (option)
Data references include module name and address making it easier to identify what data declarations are required to compile the code and to cross reference data references back to the debugged application.
9) Code and labels can be formatted (option) to ident a selected number of spaces (max 255).
10) Comments and warnings can be formatted (option) to start at a selected column (max 255)
11) Option to format code Upper/Lower case or as code is disassembled by Ollydbg
12) Option to insert a blank line before/after procedures and labels.
|Image||no image available|
|Date||Monday 28 August 2006 - 14:09:20|
0/5 : Not rated