Decompiling Android apps without inflating the APK first
ASC treats a compiled APK as a read-only database, resolving methods and cross-references on demand without inflating the entire artifact or building global indexes.

What it does ASC is a Python front-end for Android decompilers aimed at mobile researchers and agentic workflows. Rather than unpacking and indexing an entire APK before you can search it, the tool leaves the artifact compressed and pulls out only the bytes it needs—methods, strings, fields, or cross-references—when you ask for them. The README claims it can locate and decompile a target class in under 200 ms while using roughly 141 MB of RAM on a 352 MB commercial APK.
The interesting bit It probes directly inside the Deflate bitstream to read metadata without inflating irrelevant blocks, then exploits R8 compiler optimizations—specifically deterministic constant relocation and instruction deduplication—to jump straight to code layouts. Methods are resolved in O(1) time, and a minimal, self-consistent DEX is reconstructed in memory only after the target has already been found.
Key highlights
- Queries code relationships directly inside the compressed APK, avoiding full inflate and heavy preprocessing.
- Uses dense Huffman lookup tables to extract metadata from the Deflate stream without touching surrounding data.
- Leverages R8 compiler behavior—constant relocation and instruction deduplication—for fast cross-DEX searches.
- Claims O(1) instruction locating and constant-time method resolution without large mapping tables.
- Reconstructs a minimal in-memory DEX on demand for instant decompilation of specific targets.
Caveats
- The project is framed as a Black Hat Arsenal research prototype, so long-term maintenance and feature breadth are unclear.
- The exposed surface appears narrow: the README only demonstrates class extraction and reference finding.
- The cited benchmark comes from a single 352 MB commercial APK; performance on non-R8-optimized or heavily obfuscated apps is unspecified.
Verdict Mobile reverse engineers and automation pipelines that need needle-in-haystack lookups in giant APKs should try this; anyone looking for a polished, full-featured GUI decompiler suite will likely find it too specialized.
Frequently asked
- What is MG1937/ASC?
- ASC treats a compiled APK as a read-only database, resolving methods and cross-references on demand without inflating the entire artifact or building global indexes.
- Is ASC open source?
- Yes — MG1937/ASC is open source, released under the Apache-2.0 license.
- What language is ASC written in?
- MG1937/ASC is primarily written in Python.
- How popular is ASC?
- MG1937/ASC has 2.6k stars on GitHub and is currently accelerating.
- Where can I find ASC?
- MG1937/ASC is on GitHub at https://github.com/MG1937/ASC.