| Crates.io | haruspex |
| lib.rs | haruspex |
| version | 0.7.1 |
| created_at | 2024-11-22 11:43:29.728112+00 |
| updated_at | 2025-09-17 12:45:11.945959+00 |
| description | Vulnerability research assistant that extracts pseudo-code from IDA Hex-Rays decompiler. |
| homepage | https://0xdeadbeef.info/ |
| repository | https://github.com/0xdea/haruspex |
| max_upload_size | |
| id | 1457309 |
| size | 57,997 |
"Hacking is the discipline of questioning all your assumptions all of the time."
-- Dave Aitel
Haruspex is a blazing fast IDA Pro headless plugin that extracts pseudo-code generated by IDA Pro's decompiler in a format that should be suitable to be imported into an IDE, or parsed by static analysis tools such as Semgrep, weggli, or oneiromancer.

decompile_to_file to decompile a function and save its pseudo-code to disk.The easiest way to get the latest release is via crates.io:
export IDADIR=/path/to/ida # if not set, the build script will check common locations
cargo install haruspex
On Windows, instead, use the following commands:
$env:LIBCLANG_PATH="\path\to\clang+llvm\bin"
$env:PATH="\path\to\ida;$env:PATH"
$env:IDADIR="\path\to\ida" # if not set, the build script will check common locations
cargo install haruspex
Alternatively, you can build from source:
git clone --depth 1 https://github.com/0xdea/haruspex
cd haruspex
export IDADIR=/path/to/ida # if not set, the build script will check common locations
cargo build --release
On Windows, instead, use the following commands:
git clone --depth 1 https://github.com/0xdea/haruspex
cd haruspex
$env:LIBCLANG_PATH="\path\to\clang+llvm\bin"
$env:PATH="\path\to\ida;$env:PATH"
$env:IDADIR="\path\to\ida" # if not set, the build script will check common locations
cargo build --release
haruspex <binary_file>
binary_file.dec directory:
vim <binary_file>.dec
code <binary_file>.dec
Note: check idalib documentation for additional information.