otx Help

otx stands for "object tool extended". otx uses otool(object tool) to disassemble a Mach-O executable file, then enhances the disassembled output. Simple enhancements include adding the machine code of each instruction as well as the offset of each instruction from the beginning of a function. More complicated enhancements include displaying the names of ObjC methods even if symbols have been stripped, and adding comments that describe member variables, function calls, static data and more.

otx can open almost any Mach-O executable file you're likely to use- PPC or x86, single architecture or universal binary. When you open a universal binary, the popup menu show above allows you to select which architecture to disassemble. If you have lipo installed, you can easily separate the selected architecture using the "Thin" button.

If you have obfuscated your code, you may find that otool's disassembly is less than desirable. To assist you, otx includes a very basic deobfuscator. By using the "Verify" button shown above, you can verify that otool will be able to correctly disassemble your executable. If this verification fails, otx will ask if you would like to save a deobfuscated copy of your executable. Should you choose to do so, the deobfuscated copy will be automatically opened for further processing. Currently, deobfuscation is only necessary for x86 executables.

Refer to these sections:

Specifying files to analyze.