Skip to content

Add support to APK files using DroidASC - #13

Merged
buzzer-re merged 3 commits into
mainfrom
dev
Sep 20, 2026
Merged

buzzer-re merged 3 commits into
mainfrom
dev

Conversation

@buzzer-re

Copy link
Copy Markdown
Owner

No description provided.

buzzer-re and others added 3 commits September 19, 2026 22:55
`tocode app.apk` (also .apks/.xapk bundles and base.apk + sibling
split_*.apk sets) now exports the DEX side with ASC/androguard into
src/raw/<package>/<Class>.java plus Android metadata (manifest.json,
classes.json, functions.json, function-index.json, strings.json,
imports.json, exports.json with JNI symbols, reachable.json from manifest
components, package-graph.json, sections.json, triage.json), decoded
resources, and the raw APK entries.

Every shared object found in the set is extracted to lib/<abi>/ and, unless
--no-native, decompiled with the regular pipeline (IDA/r2/angr via
--backend) into native/<abi>/<lib>/ on a background thread. Each library
runs in its own process group so an OOM-killed or crashed backend only
fails that library (native-libs.json), the thread waits for free memory
before each library, and the nested export's log is mirrored live into
the main output with a per-library progress bar and a heartbeat.

Large documents are streamed row by row and decompile workers are
recycled in rounds to keep memory bounded on multi-dex apps. droidasc is
pinned as a core dependency.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
The AGENTS.md of each native/<abi>/<lib>/ export now opens with an Origin
section naming the APK package, the library, its ABI, source entry and
sha256, and how to pair it with the parent APK export's JNI metadata.
export_binary/build_export_agents accept an optional origin paragraph
for that. The mirrored native progress counter now only counts completed
function lines (the IDA path also logs a start line per function).

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
@buzzer-re
buzzer-re merged commit 97b9917 into main Sep 20, 2026
8 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant