Skip to main content
Agent mode gives the AI access to a suite of analysis tools that run inside isolated Firecracker microVMs. The agent autonomously selects and chains tools based on your questions and the sample type.

Core Analysis Tools

File Info

Extracts comprehensive file metadata including all hash types (MD5, SHA1, SHA256, SHA512, ssdeep, imphash), entropy calculation, file size, and MIME type. This is typically the first tool the agent runs.

YARA Scan

Scans the sample against DECODA’s built-in YARA rulesets and any custom rules you’ve added. Rulesets cover malware families, packer signatures, ransomware indicators, and suspicious API patterns.

Strings Analysis

Extracts printable strings and automatically categorises them into types: URLs, IP addresses, file paths, registry keys, API function names, and more. Supports configurable minimum length.

Terminal Command

Executes shell commands inside the sandbox for ad-hoc analysis. Common commands like hexdump, objdump, readelf, and file are available.
Dangerous commands are blocked: rm -rf /, curl|sh, nc/netcat, sudo, chmod 777, and others. This is enforced at the sandbox level.

Python Code

Runs custom Python scripts with access to analysis libraries. Available packages include:
  • pefile — PE header parsing
  • lief — Multi-format binary parsing (PE, ELF, Mach-O)
  • capstone — Disassembly framework
  • oletools — OLE/Office document analysis
  • PyCryptodome — Cryptographic operations
  • ssdeep — Fuzzy hashing
  • flare-floss — String deobfuscation
  • yara-python — YARA rule matching
Python module blocking prevents importing subprocess, socket, requests, and ctypes to maintain sandbox isolation.
TierExecutions/SessionMax Code SizeTimeout
FreeNot available
Pro1010 KB60s
Max2515 KB120s

Reverse Engineering Tools

Ghidra Scripts

22 pre-built Ghidra scripts for binary analysis, running on Ghidra 12.0.1 in headless mode. Available on Pro and Max tiers.
ScriptWhat It Does
decompile_functionDecompile a specific function by name or address to C-like pseudocode
decompile_allDecompile up to N functions (default: 50), optionally filtering by minimum size
find_cryptoDetect cryptographic constants and algorithms (AES, RSA, DES, RC4, SHA, etc.)
extract_stringsContext-aware string extraction — shows where strings are referenced in code
analyze_importsList imported functions with optional cross-references and suspicious-only filtering
detect_packerIdentify packers/protectors (UPX, Themida, VMProtect, MPRESS, etc.) via entropy and signatures
unpack_upxAttempt UPX unpacking and output the decompressed binary
extract_resourcesExtract embedded resources (icons, manifests, certificates, data blobs)
trace_callsTrace function call chains from a starting point with configurable depth
find_interestingHeuristic scan for suspicious patterns (anti-debug, injection, persistence, etc.)
get_functionsList all functions with size, address, and call count — sortable and filterable
generate_iocsExtract IOCs directly from binary analysis with defanging and confidence filtering
get_memory_mapShow memory layout with section entropy and signature detection
search_bytesSearch for byte patterns across the binary with context display
get_xrefsGet cross-references to/from a target address or function
analyze_control_flowGenerate control flow graphs for functions, showing branches, loops, and conditional paths
find_dead_codeDetect unreachable or dead code blocks that may indicate removed functionality or anti-analysis tricks
analyze_api_chainsTrace chains of API calls to identify multi-step behaviours (e.g., VirtualAlloc → WriteProcessMemory → CreateRemoteThread)
disassemble_atDisassemble instructions at a specific address with configurable context window
read_memory_regionRead raw bytes from a memory region — useful for extracting embedded data or encoded payloads
generate_yaraGenerate YARA detection rules directly from Ghidra analysis output
identify_packerIdentify specific packer versions and configurations through structural analysis
Each script has a default 180-second timeout (configurable up to 13 minutes for complex analyses) and results are cached by sample SHA256. Ghidra projects persist across messages within the same chat session via sandbox pause/resume, so follow-up queries reuse the already-analysed project.

.NET Analysis

