Python tool to find the loading addresses of Dart objects in libapp.so through their pool pointer offset.
ARM64, ARM libs
Host runtime support: Debian 11 amd64/x64 (full)
Python3
Download the wheel here: https://github.com/Kirlif/PPTool/releases
pip install --user pptool-2.0-py3-none-any.whlpptool [-h] [-v] [-c] [-d] [-s] [-j] libapp offset [offset ...]
python3 pptool_single.py [-h] [-v] [-c] [-d] [-s] [-j] libapp offset [offset ...]
libapp:
path to libapp.so
offset:
pool pointer offsets to be searched
sequence of hex strings
-c:
use default color
-d:
don't display assembly/disassembly
-s:
create a simple output
-j:
full output in JSON format
>>> from pptool import pptool
>>> ppt = pptool()
>>> ppt.set_libapp(libapp)
>>> ppt.set_offsets(*ppo_seq)
>>> res = ppt.result(tree_color=True, hide_ass_disass=False)
>>> print(res)
>>> spl = ppt.simple()
>>> print(spl)
>>> jsn = ppt.json()
...