Get the latest tech news

Disassembling Dalvik


In this post, we announce the release of a small library for disassembling Dalvik bytecode. This serves as a foundation for building static analysis tooling for Android applications and system services in Rust. Read on for an example graphview application, or just check out the crate’s source and documentation

Android uses a custom runtime called ART to execute user applications and background system services on a handset. So I decided to write my own Dalvik disassembler in Rust, with explicit support for control flow visualization of exception handling. Dalvik can resolve a lot of high level information when paired with dex metadata, such as function arguments and string references, and I think it would be a great base to explore future decompilation ideas.

Get the Android app

Or read this on Hacker News

Read more on:

Photo of Dalvik

Dalvik