Skip to content
Back to skills

Reverse Engineering

ASecurity

Understanding how a compiled, obfuscated, packed or virtualized target works: binaries and firmware, Android APKs and iOS IPAs, .NET and JVM assemblies, WASM and custom VMs, browser extensions, network protocols, stripped Go/Rust, anti-debug and anti-VM logic — plus turning a website's traffic into a typed API client. Use when the job is to read a target's behaviour before porting, patching or exploiting it.

  • 15 stars
  • 0 votes
  • 0 copies
  • 0 views
  • Added November 7, 2026
developmentjavascriptpythonrustgojavaswiftkotlinc++c#node

Works with

  • cli
  • api
  • mcp

Security analysis

A100/100

Pro scans all 20 files and shows the line behind each finding

Scanned November 7, 2026

npx -y skills add youlianvr/oper-share --skill reverse-engineering --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Reverse Engineering?

Add the live security badge to your README. It updates with every re-scan.

Security grade badge for Reverse Engineering
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/youlianvr-reverse-engineering/badge)](https://www.skillsdirectory.com/skills/youlianvr-reverse-engineering)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

Download with Pro
SKILL.md
---
name: reverse-engineering
description: >-
  Understanding how a compiled, obfuscated, packed or virtualized target works:
  binaries and firmware, Android APKs and iOS IPAs, .NET and JVM assemblies,
  WASM and custom VMs, browser extensions, network protocols, stripped Go/Rust,
  anti-debug and anti-VM logic — plus turning a website's traffic into a typed
  API client. Use when the job is to read a target's behaviour before porting,
  patching or exploiting it.
---

# reverse-engineering — targets, methods, technique library

> Home branch in Memora: `root/skill/reverse-engineering`.
>
> Work on copies inside the task's case directory. Never run an unknown sample,
> patch an original, or expand scope without a reason.

## Choosing a part

| Target | Part |
|---|---|
| Android APK & iOS IPA: unpack, decompile, smali, repackage, Frida, pinning | `parts/mobile-reverse/` |
| Cross-version symbol migration, BinDiff/Diaphora work | `parts/binary-diff/` |
| Chrome/Firefox extension: manifest, workers, message passing | `skills/reverse-engineering/parts/browser-extension-reverse/` |
| .NET / C# assembly (IL, obfuscators, dnSpy, de4dot) | `parts/dotnet-reverse/` |
| WASM-like custom VM, DSL interpreter, JS risk engine | `parts/dsl-vm-reverse/` |
| Ghidra headless or GUI, decompiler, MCP workflows | `parts/ghidra-reverse/` |
| Stripped Go or Rust binary: pclntab, metadata, panic strings | `parts/go-rust-reverse/` |
| IDA Pro workflows and scripting | `parts/ida-reverse/` |
| Frontend JavaScript: signature chains, page observation, hooks | `parts/js-reverse/` |
| macOS / Mach-O: codesign, Objective-C/Swift recovery | `parts/macos-reverse/` |
| Custom binary protocol, Protobuf/gRPC, WebSocket frames, PCAP | `parts/protocol-reverse/` |
| radare2 from the command line | `parts/radare2/` |
| Website → typed API client: capture HAR, generate Python/TS/Go/Java | `parts/reverse-api-engineer/` |

## Technique library (`references/`)

Read only the reference file the target requires:

- `references/tools.md`, `references/tools-dynamic.md`, `references/tools-advanced.md` — static/dynamic/deobfuscation toolchains (GDB, Ghidra, r2, IDA, Frida, angr, x64dbg, Qiling, VMProtect, LIEF).
- `references/anti-analysis.md` — anti-debug, anti-VM, anti-DBI, MBA simplification.
- `references/patterns.md`, `references/patterns-ctf.md`, `references/patterns-ctf-2.md`, `references/patterns-ctf-3.md` — VM opcodes, self-modifying code, lattice/crypto patterns.
- `references/languages.md`, `references/languages-compiled.md`, `references/languages-platforms.md` — Python bytecode, UEFI, Go, Rust, Swift, Kotlin, C++, Electron.
- `references/platforms.md`, `references/platforms-hardware.md`, `references/elf-analysis.md`, `references/go-reverse.md`, `references/kernel-driver-reverse.md`, `references/crypto-decode-tools.md`, `references/field-notes.md`, `references/awesome-re-resources.md`.

## Rules

- Walk `root/skill/reverse-engineering` (and the project root) in Memora before starting; record verified offsets, structures, and dead-ends as nodes.
- Use `ask_questions` when choosing between static reconstruction vs. dynamic instrumentation, or before running any sample on the host.
- State-changing operations happen on copies inside the task folder, never on the original artifact.

## Related

`security` (surface assessments, `skills/security/parts/malware-analysis/`), `browser` (extension runtime, HAR capture), `dev` (writing the clean port or client).

Files in this skill

  • SKILL.md3.4 KB
  • parts/binary-diff/SKILL.md12.1 KB
  • parts/binary-diff/references/prompt-template.md4.8 KB
  • parts/browser-extension-reverse/SKILL.md1.9 KB
  • parts/browser-extension-reverse/references/extension-analysis.md328 B
  • parts/dotnet-reverse/SKILL.md10.1 KB
  • parts/dotnet-reverse/references/common-workflow.md6.6 KB
  • parts/dotnet-reverse/references/obfuscators.md5.7 KB
  • parts/dotnet-reverse/references/sharp-tools.md6.3 KB
  • parts/dsl-vm-reverse/SKILL.md11.5 KB
  • parts/ghidra-reverse/SKILL.md2.4 KB
  • parts/ghidra-reverse/references/ghidra-cheatsheet.md353 B
  • parts/go-rust-reverse/SKILL.md1.7 KB
  • parts/go-rust-reverse/references/go-rust-notes.md230 B
  • parts/ida-reverse/SKILL.md15.7 KB
  • parts/ida-reverse/references/ida-mcp-cheatsheet.md10.8 KB
  • parts/ida-reverse/scripts/open.ps17.9 KB
  • parts/ida-reverse/scripts/start.ps16 KB
  • parts/js-reverse/SKILL.md8.8 KB
  • parts/js-reverse/references/ast-deobfuscation.md146 B

Attribution

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments

Loading comments…

Newsletter

Get the weekly list of safe new skills, and the ones we pulled.