# Which Routing Rule Handles IDA Pro Reverse Engineering in reverse-skill?

> Discover the routing rule in reverse-skill that handles IDA Pro reverse engineering. Learn how hints match patterns to direct your workflow.

- Repository: [ZhaoXu/reverse-skill](https://github.com/zhaoxuya520/reverse-skill)
- Tags: deep-dive
- Published: 2026-08-24

---

**The routing rule is defined in [`skills/config/routing.json`](https://github.com/zhaoxuya520/reverse-skill/blob/main/skills/config/routing.json) and maps hints matching the regex pattern `\bida\b|decompile|disassembl|...` to the [`ida-reverse/SKILL.md`](https://github.com/zhaoxuya520/reverse-skill/blob/main/ida-reverse/SKILL.md) skill.**

The `zhaoxuya520/reverse-skill` repository uses a JSON-based routing configuration to dispatch reverse engineering tasks to specialized skill handlers. When an analyst submits a hint containing IDA Pro keywords, the routing engine evaluates it against a specific **must** condition that targets IDA-specific terminology.

## Routing Rule Configuration

According to the source code in [`skills/config/routing.json`](https://github.com/zhaoxuya520/reverse-skill/blob/main/skills/config/routing.json), the IDA Pro routing rule is identified by its target skill path and its matching pattern. The rule is located approximately at line 52 within the configuration array.

### The Must Regex Pattern

The rule employs a **must** regex designed to catch IDA Pro and reverse engineering terminology. The pattern includes:

- `\bida\b` – word-boundary match for "ida"
- `decompile` and `disassembl` – core IDA operations
- Chinese equivalents: `反编译` (decompile) and `反汇编` (disassemble)
- Binary format indicators: `\.so`, `\.elf`, and `jni`

When the routing engine processes a hint, it checks for the presence of any these keywords. If the regex matches, the hint is classified for IDA Pro processing.

### Skill Target Mapping

Upon successful pattern matching, the routing rule resolves the request to `"skill": "ida-reverse/SKILL.md"`. This file contains the skill definition that implements the actual IDA Pro reverse engineering workflow, including decompilation and disassembly instructions.

## Entry Point Scripts

The routing system is invoked through platform-specific master scripts that parse hints and query [`routing.json`](https://github.com/zhaoxuya520/reverse-skill/blob/main/routing.json):

- **`skills/scripts/master-route.ps1`** – PowerShell implementation for Windows environments
- **[`skills/scripts/master-route.sh`](https://github.com/zhaoxuya520/reverse-skill/blob/main/skills/scripts/master-route.sh)** – Bash implementation for Linux and macOS

These scripts accept a hint argument, evaluate it against the routing rules, and execute the corresponding skill file.

## Practical Usage Examples

```powershell

# Windows: Route a hint for IDA decompilation

powershell -NoProfile -ExecutionPolicy Bypass -File skills/scripts/master-route.ps1 -Hint "IDA decompile libnative.so"

```

```bash

# Linux/macOS: Route a hint for ELF disassembly

bash skills/scripts/master-route.sh --hint "disassemble ELF binary with IDA"

```

Both commands trigger the routing rule in [`skills/config/routing.json`](https://github.com/zhaoxuya520/reverse-skill/blob/main/skills/config/routing.json), match the hint against the IDA-related regex, and invoke [`ida-reverse/SKILL.md`](https://github.com/zhaoxuya520/reverse-skill/blob/main/ida-reverse/SKILL.md).

## Summary

- The routing rule resides in [`skills/config/routing.json`](https://github.com/zhaoxuya520/reverse-skill/blob/main/skills/config/routing.json) and uses a **must** regex to identify IDA Pro requests
- Matching hints route to [`ida-reverse/SKILL.md`](https://github.com/zhaoxuya520/reverse-skill/blob/main/ida-reverse/SKILL.md) for skill execution
- Entry points are `master-route.ps1` (Windows) and [`master-route.sh`](https://github.com/zhaoxuya520/reverse-skill/blob/main/master-route.sh) (Unix)
- Trigger keywords include "ida", "decompile", "disassembl", `.so`, `.elf`, `jni`, and Chinese reverse engineering terms

## Frequently Asked Questions

### What file defines the IDA Pro routing rule?

The rule is defined in [`skills/config/routing.json`](https://github.com/zhaoxuya520/reverse-skill/blob/main/skills/config/routing.json) within the `zhaoxuya520/reverse-skill` repository. This file contains the **must** regex pattern and the mapping to [`ida-reverse/SKILL.md`](https://github.com/zhaoxuya520/reverse-skill/blob/main/ida-reverse/SKILL.md).

### Which regex patterns activate the IDA Pro skill?

The routing rule activates when hints contain `\bida\b`, `decompile`, `disassembl`, `反编译`, `反汇编`, `\.so`, `\.elf`, or `jni`. These patterns cover common IDA Pro operations and binary formats.

### How do I manually trigger the IDA Pro routing?

Use the master route scripts with a hint containing IDA keywords:
- Windows: `powershell -File skills/scripts/master-route.ps1 -Hint "your IDA hint"`
- Unix: `bash skills/scripts/master-route.sh --hint "your IDA hint"`

### Can I extend the routing rule to include additional IDA terms?

Yes. Modify the **must** regex in [`skills/config/routing.json`](https://github.com/zhaoxuya520/reverse-skill/blob/main/skills/config/routing.json) to include additional patterns. The routing engine applies these changes immediately to subsequent hints without requiring updates to the skill definition in [`ida-reverse/SKILL.md`](https://github.com/zhaoxuya520/reverse-skill/blob/main/ida-reverse/SKILL.md).