; ; capture_previous_context from 0x18001fcac to 0x18001fd1d (113 bytes) ; ; 2 xrefs: ; > __report_gsfailure @ 0x18001fbfe ; > @ 0x18004b298 ; ; 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 ; push rbx ; +0x0, 0x18001fcac push rsi ; +0x2, 0x18001fcae push rdi ; +0x3, 0x18001fcaf sub rsp, 40h ; +0x4, 0x18001fcb0 mov rbx, rcx ; +0x8, 0x18001fcb4 call cs:RtlCaptureContext ; +0xb, 0x18001fcb7 mov rsi, [rbx+0F8h] ; +0x11, 0x18001fcbd xor edi, edi ; +0x18, 0x18001fcc4 xor r8d, r8d; HistoryTable ; +0x1a, 0x18001fcc6 lea rdx, [rsp+58h+ImageBase]; ImageBase ; +0x1d, 0x18001fcc9 mov rcx, rsi; ControlPc ; +0x22, 0x18001fcce call cs:RtlLookupFunctionEntry ; +0x25, 0x18001fcd1 test rax, rax ; +0x2b, 0x18001fcd7 jz short loc_18001FD15 ; +0x2e, 0x18001fcda and [rsp+58h+var_20], 0 ; +0x30, 0x18001fcdc lea rcx, [rsp+58h+arg_8] ; +0x36, 0x18001fce2 mov rdx, [rsp+58h+ImageBase]; ImageBase ; +0x3b, 0x18001fce7 mov r9, rax; FunctionEntry ; +0x40, 0x18001fcec mov [rsp+58h+EstablisherFrame], rcx; EstablisherFrame ; +0x43, 0x18001fcef mov r8, rsi; ControlPc ; +0x48, 0x18001fcf4 lea rcx, [rsp+58h+arg_10] ; +0x4b, 0x18001fcf7 mov [rsp+58h+HandlerData], rcx; HandlerData ; +0x50, 0x18001fcfc xor ecx, ecx; HandlerType ; +0x55, 0x18001fd01 mov [rsp+58h+ContextRecord], rbx; ContextRecord ; +0x57, 0x18001fd03 call cs:RtlVirtualUnwind ; +0x5c, 0x18001fd08 inc edi ; +0x62, 0x18001fd0e cmp edi, 2 ; +0x64, 0x18001fd10 jl short loc_18001FCC6 ; +0x67, 0x18001fd13 add rsp, 40h ; +0x69, 0x18001fd15 pop rdi ; +0x6d, 0x18001fd19 pop rsi ; +0x6e, 0x18001fd1a pop rbx ; +0x6f, 0x18001fd1b retn ; +0x70, 0x18001fd1c