Static deobfuscator for Themida's mutation-based obfuscation.
Project description
themida-unmutate
A Python 3 tool to statically deobfuscate functions protected by Themida, WinLicense and Code Virtualizer 3.x's mutation-based obfuscation.
The tool has been tested on Themida up to version 3.1.9. It's expected to work on WinLicense and
Code Virtualizer as well.
Features
- Automatically resolve trampolines' destination addresses
- Statically deobfuscate mutated functions
- Rebuild fully working binaries
- Binary Ninja integration
Known Limitations
- Doesn't support ARM64 binaries
How To
Download
You can fetch the project with git and install it with pip:
pip install git+https://github.com/ergrelet/themida-unmutate.git
Use
Here's what the CLI looks like:
themida-unmutate --help
usage: themida-unmutate.cmd [-h] -a ADDRESSES [ADDRESSES ...] -o OUTPUT [-v] protected_binary
Automatic deobfuscation tool for Themida's mutation-based protection
positional arguments:
protected_binary Protected binary path
options:
-h, --help show this help message and exit
-a ADDRESSES [ADDRESSES ...], --addresses ADDRESSES [ADDRESSES ...]
Addresses of the functions to deobfuscate
-o OUTPUT, --output OUTPUT
Output binary path
-v, --verbose Enable verbose logging
You can also find a Binary Ninja plugin in the binja_plugin directory.
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file themida_unmutate-0.1.0.tar.gz.
File metadata
- Download URL: themida_unmutate-0.1.0.tar.gz
- Upload date:
- Size: 25.2 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/5.1.0 CPython/3.12.4
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
231039dd6ef749ff9cb03b6ef1795f531a879b344fe98776664c65f32d16f3ef
|
|
| MD5 |
ad8c47363b78c1a3af631b234ddfbf73
|
|
| BLAKE2b-256 |
f0ba863d35146d90db2a28666fba8ce851b98d412459b05bcc9353e74ca8c61d
|
File details
Details for the file themida_unmutate-0.1.0-py3-none-any.whl.
File metadata
- Download URL: themida_unmutate-0.1.0-py3-none-any.whl
- Upload date:
- Size: 27.9 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/5.1.0 CPython/3.12.4
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
885b102ef441ca4c5c3d4383fa50ce04f56536a199fc78cc9184d0a7ce349a69
|
|
| MD5 |
a689e53edd1e2d704eec6a8d2895f37c
|
|
| BLAKE2b-256 |
66066014be9a1473cfd32156674ad38f7aed402a0cb0de33aa151dd4dff1bb9b
|