plurigrid/asi

reverse-engineering

Reverse Engineering Skill

First seen Jan 27, 2026

Installation

$ npx skills add plurigrid/asi --skill reverse-engineering

Similar popular skills

Related neighbors and high-traction skills in the same topics — useful to compare before installing.

Also in this package

Other skills from plurigrid/asi · top by installs.

npx skills add plurigrid/asi

Browse all from plurigrid/asi

More details

Agent compatibility

Declared targets from SKILL.md / docs. Unmarked agents are not listed — the skill may still install via the CLI.

Claude Code Not declared
Cursor Not declared
Codex Not declared
GitHub Copilot Not declared
Windsurf Not declared
Gemini CLI Not declared
Cline Not declared
OpenCode Not declared

Repository health

Stars 62
License LICENSE
Default branch main
Open issues 3
Status Active

Skill metadata

Parsed from SKILL.md frontmatter.

Version1.0.0

Package contents

Files included with this skill beyond the listing page.

  • skill md SKILL.md 12,609 B
  • docs SUMMARY.md 52 B

History

  1. First seen on skills.sh
  2. First recorded snapshot · 24 installs

SKILL.md

Reverse Engineering Skill

Binary analysis and reverse engineering via MCP servers for Ghidra, IDA Pro, radare2, and angr.

Trigger Conditions

  • User asks to analyze binaries, disassemble code, decompile functions
  • Questions about malware analysis, vulnerability research, CTF challenges
  • Binary diffing, patch analysis, firmware extraction
  • Symbol recovery, function identification, control flow analysis

MCP Servers

1. GhidrAssistMCP (Ghidra - Free)

Repository: https://github.com/jtang613/GhidrAssistMCP Stars: High activity Transport: HTTP/SSE on port 8080

Installation:

# Download from releases page
# In Ghidra: File → Install Extensions → Add Extension
# Enable: File → Configure → Configure Plugins → GhidrAssistMCP

31 Built-in Tools:

Category Tools
Program Analysis getprograminfo, listfunctions, listdata, liststrings, listimports, listexports, listsegments
Function Analysis getfunctioninfo, decompilefunction, disassemblefunction, functionxrefs, searchfunctions
Navigation getcurrentaddress, xrefsto, xrefsfrom, getcurrentfunction
Modification renamefunction, renamevariable, setfunctionprototype, setlocalvariabletype, setdisassembly_comment
Advanced autocreatestruct

2. LaurieWired/GhidraMCP (Popular Alternative)

Repository: https://github.com/LaurieWired/GhidraMCP Transport: Python bridge to Ghidra

3. IDA Pro MCP Servers

mrexodia/ida-pro-mcp (Most active):

git clone https://github.com/mrexodia/ida-pro-mcp
cd ida-pro-mcp
pip install -e .

MxIris-Reverse-Engineering/ida-mcp-server (473 stars):

git clone https://github.com/MxIris-Reverse-Engineering/ida-mcp-server

fdrechsler/mcp-server-idapro:

git clone https://github.com/fdrechsler/mcp-server-idapro

4. radare2-mcp (Official)

Repository: https://github.com/radareorg/radare2-mcp Transport: stdio

# Install radare2 first
brew install radare2  # macOS
# or: apt install radare2  # Linux

git clone https://github.com/radareorg/radare2-mcp
cd radare2-mcp
pip install -e .

MCP Config:

{
  "mcpServers": {
    "radare2": {
      "command": "r2-mcp",
      "args": []
    }
  }
}

5. rand-tech/pcm (Multi-tool)

Repository: https://github.com/rand-tech/pcm MCP for reverse engineering combining multiple backends.

Workflows

Basic Binary Analysis

1. Load binary into Ghidra/IDA
2. Start MCP server
3. Query: "List all functions" → list_functions
4. Query: "Decompile main" → decompile_function
5. Query: "Find xrefs to this address" → xrefs_to

Malware Analysis Pattern

1. get_program_info → Architecture, compiler, entry point
2. list_imports → Suspicious API calls (CreateRemoteThread, VirtualAlloc)
3. list_strings → C2 URLs, encryption keys, debug strings
4. search_functions "crypt" → Find encryption routines
5. decompile_function → Understand algorithm
6. auto_create_struct → Recover data structures

