{"version":1,"kind":"hwanse-battle-selected-target-latch-review","source":"tools/build_battle_selected_target_latch_review.py","status":"battle-selected-target-latch-resolved","summary":["0x0059e347 자체의 직접 producer는 0x0040fb1c/0x0040fb21 한 곳으로 닫힌다.","그 producer는 0x0059e33e current actor/object index를 0x0059e347에 복사한다.","이 복사는 target-scope bit 0x08이 없는 경로, 즉 nested target-selection UI가 필요 없는 기본 대상 경로에서만 수행된다.","target-scope bit 0x08이 있으면 0x0040fa6d는 e347을 쓰지 않고 stream +4 nested selection script로 들어간다.","사용자 선택 UI confirm/helper는 선택 entry id를 script object +0x58에 쓰고 entry class를 0x0059e33f에 남긴다. e347 직접 write는 없다.","실제 selection-mode apply에서 mode 1은 0x0059e348 + 3을 actor +0x61에 직접 쓰고, mode 2는 0x0059e347을 actor +0x61에 쓴다.","따라서 'selected target latch e347 직접 producer'는 확정 완료다.","0x0059e348은 이 전투 latch의 producer가 아니라 opcode24 mode1의 별도 source byte다. 기존 save/opcode24 보고서 기준으로 raw byte 없음, direct write 없음, save block 밖, 진단 런타임에서도 0 유지로 정리되어 있으므로 전투 내부 미확정이 아니라 공용 VM/selector 미확정으로 격리한다."],"globals":{"0x0059e347":{"role":"selected target latch / opcode24 mode2 source","directReadCount":4,"directWriteCount":1,"directWriter":"0x0040fb21","directProducer":"0x0040fb1c reads 0x0059e33e; 0x0040fb21 writes that byte to 0x0059e347"},"0x0059e348":{"role":"opcode24 mode1 source byte; consumed as target index base via +3","directReadCount":1,"directWriteCount":0,"battleTargetLatchRole":"not the e347 producer; separate opcode24 mode1 source","quarantine":"shared opcode24/save-selector reports track this as a non-battle-internal open item","evidenceReports":["out/save_selector_opcode24_mode1_runtime_context.json","out/save_selector_opcode24_mode1_source_writes.json","out/save_selector_opcode24_mode1_indirect_context.json"]}},"directRefs":[{"globalVaHex":"0x0059e33e","meaning":"current runtime actor/object index","instructionVaHex":"0x0040b6a1","refVaHex":"0x0040b6a2","access":"read","instruction":"mov al, ds:[addr]"},{"globalVaHex":"0x0059e33e","meaning":"current runtime actor/object index","instructionVaHex":"0x0040b77f","refVaHex":"0x0040b780","access":"read","instruction":"mov al, ds:[addr]"},{"globalVaHex":"0x0059e33e","meaning":"current runtime actor/object index","instructionVaHex":"0x0040b7a0","refVaHex":"0x0040b7a1","access":"read","instruction":"mov al, ds:[addr]"},{"globalVaHex":"0x0059e33e","meaning":"current runtime actor/object index","instructionVaHex":"0x0040b7de","refVaHex":"0x0040b7e0","access":"read","instruction":"mov cl, byte ptr ds:[addr]"},{"globalVaHex":"0x0059e33e","meaning":"current runtime actor/object index","instructionVaHex":"0x0040b800","refVaHex":"0x0040b802","access":"read","instruction":"mov cl, byte ptr ds:[addr]"},{"globalVaHex":"0x0059e33e","meaning":"current runtime actor/object index","instructionVaHex":"0x0040c53a","refVaHex":"0x0040c53b","access":"read","instruction":"mov al, ds:[addr]"},{"globalVaHex":"0x0059e33e","meaning":"current runtime actor/object index","instructionVaHex":"0x0040c598","refVaHex":"0x0040c599","access":"read","instruction":"mov al, ds:[addr]"},{"globalVaHex":"0x0059e33e","meaning":"current runtime actor/object index","instructionVaHex":"0x0040c6ea","refVaHex":"0x0040c6eb","access":"read","instruction":"mov al, ds:[addr]"},{"globalVaHex":"0x0059e33e","meaning":"current runtime actor/object index","instructionVaHex":"0x0040c777","refVaHex":"0x0040c778","access":"read","instruction":"mov al, ds:[addr]"},{"globalVaHex":"0x0059e33e","meaning":"current runtime actor/object index","instructionVaHex":"0x0040c78b","refVaHex":"0x0040c78c","access":"read","instruction":"mov al, ds:[addr]"},{"globalVaHex":"0x0059e33e","meaning":"current runtime actor/object index","instructionVaHex":"0x0040c79a","refVaHex":"0x0040c79a","access":"unknown","instruction":"unclassified direct address reference"},{"globalVaHex":"0x0059e33e","meaning":"current runtime actor/object index","instructionVaHex":"0x0040c7a0","refVaHex":"0x0040c7a1","access":"read","instruction":"mov al, ds:[addr]"},{"globalVaHex":"0x0059e33e","meaning":"current runtime actor/object index","instructionVaHex":"0x0040c7c6","refVaHex":"0x0040c7c7","access":"read","instruction":"mov al, ds:[addr]"},{"globalVaHex":"0x0059e33e","meaning":"current runtime actor/object index","instructionVaHex":"0x0040c7e3","refVaHex":"0x0040c7e4","access":"read","instruction":"mov al, ds:[addr]"},{"globalVaHex":"0x0059e33e","meaning":"current runtime actor/object index","instructionVaHex":"0x0040c81b","refVaHex":"0x0040c81c","access":"read","instruction":"mov al, ds:[addr]"},{"globalVaHex":"0x0059e33e","meaning":"current runtime actor/object index","instructionVaHex":"0x0040c838","refVaHex":"0x0040c839","access":"read","instruction":"mov al, ds:[addr]"},{"globalVaHex":"0x0059e33e","meaning":"current runtime actor/object index","instructionVaHex":"0x0040c873","refVaHex":"0x0040c875","access":"read","instruction":"mov cl, byte ptr ds:[addr]"},{"globalVaHex":"0x0059e33e","meaning":"current runtime actor/object index","instructionVaHex":"0x0040c883","refVaHex":"0x0040c883","access":"unknown","instruction":"unclassified direct address reference"},{"globalVaHex":"0x0059e33e","meaning":"current runtime actor/object index","instructionVaHex":"0x0040c89b","refVaHex":"0x0040c89d","access":"write","instruction":"mov byte ptr ds:[addr], imm8"},{"globalVaHex":"0x0059e33e","meaning":"current runtime actor/object index","instructionVaHex":"0x0040c8a9","refVaHex":"0x0040c8a9","access":"unknown","instruction":"unclassified direct address reference"},{"globalVaHex":"0x0059e33e","meaning":"current runtime actor/object index","instructionVaHex":"0x0040c8af","refVaHex":"0x0040c8b0","access":"read","instruction":"mov al, ds:[addr]"},{"globalVaHex":"0x0059e33e","meaning":"current runtime actor/object index","instructionVaHex":"0x0040c8c6","refVaHex":"0x0040c8c7","access":"read","instruction":"mov al, ds:[addr]"},{"globalVaHex":"0x0059e33e","meaning":"current runtime actor/object index","instructionVaHex":"0x0040c8e3","refVaHex":"0x0040c8e4","access":"read","instruction":"mov al, ds:[addr]"},{"globalVaHex":"0x0059e33e","meaning":"current runtime actor/object index","instructionVaHex":"0x0040f587","refVaHex":"0x0040f588","access":"read","instruction":"mov al, ds:[addr]"},{"globalVaHex":"0x0059e33e","meaning":"current runtime actor/object index","instructionVaHex":"0x0040f5b5","refVaHex":"0x0040f5b6","access":"read","instruction":"mov al, ds:[addr]"},{"globalVaHex":"0x0059e33e","meaning":"current runtime actor/object index","instructionVaHex":"0x0040f686","refVaHex":"0x0040f688","access":"read","instruction":"mov cl, byte ptr ds:[addr]"},{"globalVaHex":"0x0059e33e","meaning":"current runtime actor/object index","instructionVaHex":"0x0040f8a9","refVaHex":"0x0040f8aa","access":"read","instruction":"mov al, ds:[addr]"},{"globalVaHex":"0x0059e33e","meaning":"current runtime actor/object index","instructionVaHex":"0x0040f8f1","refVaHex":"0x0040f8f2","access":"read","instruction":"mov al, ds:[addr]"},{"globalVaHex":"0x0059e33e","meaning":"current runtime actor/object index","instructionVaHex":"0x0040faab","refVaHex":"0x0040faac","access":"read","instruction":"mov al, ds:[addr]"},{"globalVaHex":"0x0059e33e","meaning":"current runtime actor/object index","instructionVaHex":"0x0040fb1c","refVaHex":"0x0040fb1d","access":"read","instruction":"mov al, ds:[addr]"},{"globalVaHex":"0x0059e33e","meaning":"current runtime actor/object index","instructionVaHex":"0x0040fb4d","refVaHex":"0x0040fb4e","access":"read","instruction":"mov al, ds:[addr]"},{"globalVaHex":"0x0059e33e","meaning":"current runtime actor/object index","instructionVaHex":"0x0040fb87","refVaHex":"0x0040fb88","access":"read","instruction":"mov al, ds:[addr]"},{"globalVaHex":"0x0059e33e","meaning":"current runtime actor/object index","instructionVaHex":"0x0040fba3","refVaHex":"0x0040fba4","access":"read","instruction":"mov al, ds:[addr]"},{"globalVaHex":"0x0059e33e","meaning":"current runtime actor/object index","instructionVaHex":"0x0040fbb9","refVaHex":"0x0040fbba","access":"read","instruction":"mov al, ds:[addr]"},{"globalVaHex":"0x0059e33e","meaning":"current runtime actor/object index","instructionVaHex":"0x0040fbd0","refVaHex":"0x0040fbd1","access":"read","instruction":"mov al, ds:[addr]"},{"globalVaHex":"0x0059e33e","meaning":"current runtime actor/object index","instructionVaHex":"0x0040fbec","refVaHex":"0x0040fbed","access":"read","instruction":"mov al, ds:[addr]"},{"globalVaHex":"0x0059e33e","meaning":"current runtime actor/object index","instructionVaHex":"0x0040fc02","refVaHex":"0x0040fc03","access":"read","instruction":"mov al, ds:[addr]"},{"globalVaHex":"0x0059e33e","meaning":"current runtime actor/object index","instructionVaHex":"0x00410e68","refVaHex":"0x00410e69","access":"read","instruction":"mov al, ds:[addr]"},{"globalVaHex":"0x0059e33e","meaning":"current runtime actor/object index","instructionVaHex":"0x00410eb6","refVaHex":"0x00410eb7","access":"read","instruction":"mov al, ds:[addr]"},{"globalVaHex":"0x0059e33e","meaning":"current runtime actor/object index","instructionVaHex":"0x00410fec","refVaHex":"0x00410fed","access":"read","instruction":"mov al, ds:[addr]"},{"globalVaHex":"0x0059e33e","meaning":"current runtime actor/object index","instructionVaHex":"0x00411218","refVaHex":"0x00411219","access":"read","instruction":"mov al, ds:[addr]"},{"globalVaHex":"0x0059e33e","meaning":"current runtime actor/object index","instructionVaHex":"0x0041d96d","refVaHex":"0x0041d96e","access":"read","instruction":"mov al, ds:[addr]"},{"globalVaHex":"0x0059e33e","meaning":"current runtime actor/object index","instructionVaHex":"0x0041dc3e","refVaHex":"0x0041dc3f","access":"read","instruction":"mov al, ds:[addr]"},{"globalVaHex":"0x0059e33e","meaning":"current runtime actor/object index","instructionVaHex":"0x0041dc78","refVaHex":"0x0041dc79","access":"read","instruction":"mov al, ds:[addr]"},{"globalVaHex":"0x0059e33e","meaning":"current runtime actor/object index","instructionVaHex":"0x0041dd68","refVaHex":"0x0041dd69","access":"read","instruction":"mov al, ds:[addr]"},{"globalVaHex":"0x0059e33e","meaning":"current runtime actor/object index","instructionVaHex":"0x0041de27","refVaHex":"0x0041de28","access":"read","instruction":"mov al, ds:[addr]"},{"globalVaHex":"0x0059e33e","meaning":"current runtime actor/object index","instructionVaHex":"0x0041de4a","refVaHex":"0x0041de4b","access":"read","instruction":"mov al, ds:[addr]"},{"globalVaHex":"0x0059e33e","meaning":"current runtime actor/object index","instructionVaHex":"0x0041de5e","refVaHex":"0x0041de5f","access":"read","instruction":"mov al, ds:[addr]"},{"globalVaHex":"0x0059e33e","meaning":"current runtime actor/object index","instructionVaHex":"0x0041e342","refVaHex":"0x0041e343","access":"read","instruction":"mov al, ds:[addr]"},{"globalVaHex":"0x0059e33e","meaning":"current runtime actor/object index","instructionVaHex":"0x0041e5d7","refVaHex":"0x0041e5d8","access":"read","instruction":"mov al, ds:[addr]"},{"globalVaHex":"0x0059e33e","meaning":"current runtime actor/object index","instructionVaHex":"0x0041e747","refVaHex":"0x0041e748","access":"read","instruction":"mov al, ds:[addr]"},{"globalVaHex":"0x0059e33e","meaning":"current runtime actor/object index","instructionVaHex":"0x0041e7a4","refVaHex":"0x0041e7a5","access":"read","instruction":"mov al, ds:[addr]"},{"globalVaHex":"0x0059e33e","meaning":"current runtime actor/object index","instructionVaHex":"0x0041e87c","refVaHex":"0x0041e87d","access":"read","instruction":"mov al, ds:[addr]"},{"globalVaHex":"0x0059e33e","meaning":"current runtime actor/object index","instructionVaHex":"0x0041f886","refVaHex":"0x0041f887","access":"read","instruction":"mov al, ds:[addr]"},{"globalVaHex":"0x0059e33e","meaning":"current runtime actor/object index","instructionVaHex":"0x0041fca4","refVaHex":"0x0041fca5","access":"read","instruction":"mov al, ds:[addr]"},{"globalVaHex":"0x0059e33e","meaning":"current runtime actor/object index","instructionVaHex":"0x0041fcdf","refVaHex":"0x0041fce0","access":"read","instruction":"mov al, ds:[addr]"},{"globalVaHex":"0x0059e33e","meaning":"current runtime actor/object index","instructionVaHex":"0x0041fd1a","refVaHex":"0x0041fd1b","access":"read","instruction":"mov al, ds:[addr]"},{"globalVaHex":"0x0059e33e","meaning":"current runtime actor/object index","instructionVaHex":"0x0041fd90","refVaHex":"0x0041fd91","access":"read","instruction":"mov al, ds:[addr]"},{"globalVaHex":"0x0059e33e","meaning":"current runtime actor/object index","instructionVaHex":"0x0041ff5c","refVaHex":"0x0041ff5d","access":"read","instruction":"mov al, ds:[addr]"},{"globalVaHex":"0x0059e33e","meaning":"current runtime actor/object index","instructionVaHex":"0x00420066","refVaHex":"0x00420067","access":"read","instruction":"mov al, ds:[addr]"},{"globalVaHex":"0x0059e33e","meaning":"current runtime actor/object index","instructionVaHex":"0x004204dd","refVaHex":"0x004204de","access":"read","instruction":"mov al, ds:[addr]"},{"globalVaHex":"0x0059e33e","meaning":"current runtime actor/object index","instructionVaHex":"0x00420512","refVaHex":"0x00420513","access":"read","instruction":"mov al, ds:[addr]"},{"globalVaHex":"0x0059e33f","meaning":"selection result class","instructionVaHex":"0x0040fa88","refVaHex":"0x0040fa89","access":"read","instruction":"mov al, ds:[addr]"},{"globalVaHex":"0x0059e33f","meaning":"selection result class","instructionVaHex":"0x0041e738","refVaHex":"0x0041e739","access":"read","instruction":"mov al, ds:[addr]"},{"globalVaHex":"0x0059e33f","meaning":"selection result class","instructionVaHex":"0x0041fbe6","refVaHex":"0x0041fbe8","access":"write","instruction":"mov byte ptr ds:[addr], imm8"},{"globalVaHex":"0x0059e33f","meaning":"selection result class","instructionVaHex":"0x0041fc0b","refVaHex":"0x0041fc0d","access":"write","instruction":"mov byte ptr ds:[addr], imm8"},{"globalVaHex":"0x0059e33f","meaning":"selection result class","instructionVaHex":"0x0041fc30","refVaHex":"0x0041fc32","access":"write","instruction":"mov byte ptr ds:[addr], imm8"},{"globalVaHex":"0x0059e33f","meaning":"selection result class","instructionVaHex":"0x0041fcd1","refVaHex":"0x0041fcd3","access":"write","instruction":"mov byte ptr ds:[addr], imm8"},{"globalVaHex":"0x0059e33f","meaning":"selection result class","instructionVaHex":"0x0041fd0c","refVaHex":"0x0041fd0e","access":"write","instruction":"mov byte ptr ds:[addr], imm8"},{"globalVaHex":"0x0059e33f","meaning":"selection result class","instructionVaHex":"0x0041fd47","refVaHex":"0x0041fd49","access":"write","instruction":"mov byte ptr ds:[addr], imm8"},{"globalVaHex":"0x0059e33f","meaning":"selection result class","instructionVaHex":"0x0041fd69","refVaHex":"0x0041fd6b","access":"write","instruction":"mov byte ptr ds:[addr], imm8"},{"globalVaHex":"0x0059e33f","meaning":"selection result class","instructionVaHex":"0x0041fd82","refVaHex":"0x0041fd84","access":"write","instruction":"mov byte ptr ds:[addr], imm8"},{"globalVaHex":"0x0059e33f","meaning":"selection result class","instructionVaHex":"0x0041fdbd","refVaHex":"0x0041fdbf","access":"write","instruction":"mov byte ptr ds:[addr], imm8"},{"globalVaHex":"0x0059e347","meaning":"selected target latch / opcode24 mode2 source","instructionVaHex":"0x0040c688","refVaHex":"0x0040c689","access":"read","instruction":"mov al, ds:[addr]"},{"globalVaHex":"0x0059e347","meaning":"selected target latch / opcode24 mode2 source","instructionVaHex":"0x0040f657","refVaHex":"0x0040f658","access":"read","instruction":"mov al, ds:[addr]"},{"globalVaHex":"0x0059e347","meaning":"selected target latch / opcode24 mode2 source","instructionVaHex":"0x0040f664","refVaHex":"0x0040f665","access":"read","instruction":"mov al, ds:[addr]"},{"globalVaHex":"0x0059e347","meaning":"selected target latch / opcode24 mode2 source","instructionVaHex":"0x0040f6c6","refVaHex":"0x0040f6c7","access":"read","instruction":"mov al, ds:[addr]"},{"globalVaHex":"0x0059e347","meaning":"selected target latch / opcode24 mode2 source","instructionVaHex":"0x0040fb21","refVaHex":"0x0040fb22","access":"write","instruction":"mov ds:[addr], al"},{"globalVaHex":"0x0059e348","meaning":"opcode24 mode1 source byte","instructionVaHex":"0x0040c675","refVaHex":"0x0040c676","access":"read","instruction":"mov al, ds:[addr]"},{"globalVaHex":"0x0059e34a","meaning":"selection cursor index","instructionVaHex":"0x0040b7ba","refVaHex":"0x0040b7bb","access":"write","instruction":"mov ds:[addr], al"},{"globalVaHex":"0x0059e34a","meaning":"selection cursor index","instructionVaHex":"0x0040b7cb","refVaHex":"0x0040b7cd","access":"write","instruction":"mov byte ptr ds:[addr], imm8"},{"globalVaHex":"0x0059e34a","meaning":"selection cursor index","instructionVaHex":"0x0040b7f9","refVaHex":"0x0040b7fa","access":"read","instruction":"mov al, ds:[addr]"},{"globalVaHex":"0x0059e34a","meaning":"selection cursor index","instructionVaHex":"0x0040f703","refVaHex":"0x0040f705","access":"read","instruction":"mov cl, byte ptr ds:[addr]"},{"globalVaHex":"0x0059e34a","meaning":"selection cursor index","instructionVaHex":"0x0040f744","refVaHex":"0x0040f745","access":"read","instruction":"mov al, ds:[addr]"},{"globalVaHex":"0x0059e34a","meaning":"selection cursor index","instructionVaHex":"0x0040fcf9","refVaHex":"0x0040fcfa","access":"read","instruction":"mov al, ds:[addr]"},{"globalVaHex":"0x0059e34a","meaning":"selection cursor index","instructionVaHex":"0x0040fd1a","refVaHex":"0x0040fd1b","access":"read","instruction":"mov al, ds:[addr]"},{"globalVaHex":"0x0059e34a","meaning":"selection cursor index","instructionVaHex":"0x0040fd61","refVaHex":"0x0040fd62","access":"read","instruction":"mov al, ds:[addr]"},{"globalVaHex":"0x0059e34a","meaning":"selection cursor index","instructionVaHex":"0x0040fda1","refVaHex":"0x0040fda2","access":"read","instruction":"mov al, ds:[addr]"},{"globalVaHex":"0x0059e34a","meaning":"selection cursor index","instructionVaHex":"0x0040fdf6","refVaHex":"0x0040fdf7","access":"read","instruction":"mov al, ds:[addr]"},{"globalVaHex":"0x0059e34a","meaning":"selection cursor index","instructionVaHex":"0x0040fe15","refVaHex":"0x0040fe16","access":"read","instruction":"mov al, ds:[addr]"},{"globalVaHex":"0x0059e34a","meaning":"selection cursor index","instructionVaHex":"0x0040fedf","refVaHex":"0x0040fee0","access":"read","instruction":"mov al, ds:[addr]"},{"globalVaHex":"0x0059e34a","meaning":"selection cursor index","instructionVaHex":"0x0040fef9","refVaHex":"0x0040fefa","access":"read","instruction":"mov al, ds:[addr]"},{"globalVaHex":"0x0059e34a","meaning":"selection cursor index","instructionVaHex":"0x0040ff11","refVaHex":"0x0040ff12","access":"read","instruction":"mov al, ds:[addr]"},{"globalVaHex":"0x0059e34a","meaning":"selection cursor index","instructionVaHex":"0x0040ff34","refVaHex":"0x0040ff35","access":"read","instruction":"mov al, ds:[addr]"},{"globalVaHex":"0x0059e34a","meaning":"selection cursor index","instructionVaHex":"0x0040ff7b","refVaHex":"0x0040ff7c","access":"read","instruction":"mov al, ds:[addr]"},{"globalVaHex":"0x0059e34a","meaning":"selection cursor index","instructionVaHex":"0x0040ffa4","refVaHex":"0x0040ffa5","access":"read","instruction":"mov al, ds:[addr]"},{"globalVaHex":"0x0059e34a","meaning":"selection cursor index","instructionVaHex":"0x0041001b","refVaHex":"0x0041001d","access":"read","instruction":"mov cl, byte ptr ds:[addr]"},{"globalVaHex":"0x0059e34a","meaning":"selection cursor index","instructionVaHex":"0x0041e7ca","refVaHex":"0x0041e7cc","access":"read","instruction":"mov cl, byte ptr ds:[addr]"},{"globalVaHex":"0x0059e34a","meaning":"selection cursor index","instructionVaHex":"0x0041e7f0","refVaHex":"0x0041e7f2","access":"read","instruction":"mov cl, byte ptr ds:[addr]"},{"globalVaHex":"0x0059e34a","meaning":"selection cursor index","instructionVaHex":"0x0041e80f","refVaHex":"0x0041e810","access":"read","instruction":"mov al, ds:[addr]"},{"globalVaHex":"0x0059e34a","meaning":"selection cursor index","instructionVaHex":"0x0041e821","refVaHex":"0x0041e822","access":"read","instruction":"mov al, ds:[addr]"},{"globalVaHex":"0x0059e34a","meaning":"selection cursor index","instructionVaHex":"0x0041fb78","refVaHex":"0x0041fb79","access":"read","instruction":"mov al, ds:[addr]"},{"globalVaHex":"0x0059e34a","meaning":"selection cursor index","instructionVaHex":"0x0041fbb5","refVaHex":"0x0041fbb6","access":"read","instruction":"mov al, ds:[addr]"},{"globalVaHex":"0x0059e34a","meaning":"selection cursor index","instructionVaHex":"0x0041fbcf","refVaHex":"0x0041fbd0","access":"read","instruction":"mov al, ds:[addr]"},{"globalVaHex":"0x0059e34a","meaning":"selection cursor index","instructionVaHex":"0x0041fbf4","refVaHex":"0x0041fbf5","access":"read","instruction":"mov al, ds:[addr]"},{"globalVaHex":"0x0059e34a","meaning":"selection cursor index","instructionVaHex":"0x0041fc19","refVaHex":"0x0041fc1a","access":"read","instruction":"mov al, ds:[addr]"},{"globalVaHex":"0x0059e34a","meaning":"selection cursor index","instructionVaHex":"0x0041fcbc","refVaHex":"0x0041fcbe","access":"read","instruction":"mov cl, byte ptr ds:[addr]"},{"globalVaHex":"0x0059e34a","meaning":"selection cursor index","instructionVaHex":"0x0041fcf7","refVaHex":"0x0041fcf9","access":"read","instruction":"mov cl, byte ptr ds:[addr]"},{"globalVaHex":"0x0059e34a","meaning":"selection cursor index","instructionVaHex":"0x0041fd32","refVaHex":"0x0041fd34","access":"read","instruction":"mov cl, byte ptr ds:[addr]"},{"globalVaHex":"0x0059e34a","meaning":"selection cursor index","instructionVaHex":"0x0041fd55","refVaHex":"0x0041fd56","access":"read","instruction":"mov al, ds:[addr]"},{"globalVaHex":"0x0059e34a","meaning":"selection cursor index","instructionVaHex":"0x0041fd77","refVaHex":"0x0041fd78","access":"read","instruction":"mov al, ds:[addr]"},{"globalVaHex":"0x0059e34a","meaning":"selection cursor index","instructionVaHex":"0x0041fda8","refVaHex":"0x0041fdaa","access":"read","instruction":"mov cl, byte ptr ds:[addr]"},{"globalVaHex":"0x0059e34a","meaning":"selection cursor index","instructionVaHex":"0x00420095","refVaHex":"0x00420096","access":"read","instruction":"mov al, ds:[addr]"},{"globalVaHex":"0x0059e34a","meaning":"selection cursor index","instructionVaHex":"0x004200c3","refVaHex":"0x004200c4","access":"read","instruction":"mov al, ds:[addr]"},{"globalVaHex":"0x0059e34a","meaning":"selection cursor index","instructionVaHex":"0x0042055b","refVaHex":"0x0042055d","access":"write","instruction":"mov byte ptr ds:[addr], imm8"},{"globalVaHex":"0x0059e34a","meaning":"selection cursor index","instructionVaHex":"0x00420567","refVaHex":"0x00420569","access":"write","instruction":"mov byte ptr ds:[addr], imm8"},{"globalVaHex":"0x0059e34a","meaning":"selection cursor index","instructionVaHex":"0x004332d1","refVaHex":"0x004332d3","access":"read","instruction":"mov cl, byte ptr ds:[addr]"},{"globalVaHex":"0x0059e34a","meaning":"selection cursor index","instructionVaHex":"0x00433303","refVaHex":"0x00433305","access":"read","instruction":"mov cl, byte ptr ds:[addr]"},{"globalVaHex":"0x0059e34a","meaning":"selection cursor index","instructionVaHex":"0x00433335","refVaHex":"0x00433337","access":"read","instruction":"mov cl, byte ptr ds:[addr]"},{"globalVaHex":"0x0059e34a","meaning":"selection cursor index","instructionVaHex":"0x00433356","refVaHex":"0x00433357","access":"read","instruction":"mov al, ds:[addr]"},{"globalVaHex":"0x0059e34a","meaning":"selection cursor index","instructionVaHex":"0x0043337d","refVaHex":"0x0043337e","access":"read","instruction":"mov al, ds:[addr]"},{"globalVaHex":"0x0059e34a","meaning":"selection cursor index","instructionVaHex":"0x004333a8","refVaHex":"0x004333aa","access":"read","instruction":"mov cl, byte ptr ds:[addr]"},{"globalVaHex":"0x0059e34d","meaning":"selection/runtime enabled flag","instructionVaHex":"0x00406b00","refVaHex":"0x00406b01","access":"read","instruction":"mov al, ds:[addr]"},{"globalVaHex":"0x0059e34d","meaning":"selection/runtime enabled flag","instructionVaHex":"0x00406bd4","refVaHex":"0x00406bd5","access":"read","instruction":"mov al, ds:[addr]"},{"globalVaHex":"0x0059e34d","meaning":"selection/runtime enabled flag","instructionVaHex":"0x00406cf9","refVaHex":"0x00406cfa","access":"read","instruction":"mov al, ds:[addr]"},{"globalVaHex":"0x0059e34d","meaning":"selection/runtime enabled flag","instructionVaHex":"0x0040c51e","refVaHex":"0x0040c51f","access":"read","instruction":"mov al, ds:[addr]"},{"globalVaHex":"0x0059e34d","meaning":"selection/runtime enabled flag","instructionVaHex":"0x0040fa78","refVaHex":"0x0040fa79","access":"read","instruction":"mov al, ds:[addr]"},{"globalVaHex":"0x0059e34d","meaning":"selection/runtime enabled flag","instructionVaHex":"0x0040fb3d","refVaHex":"0x0040fb3e","access":"read","instruction":"mov al, ds:[addr]"},{"globalVaHex":"0x0059e34d","meaning":"selection/runtime enabled flag","instructionVaHex":"0x0041dddf","refVaHex":"0x0041dde0","access":"read","instruction":"mov al, ds:[addr]"},{"globalVaHex":"0x0059e34d","meaning":"selection/runtime enabled flag","instructionVaHex":"0x0041df4f","refVaHex":"0x0041df50","access":"read","instruction":"mov al, ds:[addr]"},{"globalVaHex":"0x0059e34d","meaning":"selection/runtime enabled flag","instructionVaHex":"0x004204be","refVaHex":"0x004204bf","access":"read","instruction":"mov al, ds:[addr]"},{"globalVaHex":"0x0059e34d","meaning":"selection/runtime enabled flag","instructionVaHex":"0x004348e0","refVaHex":"0x004348e1","access":"read","instruction":"mov al, ds:[addr]"},{"globalVaHex":"0x0059e34d","meaning":"selection/runtime enabled flag","instructionVaHex":"0x004352d7","refVaHex":"0x004352d8","access":"read","instruction":"mov al, ds:[addr]"},{"globalVaHex":"0x0059e34d","meaning":"selection/runtime enabled flag","instructionVaHex":"0x00435398","refVaHex":"0x00435399","access":"read","instruction":"mov al, ds:[addr]"}],"functionRows":[{"label":"selected-target gate / only direct e347 producer","range":"0x0040fa6d..0x0040fb32","meaning":"opcode 0x5c checks target-scope bit 0x08. If selection is not required, it copies current actor/object 0x0059e33e into 0x0059e347. If selection is required, it advances into the nested selection script and does not write e347.","keyLines":["  40faa9:\t33 c0                \txor    eax,eax","  40faab:\ta0 3e e3 59 00       \tmov    al,ds:0x59e33e","  40fab0:\t8b 04 85 30 db 59 00 \tmov    eax,DWORD PTR [eax*4+0x59db30]","  40faf2:\t50                   \tpush   eax","  40faf3:\te8 51 3b 02 00       \tcall   0x433649","  40faf8:\t83 c4 0c             \tadd    esp,0xc","  40fafd:\t8a c8                \tmov    cl,al","  40faff:\tf6 c1 08             \ttest   cl,0x8","  40fb02:\t0f 84 14 00 00 00    \tje     0x40fb1c","  40fb17:\te9 11 00 00 00       \tjmp    0x40fb2d","  40fb1c:\ta0 3e e3 59 00       \tmov    al,ds:0x59e33e","  40fb21:\ta2 47 e3 59 00       \tmov    ds:0x59e347,al","  40fb26:\t8b 45 08             \tmov    eax,DWORD PTR [ebp+0x8]","  40fb29:\t83 40 40 08          \tadd    DWORD PTR [eax+0x40],0x8","  40fb2d:\t5f                   \tpop    edi"]},{"label":"manual/menu action setup consumes e347","range":"0x0040f57c..0x0040f6a0","meaning":"manual/menu action setup copies 0x0059e347 into actor +0x61, then passes the same target actor into target-side setup.","keyLines":["  40f648:\t50                   \tpush   eax","  40f649:\te8 fb 3f 02 00       \tcall   0x433649","  40f64e:\t83 c4 0c             \tadd    esp,0xc","  40f651:\t8b 4d fc             \tmov    ecx,DWORD PTR [ebp-0x4]","  40f654:\t88 41 67             \tmov    BYTE PTR [ecx+0x67],al","  40f657:\ta0 47 e3 59 00       \tmov    al,ds:0x59e347","  40f65c:\t8b 4d fc             \tmov    ecx,DWORD PTR [ebp-0x4]","  40f65f:\t88 41 61             \tmov    BYTE PTR [ecx+0x61],al","  40f662:\t33 c0                \txor    eax,eax","  40f664:\ta0 47 e3 59 00       \tmov    al,ds:0x59e347","  40f669:\t8b 04 85 30 db 59 00 \tmov    eax,DWORD PTR [eax*4+0x59db30]","  40f674:\t50                   \tpush   eax","  40f675:\te8 be 5e 02 00       \tcall   0x435538","  40f67a:\t83 c4 08             \tadd    esp,0x8"]},{"label":"selection-mode mode1 consumes e348","range":"0x0040c673..0x0040c688","meaning":"selection-mode opcode24 mode 1 writes byte(0x0059e348)+3 directly into actor +0x61. It bypasses 0x0059e347.","keyLines":["  40c673:\t33 c0                \txor    eax,eax","  40c675:\ta0 48 e3 59 00       \tmov    al,ds:0x59e348","  40c67a:\t83 c0 03             \tadd    eax,0x3","  40c67d:\t8b 4d fc             \tmov    ecx,DWORD PTR [ebp-0x4]","  40c680:\t88 41 61             \tmov    BYTE PTR [ecx+0x61],al","  40c683:\te9 38 00 00 00       \tjmp    0x40c6c0"]},{"label":"selection-mode mode2 consumes e347","range":"0x0040c688..0x0040c698","meaning":"selection-mode opcode24 mode 2 writes byte(0x0059e347) into actor +0x61.","keyLines":["  40c688:\ta0 47 e3 59 00       \tmov    al,ds:0x59e347","  40c68d:\t8b 4d fc             \tmov    ecx,DWORD PTR [ebp-0x4]","  40c690:\t88 41 61             \tmov    BYTE PTR [ecx+0x61],al","  40c693:\te9 28 00 00 00       \tjmp    0x40c6c0"]},{"label":"interactive confirm stores cursor entry, not e347","range":"0x0041fbaa..0x0041fc8a","meaning":"interactive confirm reads the selected list entry from cursor 0x0059e34a, writes the entry id to object +0x58, and writes the entry class to 0x0059e33f. It does not write 0x0059e347.","keyLines":["  41fbb3:\t33 c0                \txor    eax,eax","  41fbb5:\ta0 4a e3 59 00       \tmov    al,ds:0x59e34a","  41fbba:\t8b 0d a8 e2 59 00    \tmov    ecx,DWORD PTR ds:0x59e2a8","  41fbc0:\t33 d2                \txor    edx,edx","  41fbcd:\t33 c0                \txor    eax,eax","  41fbcf:\ta0 4a e3 59 00       \tmov    al,ds:0x59e34a","  41fbd4:\t8b 0d a8 e2 59 00    \tmov    ecx,DWORD PTR ds:0x59e2a8","  41fbda:\t33 d2                \txor    edx,edx","  41fbe0:\t8b 45 08             \tmov    eax,DWORD PTR [ebp+0x8]","  41fbe3:\t89 50 58             \tmov    DWORD PTR [eax+0x58],edx","  41fbe6:\tc6 05 3f e3 59 00 00 \tmov    BYTE PTR ds:0x59e33f,0x0","  41fbed:\te9 89 00 00 00       \tjmp    0x41fc7b","  41fbf2:\t33 c0                \txor    eax,eax","  41fbf4:\ta0 4a e3 59 00       \tmov    al,ds:0x59e34a","  41fbf9:\t8b 0d a8 e2 59 00    \tmov    ecx,DWORD PTR ds:0x59e2a8","  41fbff:\t33 d2                \txor    edx,edx","  41fc05:\t8b 45 08             \tmov    eax,DWORD PTR [ebp+0x8]","  41fc08:\t89 50 58             \tmov    DWORD PTR [eax+0x58],edx","  41fc0b:\tc6 05 3f e3 59 00 01 \tmov    BYTE PTR ds:0x59e33f,0x1","  41fc12:\te9 64 00 00 00       \tjmp    0x41fc7b","  41fc17:\t33 c0                \txor    eax,eax","  41fc19:\ta0 4a e3 59 00       \tmov    al,ds:0x59e34a","  41fc1e:\t8b 0d a8 e2 59 00    \tmov    ecx,DWORD PTR ds:0x59e2a8","  41fc24:\t33 d2                \txor    edx,edx","  41fc2a:\t8b 45 08             \tmov    eax,DWORD PTR [ebp+0x8]","  41fc2d:\t89 50 58             \tmov    DWORD PTR [eax+0x58],edx","  41fc30:\tc6 05 3f e3 59 00 02 \tmov    BYTE PTR ds:0x59e33f,0x2","  41fc37:\te9 3f 00 00 00       \tjmp    0x41fc7b"]}],"resolvedItems":["전투 내부 selected-target latch 관점에서는 남은 e347 producer 미확정이 없다.","0x0059e347 direct producer는 0x0040fb1c/0x0040fb21 하나로 닫혔다.","target-scope bit 0x08이 없는 기본 경로는 0x0059e33e current actor/object index를 e347에 복사한다.","target-scope bit 0x08이 있는 경로는 nested target-selection script로 들어가며 e347을 직접 쓰지 않는다."],"externalItems":["0x0059e348 producer/meaning은 공용 opcode24 mode1/save-selector 추적 범위로 분리한다. 기존 보고서들은 no raw byte, no direct/static producer, no save-loader backing, diagnostic runtime zero를 기록한다."],"openQuestions":[]}
