I'm learning about iOS Re-Developing recently. For primary stage learner I recommend the book named 'iOS Reverse Engineering'. There are four sections which are very detailed. If you have some experience for iOS developing, it will help you know about iOS more depth. Try reading the book carefully and get the key points.
My first target is to add the function of saving the sight and sharing to my moments and to change the location when sending the moments.
Let's Begin on the jailbroken device now.
1. Get the WeChat.ipa from AppStore;
2. unzip WeChat.ipa to get the binary WeChat file;
3. dumpdecrypted the WeChat binary file to get the file named 'WeChat.decrypted';
4. Write hooker file to implement the function just as mentioned;
5. make package install to the jailbroken device;
Let's resign the WeChat and install on the un-jailbroken device.
1. Get the .dylib file which generated when make the tweak under the folder named obj;
2. Copy the libsubstrate.dylib, WeChat.app(Replacing the binary file 'WeChat' with the decrypted one);
3. Go to website http://www.jianshu.com/p/40d31abbed5e;
4. Generate the valid Entitlements.plist using following instruction:
$security cms -D -i "extracted/Payload/$APPLICATION/embedded.mobileprovision" > t_entitlements_full.plist
$/usr/libexec/PlistBuddy -x -c 'Print:Entitlements' t_entitlements_full.plist > t_entitlements.plist
5. Resign the app with iResign tool;
Tips:
* The .dylib generated when you make the tweak under the obj folder. Copy WeChat.app, libsubstrate.dylib into the folder. When you resign the weChat which dump decrypted on armv7 jailbroken device. The resigned .ipa can only install on the same arch devices.