
컴파일된 Hermes 바이트코드(.hbc) 파일을 다시 읽을 수 있는 JavaScript로 변환하여 React Native 모바일 앱을 리버스 엔지니어링할 수 있게 해주는 강력한 디컴파일러입니다.

React Native의 기반 JS 엔진인 Hermes 바이트코드(.hbc)용 Rust 디컴파일러입니다. HBC 40~99를 지원합니다.
사전 빌드된 바이너리(Linux / macOS / Windows)는 Releases 또는 Actions에서 받을 수 있습니다:
| 에셋 접미사 | 플랫폼 |
|---|---|
linux-x86_64 / linux-arm64 | Linux |
macos-arm64 / macos-x86_64 | macOS |
windows-x86_64 | Windows |
아카이브에는 hermes-decomp와 hermes-mcp가 포함됩니다. 검증: shasum -a 256 -c SHA256SUMS.
hermes-decomp update --check # or --install / --version v0.1.7
소스에서 빌드(Rust 1.70+):
git clone https://github.com/SymbioticSec/hermes-decomp.git
cd hermes-decomp && cargo build --release
# → target/release/hermes-decomp target/release/hermes-mcp
hermes-decomp info app.hbc
hermes-decomp disasm app.hbc --function 5 --info --show-offsets
hermes-decomp decompile app.hbc -o out.js # progress on stderr
hermes-decomp decompile app.hbc --function 42
hermes-decomp tui app.hbc
hermes-decomp xref app.hbc --query "loginWithToken"


전체 플래그 및 예제 → docs/USAGE.md.
참고:
decompile은 빠른 재로드를 위해 디스크 기반 **.hdcache**를 사용합니다. 캐시를 강제로 무시하려면 --no-cache를 전달하세요.decompile -o …는 파이프라인 단계를 stderr로 출력합니다.hermes-mcp) → docs/MCP.mdmcp-config.example.jsonhbc-decomp → docs/LIBRARY.mdcargo build --release -p hbc-decomp-mcp
**CONTRIBUTING.md**를 참고하세요. PR 전에 이슈를 먼저 열어 주세요.
cargo build --release --workspace && cargo test --workspace
MIT. LICENSE를 참조하세요.
| 영역 | 명령어(주요 항목) |
|---|
| 읽기 | info, disasm, decompile, tui, extract, modules, deps |
| 분석 | xref, callgraph, graphviz, closures, debug, dump, bin-diff |
| RE 도우미 | secrets, frida-hooks |
| 쓰기(바이트코드 전용) | emit-hasm, asm, asm-check, patch-string, patch-function, inject-stub, create |