[MultiTool][28/5/13]ROM TOOLS v3(dex de/recompiler with extended features)

Search This thread

iamareebjamal

Senior Member
Aug 7, 2012
3,703
5,127
27
Batcave
www.facebook.com
Hi guys,

Here is third version of my ROM Tools PC Version (Automatic decompile classes.dex file to edit smali content). It is major release of this tool but further updates will follow.

After testing the third version on bunch of Devices successfully, here is the general release of it. This tool has been mainly constructed to decompile and recompile classes.dex of apk's and jar files without having to tediously type whole commands. However, there are few features I have added in it which in my opinion are useful bt not that much connected to dex operations.


What's New ?


Here is list of New features and detailed description of them:

Note:- No other fetaure except decompiling/recompiling will work if you have not connected your phone via USB cable and USB debugging is on.


Reboot Options:

Reboot:

Will normally reboot the phone

Necessary when replaced some framework file or pushed a system file

Code used
Code:
adb reboot

Recovery:

Reboot your phone in recovery mode

Necessary when thinking of flashing something and want to save time and instead of pressing a combo while phone is turned off.

Code used:
Code:
adb reboot recovery

Hot reboot: *May not work on all phones*

Reboots your phone faster

It reboots your phone faster by just killing all system processes forcing the GUI to restart. Preferred as its fast and reliable when pushing themed files. Not recommended if doing more intensive replacing(Sometimes syetem needs rebooting normally to show changes)

Code Used:
Code:
adb shell killall system_server


Miscellaneous:

logcat:

1. Display logcat:

Displays logcat with v long formatting with 10000+ lines.

Easy than typing whole command. Its with formatting. Has more lines than normal command prompt display

Code Used:
Code:
adb logcat -v long

2. Save logcat:

Saves logcat in main folder. A random prefix is added to each locat so that they do not get replaced by newer one.

Easier than typing the command. With good formatting.

Code used:
Code:
adb logcat -v long > logcat%random%.txt

Fix permissions: *ignore errors*

Fixes permissions of /system/app, /system/framework/, system/etc/init.d

Necessary when replacing many files in system and saving time to set correct permissions. Sometimes, due to incorrect permissions, phone won't boot or scripts won't run. Very useful command to save you from these headaches.

Ignore errors because there may not be init.d folder present in your device. So it will show error for that, but all other permissions will be corrected

