Conversation
`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>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
No description provided.