This is the IDA Pro integration for hash-resolver, a tool for emulating API hash functions via Unicorn engine.
- Install the project in the same Python environment used by IDA:
pip install -e .⚠ Make sure you are using the same Python version as IDA (check IDAPython log).
- Link the plugin into IDA's plugin directory:
mklink /D "IDA\plugins\hashres" "script\path\ida_plugin"Replace the paths with yours. You can also just copy the folder manually if symlinks don't work.
- Manually create
hashres_plugin.py(the stub) in the sameplugins/folder:
from hashres.plugin import PLUGIN_ENTRY as real_entry
def PLUGIN_ENTRY():
return real_entry()- Restart IDA. The plugin should load automatically.
- Right-click a hashing function (in disassembly or pseudocode)
- Select "Resolve hash for this function"
- Choose the signature, enter hash & symbols file
- Boom.
- Signature JSONs are expected in ida_plugin/signatures/
- Symbol list =
.txtfile with one symbol name per line - Emulator logic is fully shared with CLI version
- Plugin doesn't load? Check:
Python versionmatches IDA's (shown on startup)pip install -e .installed in correct environmenthash_resolveris visible insys.path
- Still stuck? Run the inside IDA:
import sys; print(sys.path)