What problem does it solve?
Finding the exact input that drives a binary to a specific “good” behavior (and avoids “bad” behavior) is slow when you only have to try possibilities manually.
Core Features & Use Cases
- Symbolic input solving: Create symbolic variables (including stdin and argv) and let the solver derive values that satisfy program conditions.
- Path guidance with break/avoid targets: Reach desired code by breaking on strings/addresses and avoid undesired strings/addresses to prune execution paths.
- Constraints and state management: Apply byte-level constraints, set registers/memory, merge states for loop-heavy binaries, and generate test cases.
- Use Case: Turn a crackme or CTF checker into a direct solving workflow where you constrain the expected flag format (prefix, printable range) and compute the exact input that reaches the success condition.
Quick Start
Ask the AI to solve your crackme by running radius2 on the target binary, defining the symbolic stdin variable, and using an avoid string to eliminate the failure path (e.g., Incorrect).