"""DIMENSION 4, pass 14: rule out the four remaining candidate writers of a qword at +0x10 that are also "item-shaped" (pass 13 x pass 5 cross-filter): 0x18009dc80, 0x1801aae50, 0x180156ac0, 0x180157050. If none of them is writing an ITEM's +0x10, then the duplicate field is written only by the four response deserializers and copied by the item assignment operator FUN_1800515e0. CONTROL: FUN_1800515e0 is printed too; it must show the +0x10 copy alongside the other item members (+0x18 resourceId, +0x50, +0x5c, +0x8c, +0x90), which is what makes it the item assignment operator rather than a coincidence. """ import traceback OUT = "/tmp/claude-1000/-home-alex-Documents-OpenFUT/8e521ca1-ca3e-4138-bb96-df1744dd1d30/scratchpad/store/dup14_out.txt" try: fh = open(OUT, "w") for a in (0x18009DC80, 0x1801AAE50, 0x180156AC0, 0x180157050): s = dec(a) fh.write("\n" + "#" * 70 + "\n# %#x len(src)=%d FULL\n" % (a, len(s)) + "#" * 70 + "\n") fh.write(s + "\n") s = dec(0x1800515E0) fh.write("\n" + "#" * 70 + "\n# CONTROL item assign 0x1800515e0 len(src)=%d FULL\n" % len(s) + "#" * 70 + "\n") fh.write(s + "\n") fh.close() print("WROTE", OUT) except Exception: traceback.print_exc()