Code Used:
Code:
adb shell chmod 644 /system/app/*
adb shell chmod 644 /system/framework/*
adb shell chmod 777 /system/etc/init.d
adb shell chmod 777 /system/etc/init.d/*

Reset Password: *May not work on all devices* *Ignore errors*

Resets your pin, password, pattern lockscreen

Ignore errors because it will try to delete 4 files and there will be only one correct file to be deleted based on what type of password you have set.

May not work on all devices because I have only tested it on Gingerbread Samsung devices. *Confirmed to be working on rooted mobiles only*

Code Used:
Code:
adb shell rm /data/system/gesture.key
adb shell rm /data/system/password.key
adb shell rm /sd-ext/system/gesture.key
adb shell rm /sd-ext/system/passwork.key


Screenshot:

46402790.png

24439260.png



Changelog :

Code:
Version 3

28 Ma 2013

-Added Reboot
-Added Recovery
-Added Hot Reboot
-Added logcat
-Added Fix Permissions
-Added Reset Password
-Added an ugly easter egg


Version 2

18 April 2013


- Changed it from a script to multi tool
- Added folders for convenience
- Made eye candy
- Made it noob proof
- It's like changing Baichung Bhutiya to Lionel Messi



Version 1


- Just one smali.bat file and one baksmali.bat file with one one line each of commands to Baksmaling and Smaling (duh!)

PHP:
I am not responsible for your device being dead, 
you flashing stock ROM, 
you using your device as a brick, 
or the decrease in love of your Girlfriend because you use your mobile so much

What does it do?

As you are aware, there are smali files in jar files and apks you need to edit for adding 4-way boot into power menu, extending Power options, changing clock colour, adding CRT effect, changing the pop up that comes up when you touch the easter egg image, adding brightness slidebar, adding lidroid toggles, etc and so manyyyy things

In order to edit them, you need to decompile apk and classes.dex
It is not a problem in editing smali files of apk as they are decompiled itself by APK-Multitool(I use it)

But, it does not work for jar files

I know that there is smali.jar and baksmali.jar for it but I don't like repeatedly commading same operations when I can do it with one click


This program decompiles and recompiles classes.dex from any jar or apk in one click(very useful when you only need to decompile dex file only)




Pre-Requisites:-

*PC
*My Tool
*Java JDK(or JRE) (If you are running Windows 7 64 bit, you may need to add Java in environment variable)
*7-Zip (For in zip operations[pull out classes.dex])
*classes.dex file(on which you will operate)
*Android Phone to be connected to PC with USB Debugging on to use features other than decompiling and recompiling


Guide:-

1. Download my Tool.
2. Extract it in any folder.
3. Place classes.dex in the input folder. DO NOT RENAME IT.
4. Run script.bat. Choose Option 1, Decompile classes.dex . In a few seconds, there will be a prompt that it is "Done. Press anykey to continue" (Note:- If you have UAC [User Account Control] on, you may run it as administrator or it might not be able to create folder if you have extracted it in System Drive)
5. Go to decompiled folder. There will BE classout folder. Make any changes in smali in classout folder(ALWAYS USE NOTEPAD++). DO NOT RENAME CLASSOUT FOLDER.
6. Again open script.bat if you had closed it or if not, then return to the window.
7. Choose 2 option "Compile classes.dex" . A new classes.dex will be formed in output folder.
8. Enjoy


Note:- Once you change things in classout folder, and you decompile another classes.dex, previous version in decompiled folder will be deleted. So if you want backup of it, move it somewhere else
Same thing will happen to classes.dex on output folder when you compile another one.


Other options

1. Connect you phone to PC with USB Debugging on and not on USB Tethering. Make sure you aren't using adb before using the tool. If so, Go to Alt+Ctrl+Del and to Task Manager and close adb.exe process

2. Choose the option what you want.

a) Logcat, either view or save it

If you view it, a window will appear with logcat in it. If you are done, just close that window

If you save it, it will be saved in the same folder where Script.bat is present. To stop saving it, Press Ctrl+C and type Y and press Enter

b) Reboot, may take some time in rebboting and rebooting in recovery.

c) Fix permissions and Reset password

3. Try to find Easter Egg



Download:-
ROMToolsPCv3.zip
 
Last edited:

iamareebjamal

Senior Member
Aug 7, 2012
3,703
5,127
27
Batcave
www.facebook.com
iits cool dude thanks it helps a lot

Thanks. But don't quote the whole OP for saying something. :)

It takes some extra scrolls to move down o the point. :p
So, can you please remove the quote from you post?


----------------------------------------------------------------------------------------------------------------------------------------------------------

And guys, reset lock feature is now confirmed to be only working on rooted phones :)

Cheers
 

juancollado2003

Senior Member
Mar 1, 2011
598
176
Santo Domingo
I can confirm "reset password" worked on sgs3 i727 on aokp rom, it still asking for a patron but any patron unlock it, for pass lock or pin it just reset it to default, big work thx
 

iamareebjamal

Senior Member
Aug 7, 2012
3,703
5,127
27
Batcave
www.facebook.com
I can confirm "reset password" worked on sgs3 i727 on aokp rom, it still asking for a patron but any patron unlock it, for pass lock or pin it just reset it to default, big work thx
Yes, it works like that only :)

It will show the password screen but phone will get opened if you input any password :)

Funny though :p (Good for trolling people)
 
  • Like
Reactions: mediro

Top Liked Posts

  • There are no posts matching your filters.
  • 67
    Hi guys,

    Here is third version of my ROM Tools PC Version (Automatic decompile classes.dex file to edit smali content). It is major release of this tool but further updates will follow.

    After testing the third version on bunch of Devices successfully, here is the general release of it. This tool has been mainly constructed to decompile and recompile classes.dex of apk's and jar files without having to tediously type whole commands. However, there are few features I have added in it which in my opinion are useful bt not that much connected to dex operations.


    What's New ?


    Here is list of New features and detailed description of them:

    Note:- No other fetaure except decompiling/recompiling will work if you have not connected your phone via USB cable and USB debugging is on.


    Reboot Options:

    Reboot:

    Will normally reboot the phone

    Necessary when replaced some framework file or pushed a system file

    Code used
    Code:
    adb reboot

    Recovery:

    Reboot your phone in recovery mode

    Necessary when thinking of flashing something and want to save time and instead of pressing a combo while phone is turned off.

    Code used:
    Code:
    adb reboot recovery

    Hot reboot: *May not work on all phones*

    Reboots your phone faster

    It reboots your phone faster by just killing all system processes forcing the GUI to restart. Preferred as its fast and reliable when pushing themed files. Not recommended if doing more intensive replacing(Sometimes syetem needs rebooting normally to show changes)

    Code Used:
    Code:
    adb shell killall system_server


    Miscellaneous:

    logcat:

    1. Display logcat:

    Displays logcat with v long formatting with 10000+ lines.

    Easy than typing whole command. Its with formatting. Has more lines than normal command prompt display

    Code Used:
    Code:
    adb logcat -v long

    2. Save logcat:

    Saves logcat in main folder. A random prefix is added to each locat so that they do not get replaced by newer one.

    Easier than typing the command. With good formatting.

    Code used:
    Code:
    adb logcat -v long > logcat%random%.txt

    Fix permissions: *ignore errors*

    Fixes permissions of /system/app, /system/framework/, system/etc/init.d

    Necessary when replacing many files in system and saving time to set correct permissions. Sometimes, due to incorrect permissions, phone won't boot or scripts won't run. Very useful command to save you from these headaches.

    Ignore errors because there may not be init.d folder present in your device. So it will show error for that, but all other permissions will be corrected

    Code Used:
    Code:
    adb shell chmod 644 /system/app/*
    adb shell chmod 644 /system/framework/*
    adb shell chmod 777 /system/etc/init.d
    adb shell chmod 777 /system/etc/init.d/*

    Reset Password: *May not work on all devices* *Ignore errors*

    Resets your pin, password, pattern lockscreen

    Ignore errors because it will try to delete 4 files and there will be only one correct file to be deleted based on what type of password you have set.

    May not work on all devices because I have only tested it on Gingerbread Samsung devices. *Confirmed to be working on rooted mobiles only*

    Code Used:
    Code:
    adb shell rm /data/system/gesture.key
    adb shell rm /data/system/password.key
    adb shell rm /sd-ext/system/gesture.key
    adb shell rm /sd-ext/system/passwork.key


    Screenshot:

    46402790.png

    24439260.png



    Changelog :

    Code:
    Version 3
    
    28 Ma 2013
    
    -Added Reboot
    -Added Recovery
    -Added Hot Reboot
    -Added logcat
    -Added Fix Permissions
    -Added Reset Password
    -Added an ugly easter egg
    
    
    Version 2
    
    18 April 2013
    
    
    - Changed it from a script to multi tool
    - Added folders for convenience
    - Made eye candy
    - Made it noob proof
    - It's like changing Baichung Bhutiya to Lionel Messi
    
    
    
    Version 1
    
    
    - Just one smali.bat file and one baksmali.bat file with one one line each of commands to Baksmaling and Smaling (duh!)

    PHP:
    I am not responsible for your device being dead, 
    you flashing stock ROM, 
    you using your device as a brick, 
    or the decrease in love of your Girlfriend because you use your mobile so much

    What does it do?

    As you are aware, there are smali files in jar files and apks you need to edit for adding 4-way boot into power menu, extending Power options, changing clock colour, adding CRT effect, changing the pop up that comes up when you touch the easter egg image, adding brightness slidebar, adding lidroid toggles, etc and so manyyyy things

    In order to edit them, you need to decompile apk and classes.dex
    It is not a problem in editing smali files of apk as they are decompiled itself by APK-Multitool(I use it)

    But, it does not work for jar files

    I know that there is smali.jar and baksmali.jar for it but I don't like repeatedly commading same operations when I can do it with one click


    This program decompiles and recompiles classes.dex from any jar or apk in one click(very useful when you only need to decompile dex file only)




    Pre-Requisites:-

    *PC
    *My Tool
    *Java JDK(or JRE) (If you are running Windows 7 64 bit, you may need to add Java in environment variable)
    *7-Zip (For in zip operations[pull out classes.dex])
    *classes.dex file(on which you will operate)
    *Android Phone to be connected to PC with USB Debugging on to use features other than decompiling and recompiling


    Guide:-

    1. Download my Tool.
    2. Extract it in any folder.
    3. Place classes.dex in the input folder. DO NOT RENAME IT.
    4. Run script.bat. Choose Option 1, Decompile classes.dex . In a few seconds, there will be a prompt that it is "Done. Press anykey to continue" (Note:- If you have UAC [User Account Control] on, you may run it as administrator or it might not be able to create folder if you have extracted it in System Drive)
    5. Go to decompiled folder. There will BE classout folder. Make any changes in smali in classout folder(ALWAYS USE NOTEPAD++). DO NOT RENAME CLASSOUT FOLDER.
    6. Again open script.bat if you had closed it or if not, then return to the window.
    7. Choose 2 option "Compile classes.dex" . A new classes.dex will be formed in output folder.
    8. Enjoy


    Note:- Once you change things in classout folder, and you decompile another classes.dex, previous version in decompiled folder will be deleted. So if you want backup of it, move it somewhere else
    Same thing will happen to classes.dex on output folder when you compile another one.


    Other options

    1. Connect you phone to PC with USB Debugging on and not on USB Tethering. Make sure you aren't using adb before using the tool. If so, Go to Alt+Ctrl+Del and to Task Manager and close adb.exe process

    2. Choose the option what you want.

    a) Logcat, either view or save it

    If you view it, a window will appear with logcat in it. If you are done, just close that window

    If you save it, it will be saved in the same folder where Script.bat is present. To stop saving it, Press Ctrl+C and type Y and press Enter

    b) Reboot, may take some time in rebboting and rebooting in recovery.

    c) Fix permissions and Reset password

    3. Try to find Easter Egg



    Download:-
    ROMToolsPCv3.zip
    2
    Definitely easier than the "java -jar smali.jar..." command.
    Thank you.
    2
    Trying it out...
    2
    Version 3 Released and OP Updated *Major Release*