; ; __FrameHandler3::GetRangeOfTrysToCheck from 0x1801254c4 to 0x180125603 (319 bytes) ; ; 3 xrefs: ; > FindHandler<__FrameHandler3> @ 0x180125ec0 ; > FindHandlerForForeignException<__FrameHandler3> @ 0x1801262d1 ; > @ 0x180202810 ; ; This function is hookable on this platform! ; ; Using BromaIDA 8.0.0 @ https:;github.com/Stazzical/BromaIDA ; Using bindings at commit ba9f177b at Thu Jul 16 22:52:06 2026 from https:;github.com/geode-sdk/bindings ; mov [rsp+arg_0], rbx ; +0x0, 0x1801254c4 mov [rsp+arg_8], rbp ; +0x5, 0x1801254c9 mov [rsp+arg_10], rsi ; +0xa, 0x1801254ce push rdi ; +0xf, 0x1801254d3 push r12 ; +0x10, 0x1801254d4 push r13 ; +0x12, 0x1801254d6 push r14 ; +0x14, 0x1801254d8 push r15 ; +0x16, 0x1801254da sub rsp, 40h ; +0x18, 0x1801254dc mov rbx, [rsp+68h+arg_20] ; +0x1c, 0x1801254e0 mov r12, rdx ; +0x24, 0x1801254e8 mov rbp, rcx ; +0x27, 0x1801254eb mov rdx, r9; struct _xDISPATCHER_CONTEXT * ; +0x2a, 0x1801254ee mov rcx, rbx; struct _s_FuncInfo * ; +0x2d, 0x1801254f1 mov rdi, r9 ; +0x30, 0x1801254f4 mov r15d, r8d ; +0x33, 0x1801254f7 mov r14d, [rbx+0Ch] ; +0x36, 0x1801254fa call ?StateFromControlPc@__FrameHandler3@@SAHPEBU_s_FuncInfo@@PEAU_xDISPATCHER_CONTEXT@@@Z ; +0x3a, 0x1801254fe xor r10d, r10d ; +0x3f, 0x180125503 mov esi, eax ; +0x42, 0x180125506 test r14d, r14d ; +0x44, 0x180125508 jz loc_1801255FD ; +0x47, 0x18012550b mov r8, [rdi+8] ; +0x4d, 0x180125511 or eax, 0FFFFFFFFh ; +0x51, 0x180125515 movsxd r11, dword ptr [rbx+10h] ; +0x54, 0x180125518 mov r9d, eax ; +0x58, 0x18012551c mov r13d, eax ; +0x5b, 0x18012551f mov edx, r14d ; +0x5e, 0x180125522 lea ebx, [rdx-1] ; +0x61, 0x180125525 lea rcx, [rbx+rbx*4] ; +0x64, 0x180125528 lea rax, [r8+rcx*4] ; +0x68, 0x18012552c cmp esi, [rax+r11+4] ; +0x6c, 0x180125530 jle short loc_18012553E ; +0x71, 0x180125535 cmp esi, [rax+r11+8] ; +0x73, 0x180125537 jle short loc_18012554A ; +0x78, 0x18012553c mov edx, ebx ; +0x7a, 0x18012553e mov eax, ebx ; +0x7c, 0x180125540 test ebx, ebx ; +0x7e, 0x180125542 jnz short loc_180125525 ; +0x80, 0x180125544 test eax, eax ; +0x82, 0x180125546 jz short loc_18012555A ; +0x84, 0x180125548 lea eax, [rdx-1] ; +0x86, 0x18012554a lea rax, [rax+rax*4] ; +0x89, 0x18012554d lea rdx, [r11+rax*4] ; +0x8d, 0x180125551 add rdx, r8 ; +0x91, 0x180125555 jmp short loc_18012555D ; +0x94, 0x180125558 mov rdx, r10 ; +0x96, 0x18012555a lea rcx, [r8+r11] ; +0x99, 0x18012555d mov r8d, r10d ; +0x9d, 0x180125561 or r11d, 0FFFFFFFFh ; +0xa0, 0x180125564 test rdx, rdx ; +0xa4, 0x180125568 jz short loc_18012557C ; +0xa7, 0x18012556b mov eax, [rdx+4] ; +0xa9, 0x18012556d cmp [rcx], eax ; +0xac, 0x180125570 jle short loc_180125597 ; +0xae, 0x180125572 mov eax, [rdx+8] ; +0xb0, 0x180125574 cmp [rcx+4], eax ; +0xb3, 0x180125577 jg short loc_180125597 ; +0xb6, 0x18012557a cmp r15d, [rcx] ; +0xb8, 0x18012557c jl short loc_180125597 ; +0xbb, 0x18012557f cmp r15d, [rcx+4] ; +0xbd, 0x180125581 jg short loc_180125597 ; +0xc1, 0x180125585 cmp r9d, r11d ; +0xc3, 0x180125587 mov eax, r8d ; +0xc6, 0x18012558a mov r13d, r8d ; +0xc9, 0x18012558d cmovnz eax, r9d ; +0xcc, 0x180125590 mov r9d, eax ; +0xd0, 0x180125594 inc r8d ; +0xd3, 0x180125597 add rcx, 14h ; +0xd6, 0x18012559a cmp r8d, r14d ; +0xda, 0x18012559e jb short loc_180125568 ; +0xdd, 0x1801255a1 cmp r9d, r11d ; +0xdf, 0x1801255a3 mov qword ptr [rsp+68h+var_48], r12 ; +0xe2, 0x1801255a6 mov eax, r10d ; +0xe7, 0x1801255ab mov qword ptr [rsp+68h+var_38], r12 ; +0xea, 0x1801255ae cmovnz eax, r9d ; +0xef, 0x1801255b3 lea r11, [rsp+68h+var_28] ; +0xf3, 0x1801255b7 mov rbx, [r11+30h] ; +0xf8, 0x1801255bc mov rsi, [r11+40h] ; +0xfc, 0x1801255c0 mov dword ptr [rsp+68h+var_48+8], eax ; +0x100, 0x1801255c4 lea eax, [r13+1] ; +0x104, 0x1801255c8 movups xmm0, [rsp+68h+var_48] ; +0x108, 0x1801255cc cmovnz r10d, eax ; +0x10d, 0x1801255d1 mov rax, rbp ; +0x111, 0x1801255d5 mov dword ptr [rsp+68h+var_38+8], r10d ; +0x114, 0x1801255d8 movups xmm1, [rsp+68h+var_38] ; +0x119, 0x1801255dd movdqu xmmword ptr [rbp+0], xmm0 ; +0x11e, 0x1801255e2 movdqu xmmword ptr [rbp+10h], xmm1 ; +0x123, 0x1801255e7 mov rbp, [r11+38h] ; +0x128, 0x1801255ec mov rsp, r11 ; +0x12c, 0x1801255f0 pop r15 ; +0x12f, 0x1801255f3 pop r14 ; +0x131, 0x1801255f5 pop r13 ; +0x133, 0x1801255f7 pop r12 ; +0x135, 0x1801255f9 pop rdi ; +0x137, 0x1801255fb retn ; +0x138, 0x1801255fc call abort ; +0x139, 0x1801255fd db 0CCh ; +0x13e, 0x180125602