Need help with smali_emulator?
Click the “chat” button below for chat support from the developer who created it, or find similar developers for support.

About the developer

evilsocket
451 Stars 106 Forks GNU General Public License v3.0 67 Commits 8 Opened issues

Description

This software will emulate a smali source file generated by apktool.

Services available

!
?

Need anything else?

Contributors list

# 1,216
Go
Java
Linux
Keras
17 commits
# 337,976
HTML
Shell
CSS
10 commits
# 382,068
HTML
Shell
CSS
8 commits
# 416,920
Python
6 commits
# 155,782
Objecti...
frida
iOS
TypeScr...
5 commits
# 452,078
Python
4 commits

Smali Emulator

This software will emulate a smali source file generated by apktool, it is intended to be used as a quick and dirty way to defeat various types of encryption and obfuscation while reversing an APK.

This project is very much a work in progress, feel free to submit a patch.

As an example, you can run:

cd utils;
./exec.py -i decryptor.smali -m field5 \
-p '{"p0":[-62,-99,-106,-125,-123,-105,-98,-37,-105,-97,-103,-41,-118,-97,-113,-103,-109,-104,-115,111,98,103,35,52],"p1": 19}'

Testing

The project has recently be migrated to pytest for infrastructure of tests. To run tests, do:

pytest -v

The project is not Python 3 compatible yet, but should be in a near future.

Note

Explanation of the "why" and "how" can be found here.

This is highly experimental, a very small subset of the Dalvik opcodes is currently supported, see the

smali/opcodes.py
file for more details.

OpCodes List (Feel free to request access)

https://docs.google.com/spreadsheets/d/1RfB_LsBoYnJxOh-lDCSMR0mfLBl1UlwdW9eKw2p03DY/edit?usp=sharing

License

Copyright (c) 2016 Simone Margaritelli | Twitter | Blog
Released under the GPL 3 license.

We use cookies. If you continue to browse the site, you agree to the use of cookies. For more information on our use of cookies please see our Privacy Policy.