Specialised tools for .NET assemblies using ILSpyCMD 9.1 and monodis. Available on Pro and Max tiers.
OperationWhat It Does
decompileFull C# decompilation of the assembly
decompile_typeDecompile a specific class or type by name
disassembleRaw IL disassembly via monodis
disassemble_methodDisassemble a specific method
list_typesList all types in the assembly with hierarchy
list_methodsList all methods with full signatures
list_namespacesExtract namespace structure
extract_metadataFull metadata extraction (version, references, attributes)
detect_obfuscatorsIdentify ConfuserEx, Dotfuscator, SmartAssembly, .NET Reactor
extract_resourcesExtract embedded resources
extract_rat_configsExtract configs from known RATs (AsyncRAT, QuasarRAT, AgentTesla, DcRAT)
decrypt_stringsAttempt string decryption for common obfuscation patterns

Cross References

Map function cross-references across the binary. Shows what calls a function and what it calls, helping trace execution flow and identify key routines.

Call Graph

Generate function call graphs showing the relationships between functions. Useful for understanding program structure and identifying central routines.

Crypto Detection

Identify cryptographic algorithms by searching for known constants (S-boxes, round constants, key schedules). Detects AES, DES, RSA, RC4, Blowfish, SHA family, and more.

Python Unpacker

Detect and unpack Python executables built with PyInstaller or py2exe. Uses pyinstxtractor-ng, uncompyle6, and pycdc to recover original Python source code.

Threat Intelligence Tools

Real-time threat intelligence enrichment powered by Perplexity’s Sonar model. The agent can search the web during analysis to look up CVE details, malware family documentation, campaign reports, and known indicators. Example use cases:
  • Identifying a malware family from behavioural patterns
  • Looking up CVE details referenced in exploit code
  • Finding published threat reports about specific indicators
  • Checking if observed TTPs match known campaigns
Web Search is available when the platform’s Perplexity API key is configured. Results are treated as untrusted external input — the agent uses them as context but always cross-references with its own analysis findings.

Analysis Skills

On-demand loading of specialised analysis methodologies. When the agent encounters a specific scenario (e.g., a Go binary, a packed sample, or a request for a STIX export), it can load a detailed skill with step-by-step instructions tailored to that task. Available skills:
CategorySkills
AnalysisPE deep-dive, Go binary reversing, packed binary unpacking, .NET triage, YARA hunting
TechniquesAPI hashing resolution, C2 configuration extraction, string decryption
ReportingPDF report generation, HTML report generation, STIX 2.1 export
Skills inject expert-level methodology into the agent’s context, improving the quality and thoroughness of analysis for specialised scenarios.

Document Analysis Tools

OLE Analysis

Analyse legacy Office documents and OLE compound files:
OperationWhat It Does
triageQuick indicators scan via oleid (macros, DDE, suspicious elements)
extract_macrosFull VBA macro source code extraction (olevba)
analyze_macrosMacro analysis with automatic deobfuscation
check_maliciousHeuristic malicious macro detection (mraptor)
detect_ddeFind DDE/DDEAUTO formula injection
extract_objectsExtract embedded OLE objects
extract_rtf_objectsExtract objects from RTF documents (rtfobj)

PDF Analysis

Inspect PDF structure for malicious content:
OperationWhat It Does
triageKeyword counting for suspicious elements (/JS, /OpenAction, /AA, /EmbeddedFile)
search_javascriptFind and extract JavaScript objects
search_openactionFind auto-execution triggers
extract_objectExtract a specific PDF object by ID
search_embeddedFind embedded files

JAR/APK Analysis

Analyse Java archives and Android packages:
OperationWhat It Does
triageContents listing + MANIFEST.MF inspection
list_classesList all .class files
decompile_cfrFull decompilation via CFR
decompile_jadxDecompilation with deobfuscation via JADX
decompile_classDecompile a single class
disassembleBytecode disassembly via javap
verify_signatureVerify JAR/APK cryptographic signatures

Output Tools

Generate IOCs

Extract Indicators of Compromise from the analysis. See the IOC Categories reference for the full list of supported indicator types. Export formats: JSON, CSV, STIX 2.1

Generate YARA Rule

Create a YARA detection rule based on the sample’s unique characteristics — strings, byte patterns, import patterns, and structural features.

Save Artifact

Save extracted payloads, unpacked binaries, decoded configs, or other analysis artifacts for download. Available on Pro and Max tiers.
TierArtifacts/SessionMax Size
Pro51 MB
Max205 MB

Save Report

Generate a structured threat intelligence report from the current analysis session. Reports can be downloaded in 8 formats including PDF, DOCX, HTML, Markdown, JSON, CSV, XML, and MITRE ATT&CK Navigator layers. See the Reports guide for details on report structure and export formats.