Thursday 23 January 2014

class-dump-z armv7 & armv7s

I recently tried to class dump from an iPhone application that was running on an iPhone5s (7.0.4). After firing up class-dump-z and running, nothing seemed to happen, class-dump-z just hung.



Wondering if this was something to do with 64bit and the iPhone5s I decided to run lipo on the binary to check it out:


lipo -info Prometheus


Hmm, armv7 & armv7s. Had a look at the help options on class-dump-z and noticed that there was an option to select the architecture using -u. I tried the following:

class-dump-z -u armv7 Prometheus



class-dump-z -u armv7s Prometheus



Aagain, nothing.

Next option was to extract armv7 & armv7s from the binary using lipo as below:

lipo Prometheus -extract armv7 -output Prometheus-armv7

lipo Prometheus -extract armv7s -output Prometheus-armv7s



I then ran class-dump-z against each, for some reason the armv7 binary didn't dump...



But armv7s did which was enough for now, why it doesn't work using the -u option I'm not sure...

No comments:

Post a Comment