├── .gitignore ├── CLAUDE.md ├── LICENSE ├── README.md ├── README_zh_simp.md ├── ark ├── abcclass │ ├── abcclass.py │ ├── abcclass12.py │ ├── abcclass9.py │ ├── class_idx.py │ ├── class_tag.py │ ├── class_tagged_value.py │ └── foreign_class.py ├── abcfield │ ├── field.py │ ├── field12.py │ ├── field9.py │ ├── field_tag.py │ └── field_tagged_value.py ├── abcfile │ ├── abcfile.py │ ├── abcfile12.py │ └── abcfile9.py ├── abcheader │ ├── header.py │ ├── header12.py │ └── header9.py ├── abcliteralarray │ ├── indirect_export.py │ ├── literalarray_idx.py │ ├── local_export.py │ ├── module_literalarray.py │ ├── namespace_import.py │ ├── regular_import.py │ └── star_export.py ├── abcmethod │ └── method_tag.py ├── abcreader.py ├── abcstring.py ├── abcstruct.py ├── insn.py └── tagged_value.py ├── common ├── binary_reader.py ├── lexer.py └── simple_lexer.py ├── decompile ├── class_pass.py ├── config.py ├── dec_pass.py ├── decompiler.py ├── ir │ ├── basicblock.py │ ├── builder.py │ ├── expr.py │ ├── insn_enum.py │ ├── insn_lifter.py │ ├── irclass.py │ ├── irclass_ctx.py │ ├── lexenv.py │ ├── method.py │ ├── method_ctx.py │ ├── module.py │ ├── module_ctx.py │ └── nac.py ├── isa.json ├── method_pass.py ├── module_pass.py ├── pa2rawir.py └── passes │ ├── abc2ir.py │ ├── buildcfg.py │ ├── control_flow_structuring.py │ ├── control_flow_structuring_old.py │ ├── copy_propagation.py │ ├── dead_code.py │ ├── defuse.py │ ├── live_variable.py │ ├── method_call_prettify.py │ ├── peephole_opt.py │ ├── print_pcode.py │ ├── prop_access_prettify.py │ ├── rawir2llir.py │ ├── reaching_def.py │ ├── resolve_lexvar.py │ ├── reverse_postorder.py │ ├── var_alloc.py │ └── viewcfg.py ├── docs ├── how_it_works.md ├── how_it_works_zh_simp.md └── imgs │ ├── cfg_cropImage.png │ ├── decompiler_workflow.png │ ├── decompiler_workflow_zh_simp.png │ ├── hlir_example.png │ ├── if-else-then.png │ ├── llir_example.png │ ├── mlir_example.png │ ├── pseudocode_example.png │ ├── raw_ir_example.png │ └── src_cropImage.png ├── examples ├── modules.12.abc └── modules.12.abc.txt ├── input_file.py ├── main.py ├── pandasm ├── field.py ├── file.py ├── insn.py ├── method.py ├── pa_class.py └── reader.py └── requirements.txt /.gitignore: -------------------------------------------------------------------------------- 1 | .idea 2 | *.pyc 3 | cfg -------------------------------------------------------------------------------- /CLAUDE.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hx1997/dayu/HEAD/CLAUDE.md -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hx1997/dayu/HEAD/LICENSE -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hx1997/dayu/HEAD/README.md -------------------------------------------------------------------------------- /README_zh_simp.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hx1997/dayu/HEAD/README_zh_simp.md -------------------------------------------------------------------------------- /ark/abcclass/abcclass.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hx1997/dayu/HEAD/ark/abcclass/abcclass.py -------------------------------------------------------------------------------- /ark/abcclass/abcclass12.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hx1997/dayu/HEAD/ark/abcclass/abcclass12.py -------------------------------------------------------------------------------- /ark/abcclass/abcclass9.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hx1997/dayu/HEAD/ark/abcclass/abcclass9.py -------------------------------------------------------------------------------- /ark/abcclass/class_idx.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hx1997/dayu/HEAD/ark/abcclass/class_idx.py -------------------------------------------------------------------------------- /ark/abcclass/class_tag.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hx1997/dayu/HEAD/ark/abcclass/class_tag.py -------------------------------------------------------------------------------- /ark/abcclass/class_tagged_value.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hx1997/dayu/HEAD/ark/abcclass/class_tagged_value.py -------------------------------------------------------------------------------- /ark/abcclass/foreign_class.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hx1997/dayu/HEAD/ark/abcclass/foreign_class.py -------------------------------------------------------------------------------- /ark/abcfield/field.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hx1997/dayu/HEAD/ark/abcfield/field.py -------------------------------------------------------------------------------- /ark/abcfield/field12.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hx1997/dayu/HEAD/ark/abcfield/field12.py -------------------------------------------------------------------------------- /ark/abcfield/field9.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hx1997/dayu/HEAD/ark/abcfield/field9.py -------------------------------------------------------------------------------- /ark/abcfield/field_tag.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hx1997/dayu/HEAD/ark/abcfield/field_tag.py -------------------------------------------------------------------------------- /ark/abcfield/field_tagged_value.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hx1997/dayu/HEAD/ark/abcfield/field_tagged_value.py -------------------------------------------------------------------------------- /ark/abcfile/abcfile.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hx1997/dayu/HEAD/ark/abcfile/abcfile.py -------------------------------------------------------------------------------- /ark/abcfile/abcfile12.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hx1997/dayu/HEAD/ark/abcfile/abcfile12.py -------------------------------------------------------------------------------- /ark/abcfile/abcfile9.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hx1997/dayu/HEAD/ark/abcfile/abcfile9.py -------------------------------------------------------------------------------- /ark/abcheader/header.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hx1997/dayu/HEAD/ark/abcheader/header.py -------------------------------------------------------------------------------- /ark/abcheader/header12.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hx1997/dayu/HEAD/ark/abcheader/header12.py -------------------------------------------------------------------------------- /ark/abcheader/header9.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hx1997/dayu/HEAD/ark/abcheader/header9.py -------------------------------------------------------------------------------- /ark/abcliteralarray/indirect_export.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hx1997/dayu/HEAD/ark/abcliteralarray/indirect_export.py -------------------------------------------------------------------------------- /ark/abcliteralarray/literalarray_idx.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hx1997/dayu/HEAD/ark/abcliteralarray/literalarray_idx.py -------------------------------------------------------------------------------- /ark/abcliteralarray/local_export.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hx1997/dayu/HEAD/ark/abcliteralarray/local_export.py -------------------------------------------------------------------------------- /ark/abcliteralarray/module_literalarray.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hx1997/dayu/HEAD/ark/abcliteralarray/module_literalarray.py -------------------------------------------------------------------------------- /ark/abcliteralarray/namespace_import.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hx1997/dayu/HEAD/ark/abcliteralarray/namespace_import.py -------------------------------------------------------------------------------- /ark/abcliteralarray/regular_import.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hx1997/dayu/HEAD/ark/abcliteralarray/regular_import.py -------------------------------------------------------------------------------- /ark/abcliteralarray/star_export.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hx1997/dayu/HEAD/ark/abcliteralarray/star_export.py -------------------------------------------------------------------------------- /ark/abcmethod/method_tag.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hx1997/dayu/HEAD/ark/abcmethod/method_tag.py -------------------------------------------------------------------------------- /ark/abcreader.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hx1997/dayu/HEAD/ark/abcreader.py -------------------------------------------------------------------------------- /ark/abcstring.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hx1997/dayu/HEAD/ark/abcstring.py -------------------------------------------------------------------------------- /ark/abcstruct.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hx1997/dayu/HEAD/ark/abcstruct.py -------------------------------------------------------------------------------- /ark/insn.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ark/tagged_value.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hx1997/dayu/HEAD/ark/tagged_value.py -------------------------------------------------------------------------------- /common/binary_reader.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hx1997/dayu/HEAD/common/binary_reader.py -------------------------------------------------------------------------------- /common/lexer.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hx1997/dayu/HEAD/common/lexer.py -------------------------------------------------------------------------------- /common/simple_lexer.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hx1997/dayu/HEAD/common/simple_lexer.py -------------------------------------------------------------------------------- /decompile/class_pass.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hx1997/dayu/HEAD/decompile/class_pass.py -------------------------------------------------------------------------------- /decompile/config.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hx1997/dayu/HEAD/decompile/config.py -------------------------------------------------------------------------------- /decompile/dec_pass.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hx1997/dayu/HEAD/decompile/dec_pass.py -------------------------------------------------------------------------------- /decompile/decompiler.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hx1997/dayu/HEAD/decompile/decompiler.py -------------------------------------------------------------------------------- /decompile/ir/basicblock.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hx1997/dayu/HEAD/decompile/ir/basicblock.py -------------------------------------------------------------------------------- /decompile/ir/builder.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hx1997/dayu/HEAD/decompile/ir/builder.py -------------------------------------------------------------------------------- /decompile/ir/expr.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hx1997/dayu/HEAD/decompile/ir/expr.py -------------------------------------------------------------------------------- /decompile/ir/insn_enum.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hx1997/dayu/HEAD/decompile/ir/insn_enum.py -------------------------------------------------------------------------------- /decompile/ir/insn_lifter.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hx1997/dayu/HEAD/decompile/ir/insn_lifter.py -------------------------------------------------------------------------------- /decompile/ir/irclass.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hx1997/dayu/HEAD/decompile/ir/irclass.py -------------------------------------------------------------------------------- /decompile/ir/irclass_ctx.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hx1997/dayu/HEAD/decompile/ir/irclass_ctx.py -------------------------------------------------------------------------------- /decompile/ir/lexenv.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hx1997/dayu/HEAD/decompile/ir/lexenv.py -------------------------------------------------------------------------------- /decompile/ir/method.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hx1997/dayu/HEAD/decompile/ir/method.py -------------------------------------------------------------------------------- /decompile/ir/method_ctx.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hx1997/dayu/HEAD/decompile/ir/method_ctx.py -------------------------------------------------------------------------------- /decompile/ir/module.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hx1997/dayu/HEAD/decompile/ir/module.py -------------------------------------------------------------------------------- /decompile/ir/module_ctx.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hx1997/dayu/HEAD/decompile/ir/module_ctx.py -------------------------------------------------------------------------------- /decompile/ir/nac.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hx1997/dayu/HEAD/decompile/ir/nac.py -------------------------------------------------------------------------------- /decompile/isa.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hx1997/dayu/HEAD/decompile/isa.json -------------------------------------------------------------------------------- /decompile/method_pass.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hx1997/dayu/HEAD/decompile/method_pass.py -------------------------------------------------------------------------------- /decompile/module_pass.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hx1997/dayu/HEAD/decompile/module_pass.py -------------------------------------------------------------------------------- /decompile/pa2rawir.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hx1997/dayu/HEAD/decompile/pa2rawir.py -------------------------------------------------------------------------------- /decompile/passes/abc2ir.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /decompile/passes/buildcfg.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hx1997/dayu/HEAD/decompile/passes/buildcfg.py -------------------------------------------------------------------------------- /decompile/passes/control_flow_structuring.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hx1997/dayu/HEAD/decompile/passes/control_flow_structuring.py -------------------------------------------------------------------------------- /decompile/passes/control_flow_structuring_old.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hx1997/dayu/HEAD/decompile/passes/control_flow_structuring_old.py -------------------------------------------------------------------------------- /decompile/passes/copy_propagation.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hx1997/dayu/HEAD/decompile/passes/copy_propagation.py -------------------------------------------------------------------------------- /decompile/passes/dead_code.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hx1997/dayu/HEAD/decompile/passes/dead_code.py -------------------------------------------------------------------------------- /decompile/passes/defuse.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hx1997/dayu/HEAD/decompile/passes/defuse.py -------------------------------------------------------------------------------- /decompile/passes/live_variable.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hx1997/dayu/HEAD/decompile/passes/live_variable.py -------------------------------------------------------------------------------- /decompile/passes/method_call_prettify.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hx1997/dayu/HEAD/decompile/passes/method_call_prettify.py -------------------------------------------------------------------------------- /decompile/passes/peephole_opt.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hx1997/dayu/HEAD/decompile/passes/peephole_opt.py -------------------------------------------------------------------------------- /decompile/passes/print_pcode.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hx1997/dayu/HEAD/decompile/passes/print_pcode.py -------------------------------------------------------------------------------- /decompile/passes/prop_access_prettify.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hx1997/dayu/HEAD/decompile/passes/prop_access_prettify.py -------------------------------------------------------------------------------- /decompile/passes/rawir2llir.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hx1997/dayu/HEAD/decompile/passes/rawir2llir.py -------------------------------------------------------------------------------- /decompile/passes/reaching_def.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hx1997/dayu/HEAD/decompile/passes/reaching_def.py -------------------------------------------------------------------------------- /decompile/passes/resolve_lexvar.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hx1997/dayu/HEAD/decompile/passes/resolve_lexvar.py -------------------------------------------------------------------------------- /decompile/passes/reverse_postorder.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hx1997/dayu/HEAD/decompile/passes/reverse_postorder.py -------------------------------------------------------------------------------- /decompile/passes/var_alloc.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hx1997/dayu/HEAD/decompile/passes/var_alloc.py -------------------------------------------------------------------------------- /decompile/passes/viewcfg.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hx1997/dayu/HEAD/decompile/passes/viewcfg.py -------------------------------------------------------------------------------- /docs/how_it_works.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hx1997/dayu/HEAD/docs/how_it_works.md -------------------------------------------------------------------------------- /docs/how_it_works_zh_simp.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hx1997/dayu/HEAD/docs/how_it_works_zh_simp.md -------------------------------------------------------------------------------- /docs/imgs/cfg_cropImage.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hx1997/dayu/HEAD/docs/imgs/cfg_cropImage.png -------------------------------------------------------------------------------- /docs/imgs/decompiler_workflow.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hx1997/dayu/HEAD/docs/imgs/decompiler_workflow.png -------------------------------------------------------------------------------- /docs/imgs/decompiler_workflow_zh_simp.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hx1997/dayu/HEAD/docs/imgs/decompiler_workflow_zh_simp.png -------------------------------------------------------------------------------- /docs/imgs/hlir_example.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hx1997/dayu/HEAD/docs/imgs/hlir_example.png -------------------------------------------------------------------------------- /docs/imgs/if-else-then.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hx1997/dayu/HEAD/docs/imgs/if-else-then.png -------------------------------------------------------------------------------- /docs/imgs/llir_example.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hx1997/dayu/HEAD/docs/imgs/llir_example.png -------------------------------------------------------------------------------- /docs/imgs/mlir_example.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hx1997/dayu/HEAD/docs/imgs/mlir_example.png -------------------------------------------------------------------------------- /docs/imgs/pseudocode_example.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hx1997/dayu/HEAD/docs/imgs/pseudocode_example.png -------------------------------------------------------------------------------- /docs/imgs/raw_ir_example.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hx1997/dayu/HEAD/docs/imgs/raw_ir_example.png -------------------------------------------------------------------------------- /docs/imgs/src_cropImage.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hx1997/dayu/HEAD/docs/imgs/src_cropImage.png -------------------------------------------------------------------------------- /examples/modules.12.abc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hx1997/dayu/HEAD/examples/modules.12.abc -------------------------------------------------------------------------------- /examples/modules.12.abc.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hx1997/dayu/HEAD/examples/modules.12.abc.txt -------------------------------------------------------------------------------- /input_file.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hx1997/dayu/HEAD/input_file.py -------------------------------------------------------------------------------- /main.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hx1997/dayu/HEAD/main.py -------------------------------------------------------------------------------- /pandasm/field.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hx1997/dayu/HEAD/pandasm/field.py -------------------------------------------------------------------------------- /pandasm/file.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hx1997/dayu/HEAD/pandasm/file.py -------------------------------------------------------------------------------- /pandasm/insn.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hx1997/dayu/HEAD/pandasm/insn.py -------------------------------------------------------------------------------- /pandasm/method.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hx1997/dayu/HEAD/pandasm/method.py -------------------------------------------------------------------------------- /pandasm/pa_class.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hx1997/dayu/HEAD/pandasm/pa_class.py -------------------------------------------------------------------------------- /pandasm/reader.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hx1997/dayu/HEAD/pandasm/reader.py -------------------------------------------------------------------------------- /requirements.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hx1997/dayu/HEAD/requirements.txt --------------------------------------------------------------------------------