"""ESTABLISHED: FUN_180173e00 copies response+0x28..+0xc0 to the stack and passes it
to the gate applier vt+0x988, so model+0x1fd2e = (response+0x50 == 1), and
model+0x1fd1c (TRADE_PILE_SIZE) = response+0xd0, model+0x1fd20 = response+0xd4.
HYPOTHESIS: the settings deserializer FUN_18013c6d0 has a case that writes +0x50,
+0xd0, +0xd4 and its atom id names the JSON key we must send.
CONTROL: +0xd0/+0xd4 must be written by a case whose atom is a known pile-size key.
"""
import traceback
try:
    for a, tag in [(0x18013c6d0, "SETTINGS DESERIALIZER"),
                   (0x180174630, "descriptor vt+0x20 (deser caller)"),
                   (0x180174580, "request builder")]:
        s = dec(a, 300)
        print("\n" + "="*78)
        print("### %#x  %s   len=%d" % (a, tag, len(s)))
        print("="*78)
        print(s)
except Exception:
    traceback.print_exc()
