A fast IDA Pro headless plugin that extracts decompiled pseudocode for vulnerability research and static analysis.
Haruspex is a fast IDA Pro headless plugin that extracts pseudocode generated by the Hex-Rays decompiler. It converts decompiled functions into separate files, enabling security researchers to import the code into IDEs or parse it with static analysis tools like Semgrep, weggli, or oneiromancer. The tool automates the extraction process to streamline vulnerability discovery in binary software.
Security researchers, reverse engineers, and vulnerability analysts who use IDA Pro for binary analysis and want to integrate decompiled code with modern static analysis pipelines.
Haruspex offers a blazing-fast, headless workflow that exports decompiled pseudocode in a structured format, making it directly usable by external analysis tools. Its integration with idalib Rust bindings provides a programmatic interface for automation, distinguishing it from manual or less integrated decompilation methods.
Vulnerability research assistant that extracts pseudocode from the IDA Hex-Rays decompiler.
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.
Leverages IDA Pro 9.x and idalib Rust bindings for efficient, scriptable decompilation without a GUI, as emphasized in its 'blazing fast' description.
Works with any binary architecture supported by IDA Pro's Hex-Rays decompiler, enabling versatile cross-architecture vulnerability research.
Saves each function's pseudocode in a separate file within a structured .dec directory, simplifying inspection and integration with static analysis tools.
External Rust crates can invoke decompile_to_file to directly decompile and save pseudocode, facilitating custom automation pipelines.
Requires a valid IDA Pro license with Hex-Rays decompiler, which is costly and restricts use to those with commercial tool access.
Installation involves configuring multiple environment variables (e.g., IDADIR, LIBCLANG_PATH) and dependencies like LLVM/Clang, adding deployment overhead.
The TODO list admits missing features such as direct Semgrep integration and using .cpp extensions, limiting current output usability for some workflows.
Tied to specific IDA Pro versions per the compatibility table, risking breakage with updates and requiring careful version management.