Search

Find what matters.

Can it find the right code in my binary?

The problem

Searching large binaries is hard, especially when you do not have strong anchors like useful strings, obvious cross references, symbols, or debug information. The larger the program gets, the less practical it becomes to scan function-by-function looking for one behavior or pattern. What you want instead is a fast way to surface likely matches, spot recurring patterns, and pivot from those findings into nearby or related code without having to manually comb through the entire binary.

How Sidekick searches

For broad search, Sidekick's agents break a natural-language question into focused searches across subsystems, then return a shortlist of candidate functions with evidence you can inspect immediately. It is designed for the common case: large stripped binaries, fuzzy questions, and not much to anchor on besides behavior.

For especially large or difficult targets, Sidekick also offers semantic indexing as an experimental, opt-in feature. It precomputes behavior-aware indexes so Sidekick can surface relevant functions even faster when you want to trade a little setup for a stronger first-pass search experience.

Worked example: broad search

Open a stripped binary and ask Sidekick to find something important.

Sidekick broad search in Binary Ninja

What you get

List of relevant functions with helpful names. Supporting evidence and context including linked locations in the binary so you can quickly triage before reading a single line of decompilation.

Worked example: semantic indexing

Enable semantic indexing (experimental) on a stripped 10,000+ function binary and get candidate results in about 20 seconds.

Sidekick semantic search in Binary Ninja

What you get

List of candidate functions linked to their locations in the binary along with a summary analysis of initial findings. You go from "somewhere in this huge stripped binary" to "these are the functions I should inspect first" in seconds.