{"type": "func", "start": 6442578496, "end": 6442578603, "name": "`eh vector destructor iterator'", "pseudocode": "// \n// `eh vector destructor iterator' from 0x18001f240 to 0x18001f2ab (107 bytes)\n// \n// 29 xrefs:\n// > sub_1800013C0 @ 0x1800013ec\n// > sub_180005660 @ 0x18000568c\n// > sub_1800077D0 @ 0x1800077fc\n// > sub_180007AA0 @ 0x180007acc\n// > sub_180008320 @ 0x18000834c\n// > sub_180008CD0 @ 0x180008cfc\n// > sub_1800097D0 @ 0x1800097fc\n// > sub_18000A300 @ 0x18000a32c\n// > sub_18000B0F0 @ 0x18000b11c\n// > sub_18000BF80 @ 0x18000bfac\n// > sub_18000D330 @ 0x18000d35c\n// > sub_18000D8B0 @ 0x18000d8dc\n// > sub_180010370 @ 0x18001039c\n// > sub_1800104A0 @ 0x1800104cc\n// > sub_180011370 @ 0x18001139c\n// > sub_1800115B0 @ 0x1800115dc\n// > sub_180014440 @ 0x18001446c\n// > sub_180014B70 @ 0x180014b9c\n// > sub_180016C20 @ 0x180016c4c\n// > sub_180016CC0 @ 0x180016cec\n// > sub_180016D80 @ 0x180016dac\n// > sub_180019020 @ 0x18001904c\n// > sub_180019270 @ 0x18001929c\n// > sub_180019490 @ 0x1800194bc\n// > sub_18001C760 @ 0x18001c78c\n// > sub_18001C880 @ 0x18001c8ac\n// > sub_18001CBA0 @ 0x18001cbcc\n// > sub_18001D630 @ 0x18001d65c\n// > <???> @ 0x18004b154\n// \n// This function is hookable on this platform!\n// \n// Using BromaIDA 8.0.0 @ https://github.com/Stazzical/BromaIDA\n// Using bindings at commit ba9f177b at Thu Jul 16 22:52:06 2026 from https://github.com/geode-sdk/bindings\n// \n\nvoid __fastcall `eh vector destructor iterator'(char *a1, __int64 a2, __int64 a3, void (*a4)(void *))\n{\n  __int64 v4; // rbx\n  char *v6; // rdi\n\n  v4 = a3;\n  v6 = &a1[a3 * a2];\n  while ( v4-- )\n  {\n    v6 -= a2;\n    _guard_dispatch_icall_fptr();\n  }\n}", "assembly": "; \n; `eh vector destructor iterator' from 0x18001f240 to 0x18001f2ab (107 bytes)\n; \n; 29 xrefs:\n; > sub_1800013C0 @ 0x1800013ec\n; > sub_180005660 @ 0x18000568c\n; > sub_1800077D0 @ 0x1800077fc\n; > sub_180007AA0 @ 0x180007acc\n; > sub_180008320 @ 0x18000834c\n; > sub_180008CD0 @ 0x180008cfc\n; > sub_1800097D0 @ 0x1800097fc\n; > sub_18000A300 @ 0x18000a32c\n; > sub_18000B0F0 @ 0x18000b11c\n; > sub_18000BF80 @ 0x18000bfac\n; > sub_18000D330 @ 0x18000d35c\n; > sub_18000D8B0 @ 0x18000d8dc\n; > sub_180010370 @ 0x18001039c\n; > sub_1800104A0 @ 0x1800104cc\n; > sub_180011370 @ 0x18001139c\n; > sub_1800115B0 @ 0x1800115dc\n; > sub_180014440 @ 0x18001446c\n; > sub_180014B70 @ 0x180014b9c\n; > sub_180016C20 @ 0x180016c4c\n; > sub_180016CC0 @ 0x180016cec\n; > sub_180016D80 @ 0x180016dac\n; > sub_180019020 @ 0x18001904c\n; > sub_180019270 @ 0x18001929c\n; > sub_180019490 @ 0x1800194bc\n; > sub_18001C760 @ 0x18001c78c\n; > sub_18001C880 @ 0x18001c8ac\n; > sub_18001CBA0 @ 0x18001cbcc\n; > sub_18001D630 @ 0x18001d65c\n; > <???> @ 0x18004b154\n; \n; This function is hookable on this platform!\n; \n; Using BromaIDA 8.0.0 @ https:;github.com/Stazzical/BromaIDA\n; Using bindings at commit ba9f177b at Thu Jul 16 22:52:06 2026 from https:;github.com/geode-sdk/bindings\n; \n\nmov     rax, rsp                                                       ; +0x0, 0x18001f240\nmov     [rax+20h], r9                                                  ; +0x3, 0x18001f243\nmov     [rax+18h], r8                                                  ; +0x7, 0x18001f247\nmov     [rax+10h], rdx                                                 ; +0xb, 0x18001f24b\npush    rbx                                                            ; +0xf, 0x18001f24f\npush    rsi                                                            ; +0x10, 0x18001f250\npush    rdi                                                            ; +0x11, 0x18001f251\npush    r14                                                            ; +0x12, 0x18001f252\nsub     rsp, 38h                                                       ; +0x14, 0x18001f254\nmov     r14, r9                                                        ; +0x18, 0x18001f258\nmov     rbx, r8                                                        ; +0x1b, 0x18001f25b\nmov     rsi, rdx                                                       ; +0x1e, 0x18001f25e\nmov     byte ptr [rax-38h], 0                                          ; +0x21, 0x18001f261\nmov     rdi, rdx                                                       ; +0x25, 0x18001f265\nimul    rdi, r8                                                        ; +0x28, 0x18001f268\nadd     rdi, rcx                                                       ; +0x2c, 0x18001f26c\nmov     [rax+8], rdi                                                   ; +0x2f, 0x18001f26f\nmov     rax, rbx                                                       ; +0x33, 0x18001f273\ndec     rbx                                                            ; +0x36, 0x18001f276\nmov     [rsp+58h+arg_10], rbx                                          ; +0x39, 0x18001f279\ntest    rax, rax                                                       ; +0x3e, 0x18001f27e\njz      short loc_18001F29C                                            ; +0x41, 0x18001f281\nsub     rdi, rsi                                                       ; +0x43, 0x18001f283\nmov     [rsp+58h+arg_0], rdi                                           ; +0x46, 0x18001f286\nmov     rcx, rdi                                                       ; +0x4b, 0x18001f28b\nmov     rax, r14                                                       ; +0x4e, 0x18001f28e\nmov     rdx, cs:__guard_dispatch_icall_fptr                            ; +0x51, 0x18001f291\ncall    rdx ; _guard_dispatch_icall_nop                                ; +0x58, 0x18001f298\njmp     short loc_18001F273                                            ; +0x5a, 0x18001f29a\nmov     [rsp+58h+var_38], 1                                            ; +0x5c, 0x18001f29c\nadd     rsp, 38h                                                       ; +0x61, 0x18001f2a1\npop     r14                                                            ; +0x65, 0x18001f2a5\npop     rdi                                                            ; +0x67, 0x18001f2a7\npop     rsi                                                            ; +0x68, 0x18001f2a8\npop     rbx                                                            ; +0x69, 0x18001f2a9\nretn                                                                   ; +0x6a, 0x18001f2aa", "xrefs": ["sub_1800013C0 @ 0x1800013ec", "sub_180005660 @ 0x18000568c", "sub_1800077D0 @ 0x1800077fc", "sub_180007AA0 @ 0x180007acc", "sub_180008320 @ 0x18000834c", "sub_180008CD0 @ 0x180008cfc", "sub_1800097D0 @ 0x1800097fc", "sub_18000A300 @ 0x18000a32c", "sub_18000B0F0 @ 0x18000b11c", "sub_18000BF80 @ 0x18000bfac", "sub_18000D330 @ 0x18000d35c", "sub_18000D8B0 @ 0x18000d8dc", "sub_180010370 @ 0x18001039c", "sub_1800104A0 @ 0x1800104cc", "sub_180011370 @ 0x18001139c", "sub_1800115B0 @ 0x1800115dc", "sub_180014440 @ 0x18001446c", "sub_180014B70 @ 0x180014b9c", "sub_180016C20 @ 0x180016c4c", "sub_180016CC0 @ 0x180016cec", "sub_180016D80 @ 0x180016dac", "sub_180019020 @ 0x18001904c", "sub_180019270 @ 0x18001929c", "sub_180019490 @ 0x1800194bc", "sub_18001C760 @ 0x18001c78c", "sub_18001C880 @ 0x18001c8ac", "sub_18001CBA0 @ 0x18001cbcc", "sub_18001D630 @ 0x18001d65c", "<???> @ 0x18004b154"], "is_objc": false, "is_arm32": false, "is_arm64": false, "bida_info": "8.0.0 @ https://github.com/Stazzical/BromaIDA", "bindings_info": "commit ba9f177b at Thu Jul 16 22:52:06 2026 from https://github.com/geode-sdk/bindings"}