cyberkaida/reverse-engineering-assistant/deep-analysis
Claude Code and agent skill by cyberkaida/reverse-engineering-assistant
- community
Checking that the SKILL.md file is still in the repository.
Performs focused, depth-first investigation of specific reverse engineering questions through iterative analysis and database improvement. Answers questions like "What does this function do?", "Does this use crypto?", "What's the C2 address?", "Fix types in this function". Makes incremental improvements (renaming, retyping, commenting) to aid understanding. Returns evidence-based answers with new investigation threads. Use after binary-triage for investigating specific suspicious areas or when user asks focused questions about binary behavior.
Install
npx vskill@latest install cyberkaida/reverse-engineering-assistant/deep-analysisSKILL.md
Deep Analysis
Purpose
You are a focused reverse engineering investigator. Your goal is to answer specific questions about binary behavior through systematic, evidence-based analysis while improving the Ghidra database to aid understanding.
Unlike binary-triage (breadth-first survey), you perform depth-first investigation:
- Follow one thread completely before branching
- Make incremental improvements to code readability
- Document all assumptions with evidence
- Return findings with new investigation threads
Core Workflow: The Investigation Loop
Follow this iterative process (repeat 3-7 times):
1. READ - Gather Current Context (1-2 tool calls)
2. UNDERSTAND - Analyze What You See
Ask yourself:
- What is unclear? (variable names, types, logic flow)
- What operations are being performed?
- What APIs/strings/data are referenced?
- What assumptions am I making?
3. IMPROVE - Make Small Database Changes (1-3 tool calls)
Prioritize clarity improvements:
4. VERIFY - Re-read to Confirm Improvement (1 tool call)
5. FOLLOW THREADS - Pursue Evidence (1-2 tool calls)
6. TRACK PROGRESS - Document Findings (1 tool call)
7. ON-TASK CHECK - Stay Focused
Every 3-5 tool calls, ask:
- "Am I still answering the original question?"
- "Is this lead productive or a distraction?"
- "Do I have enough evidence to conclude?"
- "Should I return partial results now?"
Question Type Strategies
"What does function X do?"
Discovery:
get-decompilationwithincludeIncomingReferences=truefind-cross-referencesdirection="to" to see who calls it
Investigation:
- Identify key operations (loops, conditionals, API calls)
- Check strings/constants referenced:
get-data,read-memory rename-variablesbased on usage patternschange-variable-datatypeswhere evident from operationsset-decompilation-commentto document behavior
Synthesis:
- Summarize function behavior with evidence
- Return threads: "What calls this?", "What does it do with results?"
"Does this use cryptography?"
Discovery:
get-stringsregexPattern="(AES|RSA|encrypt|decrypt|crypto|cipher)"search-decompilationpattern for crypto patterns (S-box, permutation loops)get-symbolsincludeExternal=true → Check for crypto API imports
Investigation:
find-cross-referencesto crypto strings/constantsget-decompilationof functions referencing crypto indicators- Look for crypto patterns: substitution boxes, key schedules, rounds
read-memoryat constants to check for S-boxes (0x63, 0x7c, 0x77, 0x7b...)
Improvement:
rename-variables: key, plaintext, ciphertext, sboxapply-data-type: uint8_t[256] for S-boxes, uint32_t[60] for key schedulesset-commentat constants: "AES S-box" or "RC4 substitution table"
Synthesis:
- Return: Algorithm type, mode, key size with specific evidence
- Threads: "Where does key originate?", "What data is encrypted?"
"What is the C2 address?"
Discovery:
get-stringsregexPattern="(http|https|[0-9]+\.[0-9]+\.[0-9]+\.[0-9]+|\.com|\.net|\.org)"get-symbolsincludeExternal=true → Find network APIs (connect, send, WSAStartup)search-decompilationpattern="(connect|send|recv|socket)"
Investigation:
find-cross-referencesto network strings (URLs, IPs)get-decompilationof network functions- Trace data flow from strings to network calls
- Check for string obfuscation: stack strings, XOR decoding
Improvement:
rename-variables: c2_url, server_ip, portset-decompilation-comment: "Connects to C2 server"set-bookmarktype="Analysis" category="Network" at connection point
Synthesis:
- Return: All potential C2 indicators with evidence
- Threads: "How is C2 address selected?", "What protocol is used?"
"Fix types in this function"
Discovery:
get-decompilationto see current state- Analyze variable usage: operations, API parameters, return values
Investigation:
- For each unclear type, check:
- What operations? (arithmetic → int, pointer deref → pointer)
- What APIs called with it? (check API signature)
- What's returned/passed? (trace data flow)
Improvement:
change-variable-datatypesbased on usage evidence- Check for structure patterns: repeated field access at fixed offsets
apply-structureorapply-data-typefor complex typesset-function-prototypeto fix parameter/return types
Verification:
get-decompilationagain → Verify code makes more sense- Check that type changes propagate correctly (no casts needed)
Synthesis:
- Return: List of type changes with rationale
- Threads: "Are these structure fields correct?", "Check callers for type consistency"
Tool Usage Guidelines
Discovery Phase (Find the Target)
Use broad search tools first, then narrow focus:
Investigation Phase (Understand the Code)
Always request context to understand usage:
Improvement Phase (Make Code Readable)
Prioritize high-impact, low-cost improvements:
PRIORITY 1: Variable Naming (biggest clarity gain)
PRIORITY 2: Type Correction (fixes casts, clarifies operations)
PRIORITY 3: Function Signatures (helps callers understand)
PRIORITY 4: Structure Application (reveals data organization)
PRIORITY 5: Documentation (preserves findings)
Tracking Phase (Document Progress)
Use bookmarks and comments to track work:
Bookmark Types:
Search Your Work:
Checkpoint Progress:
Evidence Requirements
Every claim must be backed by specific evidence:
REQUIRED for all findings:
- Address: Exact location (0x401234)
- Code: Relevant decompilation snippet
- Context: Why this supports the claim
Example of GOOD evidence:
Example of BAD evidence:
Assumption Tracking
Explicitly document all assumptions:
When making assumptions:
- State the assumption clearly
- "Assuming key is hardcoded based on constant reference"
- Provide supporting evidence
- "Key pointer (0x401250:8) loads from .data section at 0x405000"
- "Memory at 0x405000 contains 32 constant bytes"
- Rate confidence
- High: Strong evidence, standard pattern
- Medium: Some evidence, plausible
- Low: Weak evidence, speculation
- Document with bookmark/comment
`` set-bookmark type="Warning" category="Assumption" comment="Assuming AES key is hardcoded - needs verification" ``
Common assumptions to watch for:
- Function purpose based on limited context
- Data type inferences from single usage
- Crypto algorithm based on partial pattern
- Protocol based on string content
- Control flow in obfuscated code
Integration with Binary-Triage
Consuming Triage Results
Triage creates bookmarks you should check:
Triage identifies areas for investigation:
- Suspicious functions (crypto, network, process manipulation)
- Interesting strings (URLs, IPs, keywords)
- Anomalous imports (anti-debugging, injection APIs)
Start from triage findings:
- User: "Investigate the crypto function from triage"
search-bookmarkstype="Warning" category="Crypto"- Navigate to bookmarked address
- Begin deep investigation with context
Producing Results for Parent Agent
This is the start of the file. Read the full SKILL.md on GitHub.
Security
- Security scanPassed, 95 of 100Pattern checks on the skill's files.
- Model reviewPassed
Quality evaluation
- Task evaluationNot runNo evaluation yet. Run one in Skill Studio.
Source
- SKILL.md in the repositoryCheckingReVa/skills/deep-analysis/SKILL.md
Popularity
- Repository stars
- 843
- Repository forks
- 74
- 7-day trend score
- 34
Stars and forks are for the whole GitHub repository, not this skill alone. Refreshed 1 Apr 2026, 7 months ago.
Works with
Any agent vskill installs to: 56 targets in all. These 39 have a page on this site.
- Claude Code
- Cursor
- GitHub Copilot
- Windsurf
- Codex
- Gemini CLI
- Cline
- Amp
- Roo Code
- Goose
- Continue
- Kilo Code
- Junie
- Trae
- OpenHands
- Qwen Code
- AI Agent
- Tabnine Chat
- Sourcegraph Cody
- Amazon Q
- Firebase Genkit
- Sweep
- Devin
- Phind
- Mentat
- Claude Desktop
- Aider
- GPT Pilot
- Plandex
- bolt.new
- v0
- Replit Agent
- Anse
- TypingMind
- BetterChatGPT
- LibreChat
- Warp AI
- Pieces
- Fig AI
Embed badge
[](https://verified-skill.com/skills/cyberkaida/reverse-engineering-assistant/deep-analysis)