Decompiles an APK to dex, class, jar, smali and java files.
Clone the repository. Run
npm install
to install dependencies.
Now simply run npm start [apk location] [destination folder]
.
Results will be saved on the destination folder with the following structure:
- classFiles: Folder with the jar files and decompressed jars (class files) of the APK.
- dex: Folder with the dex files of the APK.
- java: Folder with a folder for each dex file with the java files.
- smali: Folder with a folder for each dex file with the smali files.
You must have Java and node installed on your machine for it to run.
This is a node.js script that decompiles any given APK to dex, class, jar, smali and java, all at the same run. To do this, it uses several tools that help it go step by step. First, it extracts the dex files from the APK using yauzl. Then, using that result, it converts all the dex files into smali using backsmali. Also, with the same dex files, it converts them into class files using dex2jar. After creating the class files, it zips them into jar files to be able to transform them into Java code using decompiler.