Vulnerability Research

1. list_functions → Function list with sizes
2. search_functions "parse|read|copy" → Input handlers
3. decompile_function → Find buffer operations
4. xrefs_to → Trace data flow
5. set_decompiler_comment → Annotate findings

CTF Binary Exploitation

1. get_program_info → Check protections (PIE, RELRO, canary)
2. list_functions → Find win/flag functions
3. decompile_function → Understand vulnerability
4. xrefs_from → Control flow analysis
5. list_segments → Memory layout for ROP

CLI Quick Reference

radare2 Commands

r2 binary                    # Open binary
aaa                          # Analyze all
afl                          # List functions
pdf @ main                   # Disassemble function
pdc @ main                   # Decompile (r2ghidra)
axt @ addr                   # Xrefs to
axf @ addr                   # Xrefs from
iz                           # List strings
ii                           # List imports

Ghidra Headless

analyzeHeadless /tmp/project ProjectName \
  -import binary.exe \
  -postScript ExportDecompilation.java \
  -deleteProject

Resources

r2con Speaker Repositories

Key repositories from r2con 2016-2025 speakers for process tree and binary analysis:

Core radare2 Team

Speaker Handle Repository Specialty
Sergi Alvarez pancake github.com/trufae radare2 creator, r2pipe
Anton Kochkov xvilka github.com/XVilka UEFI, radeco decompiler
Florian Märkl thestr4ng3r github.com/thestr4ng3r Cutter/Rizin founder
condret condret github.com/condret ESIL core, SIOL I/O
wargio wargio github.com/wargio GSoC mentor
maijin maijin github.com/maijin r2 book maintainer

ESIL & Symbolic Execution

Speaker Handle Repository Specialty
Chase Kanipe alkalinesec github.com/alkalinesec ESILSolve symbolic exec
Sylvain Pelissier Pelissier_S N/A ESIL side-channel simulation
Abel Valero skuater github.com/skuater r2wars, ESIL plugins
Gerardo García killabytenow github.com/killabytenow ESIL limits

Frida Integration (r2frida)

Speaker Handle Repository Specialty
Ole André Ravnås oleavr github.com/oleavr Frida creator, NowSecure
Giovanni Rocca iGio90 github.com/iGio90 Dwarf debugger
Grant Douglas hexploitable github.com/hexploitable r2frida mobile
Alex Soler as0ler N/A r2frida Kung Fu, r2env

Malware & Security Analysis

Speaker Handle Repository Specialty
Axelle Apvrille cryptax github.com/cryptax Malware, r2ai, droidlysis
Tim Blazytko mr_phrazer github.com/mrphrazer MBA deobfuscation, msynth
Julien Voisin jvoisin github.com/jvoisin Security tooling
cmatthewbrooks cmatthewbrooks N/A Windows malware

Signatures & Similarity

Speaker Handle Repository Specialty
Barton Rhodes bmorphism github.com/bmorphism r2 Zignatures (2020)
swoops swoops github.com/swoops libczignatures, drpebber
Fernando Dominguez FernandoDoming github.com/FernandoDoming diaphora similarity

Mobile Security (OWASP MSTG)

Speaker Handle Repository Specialty
Carlos Holguera cpholguera github.com/cpholguera OWASP MSTG co-author
Eduardo Novella enovella github.com/enovella NowSecure, r2frida
Francesco Tamagni mrmacete github.com/mrmacete NowSecure iOS

Decompilation & Analysis

Speaker Handle Repository Specialty
Ahmed Abd El Mawgood oddcoder github.com/oddcoder RAIR (Radare In Rust)
Antide Petit xarkes github.com/xarkes Cutter development
Arnau Gamez arnaugamez github.com/arnaugamez Side-channel attacks

Key Tool Repositories

# radare2 ecosystem
git clone https://github.com/radareorg/radare2      # Core framework
git clone https://github.com/radareorg/r2ghidra     # Ghidra decompiler
git clone https://github.com/radareorg/radare2-mcp  # MCP server
git clone https://github.com/radareorg/esil-rs      # ESIL in Rust

