# Lucid

> IDA Pro plugin by Markus Gaasedelen for studying how the Hex-Rays decompiler transforms its microcode intermediate language. Opened from a Pseudocode window with View microcode, its explorer stays synchronized with the pseudocode and lets the user scroll a selected microinstruction through each microcode maturity level, tracing sub-operands back to their origins and changing the cursor color when the traced code has been optimized away. Nested sub-instructions can be shown as tree graphs; the author labels it a developer-oriented prototype and code resource, not a general-purpose reverse-engineering tool.

- Type: Tool
- Targets: Binary
- Category: Native analysis tools
- Relationship: Foundation tool
- Sources reviewed: 2026-10-19
- Added to the catalog: 2026-10-31
- Original resource: <https://github.com/gaasedelen/lucid>
- Primary source: <https://github.com/gaasedelen/lucid/blob/9f2480dc8e6bbb9421b5711533b0a98d2e9fb5af/README.md>
- Catalog page: <https://awesomerea.org/resources/lucid-microcode-explorer/>
- Record JSON: <https://awesomerea.org/resources/lucid-microcode-explorer/record.json>
- Chinese version: [简体中文](https://awesomerea.org/zh/resources/lucid-microcode-explorer/index.md)

## Requirements & limits

- Unmaintained since its initial release: v0.1.1, tagged 2020-09-15, is the last release and the reviewed master commit, with no commits since, and a community pull request adding further features has been open and unmerged since 2024. The README's list of known bugs from that release, including a possible IDA crash when double-clicking some address comments and little testing on macOS and Linux, has not been revised.
- Needs IDA Pro 7.5 or newer with a Hex-Rays decompiler for the analyzed architecture. It is a Python 2/3 plugin without third-party dependencies, installed by copying the plugins folder into IDA's user plugin directory; its UI imports IDA's bundled PyQt5, and compatibility with current IDA releases is not documented.
- Works on binaries the user has opened and decompiled in IDA. It is a viewer for decompiler internals; the README lists microcode-optimizer workflows only as possible future work.
- MIT license.

## Primary sources

1. <https://github.com/gaasedelen/lucid/blob/9f2480dc8e6bbb9421b5711533b0a98d2e9fb5af/README.md>
2. <https://github.com/gaasedelen/lucid/blob/9f2480dc8e6bbb9421b5711533b0a98d2e9fb5af/README.md#L19-L33>
3. <https://github.com/gaasedelen/lucid/blob/9f2480dc8e6bbb9421b5711533b0a98d2e9fb5af/README.md#L71-L98>
4. <https://github.com/gaasedelen/lucid/blob/9f2480dc8e6bbb9421b5711533b0a98d2e9fb5af/plugins/lucid/ui/explorer.py#L1-L10>
5. <https://github.com/gaasedelen/lucid/blob/9f2480dc8e6bbb9421b5711533b0a98d2e9fb5af/LICENSE>
6. <https://github.com/gaasedelen/lucid/releases/tag/v0.1.1>
7. <https://github.com/gaasedelen/lucid/pull/5>

## More in Native binaries

- [r2dec](https://awesomerea.org/resources/r2dec/index.md) · Tool
- [Runtime Mobile Security (RMS)](https://awesomerea.org/resources/rms-runtime-mobile-security/index.md) · Tool
- [Pharos](https://awesomerea.org/resources/pharos/index.md) · Tool
- [heimdall-rs](https://awesomerea.org/resources/heimdall-rs/index.md) · Tool
- [PE-bear](https://awesomerea.org/resources/pe-bear/index.md) · Tool
- [PE-sieve](https://awesomerea.org/resources/pe-sieve/index.md) · Tool

## About this entry

The description was reviewed against primary sources.
Original editorial content: MIT. Linked projects, papers and assets retain their own rights and licenses.
