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

About the developer

patois
176 Stars 28 Forks 32 Commits 0 Opened issues

Description

Display Hex-Rays Microcode

Services available

!
?

Need anything else?

Contributors list

# 71,590
hexrays
idapyth...
C
C++
19 commits
# 22,657
C++
C
OpenCV
WPF
5 commits
# 54,810
Objecti...
iOS
vala
vscode
1 commit

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

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.3

Please consider using Lucid - An Interactive Hex-Rays Microcode Explorer, instead!

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.