Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/patois/genmc
Display Hex-Rays Microcode
https://github.com/patois/genmc
hex-rays-decompiler hexrays ida-pro idapython idapython-plugin idapython-script microcode
Last synced: 20 days ago
JSON representation
Display Hex-Rays Microcode
- Host: GitHub
- URL: https://github.com/patois/genmc
- Owner: patois
- Created: 2019-06-05T23:42:32.000Z (over 5 years ago)
- Default Branch: master
- Last Pushed: 2022-11-13T10:27:35.000Z (about 2 years ago)
- Last Synced: 2024-07-31T23:46:10.173Z (4 months ago)
- Topics: hex-rays-decompiler, hexrays, ida-pro, idapython, idapython-plugin, idapython-script, microcode
- Language: Python
- Size: 1.37 MB
- Stars: 223
- Watchers: 12
- Forks: 37
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# genmc - Display Hex-Rays Microcode
genmc is an IDAPython script/plugin hybrid that displays Hexrays decompiler
microcode, which can help in developing microcode plugins.![genmc animated gif](/rsrc/genmc.gif?raw=true)
## Installation / Usage
By running the code as a script within IDA, a Python shell command becomes
available which, after typing "install_plugin()", copies the script to
$HOME/.idapro/plugins or %APPDATA%Hex-Rays/IDA Pro/plugins.With the script installed into the plugins folder, it can be invoked from
the plugins menu or by using the hotkey 'Ctrl-Shift-M'.IDA and decompilers >= 7.3 are required.
This IDAPython project is compatible with Python3. For compatibility with older versions of IDA, you may want to check out the Python2 branch of this project.
## Keyboard shortcuts/modifiers:
With the microcode viewer focussed:- 'g': display microcode graph
- 'i': display graph for current micro-instruction
- 'Shift': holding this modifier will create floating graph widgets (instead of using the default docking behavior)## Credits:
- https://github.com/RolfRolles/ for his Microcode Explorer plugin whose original ideas and code this script is heavily based on (https://github.com/RolfRolles/HexRaysDeob). Full credit for most of the code and ideas in its original form belongs to Rolf. Check out his related blog post on Hexblog: http://www.hexblog.com/?p=1248
- https://github.com/NeatMonster/ for porting of the Microcode Explorer C++ code to IDAPython using ctypes when Python bindings for HexRays' microcode were not available yet (https://github.com/NeatMonster/MCExplorer).
- https://github.com/icecr4ck/ for porting MCExplorer for IDAPython from 7.x to 7.3Please consider using [Lucid - An Interactive Hex-Rays Microcode Explorer](https://github.com/gaasedelen/lucid), instead!