{
  "kind": "hwanse-hud-menu-vm-graph-frontier-review",
  "source": "tools/build_hud_menu_vm_graph_frontier_review.py",
  "status": "top-menu-vm-graph-grounded-opener-still-pending",
  "summary": {
    "opcode14DispatchVaHex": "0x00403890",
    "opcode14DispatchMatchesExpected": true,
    "postSelectedRootTableVaHex": "0x0047e670",
    "postSelectedRootFirstDwordHex": "0x0002c614",
    "postSelectedRootFirstDwordLowByteLooksOpcode14": true,
    "postSelectedRootFirstDwordIsVa": false,
    "postSelectedRootRejectedAsLinearOpcode14": true,
    "gateDirectRefCount": 1,
    "gateDirectRefsHex": [
      "0x0047e678"
    ],
    "wrapperDirectRefCount": 0,
    "topSequenceDirectRefCount": 1,
    "topSequenceDirectRefsHex": [
      "0x0047e6b0"
    ],
    "parentDirectRefCount": 0,
    "introTitleResourcePreview": [
      "middata.mlk",
      "compile.cns",
      "aaa.cns",
      "logo_00.cns",
      "title.cns",
      "map_k1.cns",
      "map_k2.cns",
      "btl_k1.cns",
      "btl_k2.cns",
      "zi_ikkak.cns"
    ],
    "normalFieldEscOpenerPromoted": false,
    "decision": "The VM graph still does not prove the normal-field ESC/X opener. 0x0047e624 creates supporting child objects, stores selectedRoot from the inline 0x004a2cb0 intro/title resource list, and calls selectedRoot.  The only top-menu sequence reference remains the wrapper's opcode 0x04 operand at 0x0047e6ac. The apparent 0x14 byte at 0x0047e670 is rejected as a linear command because its overlapped first dword is not a valid VA; the later 0x0047e688 pointer is a table entry/reference to the wrapper gate, not opener proof."
  },
  "watchedVa": {
    "parentContext": "0x0047e624",
    "selectedRootStore": "0x0047e664",
    "postSelectedRootTable": "0x0047e670",
    "gate": "0x0047e688",
    "wrapper": "0x0047e6a0",
    "topSequence": "0x004ddc6c",
    "introTitleResourceList": "0x004a2cb0"
  },
  "postSelectedRootTableRows": [
    {
      "index": 0,
      "entryVa": 4712048,
      "entryVaHex": "0x0047e670",
      "value": 181780,
      "valueHex": "0x0002c614",
      "isVa": false,
      "section": null
    },
    {
      "index": 1,
      "entryVa": 4712052,
      "entryVaHex": "0x0047e674",
      "value": 512,
      "valueHex": "0x00000200",
      "isVa": false,
      "section": null
    },
    {
      "index": 2,
      "entryVa": 4712056,
      "entryVaHex": "0x0047e678",
      "value": 4712072,
      "valueHex": "0x0047e688",
      "isVa": true,
      "section": ".data"
    },
    {
      "index": 3,
      "entryVa": 4712060,
      "entryVaHex": "0x0047e67c",
      "value": 1,
      "valueHex": "0x00000001",
      "isVa": false,
      "section": null
    },
    {
      "index": 4,
      "entryVa": 4712064,
      "entryVaHex": "0x0047e680",
      "value": 3,
      "valueHex": "0x00000003",
      "isVa": false,
      "section": null
    },
    {
      "index": 5,
      "entryVa": 4712068,
      "entryVaHex": "0x0047e684",
      "value": 4712044,
      "valueHex": "0x0047e66c",
      "isVa": true,
      "section": ".data"
    }
  ],
  "streamPreviews": {
    "parentContext": {
      "startVa": 4711972,
      "startVaHex": "0x0047e624",
      "commands": [
        {
          "vaHex": "0x0047e624",
          "opcodeHex": "0x40",
          "opcodeName": "bind/input-base",
          "length": 4,
          "summary": "",
          "targetVaHex": null,
          "payloadVaHex": null,
          "pointerOperands": []
        },
        {
          "vaHex": "0x0047e628",
          "opcodeHex": "0x60",
          "opcodeName": "runtime-index-queue-reset",
          "length": 4,
          "summary": "reset runtime descriptor index queue at 0x004576e8; handler advances +0x04",
          "targetVaHex": null,
          "payloadVaHex": null,
          "pointerOperands": []
        },
        {
          "vaHex": "0x0047e62c",
          "opcodeHex": "0x07",
          "opcodeName": "create-child-object",
          "length": 8,
          "summary": "create child object kind=0x00 script=0x0047e720; handler advances +0x08",
          "targetVaHex": null,
          "payloadVaHex": null,
          "pointerOperands": [
            {
              "offset": 4,
              "offsetHex": "+0x04",
              "value": 4712224,
              "valueHex": "0x0047e720",
              "section": ".data"
            }
          ]
        },
        {
          "vaHex": "0x0047e634",
          "opcodeHex": "0x28",
          "opcodeName": "runtime-object-slot",
          "length": 4,
          "summary": "store current child object slot=1 through 0x0059dd70[1]; handler advances +0x04",
          "targetVaHex": null,
          "payloadVaHex": null,
          "pointerOperands": []
        },
        {
          "vaHex": "0x0047e638",
          "opcodeHex": "0x07",
          "opcodeName": "create-child-object",
          "length": 8,
          "summary": "create child object kind=0x00 script=0x004ded88; handler advances +0x08",
          "targetVaHex": null,
          "payloadVaHex": null,
          "pointerOperands": [
            {
              "offset": 4,
              "offsetHex": "+0x04",
              "value": 5107080,
              "valueHex": "0x004ded88",
              "section": ".data"
            }
          ]
        },
        {
          "vaHex": "0x0047e640",
          "opcodeHex": "0x28",
          "opcodeName": "runtime-object-slot",
          "length": 4,
          "summary": "store current child object slot=6 through 0x0059dd70[6]; handler advances +0x04",
          "targetVaHex": null,
          "payloadVaHex": null,
          "pointerOperands": []
        },
        {
          "vaHex": "0x0047e644",
          "opcodeHex": "0x07",
          "opcodeName": "create-child-object",
          "length": 8,
          "summary": "create child object kind=0x00 script=0x004dedd4; handler advances +0x08",
          "targetVaHex": null,
          "payloadVaHex": null,
          "pointerOperands": [
            {
              "offset": 4,
              "offsetHex": "+0x04",
              "value": 5107156,
              "valueHex": "0x004dedd4",
              "section": ".data"
            }
          ]
        },
        {
          "vaHex": "0x0047e64c",
          "opcodeHex": "0x28",
          "opcodeName": "runtime-object-slot",
          "length": 4,
          "summary": "store current child object slot=10 through 0x0059dd70[10]; handler advances +0x04",
          "targetVaHex": null,
          "payloadVaHex": null,
          "pointerOperands": []
        },
        {
          "vaHex": "0x0047e650",
          "opcodeHex": "0x07",
          "opcodeName": "create-child-object",
          "length": 8,
          "summary": "create child object kind=0x00 script=0x0047e75c; handler advances +0x08",
          "targetVaHex": null,
          "payloadVaHex": null,
          "pointerOperands": [
            {
              "offset": 4,
              "offsetHex": "+0x04",
              "value": 4712284,
              "valueHex": "0x0047e75c",
              "section": ".data"
            }
          ]
        },
        {
          "vaHex": "0x0047e658",
          "opcodeHex": "0x28",
          "opcodeName": "runtime-object-slot",
          "length": 4,
          "summary": "store current child object slot=2 through 0x0059dd70[2]; handler advances +0x04",
          "targetVaHex": null,
          "payloadVaHex": null,
          "pointerOperands": []
        },
        {
          "vaHex": "0x0047e65c",
          "opcodeHex": "0x07",
          "opcodeName": "create-child-object",
          "length": 8,
          "summary": "create child object kind=0x00 script=0x0047e704; handler advances +0x08",
          "targetVaHex": null,
          "payloadVaHex": null,
          "pointerOperands": [
            {
              "offset": 4,
              "offsetHex": "+0x04",
              "value": 4712196,
              "valueHex": "0x0047e704",
              "section": ".data"
            }
          ]
        },
        {
          "vaHex": "0x0047e664",
          "opcodeHex": "0x81",
          "opcodeName": "selected-root-store",
          "length": 8,
          "summary": "store selected root from inline pointer table into 0x0059de30; slot=0x00 table=0x004a2cb0; handler advances +0x08",
          "targetVaHex": null,
          "payloadVaHex": null,
          "pointerOperands": [
            {
              "offset": 4,
              "offsetHex": "+0x04",
              "value": 4861104,
              "valueHex": "0x004a2cb0",
              "section": ".data"
            }
          ]
        },
        {
          "vaHex": "0x0047e66c",
          "opcodeHex": "0x82",
          "opcodeName": "selected-root-call",
          "length": 4,
          "summary": "call selected root if 0x0059de30 is set; handler first advances +0x04, pushes that continuation, then jumps to 0x0059de30",
          "targetVaHex": null,
          "payloadVaHex": null,
          "pointerOperands": []
        },
        {
          "vaHex": "0x0047e670",
          "opcodeHex": "0x14",
          "opcodeName": "unknown",
          "length": 4,
          "summary": "",
          "targetVaHex": null,
          "payloadVaHex": null,
          "pointerOperands": []
        },
        {
          "vaHex": "0x0047e674",
          "opcodeHex": "0x00",
          "opcodeName": "destroy/stop",
          "length": 4,
          "summary": "",
          "targetVaHex": null,
          "payloadVaHex": null,
          "pointerOperands": []
        }
      ],
      "objectEcWrites": [],
      "textPayloadRefs": [],
      "mapLoaderRefFound": false,
      "routeProofFound": false,
      "decodedCommandCount": 15
    },
    "gate": {
      "startVa": 4712072,
      "startVaHex": "0x0047e688",
      "commands": [
        {
          "vaHex": "0x0047e688",
          "opcodeHex": "0x6e",
          "opcodeName": "active-group-key-branch",
          "length": 8,
          "summary": "branch if active script group key equals (0x01,0x00) -> 0x0047e67c; else advances +0x08",
          "targetVaHex": "0x0047e67c",
          "payloadVaHex": null,
          "pointerOperands": [
            {
              "offset": 4,
              "offsetHex": "+0x04",
              "value": 4712060,
              "valueHex": "0x0047e67c",
              "section": ".data"
            }
          ]
        },
        {
          "vaHex": "0x0047e690",
          "opcodeHex": "0x6e",
          "opcodeName": "active-group-key-branch",
          "length": 8,
          "summary": "branch if active script group key equals (0x01,0x01) -> 0x0047e67c; else advances +0x08",
          "targetVaHex": "0x0047e67c",
          "payloadVaHex": null,
          "pointerOperands": [
            {
              "offset": 4,
              "offsetHex": "+0x04",
              "value": 4712060,
              "valueHex": "0x0047e67c",
              "section": ".data"
            }
          ]
        },
        {
          "vaHex": "0x0047e698",
          "opcodeHex": "0xe6",
          "opcodeName": "active-descriptor-count-branch",
          "length": 8,
          "summary": "branch on active descriptor count 0x004576e8; if count is zero -> 0x0047e67c, otherwise advances +0x08",
          "targetVaHex": "0x0047e67c",
          "payloadVaHex": null,
          "pointerOperands": [
            {
              "offset": 4,
              "offsetHex": "+0x04",
              "value": 4712060,
              "valueHex": "0x0047e67c",
              "section": ".data"
            }
          ]
        },
        {
          "vaHex": "0x0047e6a0",
          "opcodeHex": "0x4a",
          "opcodeName": "active-object-flag-mask",
          "length": 8,
          "summary": "active-object flag set; filter object+0x14 mask=0x0001; flags=0x80000000",
          "targetVaHex": null,
          "payloadVaHex": null,
          "pointerOperands": []
        },
        {
          "vaHex": "0x0047e6a8",
          "opcodeHex": "0x10",
          "opcodeName": "byte-store/expression",
          "length": 4,
          "summary": "",
          "targetVaHex": null,
          "payloadVaHex": null,
          "pointerOperands": []
        },
        {
          "vaHex": "0x0047e6ac",
          "opcodeHex": "0x04",
          "opcodeName": "call/push-continuation",
          "length": 8,
          "summary": "call/push-continuation -> 0x004ddc6c; pushes return address 0x0047e6b4 to object return stack object+0x44[object+0x5c], increments object+0x5c, then jumps to target",
          "targetVaHex": "0x004ddc6c",
          "payloadVaHex": null,
          "pointerOperands": [
            {
              "offset": 4,
              "offsetHex": "+0x04",
              "value": 5102700,
              "valueHex": "0x004ddc6c",
              "section": ".data"
            }
          ]
        },
        {
          "vaHex": "0x0047e6b4",
          "opcodeHex": "0x11",
          "opcodeName": "resource/sprite-command",
          "length": 12,
          "summary": "field arithmetic/write command; group=0xc0 field=+0x0002 literal=0 args=0x2f46,0x0001",
          "targetVaHex": null,
          "payloadVaHex": null,
          "pointerOperands": []
        },
        {
          "vaHex": "0x0047e6c0",
          "opcodeHex": "0x18",
          "opcodeName": "dword-store/expression",
          "length": 8,
          "summary": "",
          "targetVaHex": null,
          "payloadVaHex": null,
          "pointerOperands": []
        },
        {
          "vaHex": "0x0047e6c8",
          "opcodeHex": "0x10",
          "opcodeName": "byte-store/expression",
          "length": 4,
          "summary": "",
          "targetVaHex": null,
          "payloadVaHex": null,
          "pointerOperands": []
        },
        {
          "vaHex": "0x0047e6cc",
          "opcodeHex": "0x4a",
          "opcodeName": "active-object-flag-mask",
          "length": 8,
          "summary": "active-object flag clear; filter object+0x14 mask=0x0001; flags=0x80000000",
          "targetVaHex": null,
          "payloadVaHex": null,
          "pointerOperands": []
        },
        {
          "vaHex": "0x0047e6d4",
          "opcodeHex": "0x03",
          "opcodeName": "jump",
          "length": 8,
          "summary": "jump -> 0x0047e67c",
          "targetVaHex": "0x0047e67c",
          "payloadVaHex": null,
          "pointerOperands": []
        }
      ],
      "objectEcWrites": [],
      "textPayloadRefs": [],
      "mapLoaderRefFound": false,
      "routeProofFound": false,
      "decodedCommandCount": 11
    },
    "wrapper": {
      "startVa": 4712096,
      "startVaHex": "0x0047e6a0",
      "commands": [
        {
          "vaHex": "0x0047e6a0",
          "opcodeHex": "0x4a",
          "opcodeName": "active-object-flag-mask",
          "length": 8,
          "summary": "active-object flag set; filter object+0x14 mask=0x0001; flags=0x80000000",
          "targetVaHex": null,
          "payloadVaHex": null,
          "pointerOperands": []
        },
        {
          "vaHex": "0x0047e6a8",
          "opcodeHex": "0x10",
          "opcodeName": "byte-store/expression",
          "length": 4,
          "summary": "",
          "targetVaHex": null,
          "payloadVaHex": null,
          "pointerOperands": []
        },
        {
          "vaHex": "0x0047e6ac",
          "opcodeHex": "0x04",
          "opcodeName": "call/push-continuation",
          "length": 8,
          "summary": "call/push-continuation -> 0x004ddc6c; pushes return address 0x0047e6b4 to object return stack object+0x44[object+0x5c], increments object+0x5c, then jumps to target",
          "targetVaHex": "0x004ddc6c",
          "payloadVaHex": null,
          "pointerOperands": [
            {
              "offset": 4,
              "offsetHex": "+0x04",
              "value": 5102700,
              "valueHex": "0x004ddc6c",
              "section": ".data"
            }
          ]
        },
        {
          "vaHex": "0x0047e6b4",
          "opcodeHex": "0x11",
          "opcodeName": "resource/sprite-command",
          "length": 12,
          "summary": "field arithmetic/write command; group=0xc0 field=+0x0002 literal=0 args=0x2f46,0x0001",
          "targetVaHex": null,
          "payloadVaHex": null,
          "pointerOperands": []
        },
        {
          "vaHex": "0x0047e6c0",
          "opcodeHex": "0x18",
          "opcodeName": "dword-store/expression",
          "length": 8,
          "summary": "",
          "targetVaHex": null,
          "payloadVaHex": null,
          "pointerOperands": []
        },
        {
          "vaHex": "0x0047e6c8",
          "opcodeHex": "0x10",
          "opcodeName": "byte-store/expression",
          "length": 4,
          "summary": "",
          "targetVaHex": null,
          "payloadVaHex": null,
          "pointerOperands": []
        },
        {
          "vaHex": "0x0047e6cc",
          "opcodeHex": "0x4a",
          "opcodeName": "active-object-flag-mask",
          "length": 8,
          "summary": "active-object flag clear; filter object+0x14 mask=0x0001; flags=0x80000000",
          "targetVaHex": null,
          "payloadVaHex": null,
          "pointerOperands": []
        },
        {
          "vaHex": "0x0047e6d4",
          "opcodeHex": "0x03",
          "opcodeName": "jump",
          "length": 8,
          "summary": "jump -> 0x0047e67c",
          "targetVaHex": "0x0047e67c",
          "payloadVaHex": null,
          "pointerOperands": []
        }
      ],
      "objectEcWrites": [],
      "textPayloadRefs": [],
      "mapLoaderRefFound": false,
      "routeProofFound": false,
      "decodedCommandCount": 8
    },
    "topSequence": {
      "startVa": 5102700,
      "startVaHex": "0x004ddc6c",
      "commands": [
        {
          "vaHex": "0x004ddc6c",
          "opcodeHex": "0x40",
          "opcodeName": "bind/input-base",
          "length": 4,
          "summary": "",
          "targetVaHex": null,
          "payloadVaHex": null,
          "pointerOperands": []
        },
        {
          "vaHex": "0x004ddc70",
          "opcodeHex": "0x10",
          "opcodeName": "byte-store/expression",
          "length": 4,
          "summary": "",
          "targetVaHex": null,
          "payloadVaHex": null,
          "pointerOperands": []
        },
        {
          "vaHex": "0x004ddc74",
          "opcodeHex": "0x2f",
          "opcodeName": "prompt/text-command",
          "length": 8,
          "summary": "prompt/text command mode=0x02 payload=0x004e842e; handler advances +0x08; text payload: ^껷 뒆N 텇N",
          "targetVaHex": null,
          "payloadVaHex": "0x004e842e",
          "pointerOperands": [
            {
              "offset": 4,
              "offsetHex": "+0x04",
              "value": 5145646,
              "valueHex": "0x004e842e",
              "section": ".data",
              "textPreview": "^껷 뒆N 텇N\n뙿N\n껷\n뙿N\n껷\n뙿N\n무기\n방어구\n레벨\n0 체력\nH 기력\n` 경험\n공격력\n방어력"
            }
          ]
        },
        {
          "vaHex": "0x004ddc7c",
          "opcodeHex": "0x2f",
          "opcodeName": "prompt/text-command",
          "length": 8,
          "summary": "prompt/text command mode=0x02 payload=0x004e8120; handler advances +0x08; text payload: 갢 쟼N 픹N 긏 $긏 F긏",
          "targetVaHex": null,
          "payloadVaHex": "0x004e8120",
          "pointerOperands": [
            {
              "offset": 4,
              "offsetHex": "+0x04",
              "value": 5144864,
              "valueHex": "0x004e8120",
              "section": ".data",
              "textPreview": "갢 쟼N 픹N 긏 $긏 F긏\n갢 괤\nj괤\n기본기\n똼N\n개인공격기\n똼N\n전체공격기\n똼N\n특수기"
            }
          ]
        },
        {
          "vaHex": "0x004ddc84",
          "opcodeHex": "0x07",
          "opcodeName": "create-child-object",
          "length": 8,
          "summary": "create child object kind=0x00 script=0x004dee18; handler advances +0x08",
          "targetVaHex": null,
          "payloadVaHex": null,
          "pointerOperands": [
            {
              "offset": 4,
              "offsetHex": "+0x04",
              "value": 5107224,
              "valueHex": "0x004dee18",
              "section": ".data"
            }
          ]
        },
        {
          "vaHex": "0x004ddc8c",
          "opcodeHex": "0x28",
          "opcodeName": "runtime-object-slot",
          "length": 4,
          "summary": "store current child object slot=7 through 0x0059dd70[7]; handler advances +0x04",
          "targetVaHex": null,
          "payloadVaHex": null,
          "pointerOperands": []
        },
        {
          "vaHex": "0x004ddc90",
          "opcodeHex": "0x07",
          "opcodeName": "create-child-object",
          "length": 8,
          "summary": "create child object kind=0x00 script=0x004dee58; handler advances +0x08",
          "targetVaHex": null,
          "payloadVaHex": null,
          "pointerOperands": [
            {
              "offset": 4,
              "offsetHex": "+0x04",
              "value": 5107288,
              "valueHex": "0x004dee58",
              "section": ".data"
            }
          ]
        },
        {
          "vaHex": "0x004ddc98",
          "opcodeHex": "0x28",
          "opcodeName": "runtime-object-slot",
          "length": 4,
          "summary": "store current child object slot=8 through 0x0059dd70[8]; handler advances +0x04",
          "targetVaHex": null,
          "payloadVaHex": null,
          "pointerOperands": []
        },
        {
          "vaHex": "0x004ddc9c",
          "opcodeHex": "0x07",
          "opcodeName": "create-child-object",
          "length": 8,
          "summary": "create child object kind=0x00 script=0x004dee98; handler advances +0x08",
          "targetVaHex": null,
          "payloadVaHex": null,
          "pointerOperands": [
            {
              "offset": 4,
              "offsetHex": "+0x04",
              "value": 5107352,
              "valueHex": "0x004dee98",
              "section": ".data"
            }
          ]
        },
        {
          "vaHex": "0x004ddca4",
          "opcodeHex": "0x28",
          "opcodeName": "runtime-object-slot",
          "length": 4,
          "summary": "store current child object slot=9 through 0x0059dd70[9]; handler advances +0x04",
          "targetVaHex": null,
          "payloadVaHex": null,
          "pointerOperands": []
        },
        {
          "vaHex": "0x004ddca8",
          "opcodeHex": "0x07",
          "opcodeName": "create-child-object",
          "length": 8,
          "summary": "create child object kind=0x00 script=0x004deed8; handler advances +0x08",
          "targetVaHex": null,
          "payloadVaHex": null,
          "pointerOperands": [
            {
              "offset": 4,
              "offsetHex": "+0x04",
              "value": 5107416,
              "valueHex": "0x004deed8",
              "section": ".data"
            }
          ]
        },
        {
          "vaHex": "0x004ddcb0",
          "opcodeHex": "0x28",
          "opcodeName": "runtime-object-slot",
          "length": 4,
          "summary": "store current child object slot=11 through 0x0059dd70[11]; handler advances +0x04",
          "targetVaHex": null,
          "payloadVaHex": null,
          "pointerOperands": []
        },
        {
          "vaHex": "0x004ddcb4",
          "opcodeHex": "0x07",
          "opcodeName": "create-child-object",
          "length": 8,
          "summary": "create child object kind=0x00 script=0x004def0c; handler advances +0x08",
          "targetVaHex": null,
          "payloadVaHex": null,
          "pointerOperands": [
            {
              "offset": 4,
              "offsetHex": "+0x04",
              "value": 5107468,
              "valueHex": "0x004def0c",
              "section": ".data"
            }
          ]
        },
        {
          "vaHex": "0x004ddcbc",
          "opcodeHex": "0x28",
          "opcodeName": "runtime-object-slot",
          "length": 4,
          "summary": "store current child object slot=12 through 0x0059dd70[12]; handler advances +0x04",
          "targetVaHex": null,
          "payloadVaHex": null,
          "pointerOperands": []
        },
        {
          "vaHex": "0x004ddcc0",
          "opcodeHex": "0x2f",
          "opcodeName": "prompt/text-command",
          "length": 8,
          "summary": "prompt/text command mode=0x02 payload=0x004e8190; handler advances +0x08; text payload: 갢 쟼N 픹N 긏 $긏 F긏",
          "targetVaHex": null,
          "payloadVaHex": "0x004e8190",
          "pointerOperands": [
            {
              "offset": 4,
              "offsetHex": "+0x04",
              "value": 5144976,
              "valueHex": "0x004e8190",
              "section": ".data",
              "textPreview": "갢 쟼N 픹N 긏 $긏 F긏\n갢 괤\nj괤\n기본기\n똼N\n개인공격기\n똼N\n전체공격기\n똼N\n특수기\n도구\n|툵\n괤 괤 무기\n괤 방어구\n소지"
            }
          ]
        },
        {
          "vaHex": "0x004ddcc8",
          "opcodeHex": "0x12",
          "opcodeName": "state-compare-or-store",
          "length": 8,
          "summary": "dword field arithmetic/write command; group=0x80 field=+0x0000 literal=0",
          "targetVaHex": null,
          "payloadVaHex": null,
          "pointerOperands": []
        },
        {
          "vaHex": "0x004ddcd0",
          "opcodeHex": "0x8a",
          "opcodeName": "unknown",
          "length": 4,
          "summary": "",
          "targetVaHex": null,
          "payloadVaHex": null,
          "pointerOperands": []
        },
        {
          "vaHex": "0x004ddcd4",
          "opcodeHex": "0x8a",
          "opcodeName": "unknown",
          "length": 4,
          "summary": "",
          "targetVaHex": null,
          "payloadVaHex": null,
          "pointerOperands": []
        }
      ],
      "objectEcWrites": [],
      "textPayloadRefs": [
        {
          "offset": 4,
          "offsetHex": "+0x04",
          "value": 5145646,
          "valueHex": "0x004e842e",
          "section": ".data",
          "textPreview": "^껷 뒆N 텇N\n뙿N\n껷\n뙿N\n껷\n뙿N\n무기\n방어구\n레벨\n0 체력\nH 기력\n` 경험\n공격력\n방어력"
        },
        {
          "offset": 4,
          "offsetHex": "+0x04",
          "value": 5144864,
          "valueHex": "0x004e8120",
          "section": ".data",
          "textPreview": "갢 쟼N 픹N 긏 $긏 F긏\n갢 괤\nj괤\n기본기\n똼N\n개인공격기\n똼N\n전체공격기\n똼N\n특수기"
        },
        {
          "offset": 4,
          "offsetHex": "+0x04",
          "value": 5144976,
          "valueHex": "0x004e8190",
          "section": ".data",
          "textPreview": "갢 쟼N 픹N 긏 $긏 F긏\n갢 괤\nj괤\n기본기\n똼N\n개인공격기\n똼N\n전체공격기\n똼N\n특수기\n도구\n|툵\n괤 괤 무기\n괤 방어구\n소지"
        }
      ],
      "mapLoaderRefFound": false,
      "routeProofFound": false,
      "decodedCommandCount": 18
    }
  },
  "parentChildScripts": [
    {
      "sourceCommandVaHex": "0x0047e62c",
      "childScriptVaHex": "0x0047e720",
      "preview": {
        "startVa": 4712224,
        "startVaHex": "0x0047e720",
        "commands": [
          {
            "vaHex": "0x0047e720",
            "opcodeHex": "0x08",
            "opcodeName": "object-field-initializer",
            "length": 48,
            "summary": "object field initializer",
            "targetVaHex": null,
            "payloadVaHex": null,
            "pointerOperands": []
          },
          {
            "vaHex": "0x0047e750",
            "opcodeHex": "0x01",
            "opcodeName": "stop-tick",
            "length": 4,
            "summary": "",
            "targetVaHex": null,
            "payloadVaHex": null,
            "pointerOperands": []
          },
          {
            "vaHex": "0x0047e754",
            "opcodeHex": "0x03",
            "opcodeName": "jump",
            "length": 8,
            "summary": "jump -> 0x0047e750",
            "targetVaHex": "0x0047e750",
            "payloadVaHex": null,
            "pointerOperands": []
          }
        ],
        "objectEcWrites": [],
        "textPayloadRefs": [],
        "mapLoaderRefFound": false,
        "routeProofFound": false,
        "decodedCommandCount": 3
      }
    },
    {
      "sourceCommandVaHex": "0x0047e638",
      "childScriptVaHex": "0x004ded88",
      "preview": {
        "startVa": 5107080,
        "startVaHex": "0x004ded88",
        "commands": [
          {
            "vaHex": "0x004ded88",
            "opcodeHex": "0x12",
            "opcodeName": "state-compare-or-store",
            "length": 8,
            "summary": "dword field arithmetic/write command; group=0x87 field=+0x002c literal=128",
            "targetVaHex": null,
            "payloadVaHex": null,
            "pointerOperands": []
          },
          {
            "vaHex": "0x004ded90",
            "opcodeHex": "0x08",
            "opcodeName": "object-field-initializer",
            "length": 48,
            "summary": "object field initializer",
            "targetVaHex": null,
            "payloadVaHex": null,
            "pointerOperands": []
          },
          {
            "vaHex": "0x004dedc0",
            "opcodeHex": "0x2f",
            "opcodeName": "prompt/text-command",
            "length": 8,
            "summary": "prompt/text command mode=0x02 payload=0x004e7fec; handler advances +0x08; text payload: 퍷",
            "targetVaHex": null,
            "payloadVaHex": "0x004e7fec",
            "pointerOperands": [
              {
                "offset": 4,
                "offsetHex": "+0x04",
                "value": 5144556,
                "valueHex": "0x004e7fec",
                "section": ".data",
                "textPreview": "퍷\nP 번 돈"
              }
            ]
          },
          {
            "vaHex": "0x004dedc8",
            "opcodeHex": "0x01",
            "opcodeName": "stop-tick",
            "length": 4,
            "summary": "",
            "targetVaHex": null,
            "payloadVaHex": null,
            "pointerOperands": []
          },
          {
            "vaHex": "0x004dedcc",
            "opcodeHex": "0x03",
            "opcodeName": "jump",
            "length": 8,
            "summary": "jump -> 0x004dedc8",
            "targetVaHex": "0x004dedc8",
            "payloadVaHex": null,
            "pointerOperands": []
          }
        ],
        "objectEcWrites": [],
        "textPayloadRefs": [
          {
            "offset": 4,
            "offsetHex": "+0x04",
            "value": 5144556,
            "valueHex": "0x004e7fec",
            "section": ".data",
            "textPreview": "퍷\nP 번 돈"
          }
        ],
        "mapLoaderRefFound": false,
        "routeProofFound": false,
        "decodedCommandCount": 5
      }
    },
    {
      "sourceCommandVaHex": "0x0047e644",
      "childScriptVaHex": "0x004dedd4",
      "preview": {
        "startVa": 5107156,
        "startVaHex": "0x004dedd4",
        "commands": [
          {
            "vaHex": "0x004dedd4",
            "opcodeHex": "0x08",
            "opcodeName": "object-field-initializer",
            "length": 40,
            "summary": "object field initializer",
            "targetVaHex": null,
            "payloadVaHex": null,
            "pointerOperands": []
          },
          {
            "vaHex": "0x004dedfc",
            "opcodeHex": "0x2f",
            "opcodeName": "prompt/text-command",
            "length": 8,
            "summary": "prompt/text command mode=0x02 payload=0x004e8068; handler advances +0x08; text payload: 퍷",
            "targetVaHex": null,
            "payloadVaHex": "0x004e8068",
            "pointerOperands": [
              {
                "offset": 4,
                "offsetHex": "+0x04",
                "value": 5144680,
                "valueHex": "0x004e8068",
                "section": ".data",
                "textPreview": "퍷\nP 번 돈\n갢 쟼N 픹N 긏 $긏 F긏\n갢 괤"
              }
            ]
          },
          {
            "vaHex": "0x004dee04",
            "opcodeHex": "0x12",
            "opcodeName": "state-compare-or-store",
            "length": 8,
            "summary": "dword field arithmetic/write command; group=0x80 field=+0x0000 literal=134217728",
            "targetVaHex": null,
            "payloadVaHex": null,
            "pointerOperands": []
          },
          {
            "vaHex": "0x004dee0c",
            "opcodeHex": "0x01",
            "opcodeName": "stop-tick",
            "length": 4,
            "summary": "",
            "targetVaHex": null,
            "payloadVaHex": null,
            "pointerOperands": []
          },
          {
            "vaHex": "0x004dee10",
            "opcodeHex": "0x03",
            "opcodeName": "jump",
            "length": 8,
            "summary": "jump -> 0x004dee0c",
            "targetVaHex": "0x004dee0c",
            "payloadVaHex": null,
            "pointerOperands": []
          }
        ],
        "objectEcWrites": [],
        "textPayloadRefs": [
          {
            "offset": 4,
            "offsetHex": "+0x04",
            "value": 5144680,
            "valueHex": "0x004e8068",
            "section": ".data",
            "textPreview": "퍷\nP 번 돈\n갢 쟼N 픹N 긏 $긏 F긏\n갢 괤"
          }
        ],
        "mapLoaderRefFound": false,
        "routeProofFound": false,
        "decodedCommandCount": 5
      }
    },
    {
      "sourceCommandVaHex": "0x0047e650",
      "childScriptVaHex": "0x0047e75c",
      "preview": {
        "startVa": 4712284,
        "startVaHex": "0x0047e75c",
        "commands": [
          {
            "vaHex": "0x0047e75c",
            "opcodeHex": "0x4d",
            "opcodeName": "unknown",
            "length": 4,
            "summary": "",
            "targetVaHex": null,
            "payloadVaHex": null,
            "pointerOperands": []
          },
          {
            "vaHex": "0x0047e760",
            "opcodeHex": "0x01",
            "opcodeName": "stop-tick",
            "length": 4,
            "summary": "",
            "targetVaHex": null,
            "payloadVaHex": null,
            "pointerOperands": []
          },
          {
            "vaHex": "0x0047e764",
            "opcodeHex": "0x03",
            "opcodeName": "jump",
            "length": 8,
            "summary": "jump -> 0x0047e75c",
            "targetVaHex": "0x0047e75c",
            "payloadVaHex": null,
            "pointerOperands": []
          }
        ],
        "objectEcWrites": [],
        "textPayloadRefs": [],
        "mapLoaderRefFound": false,
        "routeProofFound": false,
        "decodedCommandCount": 3
      }
    },
    {
      "sourceCommandVaHex": "0x0047e65c",
      "childScriptVaHex": "0x0047e704",
      "preview": {
        "startVa": 4712196,
        "startVaHex": "0x0047e704",
        "commands": [
          {
            "vaHex": "0x0047e704",
            "opcodeHex": "0x11",
            "opcodeName": "resource/sprite-command",
            "length": 12,
            "summary": "field arithmetic/write command; group=0x80 field=+0x0014 literal=1 args=0x0040,0x0000",
            "targetVaHex": null,
            "payloadVaHex": null,
            "pointerOperands": []
          },
          {
            "vaHex": "0x0047e710",
            "opcodeHex": "0x61",
            "opcodeName": "runtime-index-queue-process",
            "length": 4,
            "summary": "process/rebuild runtime descriptor index queue at 0x004576e8; handler advances +0x04",
            "targetVaHex": null,
            "payloadVaHex": null,
            "pointerOperands": []
          },
          {
            "vaHex": "0x0047e714",
            "opcodeHex": "0x01",
            "opcodeName": "stop-tick",
            "length": 4,
            "summary": "",
            "targetVaHex": null,
            "payloadVaHex": null,
            "pointerOperands": []
          },
          {
            "vaHex": "0x0047e718",
            "opcodeHex": "0x03",
            "opcodeName": "jump",
            "length": 8,
            "summary": "jump -> 0x0047e710",
            "targetVaHex": "0x0047e710",
            "payloadVaHex": null,
            "pointerOperands": []
          }
        ],
        "objectEcWrites": [],
        "textPayloadRefs": [],
        "mapLoaderRefFound": false,
        "routeProofFound": false,
        "decodedCommandCount": 4
      }
    }
  ],
  "negativeEvidence": [
    "0x0047e670 is not accepted as a linear opcode 0x14 command because dword[0x0047e670] is not a file-backed VA.",
    "0x0047e688 is referenced only as a table entry from 0x0047e678 in this graph.",
    "0x004ddc6c is only referenced by the wrapper call operand at 0x0047e6b0.",
    "0x004a2cb0 is the compile/aaa/logo/title/btl_k intro-title resource list, so the parent remains intro/title-context."
  ],
  "nextFrontier": [
    "Find a non-intro field state/root stream that reaches a menu-equivalent wrapper or descriptor attachment.",
    "If opcode 0x14 is used elsewhere as a branch command, accept it only when dword[stream] is a file-backed target VA.",
    "Trace producers of object+0x40 stream pointers for the normal field mode rather than promoting nearby pointer tables."
  ]
}