38#define _SEH3$_FRAME_ALL_NONVOLATILES 1
52#ifdef _SEH3$_FRAME_ALL_NONVOLATILES
69 _SEH3$_UnregisterFrame(Frame);
71 _SEH3$_UnregisterTryLevel(Frame);
84 "xorl %%ecx, %%ecx\n\t"
85 "xorl %%eax, %%eax\n\t"
91 "addl %[RegistrationFrame], %%eax\n\t"
97 : [RegistrationFrame]
"m" (RegistrationFrame), [
Filter]
"m" (
Filter)
105_SEH3$_InvokeEmbeddedFilter(
110_SEH3$_InvokeEmbeddedFilterFromRegistration(
128 return _SEH3$_InvokeEmbeddedFilter(RegistrationFrame);
132 return _SEH3$_InvokeEmbeddedFilterFromRegistration(RegistrationFrame);
149 _SEH3$_UnregisterFrame(Frame);
151 _SEH3$_UnregisterTryLevel(Frame);
154 if (Frame->ScopeTable->Target ==
NULL)
156 _SEH3$_InvokeFilter(Frame, Frame->ScopeTable->Filter);
198 _SEH3$_InvokeFilter(
Record,
Record->ScopeTable->Filter);
211 "movl 24(%%ecx), %%esp\n\t"
212 "movl 28(%%ecx), %%ebp\n\t"
214 "movl 36(%%ecx), %%ebx\n\t"
215 "movl 40(%%ecx), %%esi\n\t"
216 "movl 44(%%ecx), %%edi\n\t"
224 "c" (RegistrationFrame),
233 "movl 24(%%ecx), %%esp\n\t"
234 "movl 28(%%ecx), %%ebp\n\t"
242 "c" (RegistrationFrame),
248 __builtin_unreachable();
262_SEH3$_except_handler(
273 asm volatile (
"cld" : : :
"memory");
316 CurrentFrame = CurrentFrame->
Next;
323 TargetFrame = CurrentFrame;
328 CurrentFrame != TargetFrame;
329 CurrentFrame = CurrentFrame->
Next)
332 _SEH3$_Unregister(CurrentFrame);
356 _SEH3$_Unregister(CurrentFrame);
359 _SEH3$_JumpToTarget(CurrentFrame);
ACPI_PHYSICAL_ADDRESS ACPI_SIZE BOOLEAN Warn UINT32 *TableIdx UINT32 ACPI_TABLE_HEADER *OutTableHeader ACPI_TABLE_HEADER **OutTable ACPI_HANDLE UINT32 ACPI_WALK_CALLBACK ACPI_WALK_CALLBACK void void **ReturnValue UINT32 ACPI_BUFFER *RetPathPtr ACPI_OBJECT_HANDLER Handler
_Inout_ PIRP _In_ NTSTATUS ExceptionCode
@ ExceptionContinueSearch
@ ExceptionContinueExecution
enum _EXCEPTION_DISPOSITION EXCEPTION_DISPOSITION
_Must_inspect_result_ _In_opt_ PFLT_FILTER Filter
#define EXCEPTION_EXECUTE_HANDLER
#define EXCEPTION_CONTINUE_SEARCH
#define EXCEPTION_CONTINUE_EXECUTION
_IRQL_requires_same_ _In_ PVOID EstablisherFrame
_IRQL_requires_same_ _In_ PVOID _Inout_ struct _CONTEXT * ContextRecord
_IRQL_requires_same_ _In_ PVOID _Inout_ struct _CONTEXT _In_ PVOID DispatcherContext
void __fastcall _SEH3$_CallRtlUnwind(PSEH3$_REGISTRATION_FRAME RegistrationFrame)
static VOID _SEH3$_CallFinally(PSEH3$_REGISTRATION_FRAME Record)
static LONG _SEH3$_GetFilterResult(PSEH3$_REGISTRATION_FRAME Record)
static LONG _SEH3$_InvokeNestedFunctionFilter(volatile SEH3$_REGISTRATION_FRAME *RegistrationFrame, PVOID Filter)
int const SEH3$_SCOPE_TABLE void * AllocaFrame
int const SEH3$_SCOPE_TABLE * ScopeTable
#define SEH3_REGISTRATION_FRAME_AllocaFrame
#define SEH3_REGISTRATION_FRAME_ExceptionPointers
#define SEH3_SCOPE_TABLE_Target
#define SEH3_REGISTRATION_FRAME_Handler
#define SEH3_REGISTRATION_FRAME_Esp
#define SEH3_REGISTRATION_FRAME_EndOfChain
#define SEH3_REGISTRATION_FRAME_Ebp
#define SEH3_SCOPE_TABLE_Filter
#define SEH3_REGISTRATION_FRAME_Edi
#define SEH3_REGISTRATION_FRAME_Esi
#define SEH3_REGISTRATION_FRAME_ReturnAddress
#define SEH3_REGISTRATION_FRAME_Next
#define SEH3_REGISTRATION_FRAME_ScopeTable
#define SEH3_REGISTRATION_FRAME_Ebx
#define SEH3_REGISTRATION_FRAME_ExceptionCode
struct _CONTEXT * ContextRecord
struct _EXCEPTION_RECORD * ExceptionRecord
PSEH3$_EXCEPTION_POINTERS volatile ExceptionPointers
struct _SEH3$_REGISTRATION_FRAME * EndOfChain
PSEH3$_SCOPE_TABLE ScopeTable
unsigned long ExceptionCode
struct _SEH3$_REGISTRATION_FRAME * Next
#define FIELD_OFFSET(t, f)
_At_(*)(_In_ PWSK_CLIENT Client, _In_opt_ PUNICODE_STRING NodeName, _In_opt_ PUNICODE_STRING ServiceName, _In_opt_ ULONG NameSpace, _In_opt_ GUID *Provider, _In_opt_ PADDRINFOEXW Hints, _Outptr_ PADDRINFOEXW *Result, _In_opt_ PEPROCESS OwningProcess, _In_opt_ PETHREAD OwningThread, _Inout_ PIRP Irp Result)(Mem)) NTSTATUS(WSKAPI *PFN_WSK_GET_ADDRESS_INFO
_In_ struct _KBUGCHECK_REASON_CALLBACK_RECORD * Record
#define EXCEPTION_UNWINDING