The user interface has been greatly enhanced thanks to the new inspector panel, which made its appearance on the right side of the main window. This panel will gives you tons of contextual informations on the area you are exploring. From there, you’ll be able to set comments, change the appearance of the operands of an instruction, see the list of references to and from an instruction, and so on…
A great new feature is the new tag system. You can now create arbitrary tags, and put them either on an address, a basic block of a procedure, or on the whole procedure. To illustrate its benefits, Hopper now automatically creates a set of tags when it parses an executable. For instance, it will create an entry point tag on each addresses that will be called by the system during the loading process of the binary (the main entry point itself, but also all the addresses declared in the various MOD_INIT/MOD_TERM sections), and also tags each implementation of each methods of the Objective-C classes! It makes it really convenient to navigate through the methods of a program written in Objective-C! You can now also give colors to addresses, which is very convenient to quickly visualize the code!
I really appreciate the fact that the store allowed me to distribute a program and rapidly gains visibility, but now, it became very difficult to distribute a program like Hopper on the MAS. There are too many restrictions, the main one being the sandboxing mechanism, obviously…
And what about the Apple tax… When one buys a copy of Hopper on the MAS, I give approximately 40 to 45% of the price to Apple (the 30% are on the price without VAT).
This is why I will not distribute Hopper Disassembler v3 on the Mac AppStore at the beginning. If too many users feels the need to see Hopper distributed on the MAS, I’ll reconsider my decision.
Stay up-to-date by subscribing to the Comments RSS Feed for this post.