"""Map the live category response object's vtable and status-bearing base class."""

VTABLE = 0x18022E5B0
print("=== live category response vtable ===")
print("vtable xrefs", xrefs_to(VTABLE)[:100])
for off in range(0, 0x100, 8):
    target = qword(VTABLE + off)
    print("slot +%#x -> %#x %s" % (off, target, fname(target)))
    if 0x180001000 <= target < 0x180200000 and off < 0x60:
        print(dec(target, 120)[:3000])

print("\n=== direct references to vtable entries/address ===")
for a in range(VTABLE - 0x20, VTABLE + 0x20, 8):
    print(hex(a), xrefs_to(a)[:40])
