import pymem

pm = pymem.Pymem(43084)
base = 0x7ff6afc20000
igs = pm.read_ulonglong(base + 0x4430108)
area = pm.read_ulonglong(igs + 0x290)
if not (0x10000 <= area <= 0x7fffffffffff):
    area = pm.read_ulonglong(igs + 0x2a0)

print(f"Inspecting AreaInstance {hex(area)} around 0x900..0x1200:")
for off in range(0x900, 0x1100, 8):
    p1 = pm.read_ulonglong(area + off)
    p2 = pm.read_ulonglong(area + off + 8)
    if 0x100000000 <= p1 < p2 <= 0x7fffffffffff and (p2 - p1) % 8 == 0:
        cnt = (p2 - p1) // 8
        if 1 <= cnt <= 50000:
            print(f"  Vector at +0x{off:x}: {cnt} items (size {p2-p1} bytes)")
    elif 0x100000000 <= p1 < p2 <= 0x7fffffffffff:
        sz = p2 - p1
        if 1000 <= sz <= 50000000:
            print(f"  Byte buffer at +0x{off:x}: size {sz} bytes (0x{p1:x}..0x{p2:x})")
