- Loader: normalize APK/ELF and locate snapshot blobs/symbol VAs
- Adapter: run hash-specific Python adapter and load model JSON
- Disassembly: ARM64 lightweight decode and Dart ABI annotations
- IR/CFG: LLIR generation and basic-block graph recovery
- Decompiler: structured pseudo-Dart emission
- Quality/reporting: strict metrics and artifact generation
Auxiliary path:
- Symbol mapping: stripped vs unstripped ARM64 ELF direct-call target mapping
- Engine fingerprinting: ELF metadata and marker extraction for build/version hints
- Symbol ingestion: feed
map-symbolstarget summaries intodecompilefor pseudocode call naming - Call intent tagging: emit stdlib/runtime/native intent comments for recognized call targets
- Standard-name canonicalization: deterministically name Dart and Flutter framework calls from adapter class/library metadata
crates/flutterdec-loader: file input and snapshot extractioncrates/flutterdec-adapter: adapter install/run + model contractcrates/flutterdec-disasm-arm64: function-level ARM64 decodecrates/flutterdec-ir: LLIR + CFG buildcrates/flutterdec-decompiler: pseudocode and quality counterscrates/flutterdec-core: orchestration and artifact emissioncrates/flutterdec-cli: command interface