{"scope":"event/object VM handlers cross-checked against executable Korean text refs and text routine calls","handlerCount":56,"matchedHandlerCount":4,"directTextRoutineHandlerCount":1,"directTextCallScanMethod":"objdump-direct-call","classificationCounts":{"battle-action":1,"item-menu":1,"text-routine-runtime-source":1,"text-table":1},"conclusion":"The event/object VM table has one handler with a direct call to a known Korean text routine candidate (opcode 0x0b -> 0x0041b579), but that handler has no local static Korean text/table reference. Other matched handlers reference item/action text tables. No story-dialogue handler has been proven from these static handler bodies.","rows":[{"handlerVa":4307788,"handlerVaHex":"0x0041bb4c","opcodes":["0x0b"],"entryVaHexes":["0x0047f204"],"endVa":4307865,"endVaHex":"0x0041bb99","byteCount":77,"classification":"text-routine-runtime-source","textRoutineCallCount":1,"textRoutineCalls":[{"callVa":4307801,"callVaHex":"0x0041bb59","targetVa":4306297,"targetVaHex":"0x0041b579","scanMethod":"objdump-direct-call"}],"directTextRefCount":0,"directTextRefs":[],"textTableRefCount":0,"textTableRefs":[],"directCallTargetCounts":{"0x0041b579":1},"codeBytes":"55 8b ec 53 56 57 8b 45 08 8b 40 28 50 e8 1b fa ff ff 83 c4 04 8b 45 08 8b 80 ce 00 00 00 8b 4d 08 89 81 d6 00 00 00 8b 45 08 8b 80 d2 00 00 00 8b 4d 08 89 81 da 00 00 00 8b 45 08 83 80 b0 00 00 00 04 e9 00 00 00 00 5f 5e 5b c9 c3","samples":"-"},{"handlerVa":4323693,"handlerVaHex":"0x0041f96d","opcodes":["0x31"],"entryVaHexes":["0x0047f29c"],"endVa":4324208,"endVaHex":"0x0041fb70","byteCount":515,"classification":"item-menu","textRoutineCallCount":0,"textRoutineCalls":[],"directTextRefCount":0,"directTextRefs":[],"textTableRefCount":5,"textTableRefs":[{"refVaHex":"0x0041f9ac","valueHex":"0x004d2488","clusterStartVaHex":"0x004d24ac","clusterEndVaHex":"0x004d24ec","entryCount":7,"classificationCounts":{"label":7},"sampleTexts":["정권","돌려차기","던지기","마시기","마시기","마시기","마시기"]},{"refVaHex":"0x0041f9b9","valueHex":"0x004d248c","clusterStartVaHex":"0x004d24ac","clusterEndVaHex":"0x004d24ec","entryCount":7,"classificationCounts":{"label":7},"sampleTexts":["정권","돌려차기","던지기","마시기","마시기","마시기","마시기"]},{"refVaHex":"0x0041f9c6","valueHex":"0x004d2490","clusterStartVaHex":"0x004d24ac","clusterEndVaHex":"0x004d24ec","entryCount":7,"classificationCounts":{"label":7},"sampleTexts":["정권","돌려차기","던지기","마시기","마시기","마시기","마시기"]},{"refVaHex":"0x0041f9d5","valueHex":"0x0048b97c","clusterStartVaHex":"0x0048b984","clusterEndVaHex":"0x0048b9ac","entryCount":6,"classificationCounts":{"label":6},"sampleTexts":["약초","해독초","리프레시 워터","마법의 물약","고급한방약","마수석"]},{"refVaHex":"0x0041f9e1","valueHex":"0x0048b1dc","clusterStartVaHex":"0x0048b1e4","clusterEndVaHex":"0x0048b1e4","entryCount":1,"classificationCounts":{"label":1},"sampleTexts":["맨주먹"]}],"directCallTargetCounts":{"0x004173db":1,"0x004175d3":1,"0x0041b369":2,"0x0042119b":1},"codeBytes":"55 8b ec 83 ec 18 53 56 57 c7 45 ec 00 00 00 00 e9 03 00 00 00 ff 45 ec 33 c0 a0 d8 e2 59 00 3b 45 ec 0f 86 ab 01 00 00 8b 45 ec 8b 0d a8 e2 59 00 33 d2 8a 14 81 89 55 e8 e9 44 00 00 00 a1 88 24 4d 00 89 45 fc e9 79 00 00 00 a1 8c 24 4d 00 89 45 fc e9 6c 00 00 00 a1 90 24 4d 00 89 45 fc e9 5f 00 00 00 c7 45 fc 7c b9 48 00 e9 53 00 00 00 c7 45 fc dc b1 48 00 e9 47 00 00 00 e9 42 00 00 00 83 7d e8 0d 0f 87 38 00 00 00 8b 45 e8 33 c9 8a 88 23 fa 41 00 ff 24 8d 0b fa 41 00 ab f9","samples":"정권, 돌려차기, 던지기, 마시기, 마시기, 마시기, 마시기, 정권"},{"handlerVa":4325188,"handlerVaHex":"0x0041ff44","opcodes":["0x36"],"entryVaHexes":["0x0047f2b0"],"endVa":4325416,"endVaHex":"0x00420028","byteCount":228,"classification":"battle-action","textRoutineCallCount":0,"textRoutineCalls":[],"directTextRefCount":0,"directTextRefs":[],"textTableRefCount":1,"textTableRefs":[{"refVaHex":"0x0041ff6c","valueHex":"0x004d2488","clusterStartVaHex":"0x004d24ac","clusterEndVaHex":"0x004d24ec","entryCount":7,"classificationCounts":{"label":7},"sampleTexts":["정권","돌려차기","던지기","마시기","마시기","마시기","마시기"]}],"directCallTargetCounts":{},"codeBytes":"55 8b ec 83 ec 04 53 56 57 8b 45 08 83 78 58 00 0f 84 2a 00 00 00 33 c0 a0 3e e3 59 00 33 c9 8a 88 e9 76 45 00 8b 04 8d 88 24 4d 00 8b 4d 08 8b 49 58 8b 04 c8 8a 40 10 88 45 fc e9 04 00 00 00 c6 45 fc 00 33 c0 8a 45 fc 3d ff 00 00 00 0f 85 04 00 00 00 c6 45 fc 00 8b 45 08 8b 80 b0 00 00 00 33 c9 8a 48 02 33 c0 8a 45 fc 3b c8 0f 8f 12 00 00 00 8b 45 08 8b 80 b0 00 00 00 33 c9 8a 48 02 49 88 4d fc 8b 45 08 8b 80 b0 00 00 00 33 c9 8a 48 02 8d 04 8d 00 00 00 00 8b 4d 08 03 81 b0","samples":"정권, 돌려차기, 던지기, 마시기, 마시기, 마시기, 마시기"},{"handlerVa":4325467,"handlerVaHex":"0x0042005b","opcodes":["0x38"],"entryVaHexes":["0x0047f2b8"],"endVa":4326582,"endVaHex":"0x004204b6","byteCount":1115,"classification":"text-table","textRoutineCallCount":0,"textRoutineCalls":[],"directTextRefCount":0,"directTextRefs":[],"textTableRefCount":10,"textTableRefs":[{"refVaHex":"0x00420117","valueHex":"0x0048b1dc","clusterStartVaHex":"0x0048b1e4","clusterEndVaHex":"0x0048b1e4","entryCount":1,"classificationCounts":{"label":1},"sampleTexts":["맨주먹"]},{"refVaHex":"0x0042012f","valueHex":"0x0048b1dc","clusterStartVaHex":"0x0048b1e4","clusterEndVaHex":"0x0048b1e4","entryCount":1,"classificationCounts":{"label":1},"sampleTexts":["맨주먹"]},{"refVaHex":"0x00420195","valueHex":"0x0048b1dc","clusterStartVaHex":"0x0048b1e4","clusterEndVaHex":"0x0048b1e4","entryCount":1,"classificationCounts":{"label":1},"sampleTexts":["맨주먹"]},{"refVaHex":"0x004201ad","valueHex":"0x0048b1dc","clusterStartVaHex":"0x0048b1e4","clusterEndVaHex":"0x0048b1e4","entryCount":1,"classificationCounts":{"label":1},"sampleTexts":["맨주먹"]},{"refVaHex":"0x00420213","valueHex":"0x0048b1dc","clusterStartVaHex":"0x0048b1e4","clusterEndVaHex":"0x0048b1e4","entryCount":1,"classificationCounts":{"label":1},"sampleTexts":["맨주먹"]},{"refVaHex":"0x0042022b","valueHex":"0x0048b1dc","clusterStartVaHex":"0x0048b1e4","clusterEndVaHex":"0x0048b1e4","entryCount":1,"classificationCounts":{"label":1},"sampleTexts":["맨주먹"]},{"refVaHex":"0x00420291","valueHex":"0x0048b1dc","clusterStartVaHex":"0x0048b1e4","clusterEndVaHex":"0x0048b1e4","entryCount":1,"classificationCounts":{"label":1},"sampleTexts":["맨주먹"]},{"refVaHex":"0x004202a9","valueHex":"0x0048b1dc","clusterStartVaHex":"0x0048b1e4","clusterEndVaHex":"0x0048b1e4","entryCount":1,"classificationCounts":{"label":1},"sampleTexts":["맨주먹"]},{"refVaHex":"0x0042030f","valueHex":"0x0048b1dc","clusterStartVaHex":"0x0048b1e4","clusterEndVaHex":"0x0048b1e4","entryCount":1,"classificationCounts":{"label":1},"sampleTexts":["맨주먹"]},{"refVaHex":"0x00420327","valueHex":"0x0048b1dc","clusterStartVaHex":"0x0048b1e4","clusterEndVaHex":"0x0048b1e4","entryCount":1,"classificationCounts":{"label":1},"sampleTexts":["맨주먹"]}],"directCallTargetCounts":{"0x004175d3":3,"0x00420388":5,"0x0042119b":3},"codeBytes":"55 8b ec 83 ec 18 53 56 57 33 c0 a0 3e e3 59 00 33 c9 8a 88 e9 76 45 00 8d 04 49 c1 e0 03 8d 04 c0 05 50 77 45 00 89 45 fc 33 c0 a0 44 e3 59 00 89 45 e8 e9 4b 00 00 00 33 c0 a0 4a e3 59 00 8b 4d fc 33 d2 8a 54 08 4a 89 55 ec 8b 45 fc 33 c9 8a 48 49 89 4d f0 e9 41 00 00 00 8b 45 fc 33 c9 8a 48 48 89 4d ec 33 c0 a0 4a e3 59 00 8b 4d fc 33 d2 8a 54 08 50 89 55 f0 e9 1e 00 00 00 e9 19 00 00 00 83 7d e8 00 0f 84 ab ff ff ff 83 7d e8 01 0f 84 c4 ff ff ff e9 00 00 00 00 8b 45 08 8b","samples":"맨주먹, 맨주먹, 맨주먹, 맨주먹, 맨주먹, 맨주먹, 맨주먹, 맨주먹"}]}