REA MCP
☰
EN
● — online · Views — times
SponsorsSubmit a case
Tutorial resources · by Heroic steps

REA: "Reverse Engineer Anything", Tested on a Real Binary

A hands-on review and demo of REA (rea-agents 6.4.0), showing installation, Ghidra setup on Apple Silicon, decompilation of a self-written stripped binary, and mapping an Electron app's IPC export flow.

Translated

About this case

REA (Reverse Engineer Anything) is a free, open-source (MIT) toolbox that lets AI agents like Claude Code, Codex and Cursor look inside software without its source code: websites, JavaScript/Electron apps, .NET, Android, firmware and native binaries. 195,665 GitHub stars; npm package rea-agents 6.4.0.

Setup

See the original source for installation instructions.

Original text / README

REA: "Reverse Engineer Anything", Tested on a Real Binary

REA (Reverse Engineer Anything) is a free, open-source (MIT) toolbox that lets AI agents like Claude Code, Codex and Cursor look inside software without its source code: websites, JavaScript/Electron apps, .NET, Android, firmware and native binaries. 195,665 GitHub stars; npm package rea-agents 6.4.0.

Install:

  1. Node.js 22+ and npm
  2. npx rea-agents setup (registers REA with your AI agent; review the changes it proposes)
  3. For native code: install a decompiler, e.g. the free Ghidra 12.1 + JDK 21, then export GHIDRA_INSTALL_DIR=… and run rea doctor Apple Silicon note: Ghidra's release has no Apple Silicon decompiler. I built it from Ghidra's bundled source in 28 s (make ghidra_opt ARCH_TYPE="-arch arm64", plus sleigh_opt, copied into Ghidra/Features/Decompiler/os/mac_arm_64/).

My test on an Apple M4 Mac (only on software I wrote): Test 1, a stripped binary

  • I wrote a small game that turns a player and level into a seed, compiled it with clang -O2, stripped all symbols and hid the source
  • REA traced the printed text to main, found the unnamed function it calls and decompiled it (each step about 9 s)
  • the pseudocode exposed the lookup table the compiler had hidden in the math: 3, 1, 4, 1, 5, 9, 2, 6 (the digits of pi), exactly what I wrote
  • I rebuilt the function only from REA's output; it matched the real binary on 2,000 / 2,000 random inputs Test 2, an Electron app
  • a small notes app I wrote, packed into app.asar
  • in about 6 s REA mapped the export feature: saved notes → bridged API → IPC "notes:export" → main-process handler, each with file and line
  • it flagged that the IPC handler never validates the sender For agents: REA's MCP server offers 170 tools and 6 guided prompts.

The fine print: use it only on software you own or are authorized to examine; commercial tools (IDA, Hopper, JEB) need proper licences; my test function was tiny, and real apps are far larger, so you (or your agent) still have to reason about the evidence.

Chapters 0:00 The claim 0:24 What it is 0:46 Install 1:13 Test 1: a binary 2:08 Test 2: an app 2:35 For agents 2:47 Fine print 3:03 Verdict

Sources (checked 13 Oct 2026)

  • https://github.com/morluto/rea (stars, forks, commits via the GitHub API), README, docs/installation.md, docs/cli.md, DISCLAIMER.md
  • My own hands-on test (rea-agents 6.4.0, Ghidra 12.1.4, JDK 21, Apple M4), on a binary and an app I wrote myself

#REA #ReverseEngineering #Ghidra #AIAgents #ClaudeCode #CyberSecurity #OpenSource

Similar projects