Super fast Android decompiler designed for efficient code analysis.
Project details
ASC revolutionizes Android decompilation by eliminating heavy preprocessing and memory waste. It queries APK files directly, extracting and searching code relationships in milliseconds. This innovative approach leverages the R8 compiler's optimizations for rapid data access, making it an essential tool for agents and mobile researchers.
ASC is engineered as a high-performance Android decompiler front-end, fundamentally designed for mobile researchers and agents. The traditional process of decompiling large Android APKs often entails a long wait as conventional tools consume gigabytes of RAM and methodically build extensive indexes. This practice results in significant delays and inefficiencies, especially given that the underlying compiled artifacts are already structured.
Instead of relying on heavy preprocessing, ASC adopts a more innovative approach: it queries the compiled artifact directly as if it were a read-only database. This results in an agile, zero-overhead engine capable of extracting and searching code on demand, with response times in milliseconds. Here’s a closer look at the key features and optimizations:
A live demonstration illustrates ASC's capacity by utilizing a 352MB commercial APK, showcasing how quickly it can execute complex tasks while maintaining a streamlined operation, unencumbered by excessive preprocessing.
ASC provides a straightforward command-line interface for various decompilation tasks:
usage: droidasc [-h] {getclass,listclass,getmanifest,findrefs} ...
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 of usage include:
droidasc getclass app.apk Lcom/poc/Main; -o Main.javadroidasc listclass app.apk --prefix com.pocdroidasc getmanifest app.apk -o AndroidManifest.xmlASC aims to redefine the decompilation landscape, transforming it from a cumbersome indexing task into a lightning-fast, on-demand extraction engine that enhances the analysis of compiled Android code.
Comments
0Start the conversation
Share the first comment.