{"type": "func", "start": 6443650436, "end": 6443650491, "name": "__except_validate_context_record", "pseudocode": "// \n// __except_validate_context_record from 0x180124d84 to 0x180124dbb (55 bytes)\n// \n// 3 xrefs:\n// > __C_specific_handler @ 0x180124953\n// > __InternalCxxFrameHandler<__FrameHandler3> @ 0x180126560\n// > unknown_libname_19 @ 0x180126919\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\nstruct _TEB *__fastcall _except_validate_context_record(__int64 a1)\n{\n  struct _TEB *result; // rax\n  PVOID v2; // rcx\n\n  result = (struct _TEB *)_guard_check_icall_fptr[0];\n  if ( (void (*)())_guard_check_icall_fptr[0] != guard_check_icall_nop )\n  {\n    result = NtCurrentTeb();\n    v2 = *(PVOID *)(a1 + 152);\n    if ( v2 < result->NtTib.StackLimit || v2 > result->NtTib.StackBase )\n      __fastfail(0xDu);\n  }\n  return result;\n}", "assembly": "; \n; __except_validate_context_record from 0x180124d84 to 0x180124dbb (55 bytes)\n; \n; 3 xrefs:\n; > __C_specific_handler @ 0x180124953\n; > __InternalCxxFrameHandler<__FrameHandler3> @ 0x180126560\n; > unknown_libname_19 @ 0x180126919\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, cs:__guard_check_icall_fptr                               ; +0x0, 0x180124d84\nlea     rdx, _guard_check_icall_nop                                    ; +0x7, 0x180124d8b\ncmp     rax, rdx                                                       ; +0xe, 0x180124d92\njz      short locret_180124DBA                                         ; +0x11, 0x180124d95\nmov     rax, gs:30h                                                    ; +0x13, 0x180124d97\nmov     rcx, [rcx+98h]                                                 ; +0x1c, 0x180124da0\ncmp     rcx, [rax+10h]                                                 ; +0x23, 0x180124da7\njb      short loc_180124DB3                                            ; +0x27, 0x180124dab\ncmp     rcx, [rax+8]                                                   ; +0x29, 0x180124dad\njbe     short locret_180124DBA                                         ; +0x2d, 0x180124db1\nmov     ecx, 0Dh                                                       ; +0x2f, 0x180124db3\nint     29h; Win8: RtlFailFast(ecx)                                    ; +0x34, 0x180124db8\nretn                                                                   ; +0x36, 0x180124dba", "xrefs": ["__C_specific_handler @ 0x180124953", "__InternalCxxFrameHandler<__FrameHandler3> @ 0x180126560", "unknown_libname_19 @ 0x180126919"], "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"}