# -*- coding: utf-8 -*- 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") 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") in_shps = False for line in out.splitlines(): if "Class descriptor : 'Lcom/shopee/shpssdk" in line: in_shps = "SHPSSDK;" in line or "shpssdkbank" in line if in_shps and line.startswith(" Class descriptor") and "shpssdk" not in line: break if in_shps and ("NATIVE" in line or "name :" in line): print(line.strip())