# -*- coding: utf-8 -*- import re import subprocess import zipfile from pathlib import Path APK = Path(__file__).resolve().parent.parent / "apks" / "seabank_ph_base.apk" DEXDUMP = Path(r"C:\Users\Administrator\AppData\Local\Android\Sdk\build-tools\37.0.0\dexdump.exe") target = "Lcom/shopee/shpssdkbank/SHPSSDK;" tmp = Path(__file__).resolve().parent.parent / "tmp" / "tmp11.dex" with zipfile.ZipFile(str(APK)) as zf: tmp.write_bytes(zf.read("classes11.dex")) out = subprocess.check_output([str(DEXDUMP), "-d", str(tmp)], universal_newlines=True, errors="replace") capture = False for line in out.splitlines(): if f"Class descriptor : '{target}'" in line: capture = True elif capture and line.startswith(" Class descriptor"): break if capture: print(line.encode("ascii", "replace").decode())