# Rizin fork (Cutter backend)
git clone https://github.com/rizinorg/rizin         # Rizin framework
git clone https://github.com/rizinorg/cutter        # GUI
git clone https://github.com/rizinorg/rz-ghidra     # Ghidra integration

# Frida ecosystem
git clone https://github.com/frida/frida-core       # Core library
git clone https://github.com/frida/frida-gum        # Instrumentation
git clone https://github.com/frida/cryptoshark      # Code tracer

# Speaker tools
git clone https://github.com/swoops/libc_zignatures # libc signatures
git clone https://github.com/swoops/dr_pebber       # Fake TEB/PEB for ESIL
git clone https://github.com/mrphrazer/msynth       # MBA simplification
git clone https://github.com/cryptax/droidlysis     # Android analysis
git clone https://github.com/iGio90/Dwarf           # Frida debugger
git clone https://github.com/condret/r2premium      # r2 premium features

Process Tree Analysis Perspectives

Each speaker brings unique analysis perspective:

Speaker Focus Process Tree Approach
pancake Core r2 r2 -d pid://PID attach, sandbox escape surfaces
xvilka UEFI/radeco Chromium shmem handles, decompile GPU process
condret ESIL Each PID as ESIL context, trace IPC parsing
Pelissier_S Side-channel Timing oracles in --time-ticks-* params
alkalinesec ESILSolve Symbolic exec on sandbox constraints
iGio90 r2frida frida -U -n 'process' + r2 integration
thestr4ng3r Cutter GUI attach, graph shader pipeline
cryptax Malware Persistence via flox-watchdog, LOLbins
bmorphism Zignatures zg signature generation across renderer variants
swoops dr_pebber Fake PEB structures for Windows emulation
mr_phrazer Deobfuscation MBA expressions in obfuscated binaries

Example Session

User: Analyze this binary for buffer overflow vulnerabilities

Agent:
1. Starting GhidraMCP server...
2. Loading binary and auto-analyzing...
3. [list_functions] Found 47 functions
4. [search_functions "strcpy|sprintf|gets"] Found 3 dangerous calls:
   - sub_401234: uses strcpy with stack buffer
   - sub_401456: sprintf without bounds
5. [decompile_function "sub_401234"] 
   
   void vuln_func(char *input) {
       char buffer[64];
       strcpy(buffer, input);  // VULNERABLE: no bounds check
       ...
   }

6. [xrefs_to "sub_401234"] Called from main+0x45
7. Vulnerability confirmed: Stack buffer overflow in sub_401234

End-of-Skill Interface

Integration with Gay.jl Colors

Assign deterministic colors to binary analysis domains:

using Gay

# Trit classification for RE tools
GHIDRA_TRIT = 0      # ZERO - foundational analysis
IDA_TRIT = 1         # PLUS - commercial/advanced  
RADARE2_TRIT = -1    # MINUS - lightweight/CLI

# Color functions by complexity
function color_function(cyclomatic_complexity::Int, seed::UInt64)
    Gay.color_at(cyclomatic_complexity, seed)
end

# Color control flow graph nodes
function color_cfg_node(block_id::Int, func_seed::UInt64)
    Gay.color_at(block_id, func_seed)
end

Related Skills

  • effective-topos: radare2 integration
  • mcp-tripartite: Binary analysis trit (-1 MINUS)
  • binsec: Symbolic execution tutorials
  • gay-mcp: Deterministic coloring for CFG visualization

SDF Interleaving

This skill connects to Software Design for Flexibility (Hanson & Sussman, 2021):

Primary Chapter: 3. Variations on an Arithmetic Theme

Concepts: generic arithmetic, coercion, symbolic, numeric

GF(3) Balanced Triad

reverse-engineering (−) + SDF.Ch3 (○) + [balancer] (+) = 0

Skill Trit: -1 (MINUS - verification)

Secondary Chapters

  • Ch10: Adventure Game Example
  • Ch4: Pattern Matching
  • Ch7: Propagators

Connection Pattern

Generic arithmetic crosses type boundaries. This skill handles heterogeneous data.