; ; __scrt_fastfail from 0x18001ff30 to 0x180020078 (328 bytes) ; ; 4 xrefs: ; > __scrt_initialize_onexit_tables @ 0x18001f5bd ; > dllmain_crt_process_attach @ 0x18001f9a7 ; > dllmain_crt_process_detach @ 0x18001fa28 ; > @ 0x18004b2bc ; ; 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-8+arg_0], rbx ; +0x0, 0x18001ff30 push rbp ; +0x5, 0x18001ff35 lea rbp, [rsp-4C0h] ; +0x6, 0x18001ff36 sub rsp, 5C0h ; +0xe, 0x18001ff3e mov ebx, ecx ; +0x15, 0x18001ff45 mov ecx, 17h; ProcessorFeature ; +0x17, 0x18001ff47 call cs:IsProcessorFeaturePresent ; +0x1c, 0x18001ff4c test eax, eax ; +0x22, 0x18001ff52 jz short loc_18001FF5A ; +0x24, 0x18001ff54 mov ecx, ebx ; +0x26, 0x18001ff56 int 29h; Win8: RtlFailFast(ecx) ; +0x28, 0x18001ff58 mov ecx, 3 ; +0x2a, 0x18001ff5a call sub_18001FF28 ; +0x2f, 0x18001ff5f xor edx, edx; Val ; +0x34, 0x18001ff64 lea rcx, [rbp+4C0h+ContextRecord]; void * ; +0x36, 0x18001ff66 mov r8d, 4D0h; Size ; +0x3a, 0x18001ff6a call memset ; +0x40, 0x18001ff70 lea rcx, [rbp+4C0h+ContextRecord]; ContextRecord ; +0x45, 0x18001ff75 call cs:RtlCaptureContext ; +0x49, 0x18001ff79 mov rbx, [rbp+4C0h+ContextRecord.Rip] ; +0x4f, 0x18001ff7f lea rdx, [rbp+4C0h+ImageBase]; ImageBase ; +0x56, 0x18001ff86 mov rcx, rbx; ControlPc ; +0x5d, 0x18001ff8d xor r8d, r8d; HistoryTable ; +0x60, 0x18001ff90 call cs:RtlLookupFunctionEntry ; +0x63, 0x18001ff93 test rax, rax ; +0x69, 0x18001ff99 jz short loc_18001FFDA ; +0x6c, 0x18001ff9c and [rsp+5C0h+var_588], 0 ; +0x6e, 0x18001ff9e lea rcx, [rbp+4C0h+arg_10] ; +0x74, 0x18001ffa4 mov rdx, [rbp+4C0h+ImageBase]; ImageBase ; +0x7b, 0x18001ffab mov r9, rax; FunctionEntry ; +0x82, 0x18001ffb2 mov [rsp+5C0h+EstablisherFrame], rcx; EstablisherFrame ; +0x85, 0x18001ffb5 mov r8, rbx; ControlPc ; +0x8a, 0x18001ffba lea rcx, [rbp+4C0h+arg_18] ; +0x8d, 0x18001ffbd mov [rsp+5C0h+HandlerData], rcx; HandlerData ; +0x94, 0x18001ffc4 lea rcx, [rbp+4C0h+ContextRecord] ; +0x99, 0x18001ffc9 mov [rsp+5C0h+var_5A0], rcx; ContextRecord ; +0x9d, 0x18001ffcd xor ecx, ecx; HandlerType ; +0xa2, 0x18001ffd2 call cs:RtlVirtualUnwind ; +0xa4, 0x18001ffd4 mov rax, [rbp+4C8h] ; +0xaa, 0x18001ffda lea rcx, [rsp+5C0h+var_570]; void * ; +0xb1, 0x18001ffe1 mov [rbp+4C0h+ContextRecord.Rip], rax ; +0xb6, 0x18001ffe6 xor edx, edx; Val ; +0xbd, 0x18001ffed lea rax, [rbp+4C8h] ; +0xbf, 0x18001ffef mov r8d, 98h; Size ; +0xc6, 0x18001fff6 add rax, 8 ; +0xcc, 0x18001fffc mov [rbp+4C0h+ContextRecord.Rsp], rax ; +0xd0, 0x180020000 call memset ; +0xd7, 0x180020007 mov rax, [rbp+4C8h] ; +0xdc, 0x18002000c mov [rsp+5C0h+var_560], rax ; +0xe3, 0x180020013 mov [rsp+5C0h+var_570], 40000015h ; +0xe8, 0x180020018 mov [rsp+5C0h+var_56C], 1 ; +0xf0, 0x180020020 call cs:IsDebuggerPresent ; +0xf8, 0x180020028 mov ebx, eax ; +0xfe, 0x18002002e xor ecx, ecx; lpTopLevelExceptionFilter ; +0x100, 0x180020030 lea rax, [rsp+5C0h+var_570] ; +0x102, 0x180020032 mov [rsp+5C0h+ExceptionInfo.ExceptionRecord], rax ; +0x107, 0x180020037 lea rax, [rbp+4C0h+ContextRecord] ; +0x10c, 0x18002003c mov [rsp+5C0h+ExceptionInfo.ContextRecord], rax ; +0x110, 0x180020040 call cs:SetUnhandledExceptionFilter ; +0x115, 0x180020045 lea rcx, [rsp+5C0h+ExceptionInfo]; ExceptionInfo ; +0x11b, 0x18002004b call cs:UnhandledExceptionFilter ; +0x120, 0x180020050 test eax, eax ; +0x126, 0x180020056 jnz short loc_180020067 ; +0x128, 0x180020058 cmp ebx, 1 ; +0x12a, 0x18002005a jz short loc_180020067 ; +0x12d, 0x18002005d lea ecx, [rax+3] ; +0x12f, 0x18002005f call sub_18001FF28 ; +0x132, 0x180020062 mov rbx, [rsp+5C0h+arg_0] ; +0x137, 0x180020067 add rsp, 5C0h ; +0x13f, 0x18002006f pop rbp ; +0x146, 0x180020076 retn ; +0x147, 0x180020077