# abc-decompiler

> Decompiler for HarmonyOS Ark bytecode (.abc), the format HarmonyOS app packages carry in modules.abc, built by adapting the jadx decompiler and reading files through a patched copy of the abcde library. Because much of Ark bytecode is semantically close to DEX, it reuses jadx's GUI, IR and passes: an .abc file dropped into the jadx-based window is shown as decompiled code. The README reports that all 227 usable instructions of the 282 Ark opcodes are implemented, most special instructions as pseudo-functions.

- Type: Tool
- Targets: App
- Category: Android tools
- Relationship: Foundation tool
- Sources reviewed: 2026-10-19
- Added to the catalog: 2026-10-27
- Original resource: <https://github.com/ohos-decompiler/abc-decompiler>
- Primary source: <https://github.com/ohos-decompiler/abc-decompiler/blob/427c4cd9f80496236a4a3548d29a6b8aaf74b8e0/README.md>
- Catalog page: <https://awesomerea.org/resources/abc-decompiler/>
- Record JSON: <https://awesomerea.org/resources/abc-decompiler/record.json>
- Chinese version: [简体中文](https://awesomerea.org/zh/resources/abc-decompiler/index.md)

## Requirements & limits

- The README describes the project as still in development: decompilation passes for more readable output, a custom IR and data-flow analysis are listed as unfinished. The only release, h1, published 2024-12-20, ships a single jadx-dev-all.jar built from the reviewed master commit, and the repository has had no pushes since.
- Building needs JDK 17+; the patched abcde fork must first be published to the local Maven repository and its version substituted into the Gradle files before ./gradlew dist. Input is the modules.abc file from the user's own HarmonyOS HAP package.
- The repository is a modified jadx code base: jadx's DEX input, test samples and inherited CI files remain, and it has no GitHub Actions workflow of its own, so no tests of Ark bytecode output are reported.
- Apache-2.0, as inherited from jadx; the abcde fork is also Apache-2.0.

## Primary sources

1. <https://github.com/ohos-decompiler/abc-decompiler/blob/427c4cd9f80496236a4a3548d29a6b8aaf74b8e0/README.md>
2. <https://github.com/ohos-decompiler/abc-decompiler/blob/427c4cd9f80496236a4a3548d29a6b8aaf74b8e0/README.md#L16-L28>
3. <https://github.com/ohos-decompiler/abc-decompiler/blob/427c4cd9f80496236a4a3548d29a6b8aaf74b8e0/README.md#L38-L70>
4. <https://github.com/ohos-decompiler/abc-decompiler/blob/427c4cd9f80496236a4a3548d29a6b8aaf74b8e0/jadx-core/src/main/java/jadx/core/dex/instructions/InsnDecoder.java>
5. <https://github.com/ohos-decompiler/abc-decompiler/blob/427c4cd9f80496236a4a3548d29a6b8aaf74b8e0/jadx-core/build.gradle.kts>
6. <https://github.com/ohos-decompiler/abc-decompiler/blob/427c4cd9f80496236a4a3548d29a6b8aaf74b8e0/LICENSE>
7. <https://github.com/ohos-decompiler/abc-decompiler/releases/tag/h1>
8. <https://github.com/ohos-decompiler/abcde>
9. <https://github.com/ohos-decompiler/abc-decompiler/issues/6>

## More in Apps

- [slicer](https://awesomerea.org/resources/slicer/index.md) · Tool
- [APK Studio](https://awesomerea.org/resources/apk-studio/index.md) · Tool
- [APKiD](https://awesomerea.org/resources/apkid/index.md) · Tool
- [dex2jar](https://awesomerea.org/resources/dex2jar/index.md) · Tool
- [apk.sh](https://awesomerea.org/resources/apk-sh/index.md) · Tool
- [FIRERPA (lamda)](https://awesomerea.org/resources/firerpa-lamda/index.md) · Tool

## About this entry

The description was reviewed against primary sources.
Original editorial content: MIT. Linked projects, papers and assets retain their own rights and licenses.
