ASC: A Super Fast Android Decompiler for Mobile Reverse Engineering

This repository profile is provided by osrepos.com, an open source repository discovery platform.

ASC: A Super Fast Android Decompiler for Mobile Reverse Engineering

Summary

ASC is an innovative and exceptionally fast Android decompiler front-end, specifically designed for mobile researchers and agents. It redefines traditional decompilation by directly querying compiled artifacts, offering on-demand code extraction and analysis without heavy preprocessing. This approach results in significantly reduced memory usage and lightning-fast performance, even on large APKs.

Repository Information

Analyzed by OSRepos on September 17, 2026

Use at your own risk

OSRepos shares public repositories for knowledge and discovery only. Any installation, execution, configuration, or use of code from these repositories is the user's own responsibility. Always review the repository, source code, dependencies, licenses, and security implications before running or installing anything. OSRepos is not responsible for issues, damages, or losses resulting from third-party repositories.

Introduction

ASC, also known as Droid ASC, is a groundbreaking Android decompiler front-end engineered for speed and efficiency, targeting mobile researchers and security agents. It challenges the conventional, resource-intensive methods of decompilation by adopting a stateless, zero-overhead engine that queries compiled artifacts directly. This innovative approach was highlighted in the presentation "Droid ASC: R8 Compiler Optimization as a DeCompiler Primitive" at Black Hat Europe, showcasing its ability to bypass traditional bottlenecks associated with processing massive Android APKs.

Traditional decompilers often consume vast amounts of RAM and time building heavy global indexes, a process ASC deems unnecessary. Instead, ASC treats the compiled artifact as a read-only database, extracting and searching code on demand in milliseconds, fundamentally redefining how compiled code is analyzed.

Why Use and Key Benefits

ASC offers significant advantages over conventional decompilation tools:

  • Unmatched Speed: Executes global cross-reference searches in approximately 1.79 seconds and decompiles target classes in just 177 milliseconds, even on large APKs (e.g., a 352MB commercial APK).
  • Low Memory Footprint: Achieves high performance using minimal RAM, demonstrating operations with only 141MB of memory for substantial applications.
  • Stateless and On-Demand: Eliminates the need for heavy preprocessing and bloated databases by directly probing within the Deflate bitstream and building dense Huffman lookup tables. This allows for core metadata extraction without touching irrelevant data blocks.
  • Innovative Compiler Optimization Leverage: Weaponizes R8 compiler behaviors, such as deterministic constant relocation and instruction deduplication, to perform lightning-fast cross-DEX code searches.
  • O(1) Instruction Locating: Features an engineered O(1) instruction locating primitive, enabling constant-time method resolution without building heavy mapping tables.
  • Dynamic Reconstruction: Upon hitting a target, Droid ASC extracts only the specific bytecodes and their dependencies, dynamically reconstructing a minimal and self-consistent DEX entirely in memory for instant decompilation.

Installation

Installing ASC is straightforward. You can install it via PyPI or directly from the source:

# from PyPI
pip install droidasc

# or from source
pip install .

After installation, the droidasc CLI command becomes globally available, providing a powerful interface for your decompilation needs.

Examples

The droidasc CLI offers various commands for interacting with Android APKs:

usage: droidasc [-h] {getclass,listclass,getmanifest,findrefs} ...

ASC tooling entry.

positional arguments:
  {getclass,listclass,getmanifest,findrefs}
    getclass            Locate the target class in APK, extract one DEX in memory, then decompile.
    listclass           List classes defined across all DEX entries in APK.
    getmanifest         Decode AndroidManifest.xml from APK and print it as XML.
    findrefs            Find code references for string/type/method/field across all DEX entries in APK.

options:
  -h, --help            show this help message and exit

examples:
  droidasc getclass app.apk Lcom/poc/Main; -o Main.java
  droidasc listclass app.apk --prefix com.poc
  droidasc getmanifest app.apk -o AndroidManifest.xml
  droidasc findrefs app.apk string token -o string_refs.txt

Links

Related repositories

Similar repositories that may be relevant next.

PocketPal AI: Your Private, Offline Language Model Assistant for Mobile

PocketPal AI: Your Private, Offline Language Model Assistant for Mobile

April 15, 2026

PocketPal AI is an innovative mobile application that brings the power of small language models (SLMs) directly to your smartphone. It allows users to interact with various AI models offline, ensuring complete privacy as all processing occurs on-device. Available for both iOS and Android, PocketPal AI offers a secure and flexible way to experience AI without an internet connection.

TypeScriptMobile AIOffline LLM
BCR: A Basic Call Recorder for Rooted Android Devices

BCR: A Basic Call Recorder for Rooted Android Devices

February 8, 2026

BCR is a straightforward call recording application designed for rooted Android devices or those running custom firmware. It automatically records incoming and outgoing calls in the background, offering various output formats and features like direct boot awareness and auto-record rules. This project prioritizes simplicity and reliability, focusing on core functionality without unnecessary complexities.

KotlinAndroidCall Recording
android-mcp-server: Programmatic Android Device Control via ADB

android-mcp-server: Programmatic Android Device Control via ADB

February 7, 2026

The android-mcp-server is a Python-based Model Context Protocol (MCP) server designed to offer programmatic control over Android devices using ADB. It enables advanced device management capabilities, including screenshot capture, UI layout analysis, and package management. This server integrates seamlessly with MCP clients like Claude Desktop, providing a powerful tool for developers and automation enthusiasts.

PythonAndroidADB
Breezy Weather: A Feature-Rich Weather App with Over 50 Sources

Breezy Weather: A Feature-Rich Weather App with Over 50 Sources

November 16, 2025

Breezy Weather is an open-source Android application written in Kotlin, offering comprehensive weather information. It provides detailed forecasts, visualizations, and supports over 50 weather sources. This app stands out for its privacy-friendly approach and modern Material 3 Expressive design.

KotlinAndroidWeather App

Source repository

Open the original repository on GitHub.

View on GitHub
OS
OSRepos

Analysis and discovery of open source repositories. Find interesting projects and follow their updates.

Monitor your website with YourWebsiteScore

OSRepos shares public repositories for knowledge and discovery only. Any installation, execution, configuration, or use of third-party repository code is at your own risk. Always review source code, dependencies, licenses, and security implications before running anything.

© 2025 OSRepos. Built with Nuxt 3 and lots of ❤️