OpenCROW Reversing Toolbox
Prefer the opencrow-reversing-mcp server for typed disassembly, tracing, gadget search, and Python-driven analysis. Fall back to the direct scripts only when you need to debug the underlying ctf-environment execution path.
MCP First
- Use
toolbox_info, toolbox_verify, and toolbox_capabilities first.
- Use the typed reversing operations:
reversing_python
reversing_disassemble
reversing_trace
reversing_binwalk
reversing_gadget_search
- Treat the existing helper scripts as the implementation fallback, not the primary interface.
Use this skill for understanding binaries rather than exploiting them: disassembly, decompilation support, tracing, symbolic execution, emulation, dynamic instrumentation, gadget analysis, and binary rewriting in the ctf environment.
Quick Start
Run inline Python in ctf:
python ~/.codex/skills/opencrow-reversing-toolbox/scripts/run_reversing_python.py --code 'import angr; print(angr.__version__)'
Run an analysis helper:
python ~/.codex/skills/opencrow-reversing-toolbox/scripts/run_reversing_python.py --file /absolute/path/to/analyze.py
Verify the mapped stack:
python ~/.codex/skills/opencrow-reversing-toolbox/scripts/verify_toolkit.py
Workflow
- Start here when the task is "understand behavior" or "recover logic."
- Triage with
file, strings, objdump, or r2 before heavier analysis.
- Use Python tooling such as
angr, claripy, capstone, keystone, unicorn, ropper, ROPGadget, r2pipe, lief, and qiling for scripted workflows.
- Use
ghidra-headless, strace, ltrace, or binwalk when the artifact needs decompilation, tracing, or extraction.
- Read references/tooling.md when selecting among the installed reverse-engineering tools.
Tool Selection
- Use
angr for CFG recovery, path exploration, symbolic execution, and automated state search.
- Use
claripy when you need symbolic expressions without a full angr workflow.
- Use
capstone, keystone, and unicorn for disassembly, assembly, and emulation inside custom scripts.
- Use
ropper to search gadgets during binary inspection.
- Use
ROPGadget when you want a second gadget finder or architecture-specific output formats.
- Use
r2pipe and radare2 for scriptable or interactive binary analysis.
- Use
lief for parsing and patching executable formats.
- Use
qiling when you need a higher-level emulation environment around a foreign binary or firmware target.
- Use
frida-tools when you need runtime API tracing or live instrumentation instead of static reversing.
- Use
ghidra-headless for repeatable import, analysis, and decompilation tasks without the GUI.
- Use
objdump, strace, ltrace, and binwalk for fast static, runtime, or firmware-oriented inspection.
Resources
scripts/run_reversing_python.py: execute inline code or a .py file inside the ctf environment.
scripts/verify_toolkit.py: confirm that the mapped Python and native reversing tools are installed.
references/tooling.md: quick selection notes for reverse-engineering workflows.
1---2name: opencrow-reversing-toolbox3description: Use the Anaconda `ctf` environment and installed reverse-engineering tooling for binary analysis, symbolic execution, disassembly, emulation, and binary patching. Use when Codex needs `angr`, `claripy`, `capstone`, `unicorn`, `ghidra-headless`, `radare2`, `objdump`, `strace`, `ltrace`, `binwalk`, or related tools.4---5
6# OpenCROW Reversing Toolbox
7
8Prefer the `opencrow-reversing-mcp` server for typed disassembly, tracing, gadget search, and Python-driven analysis. Fall back to the direct scripts only when you need to debug the underlying `ctf`-environment execution path.
9
10## MCP First
11
12- Use `toolbox_info`, `toolbox_verify`, and `toolbox_capabilities` first.
13- Use the typed reversing operations:
14 - `reversing_python`
15 - `reversing_disassemble`
16 - `reversing_trace`
17 - `reversing_binwalk`
18 - `reversing_gadget_search`
19- Treat the existing helper scripts as the implementation fallback, not the primary interface.
20
21Use this skill for understanding binaries rather than exploiting them: disassembly, decompilation support, tracing, symbolic execution, emulation, dynamic instrumentation, gadget analysis, and binary rewriting in the `ctf` environment.
22
23## Quick Start
24
25Run inline Python in `ctf`:
26
27```bash
28python ~/.codex/skills/opencrow-reversing-toolbox/scripts/run_reversing_python.py --code 'import angr; print(angr.__version__)'
29```
30
31Run an analysis helper:
32
33```bash
34python ~/.codex/skills/opencrow-reversing-toolbox/scripts/run_reversing_python.py --file /absolute/path/to/analyze.py
35```
36
37Verify the mapped stack:
38
39```bash
40python ~/.codex/skills/opencrow-reversing-toolbox/scripts/verify_toolkit.py
41```
42
43## Workflow
44
451. Start here when the task is "understand behavior" or "recover logic."
462. Triage with `file`, `strings`, `objdump`, or `r2` before heavier analysis.
473. Use Python tooling such as `angr`, `claripy`, `capstone`, `keystone`, `unicorn`, `ropper`, `ROPGadget`, `r2pipe`, `lief`, and `qiling` for scripted workflows.
484. Use `ghidra-headless`, `strace`, `ltrace`, or `binwalk` when the artifact needs decompilation, tracing, or extraction.
495. Read [references/tooling.md](references/tooling.md) when selecting among the installed reverse-engineering tools.
50
51## Tool Selection
52
53- Use `angr` for CFG recovery, path exploration, symbolic execution, and automated state search.
54- Use `claripy` when you need symbolic expressions without a full `angr` workflow.
55- Use `capstone`, `keystone`, and `unicorn` for disassembly, assembly, and emulation inside custom scripts.
56- Use `ropper` to search gadgets during binary inspection.
57- Use `ROPGadget` when you want a second gadget finder or architecture-specific output formats.
58- Use `r2pipe` and `radare2` for scriptable or interactive binary analysis.
59- Use `lief` for parsing and patching executable formats.
60- Use `qiling` when you need a higher-level emulation environment around a foreign binary or firmware target.
61- Use `frida-tools` when you need runtime API tracing or live instrumentation instead of static reversing.
62- Use `ghidra-headless` for repeatable import, analysis, and decompilation tasks without the GUI.
63- Use `objdump`, `strace`, `ltrace`, and `binwalk` for fast static, runtime, or firmware-oriented inspection.
64
65## Resources
66
67- `scripts/run_reversing_python.py`: execute inline code or a `.py` file inside the `ctf` environment.
68- `scripts/verify_toolkit.py`: confirm that the mapped Python and native reversing tools are installed.
69- `references/tooling.md`: quick selection notes for reverse-engineering workflows.