A reverse engineering assistant that uses a locally running LLM to analyze Hex-Rays pseudocode for improved code understanding.
Oneiromancer is a reverse engineering assistant that uses a locally running large language model (LLM) fine-tuned for Hex-Rays pseudocode to aid in code analysis. It helps security researchers and reverse engineers understand complex decompiled functions by generating high-level descriptions, suggesting improved function and variable names, and outputting more readable pseudocode. The tool aims to reduce flaws in software analysis by improving comprehension of code execution states.
Security researchers and reverse engineers who work with decompiled code, particularly those using Hex-Rays decompiler output and tools like IDA Pro. It is also suitable for developers integrating pseudocode analysis into their own Rust-based tools via its library API.
Developers choose Oneiromancer for its privacy-focused, local LLM integration specifically fine-tuned for pseudocode analysis, unlike cloud-based alternatives. Its unique selling point is the ability to provide actionable insights like function and variable renaming suggestions directly from decompiled code, with easy integration into existing workflows through tools like haruspex and popular IDEs.
Reverse engineering assistant that uses a locally running LLM to aid with pseudocode analysis.
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.
Uses a locally running LLM via Ollama, ensuring sensitive reverse engineering data never leaves the user's machine, as highlighted in the README's emphasis on privacy.
Leverages the aidapal model fine-tuned specifically for Hex-Rays decompiler output, providing more accurate and relevant insights for reverse engineering tasks.
Saves improved pseudocode with renaming suggestions in separate .out.c files, enabling easy inspection and integration into code review workflows.
Offers programmatic access via Rust crates with analyze_code and analyze_file functions, allowing developers to build custom analysis pipelines.
Requires manual download of model files and configuration of Ollama, adding significant overhead before first use, as detailed in the Configuration section.
Running a local 7B-parameter LLM can be slow for large functions or batch analysis, impacting productivity in time-sensitive reverse engineering.
The TODO list admits missing integrations (e.g., with haruspex) and features from the original IDA plugin, such as context analysis, limiting current functionality.
The project notes a need to refactor variable renaming to prevent issues, indicating that current outputs may require careful manual verification.