Skip to content
Back to skills

Reverse Engineering Arm Binaries

ASecurity

'Reverse engineers ARM/AArch64 malware by identifying the architecture and instruction

  • 22 stars
  • 0 votes
  • 1 copy
  • 5 views
  • Added September 11, 2026
securitypythonbashgitapisecuritydocumentation

Works with

  • cli
  • api

Security analysis

A100/100

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

Scanned September 11, 2026

npx -y skills add meltedinhex/analyst-ai-pack --skill reverse-engineering-arm-binaries --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Reverse Engineering Arm Binaries?

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

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

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-arm-binaries
description: 'Reverse engineers ARM/AArch64 malware by identifying the architecture and instruction
  set state (ARM/Thumb), parsing ELF/Mach-O ARM headers, and orienting analysis around the ARM
  calling convention. Activates for requests to reverse ARM binaries, analyze AArch64 malware, or
  handle ARM/Thumb instruction-set decoding.'
domain: cybersecurity
subdomain: reverse-engineering
tags:
  - reverse-engineering
  - arm
  - aarch64
  - thumb
  - disassembly
version: 1.0.0
author: analyst-ai-pack
license: Apache-2.0
mitre_attack:
  - T1027
  - T1059
  - T1587.001
d3fend:
  - D3-DA
  - D3-SDA
references:
  - 'Arm Architecture Reference Manual — https://developer.arm.com/documentation/'
  - 'ELF for the Arm Architecture (AAELF) — https://github.com/ARM-software/abi-aa'
---

# Reverse Engineering ARM Binaries

## When to Use

- You have an ARM (32-bit) or AArch64 (64-bit) binary — IoT/mobile/Linux malware — and need to
  identify the architecture, instruction-set state, and entry point before disassembly.
- You need to handle ARM/Thumb interworking correctly.

**Do not use** an x86 mindset for calling conventions/registers — ARM differs. This skill reads the
binary statically and executes nothing.

## Prerequisites

- The ARM binary (ELF or Mach-O), read inertly. Capstone optional for instruction decoding.

## Safety & Handling

- Read bytes statically; analyze on an isolated host (and emulate via QEMU separately if needed).

## Workflow

### Step 1: Identify architecture and format

```bash
python scripts/analyst.py identify sample.bin
```

Parses ELF/Mach-O headers to report ARM vs AArch64, endianness, entry point, and (for ELF) whether
the entry is Thumb (low bit set in `e_entry` or `$t` mapping symbols).

### Step 2: Set the correct disassembly mode

Disassemble AArch64 as A64; for 32-bit ARM, switch between ARM and Thumb per the entry/mapping
symbols.

### Step 3: Orient around the calling convention

Track arguments in `r0-r3`/`x0-x7`, return in `r0`/`x0`, and syscalls via `svc` with the syscall
number in `r7`/`x8`.

### Step 4: Proceed with analysis

Identify functions, strings, and syscalls; pair with emulation if dynamic insight is needed.

## Validation

- Architecture (ARM/AArch64) and endianness are read from the header.
- The entry point and ARM/Thumb state are reported.
- Disassembly mode matches the detected state.

## Pitfalls

- Missing Thumb state and decoding Thumb as ARM (garbage output).
- Big-endian ARM (rare but real) mis-parsed as little-endian.
- Statically linked musl/uClibc inflating the function set on IoT samples.

## References

- See [`references/api-reference.md`](references/api-reference.md) for the identifier.
- Arm ARM and AAELF references (linked in frontmatter).

Files in this skill

  • LICENSE340 B
  • SKILL.md2.7 KB
  • references/api-reference.md1.2 KB
  • scripts/analyst.py2.5 KB

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.