/*
 * PDB file: ntkrnlmp.pdb
 * Image architecture: AMD64 (0x8664)
 *
 * Dumped by pdbex tool v0.18, by wbenny
 */

enum _DEVICE_RELATION_TYPE;
struct _EX_PUSH_LOCK;
struct _POP_RW_LOCK;
enum _EVENT_INFO_CLASS;
struct _SID_IDENTIFIER_AUTHORITY;
struct _SID;
enum _POOL_TYPE;
enum _EX_POOL_PRIORITY;
enum _EVENT_TYPE;
enum _MEMORY_CACHING_TYPE;
struct _PCW_PROCESSOR_INFO;
struct _ETW_LBR_SUPPORT;
enum _FILE_INFORMATION_CLASS;
enum _DIRECTORY_NOTIFY_INFORMATION_CLASS;
enum _PCI_BUSMASTER_RID_TYPE;
struct _PCI_BUSMASTER_DESCRIPTOR;
struct _GUID;
enum _FSINFOCLASS;
struct _LIST_ENTRY;
struct _WORK_QUEUE_ITEM;
enum IRPLOCK;
enum _SYSTEM_POWER_STATE;
enum _PNP_DEVICE_DELETE_TYPE;
struct _PENDING_RELATIONS_LIST_ENTRY;
enum BUS_QUERY_ID_TYPE;
enum DEVICE_TEXT_TYPE;
struct _SYNCH_COUNTERS;
enum _DEVICE_USAGE_NOTIFICATION_TYPE;
struct _RTL_BALANCED_NODE;
enum _POWER_STATE_TYPE;
enum POWER_ACTION;
enum _DEVICE_POWER_STATE;
enum _PLUGPLAY_EVENT_CATEGORY;
enum _PNP_VETO_TYPE;
struct _PLUGPLAY_EVENT_BLOCK;
enum _DEVICE_WAKE_DEPTH;
struct _ALPC_COMPLETION_LIST_STATE;
enum _WHEA_ERROR_SOURCE_TYPE;
struct _RTL_RB_TREE;
struct _KSCB;
enum _WHEA_ERROR_SOURCE_STATE;
enum _WHEA_EVENT_LOG_ENTRY_TYPE;
struct _AMD64_DBGKD_CONTROL_SET;
struct _EVENT_PAYLOAD_PREDICATE;
enum _WHEA_EVENT_LOG_ENTRY_ID;
enum _WHEA_ERROR_TYPE;
enum _WHEA_ERROR_SEVERITY;
enum _WHEA_ERROR_PACKET_DATA_FORMAT;
enum _KINTERRUPT_POLARITY;
enum _KINTERRUPT_MODE;
union _LARGE_INTEGER;
enum _IRQ_PRIORITY;
struct _IO_RESOURCE_DESCRIPTOR;
struct _IO_RESOURCE_LIST;
struct _ARMCE_DBGKD_CONTROL_SET;
struct _ETW_DECODE_CONTROL_ENTRY;
enum _REG_NOTIFY_CLASS;
enum _HALP_DMA_MAP_BUFFER_TYPE;
enum _KNOWN_CONTROLLER_TYPE;
enum _INTERRUPT_PROBLEM;
enum _IO_ALLOCATION_ACTION;
enum _MODE;
union _POWER_STATE;
struct _FS_FILTER_CALLBACKS;
enum _MEMORY_CACHING_TYPE_ORIG;
struct _DMA_ADAPTER;
struct _HALP_DMA_TRANSLATION_BUFFER_POSITION;
struct _HALP_DMA_ADAPTER_OBJECT;
enum _INTERLOCKED_RESULT;
union _WHEA_ERROR_PACKET_FLAGS;
struct _WHEA_ERROR_PACKET_V2;
struct _SEP_CACHED_HANDLES_TABLE;
enum _WHEA_CPU_VENDOR;
struct _WHEA_ERROR_SOURCE_CONFIGURATION_DD;
enum _HAL_INIT_PHASE;
struct _M128A;
struct _STRING64;
struct _WHEA_PCI_SLOT_NUMBER;
union _AER_ENDPOINT_DESCRIPTOR_FLAGS;
struct _WHEA_AER_ENDPOINT_DESCRIPTOR;
enum _USER_ACTIVITY_PRESENCE;
enum _INTERFACE_TYPE;
union _MI_RESERVATION_CLUSTER_INFO;
struct _MI_MODWRITE_DATA;
enum _EXCEPTION_DISPOSITION;
struct _MI_CROSS_PARTITION_CHARGES;
struct _BLOB_COUNTERS;
enum _SECURITY_IMPERSONATION_LEVEL;
enum _INTERRUPT_RESULT;
enum _DMA_WIDTH;
union _WHEA_PERSISTENCE_INFO;
enum _EXT_IOMMU_TRANSLATION_TYPE;
union _WHEA_EVENT_LOG_ENTRY_FLAGS;
struct _WHEA_EVENT_LOG_ENTRY_HEADER;
struct _WHEA_EVENT_LOG_ENTRY;
enum _HALP_DMA_ADAPTER_ALLOCATION_STATE;
struct _KAPC_STATE;
struct _RTL_DYNAMIC_HASH_TABLE;
enum _HAL_DMA_CRASH_DUMP_REGISTER_TYPE;
enum DMA_COMPLETION_STATUS;
struct _DISPATCHER_HEADER;
union _ULARGE_INTEGER;
struct _KTIMER;
enum _DMA_INTERRUPT_TYPE;
enum _INTERRUPT_TARGET_TYPE;
enum _HALP_EMERGENCY_LA_QUEUE_TYPE;
struct _RTL_BITMAP_EX;
struct _KTRAP_FRAME;
enum _WHEA_RECOVERY_CONTEXT_ERROR_TYPE;
struct _MI_DECAY_TIMER_LINKAGE;
struct _MI_DECAY_TIMER_LINK;
union _WHEA_ERROR_RECORD_HEADER_VALIDBITS;
enum _EXT_IOMMU_DEVICE_TYPE;
struct _KQUEUE;
struct _PCW_REGISTRATION;
enum SE_WS_APPX_SIGNATURE_ORIGIN;
enum _PS_MITIGATION_OPTION;
struct _KSCHEDULING_GROUP_POLICY;
enum _NT_PRODUCT_TYPE;
struct _MI_LDW_WORK_CONTEXT;
enum _ALTERNATIVE_ARCHITECTURE_TYPE;
struct _KDEVICE_QUEUE_ENTRY;
struct _WAIT_CONTEXT_BLOCK;
union _KEXECUTE_OPTIONS;
enum _TP_CALLBACK_PRIORITY;
enum _PP_NPAGED_LOOKASIDE_NUMBER;
enum _PCW_CALLBACK_TYPE;
struct _HAL_PMC_COUNTERS;
enum _EX_GEN_RANDOM_DOMAIN;
union _WHEA_ERROR_RECORD_SECTION_DESCRIPTOR_FLAGS;
enum _SYSTEM_DLL_TYPE;
union _WHEA_TIMESTAMP;
enum _IO_PRIORITY_HINT;
enum _MM_PAGE_ACCESS_TYPE;
struct _PO_IRP_QUEUE;
struct _XSTATE_CONTEXT;
struct _XSTATE_SAVE;
enum _PF_FILE_ACCESS_TYPE;
struct _PROCESSOR_NUMBER;
enum _HARDWARE_COUNTER_TYPE;
struct _COUNTER_READING;
struct _THREAD_PERFORMANCE_DATA;
enum wil_ReportingKind;
struct _SECURITY_QUALITY_OF_SERVICE;
struct _OBJECT_CREATE_INFORMATION;
enum wil_details_ServiceReportingKind;
enum wil_VariantReportingKind;
struct _MMINPAGE_FLAGS;
struct _DBGKD_READ_WRITE_IO64;
struct _TIME_FIELDS;
struct _RTL_TIME_ZONE_INFORMATION;
struct _RTL_DYNAMIC_TIME_ZONE_INFORMATION;
struct _SINGLE_LIST_ENTRY;
struct _KDPC;
struct _TIMEZONE_CHANGE_EVENT;
struct _EX_TIMEZONE_STATE;
enum wil_FeatureEnabledStateOptions;
struct _QUAD;
struct _OBJECT_HEADER;
enum wil_FeatureEnabledStateKind;
struct _INTERFACE;
enum wil_FeatureEnabledState;
enum wil_details_StagingConfigFeatureFields;
struct _DBGKD_SET_INTERNAL_BREAKPOINT32;
struct _JOB_NET_RATE_CONTROL;
enum wil_FeatureStore;
enum wil_FeatureVariantPayloadKind;
enum wil_FeatureChangeTime;
enum _RTL_FEATURE_CONFIGURATION_TYPE;
union _MCG_STATUS;
struct _MCI_STATUS_BITS_COMMON;
struct _MCI_STATUS_AMD_BITS;
struct _MCI_STATUS_INTEL_BITS;
union _MCI_STATUS;
struct _WHEA_AMD_EXTENDED_REGISTERS;
union _MCG_CAP;
struct _WHEA_XPF_MCA_SECTION;
enum wil_details_ServiceReportingOptions;
struct _FILE_STANDARD_INFORMATION;
union _KLOCK_ENTRY_BOOST_BITMAP;
enum wil_details_FeatureTestStateKind;
struct _KAPC;
enum wil_UsageReportingMode;
struct _XSAVE_AREA_HEADER;
struct _PERIODIC_CAPTURE_STATE_GUIDS;
enum _MMLISTS;
enum _MI_PFN_CACHE_ATTRIBUTE;
struct _SYSTEM_POWER_STATE_CONTEXT;
struct _IO_STACK_LOCATION;
union _POP_FX_PERF_FLAGS;
struct _DISALLOWED_GUIDS;
enum _MI_SYSTEM_VA_TYPE;
struct _KLOCK_ENTRY_LOCK_STATE;
struct _KLOCK_ENTRY;
enum _CM_LOAD_FAILURE_TYPE;
enum UoWActionType;
enum _SECURITY_OPERATION_CODE;
union _TIMELINE_BITMAP;
struct _THREAD_ENERGY_VALUES;
enum HSTORAGE_TYPE;
struct _IO_SECURITY_CONTEXT;
enum _CMP_FAILURE_INJECTION_POINT;
struct _DMA_TRANSFER_INFO_V2;
struct _HEAP_VS_SUBSEGMENT;
struct _XSAVE_FORMAT;
struct _CONTEXT;
struct _ETW_HASH_BUCKET;
enum _KHETERO_CPU_POLICY;
enum _PNP_DEVNODE_STATE;
struct _LUID;
struct _SECURITY_SUBJECT_CONTEXT;
struct _LUID_AND_ATTRIBUTES;
struct _INITIAL_PRIVILEGE_SET;
struct _PRIVILEGE_SET;
struct _UNICODE_STRING;
struct _ACCESS_STATE;
union _HEAP_LFH_SUBSEGMENT_DELAY_FREE;
struct _ETW_SOFT_RESTART_CONTEXT;
enum PROFILE_STATUS;
struct _PS_PROPERTY_SET;
enum _ARBITER_REQUEST_SOURCE;
enum _POWER_REQUEST_TYPE;
enum _POWER_REQUEST_TYPE_INTERNAL;
enum _DEVICE_RELATION_LEVEL;
struct _DEVICE_OBJECT_LIST_ENTRY;
enum _PEP_ACPI_RESOURCE_TYPE;
enum _GPIO_PIN_CONFIG_TYPE;
struct _GROUP_AFFINITY;
struct _RTL_BITMAP;
struct _ETW_REALTIME_CONSUMER;
enum _GPIO_PIN_IORESTRICTION_TYPE;
enum SYSTEM_POWER_CONDITION;
struct _DBGKD_QUERY_MEMORY;
struct _ETW_BUFFER_CONTEXT;
enum _ETW_BUFFER_STATE;
struct _ETW_REF_CLOCK;
struct _WMI_BUFFER_HEADER;
enum _SERVERSILO_STATE;
enum _OPENCOUNT_REASON;
union _POP_FX_DEVICE_STATUS;
enum RTLP_CSPARSE_BITMAP_STATE;
enum _RTLP_HP_ADDRESS_SPACE_TYPE;
struct _KEVENT;
struct _PO_DEVICE_NOTIFY;
struct _PO_IRP_MANAGER;
struct _PO_DIRECTED_DRIPS_STATE;
struct _DEVICE_NODE;
enum _RTLP_HP_LOCK_TYPE;
enum _HEAP_LFH_LOCKMODE;
struct _DBGKD_GET_VERSION32;
enum _TOKEN_TYPE;
struct _TOKEN_MANDATORY_POLICY;
struct _TOKEN_ACCESS_INFORMATION;
enum _HEAP_SEG_RANGE_TYPE;
enum _RTLP_HP_ALLOCATOR;
struct _KMUTANT;
enum _HEAP_FAILURE_TYPE;
enum _BLOB_ID;
enum _KWAIT_REASON;
enum _LOCK_OPERATION;
enum _IOP_PRIORITY_HINT;
enum _TRANSFER_TYPE;
enum _CREATE_FILE_TYPE;
struct _PNP_ASSIGN_RESOURCES_CONTEXT;
enum _ETW_RT_EVENT_LOSS;
enum ETW_COMPRESSION_RESUMPTION_MODE;
struct _KSEMAPHORE;
struct _POP_FX_WORK_POOL_ITEM;
struct _POP_FX_WORK_POOL;
struct _KTHREAD_COUNTERS;
enum _KPROFILE_SOURCE;
struct _MI_PROTOTYPE_PTES_NODE;
struct _MI_PER_SESSION_PROTOS;
enum _WNF_STATE_NAME_LIFETIME;
enum _WNF_DATA_SCOPE;
struct _X86_KTRAP_FRAME;
struct _DBGKP_ERROR_PORT;
enum _WNF_SUBSCRIPTION_STATE;
enum _IO_RATE_CONTROL_TYPE;
struct _SCSI_REQUEST_BLOCK;
struct _WNF_LOCK;
enum _JOBOBJECTINFOCLASS;
enum _OBJECT_INFORMATION_CLASS;
enum PPM_IDLE_BUCKET_TIME_TYPE;
enum _FILE_OBJECT_EXTENSION_TYPE;
enum _IO_SESSION_STATE;
struct _PEP_WORK_DEVICE_IDLE;
enum _KERNEL_STACK_LIMITS;
enum _PROCESS_SECTION_TYPE;
enum _POP_DIRECTED_DRIPS_PROBLEM_DEVICE_REASON;
struct _IO_REMOVE_LOCK_COMMON_BLOCK;
struct _IO_REMOVE_LOCK;
enum FEATURE_CHANGE_TIME;
enum _EX_HEAP_TYPE;
struct _CM_INTENT_LOCK;
enum _OB_OPEN_REASON;
enum _VRF_TRIAGE_CONTEXT;
struct _BITMAP_RANGE;
enum _RTL_FEATURE_ENABLED_STATE_OPTIONS;
enum _POP_PEP_NOTIFY_DEVICE_DSTATE_REASON;
enum KTM_STATE;
enum _RTLP_HP_MEMORY_TYPE;
struct _HEAP_LFH_FAST_REF;
enum _DEVPROP_OPERATOR;
struct _PEP_WORK_ACTIVE_COMPLETE;
enum _ARBITER_RESULT;
enum _KWAIT_BLOCK_STATE;
enum _VI_DEADLOCK_RESOURCE_TYPE;
enum _SYSTEM_INFORMATION_CLASS;
struct _KSPIN_LOCK_QUEUE;
struct _KLOCK_QUEUE_HANDLE;
enum _RTL_FEATURE_CONFIGURATION_PRIORITY;
enum _MI_ALTERNATE_LOCK_VA_TYPE;
enum _MI_MIRROR_BITMAP_TYPES;
struct _CI_NGEN_PATHS;
enum _POP_SLEEP_CHECKPOINT;
enum PDC_CS_PHASE;
enum _DOMAIN_CONFIGURATION_ARCH;
enum _MI_MEMORY_EVENT_TYPES;
enum JOB_OBJECT_IO_RATE_CONTROL_FLAGS;
struct _PEP_WORK_COMPLETE_PERF_STATE;
enum _KCONTINUE_TYPE;
enum _KOBJECTS;
enum _POP_SLEEP_CHECKPOINT_STATUS;
enum JOB_OBJECT_NET_RATE_CONTROL_FLAGS;
struct _EX_RUNDOWN_REF;
struct _OB_HANDLE_REVOCATION_BLOCK;
enum PDC_RESOURCE;
enum TlgIn_t;
enum _DMA_SPEED;
enum _BUGCHECK_RECOVERY_LOG_EVENT;
enum _POWER_INFORMATION_LEVEL_INTERNAL;
enum _KTRANSACTION_STATE;
enum _PS_STD_HANDLE_STATE;
struct _ALPC_HANDLE_TABLE;
struct _ALPC_COMMUNICATION_INFO;
enum _MEMORY_PHYSICAL_CONTIGUITY_UNIT_STATE;
struct DOCK_INTERFACE;
enum _FUNCTION_TABLE_TYPE;
enum _PS_WAKE_REASON;
enum _RTL_MEMORY_TYPE;
enum _PO_MODERN_SLEEP_ACTION;
struct _TRACE_ENABLE_INFO;
enum wil_FeatureStage;
enum _KHETERO_RUNNING_TYPE;
struct _PS_JOB_WAKE_INFORMATION;
enum _MI_SLAB_ALLOCATOR_PROTECTION;
enum _CONFIGURATION_TYPE;
enum _KTHREAD_TAG;
struct _ETW_SILO_TRACING_BLOCK;
enum _ETW_PERFECT_HASH_FUNCTION_TYPE;
enum _MI_ENCLAVE_TYPE;
enum _POWER_INFORMATION_LEVEL_INTERNAL_TTMTCAPI;
struct _PROCESS_DISK_COUNTERS;
enum _TYPE_OF_MEMORY;
enum _VRF_RULE_CLASS_ID;
enum _PEP_WORK_TYPE;
struct _DBGKD_GET_CONTEXT;
enum _KE_WAKE_SOURCE_TYPE;
struct _GEN_ADDR;
enum _MI_WORKING_SET_TYPE;
struct LIST_ENTRY64;
enum _KTIMER2_COLLECTION_INDEX;
struct _HEAP_UNPACKED_ENTRY;
struct _HEAP_EXTENDED_ENTRY;
struct _HEAP_ENTRY;
struct _PERFINFO_GROUPMASK;
enum _SKSERVICE;
struct PEPHANDLE__;
enum _ETW_NOTIFICATION_TYPE;
enum _PS_PROTECTED_TYPE;
union _SLIST_HEADER;
struct _RTL_LOOKASIDE;
enum _BUS_DATA_TYPE;
enum KD_CALLBACK_ACTION;
enum _HAL_CLOCK_TIMER_MODE;
enum _BOOT_ENTROPY_SOURCE_RESULT_CODE;
enum _HAL_PROCESSOR_STAT_TYPE;
enum _ETW_PERIODIC_TIMER_STATE;
struct _KTMNOTIFICATION_PACKET;
enum _MI_CFG_BITMAP_TYPE;
enum _PROCESS_VA_TYPE;
struct _DMA_TRANSFER_INFO_V1;
struct _DMA_TRANSFER_INFO;
struct LIST_ENTRY32;
enum _PS_RESOURCE_TYPE;
enum _HEAP_SEGMGR_LARGE_PAGE_POLICY;
enum _BOOT_ENTROPY_SOURCE_ID;
struct _BOOT_ENTROPY_SOURCE_LDR_RESULT;
struct _BOOT_ENTROPY_LDR_RESULT;
enum _PO_FX_PERF_STATE_TYPE;
struct _DBGKD_GET_INTERNAL_BREAKPOINT32;
struct _KENTROPY_TIMING_STATE;
enum _PERFINFO_KERNELMEMORY_USAGE_TYPE;
enum FEATURE_ENABLED_STATE;
struct _INTERRUPT_LINE;
struct _RTL_QUERY_REGISTRY_TABLE;
enum _MI_MEMORY_HIGHLOW;
struct _HEAP_VS_DELAY_FREE_CONTEXT;
struct _HEAP_SUBALLOCATOR_CALLBACKS;
struct _RTL_HP_VS_CONFIG;
struct _HEAP_VS_CONTEXT;
enum _PS_PROTECTED_SIGNER;
enum POWER_POLICY_DEVICE_TYPE;
struct _HEAP_OPPORTUNISTIC_LARGE_PAGE_STATS;
struct _KTIMER_EXPIRATION_TRACE;
enum _WORKING_SET_TYPE;
struct _SEP_LOGON_SESSION_REFERENCES;
enum _ETW_STRING_TOKEN_TYPE;
enum _POP_FX_WORK_POOL_QUEUE;
enum _PROCESSOR_CACHE_TYPE;
struct _CACHE_DESCRIPTOR;
enum _POP_SYSTEM_IDLE_EVENT_TYPE;
enum _MI_DYNAMICBASE_BITMAP;
struct _PO_POWER_PLANE_PROFILE;
struct _POP_DEVICE_POWER_PROFILE;
enum PS_CREATE_STATE;
enum _KTHREAD_PPM_POLICY;
struct _MDL;
struct _SEP_SILOSTATE;
enum _KPROCESS_PPM_POLICY;
struct _RTL_AVL_TREE;
struct _MMSESSION;
enum _MI_SHARED_USER_PAGE_TYPES;
struct RTL_HP_ENV_HANDLE;
struct _RTL_HEAP_MEMORY_LIMIT_DATA;
union _RTL_RUN_ONCE;
struct _RTL_HP_SEG_ALLOC_POLICY;
struct _HEAP_RUNTIME_MEMORY_STATS;
struct _HEAP_SEG_CONTEXT;
struct _RTL_HP_LFH_CONFIG;
struct _HEAP_LFH_SUBSEGMENT_STAT;
union _HEAP_LFH_SUBSEGMENT_STATS;
struct _HEAP_LFH_CONTEXT;
struct _SEGMENT_HEAP;
struct _SID_AND_ATTRIBUTES_HASH;
enum _TlgBlob_t;
enum _KTHREAD_STATE;
struct _PEBS_DS_SAVE_AREA64;
enum _CM_DIRTY_VECTOR_OPERATION;
struct _ALPC_HANDLE_ENTRY;
enum _SYSTEM_PROCESS_CLASSIFICATION;
struct _FILE_NETWORK_OPEN_INFORMATION;
struct _HANDLE_REVOCATION_INFO;
struct _OB_EXTENDED_USER_INFO;
struct _OBJECT_FOOTER;
enum _PNP_DEVICE_ACTION_REQUEST;
struct _RTL_CHASH_ENTRY;
enum _PO_HIBER_FORCE_DISABLE_REASON;
struct _MM_PAGED_POOL_INFO;
enum _WOW64_SHARED_INFORMATION;
struct _MMPTE_HARDWARE;
struct _MMPTE_PROTOTYPE;
struct _MMPTE_SOFTWARE;
struct _MMPTE_TIMESTAMP;
struct _MMPTE_TRANSITION;
struct _MMPTE_SUBSECTION;
struct _MMPTE_LIST;
struct _SLIST_ENTRY;
struct _ETW_APC_ENTRY;
enum _MI_KSTACK_TYPE;
enum _ETW_GUID_TYPE;
struct _POP_FX_ACTIVE_TIME_ACCOUNTING;
struct _POP_FX_ACCOUNTING;
struct _KTIMER_TABLE_ENTRY;
enum _POP_DEEP_SLEEP_DISENGAGE_REASON;
enum _KI_CALLBACK;
struct _KSHARED_READY_QUEUE;
enum INTERRUPT_CONNECTION_TYPE;
enum HAL_APIC_DESTINATION_MODE;
struct _tlgProviderMetadata_t;
struct _RTLP_HP_METADATA_HEAP_CTX;
struct _MMPTE;
struct _ETW_STACK_TRACE_BLOCK;
enum _KWAIT_STATE;
enum _MI_SUBVAD_LISTS;
struct _ASSEMBLY_STORAGE_MAP;
struct _LAZY_WRITER;
enum _MI_ASSIGNED_REGION_TYPES;
enum _POLICY_AUDIT_EVENT_TYPE;
enum KD_NAMESPACE_ENUM;
enum _PO_CS_DEVICE_NOTIFICATION_TYPE;
enum _MI_VAD_64K_TYPES;
struct _tlgProvider_t;
enum _EXQUEUEINDEX;
struct _EXT_SET_PARAMETERS_V0;
enum _KPROCESS_STATE;
enum _KENLISTMENT_STATE;
enum _MACHINE_CHECK_NESTING_LEVEL;
struct _ETW_FILTER_STRING_TOKEN_ELEMENT;
enum _ADD_DRIVER_STAGE;
enum _INVPCID_TYPE;
enum TlgOut_t;
enum _MI_IO_PFN_TYPE;
enum _PNP_REBALANCE_REASON;
enum _PNP_REBALANCE_FAILURE;
enum _PNP_DEVNODE_QUERY_REBALANCE_VETO_REASON;
struct _PNP_RESOURCE_CONFLICT_TRACE_CONTEXT;
struct _PNP_REBALANCE_TRACE_CONTEXT;
enum _LDR_DDAG_STATE;
enum _TRACE_INFORMATION_CLASS;
enum _MI_PARTITION_THREAD;
enum _CM_SHARE_DISPOSITION;
struct _ETW_FILTER_STRING_TOKEN;
enum _PERFINFO_MM_STAT;
enum _MI_WRITE_TYPES;
union _PPM_POLICY_SETTINGS_MASK;
struct _AGGREGATED_PAYLOAD_FILTER;
struct _ETW_PAYLOAD_FILTER;
enum _MI_SLAB_ALLOCATOR_TYPE;
enum PDCCLIENTID;
enum SLEEPSTUDY_SPM_SCENARIO_CS_EXIT;
struct _DEVICE_NODE_IOMMU_EXTENSION;
enum PROFILE_DEPARTURE_STYLE;
enum LSA_FOREST_TRUST_RECORD_TYPE;
struct _EVENT_FILTER_LEVEL_KW;
enum _PROC_HYPERVISOR_STATE;
enum _KHETERO_CPU_QOS;
struct _OBP_SYSTEM_DOS_DEVICE_STATE;
struct _OBJECT_NAMESPACE_LOOKUPTABLE;
struct _OBP_SILODRIVERSTATE;
struct _SEP_RM_LSA_CONNECTION_STATE;
struct _WNF_SILODRIVERSTATE;
struct _DBGK_SILOSTATE;
struct _ESERVERSILO_GLOBALS;
enum _KRESOURCEMANAGER_STATE;
enum _THREAD_WORKLOAD_CLASS;
struct _POP_COMPONENT_POWER_PROFILE;
enum _SEP_CACHED_HANDLES_ENTRY_TYPE;
enum _POP_DEVICE_IDLE_TYPE;
enum _MI_CROSS_PARTITION_CHARGE_TYPE;
enum _HV_EXT_EPF_MODE;
struct _PPM_ENGINE_SETTINGS;
struct _EPROCESS_VALUES;
struct _GENERAL_LOOKASIDE;
struct _OBJECT_DIRECTORY_ENTRY;
enum _POP_POWER_ACTION_WATCHDOG_STATE;
struct _KAFFINITY_EX;
union _KSTACK_COUNT;
struct _KPROCESS;
enum _SYSTEM_FEATURE_CONFIGURATION_SECTION_TYPE;
enum _PS_ATTRIBUTE_NUM;
enum _PO_FX_PERF_STATE_UNIT;
struct _PO_FX_COMPONENT_PERF_SET;
enum _PPM_PERF_QOS_DISABLE_REASON;
enum _MI_VAD_ALLOCATION_CELL_TYPE;
enum _ConnectionResourceConsumerDesc;
enum _PROCESS_TERMINATE_REQUEST_REASON;
struct _PROC_PERF_CHECK_SNAP;
union _WHEA_NOTIFICATION_FLAGS;
struct _WHEA_NOTIFICATION_DESCRIPTOR;
enum _REQUESTER_TYPE;
enum ReplacesCorHdrNumericDefines;
struct _PROC_PERF_HISTORY_ENTRY;
struct _PROC_PERF_HISTORY;
enum PDC_ACTIVITY_TYPE;
enum _MI_INPAGE_SUPPORT_TYPES;
struct _WHEA_IPF_CPE_DESCRIPTOR;
enum _POP_IO_STATUS;
enum _LDR_DLL_LOAD_REASON;
enum _RTL_GENERIC_COMPARE_RESULTS;
enum _FAULT_INFORMATION_ARCH;
struct _RTL_SPLAY_LINKS;
enum _MI_AVAILABLE_PAGE_WAIT_TYPES;
enum _ETW_HEADER_TYPE;
struct _PPM_FFH_THROTTLE_STATE_INFO;
enum _PROCESSOR_PRESENCE;
struct _SUPPORTED_RANGE;
struct _SUPPORTED_RANGES;
enum _ARBITER_ACTION;
struct _PROC_PERF_QOS_CLASS_POLICY;
struct _PERF_CONTROL_STATE_SELECTION;
struct _PROC_PERF_DOMAIN;
struct _NT_TIB;
struct _KPCR;
enum _FAULT_INFORMATION_ARM64_TYPE;
enum _KTRANSACTION_OUTCOME;
enum _PNP_WATCHDOG_TYPE;
enum _DUMP_EVENTS;
enum _CONFIGURATION_CLASS;
enum _TAG_UNNAMED_1;
enum _FS_FILTER_SECTION_SYNC_TYPE;
union _KIDTENTRY64;
struct _CM_KCB_UOW;
struct _STRING;
struct _TXN_PARAMETER_BLOCK;
struct _DEVICE_FLAGS;
struct _CONFIGURATION_COMPONENT;
struct _CONFIGURATION_COMPONENT_DATA;
struct _KFLOATING_SAVE;
struct _FAST_MUTEX;
union _AER_BRIDGE_DESCRIPTOR_FLAGS;
struct _WHEA_AER_BRIDGE_DESCRIPTOR;
struct _GENERAL_LOOKASIDE_POOL;
struct _LOOKASIDE_LIST_EX;
struct _SHARED_CACHE_MAP_LIST_CURSOR;
struct _DIRTY_PAGE_STATISTICS;
struct _DIRTY_PAGE_THRESHOLDS;
struct _CC_PARTITION;
struct _MM_SESSION_SPACE_FLAGS;
struct _KDEVICE_QUEUE;
struct _DEVICE_OBJECT;
struct _CLIENT_ID32;
struct _EXCEPTION_RECORD;
struct _NPAGED_LOOKASIDE_LIST;
struct _HALP_ALLOC_CONTEXT;
struct _PAGED_LOOKASIDE_LIST;
struct _EXT_DELETE_PARAMETERS;
struct _SECTION_OBJECT_POINTERS;
struct _SECONDARY_INTERRUPT_LINE_STATE;
struct _EX_FAST_REF;
struct _SE_AUDIT_PROCESS_CREATION_INFO;
struct _MMSUPPORT_FLAGS;
struct _MMSUPPORT_INSTANCE;
struct _MMSUPPORT_SHARED;
struct _MMSUPPORT_FULL;
struct _ALPC_PROCESS_CONTEXT;
struct _PS_PROTECTION;
union _PS_INTERLOCKED_TIMER_DELAY_VALUES;
struct _WNF_STATE_NAME;
struct _JOBOBJECT_WAKE_FILTER;
struct _PS_PROCESS_WAKE_INFORMATION;
struct _PS_DYNAMIC_ENFORCED_ADDRESS_RANGES;
struct _EPROCESS;
struct _OWNER_ENTRY;
struct _ERESOURCE;
struct _CURDIR;
struct _RTL_DRIVE_LETTER_CURDIR;
struct _RTL_USER_PROCESS_PARAMETERS;
struct _KSCHEDULING_GROUP;
struct _OBJECT_HEADER_PROCESS_INFO;
struct _CM_PARTIAL_RESOURCE_DESCRIPTOR;
struct _CM_PARTIAL_RESOURCE_LIST;
struct _CM_FULL_RESOURCE_DESCRIPTOR;
struct _CM_RESOURCE_LIST;
struct _KDPC_LIST;
struct _KDPC_DATA;
struct _PPM_COORDINATED_SELECTION;
struct _DYNAMIC_FUNCTION_TABLE;
struct _PPM_SELECTION_STATISTICS;
struct _PROC_IDLE_STATE_BUCKET;
struct _PROC_IDLE_STATE_ACCOUNTING;
struct _DRIVER_EXTENSION;
struct _MMWSL_INSTANCE;
struct _DEFERRED_WRITE;
struct _PROCESSOR_IDLE_CONSTRAINTS;
struct _PROCESSOR_IDLE_PREPARE_INFO;
union _KWAIT_STATUS_REGISTER;
struct _KWAIT_BLOCK;
struct _KTHREAD;
struct _CLIENT_ID;
union _PS_CLIENT_SECURITY_CONTEXT;
struct _ETHREAD;
struct _WNF_NODE_HEADER;
struct _WNF_STATE_NAME_STRUCT;
struct _WNF_STATE_NAME_REGISTRATION;
struct _WNF_NAME_INSTANCE;
struct _POP_FX_PERF_SET;
struct _flags;
struct _KHETERO_PROCESSOR_SET;
union _KQOS_GROUPING_SETS;
struct _KNODE;
union _ENERGY_STATE_DURATION;
struct _TOKEN_AUDIT_POLICY;
struct _SEP_AUDIT_POLICY;
struct _KDESCRIPTOR;
struct _KSPECIAL_REGISTERS;
struct _HANDLE_TABLE_ENTRY_INFO;
struct _SK_CRASH_MODULE;
struct _SK_CRASH_STACK_FRAME;
struct _SK_CRASH_MINIDUMP;
struct _EWOW64PROCESS;
struct _XSAVE_AREA;
struct _MI_SUB64K_FREE_RANGES;
struct _UMS_CONTROL_BLOCK;
union _XPF_MCE_FLAGS;
union _XPF_MC_BANK_FLAGS;
struct _WHEA_XPF_MC_BANK_DESCRIPTOR;
struct _WHEA_XPF_MCE_DESCRIPTOR;
struct _WHEA_XPF_CMC_DESCRIPTOR;
struct _WHEA_XPF_NMI_DESCRIPTOR;
struct _WHEA_IPF_MCA_DESCRIPTOR;
struct _WHEA_IPF_CMC_DESCRIPTOR;
union _AER_ROOTPORT_DESCRIPTOR_FLAGS;
struct _WHEA_AER_ROOTPORT_DESCRIPTOR;
struct _WHEA_GENERIC_ERROR_DESCRIPTOR;
struct _WHEA_GENERIC_ERROR_DESCRIPTOR_V2;
struct _WHEA_DEVICE_DRIVER_DESCRIPTOR;
struct _RTL_UMS_CONTEXT;
struct _KUMS_CONTEXT_HEADER;
struct _PO_PROCESS_ENERGY_CONTEXT;
struct _KEXCEPTION_FRAME;
struct _PROC_FEEDBACK;
struct _POOL_TRACKER_TABLE;
struct _EPROCESS_QUOTA_BLOCK;
union _KPRCBFLAG;
struct _KPROCESSOR_STATE;
struct _PP_LOOKASIDE_LIST;
struct _KSTATIC_AFFINITY_BLOCK;
struct _KTIMER_TABLE_STATE;
struct _KTIMER_TABLE;
struct _KGATE;
struct _PROC_IDLE_POLICY;
union _PPM_IDLE_SYNCHRONIZATION_STATE;
struct _PROC_IDLE_SNAP;
struct _PROC_PERF_CHECK_CONTEXT;
struct _PROCESSOR_POWER_STATE;
struct _FILESYSTEM_DISK_COUNTERS;
struct _IOP_IRP_STACK_PROFILER;
struct _KSECURE_FAULT_INFORMATION;
struct _MACHINE_FRAME;
struct _MACHINE_CHECK_CONTEXT;
struct _KREQUEST_PACKET;
struct _REQUEST_MAILBOX;
struct _KPRCB;
struct _ALPC_COMPLETION_PACKET_LOOKASIDE_ENTRY;
struct _RTL_HASH_TABLE;
struct _PNP_REPLACE_PROCESSOR_LIST;
struct _HALP_EMERGENCY_LA_QUEUE_ENTRY;
struct _SCATTER_GATHER_ELEMENT;
struct _SCATTER_GATHER_LIST;
struct _ADAPTER_OBJECT;
struct _PORT_MESSAGE;
struct _HAL_DP_REPLACE_PARAMETERS;
struct _PPM_SELECTION_MENU;
struct _PPM_VETO_ACCOUNTING;
struct _PPM_IDLE_STATE;
struct _PPM_IDLE_STATES;
struct _WORK_QUEUE_ENTRY;
struct _TOKEN_PRIVILEGES;
struct _POP_FX_PROVIDER;
struct _PROCESSOR_IDLE_DEPENDENCY;
struct _ETW_PMC_SUPPORT;
struct _KSYSTEM_TIME;
struct _SILO_USER_SHARED_DATA;
union _HEAP_VS_CHUNK_HEADER_SIZE;
struct _HEAP_VS_CHUNK_HEADER;
struct _HEAP_VS_CHUNK_FREE_HEADER;
struct _OB_EXTENDED_PARSE_PARAMETERS;
struct _PERFINFO_PPM_STATE_SELECTION;
struct _PPM_SELECTION_MENU_ENTRY;
struct _PPM_SELECTION_DEPENDENCY;
struct _OBJECT_ATTRIBUTES;
struct _PPM_VETO_ENTRY;
struct _TOKEN_SOURCE;
struct _TOKEN_CONTROL;
struct _SECURITY_CLIENT_CONTEXT;
struct _PROC_IDLE_ACCOUNTING;
struct _EXP_LICENSE_STATE;
struct _IO_ADAPTER_CRYPTO_PARAMETERS;
struct _COPY_INFORMATION;
struct _IOP_IRP_EXTENSION;
struct _PROC_FEEDBACK_COUNTER;
struct _HEAP_LFH_SUBSEGMENT_OWNER;
struct _HEAP_LFH_AFFINITY_SLOT;
struct _PROC_PERF_CONSTRAINT;
struct _NUMA_MEMORY_RANGE;
struct _LOADER_RESET_REASON;
struct _SEP_SID_VALUES_BLOCK;
struct _ETW_LAST_ENABLE_INFO;
struct _JOB_ACCESS_STATE;
struct _HEAP_SEGMENT;
struct _IO_MINI_COMPLETION_PACKET_USER;
struct _PROC_PERF_CHECK;
struct _PROC_PERF_LOAD;
struct _INTERRUPT_TARGET;
struct _INTERRUPT_LINE_STATE;
struct _PPM_CONCURRENCY_ACCOUNTING;
struct _POP_FX_DRIVER_CALLBACKS;
struct _POP_FX_WORK_ORDER;
struct _POP_FX_DRIPS_WATCHDOG_CONTEXT;
struct _POP_FX_WORK_ORDER_WATCHDOG_INFO;
struct _POP_FX_DEVICE_DIRECTED_TRANSITION_STATE;
struct _POP_FX_DEVICE;
struct _IO_STATUS_BLOCK;
struct _IRP;
struct _ALPC_MESSAGE_ATTRIBUTES;
struct _AUTHZBASEP_CLAIM_ATTRIBUTES_COLLECTION;
struct _STRING32;
struct _DRIVER_OBJECT;
struct _IO_CLIENT_EXTENSION;
struct _KIST_LINK_FRAME;
union _FS_FILTER_PARAMETERS;
struct _FS_FILTER_CALLBACK_DATA;
struct _INTERRUPT_HT_INTR_INFO;
struct _FILE_OBJECT;
struct _VPB;
struct _IO_COMPLETION_CONTEXT;
struct _KALPC_REGION;
struct _FS_FILTER_SECTION_SYNC_OUTPUT;
struct _DESCRIPTION_HEADER;
struct _RSDT_32;
struct _OBJECT_DIRECTORY;
struct _FAST_IO_DISPATCH;
struct _FADT;
struct _PEP_WORK_ACPI_NOTIFY;
struct _CUSTOM_SYSTEM_EVENT_TRIGGER_CONFIG;
struct _EVENT_DESCRIPTOR;
union _PEP_ACPI_RESOURCE_FLAGS;
struct _PEP_ACPI_SPB_RESOURCE;
struct _PEP_ACPI_SPB_UART_RESOURCE;
struct _FILE_BASIC_INFORMATION;
struct _HANDLE_TRACE_DB_ENTRY;
struct _EXHANDLE;
union _HANDLE_TABLE_ENTRY;
struct _ACTIVATION_CONTEXT;
struct _DBGKD_SET_SPECIAL_CALL32;
struct _OBJECT_NAME_INFORMATION;
struct _LOG_HANDLE_CONTEXT;
struct _VOLUME_CACHE_MAP;
struct _POP_FX_LOG_ENTRY;
struct _INTERRUPT_FUNCTION_TABLE;
struct _CACHE_UNINITIALIZE_EVENT;
struct _WHEAP_INFO_BLOCK;
union _PPM_COORDINATED_SYNCHRONIZATION;
struct _PPM_PLATFORM_STATE;
union _KGDTENTRY64;
union _WHEA_XPF_PROCESSOR_ERROR_SECTION_VALIDBITS;
struct _WHEA_XPF_PROCESSOR_ERROR_SECTION;
struct DEBUG_MEMORY_REQUIREMENTS;
struct _COMPRESSED_DATA_INFO;
struct _OBJECT_HANDLE_COUNT_ENTRY;
struct _OBJECT_HEADER_HANDLE_INFO;
struct _INVERTED_FUNCTION_TABLE_ENTRY;
struct _ARM64_DBGKD_CONTROL_SET;
struct _PNP_WATCHDOG;
struct _PO_NOTIFY_ORDER_LEVEL;
struct _POP_FX_DEPENDENT;
struct _IO_TIMER;
struct _KIST_BASE_FRAME;
union _WHEA_ERROR_RECORD_HEADER_FLAGS;
struct _DEVOBJ_EXTENSION;
struct _DEVICE_OBJECT_POWER_EXTENSION;
struct _THERMAL_COOLING_INTERFACE;
struct _POP_COOLING_EXTENSION;
struct _ETW_BUFFER_QUEUE;
struct _HANDLE_TRACE_DEBUG_INFO;
struct _DBGKD_SET_SPECIAL_CALL64;
struct _HEAP_VS_UNUSED_BYTES_INFO;
struct _IO_DRIVER_CREATE_CONTEXT;
struct _NAMED_PIPE_CREATE_PARAMETERS;
struct _MAILSLOT_CREATE_PARAMETERS;
struct _DBGKD_READ_MEMORY32;
struct _DBGKD_WRITE_MEMORY32;
struct _DBGKD_READ_MEMORY64;
struct _DBGKD_WRITE_MEMORY64;
struct _DBGKD_SET_CONTEXT;
struct _DBGKD_WRITE_BREAKPOINT32;
struct _DBGKD_RESTORE_BREAKPOINT;
struct _DBGKD_CONTINUE;
struct _X86_DBGKD_CONTROL_SET;
struct _IA64_DBGKD_CONTROL_SET;
struct _ARM_DBGKD_CONTROL_SET;
struct _PPC_DBGKD_CONTROL_SET;
struct _DBGKD_ANY_CONTROL_SET;
struct _DBGKD_CONTINUE2;
struct _DBGKD_READ_WRITE_IO32;
struct _DBGKD_READ_WRITE_IO_EXTENDED32;
struct _DBGKD_QUERY_SPECIAL_CALLS;
struct _DBGKD_BREAKPOINTEX;
struct _DBGKD_READ_WRITE_MSR;
struct _DBGKD_SEARCH_MEMORY;
struct _DBGKD_CONTEXT_EX;
struct _RELATION_LIST;
struct _VF_SUSPECT_DRIVER_ENTRY;
struct _HEAP_STOP_ON_TAG;
struct _FILE_GET_QUOTA_INFORMATION;
struct _MI_CACHED_PTE;
struct _MI_CACHED_PTES;
struct _EXCEPTION_RECORD32;
struct _DBGKM_EXCEPTION32;
struct _MI_SYSTEM_PTE_TYPE;
struct _HANDLE_TABLE_FREE_LIST;
struct _DEVICE_CAPABILITIES;
struct _STACK_TABLE;
struct _VF_KE_CRITICAL_REGION_TRACE;
struct _IO_RESOURCE_REQUIREMENTS_LIST;
struct _XSTATE_FEATURE;
struct _XSTATE_CONFIGURATION;
struct _KUSER_SHARED_DATA;
struct _POWER_SEQUENCE;
struct _PLATFORM_INTERRUPT;
struct _MMPFNLIST;
struct _MI_AVAILABLE_PAGE_WAIT_STATES;
struct _MI_SLAB_ALLOCATOR_CONTEXT;
struct _MI_PARTITION_PAGE_LISTS;
struct _HIVE_WAIT_PACKET;
struct _POP_IRP_DATA;
struct _TRUSTLET_COLLABORATION_ID;
struct _POP_FX_PLUGIN;
struct _TRUSTLET_MAILBOX_KEY;
struct _DEVICE_RELATIONS;
struct _PNP_DEVICE_EVENT_ENTRY;
union _WHEA_PROCESSOR_GENERIC_ERROR_SECTION_VALIDBITS;
struct _WDT_HANDLE;
union _INVPCID_DESCRIPTOR;
struct _CM_UOW_SET_VALUE_KEY_DATA;
struct _DEVICE_OBJECT_LIST;
struct _MMSECURE_FLAGS;
struct _MMADDRESS_LIST;
struct _MI_LARGEPAGE_VAD_INFO;
struct _MI_PHYSICAL_VIEW;
struct _MI_VAD_EVENT_BLOCK;
struct _PROCLOCALSAPIC;
struct _PEP_WORK_IDLE_STATE;
struct _PEP_WORK_DEVICE_POWER;
struct _PEP_WORK_POWER_CONTROL;
struct _PEP_WORK_COMPLETE_IDLE_STATE;
struct _PEP_WORK_ACPI_EVALUATE_CONTROL_METHOD_COMPLETE;
struct _PEP_WORK_INFORMATION;
struct POHANDLE__;
struct _MMPFNENTRY1;
struct _MMPFNENTRY3;
struct _ACPI_METHOD_ARGUMENT_V1;
struct _WHEA_RECOVERY_CONTEXT;
struct _DMA_OPERATIONS;
struct _PEP_CRASHDUMP_INFORMATION;
union _POP_FX_COMPONENT_FLAGS;
struct _POP_FX_COMPONENT;
struct _POP_FX_IDLE_STATE;
struct _POP_FX_PERF_INFO;
union _WHEAP_ERROR_RECORD_WRAPPER_FLAGS;
struct _PO_FX_PERF_STATE_CHANGE;
union _WHEA_REVISION;
struct _WHEA_ERROR_RECORD_HEADER;
union _WHEA_ERROR_RECORD_SECTION_DESCRIPTOR_VALIDBITS;
struct _WHEA_ERROR_RECORD_SECTION_DESCRIPTOR;
struct _WHEA_ERROR_RECORD;
struct _WHEAP_ERROR_RECORD_WRAPPER;
struct _PO_FX_PERF_STATE;
struct _CM_PATH_HASH;
struct _CM_KEY_HASH;
struct _CHILD_LIST;
struct _CM_KEY_CONTROL_BLOCK;
struct _POP_POWER_PLANE;
struct _PROCLOCALAPIC;
struct _PEBS_DS_SAVE_AREA32;
struct _PEBS_DS_SAVE_AREA;
struct _PROCESSOR_PROFILE_CONTROL_AREA;
struct _MMEXTEND_INFO;
struct _RTL_DYNAMIC_HASH_TABLE_CONTEXT;
struct wil_details_StagingConfig;
struct _TERMINATION_PORT;
struct _JOB_RATE_CONTROL_HEADER;
struct _PS_IO_CONTROL_ENTRY;
union _JOBOBJECT_ENERGY_TRACKING_STATE;
struct _EJOB;
struct _MMSECTION_FLAGS2;
struct _EXT_IOMMU_DEVICE_ID_TEST;
struct _ECP_LIST;
struct _JOB_NOTIFICATION_INFORMATION;
struct _REGISTERED_INTERRUPT_CONTROLLER;
struct _JOB_CPU_RATE_CONTROL;
struct _DEVICE_MAP;
struct _ACTIVATION_CONTEXT_DATA;
struct _SID_AND_ATTRIBUTES;
struct _AUTHZBASEP_SECURITY_ATTRIBUTES_INFORMATION;
struct _MI_WRITE_MODES;
struct _ETW_GUID_ENTRY;
struct _ETW_PRIV_HANDLE_DEMUX_TABLE;
struct _ETW_COUNTERS;
struct _ETW_SYSTEM_LOGGER;
struct _ETW_SYSTEM_LOGGER_SETTINGS;
struct _ETW_SILODRIVERSTATE;
struct _ETW_FILTER_HEADER;
struct _ETW_FILTER_PID;
struct _HARDWARE_PTE;
struct _MI_WRITE_CALIBRATION;
struct _MI_PARTITION_ZEROING;
struct _ETW_PERFECT_HASH_FUNCTION;
struct _ETW_FILTER_EVENT_NAME_DATA;
struct _PEB_LDR_DATA;
struct _EVENT_FILTER_HEADER;
union _MM_PAGE_ACCESS_INFO_FLAGS;
struct _EX_RUNDOWN_REF_CACHE_AWARE;
struct _ETW_PARTITION_CONTEXT;
struct _WMI_LOGGER_CONTEXT;
struct _INVERTED_FUNCTION_TABLE;
struct wil_StagingConfig;
struct _IMAGE_RUNTIME_FUNCTION_ENTRY;
struct _ETW_STACK_CACHE;
struct _PROCESS_ENERGY_VALUES;
struct _PROCESS_ENERGY_VALUES_EXTENSION;
struct _PROCESS_EXTENDED_ENERGY_VALUES;
struct _ETW_IPT_SUPPORT;
struct _ETW_HW_TRACE_EXT_INTERFACE;
struct _ENODE;
struct _PAGEFAULT_HISTORY;
struct PERIODIC_CAPTURE_STATE_CONTEXT;
struct _EX_TIMER;
struct _PCAT_FIRMWARE_INFORMATION;
struct _ETW_EVENT_CALLBACK_CONTEXT;
struct _MMSUBSECTION_FLAGS;
struct _VIRTUAL_EFI_RUNTIME_SERVICES;
struct _EPARTITION;
struct _EX_WNF_SUBSCRIPTION;
union _EXT_IOMMU_DEVICE_ID_FLAGS;
struct _AWEINFO;
struct _WNF_SCOPE_MAP_ENTRY;
struct _WNF_SCOPE_MAP;
struct _MI_PARTITION_FLAGS;
struct _MI_PARTITION_CORE;
struct _MMPAGE_FILE_EXPANSION_FLAGS;
struct _MMPAGE_FILE_EXPANSION;
struct _MMMOD_WRITER_LISTHEAD;
struct _MI_RESTRICTED_MODWRITES;
struct _MI_PARTITION_MODWRITES;
struct _MI_PARTITION_STORES;
struct _MMDEREFERENCE_SEGMENT_HEADER;
struct _MI_PTE_CHAIN_HEAD;
struct _MI_PARTITION_SEGMENTS;
struct _MI_PARTITION_COMMIT;
struct _MI_COMBINE_WORKITEM;
struct _MI_COMBINE_PAGE_LISTHEAD;
struct _MI_PAGE_COMBINE_STATISTICS;
struct _MI_PAGE_COMBINING_SUPPORT;
struct _MMWORKING_SET_EXPANSION_HEAD;
struct _MI_PAGEFILE_TRACES;
struct _MI_VISIBLE_PARTITION;
struct _MI_PARTITION;
struct _WNF_SCOPE_INSTANCE;
struct _MMSUPPORT_AGGREGATION;
union wil_details_ReportedState;
union wil_details_RecordedState;
struct wil_details_FeatureReportingCache;
struct _PSP_STORAGE;
struct _HANDLE_TABLE;
struct _RTL_BALANCED_LINKS;
struct _KTMOBJECT_NAMESPACE_LINK;
struct _RTL_AVL_TABLE;
struct _KTMOBJECT_NAMESPACE;
union _CLS_LSN;
struct _KTM;
struct _PEB;
struct _RTL_CRITICAL_SECTION;
struct _RTL_CRITICAL_SECTION_DEBUG;
struct _LEAP_SECOND_DATA;
struct _MI_SESSION_DRIVER_UNLOAD;
struct _MM_SESSION_SPACE;
struct _KENLISTMENT_HISTORY;
struct _KENLISTMENT;
struct _ASYNC_READ_THREAD_STATS;
struct _CMSI_RW_LOCK;
struct _CMP_VOLUME_MANAGER;
struct _CC_ASYNC_READ_CONTEXT;
union _PS_TRUSTLET_ATTRIBUTE_ACCESSRIGHTS;
struct _PO_DIAG_STACK_RECORD;
struct _CM_DIRTY_VECTOR_LOG_ENTRY;
struct _CM_DIRTY_VECTOR_LOG;
struct _IMAGE_DATA_DIRECTORY;
struct tagSWITCH_CONTEXT_DATA;
struct _EVENT_DATA_DESCRIPTOR;
struct _RTL_DYNAMIC_HASH_TABLE_ENTRY;
struct _RTL_DYNAMIC_HASH_TABLE_ENUMERATOR;
struct _EXCEPTION_REGISTRATION_RECORD;
struct _MMVAD_FLAGS1;
struct _KTSS64;
struct _MI_ACTIVE_PFN;
struct _ACTIVATION_CONTEXT_STACK32;
struct _WHEA_ERROR_SOURCE_DESCRIPTOR;
struct _MCUPDATE_INFO;
struct _DEVPROPKEY;
struct _IO_APIC_DATA;
struct _IO_APIC_REGISTERS;
struct _HMAP_ENTRY;
struct _HMAP_TABLE;
struct _SECURITY_DESCRIPTOR_RELATIVE;
struct _SECTION_IMAGE_INFORMATION;
struct _DMA_REQUEST_LINE_BINDING_DESCRIPTION;
struct _MMPFNLIST_SHORT;
struct wil_details_StagingConfigWnfStateName;
struct _IOSAPIC;
struct _ACPI_CACHED_TABLE;
struct _MI_PAGEFILE_BITMAPS_CACHE_ENTRY;
struct _LOCAL_NMISOURCE;
struct _EVENT_HEADER_EXTENDED_DATA_ITEM;
struct _RTL_FEATURE_USAGE_REPORT;
struct __WIL__WNF_STATE_NAME;
struct _DMA_ADAPTER_INFO_V1;
struct _DMA_ADAPTER_INFO;
struct _DMA_COMMON_BUFFER_VECTOR;
struct _RTLP_HP_QUEUE_LOCK_HANDLE;
struct wil_details_StagingConfigHeaderProperties;
struct wil_details_StagingConfigHeader;
struct FEATURE_ERROR;
struct _HEAP_LFH_UNUSED_BYTES_INFO;
struct _EXT_IOMMU_DEVICE_ID_PCI;
struct _EXT_IOMMU_DEVICE_ID_ACPI;
struct _EXT_IOMMU_DEVICE_ID_GIC;
struct _EXT_IOMMU_DEVICE_ID;
struct _MI_CONTROL_AREA_WAIT_BLOCK;
struct _MMSECTION_FLAGS;
struct _CONTROL_AREA;
struct _HEAP_LIST_LOOKUP;
struct _HALP_DMA_MASTER_ADAPTER_OBJECT;
struct _MI_CLONE_BLOCK_FLAGS;
struct _MMCLONE_BLOCK;
struct _CM_INDEX_HINT_BLOCK;
struct _ALPC_WORK_ON_BEHALF_TICKET;
struct _KALPC_WORK_ON_BEHALF_DATA;
struct _CM_KCB_LAYER_INFO;
struct _HEAP_LARGE_ALLOC_DATA;
struct _VF_ADDRESS_RANGE;
struct _BLOB_TYPE;
struct _HIVE_WRITE_WAIT_QUEUE;
struct _CM_FAST_LEAF_HINT;
struct _CM_COMPONENT_HASH;
struct _CM_INDEX;
struct _OPEN_PACKET;
struct _HBIN;
struct _ETW_SYSTEMTIME;
struct _CM_PARSE_DEBUG_INFO;
struct _HIVE_LOAD_FAILURE;
struct _MI_SUBSECTION_ENTRY1;
struct _SUBSECTION;
struct _HALP_DMA_DOMAIN_OBJECT;
union _HEAP_SEGMENT_MGR_COMMIT_STATE;
struct _DMA_COMMON_BUFFER_ENTRY;
struct _HEAP_DESCRIPTOR_KEY;
struct _HEAP_PAGE_RANGE_DESCRIPTOR;
union _HEAP_PAGE_SEGMENT;
struct _GENERIC_MAPPING;
struct _OBJECT_TYPE_INITIALIZER;
struct _OBJECT_TYPE;
struct _CALLBACK_OBJECT;
struct _CM_KEY_SECURITY_CACHE_ENTRY;
struct _CM_WORKITEM;
struct _HALP_DMA_TRANSLATION_ENTRY;
struct _CM_UOW_SET_SD_DATA;
struct _HALP_DMA_TRANSLATION_BUFFER;
struct _CM_UOW_SET_VALUE_LIST_DATA;
struct _CMP_DISCARD_AND_REPLACE_KCB_CONTEXT;
struct _DMA_TRANSFER_CONTEXT_V1;
struct _DMA_TRANSFER_CONTEXT;
struct _DMA_FUNCTION_TABLE;
struct _HALP_DMA_CONTROLLER;
struct _HALP_DMA_CHANNEL;
struct _MM_SHARED_VAD_FLAGS;
union _HEAP_LFH_ONDEMAND_POINTER;
struct _MI_STORE_INPAGE_COMPLETE_FLAGS;
struct _MI_HARD_FAULT_STATE;
struct _DMA_SCATTER_GATHER_LIST;
struct _ALPC_PORT_ATTRIBUTES;
struct _ALPC_PORT;
struct _HBASE_BLOCK;
struct _HVP_VIEW_MAP;
struct _KALPC_RESERVE;
struct _FREE_DISPLAY;
struct _DUAL;
struct _KRESOURCEMANAGER_COMPLETION_BINDING;
struct _HEAP_COUNTERS;
struct _HEAP_TUNING_PARAMETERS;
struct _HEAP;
union _MM_STORE_KEY;
struct _KTRANSACTION_HISTORY;
struct _HEAP_TAG_ENTRY;
struct _RSDP;
struct _XSDT;
struct _SMBIOS3_TABLE_HEADER;
struct _IOAPIC;
struct _HAL_INTEL_ENLIGHTENMENT_INFORMATION;
struct _LOADER_PARAMETER_HYPERVISOR_EXTENSION;
struct _MMVAD_FLAGS;
struct _MM_PRIVATE_VAD_FLAGS;
struct _MM_GRAPHICS_VAD_FLAGS;
struct _OBP_LOOKUP_CONTEXT;
struct _BLOB;
struct _RTL_ATOM_TABLE;
struct _RTL_ATOM_TABLE_REFERENCE;
struct _CMP_VOLUME_CONTEXT;
struct _WNF_SUBSCRIPTION;
struct _PNP_DEVICE_ACTION_ENTRY;
struct _WNF_STATE_DATA;
struct _OB_DUPLICATE_OBJECT_STATE;
struct _KALPC_HANDLE_DATA;
struct _CM_NAME_HASH;
struct _CM_NAME_CONTROL_BLOCK;
struct _CM_KEY_SECURITY;
struct _HV_GET_BIN_CONTEXT;
struct _HV_GET_CELL_CONTEXT;
struct _HEAP_ENTRY_EXTRA;
struct _SEGMENT_FLAGS;
struct _CACHE_MANAGER_CALLBACKS;
struct _MI_EXTRA_IMAGE_INFORMATION;
struct _VACB_ARRAY_HEADER;
struct _PEP_ACPI_EXTENDED_ADDRESS;
struct _MI_FREE_LARGE_PAGE_LIST;
struct _PROCESSOR_PLATFORM_STATE_RESIDENCY;
struct wil_details_StagingConfigFeature;
struct _HAL_HV_SVM_SYSTEM_CAPABILITIES;
struct wil_details_StagingConfigUsageTrigger;
struct _DBGKD_SET_INTERNAL_BREAKPOINT64;
struct _HAL_HV_SVM_DEVICE_CAPABILITIES;
struct _SEGMENT;
struct _IMAGE_SECURITY_CONTEXT;
struct _MI_IMAGE_SECURITY_REFERENCE;
struct _KTB_FLUSH_VA;
struct _RTL_CSPARSE_BITMAP;
struct _RTLP_HP_ALLOC_TRACKER;
struct _RTLP_HP_HEAP_GLOBALS;
struct _NLS_DATA_BLOCK;
struct _HEAP_VAMGR_ALLOCATOR;
struct _RTL_CHASH_TABLE;
struct _PRIVATE_CACHE_MAP_FLAGS;
struct _PRIVATE_CACHE_MAP;
struct _WRITE_BEHIND_THROUGHPUT;
struct _NT_TIB64;
struct _HAL_HV_DMA_DOMAIN_INFO;
struct _PHYSICAL_MEMORY_RUN;
struct _PHYSICAL_MEMORY_DESCRIPTOR;
struct _POP_PPM_PROFILE;
struct _MAP_REGISTER_ENTRY;
struct _SEGMENT_HEAP_EXTRA;
struct _MI_ZERO_THREAD_CONTEXT;
struct DEBUG_DEVICE_ADDRESS;
struct _RTL_SPARSE_ARRAY;
struct _HEAP_VAMGR_VASPACE;
struct _HEAP_VAMGR_CTX;
struct _RTL_HP_SUB_ALLOCATOR_CONFIGS;
struct _RTLP_HP_HEAP_MANAGER;
struct _SEP_LUID_TO_INDEX_MAP_ENTRY;
struct _PCW_INSTANCE;
struct _THERMAL_ZONE_COUNTERS;
struct _RTL_HASH_ENTRY;
struct _ETW_SESSION_PERF_COUNTERS;
struct _CONTROLLER_OBJECT;
struct _FACS;
struct _POP_CURRENT_BROADCAST;
struct _SECONDARY_INTERRUPT_PROVIDER_INTERFACE;
struct _SECONDARY_IC_LIST_ENTRY;
struct _WNF_TYPE_ID;
struct _IO_NMISOURCE;
struct wil_details_FeatureTestState;
struct _ISA_VECTOR;
struct _WHEA_PROCESSOR_GENERIC_ERROR_SECTION;
struct _OBJECT_REF_STACK_INFO;
struct _OBJECT_REF_INFO;
struct _MAPIC;
struct _EVENT_FILTER_DESCRIPTOR;
union _HV_PARTITION_PRIVILEGE_MASK;
struct _SECURITY_DESCRIPTOR;
struct _PS_MITIGATION_OPTIONS_MAP;
struct _ACCESS_REASONS;
struct _AUX_ACCESS_DATA;
struct _PS_MITIGATION_AUDIT_OPTIONS_MAP;
struct _ACL;
struct _OBJECT_HANDLE_INFORMATION;
struct _TP_POOL;
struct _PCW_COUNTER_INFORMATION;
struct _TP_CLEANUP_GROUP;
struct _TP_CALLBACK_INSTANCE;
struct _TP_CALLBACK_ENVIRON_V3;
struct _DBGKD_READ_WRITE_IO_EXTENDED64;
struct _DBGKD_WRITE_BREAKPOINT64;
struct _DBGKD_GET_INTERNAL_BREAKPOINT64;
struct _DBGKD_GET_VERSION64;
struct _DBGKD_GET_SET_BUS_DATA;
struct _DBGKD_FILL_MEMORY;
struct _DBGKD_SWITCH_PARTITION;
struct _DBGKD_WRITE_CUSTOM_BREAKPOINT;
struct _ACTIVATION_CONTEXT_STACK;
struct _GDI_TEB_BATCH;
struct _TEB;
struct _RTL_ACTIVATION_CONTEXT_STACK_FRAME;
struct _TEB_ACTIVE_FRAME;
struct _DBGKD_MANIPULATE_STATE64;
struct _TEB_ACTIVE_FRAME_CONTEXT;
struct _EX_HEAP_SESSION_STATE;
struct _IMAGE_FILE_HEADER;
struct _IMAGE_OPTIONAL_HEADER64;
struct _IMAGE_NT_HEADERS64;
struct _MMCLONE_HEADER;
struct _IMAGE_DOS_HEADER;
struct _PEP_ACPI_IO_MEMORY_RESOURCE;
struct _PEP_ACPI_INTERRUPT_RESOURCE;
struct _PEP_ACPI_GPIO_RESOURCE;
struct _PEP_ACPI_SPB_I2C_RESOURCE;
struct _PEP_ACPI_SPB_SPI_RESOURCE;
union _PEP_ACPI_RESOURCE;
struct POWER_ACTION_POLICY;
struct _MI_FREE_LARGE_PAGES;
struct _SINGLE_LIST_ENTRY32;
struct _DEVICE_DSM_DEFINITION;
struct _PS_TRUSTLET_ATTRIBUTE_TYPE;
struct _PS_TRUSTLET_ATTRIBUTE_HEADER;
struct _PS_TRUSTLET_ATTRIBUTE_DATA;
struct _PS_TRUSTLET_CREATE_ATTRIBUTES;
struct _EXCEPTION_RECORD64;
struct _DBGKM_EXCEPTION64;
union wil_details_FeatureStateCache;
struct _OBJECT_REF_TRACE;
struct wil_details_RecordUsageResult;
struct _KERNEL_STACK_SEGMENT;
struct _KSTACK_CONTROL;
struct _IO_PRIORITY_INFO;
struct _EVENT_HEADER;
struct _EVENT_RECORD;
struct _MM_PAGE_ACCESS_INFO_HEADER;
struct _MM_PAGE_ACCESS_INFO;
struct _FSRTL_ADVANCED_FCB_HEADER;
struct _ALPC_COMPLETION_LIST;
struct _iobuf;
struct _RTL_HASH_TABLE_ITERATOR;
union __m64;
union __m128;
struct wil_details_FeatureDescriptor;
union _FILE_SEGMENT_ELEMENT;
struct _DUMMY_FILE_OBJECT;
struct Change;
struct FEATURE_LOGGED_TRAITS;
struct wil_FeatureState;
struct _RTL_FEATURE_CONFIGURATION;
struct _wil_details_UsageSubscriptionData;
struct _EX_PUSH_LOCK_AUTO_EXPAND_STATE;
struct _EX_PUSH_LOCK_AUTO_EXPAND;
struct _MMCLONE_DESCRIPTOR;
struct _PORT_MESSAGE32;
struct _MI_REBUILD_LARGE_PAGE_TIMER;
struct _MI_PAGE_COLORS;
struct _MI_NODE_INFORMATION;
struct _VSM_PERFORMANCE_DATA;
struct _HEAP_LFH_BUCKET;
struct _ARM_LOADER_BLOCK;
struct _RTL_SRWLOCK;
struct _I386_LOADER_BLOCK;
struct _MI_LARGE_PAGE_LISTS_CHANGING;
struct _LOADER_PERFORMANCE_DATA;
struct _MI_SECTION_IMAGE_INFORMATION;
struct _LOADER_BUGCHECK_PARAMETERS;
struct _GDI_TEB_BATCH32;
struct _CLIENT_ID64;
struct _HV_X64_HYPERVISOR_FEATURES;
struct _MI_SLAB_ALLOCATOR_ENTRY;
struct _MMPAGING_FILE;
struct _HEAP_LOCK;
struct _MODWRITER_FLAGS;
struct _MMMOD_WRITER_MDL_ENTRY;
struct _MI_PAGING_FILE_SPACE_BITMAPS;
struct _LOGGED_STREAM_CALLBACK_V1;
struct _LOGGED_STREAM_CALLBACK_V2;
struct _SHARED_CACHE_MAP;
struct _MIPFNBLINK;
struct _MMPFN;
struct _MMVAD_SHORT;
struct _MMINPAGE_SUPPORT_FLOW_THROUGH;
struct _MMINPAGE_SUPPORT;
struct _VI_DEADLOCK_NODE;
struct _HHIVE;
struct _CM_KEY_REFERENCE;
struct _CM_KEY_NODE;
struct _CM_KEY_VALUE;
struct _CM_KEY_INDEX;
struct _CM_BIG_DATA;
union _u;
struct _CELL_DATA;
struct _PROFILE_PARAMETER_BLOCK;
struct CMP_OFFSET_ARRAY;
struct _ACTIVATION_CONTEXT_STACK64;
struct _GDI_TEB_BATCH64;
struct _TEB64;
struct _WHEAP_WORK_QUEUE;
struct _PLATFORM_IDLE_STATE_ACCOUNTING;
struct _PLATFORM_IDLE_ACCOUNTING;
struct _CMSI_PROCESS_TUPLE;
struct _HMAP_DIRECTORY;
struct _OBJECT_HEADER_QUOTA_INFO;
struct _CM_KEY_SECURITY_CACHE;
union _CM_TRANS_PTR;
struct _CM_KEY_BODY;
struct _CM_NOTIFY_BLOCK;
struct _OBJECT_HEADER_CREATOR_INFO;
struct _CM_TRANS;
struct _CM_RM;
struct _PO_DEVICE_NOTIFY_ORDER;
struct _CMHIVE;
struct _CM_KEY_HASH_TABLE_ENTRY;
struct _MCGEN_TRACE_CONTEXT;
struct _SEP_TOKEN_PRIVILEGES;
struct _KRESOURCEMANAGER;
struct _PCW_REGISTRATION_INFORMATION;
struct _ETW_LOGGER_HANDLE;
struct _PCW_MASK_INFORMATION;
union _PCW_CALLBACK_INFORMATION;
struct _TRIAGE_PNP_DEVICE_COMPLETION_QUEUE;
struct _TRIAGE_9F_PNP;
struct _NON_PAGED_DEBUG_INFO;
struct _KTRANSACTION;
struct _MM_SYSTEM_PAGE_COUNTS;
struct _MI_SYSTEM_IMAGE_STATE;
struct _CACHED_KSTACK_LIST;
struct _MI_DYNAMIC_BITMAP;
struct _MI_SYSTEM_NODE_INFORMATION;
struct _VF_TARGET_VERIFIED_DRIVER_DATA;
struct _CM_UOW_KEY_STATE_MODIFICATION;
struct tagSWITCH_CONTEXT_ATTRIBUTE;
struct tagSWITCH_CONTEXT;
struct _DELAY_ACK_FO;
struct _DEVICE_DATA_SET_RANGE;
struct SYSTEM_POWER_LEVEL;
struct _POP_IRP_WORKER_ENTRY;
struct _PNP_RESOURCE_REQUEST;
struct _HCELL;
struct _IMAGE_ROM_OPTIONAL_HEADER;
struct _DBGKD_LOAD_SYMBOLS32;
struct _PCW_COUNTER_DESCRIPTOR;
struct _PCW_BUFFER;
struct _MI_SYSTEM_VA_ASSIGNMENT;
struct _PCW_DATA;
struct _ETW_PERF_COUNTERS;
struct _NT_TIB32;
struct _TEB32;
struct _PO_HIBER_PERF;
struct _ARBITER_QUERY_ALLOCATED_RESOURCES_PARAMETERS;
struct _PNP_DEVICE_COMPLETION_QUEUE;
struct _X86_KTRAP_FRAME_BLUE;
struct _DBGKD_LOAD_SYMBOLS64;
struct _EFI_FIRMWARE_INFORMATION;
struct _HAL_LOG_REGISTER_CONTEXT;
union _HAL_UNMASKED_INTERRUPT_FLAGS;
struct _HAL_UNMASKED_INTERRUPT_INFORMATION;
struct _DBGKD_MANIPULATE_STATE32;
struct _DEVICE_MANAGE_DATA_SET_ATTRIBUTES;
struct _DEVICE_MANAGE_DATA_SET_ATTRIBUTES_OUTPUT;
struct _PPM_PLATFORM_STATES;
struct _LOADER_FEATURE_CONFIGURATION_DIAGNOSTIC_INFORMATION;
struct _LOADER_FEATURE_CONFIGURATION_INFORMATION;
struct _PROCESSOR_PLATFORM_STATE_RESIDENCIES;
union _CPU_INFO;
struct _HEADLESS_LOADER_BLOCK;
struct _NETWORK_LOADER_BLOCK;
struct _VACB;
struct _MBCB;
struct _OFFLINE_CRASHDUMP_CONFIGURATION_TABLE_V2;
struct _TRIAGE_POP_IRP_DATA;
struct _MI_WSLE;
struct _CC_EXTERNAL_CACHE_INFO;
struct _MI_ALIGNED_SLIST;
struct VACB_LEVEL_ALLOCATION_LIST;
struct _VACB_LEVEL_REFERENCE;
struct _HEAP_VAMGR_RANGE;
struct _FAKE_HEAP_ENTRY;
struct _HEAP_FAILURE_INFORMATION;
struct _INTERRUPT_REMAPPING_INFO;
struct _MI_ENCLAVE_STATE;
struct HAL_PRIVATE_DISPATCH;
struct _BUS_HANDLER;
struct _RTL_STACKDB_CONTEXT;
struct _LPCP_PORT_QUEUE;
struct _HEAP_LFH_SUBSEGMENT_ENCODED_OFFSETS;
struct _HEAP_LFH_SUBSEGMENT;
struct _RTL_DYNAMIC_LOOKASIDE;
struct _HEAP_PSEUDO_TAG_ENTRY;
struct _FIRMWARE_INFORMATION_LOADER_BLOCK;
struct _LOADER_PARAMETER_BLOCK;
struct _HEAP_VIRTUAL_ALLOC_ENTRY;
struct _ARC_DISK_INFORMATION;
struct _HEAP_FREE_ENTRY;
struct _RTLP_HP_PADDING_HEADER;
struct _KALPC_SECTION;
union _KALPC_DIRECT_EVENT;
struct _KALPC_MESSAGE_ATTRIBUTES;
struct _KALPC_MESSAGE;
struct _KALPC_SECURITY_DATA;
struct _KALPC_VIEW;
struct _DEBUG_TRANSPORT_DATA;
struct _DEBUG_DEVICE_DESCRIPTOR;
struct _HIDDEN_PROCESSOR_POWER_INTERFACE;
struct _LDR_SERVICE_TAG_RECORD;
struct _ALPC_COMPLETION_PACKET_LOOKASIDE;
struct _SEP_TOKEN_DIAG_TRACK_ENTRY;
struct _ALPC_COMPLETION_LIST_HEADER;
struct _OBJECT_HEADER_NAME_INFO;
struct _TRIAGE_POP_FX_DEVICE;
struct _KPRIQUEUE;
struct _PALPC_PORT_REFERENCE_WAIT_BLOCK;
struct _POP_DEVICE_SYS_STATE;
struct _OBJECT_DUMP_CONTROL;
struct _WHEAP_ERROR_SOURCE;
struct _TRACE_LOGFILE_HEADER;
struct _TOKEN;
struct _SEP_LOWBOX_NUMBER_ENTRY;
struct _LOCK_HEADER;
struct _HEAP_STOP_ON_VALUES;
struct _ALPC_DISPATCH_CONTEXT;
struct _REMOTE_PORT_VIEW;
struct _IO_IRP_EXT_TRACK_OFFSET_HEADER;
struct _MEMORY_ALLOCATION_DESCRIPTOR;
struct _PS_TRUSTLET_TKSESSION_ID;
struct _IO_ADAPTER_CRYPTO_KEY_DESCRIPTOR;
struct _WNF_DISPATCHER;
struct _RELATIVE_SYMLINK_INFO;
struct _IOP_FILE_OBJECT_EXTENSION;
struct _VI_DEADLOCK_RESOURCE;
struct _SEP_CACHED_HANDLES_ENTRY_DESCRIPTOR;
struct _SEP_CACHED_HANDLES_ENTRY;
struct _OBJECT_HANDLE_COUNT_DATABASE;
struct _EXCEPTION_POINTERS;
struct _OBJECT_HEADER_AUDIT_INFO;
struct _OBJECT_HEADER_EXTENDED_INFO;
struct _WHEAP_ERROR_SOURCE_TABLE;
struct _WNF_PROCESS_CONTEXT;
struct _VI_DEADLOCK_THREAD;
struct _TRIAGE_EX_WORK_QUEUE;
struct _LPCP_MESSAGE;
struct _PNP_DEVICE_EVENT_LIST;
struct _FAST_ERESOURCE;
struct _SYSTEM_POWER_POLICY;
struct _LOCK_TRACKER;
struct _OBJECT_HEADER_PADDING_INFO;
struct _MSUBSECTION;
struct _MI_EXTENT_DELETION_WAIT_BLOCK;
struct _MI_DLL_OVERFLOW_AREA;
struct _MI_SECTION_WOW_STATE;
struct _MI_SECTION_STATE;
struct _HAL_IOMMU_DISPATCH;
struct _MI_RESUME_WORKITEM;
struct _MI_SHUTDOWN_STATE;
struct _LOADER_HIVE_RECOVERY_INFO;
struct _LOADER_PARAMETER_EXTENSION;
struct _LOADER_PARAMETER_CI_EXTENSION;
struct _ETIMER;
struct PROCESSOR_PERFSTATE_POLICY;
struct _THERMAL_POLICY;
struct _INTERRUPT_VECTOR_DATA;
struct _PI_RESOURCE_ARBITER_ENTRY;
struct _EX_HEAP_POOL_NODE;
struct _ETW_REG_ENTRY;
struct _ETW_PROVIDER_TRAITS;
struct _HAL_CLOCK_TIMER_CONFIGURATION;
union _IOMMU_SVM_CAPABILITIES;
struct _ISRDPCSTATS_SEQUENCE;
struct _ISRDPCSTATS;
struct _KINTERRUPT;
struct _INTERRUPT_CONNECTION_DATA;
struct _PF_KERNEL_GLOBALS;
struct _HAL_LBR_ENTRY;
struct _DMA_IOMMU_INTERFACE;
struct _IOMMU_DMA_DOMAIN;
struct _PEB32;
struct _INPUT_MAPPING_ELEMENT;
struct _RSDS;
struct _DEVICE_FAULT_CONFIGURATION;
struct _FAULT_INFORMATION_ARM64_FLAGS;
struct _FAULT_INFORMATION_ARM64;
struct _FAULT_INFORMATION_X64_FLAGS;
struct _FAULT_INFORMATION_X64;
struct _FAULT_INFORMATION;
struct _DOMAIN_CONFIGURATION_ARM64;
struct _DOMAIN_CONFIGURATION;
struct _HEAP_FREE_ENTRY_EXTRA;
struct _MI_ACCESS_VIOLATION_RANGE;
struct _MI_POOL_STATE;
struct _MI_HUGE_SYSTEM_VIEW_HEAD;
struct _MI_SESSION_STATE;
struct _MI_PROCESS_STATE;
struct _HAL_NODE_RANGE;
struct _MI_ZERO_COST_COUNTS;
struct _MI_HARDWARE_STATE;
struct _MI_SYSTEM_VA_STATE;
struct _MI_COMBINE_STATE;
struct _MI_PAGELIST_STATE;
struct _MI_PARTITION_STATE;
struct _MI_BAD_MEMORY_EVENT_ENTRY;
struct _MI_PROBE_RAISE_TRACKER;
struct _MI_FORCED_COMMITS;
struct _MI_RESAVAIL_FAILURES;
struct _MI_ERROR_STATE;
struct _MI_ACCESS_LOG_STATE;
struct _MI_DEBUGGER_STATE;
struct _MI_STANDBY_STATE;
struct _MI_ULTRA_VA_CONTEXT;
struct _MI_SYSTEM_PTE_STATE;
struct _MI_IO_CACHE_STATS;
struct _MI_IO_PAGE_STATE;
struct _MI_PAGING_IO_STATE;
struct _MI_COMMON_PAGE_STATE;
struct _MI_SYSTEM_TRIM_STATE;
struct _SYSPTES_HEADER;
struct _MI_VISIBLE_STATE;
struct _MI_SYSTEM_INFORMATION;
struct _LPCP_PORT_OBJECT;
struct _EX_WORK_QUEUE;
struct _SECTION;
struct _RTL_RETPOLINE_ROUTINES;
struct _KTIMER2;
struct _EX_WORK_QUEUE_MANAGER;
struct _KLDR_DATA_TABLE_ENTRY;
struct _MI_DRIVER_VA;
struct _MI_NODE_NUMBER_ZERO_BASED;
struct _DEVICE_DESCRIPTION;
struct _HAL_CHANNEL_MEMORY_RANGES;
struct _KSECONDARY_IDT_ENTRY;
struct _MAPPED_FILE_SEGMENT;
struct _VF_TRACKER_STAMP;
struct _ISR_THUNK;
struct _MI_HUGE_PFN;
struct _LPCP_NONPAGED_PORT_QUEUE;
struct _MI_ULTRA_MDL_NODE;
struct _SEP_LOWBOX_NUMBER_MAPPING;
struct _MMVAD_FLAGS2;
struct _MI_VAD_SEQUENTIAL_INFO;
struct _MMVAD;
struct _LDRP_CSLIST;
struct _LDR_DDAG_NODE;
struct PROCESSOR_IDLESTATE_INFO;
struct PROCESSOR_IDLESTATE_POLICY;
struct _VF_AVL_TREE;
struct _VF_AVL_TABLE;
struct _TRIAGE_DEVICE_NODE;
struct _VF_AVL_TREE_NODE;
struct _ARBITER_ORDERING_LIST;
struct _ARBITER_INSTANCE;
struct _VF_TARGET_ALL_SHARED_EXPORT_THUNKS;
struct _RTL_RANGE_LIST;
struct _VF_AVL_TREE_NODE_EX;
struct _ARBITER_ORDERING;
struct _ARBITER_INTERFACE;
struct _VI_POOL_PAGE_HEADER;
struct _VI_POOL_ENTRY_INUSE;
struct _VI_POOL_ENTRY;
struct _MI_SYSTEM_CACHE_VIEW_ATTRIBUTES;
struct _ARBITER_TEST_ALLOCATION_PARAMETERS;
struct _ARBITER_RETEST_ALLOCATION_PARAMETERS;
struct _ARBITER_BOOT_ALLOCATION_PARAMETERS;
struct _ARBITER_QUERY_CONFLICT_PARAMETERS;
struct _ARBITER_QUERY_ARBITRATE_PARAMETERS;
struct _ARBITER_ADD_RESERVED_PARAMETERS;
struct _ARBITER_PARAMETERS;
struct __WIL__WNF_USER_SUBSCRIPTION;
struct _LEARNING_MODE_DATA;
struct _PTE_TRACKER;
struct _ARBITER_CONFLICT_INFO;
struct _VI_VERIFIER_ISSUE;
struct _CRITICAL_PROCESS_EXCEPTION_DATA;
struct _ARBITER_ALLOCATION_STATE;
struct _ARBITER_LIST_ENTRY;
struct _ARBITER_ALTERNATIVE;
struct BATTERY_REPORTING_SCALE;
struct _POP_POLICY_DEVICE;
struct _THERMAL_INFORMATION_EX;
struct _POP_THERMAL_TELEMETRY_TRACKER;
struct _POP_THERMAL_ZONE;
struct _ETW_QUEUE_ENTRY;
struct FEATURE_STATE_CHANGE_SUBSCRIPTION__;
struct _WNF_DELIVERY_DESCRIPTOR;
union _WHEA_ERROR_STATUS;
struct _RTL_RANGE;
struct _VF_POOL_TRACE;
struct _VI_FAULT_TRACE;
union _MI_FLAGS;
struct SYSTEM_POWER_CAPABILITIES;
struct _KWAIT_CHAIN;
struct _VF_DRIVER_IO_CALLBACKS;
struct _TRIAGE_PNP_DEVICE_COMPLETION_REQUEST;
struct _BUS_EXTENSION_LIST;
struct _PI_BUS_EXTENSION;
struct _POP_ACTION_TRIGGER;
struct _POP_TRIGGER_WAIT;
struct _RTL_ATOM_TABLE_ENTRY;
struct _OBJECT_SYMBOLIC_LINK;
struct _MM_DRIVER_VERIFIER_DATA;
struct __WIL__WNF_TYPE_ID;
struct _TraceLoggingMetadata_t;
struct _IO_WORKITEM;
union _WHEA_MEMORY_ERROR_SECTION_VALIDBITS;
struct _WHEA_MEMORY_ERROR_SECTION;
struct _EX_POOL_HEAP_MANAGER_STATE;
struct _IOP_IRP_EXTENSION_STATUS;
struct _EX_PARTITION;
struct _VF_TRACKER;
struct _VERIFIER_SHARED_EXPORT_THUNK;
struct _VF_TARGET_DRIVER;
struct _VI_VERIFIER_POOL_HEADER;
struct _MI_REVERSE_VIEW_MAP;
union _LFH_RANDOM_DATA;
struct _ETW_REPLY_QUEUE;
struct _ETWP_NOTIFICATION_HEADER;
struct _FAST_OWNER_ENTRY;
struct _HEAP_GLOBAL_APPCOMPAT_FLAGS;
struct _DIAGNOSTIC_CONTEXT;
struct _VI_TRACK_IRQL;
struct _IOV_IRP_TRACE;
struct _PNP_DEVICE_COMPLETION_REQUEST;
struct _IOV_FORCED_PENDING_TRACE;
union RTLP_HP_LFH_PERF_FLAGS;
struct _DIAGNOSTIC_BUFFER;
struct _POP_POWER_ACTION;
struct _POP_SHUTDOWN_BUG_CHECK;
struct _POP_IO_INFO;
struct _POP_HIBER_CONTEXT;
struct _DUMP_INITIALIZATION_CONTEXT;
struct _DUMP_STACK_CONTEXT;
struct PO_MEMORY_IMAGE;
struct _POP_PER_PROCESSOR_CONTEXT;
struct _FAST_ERESOURCE_INTERNAL;
struct _WAITING_IRP;
struct _UNEXPECTED_INTERRUPT;
struct _PEB64;
struct _VI_DEADLOCK_GLOBALS;
struct _TRIAGE_9F_POWER;
struct _CALL_PERFORMANCE_DATA;
struct _SESSION_LOWBOX_MAP;
struct _POOL_TRACKER_BIG_PAGES;
struct _LDRP_LOAD_CONTEXT;
struct _LDR_DATA_TABLE_ENTRY;
struct _KTIMER2_COLLECTION;
struct _VF_WATCHDOG_IRP;
struct _IMAGE_SECTION_HEADER;
struct _FAST_OWNER_ENTRY_INTERNAL;
struct _ETW_WMITRACE_WORK;
struct _POOL_HEADER;
struct _POP_POWER_SETTING_VALUES;
struct _HEAP_UCR_DESCRIPTOR;
struct _NONOPAQUE_OPLOCK;
struct _RTLP_RANGE_LIST_ENTRY;
struct _RH_OP_CONTEXT;
struct _THERMAL_INFORMATION;
struct _HIVE_LIST_ENTRY;
struct _NB10;
union _CVDD;
struct _ETW_DEBUGID_TRACKING_ENTRY;
struct _KWAIT_CHAIN_ENTRY;
struct _IMAGE_DEBUG_DIRECTORY;
struct _CALL_HASH_ENTRY;
struct _MI_TRIAGE_DUMP_DATA;

typedef enum _DEVICE_RELATION_TYPE
{
  BusRelations = 0,
  EjectionRelations = 1,
  PowerRelations = 2,
  RemovalRelations = 3,
  TargetDeviceRelation = 4,
  SingleBusRelations = 5,
  TransportRelations = 6,
} DEVICE_RELATION_TYPE, *PDEVICE_RELATION_TYPE;

typedef struct _EX_PUSH_LOCK
{
  union
  {
    struct /* bitfield */
    {
      /* 0x0000 */ unsigned __int64 Locked : 1; /* bit position: 0 */
      /* 0x0000 */ unsigned __int64 Waiting : 1; /* bit position: 1 */
      /* 0x0000 */ unsigned __int64 Waking : 1; /* bit position: 2 */
      /* 0x0000 */ unsigned __int64 MultipleShared : 1; /* bit position: 3 */
      /* 0x0000 */ unsigned __int64 Shared : 60; /* bit position: 4 */
    }; /* bitfield */
    /* 0x0000 */ unsigned __int64 Value;
    /* 0x0000 */ void* Ptr;
  }; /* size: 0x0008 */
} EX_PUSH_LOCK, *PEX_PUSH_LOCK; /* size: 0x0008 */

typedef struct _POP_RW_LOCK
{
  /* 0x0000 */ struct _EX_PUSH_LOCK Lock;
  /* 0x0008 */ struct _KTHREAD* Thread;
} POP_RW_LOCK, *PPOP_RW_LOCK; /* size: 0x0010 */

typedef enum _EVENT_INFO_CLASS
{
  EventProviderBinaryTrackInfo = 0,
  EventProviderSetReserved1 = 1,
  EventProviderSetTraits = 2,
  EventProviderUseDescriptorType = 3,
  MaxEventInfo = 4,
} EVENT_INFO_CLASS, *PEVENT_INFO_CLASS;

typedef struct _SID_IDENTIFIER_AUTHORITY
{
  /* 0x0000 */ unsigned char Value[6];
} SID_IDENTIFIER_AUTHORITY, *PSID_IDENTIFIER_AUTHORITY; /* size: 0x0006 */

typedef struct _SID
{
  /* 0x0000 */ unsigned char Revision;
  /* 0x0001 */ unsigned char SubAuthorityCount;
  /* 0x0002 */ struct _SID_IDENTIFIER_AUTHORITY IdentifierAuthority;
  /* 0x0008 */ unsigned long SubAuthority[1];
} SID, *PSID; /* size: 0x000c */

typedef enum _POOL_TYPE
{
  NonPagedPool = 0,
  NonPagedPoolExecute = 0,
  PagedPool = 1,
  NonPagedPoolMustSucceed = 2,
  DontUseThisType = 3,
  NonPagedPoolCacheAligned = 4,
  PagedPoolCacheAligned = 5,
  NonPagedPoolCacheAlignedMustS = 6,
  MaxPoolType = 7,
  NonPagedPoolBase = 0,
  NonPagedPoolBaseMustSucceed = 2,
  NonPagedPoolBaseCacheAligned = 4,
  NonPagedPoolBaseCacheAlignedMustS = 6,
  NonPagedPoolSession = 32,
  PagedPoolSession = 33,
  NonPagedPoolMustSucceedSession = 34,
  DontUseThisTypeSession = 35,
  NonPagedPoolCacheAlignedSession = 36,
  PagedPoolCacheAlignedSession = 37,
  NonPagedPoolCacheAlignedMustSSession = 38,
  NonPagedPoolNx = 512,
  NonPagedPoolNxCacheAligned = 516,
  NonPagedPoolSessionNx = 544,
} POOL_TYPE, *PPOOL_TYPE;

typedef enum _EX_POOL_PRIORITY
{
  LowPoolPriority = 0,
  LowPoolPrioritySpecialPoolOverrun = 8,
  LowPoolPrioritySpecialPoolUnderrun = 9,
  NormalPoolPriority = 16,
  NormalPoolPrioritySpecialPoolOverrun = 24,
  NormalPoolPrioritySpecialPoolUnderrun = 25,
  HighPoolPriority = 32,
  HighPoolPrioritySpecialPoolOverrun = 40,
  HighPoolPrioritySpecialPoolUnderrun = 41,
} EX_POOL_PRIORITY, *PEX_POOL_PRIORITY;

typedef enum _EVENT_TYPE
{
  NotificationEvent = 0,
  SynchronizationEvent = 1,
} EVENT_TYPE, *PEVENT_TYPE;

typedef enum _MEMORY_CACHING_TYPE
{
  MmNonCached = 0,
  MmCached = 1,
  MmWriteCombined = 2,
  MmHardwareCoherentCached = 3,
  MmNonCachedUnordered = 4,
  MmUSWCCached = 5,
  MmMaximumCacheType = 6,
  MmNotMapped = -1,
} MEMORY_CACHING_TYPE, *PMEMORY_CACHING_TYPE;

typedef struct _PCW_PROCESSOR_INFO
{
  /* 0x0000 */ unsigned __int64 IdleTime;
  /* 0x0008 */ unsigned __int64 AvailableTime;
  /* 0x0010 */ unsigned __int64 UserTime;
  /* 0x0018 */ unsigned __int64 KernelTime;
  /* 0x0020 */ unsigned long Interrupts;
  /* 0x0024 */ long Padding_0;
  /* 0x0028 */ unsigned __int64 DpcTime;
  /* 0x0030 */ unsigned __int64 InterruptTime;
  /* 0x0038 */ unsigned long ClockInterrupts;
  /* 0x003c */ unsigned long DpcCount;
  /* 0x0040 */ unsigned long DpcRate;
  /* 0x0044 */ long Padding_1;
  /* 0x0048 */ unsigned __int64 C1Time;
  /* 0x0050 */ unsigned __int64 C2Time;
  /* 0x0058 */ unsigned __int64 C3Time;
  /* 0x0060 */ unsigned __int64 C1Transitions;
  /* 0x0068 */ unsigned __int64 C2Transitions;
  /* 0x0070 */ unsigned __int64 C3Transitions;
  /* 0x0078 */ unsigned __int64 StallTime;
  /* 0x0080 */ unsigned long ParkingStatus;
  /* 0x0084 */ unsigned long CurrentFrequency;
  /* 0x0088 */ unsigned long PercentMaxFrequency;
  /* 0x008c */ unsigned long StateFlags;
  /* 0x0090 */ unsigned long NominalThroughput;
  /* 0x0094 */ unsigned long ActiveThroughput;
  /* 0x0098 */ unsigned __int64 ScaledThroughput;
  /* 0x00a0 */ unsigned __int64 ScaledKernelThroughput;
  /* 0x00a8 */ unsigned __int64 AverageIdleTime;
  /* 0x00b0 */ unsigned __int64 IdleBreakEvents;
  /* 0x00b8 */ unsigned long PerformanceLimit;
  /* 0x00bc */ unsigned long PerformanceLimitFlags;
  /* 0x00c0 */ unsigned __int64 ScaledFrequency;
} PCW_PROCESSOR_INFO, *PPCW_PROCESSOR_INFO; /* size: 0x00c8 */

typedef struct _ETW_LBR_SUPPORT
{
  /* 0x0000 */ unsigned long LbrHandle;
  /* 0x0004 */ unsigned long LbrOptions;
  /* 0x0008 */ volatile unsigned long HookIdCount;
  /* 0x000c */ unsigned short HookId[4];
} ETW_LBR_SUPPORT, *PETW_LBR_SUPPORT; /* size: 0x0014 */

typedef enum _FILE_INFORMATION_CLASS
{
  FileDirectoryInformation = 1,
  FileFullDirectoryInformation = 2,
  FileBothDirectoryInformation = 3,
  FileBasicInformation = 4,
  FileStandardInformation = 5,
  FileInternalInformation = 6,
  FileEaInformation = 7,
  FileAccessInformation = 8,
  FileNameInformation = 9,
  FileRenameInformation = 10,
  FileLinkInformation = 11,
  FileNamesInformation = 12,
  FileDispositionInformation = 13,
  FilePositionInformation = 14,
  FileFullEaInformation = 15,
  FileModeInformation = 16,
  FileAlignmentInformation = 17,
  FileAllInformation = 18,
  FileAllocationInformation = 19,
  FileEndOfFileInformation = 20,
  FileAlternateNameInformation = 21,
  FileStreamInformation = 22,
  FilePipeInformation = 23,
  FilePipeLocalInformation = 24,
  FilePipeRemoteInformation = 25,
  FileMailslotQueryInformation = 26,
  FileMailslotSetInformation = 27,
  FileCompressionInformation = 28,
  FileObjectIdInformation = 29,
  FileCompletionInformation = 30,
  FileMoveClusterInformation = 31,
  FileQuotaInformation = 32,
  FileReparsePointInformation = 33,
  FileNetworkOpenInformation = 34,
  FileAttributeTagInformation = 35,
  FileTrackingInformation = 36,
  FileIdBothDirectoryInformation = 37,
  FileIdFullDirectoryInformation = 38,
  FileValidDataLengthInformation = 39,
  FileShortNameInformation = 40,
  FileIoCompletionNotificationInformation = 41,
  FileIoStatusBlockRangeInformation = 42,
  FileIoPriorityHintInformation = 43,
  FileSfioReserveInformation = 44,
  FileSfioVolumeInformation = 45,
  FileHardLinkInformation = 46,
  FileProcessIdsUsingFileInformation = 47,
  FileNormalizedNameInformation = 48,
  FileNetworkPhysicalNameInformation = 49,
  FileIdGlobalTxDirectoryInformation = 50,
  FileIsRemoteDeviceInformation = 51,
  FileUnusedInformation = 52,
  FileNumaNodeInformation = 53,
  FileStandardLinkInformation = 54,
  FileRemoteProtocolInformation = 55,
  FileRenameInformationBypassAccessCheck = 56,
  FileLinkInformationBypassAccessCheck = 57,
  FileVolumeNameInformation = 58,
  FileIdInformation = 59,
  FileIdExtdDirectoryInformation = 60,
  FileReplaceCompletionInformation = 61,
  FileHardLinkFullIdInformation = 62,
  FileIdExtdBothDirectoryInformation = 63,
  FileDispositionInformationEx = 64,
  FileRenameInformationEx = 65,
  FileRenameInformationExBypassAccessCheck = 66,
  FileDesiredStorageClassInformation = 67,
  FileStatInformation = 68,
  FileMemoryPartitionInformation = 69,
  FileStatLxInformation = 70,
  FileCaseSensitiveInformation = 71,
  FileLinkInformationEx = 72,
  FileLinkInformationExBypassAccessCheck = 73,
  FileStorageReserveIdInformation = 74,
  FileCaseSensitiveInformationForceAccessCheck = 75,
  FileMaximumInformation = 76,
} FILE_INFORMATION_CLASS, *PFILE_INFORMATION_CLASS;

typedef enum _DIRECTORY_NOTIFY_INFORMATION_CLASS
{
  DirectoryNotifyInformation = 1,
  DirectoryNotifyExtendedInformation = 2,
} DIRECTORY_NOTIFY_INFORMATION_CLASS, *PDIRECTORY_NOTIFY_INFORMATION_CLASS;

typedef enum _PCI_BUSMASTER_RID_TYPE
{
  BusmasterRidInvalid = 0,
  BusmasterRidFromDeviceRid = 1,
  BusmasterRidFromBridgeRid = 2,
  BusmasterRidFromMultipleBridges = 3,
} PCI_BUSMASTER_RID_TYPE, *PPCI_BUSMASTER_RID_TYPE;

typedef struct _PCI_BUSMASTER_DESCRIPTOR
{
  /* 0x0000 */ enum _PCI_BUSMASTER_RID_TYPE Type;
  /* 0x0004 */ unsigned long Segment;
  union
  {
    struct
    {
      /* 0x0008 */ unsigned char Bus;
      /* 0x0009 */ unsigned char Device;
      /* 0x000a */ unsigned char Function;
      /* 0x000b */ unsigned char Reserved;
    } /* size: 0x0004 */ DeviceRid;
    struct
    {
      /* 0x0008 */ unsigned char Bus;
      /* 0x0009 */ unsigned char Device;
      /* 0x000a */ unsigned char Function;
      /* 0x000b */ unsigned char Reserved;
    } /* size: 0x0004 */ BridgeRid;
    struct
    {
      struct
      {
        /* 0x0008 */ unsigned char SecondaryBus;
        /* 0x0009 */ unsigned char SubordinateBus;
      } /* size: 0x0002 */ MultipleBridges;
      /* 0x000a */ char __PADDING__[2];
    }; /* size: 0x0004 */
  }; /* size: 0x0004 */
} PCI_BUSMASTER_DESCRIPTOR, *PPCI_BUSMASTER_DESCRIPTOR; /* size: 0x000c */

typedef struct _GUID
{
  /* 0x0000 */ unsigned long Data1;
  /* 0x0004 */ unsigned short Data2;
  /* 0x0006 */ unsigned short Data3;
  /* 0x0008 */ unsigned char Data4[8];
} GUID, *PGUID; /* size: 0x0010 */

typedef enum _FSINFOCLASS
{
  FileFsVolumeInformation = 1,
  FileFsLabelInformation = 2,
  FileFsSizeInformation = 3,
  FileFsDeviceInformation = 4,
  FileFsAttributeInformation = 5,
  FileFsControlInformation = 6,
  FileFsFullSizeInformation = 7,
  FileFsObjectIdInformation = 8,
  FileFsDriverPathInformation = 9,
  FileFsVolumeFlagsInformation = 10,
  FileFsSectorSizeInformation = 11,
  FileFsDataCopyInformation = 12,
  FileFsMetadataSizeInformation = 13,
  FileFsFullSizeInformationEx = 14,
  FileFsMaximumInformation = 15,
} FSINFOCLASS, *PFSINFOCLASS;

typedef struct _LIST_ENTRY
{
  /* 0x0000 */ struct _LIST_ENTRY* Flink;
  /* 0x0008 */ struct _LIST_ENTRY* Blink;
} LIST_ENTRY, *PLIST_ENTRY; /* size: 0x0010 */

typedef struct _WORK_QUEUE_ITEM
{
  /* 0x0000 */ struct _LIST_ENTRY List;
  /* 0x0010 */ void* WorkerRoutine /* function */;
  /* 0x0018 */ void* Parameter;
} WORK_QUEUE_ITEM, *PWORK_QUEUE_ITEM; /* size: 0x0020 */

enum IRPLOCK
{
  IRPLOCK_CANCELABLE = 0,
  IRPLOCK_CANCEL_STARTED = 1,
  IRPLOCK_CANCEL_COMPLETE = 2,
  IRPLOCK_COMPLETED = 3,
};

typedef enum _SYSTEM_POWER_STATE
{
  PowerSystemUnspecified = 0,
  PowerSystemWorking = 1,
  PowerSystemSleeping1 = 2,
  PowerSystemSleeping2 = 3,
  PowerSystemSleeping3 = 4,
  PowerSystemHibernate = 5,
  PowerSystemShutdown = 6,
  PowerSystemMaximum = 7,
} SYSTEM_POWER_STATE, *PSYSTEM_POWER_STATE;

typedef enum _PNP_DEVICE_DELETE_TYPE
{
  QueryRemoveDevice = 0,
  CancelRemoveDevice = 1,
  RemoveDevice = 2,
  SurpriseRemoveDevice = 3,
  EjectDevice = 4,
  RemoveFailedDevice = 5,
  RemoveUnstartedFailedDevice = 6,
  MaxDeviceDeleteType = 7,
} PNP_DEVICE_DELETE_TYPE, *PPNP_DEVICE_DELETE_TYPE;

typedef struct _PENDING_RELATIONS_LIST_ENTRY
{
  /* 0x0000 */ struct _LIST_ENTRY Link;
  /* 0x0010 */ struct _WORK_QUEUE_ITEM WorkItem;
  /* 0x0030 */ struct _PNP_DEVICE_EVENT_ENTRY* DeviceEvent;
  /* 0x0038 */ struct _DEVICE_OBJECT* DeviceObject;
  /* 0x0040 */ struct _RELATION_LIST* RelationsList;
  /* 0x0048 */ struct _IRP* EjectIrp;
  /* 0x0050 */ enum IRPLOCK Lock;
  /* 0x0054 */ unsigned long Problem;
  /* 0x0058 */ unsigned char ProfileChangingEject;
  /* 0x0059 */ unsigned char DisplaySafeRemovalDialog;
  /* 0x005a */ char Padding_2[2];
  /* 0x005c */ enum _SYSTEM_POWER_STATE LightestSleepState;
  /* 0x0060 */ struct DOCK_INTERFACE* DockInterface;
  /* 0x0068 */ unsigned char DequeuePending;
  /* 0x0069 */ char Padding_3[3];
  /* 0x006c */ enum _PNP_DEVICE_DELETE_TYPE DeleteType;
} PENDING_RELATIONS_LIST_ENTRY, *PPENDING_RELATIONS_LIST_ENTRY; /* size: 0x0070 */

enum BUS_QUERY_ID_TYPE
{
  BusQueryDeviceID = 0,
  BusQueryHardwareIDs = 1,
  BusQueryCompatibleIDs = 2,
  BusQueryInstanceID = 3,
  BusQueryDeviceSerialNumber = 4,
  BusQueryContainerID = 5,
};

enum DEVICE_TEXT_TYPE
{
  DeviceTextDescription = 0,
  DeviceTextLocationInformation = 1,
};

typedef struct _SYNCH_COUNTERS
{
  /* 0x0000 */ unsigned long SpinLockAcquireCount;
  /* 0x0004 */ unsigned long SpinLockContentionCount;
  /* 0x0008 */ unsigned long SpinLockSpinCount;
  /* 0x000c */ unsigned long IpiSendRequestBroadcastCount;
  /* 0x0010 */ unsigned long IpiSendRequestRoutineCount;
  /* 0x0014 */ unsigned long IpiSendSoftwareInterruptCount;
  /* 0x0018 */ unsigned long ExInitializeResourceCount;
  /* 0x001c */ unsigned long ExReInitializeResourceCount;
  /* 0x0020 */ unsigned long ExDeleteResourceCount;
  /* 0x0024 */ unsigned long ExecutiveResourceAcquiresCount;
  /* 0x0028 */ unsigned long ExecutiveResourceContentionsCount;
  /* 0x002c */ unsigned long ExecutiveResourceReleaseExclusiveCount;
  /* 0x0030 */ unsigned long ExecutiveResourceReleaseSharedCount;
  /* 0x0034 */ unsigned long ExecutiveResourceConvertsCount;
  /* 0x0038 */ unsigned long ExAcqResExclusiveAttempts;
  /* 0x003c */ unsigned long ExAcqResExclusiveAcquiresExclusive;
  /* 0x0040 */ unsigned long ExAcqResExclusiveAcquiresExclusiveRecursive;
  /* 0x0044 */ unsigned long ExAcqResExclusiveWaits;
  /* 0x0048 */ unsigned long ExAcqResExclusiveNotAcquires;
  /* 0x004c */ unsigned long ExAcqResSharedAttempts;
  /* 0x0050 */ unsigned long ExAcqResSharedAcquiresExclusive;
  /* 0x0054 */ unsigned long ExAcqResSharedAcquiresShared;
  /* 0x0058 */ unsigned long ExAcqResSharedAcquiresSharedRecursive;
  /* 0x005c */ unsigned long ExAcqResSharedWaits;
  /* 0x0060 */ unsigned long ExAcqResSharedNotAcquires;
  /* 0x0064 */ unsigned long ExAcqResSharedStarveExclusiveAttempts;
  /* 0x0068 */ unsigned long ExAcqResSharedStarveExclusiveAcquiresExclusive;
  /* 0x006c */ unsigned long ExAcqResSharedStarveExclusiveAcquiresShared;
  /* 0x0070 */ unsigned long ExAcqResSharedStarveExclusiveAcquiresSharedRecursive;
  /* 0x0074 */ unsigned long ExAcqResSharedStarveExclusiveWaits;
  /* 0x0078 */ unsigned long ExAcqResSharedStarveExclusiveNotAcquires;
  /* 0x007c */ unsigned long ExAcqResSharedWaitForExclusiveAttempts;
  /* 0x0080 */ unsigned long ExAcqResSharedWaitForExclusiveAcquiresExclusive;
  /* 0x0084 */ unsigned long ExAcqResSharedWaitForExclusiveAcquiresShared;
  /* 0x0088 */ unsigned long ExAcqResSharedWaitForExclusiveAcquiresSharedRecursive;
  /* 0x008c */ unsigned long ExAcqResSharedWaitForExclusiveWaits;
  /* 0x0090 */ unsigned long ExAcqResSharedWaitForExclusiveNotAcquires;
  /* 0x0094 */ unsigned long ExSetResOwnerPointerExclusive;
  /* 0x0098 */ unsigned long ExSetResOwnerPointerSharedNew;
  /* 0x009c */ unsigned long ExSetResOwnerPointerSharedOld;
  /* 0x00a0 */ unsigned long ExTryToAcqExclusiveAttempts;
  /* 0x00a4 */ unsigned long ExTryToAcqExclusiveAcquires;
  /* 0x00a8 */ unsigned long ExBoostExclusiveOwner;
  /* 0x00ac */ unsigned long ExBoostSharedOwners;
  /* 0x00b0 */ unsigned long ExEtwSynchTrackingNotificationsCount;
  /* 0x00b4 */ unsigned long ExEtwSynchTrackingNotificationsAccountedCount;
} SYNCH_COUNTERS, *PSYNCH_COUNTERS; /* size: 0x00b8 */

typedef enum _DEVICE_USAGE_NOTIFICATION_TYPE
{
  DeviceUsageTypeUndefined = 0,
  DeviceUsageTypePaging = 1,
  DeviceUsageTypeHibernation = 2,
  DeviceUsageTypeDumpFile = 3,
  DeviceUsageTypeBoot = 4,
  DeviceUsageTypePostDisplay = 5,
  DeviceUsageTypeGuestAssigned = 6,
} DEVICE_USAGE_NOTIFICATION_TYPE, *PDEVICE_USAGE_NOTIFICATION_TYPE;

typedef struct _RTL_BALANCED_NODE
{
  union
  {
    /* 0x0000 */ struct _RTL_BALANCED_NODE* Children[2];
    struct
    {
      /* 0x0000 */ struct _RTL_BALANCED_NODE* Left;
      /* 0x0008 */ struct _RTL_BALANCED_NODE* Right;
    }; /* size: 0x0010 */
  }; /* size: 0x0010 */
  union
  {
    /* 0x0010 */ unsigned char Red : 1; /* bit position: 0 */
    /* 0x0010 */ unsigned char Balance : 2; /* bit position: 0 */
    /* 0x0010 */ unsigned __int64 ParentValue;
  }; /* size: 0x0008 */
} RTL_BALANCED_NODE, *PRTL_BALANCED_NODE; /* size: 0x0018 */

typedef enum _POWER_STATE_TYPE
{
  SystemPowerState = 0,
  DevicePowerState = 1,
} POWER_STATE_TYPE, *PPOWER_STATE_TYPE;

enum POWER_ACTION
{
  PowerActionNone = 0,
  PowerActionReserved = 1,
  PowerActionSleep = 2,
  PowerActionHibernate = 3,
  PowerActionShutdown = 4,
  PowerActionShutdownReset = 5,
  PowerActionShutdownOff = 6,
  PowerActionWarmEject = 7,
  PowerActionDisplayOff = 8,
};

typedef enum _DEVICE_POWER_STATE
{
  PowerDeviceUnspecified = 0,
  PowerDeviceD0 = 1,
  PowerDeviceD1 = 2,
  PowerDeviceD2 = 3,
  PowerDeviceD3 = 4,
  PowerDeviceMaximum = 5,
} DEVICE_POWER_STATE, *PDEVICE_POWER_STATE;

typedef enum _PLUGPLAY_EVENT_CATEGORY
{
  HardwareProfileChangeEvent = 0,
  TargetDeviceChangeEvent = 1,
  DeviceClassChangeEvent = 2,
  CustomDeviceEvent = 3,
  DeviceInstallEvent = 4,
  DeviceArrivalEvent = 5,
  VetoEvent = 6,
  BlockedDriverEvent = 7,
  InvalidIDEvent = 8,
  DevicePropertyChangeEvent = 9,
  DeviceInstanceRemovalEvent = 10,
  DeviceInstanceStartedEvent = 11,
  MaxPlugEventCategory = 12,
} PLUGPLAY_EVENT_CATEGORY, *PPLUGPLAY_EVENT_CATEGORY;

typedef enum _PNP_VETO_TYPE
{
  PNP_VetoTypeUnknown = 0,
  PNP_VetoLegacyDevice = 1,
  PNP_VetoPendingClose = 2,
  PNP_VetoWindowsApp = 3,
  PNP_VetoWindowsService = 4,
  PNP_VetoOutstandingOpen = 5,
  PNP_VetoDevice = 6,
  PNP_VetoDriver = 7,
  PNP_VetoIllegalDeviceRequest = 8,
  PNP_VetoInsufficientPower = 9,
  PNP_VetoNonDisableable = 10,
  PNP_VetoLegacyDriver = 11,
  PNP_VetoInsufficientRights = 12,
  PNP_VetoAlreadyRemoved = 13,
} PNP_VETO_TYPE, *PPNP_VETO_TYPE;

typedef struct _PLUGPLAY_EVENT_BLOCK
{
  /* 0x0000 */ struct _GUID EventGuid;
  /* 0x0010 */ enum _PLUGPLAY_EVENT_CATEGORY EventCategory;
  /* 0x0014 */ long Padding_4;
  /* 0x0018 */ unsigned long* Result;
  /* 0x0020 */ unsigned long Flags;
  /* 0x0024 */ unsigned long TotalSize;
  /* 0x0028 */ void* DeviceObject;
  union
  {
    union
    {
      struct
      {
        /* 0x0030 */ struct _GUID ClassGuid;
        /* 0x0040 */ wchar_t SymbolicLinkName[1];
        /* 0x0042 */ char __PADDING__[2];
      } /* size: 0x0014 */ DeviceClass;
      struct
      {
        /* 0x0030 */ wchar_t DeviceId[1];
      } /* size: 0x0002 */ TargetDevice;
      struct
      {
        /* 0x0030 */ wchar_t DeviceId[1];
      } /* size: 0x0002 */ InstallDevice;
      struct
      {
        /* 0x0030 */ void* NotificationStructure;
        /* 0x0038 */ wchar_t DeviceId[1];
        /* 0x003a */ char __PADDING__[6];
      } /* size: 0x0010 */ CustomNotification;
      struct
      {
        /* 0x0030 */ void* Notification;
      } /* size: 0x0008 */ ProfileNotification;
      struct
      {
        /* 0x0030 */ unsigned long NotificationCode;
        /* 0x0034 */ unsigned long NotificationData;
      } /* size: 0x0008 */ PowerNotification;
      struct
      {
        /* 0x0030 */ enum _PNP_VETO_TYPE VetoType;
        /* 0x0034 */ wchar_t DeviceIdVetoNameBuffer[1];
        /* 0x0036 */ char __PADDING__[2];
      } /* size: 0x0008 */ VetoNotification;
      struct
      {
        /* 0x0030 */ struct _GUID BlockedDriverGuid;
      } /* size: 0x0010 */ BlockedDriverNotification;
      struct
      {
        /* 0x0030 */ wchar_t ParentId[1];
      } /* size: 0x0002 */ InvalidIDNotification;
      struct
      {
        /* 0x0030 */ struct _GUID PowerSettingGuid;
        /* 0x0040 */ unsigned long Flags;
        /* 0x0044 */ unsigned long SessionId;
        /* 0x0048 */ unsigned long DataLength;
        /* 0x004c */ unsigned char Data[1];
        /* 0x004d */ char __PADDING__[3];
      } /* size: 0x0020 */ PowerSettingNotification;
      struct
      {
        /* 0x0030 */ wchar_t DeviceId[1];
      } /* size: 0x0002 */ PropertyChangeNotification;
      struct
      {
        /* 0x0030 */ wchar_t DeviceId[1];
      } /* size: 0x0002 */ DeviceInstanceNotification;
    }uu; /* size: 0x0020 */
  } /* size: 0x0020 */ u;
} PLUGPLAY_EVENT_BLOCK, *PPLUGPLAY_EVENT_BLOCK; /* size: 0x0050 */

typedef enum _DEVICE_WAKE_DEPTH
{
  DeviceWakeDepthNotWakeable = 0,
  DeviceWakeDepthD0 = 1,
  DeviceWakeDepthD1 = 2,
  DeviceWakeDepthD2 = 3,
  DeviceWakeDepthD3hot = 4,
  DeviceWakeDepthD3cold = 5,
  DeviceWakeDepthMaximum = 6,
} DEVICE_WAKE_DEPTH, *PDEVICE_WAKE_DEPTH;

typedef struct _ALPC_COMPLETION_LIST_STATE
{
  union
  {
    union
    {
      struct
      {
        struct /* bitfield */
        {
          /* 0x0000 */ unsigned __int64 Head : 24; /* bit position: 0 */
          /* 0x0000 */ unsigned __int64 Tail : 24; /* bit position: 24 */
          /* 0x0000 */ unsigned __int64 ActiveThreadCount : 16; /* bit position: 48 */
        }; /* bitfield */
      } /* size: 0x0008 */ s1;
      /* 0x0000 */ __int64 Value;
    }; /* size: 0x0008 */
  } /* size: 0x0008 */ u1;
} ALPC_COMPLETION_LIST_STATE, *PALPC_COMPLETION_LIST_STATE; /* size: 0x0008 */

typedef enum _WHEA_ERROR_SOURCE_TYPE
{
  WheaErrSrcTypeMCE = 0,
  WheaErrSrcTypeCMC = 1,
  WheaErrSrcTypeCPE = 2,
  WheaErrSrcTypeNMI = 3,
  WheaErrSrcTypePCIe = 4,
  WheaErrSrcTypeGeneric = 5,
  WheaErrSrcTypeINIT = 6,
  WheaErrSrcTypeBOOT = 7,
  WheaErrSrcTypeSCIGeneric = 8,
  WheaErrSrcTypeIPFMCA = 9,
  WheaErrSrcTypeIPFCMC = 10,
  WheaErrSrcTypeIPFCPE = 11,
  WheaErrSrcTypeGenericV2 = 12,
  WheaErrSrcTypeSCIGenericV2 = 13,
  WheaErrSrcTypeBMC = 14,
  WheaErrSrcTypePMEM = 15,
  WheaErrSrcTypeDeviceDriver = 16,
  WheaErrSrcTypeMax = 17,
} WHEA_ERROR_SOURCE_TYPE, *PWHEA_ERROR_SOURCE_TYPE;

typedef struct _RTL_RB_TREE
{
  /* 0x0000 */ struct _RTL_BALANCED_NODE* Root;
  union
  {
    /* 0x0008 */ unsigned char Encoded : 1; /* bit position: 0 */
    /* 0x0008 */ struct _RTL_BALANCED_NODE* Min;
  }; /* size: 0x0008 */
} RTL_RB_TREE, *PRTL_RB_TREE; /* size: 0x0010 */

typedef struct _KSCB
{
  /* 0x0000 */ unsigned __int64 GenerationCycles;
  /* 0x0008 */ unsigned __int64 MinQuotaCycleTarget;
  /* 0x0010 */ unsigned __int64 MaxQuotaCycleTarget;
  /* 0x0018 */ unsigned __int64 RankCycleTarget;
  /* 0x0020 */ unsigned __int64 LongTermCycles;
  /* 0x0028 */ unsigned __int64 LastReportedCycles;
  /* 0x0030 */ volatile unsigned __int64 OverQuotaHistory;
  /* 0x0038 */ unsigned __int64 ReadyTime;
  /* 0x0040 */ unsigned __int64 InsertTime;
  /* 0x0048 */ struct _LIST_ENTRY PerProcessorList;
  /* 0x0058 */ struct _RTL_BALANCED_NODE QueueNode;
  struct /* bitfield */
  {
    /* 0x0070 */ unsigned char Inserted : 1; /* bit position: 0 */
    /* 0x0070 */ unsigned char MaxOverQuota : 1; /* bit position: 1 */
    /* 0x0070 */ unsigned char MinOverQuota : 1; /* bit position: 2 */
    /* 0x0070 */ unsigned char RankBias : 1; /* bit position: 3 */
    /* 0x0070 */ unsigned char SoftCap : 1; /* bit position: 4 */
    /* 0x0070 */ unsigned char ShareRankOwner : 1; /* bit position: 5 */
    /* 0x0070 */ unsigned char Spare1 : 2; /* bit position: 6 */
  }; /* bitfield */
  /* 0x0071 */ unsigned char Depth;
  /* 0x0072 */ unsigned short ReadySummary;
  /* 0x0074 */ unsigned long Rank;
  /* 0x0078 */ volatile unsigned long* ShareRank;
  /* 0x0080 */ volatile unsigned long OwnerShareRank;
  /* 0x0084 */ long Padding_5;
  /* 0x0088 */ struct _LIST_ENTRY ReadyListHead[16];
  /* 0x0188 */ struct _RTL_RB_TREE ChildScbQueue;
  /* 0x0198 */ struct _KSCB* Parent;
  /* 0x01a0 */ struct _KSCB* Root;
} KSCB, *PKSCB; /* size: 0x01a8 */

typedef enum _WHEA_ERROR_SOURCE_STATE
{
  WheaErrSrcStateStopped = 1,
  WheaErrSrcStateStarted = 2,
  WheaErrSrcStateRemoved = 3,
  WheaErrSrcStateRemovePending = 4,
} WHEA_ERROR_SOURCE_STATE, *PWHEA_ERROR_SOURCE_STATE;

typedef enum _WHEA_EVENT_LOG_ENTRY_TYPE
{
  WheaEventLogEntryTypeInformational = 0,
  WheaEventLogEntryTypeWarning = 1,
  WheaEventLogEntryTypeError = 2,
} WHEA_EVENT_LOG_ENTRY_TYPE, *PWHEA_EVENT_LOG_ENTRY_TYPE;

typedef struct _AMD64_DBGKD_CONTROL_SET
{
  /* 0x0000 */ unsigned long TraceFlag;
  /* 0x0004 */ unsigned __int64 Dr7;
  /* 0x000c */ unsigned __int64 CurrentSymbolStart;
  /* 0x0014 */ unsigned __int64 CurrentSymbolEnd;
} AMD64_DBGKD_CONTROL_SET, *PAMD64_DBGKD_CONTROL_SET; /* size: 0x001c */

typedef struct _EVENT_PAYLOAD_PREDICATE
{
  /* 0x0000 */ unsigned short FieldIndex;
  /* 0x0002 */ unsigned short CompareOp;
  /* 0x0004 */ long Padding_6;
  /* 0x0008 */ unsigned __int64 Value[2];
} EVENT_PAYLOAD_PREDICATE, *PEVENT_PAYLOAD_PREDICATE; /* size: 0x0018 */

typedef enum _WHEA_EVENT_LOG_ENTRY_ID
{
  WheaEventLogEntryIdCmcPollingTimeout = -2147483647,
  WheaEventLogEntryIdWheaInit = -2147483646,
  WheaEventLogEntryIdCmcSwitchToPolling = -2147483645,
  WheaEventLogEntryIdDroppedCorrectedError = -2147483644,
  WheaEventLogEntryIdStartedReportHwError = -2147483643,
  WheaEventLogEntryIdPFAMemoryOfflined = -2147483642,
  WheaEventLogEntryIdPFAMemoryRemoveMonitor = -2147483641,
  WheaEventLogEntryIdPFAMemoryPolicy = -2147483640,
  WheaEventLogEntryIdPshedInjectError = -2147483639,
  WheaEventLogEntryIdOscCapabilities = -2147483638,
  WheaEventLogEntryIdPshedPluginRegister = -2147483637,
  WheaEventLogEntryIdAddRemoveErrorSource = -2147483636,
  WheaEventLogEntryIdWorkQueueItem = -2147483635,
  WheaEventLogEntryIdAttemptErrorRecovery = -2147483634,
  WheaEventLogEntryIdMcaFoundErrorInBank = -2147483633,
  WheaEventLogEntryIdMcaStuckErrorCheck = -2147483632,
  WheaEventLogEntryIdMcaErrorCleared = -2147483631,
  WheaEventLogEntryIdClearedPoison = -2147483630,
  WheaEventLogEntryIdProcessEINJ = -2147483629,
  WheaEventLogEntryIdProcessHEST = -2147483628,
  WheaEventLogEntryIdCreateGenericRecord = -2147483627,
  WheaEventLogEntryIdErrorRecord = -2147483626,
  WheaEventLogEntryIdErrorRecordLimit = -2147483625,
  WheaEventLogEntryIdErrSrcArrayInvalid = -2147483623,
  WheaEventLogEntryIdAcpiTimeOut = -2147483622,
  WheaEventLogCmciRestart = -2147483621,
  WheaEventLogCmciFinalRestart = -2147483620,
  WheaEventLogEntryEtwOverFlow = -2147483619,
  WheaEventLogAzccRootBusSearchErr = -2147483618,
  WheaEventLogAzccRootBusList = -2147483617,
  WheaEventLogEntryIdErrSrcInvalid = -2147483616,
  WheaEventLogEntryIdGenericErrMemMap = -2147483615,
  WheaEventLogEntryIdPshedCallbackCollision = -2147483614,
  WheaEventLogEntryIdSELBugCheckProgress = -2147483613,
  WheaEventLogEntryIdPshedPluginLoad = -2147483612,
  WheaEventLogEntryIdPshedPluginUnload = -2147483611,
  WheaEventLogEntryIdPshedPluginSupported = -2147483610,
  WheaEventLogEntryIdDeviceDriver = -2147483609,
  WheaEventLogEntryIdCmciImplPresent = -2147483608,
  WheaEventLogEntryIdCmciInitError = -2147483607,
  WheaEventLogEntryIdSELBugCheckRecovery = -2147483606,
  WheaEventLogEntryIdDrvErrSrcInvalid = -2147483605,
  WheaEventLogEntryIdDrvHandleBusy = -2147483604,
  WheaEventLogEntryIdWheaHeartbeat = -2147483603,
  WheaEventLogAzccRootBusPoisonSet = -2147483602,
  WheaEventLogEntryIdSELBugCheckInfo = -2147483601,
  WheaEventLogEntryIdErrDimmInfoMismatch = -2147483600,
  WheaEventLogEntryIdeDpcEnabled = -2147483599,
} WHEA_EVENT_LOG_ENTRY_ID, *PWHEA_EVENT_LOG_ENTRY_ID;

typedef enum _WHEA_ERROR_TYPE
{
  WheaErrTypeProcessor = 0,
  WheaErrTypeMemory = 1,
  WheaErrTypePCIExpress = 2,
  WheaErrTypeNMI = 3,
  WheaErrTypePCIXBus = 4,
  WheaErrTypePCIXDevice = 5,
  WheaErrTypeGeneric = 6,
  WheaErrTypePmem = 7,
} WHEA_ERROR_TYPE, *PWHEA_ERROR_TYPE;

typedef enum _WHEA_ERROR_SEVERITY
{
  WheaErrSevRecoverable = 0,
  WheaErrSevFatal = 1,
  WheaErrSevCorrected = 2,
  WheaErrSevInformational = 3,
} WHEA_ERROR_SEVERITY, *PWHEA_ERROR_SEVERITY;

typedef enum _WHEA_ERROR_PACKET_DATA_FORMAT
{
  WheaDataFormatIPFSalRecord = 0,
  WheaDataFormatXPFMCA = 1,
  WheaDataFormatMemory = 2,
  WheaDataFormatPCIExpress = 3,
  WheaDataFormatNMIPort = 4,
  WheaDataFormatPCIXBus = 5,
  WheaDataFormatPCIXDevice = 6,
  WheaDataFormatGeneric = 7,
  WheaDataFormatMax = 8,
} WHEA_ERROR_PACKET_DATA_FORMAT, *PWHEA_ERROR_PACKET_DATA_FORMAT;

typedef enum _KINTERRUPT_POLARITY
{
  InterruptPolarityUnknown = 0,
  InterruptActiveHigh = 1,
  InterruptRisingEdge = 1,
  InterruptActiveLow = 2,
  InterruptFallingEdge = 2,
  InterruptActiveBoth = 3,
  InterruptActiveBothTriggerLow = 3,
  InterruptActiveBothTriggerHigh = 4,
} KINTERRUPT_POLARITY, *PKINTERRUPT_POLARITY;

typedef enum _KINTERRUPT_MODE
{
  LevelSensitive = 0,
  Latched = 1,
} KINTERRUPT_MODE, *PKINTERRUPT_MODE;

typedef union _LARGE_INTEGER
{
  union
  {
    struct
    {
      /* 0x0000 */ unsigned long LowPart;
      /* 0x0004 */ long HighPart;
    }; /* size: 0x0008 */
    struct
    {
      /* 0x0000 */ unsigned long LowPart;
      /* 0x0004 */ long HighPart;
    } /* size: 0x0008 */ u;
    /* 0x0000 */ __int64 QuadPart;
  }; /* size: 0x0008 */
} LARGE_INTEGER, *PLARGE_INTEGER; /* size: 0x0008 */

typedef enum _IRQ_PRIORITY
{
  IrqPriorityUndefined = 0,
  IrqPriorityLow = 1,
  IrqPriorityNormal = 2,
  IrqPriorityHigh = 3,
} IRQ_PRIORITY, *PIRQ_PRIORITY;

typedef struct _IO_RESOURCE_DESCRIPTOR
{
  /* 0x0000 */ unsigned char Option;
  /* 0x0001 */ unsigned char Type;
  /* 0x0002 */ unsigned char ShareDisposition;
  /* 0x0003 */ unsigned char Spare1;
  /* 0x0004 */ unsigned short Flags;
  /* 0x0006 */ unsigned short Spare2;
  union
  {
    union
    {
      struct
      {
        /* 0x0008 */ unsigned long Length;
        /* 0x000c */ unsigned long Alignment;
        /* 0x0010 */ union _LARGE_INTEGER MinimumAddress;
        /* 0x0018 */ union _LARGE_INTEGER MaximumAddress;
      } /* size: 0x0018 */ Port;
      struct
      {
        /* 0x0008 */ unsigned long Length;
        /* 0x000c */ unsigned long Alignment;
        /* 0x0010 */ union _LARGE_INTEGER MinimumAddress;
        /* 0x0018 */ union _LARGE_INTEGER MaximumAddress;
      } /* size: 0x0018 */ Memory;
      struct
      {
        /* 0x0008 */ unsigned long MinimumVector;
        /* 0x000c */ unsigned long MaximumVector;
        /* 0x0010 */ unsigned short AffinityPolicy;
        /* 0x0012 */ unsigned short Group;
        /* 0x0014 */ enum _IRQ_PRIORITY PriorityPolicy;
        /* 0x0018 */ unsigned __int64 TargetedProcessors;
      } /* size: 0x0018 */ Interrupt;
      struct
      {
        /* 0x0008 */ unsigned long MinimumChannel;
        /* 0x000c */ unsigned long MaximumChannel;
      } /* size: 0x0008 */ Dma;
      struct
      {
        /* 0x0008 */ unsigned long RequestLine;
        /* 0x000c */ unsigned long Reserved;
        /* 0x0010 */ unsigned long Channel;
        /* 0x0014 */ unsigned long TransferWidth;
      } /* size: 0x0010 */ DmaV3;
      struct
      {
        /* 0x0008 */ unsigned long Length;
        /* 0x000c */ unsigned long Alignment;
        /* 0x0010 */ union _LARGE_INTEGER MinimumAddress;
        /* 0x0018 */ union _LARGE_INTEGER MaximumAddress;
      } /* size: 0x0018 */ Generic;
      struct
      {
        /* 0x0008 */ unsigned long Data[3];
      } /* size: 0x000c */ DevicePrivate;
      struct
      {
        /* 0x0008 */ unsigned long Length;
        /* 0x000c */ unsigned long MinBusNumber;
        /* 0x0010 */ unsigned long MaxBusNumber;
        /* 0x0014 */ unsigned long Reserved;
      } /* size: 0x0010 */ BusNumber;
      struct
      {
        /* 0x0008 */ unsigned long Priority;
        /* 0x000c */ unsigned long Reserved1;
        /* 0x0010 */ unsigned long Reserved2;
      } /* size: 0x000c */ ConfigData;
      struct
      {
        /* 0x0008 */ unsigned long Length40;
        /* 0x000c */ unsigned long Alignment40;
        /* 0x0010 */ union _LARGE_INTEGER MinimumAddress;
        /* 0x0018 */ union _LARGE_INTEGER MaximumAddress;
      } /* size: 0x0018 */ Memory40;
      struct
      {
        /* 0x0008 */ unsigned long Length48;
        /* 0x000c */ unsigned long Alignment48;
        /* 0x0010 */ union _LARGE_INTEGER MinimumAddress;
        /* 0x0018 */ union _LARGE_INTEGER MaximumAddress;
      } /* size: 0x0018 */ Memory48;
      struct
      {
        /* 0x0008 */ unsigned long Length64;
        /* 0x000c */ unsigned long Alignment64;
        /* 0x0010 */ union _LARGE_INTEGER MinimumAddress;
        /* 0x0018 */ union _LARGE_INTEGER MaximumAddress;
      } /* size: 0x0018 */ Memory64;
      struct
      {
        /* 0x0008 */ unsigned char Class;
        /* 0x0009 */ unsigned char Type;
        /* 0x000a */ unsigned char Reserved1;
        /* 0x000b */ unsigned char Reserved2;
        /* 0x000c */ unsigned long IdLowPart;
        /* 0x0010 */ unsigned long IdHighPart;
      } /* size: 0x000c */ Connection;
    }; /* size: 0x0018 */
  } /* size: 0x0018 */ u;
} IO_RESOURCE_DESCRIPTOR, *PIO_RESOURCE_DESCRIPTOR; /* size: 0x0020 */

typedef struct _IO_RESOURCE_LIST
{
  /* 0x0000 */ unsigned short Version;
  /* 0x0002 */ unsigned short Revision;
  /* 0x0004 */ unsigned long Count;
  /* 0x0008 */ struct _IO_RESOURCE_DESCRIPTOR Descriptors[1];
} IO_RESOURCE_LIST, *PIO_RESOURCE_LIST; /* size: 0x0028 */

typedef struct _ARMCE_DBGKD_CONTROL_SET
{
  /* 0x0000 */ unsigned long Continue;
  /* 0x0004 */ unsigned long CurrentSymbolStart;
  /* 0x0008 */ unsigned long CurrentSymbolEnd;
} ARMCE_DBGKD_CONTROL_SET, *PARMCE_DBGKD_CONTROL_SET; /* size: 0x000c */

typedef struct _ETW_DECODE_CONTROL_ENTRY
{
  /* 0x0000 */ struct _ETW_DECODE_CONTROL_ENTRY* Next;
  /* 0x0008 */ struct _GUID Decode;
  /* 0x0018 */ struct _GUID Control;
  /* 0x0028 */ unsigned char ConsumersNotified;
  /* 0x0029 */ char __PADDING__[7];
} ETW_DECODE_CONTROL_ENTRY, *PETW_DECODE_CONTROL_ENTRY; /* size: 0x0030 */

typedef enum _REG_NOTIFY_CLASS
{
  RegNtDeleteKey = 0,
  RegNtPreDeleteKey = 0,
  RegNtSetValueKey = 1,
  RegNtPreSetValueKey = 1,
  RegNtDeleteValueKey = 2,
  RegNtPreDeleteValueKey = 2,
  RegNtSetInformationKey = 3,
  RegNtPreSetInformationKey = 3,
  RegNtRenameKey = 4,
  RegNtPreRenameKey = 4,
  RegNtEnumerateKey = 5,
  RegNtPreEnumerateKey = 5,
  RegNtEnumerateValueKey = 6,
  RegNtPreEnumerateValueKey = 6,
  RegNtQueryKey = 7,
  RegNtPreQueryKey = 7,
  RegNtQueryValueKey = 8,
  RegNtPreQueryValueKey = 8,
  RegNtQueryMultipleValueKey = 9,
  RegNtPreQueryMultipleValueKey = 9,
  RegNtPreCreateKey = 10,
  RegNtPostCreateKey = 11,
  RegNtPreOpenKey = 12,
  RegNtPostOpenKey = 13,
  RegNtKeyHandleClose = 14,
  RegNtPreKeyHandleClose = 14,
  RegNtPostDeleteKey = 15,
  RegNtPostSetValueKey = 16,
  RegNtPostDeleteValueKey = 17,
  RegNtPostSetInformationKey = 18,
  RegNtPostRenameKey = 19,
  RegNtPostEnumerateKey = 20,
  RegNtPostEnumerateValueKey = 21,
  RegNtPostQueryKey = 22,
  RegNtPostQueryValueKey = 23,
  RegNtPostQueryMultipleValueKey = 24,
  RegNtPostKeyHandleClose = 25,
  RegNtPreCreateKeyEx = 26,
  RegNtPostCreateKeyEx = 27,
  RegNtPreOpenKeyEx = 28,
  RegNtPostOpenKeyEx = 29,
  RegNtPreFlushKey = 30,
  RegNtPostFlushKey = 31,
  RegNtPreLoadKey = 32,
  RegNtPostLoadKey = 33,
  RegNtPreUnLoadKey = 34,
  RegNtPostUnLoadKey = 35,
  RegNtPreQueryKeySecurity = 36,
  RegNtPostQueryKeySecurity = 37,
  RegNtPreSetKeySecurity = 38,
  RegNtPostSetKeySecurity = 39,
  RegNtCallbackObjectContextCleanup = 40,
  RegNtPreRestoreKey = 41,
  RegNtPostRestoreKey = 42,
  RegNtPreSaveKey = 43,
  RegNtPostSaveKey = 44,
  RegNtPreReplaceKey = 45,
  RegNtPostReplaceKey = 46,
  RegNtPreQueryKeyName = 47,
  RegNtPostQueryKeyName = 48,
  MaxRegNtNotifyClass = 49,
} REG_NOTIFY_CLASS, *PREG_NOTIFY_CLASS;

typedef enum _HALP_DMA_MAP_BUFFER_TYPE
{
  HalpDmaContiguousMapBuffer = 0,
  HalpDmaNonContiguousMapBuffer = 1,
  HalpDmaMaximumMapBufferType = 2,
} HALP_DMA_MAP_BUFFER_TYPE, *PHALP_DMA_MAP_BUFFER_TYPE;

typedef enum _KNOWN_CONTROLLER_TYPE
{
  InterruptControllerInvalid = 0,
  InterruptControllerPic = 1,
  InterruptControllerApic = 2,
  InterruptControllerGic = 3,
  InterruptControllerGicV3 = 4,
  InterruptControllerGicV4 = 5,
  InterruptControllerBcm = 6,
  InterruptControllerUnknown = 4096,
} KNOWN_CONTROLLER_TYPE, *PKNOWN_CONTROLLER_TYPE;

typedef enum _INTERRUPT_PROBLEM
{
  InterruptProblemNone = 0,
  InterruptProblemMadtParsingFailure = 1,
  InterruptProblemNoControllersFound = 2,
  InterruptProblemFailedDiscovery = 3,
  InterruptProblemInitializeLocalUnitFailed = 4,
  InterruptProblemInitializeIoUnitFailed = 5,
  InterruptProblemSetLogicalIdFailed = 6,
  InterruptProblemSetLineStateFailed = 7,
  InterruptProblemGenerateMessageFailed = 8,
  InterruptProblemConvertIdFailed = 9,
  InterruptProblemCmciSetupFailed = 10,
  InterruptProblemQueryMaxProcessorsCalledTooEarly = 11,
  InterruptProblemProcessorReset = 12,
  InterruptProblemStartProcessorFailed = 13,
  InterruptProblemProcessorNotAlive = 14,
  InterruptProblemLowerIrqlViolation = 15,
  InterruptProblemInvalidIrql = 16,
  InterruptProblemNoSuchController = 17,
  InterruptProblemNoSuchLines = 18,
  InterruptProblemBadConnectionData = 19,
  InterruptProblemBadRoutingData = 20,
  InterruptProblemInvalidProcessor = 21,
  InterruptProblemFailedToAttainTarget = 22,
  InterruptProblemUnsupportedWiringConfiguration = 23,
  InterruptProblemSpareAlreadyStarted = 24,
  InterruptProblemClusterNotFullyReplaced = 25,
  InterruptProblemNewClusterAlreadyActive = 26,
  InterruptProblemNewClusterTooLarge = 27,
  InterruptProblemCannotHardwareQuiesce = 28,
  InterruptProblemIpiDestinationUpdateFailed = 29,
  InterruptProblemNoMemory = 30,
  InterruptProblemNoIrtEntries = 31,
  InterruptProblemConnectionDataBaitAndSwitch = 32,
  InterruptProblemInvalidLogicalFlatId = 33,
  InterruptProblemDeinitializeLocalUnitFailed = 34,
  InterruptProblemDeinitializeIoUnitFailed = 35,
  InterruptProblemMismatchedThermalLvtIsr = 36,
  InterruptProblemHvRetargetFailed = 37,
  InterruptProblemDeferredErrorSetupFailed = 38,
} INTERRUPT_PROBLEM, *PINTERRUPT_PROBLEM;

typedef enum _IO_ALLOCATION_ACTION
{
  KeepObject = 1,
  DeallocateObject = 2,
  DeallocateObjectKeepRegisters = 3,
} IO_ALLOCATION_ACTION, *PIO_ALLOCATION_ACTION;

typedef enum _MODE
{
  KernelMode = 0,
  UserMode = 1,
  MaximumMode = 2,
} MODE, *PMODE;

typedef union _POWER_STATE
{
  union
  {
    /* 0x0000 */ enum _SYSTEM_POWER_STATE SystemState;
    /* 0x0000 */ enum _DEVICE_POWER_STATE DeviceState;
  }; /* size: 0x0004 */
} POWER_STATE, *PPOWER_STATE; /* size: 0x0004 */

typedef struct _FS_FILTER_CALLBACKS
{
  /* 0x0000 */ unsigned long SizeOfFsFilterCallbacks;
  /* 0x0004 */ unsigned long Reserved;
  /* 0x0008 */ void* PreAcquireForSectionSynchronization /* function */;
  /* 0x0010 */ void* PostAcquireForSectionSynchronization /* function */;
  /* 0x0018 */ void* PreReleaseForSectionSynchronization /* function */;
  /* 0x0020 */ void* PostReleaseForSectionSynchronization /* function */;
  /* 0x0028 */ void* PreAcquireForCcFlush /* function */;
  /* 0x0030 */ void* PostAcquireForCcFlush /* function */;
  /* 0x0038 */ void* PreReleaseForCcFlush /* function */;
  /* 0x0040 */ void* PostReleaseForCcFlush /* function */;
  /* 0x0048 */ void* PreAcquireForModifiedPageWriter /* function */;
  /* 0x0050 */ void* PostAcquireForModifiedPageWriter /* function */;
  /* 0x0058 */ void* PreReleaseForModifiedPageWriter /* function */;
  /* 0x0060 */ void* PostReleaseForModifiedPageWriter /* function */;
  /* 0x0068 */ void* PreQueryOpen /* function */;
  /* 0x0070 */ void* PostQueryOpen /* function */;
} FS_FILTER_CALLBACKS, *PFS_FILTER_CALLBACKS; /* size: 0x0078 */

typedef enum _MEMORY_CACHING_TYPE_ORIG
{
  MmFrameBufferCached = 2,
} MEMORY_CACHING_TYPE_ORIG, *PMEMORY_CACHING_TYPE_ORIG;

typedef struct _DMA_ADAPTER
{
  /* 0x0000 */ unsigned short Version;
  /* 0x0002 */ unsigned short Size;
  /* 0x0004 */ long Padding_7;
  /* 0x0008 */ struct _DMA_OPERATIONS* DmaOperations;
} DMA_ADAPTER, *PDMA_ADAPTER; /* size: 0x0010 */

typedef struct _HALP_DMA_TRANSLATION_BUFFER_POSITION
{
  /* 0x0000 */ struct _HALP_DMA_TRANSLATION_BUFFER* Buffer;
  /* 0x0008 */ unsigned long Offset;
  /* 0x000c */ long __PADDING__[1];
} HALP_DMA_TRANSLATION_BUFFER_POSITION, *PHALP_DMA_TRANSLATION_BUFFER_POSITION; /* size: 0x0010 */

typedef struct _HALP_DMA_ADAPTER_OBJECT
{
  /* 0x0000 */ struct _DMA_ADAPTER DmaHeader;
  /* 0x0010 */ struct _RTL_BITMAP* ContiguousMapRegisters;
  /* 0x0018 */ struct _HALP_DMA_TRANSLATION_ENTRY* ScatterBufferListHead;
  /* 0x0020 */ unsigned long NumberOfFreeScatterBuffers;
  /* 0x0024 */ long Padding_8;
  /* 0x0028 */ struct _HALP_DMA_TRANSLATION_BUFFER* ContiguousTranslations;
  /* 0x0030 */ struct _HALP_DMA_TRANSLATION_BUFFER* ScatterTranslations;
  /* 0x0038 */ struct _HALP_DMA_TRANSLATION_BUFFER_POSITION ContiguousTranslationEnd;
  /* 0x0048 */ struct _HALP_DMA_TRANSLATION_BUFFER_POSITION ScatterTranslationEnd;
  struct
  {
    /* 0x0058 */ struct _HALP_DMA_TRANSLATION_BUFFER_POSITION ContiguousHint;
    /* 0x0068 */ struct _HALP_DMA_TRANSLATION_BUFFER_POSITION ScatterHint;
  } /* size: 0x0020 */ CrashDump;
  /* 0x0078 */ unsigned __int64 SpinLock;
  /* 0x0080 */ unsigned __int64 GrowLock;
  /* 0x0088 */ union _LARGE_INTEGER MaximumPhysicalAddress;
  /* 0x0090 */ unsigned char IsMasterAdapter;
  /* 0x0091 */ unsigned char DmaCanCross64K;
  /* 0x0092 */ char Padding_9[2];
  /* 0x0094 */ unsigned long LibraryVersion;
} HALP_DMA_ADAPTER_OBJECT, *PHALP_DMA_ADAPTER_OBJECT; /* size: 0x0098 */

typedef enum _INTERLOCKED_RESULT
{
  ResultNegative = 1,
  ResultZero = 0,
  ResultPositive = 2,
} INTERLOCKED_RESULT, *PINTERLOCKED_RESULT;

typedef union _WHEA_ERROR_PACKET_FLAGS
{
  union
  {
    struct /* bitfield */
    {
      /* 0x0000 */ unsigned long PreviousError : 1; /* bit position: 0 */
      /* 0x0000 */ unsigned long CriticalEvent : 1; /* bit position: 1 */
      /* 0x0000 */ unsigned long HypervisorError : 1; /* bit position: 2 */
      /* 0x0000 */ unsigned long Simulated : 1; /* bit position: 3 */
      /* 0x0000 */ unsigned long PlatformPfaControl : 1; /* bit position: 4 */
      /* 0x0000 */ unsigned long PlatformDirectedOffline : 1; /* bit position: 5 */
      /* 0x0000 */ unsigned long AddressTranslationRequired : 1; /* bit position: 6 */
      /* 0x0000 */ unsigned long AddressTranslationCompleted : 1; /* bit position: 7 */
      /* 0x0000 */ unsigned long Reserved2 : 24; /* bit position: 8 */
    }; /* bitfield */
    /* 0x0000 */ unsigned long AsULONG;
  }; /* size: 0x0004 */
} WHEA_ERROR_PACKET_FLAGS, *PWHEA_ERROR_PACKET_FLAGS; /* size: 0x0004 */

typedef struct _WHEA_ERROR_PACKET_V2
{
  /* 0x0000 */ unsigned long Signature;
  /* 0x0004 */ unsigned long Version;
  /* 0x0008 */ unsigned long Length;
  /* 0x000c */ union _WHEA_ERROR_PACKET_FLAGS Flags;
  /* 0x0010 */ enum _WHEA_ERROR_TYPE ErrorType;
  /* 0x0014 */ enum _WHEA_ERROR_SEVERITY ErrorSeverity;
  /* 0x0018 */ unsigned long ErrorSourceId;
  /* 0x001c */ enum _WHEA_ERROR_SOURCE_TYPE ErrorSourceType;
  /* 0x0020 */ struct _GUID NotifyType;
  /* 0x0030 */ unsigned __int64 Context;
  /* 0x0038 */ enum _WHEA_ERROR_PACKET_DATA_FORMAT DataFormat;
  /* 0x003c */ unsigned long Reserved1;
  /* 0x0040 */ unsigned long DataOffset;
  /* 0x0044 */ unsigned long DataLength;
  /* 0x0048 */ unsigned long PshedDataOffset;
  /* 0x004c */ unsigned long PshedDataLength;
} WHEA_ERROR_PACKET_V2, *PWHEA_ERROR_PACKET_V2; /* size: 0x0050 */

typedef struct _SEP_CACHED_HANDLES_TABLE
{
  /* 0x0000 */ struct _EX_PUSH_LOCK Lock;
  /* 0x0008 */ struct _RTL_DYNAMIC_HASH_TABLE* HashTable;
} SEP_CACHED_HANDLES_TABLE, *PSEP_CACHED_HANDLES_TABLE; /* size: 0x0010 */

typedef enum _WHEA_CPU_VENDOR
{
  WheaCpuVendorOther = 0,
  WheaCpuVendorIntel = 1,
  WheaCpuVendorAmd = 2,
} WHEA_CPU_VENDOR, *PWHEA_CPU_VENDOR;

typedef struct _WHEA_ERROR_SOURCE_CONFIGURATION_DD
{
  /* 0x0000 */ void* Initialize /* function */;
  /* 0x0008 */ void* Uninitialize /* function */;
  /* 0x0010 */ void* Correct /* function */;
} WHEA_ERROR_SOURCE_CONFIGURATION_DD, *PWHEA_ERROR_SOURCE_CONFIGURATION_DD; /* size: 0x0018 */

typedef enum _HAL_INIT_PHASE
{
  HalInitPhaseBspProcEarly = 0,
  HalInitPhaseBspProcEarlyMmReady = 1,
  HalInitPhaseBspProcEarlyTimerReady = 2,
  HalInitPhaseBspProcEarlyEnd = 3,
  HalInitPhasePnProcEarly = 4,
  HalInitPhasePnProcEarlyInterruptsReady = 5,
  HalInitPhasePnProcEarlyEnd = 6,
  HalInitPhaseBspSystemEarly = 7,
  HalInitPhaseBspSystemEarlyAcpiReady = 8,
  HalInitPhaseBspSystemEarlyHalExtensionsReady = 9,
  HalInitPhaseBspSystemEarlyInterruptsAlmostReady = 10,
  HalInitPhaseBspSystemEarlyIommusReady = 11,
  HalInitPhaseBspSystemEarlyInterruptsReady = 12,
  HalInitPhaseBspSystemEarlyDmaReady = 12,
  HalInitPhaseBspSystemEarlyProcReady = 13,
  HalInitPhaseBspSystemEarlyHwPerfCntReady = 14,
  HalInitPhaseBspSystemEarlyAllocationDone = 15,
  HalInitPhaseBspSystemEarlyEnd = 16,
  HalInitPhaseBspSystemLate = 17,
  HalInitPhaseBspSystemLateEnd = 18,
  HalInitPhasePnSystemLate = 19,
  HalInitPhasePnSystemLateEnd = 20,
  HalInitPhaseAllProcStartComplete = 21,
  HalInitPhaseAllProcStartCompleteEnd = 22,
  HalInitPhaseExPhase1Ready = 23,
  HalInitPhaseExPhase1ReadyEnd = 24,
  HalInitPhaseAcpiPdoStarted = 25,
  HalInitPhaseAcpiPdoStartedEnd = 26,
  HalInitPhaseReportResources = 27,
  HalInitPhaseReportResourcesEnd = 28,
  HalInitPhaseReportCoreSystemResources = 29,
  HalInitPhaseReportCoreSystemResourcesEnd = 30,
  HalInitPhaseLateSystemActions = 31,
  HalInitPhaseLateSystemActionsTelemetryReady = 32,
  HalInitPhaseLateSystemActionsEnd = 33,
} HAL_INIT_PHASE, *PHAL_INIT_PHASE;

typedef struct _M128A
{
  /* 0x0000 */ unsigned __int64 Low;
  /* 0x0008 */ __int64 High;
} M128A, *PM128A; /* size: 0x0010 */

typedef struct _STRING64
{
  /* 0x0000 */ unsigned short Length;
  /* 0x0002 */ unsigned short MaximumLength;
  /* 0x0004 */ long Padding_10;
  /* 0x0008 */ unsigned __int64 Buffer;
} STRING64, *PSTRING64; /* size: 0x0010 */

typedef struct _WHEA_PCI_SLOT_NUMBER
{
  union
  {
    union
    {
      struct
      {
        struct /* bitfield */
        {
          /* 0x0000 */ unsigned long DeviceNumber : 5; /* bit position: 0 */
          /* 0x0000 */ unsigned long FunctionNumber : 3; /* bit position: 5 */
          /* 0x0000 */ unsigned long Reserved : 24; /* bit position: 8 */
        }; /* bitfield */
      } /* size: 0x0004 */ bits;
      /* 0x0000 */ unsigned long AsULONG;
    }; /* size: 0x0004 */
  } /* size: 0x0004 */ u;
} WHEA_PCI_SLOT_NUMBER, *PWHEA_PCI_SLOT_NUMBER; /* size: 0x0004 */

typedef union _AER_ENDPOINT_DESCRIPTOR_FLAGS
{
  union
  {
    struct /* bitfield */
    {
      /* 0x0000 */ unsigned short UncorrectableErrorMaskRW : 1; /* bit position: 0 */
      /* 0x0000 */ unsigned short UncorrectableErrorSeverityRW : 1; /* bit position: 1 */
      /* 0x0000 */ unsigned short CorrectableErrorMaskRW : 1; /* bit position: 2 */
      /* 0x0000 */ unsigned short AdvancedCapsAndControlRW : 1; /* bit position: 3 */
      /* 0x0000 */ unsigned short Reserved : 12; /* bit position: 4 */
    }; /* bitfield */
    /* 0x0000 */ unsigned short AsUSHORT;
  }; /* size: 0x0002 */
} AER_ENDPOINT_DESCRIPTOR_FLAGS, *PAER_ENDPOINT_DESCRIPTOR_FLAGS; /* size: 0x0002 */

typedef struct _WHEA_AER_ENDPOINT_DESCRIPTOR
{
  /* 0x0000 */ unsigned short Type;
  /* 0x0002 */ unsigned char Enabled;
  /* 0x0003 */ unsigned char Reserved;
  /* 0x0004 */ unsigned long BusNumber;
  /* 0x0008 */ struct _WHEA_PCI_SLOT_NUMBER Slot;
  /* 0x000c */ unsigned short DeviceControl;
  /* 0x000e */ union _AER_ENDPOINT_DESCRIPTOR_FLAGS Flags;
  /* 0x0010 */ unsigned long UncorrectableErrorMask;
  /* 0x0014 */ unsigned long UncorrectableErrorSeverity;
  /* 0x0018 */ unsigned long CorrectableErrorMask;
  /* 0x001c */ unsigned long AdvancedCapsAndControl;
} WHEA_AER_ENDPOINT_DESCRIPTOR, *PWHEA_AER_ENDPOINT_DESCRIPTOR; /* size: 0x0020 */

typedef enum _USER_ACTIVITY_PRESENCE
{
  PowerUserPresent = 0,
  PowerUserNotPresent = 1,
  PowerUserInactive = 2,
  PowerUserMaximum = 3,
  PowerUserInvalid = 3,
} USER_ACTIVITY_PRESENCE, *PUSER_ACTIVITY_PRESENCE;

typedef enum _INTERFACE_TYPE
{
  InterfaceTypeUndefined = -1,
  Internal = 0,
  Isa = 1,
  Eisa = 2,
  MicroChannel = 3,
  TurboChannel = 4,
  PCIBus = 5,
  VMEBus = 6,
  NuBus = 7,
  PCMCIABus = 8,
  CBus = 9,
  MPIBus = 10,
  MPSABus = 11,
  ProcessorInternal = 12,
  InternalPowerBus = 13,
  PNPISABus = 14,
  PNPBus = 15,
  Vmcs = 16,
  ACPIBus = 17,
  MaximumInterfaceType = 18,
} INTERFACE_TYPE, *PINTERFACE_TYPE;

typedef union _MI_RESERVATION_CLUSTER_INFO
{
  union
  {
    struct /* bitfield */
    {
      /* 0x0000 */ unsigned long ClusterSize : 10; /* bit position: 0 */
      /* 0x0000 */ unsigned long SequenceNumber : 22; /* bit position: 10 */
    }; /* bitfield */
    /* 0x0000 */ long EntireInfo;
  }; /* size: 0x0004 */
} MI_RESERVATION_CLUSTER_INFO, *PMI_RESERVATION_CLUSTER_INFO; /* size: 0x0004 */

typedef struct _MI_MODWRITE_DATA
{
  /* 0x0000 */ __int64 PagesLoad;
  /* 0x0008 */ unsigned __int64 PagesAverage;
  /* 0x0010 */ unsigned __int64 AverageAvailablePages;
  /* 0x0018 */ unsigned __int64 PagesWritten;
  /* 0x0020 */ unsigned long WritesIssued;
  /* 0x0024 */ unsigned long IgnoredReservationsCount;
  /* 0x0028 */ unsigned long FreedReservationsCount;
  /* 0x002c */ unsigned long WriteBurstCount;
  /* 0x0030 */ unsigned __int64 IgnoreReservationsStartTime;
  /* 0x0038 */ volatile union _MI_RESERVATION_CLUSTER_INFO ReservationClusterInfo;
  struct /* bitfield */
  {
    /* 0x003c */ unsigned short IgnoreReservations : 1; /* bit position: 0 */
    /* 0x003c */ unsigned short Spare : 15; /* bit position: 1 */
  }; /* bitfield */
  /* 0x003e */ unsigned short Spare1;
} MI_MODWRITE_DATA, *PMI_MODWRITE_DATA; /* size: 0x0040 */

typedef enum _EXCEPTION_DISPOSITION
{
  ExceptionContinueExecution = 0,
  ExceptionContinueSearch = 1,
  ExceptionNestedException = 2,
  ExceptionCollidedUnwind = 3,
} EXCEPTION_DISPOSITION, *PEXCEPTION_DISPOSITION;

typedef struct _MI_CROSS_PARTITION_CHARGES
{
  /* 0x0000 */ unsigned __int64 CurrentCharges;
  /* 0x0008 */ unsigned __int64 ChargeFailures;
  /* 0x0010 */ unsigned __int64 ChargePeak;
  /* 0x0018 */ unsigned __int64 ChargeMinimum;
} MI_CROSS_PARTITION_CHARGES, *PMI_CROSS_PARTITION_CHARGES; /* size: 0x0020 */

typedef struct _BLOB_COUNTERS
{
  /* 0x0000 */ unsigned long CreatedObjects;
  /* 0x0004 */ unsigned long DeletedObjects;
} BLOB_COUNTERS, *PBLOB_COUNTERS; /* size: 0x0008 */

typedef enum _SECURITY_IMPERSONATION_LEVEL
{
  SecurityAnonymous = 0,
  SecurityIdentification = 1,
  SecurityImpersonation = 2,
  SecurityDelegation = 3,
} SECURITY_IMPERSONATION_LEVEL, *PSECURITY_IMPERSONATION_LEVEL;

typedef enum _INTERRUPT_RESULT
{
  InterruptBeginFatalError = 0,
  InterruptBeginLine = 1,
  InterruptBeginSpurious = 2,
  InterruptBeginVector = 3,
  InterruptBeginNone = 4,
} INTERRUPT_RESULT, *PINTERRUPT_RESULT;

typedef enum _DMA_WIDTH
{
  Width8Bits = 0,
  Width16Bits = 1,
  Width32Bits = 2,
  Width64Bits = 3,
  WidthNoWrap = 4,
  MaximumDmaWidth = 5,
} DMA_WIDTH, *PDMA_WIDTH;

typedef union _WHEA_PERSISTENCE_INFO
{
  union
  {
    struct /* bitfield */
    {
      /* 0x0000 */ unsigned __int64 Signature : 16; /* bit position: 0 */
      /* 0x0000 */ unsigned __int64 Length : 24; /* bit position: 16 */
      /* 0x0000 */ unsigned __int64 Identifier : 16; /* bit position: 40 */
      /* 0x0000 */ unsigned __int64 Attributes : 2; /* bit position: 56 */
      /* 0x0000 */ unsigned __int64 DoNotLog : 1; /* bit position: 58 */
      /* 0x0000 */ unsigned __int64 Reserved : 5; /* bit position: 59 */
    }; /* bitfield */
    /* 0x0000 */ unsigned __int64 AsULONGLONG;
  }; /* size: 0x0008 */
} WHEA_PERSISTENCE_INFO, *PWHEA_PERSISTENCE_INFO; /* size: 0x0008 */

typedef enum _EXT_IOMMU_TRANSLATION_TYPE
{
  ExtTranslationTypePassThrough = 0,
  ExtTranslationTypeBlocked = 1,
  ExtTranslationTypeTranslate = 2,
  ExtTranslationTypeSafePassThrough = 3,
  ExtTranslationTypeInvalid = 4,
} EXT_IOMMU_TRANSLATION_TYPE, *PEXT_IOMMU_TRANSLATION_TYPE;

typedef union _WHEA_EVENT_LOG_ENTRY_FLAGS
{
  union
  {
    struct /* bitfield */
    {
      /* 0x0000 */ unsigned long Reserved1 : 1; /* bit position: 0 */
      /* 0x0000 */ unsigned long LogInternalEtw : 1; /* bit position: 1 */
      /* 0x0000 */ unsigned long LogBlackbox : 1; /* bit position: 2 */
      /* 0x0000 */ unsigned long LogSel : 1; /* bit position: 3 */
      /* 0x0000 */ unsigned long RawSel : 1; /* bit position: 4 */
      /* 0x0000 */ unsigned long NoFormat : 1; /* bit position: 5 */
      /* 0x0000 */ unsigned long Driver : 1; /* bit position: 6 */
      /* 0x0000 */ unsigned long Reserved2 : 25; /* bit position: 7 */
    }; /* bitfield */
    /* 0x0000 */ unsigned long AsULONG;
  }; /* size: 0x0004 */
} WHEA_EVENT_LOG_ENTRY_FLAGS, *PWHEA_EVENT_LOG_ENTRY_FLAGS; /* size: 0x0004 */

typedef struct _WHEA_EVENT_LOG_ENTRY_HEADER
{
  /* 0x0000 */ unsigned long Signature;
  /* 0x0004 */ unsigned long Version;
  /* 0x0008 */ unsigned long Length;
  /* 0x000c */ enum _WHEA_EVENT_LOG_ENTRY_TYPE Type;
  /* 0x0010 */ unsigned long OwnerTag;
  /* 0x0014 */ enum _WHEA_EVENT_LOG_ENTRY_ID Id;
  /* 0x0018 */ union _WHEA_EVENT_LOG_ENTRY_FLAGS Flags;
  /* 0x001c */ unsigned long PayloadLength;
} WHEA_EVENT_LOG_ENTRY_HEADER, *PWHEA_EVENT_LOG_ENTRY_HEADER; /* size: 0x0020 */

typedef struct _WHEA_EVENT_LOG_ENTRY
{
  /* 0x0000 */ struct _WHEA_EVENT_LOG_ENTRY_HEADER Header;
} WHEA_EVENT_LOG_ENTRY, *PWHEA_EVENT_LOG_ENTRY; /* size: 0x0020 */

typedef enum _HALP_DMA_ADAPTER_ALLOCATION_STATE
{
  HalpDmaAdapterAllocationStateNone = 0,
  HalpDmaAdapterAllocateChannel = 1,
  HalpDmaAdapterAllocateMapRegisters = 2,
  HalpDmaAdapterAllocateChannelRemapResources = 3,
  HalpDmaAdapterAllocationStateComplete = 4,
  HalpDmaAdapterAllocationStateMax = 5,
} HALP_DMA_ADAPTER_ALLOCATION_STATE, *PHALP_DMA_ADAPTER_ALLOCATION_STATE;

typedef struct _KAPC_STATE
{
  /* 0x0000 */ struct _LIST_ENTRY ApcListHead[2];
  /* 0x0020 */ struct _KPROCESS* Process;
  union
  {
    /* 0x0028 */ unsigned char InProgressFlags;
    struct /* bitfield */
    {
      /* 0x0028 */ unsigned char KernelApcInProgress : 1; /* bit position: 0 */
      /* 0x0028 */ unsigned char SpecialApcInProgress : 1; /* bit position: 1 */
    }; /* bitfield */
  }; /* size: 0x0001 */
  /* 0x0029 */ unsigned char KernelApcPending;
  union
  {
    /* 0x002a */ unsigned char UserApcPendingAll;
    struct /* bitfield */
    {
      /* 0x002a */ unsigned char SpecialUserApcPending : 1; /* bit position: 0 */
      /* 0x002a */ unsigned char UserApcPending : 1; /* bit position: 1 */
    }; /* bitfield */
  }; /* size: 0x0001 */
  /* 0x002b */ char __PADDING__[5];
} KAPC_STATE, *PKAPC_STATE; /* size: 0x0030 */

typedef struct _RTL_DYNAMIC_HASH_TABLE
{
  /* 0x0000 */ unsigned long Flags;
  /* 0x0004 */ unsigned long Shift;
  /* 0x0008 */ unsigned long TableSize;
  /* 0x000c */ unsigned long Pivot;
  /* 0x0010 */ unsigned long DivisorMask;
  /* 0x0014 */ unsigned long NumEntries;
  /* 0x0018 */ unsigned long NonEmptyBuckets;
  /* 0x001c */ unsigned long NumEnumerators;
  /* 0x0020 */ void* Directory;
} RTL_DYNAMIC_HASH_TABLE, *PRTL_DYNAMIC_HASH_TABLE; /* size: 0x0028 */

typedef enum _HAL_DMA_CRASH_DUMP_REGISTER_TYPE
{
  HalDmaCrashDumpRegisterSet1 = 0,
  HalDmaCrashDumpRegisterSet2 = 1,
  HalDmaCrashDumpRegisterSetMax = 2,
} HAL_DMA_CRASH_DUMP_REGISTER_TYPE, *PHAL_DMA_CRASH_DUMP_REGISTER_TYPE;

enum DMA_COMPLETION_STATUS
{
  DmaComplete = 0,
  DmaAborted = 1,
  DmaError = 2,
  DmaCancelled = 3,
};

typedef struct _DISPATCHER_HEADER
{
  union
  {
    /* 0x0000 */ volatile long Lock;
    /* 0x0000 */ long LockNV;
    struct
    {
      /* 0x0000 */ unsigned char Type;
      /* 0x0001 */ unsigned char Signalling;
      /* 0x0002 */ unsigned char Size;
      /* 0x0003 */ unsigned char Reserved1;
    }; /* size: 0x0004 */
    struct
    {
      /* 0x0000 */ unsigned char TimerType;
      union
      {
        /* 0x0001 */ unsigned char TimerControlFlags;
        struct
        {
          struct /* bitfield */
          {
            /* 0x0001 */ unsigned char Absolute : 1; /* bit position: 0 */
            /* 0x0001 */ unsigned char Wake : 1; /* bit position: 1 */
            /* 0x0001 */ unsigned char EncodedTolerableDelay : 6; /* bit position: 2 */
          }; /* bitfield */
          /* 0x0002 */ unsigned char Hand;
          union
          {
            /* 0x0003 */ unsigned char TimerMiscFlags;
            struct /* bitfield */
            {
              /* 0x0003 */ unsigned char Index : 6; /* bit position: 0 */
              /* 0x0003 */ unsigned char Inserted : 1; /* bit position: 6 */
              /* 0x0003 */ volatile unsigned char Expired : 1; /* bit position: 7 */
            }; /* bitfield */
          }; /* size: 0x0001 */
        }; /* size: 0x0003 */
      }; /* size: 0x0003 */
    }; /* size: 0x0004 */
    struct
    {
      /* 0x0000 */ unsigned char Timer2Type;
      union
      {
        /* 0x0001 */ unsigned char Timer2Flags;
        struct
        {
          struct /* bitfield */
          {
            /* 0x0001 */ unsigned char Timer2Inserted : 1; /* bit position: 0 */
            /* 0x0001 */ unsigned char Timer2Expiring : 1; /* bit position: 1 */
            /* 0x0001 */ unsigned char Timer2CancelPending : 1; /* bit position: 2 */
            /* 0x0001 */ unsigned char Timer2SetPending : 1; /* bit position: 3 */
            /* 0x0001 */ unsigned char Timer2Running : 1; /* bit position: 4 */
            /* 0x0001 */ unsigned char Timer2Disabled : 1; /* bit position: 5 */
            /* 0x0001 */ unsigned char Timer2ReservedFlags : 2; /* bit position: 6 */
          }; /* bitfield */
          /* 0x0002 */ unsigned char Timer2ComponentId;
          /* 0x0003 */ unsigned char Timer2RelativeId;
        }; /* size: 0x0003 */
      }; /* size: 0x0003 */
    }; /* size: 0x0004 */
    struct
    {
      /* 0x0000 */ unsigned char QueueType;
      union
      {
        /* 0x0001 */ unsigned char QueueControlFlags;
        struct
        {
          struct /* bitfield */
          {
            /* 0x0001 */ unsigned char Abandoned : 1; /* bit position: 0 */
            /* 0x0001 */ unsigned char DisableIncrement : 1; /* bit position: 1 */
            /* 0x0001 */ unsigned char QueueReservedControlFlags : 6; /* bit position: 2 */
          }; /* bitfield */
          /* 0x0002 */ unsigned char QueueSize;
          /* 0x0003 */ unsigned char QueueReserved;
        }; /* size: 0x0003 */
      }; /* size: 0x0003 */
    }; /* size: 0x0004 */
    struct
    {
      /* 0x0000 */ unsigned char ThreadType;
      /* 0x0001 */ unsigned char ThreadReserved;
      union
      {
        /* 0x0002 */ unsigned char ThreadControlFlags;
        struct
        {
          struct /* bitfield */
          {
            /* 0x0002 */ unsigned char CycleProfiling : 1; /* bit position: 0 */
            /* 0x0002 */ unsigned char CounterProfiling : 1; /* bit position: 1 */
            /* 0x0002 */ unsigned char GroupScheduling : 1; /* bit position: 2 */
            /* 0x0002 */ unsigned char AffinitySet : 1; /* bit position: 3 */
            /* 0x0002 */ unsigned char Tagged : 1; /* bit position: 4 */
            /* 0x0002 */ unsigned char EnergyProfiling : 1; /* bit position: 5 */
            /* 0x0002 */ unsigned char SchedulerAssist : 1; /* bit position: 6 */
            /* 0x0002 */ unsigned char ThreadReservedControlFlags : 1; /* bit position: 7 */
          }; /* bitfield */
          union
          {
            /* 0x0003 */ unsigned char DebugActive;
            struct /* bitfield */
            {
              /* 0x0003 */ unsigned char ActiveDR7 : 1; /* bit position: 0 */
              /* 0x0003 */ unsigned char Instrumented : 1; /* bit position: 1 */
              /* 0x0003 */ unsigned char Minimal : 1; /* bit position: 2 */
              /* 0x0003 */ unsigned char Reserved4 : 2; /* bit position: 3 */
              /* 0x0003 */ unsigned char AltSyscall : 1; /* bit position: 5 */
              /* 0x0003 */ unsigned char UmsScheduled : 1; /* bit position: 6 */
              /* 0x0003 */ unsigned char UmsPrimary : 1; /* bit position: 7 */
            }; /* bitfield */
          }; /* size: 0x0001 */
        }; /* size: 0x0002 */
      }; /* size: 0x0002 */
    }; /* size: 0x0004 */
    struct
    {
      /* 0x0000 */ unsigned char MutantType;
      /* 0x0001 */ unsigned char MutantSize;
      /* 0x0002 */ unsigned char DpcActive;
      /* 0x0003 */ unsigned char MutantReserved;
    }; /* size: 0x0004 */
  }; /* size: 0x0004 */
  /* 0x0004 */ long SignalState;
  /* 0x0008 */ struct _LIST_ENTRY WaitListHead;
} DISPATCHER_HEADER, *PDISPATCHER_HEADER; /* size: 0x0018 */

typedef union _ULARGE_INTEGER
{
  union
  {
    struct
    {
      /* 0x0000 */ unsigned long LowPart;
      /* 0x0004 */ unsigned long HighPart;
    }; /* size: 0x0008 */
    struct
    {
      /* 0x0000 */ unsigned long LowPart;
      /* 0x0004 */ unsigned long HighPart;
    } /* size: 0x0008 */ u;
    /* 0x0000 */ unsigned __int64 QuadPart;
  }; /* size: 0x0008 */
} ULARGE_INTEGER, *PULARGE_INTEGER; /* size: 0x0008 */

typedef struct _KTIMER
{
  /* 0x0000 */ struct _DISPATCHER_HEADER Header;
  /* 0x0018 */ union _ULARGE_INTEGER DueTime;
  /* 0x0020 */ struct _LIST_ENTRY TimerListEntry;
  /* 0x0030 */ struct _KDPC* Dpc;
  /* 0x0038 */ unsigned short Processor;
  /* 0x003a */ unsigned short TimerType;
  /* 0x003c */ unsigned long Period;
} KTIMER, *PKTIMER; /* size: 0x0040 */

typedef enum _DMA_INTERRUPT_TYPE
{
  InterruptTypeCompletion = 0,
  InterruptTypeError = 1,
  InterruptTypeCancelled = 2,
} DMA_INTERRUPT_TYPE, *PDMA_INTERRUPT_TYPE;

typedef enum _INTERRUPT_TARGET_TYPE
{
  InterruptTargetInvalid = 0,
  InterruptTargetAllIncludingSelf = 1,
  InterruptTargetAllExcludingSelf = 2,
  InterruptTargetSelfOnly = 3,
  InterruptTargetPhysical = 4,
  InterruptTargetLogicalFlat = 5,
  InterruptTargetLogicalClustered = 6,
  InterruptTargetRemapIndex = 7,
  InterruptTargetHypervisor = 8,
} INTERRUPT_TARGET_TYPE, *PINTERRUPT_TARGET_TYPE;

typedef enum _HALP_EMERGENCY_LA_QUEUE_TYPE
{
  HalpDmaLegacyLaQueueEntry = 0,
  HalpDmaThinLaQueueEntry = 1,
  HalpDmaLaQueueEntryMax = 2,
} HALP_EMERGENCY_LA_QUEUE_TYPE, *PHALP_EMERGENCY_LA_QUEUE_TYPE;

typedef struct _RTL_BITMAP_EX
{
  /* 0x0000 */ unsigned __int64 SizeOfBitMap;
  /* 0x0008 */ unsigned __int64* Buffer;
} RTL_BITMAP_EX, *PRTL_BITMAP_EX; /* size: 0x0010 */

typedef struct _KTRAP_FRAME
{
  /* 0x0000 */ unsigned __int64 P1Home;
  /* 0x0008 */ unsigned __int64 P2Home;
  /* 0x0010 */ unsigned __int64 P3Home;
  /* 0x0018 */ unsigned __int64 P4Home;
  /* 0x0020 */ unsigned __int64 P5;
  union
  {
    /* 0x0028 */ char PreviousMode;
    /* 0x0028 */ unsigned char InterruptRetpolineState;
  }; /* size: 0x0001 */
  /* 0x0029 */ unsigned char PreviousIrql;
  union
  {
    /* 0x002a */ unsigned char FaultIndicator;
    /* 0x002a */ unsigned char NmiMsrIbrs;
  }; /* size: 0x0001 */
  /* 0x002b */ unsigned char ExceptionActive;
  /* 0x002c */ unsigned long MxCsr;
  /* 0x0030 */ unsigned __int64 Rax;
  /* 0x0038 */ unsigned __int64 Rcx;
  /* 0x0040 */ unsigned __int64 Rdx;
  /* 0x0048 */ unsigned __int64 R8;
  /* 0x0050 */ unsigned __int64 R9;
  /* 0x0058 */ unsigned __int64 R10;
  /* 0x0060 */ unsigned __int64 R11;
  union
  {
    /* 0x0068 */ unsigned __int64 GsBase;
    /* 0x0068 */ unsigned __int64 GsSwap;
  }; /* size: 0x0008 */
  /* 0x0070 */ struct _M128A Xmm0;
  /* 0x0080 */ struct _M128A Xmm1;
  /* 0x0090 */ struct _M128A Xmm2;
  /* 0x00a0 */ struct _M128A Xmm3;
  /* 0x00b0 */ struct _M128A Xmm4;
  /* 0x00c0 */ struct _M128A Xmm5;
  union
  {
    /* 0x00d0 */ unsigned __int64 FaultAddress;
    /* 0x00d0 */ unsigned __int64 ContextRecord;
  }; /* size: 0x0008 */
  /* 0x00d8 */ unsigned __int64 Dr0;
  /* 0x00e0 */ unsigned __int64 Dr1;
  /* 0x00e8 */ unsigned __int64 Dr2;
  /* 0x00f0 */ unsigned __int64 Dr3;
  /* 0x00f8 */ unsigned __int64 Dr6;
  /* 0x0100 */ unsigned __int64 Dr7;
  /* 0x0108 */ unsigned __int64 DebugControl;
  /* 0x0110 */ unsigned __int64 LastBranchToRip;
  /* 0x0118 */ unsigned __int64 LastBranchFromRip;
  /* 0x0120 */ unsigned __int64 LastExceptionToRip;
  /* 0x0128 */ unsigned __int64 LastExceptionFromRip;
  /* 0x0130 */ unsigned short SegDs;
  /* 0x0132 */ unsigned short SegEs;
  /* 0x0134 */ unsigned short SegFs;
  /* 0x0136 */ unsigned short SegGs;
  /* 0x0138 */ unsigned __int64 TrapFrame;
  union
  {
    struct
    {
      /* 0x0140 */ unsigned long NmiPreviousSpecCtrl;
      /* 0x0144 */ unsigned long NmiPreviousSpecCtrlPad;
    }; /* size: 0x0008 */
    /* 0x0140 */ unsigned __int64 Rbx;
  }; /* size: 0x0008 */
  /* 0x0148 */ unsigned __int64 Rdi;
  /* 0x0150 */ unsigned __int64 Rsi;
  /* 0x0158 */ unsigned __int64 Rbp;
  union
  {
    /* 0x0160 */ unsigned __int64 ErrorCode;
    /* 0x0160 */ unsigned __int64 ExceptionFrame;
  }; /* size: 0x0008 */
  /* 0x0168 */ unsigned __int64 Rip;
  /* 0x0170 */ unsigned short SegCs;
  /* 0x0172 */ unsigned char Fill0;
  /* 0x0173 */ unsigned char Logging;
  /* 0x0174 */ unsigned short Fill1[2];
  /* 0x0178 */ unsigned long EFlags;
  /* 0x017c */ unsigned long Fill2;
  /* 0x0180 */ unsigned __int64 Rsp;
  /* 0x0188 */ unsigned short SegSs;
  /* 0x018a */ unsigned short Fill3;
  /* 0x018c */ unsigned long Fill4;
} KTRAP_FRAME, *PKTRAP_FRAME; /* size: 0x0190 */

typedef enum _WHEA_RECOVERY_CONTEXT_ERROR_TYPE
{
  WheaRecoveryContextErrorTypeMemory = 1,
  WheaRecoveryContextErrorTypePmem = 2,
  WheaRecoveryContextErrorTypeMax = 3,
} WHEA_RECOVERY_CONTEXT_ERROR_TYPE, *PWHEA_RECOVERY_CONTEXT_ERROR_TYPE;

typedef struct _MI_DECAY_TIMER_LINKAGE
{
  struct /* bitfield */
  {
    /* 0x0000 */ unsigned __int64 Spare0 : 1; /* bit position: 0 */
    /* 0x0000 */ unsigned __int64 PreviousDecayPfn : 31; /* bit position: 1 */
    /* 0x0000 */ unsigned __int64 Spare1 : 1; /* bit position: 32 */
    /* 0x0000 */ unsigned __int64 NextDecayPfn : 31; /* bit position: 33 */
  }; /* bitfield */
} MI_DECAY_TIMER_LINKAGE, *PMI_DECAY_TIMER_LINKAGE; /* size: 0x0008 */

typedef struct _MI_DECAY_TIMER_LINK
{
  union
  {
    union
    {
      /* 0x0000 */ unsigned __int64 Long;
      /* 0x0000 */ struct _MI_DECAY_TIMER_LINKAGE e1;
    }; /* size: 0x0008 */
  } /* size: 0x0008 */ u1;
} MI_DECAY_TIMER_LINK, *PMI_DECAY_TIMER_LINK; /* size: 0x0008 */

typedef union _WHEA_ERROR_RECORD_HEADER_VALIDBITS
{
  union
  {
    struct /* bitfield */
    {
      /* 0x0000 */ unsigned long PlatformId : 1; /* bit position: 0 */
      /* 0x0000 */ unsigned long Timestamp : 1; /* bit position: 1 */
      /* 0x0000 */ unsigned long PartitionId : 1; /* bit position: 2 */
      /* 0x0000 */ unsigned long Reserved : 29; /* bit position: 3 */
    }; /* bitfield */
    /* 0x0000 */ unsigned long AsULONG;
  }; /* size: 0x0004 */
} WHEA_ERROR_RECORD_HEADER_VALIDBITS, *PWHEA_ERROR_RECORD_HEADER_VALIDBITS; /* size: 0x0004 */

typedef enum _EXT_IOMMU_DEVICE_TYPE
{
  EXT_IOMMU_DEVICE_TYPE_INVALID = 0,
  EXT_IOMMU_DEVICE_TYPE_PCI = 1,
  EXT_IOMMU_DEVICE_TYPE_ACPI = 2,
  EXT_IOMMU_DEVICE_TYPE_IOAPIC = 3,
  EXT_IOMMU_DEVICE_TYPE_LOGICAL = 4,
  EXT_IOMMU_DEVICE_TYPE_GIC = 5,
  EXT_IOMMU_DEVICE_TYPE_TEST = 6,
  EXT_IOMMU_DEVICE_TYPE_MAX = 7,
} EXT_IOMMU_DEVICE_TYPE, *PEXT_IOMMU_DEVICE_TYPE;

typedef struct _KQUEUE
{
  /* 0x0000 */ struct _DISPATCHER_HEADER Header;
  /* 0x0018 */ struct _LIST_ENTRY EntryListHead;
  /* 0x0028 */ volatile unsigned long CurrentCount;
  /* 0x002c */ unsigned long MaximumCount;
  /* 0x0030 */ struct _LIST_ENTRY ThreadListHead;
} KQUEUE, *PKQUEUE; /* size: 0x0040 */

struct _PCW_REGISTRATION;

enum SE_WS_APPX_SIGNATURE_ORIGIN
{
  SE_WS_APPX_SIGNATURE_ORIGIN_NOT_VALIDATED = 0,
  SE_WS_APPX_SIGNATURE_ORIGIN_UNKNOWN = 1,
  SE_WS_APPX_SIGNATURE_ORIGIN_APPSTORE = 2,
  SE_WS_APPX_SIGNATURE_ORIGIN_WINDOWS = 3,
  SE_WS_APPX_SIGNATURE_ORIGIN_ENTERPRISE = 4,
};

typedef enum _PS_MITIGATION_OPTION
{
  PS_MITIGATION_OPTION_NX = 0,
  PS_MITIGATION_OPTION_SEHOP = 1,
  PS_MITIGATION_OPTION_FORCE_RELOCATE_IMAGES = 2,
  PS_MITIGATION_OPTION_HEAP_TERMINATE = 3,
  PS_MITIGATION_OPTION_BOTTOM_UP_ASLR = 4,
  PS_MITIGATION_OPTION_HIGH_ENTROPY_ASLR = 5,
  PS_MITIGATION_OPTION_STRICT_HANDLE_CHECKS = 6,
  PS_MITIGATION_OPTION_WIN32K_SYSTEM_CALL_DISABLE = 7,
  PS_MITIGATION_OPTION_EXTENSION_POINT_DISABLE = 8,
  PS_MITIGATION_OPTION_PROHIBIT_DYNAMIC_CODE = 9,
  PS_MITIGATION_OPTION_CONTROL_FLOW_GUARD = 10,
  PS_MITIGATION_OPTION_BLOCK_NON_MICROSOFT_BINARIES = 11,
  PS_MITIGATION_OPTION_FONT_DISABLE = 12,
  PS_MITIGATION_OPTION_IMAGE_LOAD_NO_REMOTE = 13,
  PS_MITIGATION_OPTION_IMAGE_LOAD_NO_LOW_LABEL = 14,
  PS_MITIGATION_OPTION_IMAGE_LOAD_PREFER_SYSTEM32 = 15,
  PS_MITIGATION_OPTION_RETURN_FLOW_GUARD = 16,
  PS_MITIGATION_OPTION_LOADER_INTEGRITY_CONTINUITY = 17,
  PS_MITIGATION_OPTION_STRICT_CONTROL_FLOW_GUARD = 18,
  PS_MITIGATION_OPTION_RESTRICT_SET_THREAD_CONTEXT = 19,
  PS_MITIGATION_OPTION_ROP_STACKPIVOT = 20,
  PS_MITIGATION_OPTION_ROP_CALLER_CHECK = 21,
  PS_MITIGATION_OPTION_ROP_SIMEXEC = 22,
  PS_MITIGATION_OPTION_EXPORT_ADDRESS_FILTER = 23,
  PS_MITIGATION_OPTION_EXPORT_ADDRESS_FILTER_PLUS = 24,
  PS_MITIGATION_OPTION_RESTRICT_CHILD_PROCESS_CREATION = 25,
  PS_MITIGATION_OPTION_IMPORT_ADDRESS_FILTER = 26,
  PS_MITIGATION_OPTION_MODULE_TAMPERING_PROTECTION = 27,
  PS_MITIGATION_OPTION_RESTRICT_INDIRECT_BRANCH_PREDICTION = 28,
  PS_MITIGATION_OPTION_SPECULATIVE_STORE_BYPASS_DISABLE = 29,
  PS_MITIGATION_OPTION_ALLOW_DOWNGRADE_DYNAMIC_CODE_POLICY = 30,
  PS_MITIGATION_OPTION_CET_USER_SHADOW_STACKS = 31,
  PS_MITIGATION_OPTION_USER_CET_SET_CONTEXT_IP_VALIDATION = 32,
  PS_MITIGATION_OPTION_BLOCK_NON_CET_BINARIES = 33,
  PS_MITIGATION_OPTION_CET_DYNAMIC_APIS_OUT_OF_PROC_ONLY = 36,
  PS_MITIGATION_OPTION_REDIRECTION_TRUST = 37,
  PS_MITIGATION_OPTION_FSCTL_SYSTEM_CALL_DISABLE = 38,
} PS_MITIGATION_OPTION, *PPS_MITIGATION_OPTION;

typedef struct _KSCHEDULING_GROUP_POLICY
{
  union
  {
    /* 0x0000 */ unsigned long Value;
    /* 0x0000 */ unsigned short Weight;
    struct
    {
      /* 0x0000 */ unsigned short MinRate;
      /* 0x0002 */ unsigned short MaxRate;
    }; /* size: 0x0004 */
  }; /* size: 0x0004 */
  union
  {
    /* 0x0004 */ unsigned long AllFlags;
    struct /* bitfield */
    {
      /* 0x0004 */ unsigned long Type : 1; /* bit position: 0 */
      /* 0x0004 */ unsigned long Disabled : 1; /* bit position: 1 */
      /* 0x0004 */ unsigned long RankBias : 1; /* bit position: 2 */
      /* 0x0004 */ unsigned long Spare1 : 29; /* bit position: 3 */
    }; /* bitfield */
  }; /* size: 0x0004 */
} KSCHEDULING_GROUP_POLICY, *PKSCHEDULING_GROUP_POLICY; /* size: 0x0008 */

typedef enum _NT_PRODUCT_TYPE
{
  NtProductWinNt = 1,
  NtProductLanManNt = 2,
  NtProductServer = 3,
} NT_PRODUCT_TYPE, *PNT_PRODUCT_TYPE;

typedef struct _MI_LDW_WORK_CONTEXT
{
  /* 0x0000 */ struct _WORK_QUEUE_ITEM WorkItem;
  /* 0x0020 */ struct _FILE_OBJECT* FileObject;
  /* 0x0028 */ long ErrorStatus;
  /* 0x002c */ volatile long Active;
  /* 0x0030 */ unsigned char FreeWhenDone;
  /* 0x0031 */ char __PADDING__[7];
} MI_LDW_WORK_CONTEXT, *PMI_LDW_WORK_CONTEXT; /* size: 0x0038 */

typedef enum _ALTERNATIVE_ARCHITECTURE_TYPE
{
  StandardDesign = 0,
  NEC98x86 = 1,
  EndAlternatives = 2,
} ALTERNATIVE_ARCHITECTURE_TYPE, *PALTERNATIVE_ARCHITECTURE_TYPE;

typedef struct _KDEVICE_QUEUE_ENTRY
{
  /* 0x0000 */ struct _LIST_ENTRY DeviceListEntry;
  /* 0x0010 */ unsigned long SortKey;
  /* 0x0014 */ unsigned char Inserted;
  /* 0x0015 */ char __PADDING__[3];
} KDEVICE_QUEUE_ENTRY, *PKDEVICE_QUEUE_ENTRY; /* size: 0x0018 */

typedef struct _WAIT_CONTEXT_BLOCK
{
  union
  {
    /* 0x0000 */ struct _KDEVICE_QUEUE_ENTRY WaitQueueEntry;
    struct
    {
      /* 0x0000 */ struct _LIST_ENTRY DmaWaitEntry;
      /* 0x0010 */ unsigned long NumberOfChannels;
      struct /* bitfield */
      {
        /* 0x0014 */ unsigned long SyncCallback : 1; /* bit position: 0 */
        /* 0x0014 */ unsigned long DmaContext : 1; /* bit position: 1 */
        /* 0x0014 */ unsigned long ZeroMapRegisters : 1; /* bit position: 2 */
        /* 0x0014 */ unsigned long Reserved : 9; /* bit position: 3 */
        /* 0x0014 */ unsigned long NumberOfRemapPages : 20; /* bit position: 12 */
      }; /* bitfield */
    }; /* size: 0x0018 */
  }; /* size: 0x0018 */
  /* 0x0018 */ void* DeviceRoutine /* function */;
  /* 0x0020 */ void* DeviceContext;
  /* 0x0028 */ unsigned long NumberOfMapRegisters;
  /* 0x002c */ long Padding_11;
  /* 0x0030 */ void* DeviceObject;
  /* 0x0038 */ void* CurrentIrp;
  /* 0x0040 */ struct _KDPC* BufferChainingDpc;
} WAIT_CONTEXT_BLOCK, *PWAIT_CONTEXT_BLOCK; /* size: 0x0048 */

typedef union _KEXECUTE_OPTIONS
{
  union
  {
    struct /* bitfield */
    {
      /* 0x0000 */ unsigned char ExecuteDisable : 1; /* bit position: 0 */
      /* 0x0000 */ unsigned char ExecuteEnable : 1; /* bit position: 1 */
      /* 0x0000 */ unsigned char DisableThunkEmulation : 1; /* bit position: 2 */
      /* 0x0000 */ unsigned char Permanent : 1; /* bit position: 3 */
      /* 0x0000 */ unsigned char ExecuteDispatchEnable : 1; /* bit position: 4 */
      /* 0x0000 */ unsigned char ImageDispatchEnable : 1; /* bit position: 5 */
      /* 0x0000 */ unsigned char DisableExceptionChainValidation : 1; /* bit position: 6 */
      /* 0x0000 */ unsigned char Spare : 1; /* bit position: 7 */
    }; /* bitfield */
    /* 0x0000 */ volatile unsigned char ExecuteOptions;
    /* 0x0000 */ unsigned char ExecuteOptionsNV;
  }; /* size: 0x0001 */
} KEXECUTE_OPTIONS, *PKEXECUTE_OPTIONS; /* size: 0x0001 */

typedef enum _TP_CALLBACK_PRIORITY
{
  TP_CALLBACK_PRIORITY_HIGH = 0,
  TP_CALLBACK_PRIORITY_NORMAL = 1,
  TP_CALLBACK_PRIORITY_LOW = 2,
  TP_CALLBACK_PRIORITY_INVALID = 3,
  TP_CALLBACK_PRIORITY_COUNT = 3,
} TP_CALLBACK_PRIORITY, *PTP_CALLBACK_PRIORITY;

typedef enum _PP_NPAGED_LOOKASIDE_NUMBER
{
  LookasideSmallIrpList = 0,
  LookasideMediumIrpList = 1,
  LookasideLargeIrpList = 2,
  LookasideMdlList = 3,
  LookasideCreateInfoList = 4,
  LookasideNameBufferList = 5,
  LookasideTwilightList = 6,
  LookasideCompletionList = 7,
  LookasideScratchBufferList = 8,
  LookasideMaximumList = 9,
} PP_NPAGED_LOOKASIDE_NUMBER, *PPP_NPAGED_LOOKASIDE_NUMBER;

typedef enum _PCW_CALLBACK_TYPE
{
  PcwCallbackAddCounter = 0,
  PcwCallbackRemoveCounter = 1,
  PcwCallbackEnumerateInstances = 2,
  PcwCallbackCollectData = 3,
} PCW_CALLBACK_TYPE, *PPCW_CALLBACK_TYPE;

struct _HAL_PMC_COUNTERS;

typedef enum _EX_GEN_RANDOM_DOMAIN
{
  ExGenRandomDomainKernel = 0,
  ExGenRandomDomainFirst = 0,
  ExGenRandomDomainUserVisible = 1,
  ExGenRandomDomainMax = 2,
} EX_GEN_RANDOM_DOMAIN, *PEX_GEN_RANDOM_DOMAIN;

typedef union _WHEA_ERROR_RECORD_SECTION_DESCRIPTOR_FLAGS
{
  union
  {
    struct /* bitfield */
    {
      /* 0x0000 */ unsigned long Primary : 1; /* bit position: 0 */
      /* 0x0000 */ unsigned long ContainmentWarning : 1; /* bit position: 1 */
      /* 0x0000 */ unsigned long Reset : 1; /* bit position: 2 */
      /* 0x0000 */ unsigned long ThresholdExceeded : 1; /* bit position: 3 */
      /* 0x0000 */ unsigned long ResourceNotAvailable : 1; /* bit position: 4 */
      /* 0x0000 */ unsigned long LatentError : 1; /* bit position: 5 */
      /* 0x0000 */ unsigned long Propagated : 1; /* bit position: 6 */
      /* 0x0000 */ unsigned long Reserved : 25; /* bit position: 7 */
    }; /* bitfield */
    /* 0x0000 */ unsigned long AsULONG;
  }; /* size: 0x0004 */
} WHEA_ERROR_RECORD_SECTION_DESCRIPTOR_FLAGS, *PWHEA_ERROR_RECORD_SECTION_DESCRIPTOR_FLAGS; /* size: 0x0004 */

typedef enum _SYSTEM_DLL_TYPE
{
  PsNativeSystemDll = 0,
  PsWowX86SystemDll = 1,
  PsWowArm32SystemDll = 2,
  PsWowAmd64SystemDll = 3,
  PsWowChpeX86SystemDll = 4,
  PsVsmEnclaveRuntimeDll = 5,
  PsSystemDllTotalTypes = 6,
} SYSTEM_DLL_TYPE, *PSYSTEM_DLL_TYPE;

typedef union _WHEA_TIMESTAMP
{
  union
  {
    struct /* bitfield */
    {
      /* 0x0000 */ unsigned __int64 Seconds : 8; /* bit position: 0 */
      /* 0x0000 */ unsigned __int64 Minutes : 8; /* bit position: 8 */
      /* 0x0000 */ unsigned __int64 Hours : 8; /* bit position: 16 */
      /* 0x0000 */ unsigned __int64 Precise : 1; /* bit position: 24 */
      /* 0x0000 */ unsigned __int64 Reserved : 7; /* bit position: 25 */
      /* 0x0000 */ unsigned __int64 Day : 8; /* bit position: 32 */
      /* 0x0000 */ unsigned __int64 Month : 8; /* bit position: 40 */
      /* 0x0000 */ unsigned __int64 Year : 8; /* bit position: 48 */
      /* 0x0000 */ unsigned __int64 Century : 8; /* bit position: 56 */
    }; /* bitfield */
    /* 0x0000 */ union _LARGE_INTEGER AsLARGE_INTEGER;
  }; /* size: 0x0008 */
} WHEA_TIMESTAMP, *PWHEA_TIMESTAMP; /* size: 0x0008 */

typedef enum _IO_PRIORITY_HINT
{
  IoPriorityVeryLow = 0,
  IoPriorityLow = 1,
  IoPriorityNormal = 2,
  IoPriorityHigh = 3,
  IoPriorityCritical = 4,
  MaxIoPriorityTypes = 5,
} IO_PRIORITY_HINT, *PIO_PRIORITY_HINT;

typedef enum _MM_PAGE_ACCESS_TYPE
{
  MmPteAccessType = 0,
  MmCcReadAheadType = 1,
  MmPfnRepurposeType = 2,
  MmMaximumPageAccessType = 3,
} MM_PAGE_ACCESS_TYPE, *PMM_PAGE_ACCESS_TYPE;

typedef struct _PO_IRP_QUEUE
{
  /* 0x0000 */ struct _IRP* CurrentIrp;
  /* 0x0008 */ struct _IRP* PendingIrpList;
} PO_IRP_QUEUE, *PPO_IRP_QUEUE; /* size: 0x0010 */

typedef struct _XSTATE_CONTEXT
{
  /* 0x0000 */ unsigned __int64 Mask;
  /* 0x0008 */ unsigned long Length;
  /* 0x000c */ unsigned long Reserved1;
  /* 0x0010 */ struct _XSAVE_AREA* Area;
  /* 0x0018 */ void* Buffer;
} XSTATE_CONTEXT, *PXSTATE_CONTEXT; /* size: 0x0020 */

typedef struct _XSTATE_SAVE
{
  /* 0x0000 */ struct _XSTATE_SAVE* Prev;
  /* 0x0008 */ struct _KTHREAD* Thread;
  /* 0x0010 */ unsigned char Level;
  /* 0x0011 */ char Padding_12[7];
  /* 0x0018 */ struct _XSTATE_CONTEXT XStateContext;
} XSTATE_SAVE, *PXSTATE_SAVE; /* size: 0x0038 */

typedef enum _PF_FILE_ACCESS_TYPE
{
  PfFileAccessTypeRead = 0,
  PfFileAccessTypeWrite = 1,
  PfFileAccessTypeMax = 2,
} PF_FILE_ACCESS_TYPE, *PPF_FILE_ACCESS_TYPE;

typedef struct _PROCESSOR_NUMBER
{
  /* 0x0000 */ unsigned short Group;
  /* 0x0002 */ unsigned char Number;
  /* 0x0003 */ unsigned char Reserved;
} PROCESSOR_NUMBER, *PPROCESSOR_NUMBER; /* size: 0x0004 */

typedef enum _HARDWARE_COUNTER_TYPE
{
  PMCCounter = 0,
  MaxHardwareCounterType = 1,
} HARDWARE_COUNTER_TYPE, *PHARDWARE_COUNTER_TYPE;

typedef struct _COUNTER_READING
{
  /* 0x0000 */ enum _HARDWARE_COUNTER_TYPE Type;
  /* 0x0004 */ unsigned long Index;
  /* 0x0008 */ unsigned __int64 Start;
  /* 0x0010 */ unsigned __int64 Total;
} COUNTER_READING, *PCOUNTER_READING; /* size: 0x0018 */

typedef struct _THREAD_PERFORMANCE_DATA
{
  /* 0x0000 */ unsigned short Size;
  /* 0x0002 */ unsigned short Version;
  /* 0x0004 */ struct _PROCESSOR_NUMBER ProcessorNumber;
  /* 0x0008 */ unsigned long ContextSwitches;
  /* 0x000c */ unsigned long HwCountersCount;
  /* 0x0010 */ volatile unsigned __int64 UpdateCount;
  /* 0x0018 */ unsigned __int64 WaitReasonBitMap;
  /* 0x0020 */ unsigned __int64 HardwareCounters;
  /* 0x0028 */ struct _COUNTER_READING CycleTime;
  /* 0x0040 */ struct _COUNTER_READING HwCounters[16];
} THREAD_PERFORMANCE_DATA, *PTHREAD_PERFORMANCE_DATA; /* size: 0x01c0 */

enum wil_ReportingKind
{
  wil_ReportingKind_None = 0,
  wil_ReportingKind_UniqueUsage = 1,
  wil_ReportingKind_UniqueOpportunity = 2,
  wil_ReportingKind_DeviceUsage = 3,
  wil_ReportingKind_DeviceOpportunity = 4,
  wil_ReportingKind_TotalDuration = 5,
  wil_ReportingKind_PausedDuration = 6,
};

typedef struct _SECURITY_QUALITY_OF_SERVICE
{
  /* 0x0000 */ unsigned long Length;
  /* 0x0004 */ enum _SECURITY_IMPERSONATION_LEVEL ImpersonationLevel;
  /* 0x0008 */ unsigned char ContextTrackingMode;
  /* 0x0009 */ unsigned char EffectiveOnly;
  /* 0x000a */ char __PADDING__[2];
} SECURITY_QUALITY_OF_SERVICE, *PSECURITY_QUALITY_OF_SERVICE; /* size: 0x000c */

typedef struct _OBJECT_CREATE_INFORMATION
{
  /* 0x0000 */ unsigned long Attributes;
  /* 0x0004 */ long Padding_13;
  /* 0x0008 */ void* RootDirectory;
  /* 0x0010 */ char ProbeMode;
  /* 0x0011 */ char Padding_14[3];
  /* 0x0014 */ unsigned long PagedPoolCharge;
  /* 0x0018 */ unsigned long NonPagedPoolCharge;
  /* 0x001c */ unsigned long SecurityDescriptorCharge;
  /* 0x0020 */ void* SecurityDescriptor;
  /* 0x0028 */ struct _SECURITY_QUALITY_OF_SERVICE* SecurityQos;
  /* 0x0030 */ struct _SECURITY_QUALITY_OF_SERVICE SecurityQualityOfService;
  /* 0x003c */ long __PADDING__[1];
} OBJECT_CREATE_INFORMATION, *POBJECT_CREATE_INFORMATION; /* size: 0x0040 */

enum wil_details_ServiceReportingKind
{
  wil_details_ServiceReportingKind_UniqueUsage = 0,
  wil_details_ServiceReportingKind_UniqueOpportunity = 1,
  wil_details_ServiceReportingKind_DeviceUsage = 2,
  wil_details_ServiceReportingKind_DeviceOpportunity = 3,
  wil_details_ServiceReportingKind_PotentialUniqueUsage = 4,
  wil_details_ServiceReportingKind_PotentialUniqueOpportunity = 5,
  wil_details_ServiceReportingKind_PotentialDeviceUsage = 6,
  wil_details_ServiceReportingKind_PotentialDeviceOpportunity = 7,
  wil_details_ServiceReportingKind_EnabledTotalDuration = 8,
  wil_details_ServiceReportingKind_EnabledPausedDuration = 9,
  wil_details_ServiceReportingKind_DisabledTotalDuration = 10,
  wil_details_ServiceReportingKind_DisabledPausedDuration = 11,
  wil_details_ServiceReportingKind_CustomEnabledBase = 100,
  wil_details_ServiceReportingKind_CustomDisabledBase = 150,
  wil_details_ServiceReportingKind_Store = 254,
  wil_details_ServiceReportingKind_None = 255,
  wil_details_ServiceReportingKind_VariantDevicePotentialBase = 256,
  wil_details_ServiceReportingKind_VariantDeviceUsageBase = 320,
  wil_details_ServiceReportingKind_VariantUniquePotentialBase = 384,
  wil_details_ServiceReportingKind_VariantUniqueUsageBase = 448,
};

enum wil_VariantReportingKind
{
  wil_VariantReportingKind_None = 0,
  wil_VariantReportingKind_UniqueUsage = 1,
  wil_VariantReportingKind_DeviceUsage = 2,
};

typedef struct _MMINPAGE_FLAGS
{
  struct /* bitfield */
  {
    /* 0x0000 */ unsigned long GetExtents : 1; /* bit position: 0 */
    /* 0x0000 */ unsigned long PrefetchSystemVmType : 2; /* bit position: 1 */
    /* 0x0000 */ unsigned long VaPrefetchReadBlock : 1; /* bit position: 3 */
    /* 0x0000 */ unsigned long CollidedFlowThrough : 1; /* bit position: 4 */
    /* 0x0000 */ unsigned long ForceCollisions : 1; /* bit position: 5 */
    /* 0x0000 */ unsigned long InPageExpanded : 1; /* bit position: 6 */
    /* 0x0000 */ unsigned long IssuedAtLowPriority : 1; /* bit position: 7 */
    /* 0x0000 */ unsigned long FaultFromStore : 1; /* bit position: 8 */
    /* 0x0000 */ unsigned long PagePriority : 3; /* bit position: 9 */
    /* 0x0000 */ unsigned long ClusteredPagePriority : 3; /* bit position: 12 */
    /* 0x0000 */ unsigned long MakeClusterValid : 1; /* bit position: 15 */
    /* 0x0000 */ unsigned long PerformRelocations : 1; /* bit position: 16 */
    /* 0x0000 */ unsigned long ZeroLastPage : 1; /* bit position: 17 */
    /* 0x0000 */ unsigned long UserFault : 1; /* bit position: 18 */
    /* 0x0000 */ unsigned long StandbyProtectionNeeded : 1; /* bit position: 19 */
    /* 0x0000 */ unsigned long PteChanged : 1; /* bit position: 20 */
    /* 0x0000 */ unsigned long PageFileFault : 1; /* bit position: 21 */
    /* 0x0000 */ unsigned long PageFilePageHashActive : 1; /* bit position: 22 */
    /* 0x0000 */ unsigned long CoalescedIo : 1; /* bit position: 23 */
    /* 0x0000 */ unsigned long VmLockNotNeeded : 1; /* bit position: 24 */
    /* 0x0000 */ unsigned long Spare0 : 1; /* bit position: 25 */
    /* 0x0000 */ unsigned long Spare1 : 6; /* bit position: 26 */
  }; /* bitfield */
} MMINPAGE_FLAGS, *PMMINPAGE_FLAGS; /* size: 0x0004 */

typedef struct _DBGKD_READ_WRITE_IO64
{
  /* 0x0000 */ unsigned __int64 IoAddress;
  /* 0x0008 */ unsigned long DataSize;
  /* 0x000c */ unsigned long DataValue;
} DBGKD_READ_WRITE_IO64, *PDBGKD_READ_WRITE_IO64; /* size: 0x0010 */

typedef struct _TIME_FIELDS
{
  /* 0x0000 */ short Year;
  /* 0x0002 */ short Month;
  /* 0x0004 */ short Day;
  /* 0x0006 */ short Hour;
  /* 0x0008 */ short Minute;
  /* 0x000a */ short Second;
  /* 0x000c */ short Milliseconds;
  /* 0x000e */ short Weekday;
} TIME_FIELDS, *PTIME_FIELDS; /* size: 0x0010 */

typedef struct _RTL_TIME_ZONE_INFORMATION
{
  /* 0x0000 */ long Bias;
  /* 0x0004 */ wchar_t StandardName[32];
  /* 0x0044 */ struct _TIME_FIELDS StandardStart;
  /* 0x0054 */ long StandardBias;
  /* 0x0058 */ wchar_t DaylightName[32];
  /* 0x0098 */ struct _TIME_FIELDS DaylightStart;
  /* 0x00a8 */ long DaylightBias;
} RTL_TIME_ZONE_INFORMATION, *PRTL_TIME_ZONE_INFORMATION; /* size: 0x00ac */

typedef struct _RTL_DYNAMIC_TIME_ZONE_INFORMATION
{
  /* 0x0000 */ struct _RTL_TIME_ZONE_INFORMATION tzi;
  /* 0x00ac */ wchar_t TimeZoneKeyName[128];
  /* 0x01ac */ unsigned char DynamicDaylightTimeDisabled;
  /* 0x01ad */ char __PADDING__[3];
} RTL_DYNAMIC_TIME_ZONE_INFORMATION, *PRTL_DYNAMIC_TIME_ZONE_INFORMATION; /* size: 0x01b0 */

typedef struct _SINGLE_LIST_ENTRY
{
  /* 0x0000 */ struct _SINGLE_LIST_ENTRY* Next;
} SINGLE_LIST_ENTRY, *PSINGLE_LIST_ENTRY; /* size: 0x0008 */

typedef struct _KDPC
{
  union
  {
    /* 0x0000 */ unsigned long TargetInfoAsUlong;
    struct
    {
      /* 0x0000 */ unsigned char Type;
      /* 0x0001 */ unsigned char Importance;
      /* 0x0002 */ volatile unsigned short Number;
    }; /* size: 0x0004 */
  }; /* size: 0x0004 */
  /* 0x0004 */ long Padding_15;
  /* 0x0008 */ struct _SINGLE_LIST_ENTRY DpcListEntry;
  /* 0x0010 */ unsigned __int64 ProcessorHistory;
  /* 0x0018 */ void* DeferredRoutine /* function */;
  /* 0x0020 */ void* DeferredContext;
  /* 0x0028 */ void* SystemArgument1;
  /* 0x0030 */ void* SystemArgument2;
  /* 0x0038 */ void* DpcData;
} KDPC, *PKDPC; /* size: 0x0040 */

typedef struct _TIMEZONE_CHANGE_EVENT
{
  /* 0x0000 */ struct _KDPC Dpc;
  /* 0x0040 */ struct _KTIMER Timer;
  /* 0x0080 */ struct _WORK_QUEUE_ITEM WorkItem;
} TIMEZONE_CHANGE_EVENT, *PTIMEZONE_CHANGE_EVENT; /* size: 0x00a0 */

typedef struct _EX_TIMEZONE_STATE
{
  /* 0x0000 */ struct _RTL_DYNAMIC_TIME_ZONE_INFORMATION TimeZoneInformation;
  /* 0x01b0 */ unsigned long CurrentTimeZoneId;
  /* 0x01b4 */ long LastTimeZoneBias;
  /* 0x01b8 */ union _LARGE_INTEGER TimeZoneBias;
  /* 0x01c0 */ struct _TIMEZONE_CHANGE_EVENT TimeZone;
  /* 0x0260 */ struct _TIMEZONE_CHANGE_EVENT Century;
  /* 0x0300 */ struct _TIMEZONE_CHANGE_EVENT NextYear;
  /* 0x03a0 */ long OkToTimeZoneRefresh;
  /* 0x03a4 */ long Padding_16;
  /* 0x03a8 */ union _LARGE_INTEGER NextCenturyTimeInUTC;
  /* 0x03b0 */ struct _TIME_FIELDS NextCenturyTimeFieldsInLocalTime;
  /* 0x03c0 */ union _LARGE_INTEGER NextYearTimeInUTC;
  /* 0x03c8 */ struct _TIME_FIELDS NextYearTimeFieldsInLocalTime;
  /* 0x03d8 */ short LastDynamicTimeZoneYear;
  /* 0x03da */ char Padding_17[6];
  /* 0x03e0 */ union _LARGE_INTEGER NextSystemCutoverInUTC;
  /* 0x03e8 */ unsigned long RefreshFailures;
  /* 0x03ec */ long __PADDING__[1];
} EX_TIMEZONE_STATE, *PEX_TIMEZONE_STATE; /* size: 0x03f0 */

enum wil_FeatureEnabledStateOptions
{
  wil_FeatureEnabledStateOptions_None = 0,
  wil_FeatureEnabledStateOptions_VariantConfig = 1,
};

typedef struct _QUAD
{
  union
  {
    /* 0x0000 */ __int64 UseThisFieldToCopy;
    /* 0x0000 */ double DoNotUseThisField;
  }; /* size: 0x0008 */
} QUAD, *PQUAD; /* size: 0x0008 */

typedef struct _OBJECT_HEADER
{
  /* 0x0000 */ __int64 PointerCount;
  union
  {
    /* 0x0008 */ __int64 HandleCount;
    /* 0x0008 */ void* NextToFree;
  }; /* size: 0x0008 */
  /* 0x0010 */ struct _EX_PUSH_LOCK Lock;
  /* 0x0018 */ unsigned char TypeIndex;
  union
  {
    /* 0x0019 */ unsigned char TraceFlags;
    struct /* bitfield */
    {
      /* 0x0019 */ unsigned char DbgRefTrace : 1; /* bit position: 0 */
      /* 0x0019 */ unsigned char DbgTracePermanent : 1; /* bit position: 1 */
    }; /* bitfield */
  }; /* size: 0x0001 */
  /* 0x001a */ unsigned char InfoMask;
  union
  {
    /* 0x001b */ unsigned char Flags;
    struct /* bitfield */
    {
      /* 0x001b */ unsigned char NewObject : 1; /* bit position: 0 */
      /* 0x001b */ unsigned char KernelObject : 1; /* bit position: 1 */
      /* 0x001b */ unsigned char KernelOnlyAccess : 1; /* bit position: 2 */
      /* 0x001b */ unsigned char ExclusiveObject : 1; /* bit position: 3 */
      /* 0x001b */ unsigned char PermanentObject : 1; /* bit position: 4 */
      /* 0x001b */ unsigned char DefaultSecurityQuota : 1; /* bit position: 5 */
      /* 0x001b */ unsigned char SingleHandleEntry : 1; /* bit position: 6 */
      /* 0x001b */ unsigned char DeletedInline : 1; /* bit position: 7 */
    }; /* bitfield */
  }; /* size: 0x0001 */
  /* 0x001c */ unsigned long Reserved;
  union
  {
    /* 0x0020 */ struct _OBJECT_CREATE_INFORMATION* ObjectCreateInfo;
    /* 0x0020 */ void* QuotaBlockCharged;
  }; /* size: 0x0008 */
  /* 0x0028 */ void* SecurityDescriptor;
  /* 0x0030 */ struct _QUAD Body;
} OBJECT_HEADER, *POBJECT_HEADER; /* size: 0x0038 */

enum wil_FeatureEnabledStateKind
{
  wil_FeatureEnabledStateKind_Service = 1,
  wil_FeatureEnabledStateKind_User = 2,
  wil_FeatureEnabledStateKind_Test = 3,
};

typedef struct _INTERFACE
{
  /* 0x0000 */ unsigned short Size;
  /* 0x0002 */ unsigned short Version;
  /* 0x0004 */ long Padding_18;
  /* 0x0008 */ void* Context;
  /* 0x0010 */ void* InterfaceReference /* function */;
  /* 0x0018 */ void* InterfaceDereference /* function */;
} INTERFACE, *PINTERFACE; /* size: 0x0020 */

enum wil_FeatureEnabledState
{
  wil_FeatureEnabledState_Default = 0,
  wil_FeatureEnabledState_Disabled = 1,
  wil_FeatureEnabledState_Enabled = 2,
};

enum wil_details_StagingConfigFeatureFields
{
  wil_details_StagingConfigFeatureFields_None = 0,
  wil_details_StagingConfigFeatureFields_ServiceState = 1,
  wil_details_StagingConfigFeatureFields_UserState = 2,
  wil_details_StagingConfigFeatureFields_TestState = 4,
  wil_details_StagingConfigFeatureFields_Variant = 8,
};

typedef struct _DBGKD_SET_INTERNAL_BREAKPOINT32
{
  /* 0x0000 */ unsigned long BreakpointAddress;
  /* 0x0004 */ unsigned long Flags;
} DBGKD_SET_INTERNAL_BREAKPOINT32, *PDBGKD_SET_INTERNAL_BREAKPOINT32; /* size: 0x0008 */

struct _JOB_NET_RATE_CONTROL;

enum wil_FeatureStore
{
  wil_FeatureStore_Machine = 0,
  wil_FeatureStore_User = 1,
  wil_FeatureStore_All = 2,
};

enum wil_FeatureVariantPayloadKind
{
  wil_FeatureVariantPayloadKind_None = 0,
  wil_FeatureVariantPayloadKind_Resident = 1,
  wil_FeatureVariantPayloadKind_External = 2,
};

enum wil_FeatureChangeTime
{
  wil_FeatureChangeTime_OnRead = 0,
  wil_FeatureChangeTime_OnReload = 1,
  wil_FeatureChangeTime_OnSession = 2,
  wil_FeatureChangeTime_OnReboot = 3,
};

typedef enum _RTL_FEATURE_CONFIGURATION_TYPE
{
  RtlFeatureConfigurationBoot = 0,
  RtlFeatureConfigurationRuntime = 1,
  RtlFeatureConfigurationCount = 2,
} RTL_FEATURE_CONFIGURATION_TYPE, *PRTL_FEATURE_CONFIGURATION_TYPE;

typedef union _MCG_STATUS
{
  union
  {
    struct
    {
      struct /* bitfield */
      {
        /* 0x0000 */ unsigned long RestartIpValid : 1; /* bit position: 0 */
        /* 0x0000 */ unsigned long ErrorIpValid : 1; /* bit position: 1 */
        /* 0x0000 */ unsigned long MachineCheckInProgress : 1; /* bit position: 2 */
        /* 0x0000 */ unsigned long LocalMceValid : 1; /* bit position: 3 */
        /* 0x0000 */ unsigned long Reserved1 : 28; /* bit position: 4 */
      }; /* bitfield */
      /* 0x0004 */ unsigned long Reserved2;
    }; /* size: 0x0008 */
    /* 0x0000 */ unsigned __int64 QuadPart;
  }; /* size: 0x0008 */
} MCG_STATUS, *PMCG_STATUS; /* size: 0x0008 */

typedef struct _MCI_STATUS_BITS_COMMON
{
  struct /* bitfield */
  {
    /* 0x0000 */ unsigned __int64 McaErrorCode : 16; /* bit position: 0 */
    /* 0x0000 */ unsigned __int64 ModelErrorCode : 16; /* bit position: 16 */
    /* 0x0000 */ unsigned __int64 Reserved : 25; /* bit position: 32 */
    /* 0x0000 */ unsigned __int64 ContextCorrupt : 1; /* bit position: 57 */
    /* 0x0000 */ unsigned __int64 AddressValid : 1; /* bit position: 58 */
    /* 0x0000 */ unsigned __int64 MiscValid : 1; /* bit position: 59 */
    /* 0x0000 */ unsigned __int64 ErrorEnabled : 1; /* bit position: 60 */
    /* 0x0000 */ unsigned __int64 UncorrectedError : 1; /* bit position: 61 */
    /* 0x0000 */ unsigned __int64 StatusOverFlow : 1; /* bit position: 62 */
    /* 0x0000 */ unsigned __int64 Valid : 1; /* bit position: 63 */
  }; /* bitfield */
} MCI_STATUS_BITS_COMMON, *PMCI_STATUS_BITS_COMMON; /* size: 0x0008 */

typedef struct _MCI_STATUS_AMD_BITS
{
  struct /* bitfield */
  {
    /* 0x0000 */ unsigned __int64 McaErrorCode : 16; /* bit position: 0 */
    /* 0x0000 */ unsigned __int64 ModelErrorCode : 16; /* bit position: 16 */
    /* 0x0000 */ unsigned __int64 ImplementationSpecific2 : 11; /* bit position: 32 */
    /* 0x0000 */ unsigned __int64 Poison : 1; /* bit position: 43 */
    /* 0x0000 */ unsigned __int64 Deferred : 1; /* bit position: 44 */
    /* 0x0000 */ unsigned __int64 ImplementationSpecific1 : 12; /* bit position: 45 */
    /* 0x0000 */ unsigned __int64 ContextCorrupt : 1; /* bit position: 57 */
    /* 0x0000 */ unsigned __int64 AddressValid : 1; /* bit position: 58 */
    /* 0x0000 */ unsigned __int64 MiscValid : 1; /* bit position: 59 */
    /* 0x0000 */ unsigned __int64 ErrorEnabled : 1; /* bit position: 60 */
    /* 0x0000 */ unsigned __int64 UncorrectedError : 1; /* bit position: 61 */
    /* 0x0000 */ unsigned __int64 StatusOverFlow : 1; /* bit position: 62 */
    /* 0x0000 */ unsigned __int64 Valid : 1; /* bit position: 63 */
  }; /* bitfield */
} MCI_STATUS_AMD_BITS, *PMCI_STATUS_AMD_BITS; /* size: 0x0008 */

typedef struct _MCI_STATUS_INTEL_BITS
{
  struct /* bitfield */
  {
    /* 0x0000 */ unsigned __int64 McaErrorCode : 16; /* bit position: 0 */
    /* 0x0000 */ unsigned __int64 ModelErrorCode : 16; /* bit position: 16 */
    /* 0x0000 */ unsigned __int64 OtherInfo : 5; /* bit position: 32 */
    /* 0x0000 */ unsigned __int64 FirmwareUpdateError : 1; /* bit position: 37 */
    /* 0x0000 */ unsigned __int64 CorrectedErrorCount : 15; /* bit position: 38 */
    /* 0x0000 */ unsigned __int64 ThresholdErrorStatus : 2; /* bit position: 53 */
    /* 0x0000 */ unsigned __int64 ActionRequired : 1; /* bit position: 55 */
    /* 0x0000 */ unsigned __int64 Signalling : 1; /* bit position: 56 */
    /* 0x0000 */ unsigned __int64 ContextCorrupt : 1; /* bit position: 57 */
    /* 0x0000 */ unsigned __int64 AddressValid : 1; /* bit position: 58 */
    /* 0x0000 */ unsigned __int64 MiscValid : 1; /* bit position: 59 */
    /* 0x0000 */ unsigned __int64 ErrorEnabled : 1; /* bit position: 60 */
    /* 0x0000 */ unsigned __int64 UncorrectedError : 1; /* bit position: 61 */
    /* 0x0000 */ unsigned __int64 StatusOverFlow : 1; /* bit position: 62 */
    /* 0x0000 */ unsigned __int64 Valid : 1; /* bit position: 63 */
  }; /* bitfield */
} MCI_STATUS_INTEL_BITS, *PMCI_STATUS_INTEL_BITS; /* size: 0x0008 */

typedef union _MCI_STATUS
{
  union
  {
    /* 0x0000 */ struct _MCI_STATUS_BITS_COMMON CommonBits;
    /* 0x0000 */ struct _MCI_STATUS_AMD_BITS AmdBits;
    /* 0x0000 */ struct _MCI_STATUS_INTEL_BITS IntelBits;
    /* 0x0000 */ unsigned __int64 QuadPart;
  }; /* size: 0x0008 */
} MCI_STATUS, *PMCI_STATUS; /* size: 0x0008 */

typedef struct _WHEA_AMD_EXTENDED_REGISTERS
{
  /* 0x0000 */ unsigned __int64 IPID;
  /* 0x0008 */ unsigned __int64 SYND;
  /* 0x0010 */ unsigned __int64 CONFIG;
  /* 0x0018 */ unsigned __int64 DESTAT;
  /* 0x0020 */ unsigned __int64 DEADDR;
  /* 0x0028 */ unsigned __int64 MISC1;
  /* 0x0030 */ unsigned __int64 MISC2;
  /* 0x0038 */ unsigned __int64 MISC3;
  /* 0x0040 */ unsigned __int64 MISC4;
  /* 0x0048 */ unsigned __int64 RasCap;
  /* 0x0050 */ unsigned __int64 Reserved[14];
} WHEA_AMD_EXTENDED_REGISTERS, *PWHEA_AMD_EXTENDED_REGISTERS; /* size: 0x00c0 */

typedef union _MCG_CAP
{
  union
  {
    struct /* bitfield */
    {
      /* 0x0000 */ unsigned __int64 CountField : 8; /* bit position: 0 */
      /* 0x0000 */ unsigned __int64 ControlMsrPresent : 1; /* bit position: 8 */
      /* 0x0000 */ unsigned __int64 ExtendedMsrsPresent : 1; /* bit position: 9 */
      /* 0x0000 */ unsigned __int64 SignalingExtensionPresent : 1; /* bit position: 10 */
      /* 0x0000 */ unsigned __int64 ThresholdErrorStatusPresent : 1; /* bit position: 11 */
      /* 0x0000 */ unsigned __int64 Reserved : 4; /* bit position: 12 */
      /* 0x0000 */ unsigned __int64 ExtendedRegisterCount : 8; /* bit position: 16 */
      /* 0x0000 */ unsigned __int64 SoftwareErrorRecoverySupported : 1; /* bit position: 24 */
      /* 0x0000 */ unsigned __int64 EnhancedMachineCheckCapability : 1; /* bit position: 25 */
      /* 0x0000 */ unsigned __int64 ExtendedErrorLogging : 1; /* bit position: 26 */
      /* 0x0000 */ unsigned __int64 LocalMachineCheckException : 1; /* bit position: 27 */
    }; /* bitfield */
    /* 0x0000 */ unsigned __int64 QuadPart;
  }; /* size: 0x0008 */
} MCG_CAP, *PMCG_CAP; /* size: 0x0008 */

typedef struct _WHEA_XPF_MCA_SECTION
{
  /* 0x0000 */ unsigned long VersionNumber;
  /* 0x0004 */ enum _WHEA_CPU_VENDOR CpuVendor;
  /* 0x0008 */ union _LARGE_INTEGER Timestamp;
  /* 0x0010 */ unsigned long ProcessorNumber;
  /* 0x0014 */ union _MCG_STATUS GlobalStatus;
  /* 0x001c */ unsigned __int64 InstructionPointer;
  /* 0x0024 */ unsigned long BankNumber;
  /* 0x0028 */ union _MCI_STATUS Status;
  /* 0x0030 */ unsigned __int64 Address;
  /* 0x0038 */ unsigned __int64 Misc;
  /* 0x0040 */ unsigned long ExtendedRegisterCount;
  /* 0x0044 */ unsigned long ApicId;
  union
  {
    /* 0x0048 */ unsigned __int64 ExtendedRegisters[24];
    /* 0x0048 */ struct _WHEA_AMD_EXTENDED_REGISTERS AMDExtendedRegisters;
  }; /* size: 0x00c0 */
  /* 0x0108 */ union _MCG_CAP GlobalCapability;
} WHEA_XPF_MCA_SECTION, *PWHEA_XPF_MCA_SECTION; /* size: 0x0110 */

enum wil_details_ServiceReportingOptions
{
  wil_details_ServiceReportingOptions_None = 0,
  wil_details_ServiceReportingOptions_VariantConfig = 1,
};

typedef struct _FILE_STANDARD_INFORMATION
{
  /* 0x0000 */ union _LARGE_INTEGER AllocationSize;
  /* 0x0008 */ union _LARGE_INTEGER EndOfFile;
  /* 0x0010 */ unsigned long NumberOfLinks;
  /* 0x0014 */ unsigned char DeletePending;
  /* 0x0015 */ unsigned char Directory;
  /* 0x0016 */ char __PADDING__[2];
} FILE_STANDARD_INFORMATION, *PFILE_STANDARD_INFORMATION; /* size: 0x0018 */

typedef union _KLOCK_ENTRY_BOOST_BITMAP
{
  union
  {
    /* 0x0000 */ unsigned long AllFields;
    struct /* bitfield */
    {
      /* 0x0000 */ unsigned long AllBoosts : 17; /* bit position: 0 */
      /* 0x0000 */ unsigned long Reserved : 15; /* bit position: 17 */
    }; /* bitfield */
    struct
    {
      struct /* bitfield */
      {
        /* 0x0000 */ unsigned short CpuBoostsBitmap : 15; /* bit position: 0 */
        /* 0x0000 */ unsigned short IoBoost : 1; /* bit position: 15 */
      }; /* bitfield */
      struct /* bitfield */
      {
        /* 0x0002 */ unsigned short IoQoSBoost : 1; /* bit position: 0 */
        /* 0x0002 */ unsigned short IoNormalPriorityWaiterCount : 8; /* bit position: 1 */
        /* 0x0002 */ unsigned short IoQoSWaiterCount : 7; /* bit position: 9 */
      }; /* bitfield */
    }; /* size: 0x0004 */
  }; /* size: 0x0004 */
} KLOCK_ENTRY_BOOST_BITMAP, *PKLOCK_ENTRY_BOOST_BITMAP; /* size: 0x0004 */

enum wil_details_FeatureTestStateKind
{
  wil_details_FeatureTestStateKind_EnabledState = 0,
  wil_details_FeatureTestStateKind_Variant = 1,
};

typedef struct _KAPC
{
  /* 0x0000 */ unsigned char Type;
  union
  {
    /* 0x0001 */ unsigned char AllFlags;
    struct /* bitfield */
    {
      /* 0x0001 */ unsigned char CallbackDataContext : 1; /* bit position: 0 */
      /* 0x0001 */ unsigned char Unused : 7; /* bit position: 1 */
    }; /* bitfield */
  }; /* size: 0x0001 */
  /* 0x0002 */ unsigned char Size;
  /* 0x0003 */ unsigned char SpareByte1;
  /* 0x0004 */ unsigned long SpareLong0;
  /* 0x0008 */ struct _KTHREAD* Thread;
  /* 0x0010 */ struct _LIST_ENTRY ApcListEntry;
  union
  {
    struct
    {
      /* 0x0020 */ void* KernelRoutine /* function */;
      /* 0x0028 */ void* RundownRoutine /* function */;
      /* 0x0030 */ void* NormalRoutine /* function */;
    }; /* size: 0x0018 */
    /* 0x0020 */ void* Reserved[3];
  }; /* size: 0x0018 */
  /* 0x0038 */ void* NormalContext;
  /* 0x0040 */ void* SystemArgument1;
  /* 0x0048 */ void* SystemArgument2;
  /* 0x0050 */ char ApcStateIndex;
  /* 0x0051 */ char ApcMode;
  /* 0x0052 */ unsigned char Inserted;
  /* 0x0053 */ char __PADDING__[5];
} KAPC, *PKAPC; /* size: 0x0058 */

enum wil_UsageReportingMode
{
  wil_UsageReportingMode_Default = 0,
  wil_UsageReportingMode_SuppressPotential = 1,
  wil_UsageReportingMode_SuppressImplicit = 2,
};

typedef struct _XSAVE_AREA_HEADER
{
  /* 0x0000 */ unsigned __int64 Mask;
  /* 0x0008 */ unsigned __int64 CompactionMask;
  /* 0x0010 */ unsigned __int64 Reserved2[6];
} XSAVE_AREA_HEADER, *PXSAVE_AREA_HEADER; /* size: 0x0040 */

typedef struct _PERIODIC_CAPTURE_STATE_GUIDS
{
  /* 0x0000 */ unsigned short ProviderCount;
  /* 0x0002 */ char Padding_19[6];
  /* 0x0008 */ struct _GUID* Providers;
} PERIODIC_CAPTURE_STATE_GUIDS, *PPERIODIC_CAPTURE_STATE_GUIDS; /* size: 0x0010 */

typedef enum _MMLISTS
{
  ZeroedPageList = 0,
  FreePageList = 1,
  StandbyPageList = 2,
  ModifiedPageList = 3,
  ModifiedNoWritePageList = 4,
  BadPageList = 5,
  ActiveAndValid = 6,
  TransitionPage = 7,
} MMLISTS, *PMMLISTS;

typedef enum _MI_PFN_CACHE_ATTRIBUTE
{
  MiNonCached = 0,
  MiCached = 1,
  MiWriteCombined = 2,
  MiNotMapped = 3,
} MI_PFN_CACHE_ATTRIBUTE, *PMI_PFN_CACHE_ATTRIBUTE;

typedef struct _SYSTEM_POWER_STATE_CONTEXT
{
  union
  {
    struct /* bitfield */
    {
      /* 0x0000 */ unsigned long Reserved1 : 8; /* bit position: 0 */
      /* 0x0000 */ unsigned long TargetSystemState : 4; /* bit position: 8 */
      /* 0x0000 */ unsigned long EffectiveSystemState : 4; /* bit position: 12 */
      /* 0x0000 */ unsigned long CurrentSystemState : 4; /* bit position: 16 */
      /* 0x0000 */ unsigned long IgnoreHibernationPath : 1; /* bit position: 20 */
      /* 0x0000 */ unsigned long PseudoTransition : 1; /* bit position: 21 */
      /* 0x0000 */ unsigned long KernelSoftReboot : 1; /* bit position: 22 */
      /* 0x0000 */ unsigned long DirectedDripsTransition : 1; /* bit position: 23 */
      /* 0x0000 */ unsigned long Reserved2 : 8; /* bit position: 24 */
    }; /* bitfield */
    /* 0x0000 */ unsigned long ContextAsUlong;
  }; /* size: 0x0004 */
} SYSTEM_POWER_STATE_CONTEXT, *PSYSTEM_POWER_STATE_CONTEXT; /* size: 0x0004 */

typedef struct _IO_STACK_LOCATION
{
  /* 0x0000 */ unsigned char MajorFunction;
  /* 0x0001 */ unsigned char MinorFunction;
  /* 0x0002 */ unsigned char Flags;
  /* 0x0003 */ unsigned char Control;
  /* 0x0004 */ long Padding_20;
  union
  {
    union
    {
      struct
      {
        /* 0x0008 */ struct _IO_SECURITY_CONTEXT* SecurityContext;
        /* 0x0010 */ unsigned long Options;
        /* 0x000c */ long Padding_21;
        /* 0x0018 */ unsigned short FileAttributes;
        /* 0x001a */ unsigned short ShareAccess;
        /* 0x0014 */ long Padding_22;
        /* 0x0020 */ unsigned long EaLength;
        /* 0x0024 */ long __PADDING__[1];
      } /* size: 0x0020 */ Create;
      struct
      {
        /* 0x0008 */ struct _IO_SECURITY_CONTEXT* SecurityContext;
        /* 0x0010 */ unsigned long Options;
        /* 0x000c */ long Padding_23;
        /* 0x0018 */ unsigned short Reserved;
        /* 0x001a */ unsigned short ShareAccess;
        /* 0x0014 */ long Padding_24;
        /* 0x0020 */ struct _NAMED_PIPE_CREATE_PARAMETERS* Parameters;
      } /* size: 0x0020 */ CreatePipe;
      struct
      {
        /* 0x0008 */ struct _IO_SECURITY_CONTEXT* SecurityContext;
        /* 0x0010 */ unsigned long Options;
        /* 0x000c */ long Padding_25;
        /* 0x0018 */ unsigned short Reserved;
        /* 0x001a */ unsigned short ShareAccess;
        /* 0x0014 */ long Padding_26;
        /* 0x0020 */ struct _MAILSLOT_CREATE_PARAMETERS* Parameters;
      } /* size: 0x0020 */ CreateMailslot;
      struct
      {
        /* 0x0008 */ unsigned long Length;
        /* 0x0004 */ long Padding_27;
        /* 0x0010 */ unsigned long Key;
        /* 0x0014 */ unsigned long Flags;
        /* 0x0018 */ union _LARGE_INTEGER ByteOffset;
      } /* size: 0x0018 */ Read;
      struct
      {
        /* 0x0008 */ unsigned long Length;
        /* 0x0004 */ long Padding_28;
        /* 0x0010 */ unsigned long Key;
        /* 0x0014 */ unsigned long Flags;
        /* 0x0018 */ union _LARGE_INTEGER ByteOffset;
      } /* size: 0x0018 */ Write;
      struct
      {
        /* 0x0008 */ unsigned long Length;
        /* 0x0004 */ long Padding_29;
        /* 0x0010 */ struct _UNICODE_STRING* FileName;
        /* 0x0018 */ enum _FILE_INFORMATION_CLASS FileInformationClass;
        /* 0x0014 */ long Padding_30;
        /* 0x0020 */ unsigned long FileIndex;
        /* 0x0024 */ long __PADDING__[1];
      } /* size: 0x0020 */ QueryDirectory;
      struct
      {
        /* 0x0008 */ unsigned long Length;
        /* 0x0004 */ long Padding_31;
        /* 0x0010 */ unsigned long CompletionFilter;
        /* 0x0014 */ long __PADDING__[1];
      } /* size: 0x0010 */ NotifyDirectory;
      struct
      {
        /* 0x0008 */ unsigned long Length;
        /* 0x0004 */ long Padding_32;
        /* 0x0010 */ unsigned long CompletionFilter;
        /* 0x000c */ long Padding_33;
        /* 0x0018 */ enum _DIRECTORY_NOTIFY_INFORMATION_CLASS DirectoryNotifyInformationClass;
        /* 0x001c */ long __PADDING__[1];
      } /* size: 0x0018 */ NotifyDirectoryEx;
      struct
      {
        /* 0x0008 */ unsigned long Length;
        /* 0x0004 */ long Padding_34;
        /* 0x0010 */ enum _FILE_INFORMATION_CLASS FileInformationClass;
        /* 0x0014 */ long __PADDING__[1];
      } /* size: 0x0010 */ QueryFile;
      struct
      {
        /* 0x0008 */ unsigned long Length;
        /* 0x0004 */ long Padding_35;
        /* 0x0010 */ enum _FILE_INFORMATION_CLASS FileInformationClass;
        /* 0x000c */ long Padding_36;
        /* 0x0018 */ struct _FILE_OBJECT* FileObject;
        union
        {
          struct
          {
            /* 0x0020 */ unsigned char ReplaceIfExists;
            /* 0x0021 */ unsigned char AdvanceOnly;
          }; /* size: 0x0002 */
          /* 0x0020 */ unsigned long ClusterCount;
          /* 0x0020 */ void* DeleteHandle;
        }; /* size: 0x0008 */
      } /* size: 0x0020 */ SetFile;
      struct
      {
        /* 0x0008 */ unsigned long Length;
        /* 0x0004 */ long Padding_37;
        /* 0x0010 */ void* EaList;
        /* 0x0018 */ unsigned long EaListLength;
        /* 0x0014 */ long Padding_38;
        /* 0x0020 */ unsigned long EaIndex;
        /* 0x0024 */ long __PADDING__[1];
      } /* size: 0x0020 */ QueryEa;
      struct
      {
        /* 0x0008 */ unsigned long Length;
      } /* size: 0x0004 */ SetEa;
      struct
      {
        /* 0x0008 */ unsigned long Length;
        /* 0x0004 */ long Padding_39;
        /* 0x0010 */ enum _FSINFOCLASS FsInformationClass;
        /* 0x0014 */ long __PADDING__[1];
      } /* size: 0x0010 */ QueryVolume;
      struct
      {
        /* 0x0008 */ unsigned long Length;
        /* 0x0004 */ long Padding_40;
        /* 0x0010 */ enum _FSINFOCLASS FsInformationClass;
        /* 0x0014 */ long __PADDING__[1];
      } /* size: 0x0010 */ SetVolume;
      struct
      {
        /* 0x0008 */ unsigned long OutputBufferLength;
        /* 0x0004 */ long Padding_41;
        /* 0x0010 */ unsigned long InputBufferLength;
        /* 0x000c */ long Padding_42;
        /* 0x0018 */ unsigned long FsControlCode;
        /* 0x0014 */ long Padding_43;
        /* 0x0020 */ void* Type3InputBuffer;
      } /* size: 0x0020 */ FileSystemControl;
      struct
      {
        /* 0x0008 */ union _LARGE_INTEGER* Length;
        /* 0x0010 */ unsigned long Key;
        /* 0x000c */ long Padding_44;
        /* 0x0018 */ union _LARGE_INTEGER ByteOffset;
      } /* size: 0x0018 */ LockControl;
      struct
      {
        /* 0x0008 */ unsigned long OutputBufferLength;
        /* 0x0004 */ long Padding_45;
        /* 0x0010 */ unsigned long InputBufferLength;
        /* 0x000c */ long Padding_46;
        /* 0x0018 */ unsigned long IoControlCode;
        /* 0x0014 */ long Padding_47;
        /* 0x0020 */ void* Type3InputBuffer;
      } /* size: 0x0020 */ DeviceIoControl;
      struct
      {
        /* 0x0008 */ unsigned long SecurityInformation;
        /* 0x0004 */ long Padding_48;
        /* 0x0010 */ unsigned long Length;
        /* 0x0014 */ long __PADDING__[1];
      } /* size: 0x0010 */ QuerySecurity;
      struct
      {
        /* 0x0008 */ unsigned long SecurityInformation;
        /* 0x0004 */ long Padding_49;
        /* 0x0010 */ void* SecurityDescriptor;
      } /* size: 0x0010 */ SetSecurity;
      struct
      {
        /* 0x0008 */ struct _VPB* Vpb;
        /* 0x0010 */ struct _DEVICE_OBJECT* DeviceObject;
      } /* size: 0x0010 */ MountVolume;
      struct
      {
        /* 0x0008 */ struct _VPB* Vpb;
        /* 0x0010 */ struct _DEVICE_OBJECT* DeviceObject;
      } /* size: 0x0010 */ VerifyVolume;
      struct
      {
        /* 0x0008 */ struct _SCSI_REQUEST_BLOCK* Srb;
      } /* size: 0x0008 */ Scsi;
      struct
      {
        /* 0x0008 */ unsigned long Length;
        /* 0x0004 */ long Padding_50;
        /* 0x0010 */ void* StartSid;
        /* 0x0018 */ struct _FILE_GET_QUOTA_INFORMATION* SidList;
        /* 0x0020 */ unsigned long SidListLength;
        /* 0x0024 */ long __PADDING__[1];
      } /* size: 0x0020 */ QueryQuota;
      struct
      {
        /* 0x0008 */ unsigned long Length;
      } /* size: 0x0004 */ SetQuota;
      struct
      {
        /* 0x0008 */ enum _DEVICE_RELATION_TYPE Type;
      } /* size: 0x0004 */ QueryDeviceRelations;
      struct
      {
        /* 0x0008 */ const struct _GUID* InterfaceType;
        /* 0x0010 */ unsigned short Size;
        /* 0x0012 */ unsigned short Version;
        /* 0x000c */ long Padding_51;
        /* 0x0018 */ struct _INTERFACE* Interface;
        /* 0x0020 */ void* InterfaceSpecificData;
      } /* size: 0x0020 */ QueryInterface;
      struct
      {
        /* 0x0008 */ struct _DEVICE_CAPABILITIES* Capabilities;
      } /* size: 0x0008 */ DeviceCapabilities;
      struct
      {
        /* 0x0008 */ struct _IO_RESOURCE_REQUIREMENTS_LIST* IoResourceRequirementList;
      } /* size: 0x0008 */ FilterResourceRequirements;
      struct
      {
        /* 0x0008 */ unsigned long WhichSpace;
        /* 0x0004 */ long Padding_52;
        /* 0x0010 */ void* Buffer;
        /* 0x0018 */ unsigned long Offset;
        /* 0x0014 */ long Padding_53;
        /* 0x0020 */ unsigned long Length;
        /* 0x0024 */ long __PADDING__[1];
      } /* size: 0x0020 */ ReadWriteConfig;
      struct
      {
        /* 0x0008 */ unsigned char Lock;
      } /* size: 0x0001 */ SetLock;
      struct
      {
        /* 0x0008 */ enum BUS_QUERY_ID_TYPE IdType;
      } /* size: 0x0004 */ QueryId;
      struct
      {
        /* 0x0008 */ enum DEVICE_TEXT_TYPE DeviceTextType;
        /* 0x0004 */ long Padding_54;
        /* 0x0010 */ unsigned long LocaleId;
        /* 0x0014 */ long __PADDING__[1];
      } /* size: 0x0010 */ QueryDeviceText;
      struct
      {
        /* 0x0008 */ unsigned char InPath;
        /* 0x0009 */ unsigned char Reserved[3];
        /* 0x0004 */ long Padding_55;
        /* 0x0010 */ enum _DEVICE_USAGE_NOTIFICATION_TYPE Type;
        /* 0x0014 */ long __PADDING__[1];
      } /* size: 0x0010 */ UsageNotification;
      struct
      {
        /* 0x0008 */ enum _SYSTEM_POWER_STATE PowerState;
      } /* size: 0x0004 */ WaitWake;
      struct
      {
        /* 0x0008 */ struct _POWER_SEQUENCE* PowerSequence;
      } /* size: 0x0008 */ PowerSequence;
      struct
      {
        union
        {
          /* 0x0008 */ unsigned long SystemContext;
          /* 0x0008 */ struct _SYSTEM_POWER_STATE_CONTEXT SystemPowerStateContext;
        }; /* size: 0x0004 */
        /* 0x0004 */ long Padding_56;
        /* 0x0010 */ enum _POWER_STATE_TYPE Type;
        /* 0x000c */ long Padding_57;
        /* 0x0018 */ union _POWER_STATE State;
        /* 0x0014 */ long Padding_58;
        /* 0x0020 */ enum POWER_ACTION ShutdownType;
        /* 0x0024 */ long __PADDING__[1];
      } /* size: 0x0020 */ Power;
      struct
      {
        /* 0x0008 */ struct _CM_RESOURCE_LIST* AllocatedResources;
        /* 0x0010 */ struct _CM_RESOURCE_LIST* AllocatedResourcesTranslated;
      } /* size: 0x0010 */ StartDevice;
      struct
      {
        /* 0x0008 */ unsigned __int64 ProviderId;
        /* 0x0010 */ void* DataPath;
        /* 0x0018 */ unsigned long BufferSize;
        /* 0x0014 */ long Padding_59;
        /* 0x0020 */ void* Buffer;
      } /* size: 0x0020 */ WMI;
      struct
      {
        /* 0x0008 */ void* Argument1;
        /* 0x0010 */ void* Argument2;
        /* 0x0018 */ void* Argument3;
        /* 0x0020 */ void* Argument4;
      } /* size: 0x0020 */ Others;
    }; /* size: 0x0020 */
  } /* size: 0x0020 */ Parameters;
  /* 0x0028 */ struct _DEVICE_OBJECT* DeviceObject;
  /* 0x0030 */ struct _FILE_OBJECT* FileObject;
  /* 0x0038 */ void* CompletionRoutine /* function */;
  /* 0x0040 */ void* Context;
} IO_STACK_LOCATION, *PIO_STACK_LOCATION; /* size: 0x0048 */

typedef union _POP_FX_PERF_FLAGS
{
  union
  {
    /* 0x0000 */ long Value;
    struct /* bitfield */
    {
      /* 0x0000 */ unsigned long Progress : 3; /* bit position: 0 */
      /* 0x0000 */ unsigned long Reserved : 24; /* bit position: 3 */
      /* 0x0000 */ unsigned long Synchronicity : 2; /* bit position: 27 */
      /* 0x0000 */ unsigned long RequestPepCompleted : 1; /* bit position: 29 */
      /* 0x0000 */ unsigned long RequestSucceeded : 1; /* bit position: 30 */
      /* 0x0000 */ unsigned long NestedCallback : 1; /* bit position: 31 */
    }; /* bitfield */
  }; /* size: 0x0004 */
} POP_FX_PERF_FLAGS, *PPOP_FX_PERF_FLAGS; /* size: 0x0004 */

typedef struct _DISALLOWED_GUIDS
{
  /* 0x0000 */ unsigned short Count;
  /* 0x0002 */ char Padding_60[6];
  /* 0x0008 */ struct _GUID* Guids;
} DISALLOWED_GUIDS, *PDISALLOWED_GUIDS; /* size: 0x0010 */

typedef enum _MI_SYSTEM_VA_TYPE
{
  MiVaUnused = 0,
  MiVaSessionSpace = 1,
  MiVaProcessSpace = 2,
  MiVaBootLoaded = 3,
  MiVaPfnDatabase = 4,
  MiVaNonPagedPool = 5,
  MiVaPagedPool = 6,
  MiVaSpecialPoolPaged = 7,
  MiVaSystemCache = 8,
  MiVaSystemPtes = 9,
  MiVaHal = 10,
  MiVaSessionGlobalSpace = 11,
  MiVaDriverImages = 12,
  MiVaSystemPtesLarge = 13,
  MiVaKernelStacks = 14,
  MiVaSecureNonPagedPool = 15,
  MiVaMaximumType = 16,
} MI_SYSTEM_VA_TYPE, *PMI_SYSTEM_VA_TYPE;

typedef struct _KLOCK_ENTRY_LOCK_STATE
{
  union
  {
    struct /* bitfield */
    {
      /* 0x0000 */ unsigned __int64 CrossThreadReleasable : 1; /* bit position: 0 */
      /* 0x0000 */ unsigned __int64 Busy : 1; /* bit position: 1 */
      /* 0x0000 */ unsigned __int64 Reserved : 61; /* bit position: 2 */
      /* 0x0000 */ unsigned __int64 InTree : 1; /* bit position: 63 */
    }; /* bitfield */
    /* 0x0000 */ void* LockState;
  }; /* size: 0x0008 */
  union
  {
    /* 0x0008 */ void* SessionState;
    struct
    {
      /* 0x0008 */ unsigned long SessionId;
      /* 0x000c */ unsigned long SessionPad;
    }; /* size: 0x0008 */
  }; /* size: 0x0008 */
} KLOCK_ENTRY_LOCK_STATE, *PKLOCK_ENTRY_LOCK_STATE; /* size: 0x0010 */

typedef struct _KLOCK_ENTRY
{
  union
  {
    /* 0x0000 */ struct _RTL_BALANCED_NODE TreeNode;
    /* 0x0000 */ struct _SINGLE_LIST_ENTRY FreeListEntry;
  }; /* size: 0x0018 */
  union
  {
    /* 0x0018 */ unsigned long EntryFlags;
    struct
    {
      /* 0x0018 */ unsigned char EntryOffset;
      union
      {
        /* 0x0019 */ unsigned char ThreadLocalFlags;
        struct
        {
          struct /* bitfield */
          {
            /* 0x0019 */ unsigned char WaitingBit : 1; /* bit position: 0 */
            /* 0x0019 */ unsigned char Spare0 : 7; /* bit position: 1 */
          }; /* bitfield */
          union
          {
            /* 0x001a */ unsigned char AcquiredByte;
            struct
            {
              /* 0x001a */ unsigned char AcquiredBit : 1; /* bit position: 0 */
              union
              {
                /* 0x001b */ unsigned char CrossThreadFlags;
                struct /* bitfield */
                {
                  /* 0x001b */ unsigned char HeadNodeBit : 1; /* bit position: 0 */
                  /* 0x001b */ unsigned char IoPriorityBit : 1; /* bit position: 1 */
                  /* 0x001b */ unsigned char IoQoSWaiter : 1; /* bit position: 2 */
                  /* 0x001b */ unsigned char Spare1 : 5; /* bit position: 3 */
                }; /* bitfield */
              }; /* size: 0x0001 */
            }; /* size: 0x0002 */
          }; /* size: 0x0002 */
        }; /* size: 0x0003 */
      }; /* size: 0x0003 */
    }; /* size: 0x0004 */
    struct /* bitfield */
    {
      /* 0x0018 */ unsigned long StaticState : 8; /* bit position: 0 */
      /* 0x0018 */ unsigned long AllFlags : 24; /* bit position: 8 */
    }; /* bitfield */
  }; /* size: 0x0004 */
  /* 0x001c */ unsigned long SpareFlags;
  union
  {
    /* 0x0020 */ struct _KLOCK_ENTRY_LOCK_STATE LockState;
    /* 0x0020 */ void* volatile LockUnsafe;
    struct
    {
      /* 0x0020 */ volatile unsigned char CrossThreadReleasableAndBusyByte;
      /* 0x0021 */ unsigned char Reserved[6];
      /* 0x0027 */ volatile unsigned char InTreeByte;
      union
      {
        /* 0x0028 */ void* SessionState;
        struct
        {
          /* 0x0028 */ unsigned long SessionId;
          /* 0x002c */ unsigned long SessionPad;
        }; /* size: 0x0008 */
      }; /* size: 0x0008 */
    }; /* size: 0x0010 */
  }; /* size: 0x0010 */
  union
  {
    struct
    {
      /* 0x0030 */ struct _RTL_RB_TREE OwnerTree;
      /* 0x0040 */ struct _RTL_RB_TREE WaiterTree;
    }; /* size: 0x0020 */
    /* 0x0030 */ char CpuPriorityKey;
  }; /* size: 0x0020 */
  /* 0x0050 */ unsigned __int64 EntryLock;
  /* 0x0058 */ union _KLOCK_ENTRY_BOOST_BITMAP BoostBitmap;
  /* 0x005c */ unsigned long SparePad;
} KLOCK_ENTRY, *PKLOCK_ENTRY; /* size: 0x0060 */

typedef enum _CM_LOAD_FAILURE_TYPE
{
  _None = 0,
  _CmpCreateHive = 1,
  _HvpBuildMap = 3,
  _HvpBuildMapForLoaderHive = 4,
  _HvpInitMap = 5,
  _HvLoadHive = 6,
  _HvpMapHiveImage = 7,
  _HvpRecoverData = 8,
  _CmpValidateHiveSecurityDescriptors = 9,
  _HvpEnlistBinInMap = 10,
  _CmCheckRegistry = 11,
  _CmRegistryIO = 12,
  _CmCheckRegistry2 = 13,
  _CmpCheckKey = 14,
  _CmpCheckValueList = 15,
  _HvCheckHive = 16,
  _HvCheckBin = 17,
  _HvpGetLogEntryDirtyVector = 18,
  _HvpReadLogEntryHeader = 19,
  _HvpReadLogEntry = 20,
  _CmpMountPreloadedHives = 21,
  _CmpLoadHiveThread = 22,
  _CmpCheckLeaf = 23,
  _HvHiveStartFileBacked = 24,
  _HvStartHiveMemoryBacked = 25,
  _HvpEnlistFreeCells = 26,
  _HvpPerformLogFileRecovery = 27,
  _CmpInitHiveFromFile = 28,
  _CmpLoadKeyCommon = 29,
  _CmpLinkHiveToMaster = 30,
  _CmLoadKey = 31,
  _CmLoadAppKey = 32,
  _CmpResolveHiveLoadConflict = 33,
} CM_LOAD_FAILURE_TYPE, *PCM_LOAD_FAILURE_TYPE;

enum UoWActionType
{
  UoWAddThisKey = 0,
  UoWAddChildKey = 1,
  UoWDeleteThisKey = 2,
  UoWDeleteChildKey = 3,
  UoWSetValueNew = 4,
  UoWSetValueExisting = 5,
  UoWDeleteValue = 6,
  UoWSetKeyUserFlags = 7,
  UoWSetLastWriteTime = 8,
  UoWSetSecurityDescriptor = 9,
  UoWRenameSubKey = 10,
  UoWRenameOldSubKey = 11,
  UoWRenameNewSubKey = 12,
  UoWIsolation = 13,
  UoWRecreateKey = 14,
  UoWInvalid = 15,
};

typedef enum _SECURITY_OPERATION_CODE
{
  SetSecurityDescriptor = 0,
  QuerySecurityDescriptor = 1,
  DeleteSecurityDescriptor = 2,
  AssignSecurityDescriptor = 3,
} SECURITY_OPERATION_CODE, *PSECURITY_OPERATION_CODE;

typedef union _TIMELINE_BITMAP
{
  union
  {
    /* 0x0000 */ unsigned __int64 Value;
    struct
    {
      /* 0x0000 */ unsigned long EndTime;
      /* 0x0004 */ unsigned long Bitmap;
    }; /* size: 0x0008 */
  }; /* size: 0x0008 */
} TIMELINE_BITMAP, *PTIMELINE_BITMAP; /* size: 0x0008 */

typedef struct _THREAD_ENERGY_VALUES
{
  /* 0x0000 */ unsigned __int64 Cycles[2][4];
  /* 0x0040 */ unsigned __int64 AttributedCycles[2][4];
  /* 0x0080 */ unsigned __int64 WorkOnBehalfCycles[2][4];
  /* 0x00c0 */ union _TIMELINE_BITMAP CpuTimeline;
} THREAD_ENERGY_VALUES, *PTHREAD_ENERGY_VALUES; /* size: 0x00c8 */

enum HSTORAGE_TYPE
{
  Stable = 0,
  Volatile = 1,
  InvalidStorage = 2,
};

typedef struct _IO_SECURITY_CONTEXT
{
  /* 0x0000 */ struct _SECURITY_QUALITY_OF_SERVICE* SecurityQos;
  /* 0x0008 */ struct _ACCESS_STATE* AccessState;
  /* 0x0010 */ unsigned long DesiredAccess;
  /* 0x0014 */ unsigned long FullCreateOptions;
} IO_SECURITY_CONTEXT, *PIO_SECURITY_CONTEXT; /* size: 0x0018 */

typedef enum _CMP_FAILURE_INJECTION_POINT
{
  CmpFailurePointPoolAllocation = 0,
  CmpFailurePointViewMapping = 1,
  CmpFailurePointViewPinning = 2,
  CmpFailurePointResourceCharging = 3,
  CmpFailurePointFileWrite = 4,
  CmpFailurePointFileRead = 5,
  CmpFailurePointCacheFlush = 6,
  CmpFailurePointFlush = 7,
  CmpFailurePointFlushAndPurge = 8,
  CmpFailurePointForceLargeBin = 9,
  CmpFailurePointDontFixAlignment = 10,
  CmpFailurePointAllocateCell = 11,
  CmpFailurePointMarkDirty = 12,
  CmpFailurePointForceMultiLevelMap = 13,
  CmpFailurePointAllocateContiguousLogEntry = 14,
  CmpFailurePointAllocateKcb = 15,
  CmpFailurePointCreateKeyBody = 16,
  CmpFailurePointForceFreeKcb = 17,
  CmpFailurePointKcbLockUpgrade = 18,
  CmpFailurePointKcbLockUpgradeDelay = 19,
  CmpFailurePointKeyEnumResumeContextVerification = 20,
  CmpFailurePointKeyEnumForceRetry = 21,
  CmpFailurePointForceReorganization = 22,
  CmpFailurePointForceLazyCOWByPolicy = 23,
  CmpFailureInjectionPointCount = 24,
} CMP_FAILURE_INJECTION_POINT, *PCMP_FAILURE_INJECTION_POINT;

typedef struct _DMA_TRANSFER_INFO_V2
{
  /* 0x0000 */ unsigned long MapRegisterCount;
  /* 0x0004 */ unsigned long ScatterGatherElementCount;
  /* 0x0008 */ unsigned long ScatterGatherListSize;
  /* 0x000c */ unsigned long LogicalPageCount;
} DMA_TRANSFER_INFO_V2, *PDMA_TRANSFER_INFO_V2; /* size: 0x0010 */

typedef struct _HEAP_VS_SUBSEGMENT
{
  /* 0x0000 */ struct _LIST_ENTRY ListEntry;
  /* 0x0010 */ unsigned __int64 CommitBitmap;
  /* 0x0018 */ unsigned __int64 CommitLock;
  /* 0x0020 */ unsigned short Size;
  struct /* bitfield */
  {
    /* 0x0022 */ unsigned short Signature : 15; /* bit position: 0 */
    /* 0x0022 */ unsigned short FullCommit : 1; /* bit position: 15 */
  }; /* bitfield */
  /* 0x0024 */ long __PADDING__[1];
} HEAP_VS_SUBSEGMENT, *PHEAP_VS_SUBSEGMENT; /* size: 0x0028 */

typedef struct _XSAVE_FORMAT
{
  /* 0x0000 */ unsigned short ControlWord;
  /* 0x0002 */ unsigned short StatusWord;
  /* 0x0004 */ unsigned char TagWord;
  /* 0x0005 */ unsigned char Reserved1;
  /* 0x0006 */ unsigned short ErrorOpcode;
  /* 0x0008 */ unsigned long ErrorOffset;
  /* 0x000c */ unsigned short ErrorSelector;
  /* 0x000e */ unsigned short Reserved2;
  /* 0x0010 */ unsigned long DataOffset;
  /* 0x0014 */ unsigned short DataSelector;
  /* 0x0016 */ unsigned short Reserved3;
  /* 0x0018 */ unsigned long MxCsr;
  /* 0x001c */ unsigned long MxCsr_Mask;
  /* 0x0020 */ struct _M128A FloatRegisters[8];
  /* 0x00a0 */ struct _M128A XmmRegisters[16];
  /* 0x01a0 */ unsigned char Reserved4[96];
} XSAVE_FORMAT, *PXSAVE_FORMAT; /* size: 0x0200 */

typedef struct _CONTEXT
{
  /* 0x0000 */ unsigned __int64 P1Home;
  /* 0x0008 */ unsigned __int64 P2Home;
  /* 0x0010 */ unsigned __int64 P3Home;
  /* 0x0018 */ unsigned __int64 P4Home;
  /* 0x0020 */ unsigned __int64 P5Home;
  /* 0x0028 */ unsigned __int64 P6Home;
  /* 0x0030 */ unsigned long ContextFlags;
  /* 0x0034 */ unsigned long MxCsr;
  /* 0x0038 */ unsigned short SegCs;
  /* 0x003a */ unsigned short SegDs;
  /* 0x003c */ unsigned short SegEs;
  /* 0x003e */ unsigned short SegFs;
  /* 0x0040 */ unsigned short SegGs;
  /* 0x0042 */ unsigned short SegSs;
  /* 0x0044 */ unsigned long EFlags;
  /* 0x0048 */ unsigned __int64 Dr0;
  /* 0x0050 */ unsigned __int64 Dr1;
  /* 0x0058 */ unsigned __int64 Dr2;
  /* 0x0060 */ unsigned __int64 Dr3;
  /* 0x0068 */ unsigned __int64 Dr6;
  /* 0x0070 */ unsigned __int64 Dr7;
  /* 0x0078 */ unsigned __int64 Rax;
  /* 0x0080 */ unsigned __int64 Rcx;
  /* 0x0088 */ unsigned __int64 Rdx;
  /* 0x0090 */ unsigned __int64 Rbx;
  /* 0x0098 */ unsigned __int64 Rsp;
  /* 0x00a0 */ unsigned __int64 Rbp;
  /* 0x00a8 */ unsigned __int64 Rsi;
  /* 0x00b0 */ unsigned __int64 Rdi;
  /* 0x00b8 */ unsigned __int64 R8;
  /* 0x00c0 */ unsigned __int64 R9;
  /* 0x00c8 */ unsigned __int64 R10;
  /* 0x00d0 */ unsigned __int64 R11;
  /* 0x00d8 */ unsigned __int64 R12;
  /* 0x00e0 */ unsigned __int64 R13;
  /* 0x00e8 */ unsigned __int64 R14;
  /* 0x00f0 */ unsigned __int64 R15;
  /* 0x00f8 */ unsigned __int64 Rip;
  union
  {
    /* 0x0100 */ struct _XSAVE_FORMAT FltSave;
    struct
    {
      /* 0x0100 */ struct _M128A Header[2];
      /* 0x0120 */ struct _M128A Legacy[8];
      /* 0x01a0 */ struct _M128A Xmm0;
      /* 0x01b0 */ struct _M128A Xmm1;
      /* 0x01c0 */ struct _M128A Xmm2;
      /* 0x01d0 */ struct _M128A Xmm3;
      /* 0x01e0 */ struct _M128A Xmm4;
      /* 0x01f0 */ struct _M128A Xmm5;
      /* 0x0200 */ struct _M128A Xmm6;
      /* 0x0210 */ struct _M128A Xmm7;
      /* 0x0220 */ struct _M128A Xmm8;
      /* 0x0230 */ struct _M128A Xmm9;
      /* 0x0240 */ struct _M128A Xmm10;
      /* 0x0250 */ struct _M128A Xmm11;
      /* 0x0260 */ struct _M128A Xmm12;
      /* 0x0270 */ struct _M128A Xmm13;
      /* 0x0280 */ struct _M128A Xmm14;
      /* 0x0290 */ struct _M128A Xmm15;
    }; /* size: 0x01a0 */
  }; /* size: 0x0200 */
  /* 0x0300 */ struct _M128A VectorRegister[26];
  /* 0x04a0 */ unsigned __int64 VectorControl;
  /* 0x04a8 */ unsigned __int64 DebugControl;
  /* 0x04b0 */ unsigned __int64 LastBranchToRip;
  /* 0x04b8 */ unsigned __int64 LastBranchFromRip;
  /* 0x04c0 */ unsigned __int64 LastExceptionToRip;
  /* 0x04c8 */ unsigned __int64 LastExceptionFromRip;
} CONTEXT, *PCONTEXT; /* size: 0x04d0 */

typedef struct _ETW_HASH_BUCKET
{
  /* 0x0000 */ struct _LIST_ENTRY ListHead[3];
  /* 0x0030 */ struct _EX_PUSH_LOCK BucketLock;
} ETW_HASH_BUCKET, *PETW_HASH_BUCKET; /* size: 0x0038 */

typedef enum _KHETERO_CPU_POLICY
{
  KHeteroCpuPolicyAll = 0,
  KHeteroCpuPolicyLarge = 1,
  KHeteroCpuPolicyLargeOrIdle = 2,
  KHeteroCpuPolicySmall = 3,
  KHeteroCpuPolicySmallOrIdle = 4,
  KHeteroCpuPolicyDynamic = 5,
  KHeteroCpuPolicyStaticMax = 5,
  KHeteroCpuPolicyBiasedSmall = 6,
  KHeteroCpuPolicyBiasedLarge = 7,
  KHeteroCpuPolicyDefault = 8,
  KHeteroCpuPolicyMax = 9,
} KHETERO_CPU_POLICY, *PKHETERO_CPU_POLICY;

typedef enum _PNP_DEVNODE_STATE
{
  DeviceNodeUnspecified = 768,
  DeviceNodeUninitialized = 769,
  DeviceNodeInitialized = 770,
  DeviceNodeDriversAdded = 771,
  DeviceNodeResourcesAssigned = 772,
  DeviceNodeStartPending = 773,
  DeviceNodeStartCompletion = 774,
  DeviceNodeStartPostWork = 775,
  DeviceNodeStarted = 776,
  DeviceNodeQueryStopped = 777,
  DeviceNodeStopped = 778,
  DeviceNodeRestartCompletion = 779,
  DeviceNodeEnumeratePending = 780,
  DeviceNodeEnumerateCompletion = 781,
  DeviceNodeAwaitingQueuedDeletion = 782,
  DeviceNodeAwaitingQueuedRemoval = 783,
  DeviceNodeQueryRemoved = 784,
  DeviceNodeRemovePendingCloses = 785,
  DeviceNodeRemoved = 786,
  DeviceNodeDeletePendingCloses = 787,
  DeviceNodeDeleted = 788,
  MaxDeviceNodeState = 789,
} PNP_DEVNODE_STATE, *PPNP_DEVNODE_STATE;

typedef struct _LUID
{
  /* 0x0000 */ unsigned long LowPart;
  /* 0x0004 */ long HighPart;
} LUID, *PLUID; /* size: 0x0008 */

typedef struct _SECURITY_SUBJECT_CONTEXT
{
  /* 0x0000 */ void* ClientToken;
  /* 0x0008 */ enum _SECURITY_IMPERSONATION_LEVEL ImpersonationLevel;
  /* 0x000c */ long Padding_61;
  /* 0x0010 */ void* PrimaryToken;
  /* 0x0018 */ void* ProcessAuditId;
} SECURITY_SUBJECT_CONTEXT, *PSECURITY_SUBJECT_CONTEXT; /* size: 0x0020 */

typedef struct _LUID_AND_ATTRIBUTES
{
  /* 0x0000 */ struct _LUID Luid;
  /* 0x0008 */ unsigned long Attributes;
} LUID_AND_ATTRIBUTES, *PLUID_AND_ATTRIBUTES; /* size: 0x000c */

typedef struct _INITIAL_PRIVILEGE_SET
{
  /* 0x0000 */ unsigned long PrivilegeCount;
  /* 0x0004 */ unsigned long Control;
  /* 0x0008 */ struct _LUID_AND_ATTRIBUTES Privilege[3];
} INITIAL_PRIVILEGE_SET, *PINITIAL_PRIVILEGE_SET; /* size: 0x002c */

typedef struct _PRIVILEGE_SET
{
  /* 0x0000 */ unsigned long PrivilegeCount;
  /* 0x0004 */ unsigned long Control;
  /* 0x0008 */ struct _LUID_AND_ATTRIBUTES Privilege[1];
} PRIVILEGE_SET, *PPRIVILEGE_SET; /* size: 0x0014 */

typedef struct _UNICODE_STRING
{
  /* 0x0000 */ unsigned short Length;
  /* 0x0002 */ unsigned short MaximumLength;
  /* 0x0004 */ long Padding_62;
  /* 0x0008 */ wchar_t* Buffer;
} UNICODE_STRING, *PUNICODE_STRING; /* size: 0x0010 */

typedef struct _ACCESS_STATE
{
  /* 0x0000 */ struct _LUID OperationID;
  /* 0x0008 */ unsigned char SecurityEvaluated;
  /* 0x0009 */ unsigned char GenerateAudit;
  /* 0x000a */ unsigned char GenerateOnClose;
  /* 0x000b */ unsigned char PrivilegesAllocated;
  /* 0x000c */ unsigned long Flags;
  /* 0x0010 */ unsigned long RemainingDesiredAccess;
  /* 0x0014 */ unsigned long PreviouslyGrantedAccess;
  /* 0x0018 */ unsigned long OriginalDesiredAccess;
  /* 0x001c */ long Padding_63;
  /* 0x0020 */ struct _SECURITY_SUBJECT_CONTEXT SubjectSecurityContext;
  /* 0x0040 */ void* SecurityDescriptor;
  /* 0x0048 */ void* AuxData;
  union
  {
    union
    {
      /* 0x0050 */ struct _INITIAL_PRIVILEGE_SET InitialPrivilegeSet;
      /* 0x0050 */ struct _PRIVILEGE_SET PrivilegeSet;
    }; /* size: 0x002c */
  } /* size: 0x002c */ Privileges;
  /* 0x007c */ unsigned char AuditPrivileges;
  /* 0x007d */ char Padding_64[3];
  /* 0x0080 */ struct _UNICODE_STRING ObjectName;
  /* 0x0090 */ struct _UNICODE_STRING ObjectTypeName;
} ACCESS_STATE, *PACCESS_STATE; /* size: 0x00a0 */

typedef union _HEAP_LFH_SUBSEGMENT_DELAY_FREE
{
  union
  {
    struct /* bitfield */
    {
      /* 0x0000 */ unsigned __int64 DelayFree : 1; /* bit position: 0 */
      /* 0x0000 */ unsigned __int64 Count : 63; /* bit position: 1 */
    }; /* bitfield */
    /* 0x0000 */ void* AllBits;
  }; /* size: 0x0008 */
} HEAP_LFH_SUBSEGMENT_DELAY_FREE, *PHEAP_LFH_SUBSEGMENT_DELAY_FREE; /* size: 0x0008 */

struct _ETW_SOFT_RESTART_CONTEXT;

enum PROFILE_STATUS
{
  DOCK_NOTDOCKDEVICE = 0,
  DOCK_QUIESCENT = 1,
  DOCK_ARRIVING = 2,
  DOCK_DEPARTING = 3,
  DOCK_EJECTIRP_COMPLETED = 4,
};

typedef struct _PS_PROPERTY_SET
{
  /* 0x0000 */ struct _LIST_ENTRY ListHead;
  /* 0x0010 */ unsigned __int64 Lock;
} PS_PROPERTY_SET, *PPS_PROPERTY_SET; /* size: 0x0018 */

typedef enum _ARBITER_REQUEST_SOURCE
{
  ArbiterRequestUndefined = -1,
  ArbiterRequestLegacyReported = 0,
  ArbiterRequestHalReported = 1,
  ArbiterRequestLegacyAssigned = 2,
  ArbiterRequestPnpDetected = 3,
  ArbiterRequestPnpEnumerated = 4,
} ARBITER_REQUEST_SOURCE, *PARBITER_REQUEST_SOURCE;

typedef enum _POWER_REQUEST_TYPE
{
  PowerRequestDisplayRequired = 0,
  PowerRequestSystemRequired = 1,
  PowerRequestAwayModeRequired = 2,
  PowerRequestExecutionRequired = 3,
} POWER_REQUEST_TYPE, *PPOWER_REQUEST_TYPE;

typedef enum _POWER_REQUEST_TYPE_INTERNAL
{
  PowerRequestDisplayRequiredInternal = 0,
  PowerRequestSystemRequiredInternal = 1,
  PowerRequestAwayModeRequiredInternal = 2,
  PowerRequestExecutionRequiredInternal = 3,
  PowerRequestPerfBoostRequiredInternal = 4,
  PowerRequestActiveLockScreenInternal = 5,
  PowerRequestInternalInvalid = 6,
} POWER_REQUEST_TYPE_INTERNAL, *PPOWER_REQUEST_TYPE_INTERNAL;

typedef enum _DEVICE_RELATION_LEVEL
{
  RELATION_LEVEL_REMOVE_EJECT = 0,
  RELATION_LEVEL_DEPENDENT = 1,
  RELATION_LEVEL_DIRECT_DESCENDANT = 2,
} DEVICE_RELATION_LEVEL, *PDEVICE_RELATION_LEVEL;

typedef struct _DEVICE_OBJECT_LIST_ENTRY
{
  /* 0x0000 */ struct _DEVICE_OBJECT* DeviceObject;
  /* 0x0008 */ enum _DEVICE_RELATION_LEVEL RelationLevel;
  /* 0x000c */ unsigned long Ordinal;
  /* 0x0010 */ unsigned long Flags;
  /* 0x0014 */ long __PADDING__[1];
} DEVICE_OBJECT_LIST_ENTRY, *PDEVICE_OBJECT_LIST_ENTRY; /* size: 0x0018 */

typedef enum _PEP_ACPI_RESOURCE_TYPE
{
  PepAcpiMemory = 0,
  PepAcpiIoPort = 1,
  PepAcpiInterrupt = 2,
  PepAcpiGpioIo = 3,
  PepAcpiGpioInt = 4,
  PepAcpiSpbI2c = 5,
  PepAcpiSpbSpi = 6,
  PepAcpiSpbUart = 7,
  PepAcpiExtendedMemory = 8,
  PepAcpiExtendedIo = 9,
} PEP_ACPI_RESOURCE_TYPE, *PPEP_ACPI_RESOURCE_TYPE;

typedef enum _GPIO_PIN_CONFIG_TYPE
{
  PullDefault = 0,
  PullUp = 1,
  PullDown = 2,
  PullNone = 3,
} GPIO_PIN_CONFIG_TYPE, *PGPIO_PIN_CONFIG_TYPE;

typedef struct _GROUP_AFFINITY
{
  /* 0x0000 */ unsigned __int64 Mask;
  /* 0x0008 */ unsigned short Group;
  /* 0x000a */ unsigned short Reserved[3];
} GROUP_AFFINITY, *PGROUP_AFFINITY; /* size: 0x0010 */

typedef struct _RTL_BITMAP
{
  /* 0x0000 */ unsigned long SizeOfBitMap;
  /* 0x0004 */ long Padding_65;
  /* 0x0008 */ unsigned long* Buffer;
} RTL_BITMAP, *PRTL_BITMAP; /* size: 0x0010 */

typedef struct _ETW_REALTIME_CONSUMER
{
  /* 0x0000 */ struct _LIST_ENTRY Links;
  /* 0x0010 */ void* ProcessHandle;
  /* 0x0018 */ struct _EPROCESS* ProcessObject;
  /* 0x0020 */ void* NextNotDelivered;
  /* 0x0028 */ void* RealtimeConnectContext;
  /* 0x0030 */ struct _KEVENT* DisconnectEvent;
  /* 0x0038 */ struct _KEVENT* DataAvailableEvent;
  /* 0x0040 */ unsigned long* UserBufferCount;
  /* 0x0048 */ struct _SINGLE_LIST_ENTRY* UserBufferListHead;
  /* 0x0050 */ unsigned long BuffersLost;
  /* 0x0054 */ unsigned long EmptyBuffersCount;
  /* 0x0058 */ unsigned short LoggerId;
  union
  {
    /* 0x005a */ unsigned char Flags;
    struct /* bitfield */
    {
      /* 0x005a */ unsigned char ShutDownRequested : 1; /* bit position: 0 */
      /* 0x005a */ unsigned char NewBuffersLost : 1; /* bit position: 1 */
      /* 0x005a */ unsigned char Disconnected : 1; /* bit position: 2 */
      /* 0x005a */ unsigned char Notified : 1; /* bit position: 3 */
      /* 0x005a */ unsigned char Wow : 1; /* bit position: 4 */
    }; /* bitfield */
  }; /* size: 0x0001 */
  /* 0x005b */ char Padding_66[5];
  /* 0x0060 */ struct _RTL_BITMAP ReservedBufferSpaceBitMap;
  /* 0x0070 */ unsigned char* ReservedBufferSpace;
  /* 0x0078 */ unsigned long ReservedBufferSpaceSize;
  /* 0x007c */ unsigned long UserPagesAllocated;
  /* 0x0080 */ unsigned long UserPagesReused;
  /* 0x0084 */ long Padding_67;
  /* 0x0088 */ unsigned long* EventsLostCount;
  /* 0x0090 */ unsigned long* BuffersLostCount;
  /* 0x0098 */ struct _ETW_SILODRIVERSTATE* SiloState;
} ETW_REALTIME_CONSUMER, *PETW_REALTIME_CONSUMER; /* size: 0x00a0 */

typedef enum _GPIO_PIN_IORESTRICTION_TYPE
{
  IoRestrictionNone = 0,
  IoRestrictionInputOnly = 1,
  IoRestrictionOutputOnly = 2,
  IoRestrictionNoneAndPreserve = 3,
} GPIO_PIN_IORESTRICTION_TYPE, *PGPIO_PIN_IORESTRICTION_TYPE;

enum SYSTEM_POWER_CONDITION
{
  PoAc = 0,
  PoDc = 1,
  PoHot = 2,
  PoConditionMaximum = 3,
};

typedef struct _DBGKD_QUERY_MEMORY
{
  /* 0x0000 */ unsigned __int64 Address;
  /* 0x0008 */ unsigned __int64 Reserved;
  /* 0x0010 */ unsigned long AddressSpace;
  /* 0x0014 */ unsigned long Flags;
} DBGKD_QUERY_MEMORY, *PDBGKD_QUERY_MEMORY; /* size: 0x0018 */

typedef struct _ETW_BUFFER_CONTEXT
{
  union
  {
    struct
    {
      /* 0x0000 */ unsigned char ProcessorNumber;
      /* 0x0001 */ unsigned char Alignment;
    }; /* size: 0x0002 */
    /* 0x0000 */ unsigned short ProcessorIndex;
  }; /* size: 0x0002 */
  /* 0x0002 */ unsigned short LoggerId;
} ETW_BUFFER_CONTEXT, *PETW_BUFFER_CONTEXT; /* size: 0x0004 */

typedef enum _ETW_BUFFER_STATE
{
  EtwBufferStateFree = 0,
  EtwBufferStateGeneralLogging = 1,
  EtwBufferStateCSwitch = 2,
  EtwBufferStateFlush = 3,
  EtwBufferStatePendingCompression = 4,
  EtwBufferStateCompressed = 5,
  EtwBufferStatePlaceholder = 6,
  EtwBufferStateMaximum = 7,
} ETW_BUFFER_STATE, *PETW_BUFFER_STATE;

typedef struct _ETW_REF_CLOCK
{
  /* 0x0000 */ union _LARGE_INTEGER StartTime;
  /* 0x0008 */ union _LARGE_INTEGER StartPerfClock;
} ETW_REF_CLOCK, *PETW_REF_CLOCK; /* size: 0x0010 */

typedef struct _WMI_BUFFER_HEADER
{
  /* 0x0000 */ unsigned long BufferSize;
  /* 0x0004 */ unsigned long SavedOffset;
  /* 0x0008 */ volatile unsigned long CurrentOffset;
  /* 0x000c */ volatile long ReferenceCount;
  /* 0x0010 */ union _LARGE_INTEGER TimeStamp;
  /* 0x0018 */ __int64 SequenceNumber;
  union
  {
    struct /* bitfield */
    {
      /* 0x0020 */ unsigned __int64 ClockType : 3; /* bit position: 0 */
      /* 0x0020 */ unsigned __int64 Frequency : 61; /* bit position: 3 */
    }; /* bitfield */
    /* 0x0020 */ struct _SINGLE_LIST_ENTRY SlistEntry;
    /* 0x0020 */ struct _WMI_BUFFER_HEADER* NextBuffer;
  }; /* size: 0x0008 */
  /* 0x0028 */ struct _ETW_BUFFER_CONTEXT ClientContext;
  /* 0x002c */ enum _ETW_BUFFER_STATE State;
  /* 0x0030 */ unsigned long Offset;
  /* 0x0034 */ unsigned short BufferFlag;
  /* 0x0036 */ unsigned short BufferType;
  union
  {
    /* 0x0038 */ unsigned long Padding1[4];
    /* 0x0038 */ struct _ETW_REF_CLOCK ReferenceTime;
    /* 0x0038 */ struct _LIST_ENTRY GlobalEntry;
    struct
    {
      /* 0x0038 */ void* Pointer0;
      /* 0x0040 */ void* Pointer1;
    }; /* size: 0x0010 */
  }; /* size: 0x0010 */
} WMI_BUFFER_HEADER, *PWMI_BUFFER_HEADER; /* size: 0x0048 */

typedef enum _SERVERSILO_STATE
{
  SERVERSILO_INITING = 0,
  SERVERSILO_STARTED = 1,
  SERVERSILO_SHUTTING_DOWN = 2,
  SERVERSILO_TERMINATING = 3,
  SERVERSILO_TERMINATED = 4,
} SERVERSILO_STATE, *PSERVERSILO_STATE;

typedef enum _OPENCOUNT_REASON
{
  OpenCount_SkipLogging = 0,
  OpenCount_AsyncRead = 1,
  OpenCount_FlushCache = 2,
  OpenCount_GetDirtyPage = 3,
  OpenCount_GetFlushedVDL = 4,
  OpenCount_InitCachemap1 = 5,
  OpenCount_InitCachemap2 = 6,
  OpenCount_InitCachemap3 = 7,
  OpenCount_InitCachemap4 = 8,
  OpenCount_InitCachemap5 = 9,
  OpenCount_MdlWrite = 10,
  OpenCount_MdlWriteAbort = 11,
  OpenCount_NotifyMappedWrite = 12,
  OpenCount_NotifyMappedWriteCompCallback = 13,
  OpenCount_PurgeCache = 14,
  OpenCount_PurgeCacheActiveViews = 15,
  OpenCount_ReadAhead = 16,
  OpenCount_SetFileSize = 17,
  OpenCount_SetFileSizeSection = 18,
  OpenCount_UninitCachemapReadAhead = 19,
  OpenCount_UninitCachemapReg = 20,
  OpenCount_UnmapInactiveViews = 21,
  OpenCount_UnmapInactiveViews1 = 22,
  OpenCount_UnmapInactiveViews2 = 23,
  OpenCount_UnmapInactiveViews3 = 24,
  OpenCount_WriteBehind = 25,
  OpenCount_WriteBehindComplete = 26,
  OpenCount_WriteBehindFailAcquire = 27,
} OPENCOUNT_REASON, *POPENCOUNT_REASON;

typedef union _POP_FX_DEVICE_STATUS
{
  union
  {
    /* 0x0000 */ long Value;
    struct /* bitfield */
    {
      /* 0x0000 */ unsigned long SystemTransition : 1; /* bit position: 0 */
      /* 0x0000 */ unsigned long PepD0Notify : 1; /* bit position: 1 */
      /* 0x0000 */ unsigned long IdleTimerOn : 1; /* bit position: 2 */
      /* 0x0000 */ unsigned long IgnoreIdleTimeout : 1; /* bit position: 3 */
      /* 0x0000 */ unsigned long IrpInUse : 1; /* bit position: 4 */
      /* 0x0000 */ unsigned long IrpPending : 1; /* bit position: 5 */
      /* 0x0000 */ unsigned long DPNRDeviceNotified : 1; /* bit position: 6 */
      /* 0x0000 */ unsigned long DPNRReceivedFromPep : 1; /* bit position: 7 */
      /* 0x0000 */ unsigned long IrpFirstPendingIndex : 1; /* bit position: 8 */
      /* 0x0000 */ unsigned long IrpLastPendingIndex : 1; /* bit position: 9 */
      /* 0x0000 */ unsigned long SIrpBlocked : 1; /* bit position: 10 */
      /* 0x0000 */ unsigned long BlockFastResume : 1; /* bit position: 11 */
      /* 0x0000 */ unsigned long DirectedPoweredDown : 1; /* bit position: 12 */
      /* 0x0000 */ unsigned long DirectedTransitionInProgress : 1; /* bit position: 13 */
      /* 0x0000 */ unsigned long Reserved : 18; /* bit position: 14 */
    }; /* bitfield */
  }; /* size: 0x0004 */
} POP_FX_DEVICE_STATUS, *PPOP_FX_DEVICE_STATUS; /* size: 0x0004 */

enum RTLP_CSPARSE_BITMAP_STATE
{
  CommitBitmapInvalid = 0,
  UserBitmapInvalid = 1,
  UserBitmapValid = 2,
};

typedef enum _RTLP_HP_ADDRESS_SPACE_TYPE
{
  HeapAddressUser = 0,
  HeapAddressKernel = 1,
  HeapAddressSession = 2,
  HeapAddressSecureKernel = 3,
  HeapAddressTypeMax = 4,
} RTLP_HP_ADDRESS_SPACE_TYPE, *PRTLP_HP_ADDRESS_SPACE_TYPE;

typedef struct _KEVENT
{
  /* 0x0000 */ struct _DISPATCHER_HEADER Header;
} KEVENT, *PKEVENT, *PRKEVENT; /* size: 0x0018 */

typedef struct _PO_DEVICE_NOTIFY
{
  /* 0x0000 */ struct _LIST_ENTRY Link;
  /* 0x0010 */ struct _LIST_ENTRY PowerChildren;
  /* 0x0020 */ struct _LIST_ENTRY PowerParents;
  /* 0x0030 */ struct _DEVICE_OBJECT* TargetDevice;
  /* 0x0038 */ unsigned char OrderLevel;
  /* 0x0039 */ char Padding_68[7];
  /* 0x0040 */ struct _DEVICE_OBJECT* DeviceObject;
  /* 0x0048 */ wchar_t* DeviceName;
  /* 0x0050 */ wchar_t* DriverName;
  /* 0x0058 */ unsigned long ChildCount;
  /* 0x005c */ unsigned long ActiveChild;
  /* 0x0060 */ unsigned long ParentCount;
  /* 0x0064 */ unsigned long ActiveParent;
} PO_DEVICE_NOTIFY, *PPO_DEVICE_NOTIFY; /* size: 0x0068 */

typedef struct _PO_IRP_MANAGER
{
  /* 0x0000 */ struct _PO_IRP_QUEUE DeviceIrpQueue;
  /* 0x0010 */ struct _PO_IRP_QUEUE SystemIrpQueue;
} PO_IRP_MANAGER, *PPO_IRP_MANAGER; /* size: 0x0020 */

typedef struct _PO_DIRECTED_DRIPS_STATE
{
  /* 0x0000 */ struct _LIST_ENTRY QueueLink;
  /* 0x0010 */ struct _LIST_ENTRY VisitedQueueLink;
  /* 0x0020 */ volatile unsigned long Flags;
  /* 0x0024 */ unsigned long CachedFlags;
  /* 0x0028 */ unsigned long DeviceUsageCount;
  /* 0x002c */ long Padding_69;
  /* 0x0030 */ void* Diagnostic;
} PO_DIRECTED_DRIPS_STATE, *PPO_DIRECTED_DRIPS_STATE; /* size: 0x0038 */

typedef struct _DEVICE_NODE
{
  /* 0x0000 */ struct _DEVICE_NODE* Sibling;
  /* 0x0008 */ struct _DEVICE_NODE* Child;
  /* 0x0010 */ struct _DEVICE_NODE* Parent;
  /* 0x0018 */ struct _DEVICE_NODE* LastChild;
  /* 0x0020 */ struct _DEVICE_OBJECT* PhysicalDeviceObject;
  /* 0x0028 */ struct _UNICODE_STRING InstancePath;
  /* 0x0038 */ struct _UNICODE_STRING ServiceName;
  /* 0x0048 */ struct _IRP* PendingIrp;
  /* 0x0050 */ struct _POP_FX_DEVICE* FxDevice;
  /* 0x0058 */ volatile long FxDeviceLock;
  /* 0x005c */ long Padding_70;
  /* 0x0060 */ struct _KEVENT FxRemoveEvent;
  /* 0x0078 */ volatile long FxActivationCount;
  /* 0x007c */ volatile long FxSleepCount;
  /* 0x0080 */ struct _UNICODE_STRING UniqueId;
  /* 0x0090 */ struct _POP_FX_PLUGIN* Plugin;
  /* 0x0098 */ unsigned long Level;
  /* 0x009c */ union _POWER_STATE CurrentPowerState;
  /* 0x00a0 */ struct _PO_DEVICE_NOTIFY Notify;
  /* 0x0108 */ struct _PO_IRP_MANAGER PoIrpManager;
  /* 0x0128 */ volatile long PowerFlags;
  /* 0x012c */ enum _PNP_DEVNODE_STATE State;
  /* 0x0130 */ enum _PNP_DEVNODE_STATE PreviousState;
  /* 0x0134 */ enum _PNP_DEVNODE_STATE StateHistory[20];
  /* 0x0184 */ unsigned long StateHistoryEntry;
  /* 0x0188 */ long CompletionStatus;
  /* 0x018c */ unsigned long Flags;
  /* 0x0190 */ unsigned long UserFlags;
  /* 0x0194 */ unsigned long Problem;
  /* 0x0198 */ long ProblemStatus;
  /* 0x019c */ long Padding_71;
  /* 0x01a0 */ struct _CM_RESOURCE_LIST* ResourceList;
  /* 0x01a8 */ struct _CM_RESOURCE_LIST* ResourceListTranslated;
  /* 0x01b0 */ struct _DEVICE_OBJECT* DuplicatePDO;
  /* 0x01b8 */ struct _IO_RESOURCE_REQUIREMENTS_LIST* ResourceRequirements;
  /* 0x01c0 */ enum _INTERFACE_TYPE InterfaceType;
  /* 0x01c4 */ unsigned long BusNumber;
  /* 0x01c8 */ enum _INTERFACE_TYPE ChildInterfaceType;
  /* 0x01cc */ unsigned long ChildBusNumber;
  /* 0x01d0 */ unsigned short ChildBusTypeIndex;
  /* 0x01d2 */ unsigned char RemovalPolicy;
  /* 0x01d3 */ unsigned char HardwareRemovalPolicy;
  /* 0x01d4 */ long Padding_72;
  /* 0x01d8 */ struct _LIST_ENTRY TargetDeviceNotify;
  /* 0x01e8 */ struct _LIST_ENTRY DeviceArbiterList;
  /* 0x01f8 */ struct _LIST_ENTRY DeviceTranslatorList;
  /* 0x0208 */ unsigned short NoTranslatorMask;
  /* 0x020a */ unsigned short QueryTranslatorMask;
  /* 0x020c */ unsigned short NoArbiterMask;
  /* 0x020e */ unsigned short QueryArbiterMask;
  union
  {
    union
    {
      /* 0x0210 */ struct _DEVICE_NODE* LegacyDeviceNode;
      /* 0x0210 */ struct _DEVICE_RELATIONS* PendingDeviceRelations;
      /* 0x0210 */ void* Information;
    }; /* size: 0x0008 */
  } /* size: 0x0008 */ OverUsed1;
  union
  {
    /* 0x0218 */ struct _DEVICE_NODE* NextResourceDeviceNode;
  } /* size: 0x0008 */ OverUsed2;
  /* 0x0220 */ struct _CM_RESOURCE_LIST* BootResources;
  /* 0x0228 */ struct _CM_RESOURCE_LIST* BootResourcesTranslated;
  /* 0x0230 */ unsigned long CapabilityFlags;
  /* 0x0234 */ long Padding_73;
  struct
  {
    /* 0x0238 */ enum PROFILE_STATUS DockStatus;
    /* 0x0004 */ long Padding_74;
    /* 0x0240 */ struct _LIST_ENTRY ListEntry;
    /* 0x0250 */ wchar_t* SerialNumber;
  } /* size: 0x0020 */ DockInfo;
  /* 0x0258 */ unsigned long DisableableDepends;
  /* 0x025c */ long Padding_75;
  /* 0x0260 */ struct _LIST_ENTRY PendedSetInterfaceState;
  /* 0x0270 */ struct _LIST_ENTRY LegacyBusListEntry;
  /* 0x0280 */ unsigned long DriverUnloadRetryCount;
  /* 0x0284 */ long Padding_76;
  /* 0x0288 */ struct _DEVICE_NODE* PreviousParent;
  /* 0x0290 */ long DeletedChildren;
  /* 0x0294 */ unsigned long NumaNodeIndex;
  /* 0x0298 */ struct _GUID ContainerID;
  /* 0x02a8 */ unsigned char OverrideFlags;
  /* 0x02a9 */ char Padding_77[3];
  /* 0x02ac */ unsigned long DeviceIdsHash;
  /* 0x02b0 */ unsigned char RequiresUnloadedDriver;
  /* 0x02b1 */ char Padding_78[7];
  /* 0x02b8 */ struct _PENDING_RELATIONS_LIST_ENTRY* PendingEjectRelations;
  /* 0x02c0 */ unsigned long StateFlags;
  /* 0x02c4 */ long Padding_79;
  /* 0x02c8 */ struct _PNP_REBALANCE_TRACE_CONTEXT* RebalanceContext;
  /* 0x02d0 */ struct _DEVICE_NODE_IOMMU_EXTENSION* IommuExtension;
  /* 0x02d8 */ struct _PO_DIRECTED_DRIPS_STATE DirectedDripsState;
} DEVICE_NODE, *PDEVICE_NODE; /* size: 0x0310 */

typedef enum _RTLP_HP_LOCK_TYPE
{
  HeapLockPaged = 0,
  HeapLockNonPaged = 1,
  HeapLockTypeMax = 2,
} RTLP_HP_LOCK_TYPE, *PRTLP_HP_LOCK_TYPE;

typedef enum _HEAP_LFH_LOCKMODE
{
  HeapLockNotHeld = 0,
  HeapLockShared = 1,
  HeapLockExclusive = 2,
} HEAP_LFH_LOCKMODE, *PHEAP_LFH_LOCKMODE;

typedef struct _DBGKD_GET_VERSION32
{
  /* 0x0000 */ unsigned short MajorVersion;
  /* 0x0002 */ unsigned short MinorVersion;
  /* 0x0004 */ unsigned short ProtocolVersion;
  /* 0x0006 */ unsigned short Flags;
  /* 0x0008 */ unsigned long KernBase;
  /* 0x000c */ unsigned long PsLoadedModuleList;
  /* 0x0010 */ unsigned short MachineType;
  /* 0x0012 */ unsigned short ThCallbackStack;
  /* 0x0014 */ unsigned short NextCallback;
  /* 0x0016 */ unsigned short FramePointer;
  /* 0x0018 */ unsigned long KiCallUserMode;
  /* 0x001c */ unsigned long KeUserCallbackDispatcher;
  /* 0x0020 */ unsigned long BreakpointWithStatus;
  /* 0x0024 */ unsigned long DebuggerDataList;
} DBGKD_GET_VERSION32, *PDBGKD_GET_VERSION32; /* size: 0x0028 */

typedef enum _TOKEN_TYPE
{
  TokenPrimary = 1,
  TokenImpersonation = 2,
} TOKEN_TYPE, *PTOKEN_TYPE;

typedef struct _TOKEN_MANDATORY_POLICY
{
  /* 0x0000 */ unsigned long Policy;
} TOKEN_MANDATORY_POLICY, *PTOKEN_MANDATORY_POLICY; /* size: 0x0004 */

typedef struct _TOKEN_ACCESS_INFORMATION
{
  /* 0x0000 */ struct _SID_AND_ATTRIBUTES_HASH* SidHash;
  /* 0x0008 */ struct _SID_AND_ATTRIBUTES_HASH* RestrictedSidHash;
  /* 0x0010 */ struct _TOKEN_PRIVILEGES* Privileges;
  /* 0x0018 */ struct _LUID AuthenticationId;
  /* 0x0020 */ enum _TOKEN_TYPE TokenType;
  /* 0x0024 */ enum _SECURITY_IMPERSONATION_LEVEL ImpersonationLevel;
  /* 0x0028 */ struct _TOKEN_MANDATORY_POLICY MandatoryPolicy;
  /* 0x002c */ unsigned long Flags;
  /* 0x0030 */ unsigned long AppContainerNumber;
  /* 0x0034 */ long Padding_80;
  /* 0x0038 */ void* PackageSid;
  /* 0x0040 */ struct _SID_AND_ATTRIBUTES_HASH* CapabilitiesHash;
  /* 0x0048 */ void* TrustLevelSid;
  /* 0x0050 */ void* SecurityAttributes;
} TOKEN_ACCESS_INFORMATION, *PTOKEN_ACCESS_INFORMATION; /* size: 0x0058 */

typedef enum _HEAP_SEG_RANGE_TYPE
{
  HeapSegRangeUser = 0,
  HeapSegRangeInternal = 1,
  HeapSegRangeLFH = 2,
  HeapSegRangeVS = 3,
  HeapSegRangeTypeMax = 3,
} HEAP_SEG_RANGE_TYPE, *PHEAP_SEG_RANGE_TYPE;

typedef enum _RTLP_HP_ALLOCATOR
{
  RtlpHpSegmentSm = 0,
  RtlpHpSegmentLg = 1,
  RtlpHpSegmentTypes = 2,
  RtlpHpHugeAllocator = 2,
  RtlpHpAllocatorMax = 3,
} RTLP_HP_ALLOCATOR, *PRTLP_HP_ALLOCATOR;

typedef struct _KMUTANT
{
  /* 0x0000 */ struct _DISPATCHER_HEADER Header;
  /* 0x0018 */ struct _LIST_ENTRY MutantListEntry;
  /* 0x0028 */ struct _KTHREAD* OwnerThread;
  union
  {
    /* 0x0030 */ unsigned char MutantFlags;
    struct /* bitfield */
    {
      /* 0x0030 */ unsigned char Abandoned : 1; /* bit position: 0 */
      /* 0x0030 */ unsigned char Spare1 : 7; /* bit position: 1 */
    }; /* bitfield */
    struct /* bitfield */
    {
      /* 0x0030 */ unsigned char Abandoned2 : 1; /* bit position: 0 */
      /* 0x0030 */ unsigned char AbEnabled : 1; /* bit position: 1 */
      /* 0x0030 */ unsigned char Spare2 : 6; /* bit position: 2 */
    }; /* bitfield */
  }; /* size: 0x0001 */
  /* 0x0031 */ unsigned char ApcDisable;
  /* 0x0032 */ char __PADDING__[6];
} KMUTANT, *PKMUTANT; /* size: 0x0038 */

typedef enum _HEAP_FAILURE_TYPE
{
  heap_failure_internal = 0,
  heap_failure_unknown = 1,
  heap_failure_generic = 2,
  heap_failure_entry_corruption = 3,
  heap_failure_multiple_entries_corruption = 4,
  heap_failure_virtual_block_corruption = 5,
  heap_failure_buffer_overrun = 6,
  heap_failure_buffer_underrun = 7,
  heap_failure_block_not_busy = 8,
  heap_failure_invalid_argument = 9,
  heap_failure_invalid_allocation_type = 10,
  heap_failure_usage_after_free = 11,
  heap_failure_cross_heap_operation = 12,
  heap_failure_freelists_corruption = 13,
  heap_failure_listentry_corruption = 14,
  heap_failure_lfh_bitmap_mismatch = 15,
  heap_failure_segment_lfh_bitmap_corruption = 16,
  heap_failure_segment_lfh_double_free = 17,
  heap_failure_vs_subsegment_corruption = 18,
  heap_failure_null_heap = 19,
  heap_failure_allocation_limit = 20,
  heap_failure_commit_limit = 21,
  heap_failure_invalid_va_mgr_query = 22,
} HEAP_FAILURE_TYPE, *PHEAP_FAILURE_TYPE;

typedef enum _BLOB_ID
{
  BLOB_TYPE_UNKNOWN = 0,
  BLOB_TYPE_CONNECTION_INFO = 1,
  BLOB_TYPE_MESSAGE = 2,
  BLOB_TYPE_SECURITY_CONTEXT = 3,
  BLOB_TYPE_SECTION = 4,
  BLOB_TYPE_REGION = 5,
  BLOB_TYPE_VIEW = 6,
  BLOB_TYPE_RESERVE = 7,
  BLOB_TYPE_DIRECT_TRANSFER = 8,
  BLOB_TYPE_HANDLE_DATA = 9,
  BLOB_TYPE_MAX_ID = 10,
} BLOB_ID, *PBLOB_ID;

typedef enum _KWAIT_REASON
{
  Executive = 0,
  FreePage = 1,
  PageIn = 2,
  PoolAllocation = 3,
  DelayExecution = 4,
  Suspended = 5,
  UserRequest = 6,
  WrExecutive = 7,
  WrFreePage = 8,
  WrPageIn = 9,
  WrPoolAllocation = 10,
  WrDelayExecution = 11,
  WrSuspended = 12,
  WrUserRequest = 13,
  WrSpare0 = 14,
  WrQueue = 15,
  WrLpcReceive = 16,
  WrLpcReply = 17,
  WrVirtualMemory = 18,
  WrPageOut = 19,
  WrRendezvous = 20,
  WrKeyedEvent = 21,
  WrTerminated = 22,
  WrProcessInSwap = 23,
  WrCpuRateControl = 24,
  WrCalloutStack = 25,
  WrKernel = 26,
  WrResource = 27,
  WrPushLock = 28,
  WrMutex = 29,
  WrQuantumEnd = 30,
  WrDispatchInt = 31,
  WrPreempted = 32,
  WrYieldExecution = 33,
  WrFastMutex = 34,
  WrGuardedMutex = 35,
  WrRundown = 36,
  WrAlertByThreadId = 37,
  WrDeferredPreempt = 38,
  WrPhysicalFault = 39,
  MaximumWaitReason = 40,
} KWAIT_REASON, *PKWAIT_REASON;

typedef enum _LOCK_OPERATION
{
  IoReadAccess = 0,
  IoWriteAccess = 1,
  IoModifyAccess = 2,
} LOCK_OPERATION, *PLOCK_OPERATION;

typedef enum _IOP_PRIORITY_HINT
{
  IopIoPriorityNotSet = 0,
  IopIoPriorityVeryLow = 1,
  IopIoPriorityLow = 2,
  IopIoPriorityNormal = 3,
  IopIoPriorityHigh = 4,
  IopIoPriorityCritical = 5,
  MaxIopIoPriorityTypes = 6,
} IOP_PRIORITY_HINT, *PIOP_PRIORITY_HINT;

typedef enum _TRANSFER_TYPE
{
  ReadTransfer = 0,
  WriteTransfer = 1,
  OtherTransfer = 2,
} TRANSFER_TYPE, *PTRANSFER_TYPE;

typedef enum _CREATE_FILE_TYPE
{
  CreateFileTypeNone = 0,
  CreateFileTypeNamedPipe = 1,
  CreateFileTypeMailslot = 2,
} CREATE_FILE_TYPE, *PCREATE_FILE_TYPE;

typedef struct _PNP_ASSIGN_RESOURCES_CONTEXT
{
  /* 0x0000 */ unsigned long IncludeFailedDevices;
  /* 0x0004 */ unsigned long DeviceCount;
  /* 0x0008 */ struct _DEVICE_OBJECT* DeviceList[1];
} PNP_ASSIGN_RESOURCES_CONTEXT, *PPNP_ASSIGN_RESOURCES_CONTEXT; /* size: 0x0010 */

typedef enum _ETW_RT_EVENT_LOSS
{
  EtwRtEventNoLoss = 0,
  EtwRtEventLost = 1,
  EtwRtBufferLost = 2,
  EtwRtBackupLost = 3,
  EtwRtEventLossMax = 4,
} ETW_RT_EVENT_LOSS, *PETW_RT_EVENT_LOSS;

enum ETW_COMPRESSION_RESUMPTION_MODE
{
  EtwCompressionModeRestart = 0,
  EtwCompressionModeNoDisable = 1,
  EtwCompressionModeNoRestart = 2,
};

typedef struct _KSEMAPHORE
{
  /* 0x0000 */ struct _DISPATCHER_HEADER Header;
  /* 0x0018 */ long Limit;
  /* 0x001c */ long __PADDING__[1];
} KSEMAPHORE, *PKSEMAPHORE; /* size: 0x0020 */

typedef struct _POP_FX_WORK_POOL_ITEM
{
  /* 0x0000 */ struct _POP_FX_WORK_POOL* WorkPool;
  /* 0x0008 */ struct _WORK_QUEUE_ITEM WorkItem;
} POP_FX_WORK_POOL_ITEM, *PPOP_FX_WORK_POOL_ITEM; /* size: 0x0028 */

typedef struct _POP_FX_WORK_POOL
{
  /* 0x0000 */ struct _POP_FX_PLUGIN* Plugin;
  /* 0x0008 */ unsigned __int64 EmergencyWorkQueueLock;
  /* 0x0010 */ struct _LIST_ENTRY EmergencyWorkQueue;
  /* 0x0020 */ struct _KSEMAPHORE WorkPoolQueues[2];
  /* 0x0060 */ volatile long WorkItemStatus;
  /* 0x0064 */ long Padding_81;
  /* 0x0068 */ struct _POP_FX_WORK_POOL_ITEM WorkItems[4];
  /* 0x0108 */ struct _KTHREAD* EmergencyWorkerThread;
  /* 0x0110 */ struct _KTHREAD* DynamicWorkerThreads[4];
} POP_FX_WORK_POOL, *PPOP_FX_WORK_POOL; /* size: 0x0130 */

typedef struct _KTHREAD_COUNTERS
{
  /* 0x0000 */ unsigned __int64 WaitReasonBitMap;
  /* 0x0008 */ struct _THREAD_PERFORMANCE_DATA* UserData;
  /* 0x0010 */ unsigned long Flags;
  /* 0x0014 */ unsigned long ContextSwitches;
  /* 0x0018 */ unsigned __int64 CycleTimeBias;
  /* 0x0020 */ unsigned __int64 HardwareCounters;
  /* 0x0028 */ struct _COUNTER_READING HwCounter[16];
} KTHREAD_COUNTERS, *PKTHREAD_COUNTERS; /* size: 0x01a8 */

typedef enum _KPROFILE_SOURCE
{
  ProfileTime = 0,
  ProfileAlignmentFixup = 1,
  ProfileTotalIssues = 2,
  ProfilePipelineDry = 3,
  ProfileLoadInstructions = 4,
  ProfilePipelineFrozen = 5,
  ProfileBranchInstructions = 6,
  ProfileTotalNonissues = 7,
  ProfileDcacheMisses = 8,
  ProfileIcacheMisses = 9,
  ProfileCacheMisses = 10,
  ProfileBranchMispredictions = 11,
  ProfileStoreInstructions = 12,
  ProfileFpInstructions = 13,
  ProfileIntegerInstructions = 14,
  Profile2Issue = 15,
  Profile3Issue = 16,
  Profile4Issue = 17,
  ProfileSpecialInstructions = 18,
  ProfileTotalCycles = 19,
  ProfileIcacheIssues = 20,
  ProfileDcacheAccesses = 21,
  ProfileMemoryBarrierCycles = 22,
  ProfileLoadLinkedIssues = 23,
  ProfileMaximum = 24,
} KPROFILE_SOURCE, *PKPROFILE_SOURCE;

typedef struct _MI_PROTOTYPE_PTES_NODE
{
  /* 0x0000 */ struct _RTL_BALANCED_NODE Node;
  union
  {
    union
    {
      struct
      {
        struct /* bitfield */
        {
          /* 0x0018 */ unsigned __int64 AllocationType : 3; /* bit position: 0 */
          /* 0x0018 */ unsigned __int64 Inserted : 1; /* bit position: 3 */
        }; /* bitfield */
      } /* size: 0x0008 */ e1;
      struct
      {
        /* 0x0018 */ unsigned __int64 PrototypePtesFlags;
      } /* size: 0x0008 */ e2;
    }; /* size: 0x0008 */
  } /* size: 0x0008 */ u1;
} MI_PROTOTYPE_PTES_NODE, *PMI_PROTOTYPE_PTES_NODE; /* size: 0x0020 */

typedef struct _MI_PER_SESSION_PROTOS
{
  union
  {
    /* 0x0000 */ struct _RTL_BALANCED_NODE SessionProtoNode;
    /* 0x0000 */ struct _SINGLE_LIST_ENTRY FreeList;
    /* 0x0000 */ void* DriverAddress;
  }; /* size: 0x0018 */
  /* 0x0018 */ struct _MI_PROTOTYPE_PTES_NODE ProtosNode;
  /* 0x0038 */ unsigned __int64 NumberOfPtes;
  union
  {
    /* 0x0040 */ unsigned long SessionId;
    /* 0x0040 */ struct _SUBSECTION* Subsection;
  }; /* size: 0x0008 */
  /* 0x0048 */ struct _MMPTE* SubsectionBase;
  union
  {
    union
    {
      /* 0x0050 */ unsigned long ReferenceCount;
      /* 0x0050 */ unsigned long NumberOfPtesToFree;
    }; /* size: 0x0004 */
  } /* size: 0x0004 */ u2;
  /* 0x0054 */ long __PADDING__[1];
} MI_PER_SESSION_PROTOS, *PMI_PER_SESSION_PROTOS; /* size: 0x0058 */

typedef enum _WNF_STATE_NAME_LIFETIME
{
  WnfWellKnownStateName = 0,
  WnfPermanentStateName = 1,
  WnfPersistentStateName = 2,
  WnfTemporaryStateName = 3,
} WNF_STATE_NAME_LIFETIME, *PWNF_STATE_NAME_LIFETIME;

typedef enum _WNF_DATA_SCOPE
{
  WnfDataScopeSystem = 0,
  WnfDataScopeSession = 1,
  WnfDataScopeUser = 2,
  WnfDataScopeProcess = 3,
  WnfDataScopeMachine = 4,
  WnfDataScopePhysicalMachine = 5,
} WNF_DATA_SCOPE, *PWNF_DATA_SCOPE;

typedef struct _X86_KTRAP_FRAME
{
  /* 0x0000 */ unsigned long DbgEbp;
  /* 0x0004 */ unsigned long DbgEip;
  /* 0x0008 */ unsigned long DbgArgMark;
  /* 0x000c */ unsigned long DbgArgPointer;
  /* 0x0010 */ unsigned long TempSegCs;
  /* 0x0014 */ unsigned long TempEsp;
  /* 0x0018 */ unsigned long Dr0;
  /* 0x001c */ unsigned long Dr1;
  /* 0x0020 */ unsigned long Dr2;
  /* 0x0024 */ unsigned long Dr3;
  /* 0x0028 */ unsigned long Dr6;
  /* 0x002c */ unsigned long Dr7;
  /* 0x0030 */ unsigned long SegGs;
  /* 0x0034 */ unsigned long SegEs;
  /* 0x0038 */ unsigned long SegDs;
  /* 0x003c */ unsigned long Edx;
  /* 0x0040 */ unsigned long Ecx;
  /* 0x0044 */ unsigned long Eax;
  /* 0x0048 */ unsigned char PreviousPreviousMode;
  /* 0x0049 */ unsigned char EntropyQueueDpc;
  /* 0x004a */ unsigned char Reserved[2];
  /* 0x004c */ unsigned long ExceptionList;
  /* 0x0050 */ unsigned long SegFs;
  /* 0x0054 */ unsigned long Edi;
  /* 0x0058 */ unsigned long Esi;
  /* 0x005c */ unsigned long Ebx;
  /* 0x0060 */ unsigned long Ebp;
  /* 0x0064 */ unsigned long ErrCode;
  /* 0x0068 */ unsigned long Eip;
  /* 0x006c */ unsigned long SegCs;
  /* 0x0070 */ unsigned long EFlags;
  /* 0x0074 */ unsigned long HardwareEsp;
  /* 0x0078 */ unsigned long HardwareSegSs;
  /* 0x007c */ unsigned long V86Es;
  /* 0x0080 */ unsigned long V86Ds;
  /* 0x0084 */ unsigned long V86Fs;
  /* 0x0088 */ unsigned long V86Gs;
} X86_KTRAP_FRAME, *PX86_KTRAP_FRAME; /* size: 0x008c */

struct _DBGKP_ERROR_PORT;

typedef enum _WNF_SUBSCRIPTION_STATE
{
  WNF_SUB_STATE_QUIESCENT = 0,
  WNF_SUB_STATE_READY_TO_DELIVER = 1,
  WNF_SUB_STATE_IN_DELIVERY = 2,
  WNF_SUB_STATE_RETRY = 3,
} WNF_SUBSCRIPTION_STATE, *PWNF_SUBSCRIPTION_STATE;

typedef enum _IO_RATE_CONTROL_TYPE
{
  IoRateControlTypeCapMin = 0,
  IoRateControlTypeIopsCap = 0,
  IoRateControlTypeBandwidthCap = 1,
  IoRateControlTypeTimePercentCap = 2,
  IoRateControlTypeCapMax = 2,
  IoRateControlTypeReservationMin = 3,
  IoRateControlTypeIopsReservation = 3,
  IoRateControlTypeBandwidthReservation = 4,
  IoRateControlTypeTimePercentReservation = 5,
  IoRateControlTypeReservationMax = 5,
  IoRateControlTypeCriticalReservationMin = 6,
  IoRateControlTypeIopsCriticalReservation = 6,
  IoRateControlTypeBandwidthCriticalReservation = 7,
  IoRateControlTypeTimePercentCriticalReservation = 8,
  IoRateControlTypeCriticalReservationMax = 8,
  IoRateControlTypeSoftCapMin = 9,
  IoRateControlTypeIopsSoftCap = 9,
  IoRateControlTypeBandwidthSoftCap = 10,
  IoRateControlTypeTimePercentSoftCap = 11,
  IoRateControlTypeSoftCapMax = 11,
  IoRateControlTypeLimitExcessNotifyMin = 12,
  IoRateControlTypeIopsLimitExcessNotify = 12,
  IoRateControlTypeBandwidthLimitExcessNotify = 13,
  IoRateControlTypeTimePercentLimitExcessNotify = 14,
  IoRateControlTypeLimitExcessNotifyMax = 14,
  IoRateControlTypeMax = 15,
} IO_RATE_CONTROL_TYPE, *PIO_RATE_CONTROL_TYPE;

struct _SCSI_REQUEST_BLOCK;

typedef struct _WNF_LOCK
{
  /* 0x0000 */ struct _EX_PUSH_LOCK PushLock;
} WNF_LOCK, *PWNF_LOCK; /* size: 0x0008 */

typedef enum _JOBOBJECTINFOCLASS
{
  JobObjectBasicAccountingInformation = 1,
  JobObjectBasicLimitInformation = 2,
  JobObjectBasicProcessIdList = 3,
  JobObjectBasicUIRestrictions = 4,
  JobObjectSecurityLimitInformation = 5,
  JobObjectEndOfJobTimeInformation = 6,
  JobObjectAssociateCompletionPortInformation = 7,
  JobObjectBasicAndIoAccountingInformation = 8,
  JobObjectExtendedLimitInformation = 9,
  JobObjectJobSetInformation = 10,
  JobObjectGroupInformation = 11,
  JobObjectNotificationLimitInformation = 12,
  JobObjectLimitViolationInformation = 13,
  JobObjectGroupInformationEx = 14,
  JobObjectCpuRateControlInformation = 15,
  JobObjectCompletionFilter = 16,
  JobObjectCompletionCounter = 17,
  JobObjectFreezeInformation = 18,
  JobObjectExtendedAccountingInformation = 19,
  JobObjectWakeInformation = 20,
  JobObjectBackgroundInformation = 21,
  JobObjectSchedulingRankBiasInformation = 22,
  JobObjectTimerVirtualizationInformation = 23,
  JobObjectCycleTimeNotification = 24,
  JobObjectClearEvent = 25,
  JobObjectInterferenceInformation = 26,
  JobObjectClearPeakJobMemoryUsed = 27,
  JobObjectMemoryUsageInformation = 28,
  JobObjectSharedCommit = 29,
  JobObjectContainerId = 30,
  JobObjectIoRateControlInformation = 31,
  JobObjectSiloRootDirectory = 37,
  JobObjectServerSiloBasicInformation = 38,
  JobObjectServerSiloUserSharedData = 39,
  JobObjectServerSiloInitialize = 40,
  JobObjectServerSiloRunningState = 41,
  JobObjectIoAttribution = 42,
  JobObjectMemoryPartitionInformation = 43,
  JobObjectContainerTelemetryId = 44,
  JobObjectSiloSystemRoot = 45,
  JobObjectEnergyTrackingState = 46,
  JobObjectThreadImpersonationInformation = 47,
  JobObjectReserved1Information = 18,
  JobObjectReserved2Information = 19,
  JobObjectReserved3Information = 20,
  JobObjectReserved4Information = 21,
  JobObjectReserved5Information = 22,
  JobObjectReserved6Information = 23,
  JobObjectReserved7Information = 24,
  JobObjectReserved8Information = 25,
  JobObjectReserved9Information = 26,
  JobObjectReserved10Information = 27,
  JobObjectReserved11Information = 28,
  JobObjectReserved12Information = 29,
  JobObjectReserved13Information = 30,
  JobObjectReserved14Information = 31,
  JobObjectNetRateControlInformation = 32,
  JobObjectNotificationLimitInformation2 = 33,
  JobObjectLimitViolationInformation2 = 34,
  JobObjectCreateSilo = 35,
  JobObjectSiloBasicInformation = 36,
  JobObjectReserved15Information = 37,
  JobObjectReserved16Information = 38,
  JobObjectReserved17Information = 39,
  JobObjectReserved18Information = 40,
  JobObjectReserved19Information = 41,
  JobObjectReserved20Information = 42,
  JobObjectReserved21Information = 43,
  JobObjectReserved22Information = 44,
  JobObjectReserved23Information = 45,
  JobObjectReserved24Information = 46,
  JobObjectReserved25Information = 47,
  MaxJobObjectInfoClass = 48,
} JOBOBJECTINFOCLASS, *PJOBOBJECTINFOCLASS;

typedef enum _OBJECT_INFORMATION_CLASS
{
  ObjectBasicInformation = 0,
  ObjectNameInformation = 1,
  ObjectTypeInformation = 2,
  ObjectTypesInformation = 3,
  ObjectHandleFlagInformation = 4,
  ObjectSessionInformation = 5,
  ObjectSessionObjectInformation = 6,
  MaxObjectInfoClass = 7,
} OBJECT_INFORMATION_CLASS, *POBJECT_INFORMATION_CLASS;

enum PPM_IDLE_BUCKET_TIME_TYPE
{
  PpmIdleBucketTimeInQpc = 0,
  PpmIdleBucketTimeIn100ns = 1,
  PpmIdleBucketTimeMaximum = 2,
};

typedef enum _FILE_OBJECT_EXTENSION_TYPE
{
  FoExtTypeTransactionParams = 0,
  FoExtTypeInternal = 1,
  FoExtTypeIosbRange = 2,
  FoExtTypeGeneric = 3,
  FoExtTypeSfio = 4,
  FoExtTypeSymlink = 5,
  FoExtTypeOplockKey = 6,
  FoExtTypeSilo = 7,
  FoExtTypeMemoryPartitionInfo = 8,
  MaxFoExtTypes = 9,
} FILE_OBJECT_EXTENSION_TYPE, *PFILE_OBJECT_EXTENSION_TYPE;

typedef enum _IO_SESSION_STATE
{
  IoSessionStateCreated = 1,
  IoSessionStateInitialized = 2,
  IoSessionStateConnected = 3,
  IoSessionStateDisconnected = 4,
  IoSessionStateDisconnectedLoggedOn = 5,
  IoSessionStateLoggedOn = 6,
  IoSessionStateLoggedOff = 7,
  IoSessionStateTerminated = 8,
  IoSessionStateMax = 9,
} IO_SESSION_STATE, *PIO_SESSION_STATE;

typedef struct _PEP_WORK_DEVICE_IDLE
{
  /* 0x0000 */ struct POHANDLE__* DeviceHandle;
  /* 0x0008 */ unsigned char IgnoreIdleTimeout;
  /* 0x0009 */ char __PADDING__[7];
} PEP_WORK_DEVICE_IDLE, *PPEP_WORK_DEVICE_IDLE; /* size: 0x0010 */

typedef enum _KERNEL_STACK_LIMITS
{
  BugcheckStackLimits = 0,
  DPCStackLimits = 1,
  ExpandedStackLimits = 2,
  NormalStackLimits = 3,
  Win32kStackLimits = 4,
  SwapBusyStackLimits = 5,
  IsrStackLimits = 6,
  DebuggerStackLimits = 7,
  NmiStackLimits = 8,
  MachineCheckStackLimits = 9,
  ExceptionStackLimits = 10,
  MaximumStackLimits = 11,
} KERNEL_STACK_LIMITS, *PKERNEL_STACK_LIMITS;

typedef enum _PROCESS_SECTION_TYPE
{
  ProcessSectionData = 0,
  ProcessSectionImage = 1,
  ProcessSectionImageNx = 2,
  ProcessSectionPagefileBacked = 3,
  ProcessSectionMax = 4,
} PROCESS_SECTION_TYPE, *PPROCESS_SECTION_TYPE;

typedef enum _POP_DIRECTED_DRIPS_PROBLEM_DEVICE_REASON
{
  DirectedDripsProblemDeviceReasonSpecialDevice = 0,
  DirectedDripsProblemDeviceReasonNoDfx = 1,
  DirectedDripsProblemDeviceReasonNoPs4 = 2,
  DirectedDripsProblemDeviceReasonNoPs4Root = 3,
  DirectedDripsProblemDeviceReasonComponentContraint = 4,
  DirectedDripsProblemDeviceReasonDfxFailure = 5,
  DirectedDripsProblemDeviceReasonPagingDevice = 6,
  DirectedDripsProblemDeviceReasonDebuggingDevice = 7,
  DirectedDripsProblemDeviceReasonDfxNotAllowed = 8,
  DirectedDripsProblemDeviceReasonMax = 9,
} POP_DIRECTED_DRIPS_PROBLEM_DEVICE_REASON, *PPOP_DIRECTED_DRIPS_PROBLEM_DEVICE_REASON;

typedef struct _IO_REMOVE_LOCK_COMMON_BLOCK
{
  /* 0x0000 */ unsigned char Removed;
  /* 0x0001 */ unsigned char Reserved[3];
  /* 0x0004 */ long IoCount;
  /* 0x0008 */ struct _KEVENT RemoveEvent;
} IO_REMOVE_LOCK_COMMON_BLOCK, *PIO_REMOVE_LOCK_COMMON_BLOCK; /* size: 0x0020 */

typedef struct _IO_REMOVE_LOCK
{
  /* 0x0000 */ struct _IO_REMOVE_LOCK_COMMON_BLOCK Common;
} IO_REMOVE_LOCK, *PIO_REMOVE_LOCK; /* size: 0x0020 */

enum FEATURE_CHANGE_TIME
{
  FEATURE_CHANGE_TIME_READ = 0,
  FEATURE_CHANGE_TIME_MODULE_RELOAD = 1,
  FEATURE_CHANGE_TIME_SESSION = 2,
  FEATURE_CHANGE_TIME_REBOOT = 3,
  FEATURE_CHANGE_TIME_USER_FLAG = 128,
};

typedef enum _EX_HEAP_TYPE
{
  ExHeapTypeNonPagedMin = 0,
  ExHeapTypeNonPaged = 0,
  ExHeapTypeNonPagedMax = 1,
  ExHeapTypeNonPagedNx = 1,
  ExHeapTypePagedMin = 2,
  ExHeapTypePaged = 2,
  ExHeapTypePagedMax = 3,
  ExHeapTypeMmSt = 3,
  ExHeapTypeMax = 4,
  ExHeapTypeSpecialMax = 4,
} EX_HEAP_TYPE, *PEX_HEAP_TYPE;

typedef struct _CM_INTENT_LOCK
{
  /* 0x0000 */ unsigned long OwnerCount;
  /* 0x0004 */ long Padding_82;
  /* 0x0008 */ struct _CM_KCB_UOW** OwnerTable;
} CM_INTENT_LOCK, *PCM_INTENT_LOCK; /* size: 0x0010 */

typedef enum _OB_OPEN_REASON
{
  ObCreateHandle = 0,
  ObOpenHandle = 1,
  ObDuplicateHandle = 2,
  ObInheritHandle = 3,
  ObMaxOpenReason = 4,
} OB_OPEN_REASON, *POB_OPEN_REASON;

typedef enum _VRF_TRIAGE_CONTEXT
{
  VRF_TRIAGE_CONTEXT_NONE = 0,
  VRF_TRIAGE_CONTEXT_DEFAULT = 1,
  VRF_TRIAGE_CONTEXT_DEVELOPMENT = 1,
  VRF_TRIAGE_CONTEXT_CERTIFICATION = 2,
  VRF_TRIAGE_CONTEXT_FLIGHT_TARGETED = 3,
  VRF_TRIAGE_CONTEXT_FLIGHT_DIAGNOSTICS = 4,
  VRF_TRIAGE_CONTEXT_FLIGHT_MONITORING = 5,
  NUM_VRF_TRIAGE_CONTEXTS = 6,
} VRF_TRIAGE_CONTEXT, *PVRF_TRIAGE_CONTEXT;

typedef struct _BITMAP_RANGE
{
  /* 0x0000 */ struct _LIST_ENTRY Links;
  /* 0x0010 */ __int64 BasePage;
  /* 0x0018 */ unsigned long FirstDirtyPage;
  /* 0x001c */ unsigned long LastDirtyPage;
  /* 0x0020 */ unsigned long DirtyPages;
  /* 0x0024 */ long Padding_83;
  /* 0x0028 */ unsigned long* Bitmap;
} BITMAP_RANGE, *PBITMAP_RANGE; /* size: 0x0030 */

typedef enum _RTL_FEATURE_ENABLED_STATE_OPTIONS
{
  FeatureEnabledStateOptionsNone = 0,
  FeatureEnabledStateOptionsWexpConfig = 1,
} RTL_FEATURE_ENABLED_STATE_OPTIONS, *PRTL_FEATURE_ENABLED_STATE_OPTIONS;

typedef enum _POP_PEP_NOTIFY_DEVICE_DSTATE_REASON
{
  PepNotifyDeviceDStateReasonNone = 0,
  PepNotifyDeviceDStateReasonSystemTransition = 1,
  PepNotifyDeviceDStateReasonDfx = 2,
  PepNotifyDeviceDStateReasonMax = 3,
} POP_PEP_NOTIFY_DEVICE_DSTATE_REASON, *PPOP_PEP_NOTIFY_DEVICE_DSTATE_REASON;

enum KTM_STATE
{
  KKtmUninitialized = 0,
  KKtmInitialized = 1,
  KKtmRecovering = 2,
  KKtmOnline = 3,
  KKtmRecoveryFailed = 4,
  KKtmOffline = 5,
};

typedef enum _RTLP_HP_MEMORY_TYPE
{
  HeapMemoryPaged = 0,
  HeapMemoryNonPaged = 1,
  HeapMemoryLargePage = 2,
  HeapMemoryHugePage = 3,
  HeapMemoryTypeMax = 4,
} RTLP_HP_MEMORY_TYPE, *PRTLP_HP_MEMORY_TYPE;

typedef struct _HEAP_LFH_FAST_REF
{
  union
  {
    /* 0x0000 */ void* Target;
    /* 0x0000 */ unsigned __int64 Value;
    /* 0x0000 */ unsigned __int64 RefCount : 12; /* bit position: 0 */
  }; /* size: 0x0008 */
} HEAP_LFH_FAST_REF, *PHEAP_LFH_FAST_REF; /* size: 0x0008 */

typedef enum _DEVPROP_OPERATOR
{
  DEVPROP_OPERATOR_MODIFIER_NOT = 0x10000,
  DEVPROP_OPERATOR_MODIFIER_IGNORE_CASE = 0x20000,
  DEVPROP_OPERATOR_NONE = 0,
  DEVPROP_OPERATOR_EXISTS = 1,
  DEVPROP_OPERATOR_NOT_EXISTS = 0x10001,
  DEVPROP_OPERATOR_EQUALS = 2,
  DEVPROP_OPERATOR_NOT_EQUALS = 0x10002,
  DEVPROP_OPERATOR_GREATER_THAN = 3,
  DEVPROP_OPERATOR_LESS_THAN = 4,
  DEVPROP_OPERATOR_GREATER_THAN_EQUALS = 5,
  DEVPROP_OPERATOR_LESS_THAN_EQUALS = 6,
  DEVPROP_OPERATOR_EQUALS_IGNORE_CASE = 0x20002,
  DEVPROP_OPERATOR_NOT_EQUALS_IGNORE_CASE = 0x30002,
  DEVPROP_OPERATOR_BITWISE_AND = 7,
  DEVPROP_OPERATOR_BITWISE_OR = 8,
  DEVPROP_OPERATOR_BEGINS_WITH = 9,
  DEVPROP_OPERATOR_ENDS_WITH = 10,
  DEVPROP_OPERATOR_CONTAINS = 11,
  DEVPROP_OPERATOR_BEGINS_WITH_IGNORE_CASE = 0x20009,
  DEVPROP_OPERATOR_ENDS_WITH_IGNORE_CASE = 0x2000a,
  DEVPROP_OPERATOR_CONTAINS_IGNORE_CASE = 0x2000b,
  DEVPROP_OPERATOR_LIST_CONTAINS = 4096,
  DEVPROP_OPERATOR_LIST_ELEMENT_BEGINS_WITH = 8192,
  DEVPROP_OPERATOR_LIST_ELEMENT_ENDS_WITH = 12288,
  DEVPROP_OPERATOR_LIST_ELEMENT_CONTAINS = 16384,
  DEVPROP_OPERATOR_LIST_CONTAINS_IGNORE_CASE = 0x21000,
  DEVPROP_OPERATOR_LIST_ELEMENT_BEGINS_WITH_IGNORE_CASE = 0x22000,
  DEVPROP_OPERATOR_LIST_ELEMENT_ENDS_WITH_IGNORE_CASE = 0x23000,
  DEVPROP_OPERATOR_LIST_ELEMENT_CONTAINS_IGNORE_CASE = 0x24000,
  DEVPROP_OPERATOR_AND_OPEN = 0x100000,
  DEVPROP_OPERATOR_AND_CLOSE = 0x200000,
  DEVPROP_OPERATOR_OR_OPEN = 0x300000,
  DEVPROP_OPERATOR_OR_CLOSE = 0x400000,
  DEVPROP_OPERATOR_NOT_OPEN = 0x500000,
  DEVPROP_OPERATOR_NOT_CLOSE = 0x600000,
  DEVPROP_OPERATOR_ARRAY_CONTAINS = 0x10000000,
  DEVPROP_OPERATOR_MASK_EVAL = 4095,
  DEVPROP_OPERATOR_MASK_LIST = 0xfffff000,
  DEVPROP_OPERATOR_MASK_MODIFIER = 0xf0000,
  DEVPROP_OPERATOR_MASK_NOT_LOGICAL = -267386881,
  DEVPROP_OPERATOR_MASK_LOGICAL = 0xff00000,
  DEVPROP_OPERATOR_MASK_ARRAY = -268435456,
} DEVPROP_OPERATOR, *PDEVPROP_OPERATOR;

typedef struct _PEP_WORK_ACTIVE_COMPLETE
{
  /* 0x0000 */ struct POHANDLE__* DeviceHandle;
  /* 0x0008 */ unsigned long Component;
  /* 0x000c */ long __PADDING__[1];
} PEP_WORK_ACTIVE_COMPLETE, *PPEP_WORK_ACTIVE_COMPLETE; /* size: 0x0010 */

typedef enum _ARBITER_RESULT
{
  ArbiterResultUndefined = -1,
  ArbiterResultSuccess = 0,
  ArbiterResultExternalConflict = 1,
  ArbiterResultNullRequest = 2,
} ARBITER_RESULT, *PARBITER_RESULT;

typedef enum _KWAIT_BLOCK_STATE
{
  WaitBlockBypassStart = 0,
  WaitBlockBypassComplete = 1,
  WaitBlockSuspendBypassStart = 2,
  WaitBlockSuspendBypassComplete = 3,
  WaitBlockActive = 4,
  WaitBlockInactive = 5,
  WaitBlockSuspended = 6,
  WaitBlockAllStates = 7,
} KWAIT_BLOCK_STATE, *PKWAIT_BLOCK_STATE;

typedef enum _VI_DEADLOCK_RESOURCE_TYPE
{
  VfDeadlockUnknown = 0,
  VfDeadlockMutex = 1,
  VfDeadlockMutexAbandoned = 2,
  VfDeadlockFastMutex = 3,
  VfDeadlockFastMutexUnsafe = 4,
  VfDeadlockSpinLock = 5,
  VfDeadlockInStackQueuedSpinLock = 6,
  VfDeadlockUnusedSpinLock = 7,
  VfDeadlockEresource = 8,
  VfDeadlockTypeMaximum = 9,
} VI_DEADLOCK_RESOURCE_TYPE, *PVI_DEADLOCK_RESOURCE_TYPE;

typedef enum _SYSTEM_INFORMATION_CLASS
{
  SystemBasicInformation = 0,
  SystemProcessorInformation = 1,
  SystemPerformanceInformation = 2,
  SystemTimeOfDayInformation = 3,
  SystemPathInformation = 4,
  SystemProcessInformation = 5,
  SystemCallCountInformation = 6,
  SystemDeviceInformation = 7,
  SystemProcessorPerformanceInformation = 8,
  SystemFlagsInformation = 9,
  SystemCallTimeInformation = 10,
  SystemModuleInformation = 11,
  SystemLocksInformation = 12,
  SystemStackTraceInformation = 13,
  SystemPagedPoolInformation = 14,
  SystemNonPagedPoolInformation = 15,
  SystemHandleInformation = 16,
  SystemObjectInformation = 17,
  SystemPageFileInformation = 18,
  SystemVdmInstemulInformation = 19,
  SystemVdmBopInformation = 20,
  SystemFileCacheInformation = 21,
  SystemPoolTagInformation = 22,
  SystemInterruptInformation = 23,
  SystemDpcBehaviorInformation = 24,
  SystemFullMemoryInformation = 25,
  SystemLoadGdiDriverInformation = 26,
  SystemUnloadGdiDriverInformation = 27,
  SystemTimeAdjustmentInformation = 28,
  SystemSummaryMemoryInformation = 29,
  SystemMirrorMemoryInformation = 30,
  SystemPerformanceTraceInformation = 31,
  SystemObsolete0 = 32,
  SystemExceptionInformation = 33,
  SystemCrashDumpStateInformation = 34,
  SystemKernelDebuggerInformation = 35,
  SystemContextSwitchInformation = 36,
  SystemRegistryQuotaInformation = 37,
  SystemExtendServiceTableInformation = 38,
  SystemPrioritySeperation = 39,
  SystemVerifierAddDriverInformation = 40,
  SystemVerifierRemoveDriverInformation = 41,
  SystemProcessorIdleInformation = 42,
  SystemLegacyDriverInformation = 43,
  SystemCurrentTimeZoneInformation = 44,
  SystemLookasideInformation = 45,
  SystemTimeSlipNotification = 46,
  SystemSessionCreate = 47,
  SystemSessionDetach = 48,
  SystemSessionInformation = 49,
  SystemRangeStartInformation = 50,
  SystemVerifierInformation = 51,
  SystemVerifierThunkExtend = 52,
  SystemSessionProcessInformation = 53,
  SystemLoadGdiDriverInSystemSpace = 54,
  SystemNumaProcessorMap = 55,
  SystemPrefetcherInformation = 56,
  SystemExtendedProcessInformation = 57,
  SystemRecommendedSharedDataAlignment = 58,
  SystemComPlusPackage = 59,
  SystemNumaAvailableMemory = 60,
  SystemProcessorPowerInformation = 61,
  SystemEmulationBasicInformation = 62,
  SystemEmulationProcessorInformation = 63,
  SystemExtendedHandleInformation = 64,
  SystemLostDelayedWriteInformation = 65,
  SystemBigPoolInformation = 66,
  SystemSessionPoolTagInformation = 67,
  SystemSessionMappedViewInformation = 68,
  SystemHotpatchInformation = 69,
  SystemObjectSecurityMode = 70,
  SystemWatchdogTimerHandler = 71,
  SystemWatchdogTimerInformation = 72,
  SystemLogicalProcessorInformation = 73,
  SystemWow64SharedInformationObsolete = 74,
  SystemRegisterFirmwareTableInformationHandler = 75,
  SystemFirmwareTableInformation = 76,
  SystemModuleInformationEx = 77,
  SystemVerifierTriageInformation = 78,
  SystemSuperfetchInformation = 79,
  SystemMemoryListInformation = 80,
  SystemFileCacheInformationEx = 81,
  SystemThreadPriorityClientIdInformation = 82,
  SystemProcessorIdleCycleTimeInformation = 83,
  SystemVerifierCancellationInformation = 84,
  SystemProcessorPowerInformationEx = 85,
  SystemRefTraceInformation = 86,
  SystemSpecialPoolInformation = 87,
  SystemProcessIdInformation = 88,
  SystemErrorPortInformation = 89,
  SystemBootEnvironmentInformation = 90,
  SystemHypervisorInformation = 91,
  SystemVerifierInformationEx = 92,
  SystemTimeZoneInformation = 93,
  SystemImageFileExecutionOptionsInformation = 94,
  SystemCoverageInformation = 95,
  SystemPrefetchPatchInformation = 96,
  SystemVerifierFaultsInformation = 97,
  SystemSystemPartitionInformation = 98,
  SystemSystemDiskInformation = 99,
  SystemProcessorPerformanceDistribution = 100,
  SystemNumaProximityNodeInformation = 101,
  SystemDynamicTimeZoneInformation = 102,
  SystemCodeIntegrityInformation = 103,
  SystemProcessorMicrocodeUpdateInformation = 104,
  SystemProcessorBrandString = 105,
  SystemVirtualAddressInformation = 106,
  SystemLogicalProcessorAndGroupInformation = 107,
  SystemProcessorCycleTimeInformation = 108,
  SystemStoreInformation = 109,
  SystemRegistryAppendString = 110,
  SystemAitSamplingValue = 111,
  SystemVhdBootInformation = 112,
  SystemCpuQuotaInformation = 113,
  SystemNativeBasicInformation = 114,
  SystemErrorPortTimeouts = 115,
  SystemLowPriorityIoInformation = 116,
  SystemBootEntropyInformation = 117,
  SystemVerifierCountersInformation = 118,
  SystemPagedPoolInformationEx = 119,
  SystemSystemPtesInformationEx = 120,
  SystemNodeDistanceInformation = 121,
  SystemAcpiAuditInformation = 122,
  SystemBasicPerformanceInformation = 123,
  SystemQueryPerformanceCounterInformation = 124,
  SystemSessionBigPoolInformation = 125,
  SystemBootGraphicsInformation = 126,
  SystemScrubPhysicalMemoryInformation = 127,
  SystemBadPageInformation = 128,
  SystemProcessorProfileControlArea = 129,
  SystemCombinePhysicalMemoryInformation = 130,
  SystemEntropyInterruptTimingInformation = 131,
  SystemConsoleInformation = 132,
  SystemPlatformBinaryInformation = 133,
  SystemPolicyInformation = 134,
  SystemHypervisorProcessorCountInformation = 135,
  SystemDeviceDataInformation = 136,
  SystemDeviceDataEnumerationInformation = 137,
  SystemMemoryTopologyInformation = 138,
  SystemMemoryChannelInformation = 139,
  SystemBootLogoInformation = 140,
  SystemProcessorPerformanceInformationEx = 141,
  SystemCriticalProcessErrorLogInformation = 142,
  SystemSecureBootPolicyInformation = 143,
  SystemPageFileInformationEx = 144,
  SystemSecureBootInformation = 145,
  SystemEntropyInterruptTimingRawInformation = 146,
  SystemPortableWorkspaceEfiLauncherInformation = 147,
  SystemFullProcessInformation = 148,
  SystemKernelDebuggerInformationEx = 149,
  SystemBootMetadataInformation = 150,
  SystemSoftRebootInformation = 151,
  SystemElamCertificateInformation = 152,
  SystemOfflineDumpConfigInformation = 153,
  SystemProcessorFeaturesInformation = 154,
  SystemRegistryReconciliationInformation = 155,
  SystemEdidInformation = 156,
  SystemManufacturingInformation = 157,
  SystemEnergyEstimationConfigInformation = 158,
  SystemHypervisorDetailInformation = 159,
  SystemProcessorCycleStatsInformation = 160,
  SystemVmGenerationCountInformation = 161,
  SystemTrustedPlatformModuleInformation = 162,
  SystemKernelDebuggerFlags = 163,
  SystemCodeIntegrityPolicyInformation = 164,
  SystemIsolatedUserModeInformation = 165,
  SystemHardwareSecurityTestInterfaceResultsInformation = 166,
  SystemSingleModuleInformation = 167,
  SystemAllowedCpuSetsInformation = 168,
  SystemVsmProtectionInformation = 169,
  SystemInterruptCpuSetsInformation = 170,
  SystemSecureBootPolicyFullInformation = 171,
  SystemCodeIntegrityPolicyFullInformation = 172,
  SystemAffinitizedInterruptProcessorInformation = 173,
  SystemRootSiloInformation = 174,
  SystemCpuSetInformation = 175,
  SystemCpuSetTagInformation = 176,
  SystemWin32WerStartCallout = 177,
  SystemSecureKernelProfileInformation = 178,
  SystemCodeIntegrityPlatformManifestInformation = 179,
  SystemInterruptSteeringInformation = 180,
  SystemSupportedProcessorArchitectures = 181,
  SystemMemoryUsageInformation = 182,
  SystemCodeIntegrityCertificateInformation = 183,
  SystemPhysicalMemoryInformation = 184,
  SystemControlFlowTransition = 185,
  SystemKernelDebuggingAllowed = 186,
  SystemActivityModerationExeState = 187,
  SystemActivityModerationUserSettings = 188,
  SystemCodeIntegrityPoliciesFullInformation = 189,
  SystemCodeIntegrityUnlockInformation = 190,
  SystemIntegrityQuotaInformation = 191,
  SystemFlushInformation = 192,
  SystemProcessorIdleMaskInformation = 193,
  SystemSecureDumpEncryptionInformation = 194,
  SystemWriteConstraintInformation = 195,
  SystemKernelVaShadowInformation = 196,
  SystemHypervisorSharedPageInformation = 197,
  SystemFirmwareBootPerformanceInformation = 198,
  SystemCodeIntegrityVerificationInformation = 199,
  SystemFirmwarePartitionInformation = 200,
  SystemSpeculationControlInformation = 201,
  SystemDmaGuardPolicyInformation = 202,
  SystemEnclaveLaunchControlInformation = 203,
  SystemWorkloadAllowedCpuSetsInformation = 204,
  SystemCodeIntegrityUnlockModeInformation = 205,
  SystemLeapSecondInformation = 206,
  SystemFlags2Information = 207,
  SystemSecurityModelInformation = 208,
  SystemCodeIntegritySyntheticCacheInformation = 209,
  SystemFeatureConfigurationInformation = 210,
  SystemFeatureConfigurationSectionInformation = 211,
  SystemFeatureUsageSubscriptionInformation = 212,
  SystemSecureSpeculationControlInformation = 213,
  SystemSpacesBootInformation = 214,
  SystemFwRamdiskInformation = 215,
  SystemWheaIpmiHardwareInformation = 216,
  SystemDifSetRuleClassInformation = 217,
  SystemDifClearRuleClassInformation = 218,
  SystemDifApplyPluginVerificationOnDriver = 219,
  SystemDifRemovePluginVerificationOnDriver = 220,
  SystemShadowStackInformation = 221,
  SystemBuildVersionInformation = 222,
  SystemPoolLimitInformation = 223,
  SystemCodeIntegrityAddDynamicStore = 224,
  SystemCodeIntegrityClearDynamicStores = 225,
  SystemPoolZeroingInformation = 227,
  MaxSystemInfoClass = 228,
} SYSTEM_INFORMATION_CLASS, *PSYSTEM_INFORMATION_CLASS;

typedef struct _KSPIN_LOCK_QUEUE
{
  /* 0x0000 */ struct _KSPIN_LOCK_QUEUE* volatile Next;
  /* 0x0008 */ unsigned __int64* volatile Lock;
} KSPIN_LOCK_QUEUE, *PKSPIN_LOCK_QUEUE; /* size: 0x0010 */

typedef struct _KLOCK_QUEUE_HANDLE
{
  /* 0x0000 */ struct _KSPIN_LOCK_QUEUE LockQueue;
  /* 0x0010 */ unsigned char OldIrql;
  /* 0x0011 */ char __PADDING__[7];
} KLOCK_QUEUE_HANDLE, *PKLOCK_QUEUE_HANDLE; /* size: 0x0018 */

typedef enum _RTL_FEATURE_CONFIGURATION_PRIORITY
{
  FeatureConfigurationPriorityImageDefault = 0,
  FeatureConfigurationPriorityEKB = 1,
  FeatureConfigurationPrioritySafeguard = 2,
  FeatureConfigurationPriorityPersistent = 2,
  FeatureConfigurationPriorityReserved3 = 3,
  FeatureConfigurationPriorityService = 4,
  FeatureConfigurationPriorityReserved5 = 5,
  FeatureConfigurationPriorityDynamic = 6,
  FeatureConfigurationPriorityReserved7 = 7,
  FeatureConfigurationPriorityUser = 8,
  FeatureConfigurationPrioritySecurity = 9,
  FeatureConfigurationPriorityUserPolicy = 10,
  FeatureConfigurationPriorityReserved11 = 11,
  FeatureConfigurationPriorityTest = 12,
  FeatureConfigurationPriorityReserved13 = 13,
  FeatureConfigurationPriorityReserved14 = 14,
  FeatureConfigurationPriorityImageOverride = 15,
  FeatureConfigurationPriorityMax = 15,
} RTL_FEATURE_CONFIGURATION_PRIORITY, *PRTL_FEATURE_CONFIGURATION_PRIORITY;

typedef enum _MI_ALTERNATE_LOCK_VA_TYPE
{
  AlternateLockVaTypeSystemPtes = 0,
  AlternateLockVaTypeNonPagedPool = 1,
  AlternateLockVaTypeUser = 2,
  AlternateLockVaTypeSystem = 3,
  AlternateLockVaTypeMaximum = 4,
} MI_ALTERNATE_LOCK_VA_TYPE, *PMI_ALTERNATE_LOCK_VA_TYPE;

typedef enum _MI_MIRROR_BITMAP_TYPES
{
  MirrorBitmapTypeNormal = 0,
  MirrorBitmapTypeInterlocked = 1,
  MirrorBitmapTypeMaximum = 2,
} MI_MIRROR_BITMAP_TYPES, *PMI_MIRROR_BITMAP_TYPES;

struct _CI_NGEN_PATHS;

typedef enum _POP_SLEEP_CHECKPOINT
{
  PopSleepCheckpointInvalid = 0,
  PopSleepCheckpointPowerTransitionStart = 1,
  PopSleepCheckpointSuspendAppsBefore = 2,
  PopSleepCheckpointSuspendAppsAfter = 3,
  PopSleepCheckpointSuspendServicesBefore = 4,
  PopSleepCheckpointSuspendServicesAfter = 5,
  PopSleepCheckpointNotifySuperfetchBefore = 6,
  PopSleepCheckpointNotifySuperfetchAfter = 7,
  PopSleepCheckpointNotifyCallbacksBefore = 8,
  PopSleepCheckpointNotifyCallbacksAfter = 9,
  PopSleepCheckpointSleepTransactionCommitted = 10,
  PopSleepCheckpointQueryDriversBefore = 11,
  PopSleepCheckpointQueryDriversAfter = 12,
  PopSleepCheckpointAllocatingHiberContext = 13,
  PopSleepCheckpointSuspendDriversBefore = 14,
  PopSleepCheckpointPreSleepNotification = 16,
  PopSleepCheckpointInterruptsDisabledBegin = 17,
  PopSleepCheckpointInvokeHandlerBefore = 18,
  PopSleepCheckpointSaveHiberContextBegin = 19,
  PopSleepCheckpointInitializeDumpStackFailed = 20,
  PopSleepCheckpointHiberWriteFailed = 21,
  PopSleepCheckpointHiberFileTooSmall = 22,
  PopSleepCheckpointSaveHiberContextFailed = 23,
  PopSleepCheckpointSaveHiberContextEnd = 24,
  PopSleepCheckpointHiberKernelHandoff = 25,
  PopSleepCheckpointInvokeHandlerAfter = 26,
  PopSleepCheckpointReadHiberfileBefore = 27,
  PopSleepCheckpointInitializeDumpStackForReadFailed = 28,
  PopSleepCheckpointHiberReadFailed = 29,
  PopSleepCheckpointChecksumFailure = 30,
  PopSleepCheckpointDecompressionFailed = 31,
  PopSleepCheckpointReadHiberfileAfter = 32,
  PopSleepCheckpointInterruptsDisabledEnd = 33,
  PopSleepCheckpointWakeDriversAfter = 36,
  PopSleepCheckpointResumeAppsBefore = 37,
  PopSleepCheckpointResumeAppsAfter = 38,
  PopSleepCheckpointResumeServicesBefore = 39,
  PopSleepCheckpointResumeServicesAfter = 40,
  PopSleepCheckpointPowerTransitionEnd = 41,
  PopSleepCheckpointAllocatingHiberContextNoFileObject = 42,
  PopSleepCheckpointAllocatingHiberContextGetDumpStackFailed = 43,
  PopSleepCheckpointAllocatingHiberContextLoadResumeContextFailed = 44,
  PopSleepCheckpointAllocatingHiberContextBcdOpenFailed = 45,
  PopSleepCheckpointAllocatingHiberContextEstablishResumeObjectFailed = 46,
  PopSleepCheckpointAllocatingHiberContextSetPendingResumeFailed = 47,
  PopSleepCheckpointAllocatingHiberContextAllocateIoPagesPagesFailed = 48,
  PopSleepCheckpointAllocatingHiberContextAdapterBuffersInvalid1 = 49,
  PopSleepCheckpointAllocatingHiberContextAllocateDumpPagesFailed = 50,
  PopSleepCheckpointAllocatingHiberContextAdapterBuffersInvalid2 = 51,
  PopSleepCheckpointAllocatingHiberContextUnHibernatedMdlFailed = 52,
  PopSleepCheckpointAllocatingHiberContextSecureResourcesFailed = 53,
  PopSleepCheckpointPrepareSleepBefore = 54,
  PopSleepCheckpointPrepareSleepAfter = 55,
  PopSleepCheckpointBootstatAvailable = 56,
  PopSleepCheckpointMax = 57,
} POP_SLEEP_CHECKPOINT, *PPOP_SLEEP_CHECKPOINT;

enum PDC_CS_PHASE
{
  PdcNoCsPhase = 0,
  PdcConnectionPhase = 1,
  PdcShellPhase = 2,
  PdcPlmPhase = 3,
  PdcMaintenancePhase = 4,
  PdcDamPhase = 5,
  PdcLowPowerPhase = 6,
  PdcResiliencyNotificationPhase = 7,
  PdcResiliencyPhase = 8,
  PdcInvalidPhase = 9,
  PdcMaxPhase = 9,
};

typedef enum _DOMAIN_CONFIGURATION_ARCH
{
  DomainConfigurationArm64 = 0,
  DomainConfigurationInvalid = 1,
} DOMAIN_CONFIGURATION_ARCH, *PDOMAIN_CONFIGURATION_ARCH;

typedef enum _MI_MEMORY_EVENT_TYPES
{
  LowPagedPoolEvent = 0,
  HighPagedPoolEvent = 1,
  LowNonPagedPoolEvent = 2,
  HighNonPagedPoolEvent = 3,
  LowAvailablePagesEvent = 4,
  HighAvailablePagesEvent = 5,
  LowCommitEvent = 6,
  HighCommitEvent = 7,
  MaximumCommitEvent = 8,
  BadMemoryDetectedEvent = 9,
  PhysicalMemoryChangeEvent = 10,
  TotalNumberOfMemoryEvents = 11,
} MI_MEMORY_EVENT_TYPES, *PMI_MEMORY_EVENT_TYPES;

enum JOB_OBJECT_IO_RATE_CONTROL_FLAGS
{
  JOB_OBJECT_IO_RATE_CONTROL_ENABLE = 1,
  JOB_OBJECT_IO_RATE_CONTROL_STANDALONE_VOLUME = 2,
  JOB_OBJECT_IO_RATE_CONTROL_FORCE_UNIT_ACCESS_ALL = 4,
  JOB_OBJECT_IO_RATE_CONTROL_FORCE_UNIT_ACCESS_ON_SOFT_CAP = 8,
  JOB_OBJECT_IO_RATE_CONTROL_VALID_FLAGS = 15,
};

typedef struct _PEP_WORK_COMPLETE_PERF_STATE
{
  /* 0x0000 */ struct POHANDLE__* DeviceHandle;
  /* 0x0008 */ unsigned long Component;
  /* 0x000c */ unsigned char Succeeded;
  /* 0x000d */ char __PADDING__[3];
} PEP_WORK_COMPLETE_PERF_STATE, *PPEP_WORK_COMPLETE_PERF_STATE; /* size: 0x0010 */

typedef enum _KCONTINUE_TYPE
{
  KCONTINUE_UNWIND = 0,
  KCONTINUE_RESUME = 1,
  KCONTINUE_LONGJUMP = 2,
  KCONTINUE_SET = 3,
  KCONTINUE_LAST = 4,
} KCONTINUE_TYPE, *PKCONTINUE_TYPE;

typedef enum _KOBJECTS
{
  EventNotificationObject = 0,
  EventSynchronizationObject = 1,
  MutantObject = 2,
  ProcessObject = 3,
  QueueObject = 4,
  SemaphoreObject = 5,
  ThreadObject = 6,
  GateObject = 7,
  TimerNotificationObject = 8,
  TimerSynchronizationObject = 9,
  Spare2Object = 10,
  Spare3Object = 11,
  Spare4Object = 12,
  Spare5Object = 13,
  Spare6Object = 14,
  Spare7Object = 15,
  Spare8Object = 16,
  ProfileCallbackObject = 17,
  ApcObject = 18,
  DpcObject = 19,
  DeviceQueueObject = 20,
  PriQueueObject = 21,
  InterruptObject = 22,
  ProfileObject = 23,
  Timer2NotificationObject = 24,
  Timer2SynchronizationObject = 25,
  ThreadedDpcObject = 26,
  MaximumKernelObject = 27,
} KOBJECTS, *PKOBJECTS;

typedef enum _POP_SLEEP_CHECKPOINT_STATUS
{
  PopSleepCheckpointStatusDisabled = 0,
  PopSleepCheckpointStatusEnabledDueToDirtyShutdown = 1,
  PopSleepCheckpointStatusEnabledManually = 4,
  PopSleepCheckpointStatusEnabledExperiment = 4,
  PopSleepCheckpointStatusEnabledMax = 7,
  PopSleepCheckpointStatusFailedNotEfiSystem = 8,
  PopSleepCheckpointStatusFailedInsufficientSpace = 9,
  PopSleepCheckpointStatusFailedTooSlow = 10,
  PopSleepCheckpointStatusFailedOtherError = 15,
  PopSleepCheckpointStatusMax = 15,
} POP_SLEEP_CHECKPOINT_STATUS, *PPOP_SLEEP_CHECKPOINT_STATUS;

enum JOB_OBJECT_NET_RATE_CONTROL_FLAGS
{
  JOB_OBJECT_NET_RATE_CONTROL_ENABLE = 1,
  JOB_OBJECT_NET_RATE_CONTROL_MAX_BANDWIDTH = 2,
  JOB_OBJECT_NET_RATE_CONTROL_DSCP_TAG = 4,
  JOB_OBJECT_NET_RATE_CONTROL_VALID_FLAGS = 7,
};

typedef struct _EX_RUNDOWN_REF
{
  union
  {
    /* 0x0000 */ unsigned __int64 Count;
    /* 0x0000 */ void* Ptr;
  }; /* size: 0x0008 */
} EX_RUNDOWN_REF, *PEX_RUNDOWN_REF; /* size: 0x0008 */

typedef struct _OB_HANDLE_REVOCATION_BLOCK
{
  /* 0x0000 */ struct _LIST_ENTRY RevocationInfos;
  /* 0x0010 */ struct _EX_PUSH_LOCK Lock;
  /* 0x0018 */ struct _EX_RUNDOWN_REF Rundown;
} OB_HANDLE_REVOCATION_BLOCK, *POB_HANDLE_REVOCATION_BLOCK; /* size: 0x0020 */

enum PDC_RESOURCE
{
  PdcResourceSystemForeground = 0,
  PdcResourceUniversalApplications = 1,
  PdcResourceWin32 = 2,
  PdcResourceNetwork = 3,
  PdcResourceSystemBackground = 4,
  PdcResourceMin = 0,
  PdcResourceMax = 4,
};

enum TlgIn_t
{
  TlgInNULL = 0,
  TlgInUNICODESTRING = 1,
  TlgInANSISTRING = 2,
  TlgInINT8 = 3,
  TlgInUINT8 = 4,
  TlgInINT16 = 5,
  TlgInUINT16 = 6,
  TlgInINT32 = 7,
  TlgInUINT32 = 8,
  TlgInINT64 = 9,
  TlgInUINT64 = 10,
  TlgInFLOAT = 11,
  TlgInDOUBLE = 12,
  TlgInBOOL32 = 13,
  TlgInBINARY = 14,
  TlgInGUID = 15,
  _TlgInPOINTER_unsupported = 16,
  TlgInFILETIME = 17,
  TlgInSYSTEMTIME = 18,
  TlgInSID = 19,
  TlgInHEXINT32 = 20,
  TlgInHEXINT64 = 21,
  TlgInCOUNTEDSTRING = 22,
  TlgInCOUNTEDANSISTRING = 23,
  _TlgInSTRUCT = 24,
  TlgInCOUNTEDBINARY = 25,
  _TlgInMax = 26,
  TlgInINTPTR = 9,
  TlgInUINTPTR = 10,
  TlgInPOINTER = 21,
  TlgInLONG = 7,
  TlgInULONG = 8,
  TlgInHEXLONG = 20,
  _TlgInCcount = 32,
  TlgInVcount = 64,
  _TlgInChain = 128,
  _TlgInCustom = 96,
  _TlgInTypeMask = 31,
  _TlgInCountMask = 96,
  _TlgInFlagMask = 224,
};

typedef enum _DMA_SPEED
{
  Compatible = 0,
  TypeA = 1,
  TypeB = 2,
  TypeC = 3,
  TypeF = 4,
  MaximumDmaSpeed = 5,
} DMA_SPEED, *PDMA_SPEED;

typedef enum _BUGCHECK_RECOVERY_LOG_EVENT
{
  RecoveryEventStart = 0,
  RecoveryEventPhase1Status = 1,
  RecoveryEventPhase2Status = 2,
  RecoveryEventMax = 3,
} BUGCHECK_RECOVERY_LOG_EVENT, *PBUGCHECK_RECOVERY_LOG_EVENT;

typedef enum _POWER_INFORMATION_LEVEL_INTERNAL
{
  PowerInternalAcpiInterfaceRegister = 0,
  PowerInternalS0LowPowerIdleInfo = 1,
  PowerInternalReapplyBrightnessSettings = 2,
  PowerInternalUserAbsencePrediction = 3,
  PowerInternalUserAbsencePredictionCapability = 4,
  PowerInternalPoProcessorLatencyHint = 5,
  PowerInternalStandbyNetworkRequest = 6,
  PowerInternalDirtyTransitionInformation = 7,
  PowerInternalSetBackgroundTaskState = 8,
  PowerInternalReservedDoNotUseEnum9 = 9,
  PowerInternalReservedDoNotUseEnum10 = 10,
  PowerInternalReservedDoNotUseEnum11 = 11,
  PowerInternalReservedDoNotUseEnum12 = 12,
  PowerInternalReservedDoNotUseEnum13 = 13,
  PowerInternalReservedDoNotUseEnum14 = 14,
  PowerInternalReservedDoNotUseEnum15 = 15,
  PowerInternalReservedDoNotUseEnum16 = 16,
  PowerInternalReservedDoNotUseEnum17 = 17,
  PowerInternalBootSessionStandbyActivationInformation = 18,
  PowerInternalSessionPowerState = 19,
  PowerInternalSessionTerminalInput = 20,
  PowerInternalSetWatchdog = 21,
  PowerInternalPhysicalPowerButtonPressInfoAtBoot = 22,
  PowerInternalExternalMonitorConnected = 23,
  PowerInternalHighPrecisionBrightnessSettings = 24,
  PowerInternalWinrtScreenToggle = 25,
  PowerInternalPpmQosDisable = 26,
  PowerInternalTransitionCheckpoint = 27,
  PowerInternalInputControllerState = 28,
  PowerInternalFirmwareResetReason = 29,
  PowerInternalPpmSchedulerQosSupport = 30,
  PowerInternalBootStatGet = 31,
  PowerInternalBootStatSet = 32,
  PowerInternalCallHasNotReturnedWatchdog = 33,
  PowerInternalBootStatCheckIntegrity = 34,
  PowerInternalBootStatRestoreDefaults = 35,
  PowerInternalHostEsStateUpdate = 36,
  PowerInternalGetPowerActionState = 37,
  PowerInternalBootStatUnlock = 38,
  PowerInternalWakeOnVoiceState = 39,
  PowerInternalDeepSleepBlock = 40,
  PowerInternalIsPoFxDevice = 41,
  PowerInternalPowerTransitionExtensionAtBoot = 42,
  PowerInternalProcessorBrandedFrequency = 43,
  PowerInternalTimeBrokerExpirationReason = 44,
  PowerInternalNotifyUserShutdownStatus = 45,
  PowerInternalPowerRequestTerminalCoreWindow = 46,
  PowerInternalProcessorIdleVeto = 47,
  PowerInternalPlatformIdleVeto = 48,
  PowerInternalIsLongPowerButtonBugcheckEnabled = 49,
  PowerInternalAutoChkCausedReboot = 50,
  PowerInternalSetWakeAlarmOverride = 51,
  PowerInternalDirectedFxAddTestDevice = 53,
  PowerInternalDirectedFxRemoveTestDevice = 54,
  PowerInternalDirectedFxSetMode = 56,
  PowerInternalRegisterPowerPlane = 57,
  PowerInternalSetDirectedDripsFlags = 58,
  PowerInternalClearDirectedDripsFlags = 59,
  PowerInternalRetrieveHiberFileResumeContext = 60,
  PowerInternalReadHiberFilePage = 61,
  PowerInternalLastBootSucceeded = 62,
  PowerInternalQuerySleepStudyHelperRoutineBlock = 63,
  PowerInternalDirectedDripsQueryCapabilities = 64,
  PowerInternalClearConstraints = 65,
  PowerInternalSoftParkVelocityEnabled = 66,
  PowerInternalQueryIntelPepCapabilities = 67,
  PowerInformationInternalMaximum = 68,
} POWER_INFORMATION_LEVEL_INTERNAL, *PPOWER_INFORMATION_LEVEL_INTERNAL;

typedef enum _KTRANSACTION_STATE
{
  KTransactionUninitialized = 0,
  KTransactionActive = 1,
  KTransactionPreparing = 2,
  KTransactionPrepared = 3,
  KTransactionInDoubt = 4,
  KTransactionCommitted = 5,
  KTransactionAborted = 6,
  KTransactionDelegated = 7,
  KTransactionPrePreparing = 8,
  KTransactionForgotten = 9,
  KTransactionRecovering = 10,
  KTransactionPrePrepared = 11,
} KTRANSACTION_STATE, *PKTRANSACTION_STATE;

typedef enum _PS_STD_HANDLE_STATE
{
  PsNeverDuplicate = 0,
  PsRequestDuplicate = 1,
  PsAlwaysDuplicate = 2,
  PsMaxStdHandleStates = 3,
} PS_STD_HANDLE_STATE, *PPS_STD_HANDLE_STATE;

typedef struct _ALPC_HANDLE_TABLE
{
  /* 0x0000 */ struct _ALPC_HANDLE_ENTRY* Handles;
  /* 0x0008 */ struct _EX_PUSH_LOCK Lock;
  /* 0x0010 */ unsigned __int64 TotalHandles;
  /* 0x0018 */ unsigned long Flags;
  /* 0x001c */ long __PADDING__[1];
} ALPC_HANDLE_TABLE, *PALPC_HANDLE_TABLE; /* size: 0x0020 */

typedef struct _ALPC_COMMUNICATION_INFO
{
  /* 0x0000 */ struct _ALPC_PORT* ConnectionPort;
  /* 0x0008 */ struct _ALPC_PORT* ServerCommunicationPort;
  /* 0x0010 */ struct _ALPC_PORT* ClientCommunicationPort;
  /* 0x0018 */ struct _LIST_ENTRY CommunicationList;
  /* 0x0028 */ struct _ALPC_HANDLE_TABLE HandleTable;
  /* 0x0048 */ struct _KALPC_MESSAGE* CloseMessage;
} ALPC_COMMUNICATION_INFO, *PALPC_COMMUNICATION_INFO; /* size: 0x0050 */

typedef enum _MEMORY_PHYSICAL_CONTIGUITY_UNIT_STATE
{
  MemoryNotContiguous = 0,
  MemoryAlignedAndContiguous = 1,
  MemoryNotResident = 2,
  MemoryNotEligibleToMakeContiguous = 3,
  MemoryContiguityStateMax = 4,
} MEMORY_PHYSICAL_CONTIGUITY_UNIT_STATE, *PMEMORY_PHYSICAL_CONTIGUITY_UNIT_STATE;

struct DOCK_INTERFACE
{
  /* 0x0000 */ unsigned short Size;
  /* 0x0002 */ unsigned short Version;
  /* 0x0004 */ long Padding_84;
  /* 0x0008 */ void* Context;
  /* 0x0010 */ void* InterfaceReference /* function */;
  /* 0x0018 */ void* InterfaceDereference /* function */;
  /* 0x0020 */ void* ProfileDepartureSetMode /* function */;
  /* 0x0028 */ void* ProfileDepartureUpdate /* function */;
}; /* size: 0x0030 */

typedef enum _FUNCTION_TABLE_TYPE
{
  RF_SORTED = 0,
  RF_UNSORTED = 1,
  RF_CALLBACK = 2,
  RF_KERNEL_DYNAMIC = 3,
} FUNCTION_TABLE_TYPE, *PFUNCTION_TABLE_TYPE;

typedef enum _PS_WAKE_REASON
{
  PsWakeReasonUser = 0,
  PsWakeReasonExecutionRequired = 1,
  PsWakeReasonKernel = 2,
  PsWakeReasonInstrumentation = 3,
  PsWakeReasonPreserveProcess = 4,
  PsWakeReasonActivityReference = 5,
  PsWakeReasonWorkOnBehalf = 6,
  PsMaxWakeReasons = 7,
} PS_WAKE_REASON, *PPS_WAKE_REASON;

typedef enum _RTL_MEMORY_TYPE
{
  MemoryTypePaged = 0,
  MemoryTypeNonPaged = 1,
  MemoryTypeLargePage = 2,
  MemoryTypeHugePage = 3,
  MemoryTypeMax = 4,
} RTL_MEMORY_TYPE, *PRTL_MEMORY_TYPE;

typedef enum _PO_MODERN_SLEEP_ACTION
{
  PoModernSleepActionGlobalActivatorsVeto = 0,
  PoModernSleepActionNonBlockingPhases = 1,
  PoModernSleepActionForceIdle = 2,
  PoModernSleepActionMinimalBlockingNotificationClients = 3,
  PoModernSleepActionMax = 4,
} PO_MODERN_SLEEP_ACTION, *PPO_MODERN_SLEEP_ACTION;

typedef struct _TRACE_ENABLE_INFO
{
  /* 0x0000 */ unsigned long IsEnabled;
  /* 0x0004 */ unsigned char Level;
  /* 0x0005 */ unsigned char Reserved1;
  /* 0x0006 */ unsigned short LoggerId;
  /* 0x0008 */ unsigned long EnableProperty;
  /* 0x000c */ unsigned long Reserved2;
  /* 0x0010 */ unsigned __int64 MatchAnyKeyword;
  /* 0x0018 */ unsigned __int64 MatchAllKeyword;
} TRACE_ENABLE_INFO, *PTRACE_ENABLE_INFO; /* size: 0x0020 */

enum wil_FeatureStage
{
  wil_FeatureStage_AlwaysDisabled = 0,
  wil_FeatureStage_DisabledByDefault = 1,
  wil_FeatureStage_EnabledByDefault = 2,
  wil_FeatureStage_AlwaysEnabled = 3,
};

typedef enum _KHETERO_RUNNING_TYPE
{
  KHeteroShortRunning = 0,
  KHeteroLongRunning = 1,
  KHeteroRunningTypeMax = 2,
} KHETERO_RUNNING_TYPE, *PKHETERO_RUNNING_TYPE;

typedef struct _PS_JOB_WAKE_INFORMATION
{
  /* 0x0000 */ unsigned __int64 NotificationChannel;
  /* 0x0008 */ unsigned __int64 WakeCounters[7];
  /* 0x0040 */ unsigned __int64 NoWakeCounter;
} PS_JOB_WAKE_INFORMATION, *PPS_JOB_WAKE_INFORMATION; /* size: 0x0048 */

typedef enum _MI_SLAB_ALLOCATOR_PROTECTION
{
  MiSlabAllocatorProtectionReadExecute = 0,
  MiSlabAllocatorProtectionReadOnly = 1,
  MiSlabAllocatorProtectionNoAccess = 2,
  MiSlabAllocatorProtectionReadWrite = 3,
  MiSlabAllocatorProtectionMax = 4,
} MI_SLAB_ALLOCATOR_PROTECTION, *PMI_SLAB_ALLOCATOR_PROTECTION;

typedef enum _CONFIGURATION_TYPE
{
  ArcSystem = 0,
  CentralProcessor = 1,
  FloatingPointProcessor = 2,
  PrimaryIcache = 3,
  PrimaryDcache = 4,
  SecondaryIcache = 5,
  SecondaryDcache = 6,
  SecondaryCache = 7,
  EisaAdapter = 8,
  TcAdapter = 9,
  ScsiAdapter = 10,
  DtiAdapter = 11,
  MultiFunctionAdapter = 12,
  DiskController = 13,
  TapeController = 14,
  CdromController = 15,
  WormController = 16,
  SerialController = 17,
  NetworkController = 18,
  DisplayController = 19,
  ParallelController = 20,
  PointerController = 21,
  KeyboardController = 22,
  AudioController = 23,
  OtherController = 24,
  DiskPeripheral = 25,
  FloppyDiskPeripheral = 26,
  TapePeripheral = 27,
  ModemPeripheral = 28,
  MonitorPeripheral = 29,
  PrinterPeripheral = 30,
  PointerPeripheral = 31,
  KeyboardPeripheral = 32,
  TerminalPeripheral = 33,
  OtherPeripheral = 34,
  LinePeripheral = 35,
  NetworkPeripheral = 36,
  SystemMemory = 37,
  DockingInformation = 38,
  RealModeIrqRoutingTable = 39,
  RealModePCIEnumeration = 40,
  MaximumType = 41,
} CONFIGURATION_TYPE, *PCONFIGURATION_TYPE;

typedef enum _KTHREAD_TAG
{
  KThreadTagNone = 0,
  KThreadTagMediaBuffering = 1,
  KThreadTagDeadline = 2,
  KThreadTagMax = 3,
} KTHREAD_TAG, *PKTHREAD_TAG;

typedef struct _ETW_SILO_TRACING_BLOCK
{
  /* 0x0000 */ struct _EX_FAST_REF* ProcessorBuffers;
  /* 0x0008 */ unsigned __int64* EventsLoggedCount;
  /* 0x0010 */ __int64* QpcDelta;
  /* 0x0018 */ long __PADDING__[10];
} ETW_SILO_TRACING_BLOCK, *PETW_SILO_TRACING_BLOCK; /* size: 0x0040 */

typedef enum _ETW_PERFECT_HASH_FUNCTION_TYPE
{
  ETW_PHF_EVENT_ID = 0,
  ETW_PHF_STACK_WALK = 1,
  ETW_PHF_MAX_COUNT = 2,
} ETW_PERFECT_HASH_FUNCTION_TYPE, *PETW_PERFECT_HASH_FUNCTION_TYPE;

typedef enum _MI_ENCLAVE_TYPE
{
  MiEnclaveNone = 0,
  MiEnclaveHardware = 1,
  MiEnclaveVsm = 2,
  MiEnclaveMax = 3,
} MI_ENCLAVE_TYPE, *PMI_ENCLAVE_TYPE;

typedef enum _POWER_INFORMATION_LEVEL_INTERNAL_TTMTCAPI
{
  PowerInformationInternalTtmFirst = 4096,
  PowerInternalTtmOpenTerminal = 4096,
  PowerInternalTtmCreateTerminal = 4097,
  PowerInternalTtmEvacuateDevices = 4098,
  PowerInternalTtmCreateTerminalEventQueue = 4099,
  PowerInternalTtmGetTerminalEvent = 4100,
  PowerInternalTtmSetDefaultDeviceAssignment = 4101,
  PowerInternalTtmAssignDevice = 4102,
  PowerInternalTtmSetDisplayState = 4103,
  PowerInternalTtmSetDisplayTimeouts = 4104,
  PowerInternalTtmSetDisplayPowerRequest = 4105,
  PowerInternalTtmSetInputWakeCapability = 4106,
  PowerInformationInternalTtmLast = 4106,
} POWER_INFORMATION_LEVEL_INTERNAL_TTMTCAPI, *PPOWER_INFORMATION_LEVEL_INTERNAL_TTMTCAPI;

typedef struct _PROCESS_DISK_COUNTERS
{
  /* 0x0000 */ unsigned __int64 BytesRead;
  /* 0x0008 */ unsigned __int64 BytesWritten;
  /* 0x0010 */ unsigned __int64 ReadOperationCount;
  /* 0x0018 */ unsigned __int64 WriteOperationCount;
  /* 0x0020 */ unsigned __int64 FlushOperationCount;
} PROCESS_DISK_COUNTERS, *PPROCESS_DISK_COUNTERS; /* size: 0x0028 */

typedef enum _TYPE_OF_MEMORY
{
  LoaderExceptionBlock = 0,
  LoaderSystemBlock = 1,
  LoaderFree = 2,
  LoaderBad = 3,
  LoaderLoadedProgram = 4,
  LoaderFirmwareTemporary = 5,
  LoaderFirmwarePermanent = 6,
  LoaderOsloaderHeap = 7,
  LoaderOsloaderStack = 8,
  LoaderSystemCode = 9,
  LoaderHalCode = 10,
  LoaderBootDriver = 11,
  LoaderConsoleInDriver = 12,
  LoaderConsoleOutDriver = 13,
  LoaderStartupDpcStack = 14,
  LoaderStartupKernelStack = 15,
  LoaderStartupPanicStack = 16,
  LoaderStartupPcrPage = 17,
  LoaderStartupPdrPage = 18,
  LoaderRegistryData = 19,
  LoaderMemoryData = 20,
  LoaderNlsData = 21,
  LoaderSpecialMemory = 22,
  LoaderBBTMemory = 23,
  LoaderZero = 24,
  LoaderXIPRom = 25,
  LoaderHALCachedMemory = 26,
  LoaderLargePageFiller = 27,
  LoaderErrorLogMemory = 28,
  LoaderVsmMemory = 29,
  LoaderFirmwareCode = 30,
  LoaderFirmwareData = 31,
  LoaderFirmwareReserved = 32,
  LoaderEnclaveMemory = 33,
  LoaderFirmwareKsr = 34,
  LoaderEnclaveKsr = 35,
  LoaderSkMemory = 36,
  LoaderSkFirmwareReserved = 37,
  LoaderIoSpaceMemoryZeroed = 38,
  LoaderIoSpaceMemoryFree = 39,
  LoaderIoSpaceMemoryKsr = 40,
  LoaderMaximum = 41,
} TYPE_OF_MEMORY, *PTYPE_OF_MEMORY;

typedef enum _VRF_RULE_CLASS_ID
{
  VrfSpecialPoolRuleClass = 0,
  VrfForceIrqlRuleClass = 1,
  VrfAllocationFailuresRuleClass = 2,
  VrfTrackingPoolAllocationsRuleClass = 3,
  VrfIORuleClass = 4,
  VrfDeadlockPreventionRuleClass = 5,
  VrfEnhancedIORuleClass = 6,
  VrfDMARuleClass = 7,
  VrfSecurityRuleClass = 8,
  VrfForcePendingIORequestRuleClass = 9,
  VrfIRPTrackingRuleClass = 10,
  VrfMiscellaneousRuleClass = 11,
  VrfMoreDebuggingRuleClass = 12,
  VrfMDLInvariantStackRuleClass = 13,
  VrfMDLInvariantDriverRuleClass = 14,
  VrfPowerDelayFuzzingRuleClass = 15,
  VrfPortMiniportRuleClass = 16,
  VrfStandardDDIRuleClass = 17,
  VrfAutoFailRuleClass = 18,
  VrfAdditionalDDIRuleClass = 19,
  VrfRuleClassBase = 20,
  VrfNdisWifiRuleClass = 21,
  VrfDriverLoggingRuleClass = 22,
  VrfSyncDelayFuzzingRuleClass = 23,
  VrfVMSwitchingRuleClass = 24,
  VrfCodeIntegrityRuleClass = 25,
  VrfBelow4GBAllocationRuleClass = 26,
  VrfProcessorBranchTraceRuleClass = 27,
  VrfAdvancedMMRuleClass = 28,
  VrfExtendingXDVTimeLimit = 29,
  VrfSystemBIOSRuleClass = 30,
  VrfHardwareRuleClass = 31,
  VrfStateSepRuleClass = 32,
  VrfWDFRuleClass = 33,
  VrfMoreIrqlRuleClass = 34,
  VrfXDVPlatformMode = 35,
  VrfStandalonePlatformMode = 36,
  VrfPlatformModeTest = 37,
  VrfInfoDisclosureIRPRule = 38,
  VrfLwSpecialPool = 39,
  VrfAVXCorruption = 40,
  VrfAccessModeMismatch = 41,
  ReservedForDVRF42 = 42,
  ReservedForDVRF43 = 43,
  ReservedForDVRF44 = 44,
  ReservedForDVRF45 = 45,
  ReservedForDVRF46 = 46,
  ReservedForDVRF47 = 47,
  ReservedForDVRF48 = 48,
  ReservedForDVRF49 = 49,
  ReservedForDVRF50 = 50,
  ReservedForDVRF51 = 51,
  ReservedForDVRF52 = 52,
  ReservedForDVRF53 = 53,
  ReservedForDVRF54 = 54,
  ReservedForDVRF55 = 55,
  ReservedForDVRF56 = 56,
  ReservedForDVRF57 = 57,
  ReservedForDVRF58 = 58,
  ReservedForDVRF59 = 59,
  ReservedForDVRF60 = 60,
  ReservedForDVRF61 = 61,
  ReservedForDVRF62 = 62,
  ReservedForDVRF63 = 63,
  VrfRuleClassSizeMax = 64,
} VRF_RULE_CLASS_ID, *PVRF_RULE_CLASS_ID;

typedef enum _PEP_WORK_TYPE
{
  PepWorkActiveComplete = 0,
  PepWorkRequestIdleState = 1,
  PepWorkDevicePower = 2,
  PepWorkRequestPowerControl = 3,
  PepWorkDeviceIdle = 4,
  PepWorkCompleteIdleState = 5,
  PepWorkCompletePerfState = 6,
  PepWorkAcpiNotify = 7,
  PepWorkAcpiEvaluateControlMethodComplete = 8,
  PepWorkMax = 9,
} PEP_WORK_TYPE, *PPEP_WORK_TYPE;

typedef struct _DBGKD_GET_CONTEXT
{
  /* 0x0000 */ unsigned long Unused;
} DBGKD_GET_CONTEXT, *PDBGKD_GET_CONTEXT; /* size: 0x0004 */

typedef enum _KE_WAKE_SOURCE_TYPE
{
  KeWakeSourceTypeSpuriousWake = 0,
  KeWakeSourceTypeSpuriousClock = 1,
  KeWakeSourceTypeSpuriousInterrupt = 2,
  KeWakeSourceTypeQueryFailure = 3,
  KeWakeSourceTypeAccountingFailure = 4,
  KeWakeSourceTypeStaticSourceMax = 4,
  KeWakeSourceTypeInterrupt = 5,
  KeWakeSourceTypeIRTimer = 6,
  KeWakeSourceTypeMax = 7,
} KE_WAKE_SOURCE_TYPE, *PKE_WAKE_SOURCE_TYPE;

typedef struct _GEN_ADDR
{
  /* 0x0000 */ unsigned char AddressSpaceID;
  /* 0x0001 */ unsigned char BitWidth;
  /* 0x0002 */ unsigned char BitOffset;
  /* 0x0003 */ unsigned char AccessSize;
  /* 0x0004 */ union _LARGE_INTEGER Address;
} GEN_ADDR, *PGEN_ADDR; /* size: 0x000c */

typedef enum _MI_WORKING_SET_TYPE
{
  MiWorkingSetTypeSystemCache = 0,
  MiWorkingSetTypeSystemViews = 1,
  MiWorkingSetTypePartitionMaximum = 1,
  MiWorkingSetTypePagedPool = 2,
  MiWorkingSetTypePagableMaximum = 2,
  MiWorkingSetTypeSystemPtes = 3,
  MiWorkingSetTypeKernelStacks = 4,
  MiWorkingSetTypeNonPagedPool = 5,
  MiWorkingSetTypeMaximum = 6,
} MI_WORKING_SET_TYPE, *PMI_WORKING_SET_TYPE;

struct LIST_ENTRY64
{
  /* 0x0000 */ unsigned __int64 Flink;
  /* 0x0008 */ unsigned __int64 Blink;
}; /* size: 0x0010 */

typedef enum _KTIMER2_COLLECTION_INDEX
{
  KTimer2CollectionNoWake = 0,
  KTimer2CollectionHr = 1,
  KTimer2CollectionPseudoHr = 2,
  KTimer2CollectionFinite = 3,
  KTimer2CollectionIr = 4,
  KTimer2CollectionNotInserted = 16,
  KTimer2CollectionInvalid = 21,
  KTimer2CollectionOptional = 32,
  KTimer2CollectionMin = 0,
  KTimer2CollectionMax = 5,
  KTimer2CollectionNode1 = 2,
} KTIMER2_COLLECTION_INDEX, *PKTIMER2_COLLECTION_INDEX;

typedef struct _HEAP_UNPACKED_ENTRY
{
  /* 0x0000 */ void* PreviousBlockPrivateData;
  union
  {
    struct
    {
      /* 0x0008 */ unsigned short Size;
      /* 0x000a */ unsigned char Flags;
      /* 0x000b */ unsigned char SmallTagIndex;
    }; /* size: 0x0004 */
    struct
    {
      /* 0x0008 */ unsigned long SubSegmentCode;
      /* 0x000c */ unsigned short PreviousSize;
      union
      {
        /* 0x000e */ unsigned char SegmentOffset;
        struct
        {
          /* 0x000e */ unsigned char LFHFlags;
          /* 0x000f */ unsigned char UnusedBytes;
        }; /* size: 0x0002 */
      }; /* size: 0x0002 */
    }; /* size: 0x0008 */
    /* 0x0008 */ unsigned __int64 CompactHeader;
  }; /* size: 0x0008 */
} HEAP_UNPACKED_ENTRY, *PHEAP_UNPACKED_ENTRY; /* size: 0x0010 */

typedef struct _HEAP_EXTENDED_ENTRY
{
  /* 0x0000 */ void* Reserved;
  union
  {
    struct
    {
      /* 0x0008 */ unsigned short FunctionIndex;
      /* 0x000a */ unsigned short ContextValue;
    }; /* size: 0x0004 */
    /* 0x0008 */ unsigned long InterceptorValue;
  }; /* size: 0x0004 */
  /* 0x000c */ unsigned short UnusedBytesLength;
  /* 0x000e */ unsigned char EntryOffset;
  /* 0x000f */ unsigned char ExtendedBlockSignature;
} HEAP_EXTENDED_ENTRY, *PHEAP_EXTENDED_ENTRY; /* size: 0x0010 */

typedef struct _HEAP_ENTRY
{
  union
  {
    /* 0x0000 */ struct _HEAP_UNPACKED_ENTRY UnpackedEntry;
    struct
    {
      /* 0x0000 */ void* PreviousBlockPrivateData;
      union
      {
        struct
        {
          /* 0x0008 */ unsigned short Size;
          /* 0x000a */ unsigned char Flags;
          /* 0x000b */ unsigned char SmallTagIndex;
        }; /* size: 0x0004 */
        struct
        {
          /* 0x0008 */ unsigned long SubSegmentCode;
          /* 0x000c */ unsigned short PreviousSize;
          union
          {
            /* 0x000e */ unsigned char SegmentOffset;
            struct
            {
              /* 0x000e */ unsigned char LFHFlags;
              /* 0x000f */ unsigned char UnusedBytes;
            }; /* size: 0x0002 */
          }; /* size: 0x0002 */
        }; /* size: 0x0008 */
        /* 0x0008 */ unsigned __int64 CompactHeader;
      }; /* size: 0x0008 */
    }; /* size: 0x0010 */
    /* 0x0000 */ struct _HEAP_EXTENDED_ENTRY ExtendedEntry;
    struct
    {
      /* 0x0000 */ void* Reserved;
      union
      {
        struct
        {
          /* 0x0008 */ unsigned short FunctionIndex;
          /* 0x000a */ unsigned short ContextValue;
        }; /* size: 0x0004 */
        struct
        {
          /* 0x0008 */ unsigned long InterceptorValue;
          /* 0x000c */ unsigned short UnusedBytesLength;
          /* 0x000e */ unsigned char EntryOffset;
          /* 0x000f */ unsigned char ExtendedBlockSignature;
        }; /* size: 0x0008 */
      }; /* size: 0x0008 */
    }; /* size: 0x0010 */
    struct
    {
      /* 0x0000 */ void* ReservedForAlignment;
      union
      {
        struct
        {
          /* 0x0008 */ unsigned long Code1;
          union
          {
            struct
            {
              /* 0x000c */ unsigned short Code2;
              /* 0x000e */ unsigned char Code3;
              /* 0x000f */ unsigned char Code4;
            }; /* size: 0x0004 */
            /* 0x000c */ unsigned long Code234;
          }; /* size: 0x0004 */
        }; /* size: 0x0008 */
        /* 0x0008 */ unsigned __int64 AgregateCode;
      }; /* size: 0x0008 */
    }; /* size: 0x0010 */
  }; /* size: 0x0010 */
} HEAP_ENTRY, *PHEAP_ENTRY; /* size: 0x0010 */

typedef struct _PERFINFO_GROUPMASK
{
  /* 0x0000 */ unsigned long Masks[8];
} PERFINFO_GROUPMASK, *PPERFINFO_GROUPMASK; /* size: 0x0020 */

typedef enum _SKSERVICE
{
  SECURESERVICE_NONE = 0,
  SECURESERVICE_PHASE4_INIT = 1,
  SECURESERVICE_START_PROCESSOR = 2,
  SECURESERVICE_FINISH_START_PROCESSOR = 3,
  SECURESERVICE_REGISTER_SYSTEM_DLLS = 4,
  SECURESERVICE_REGISTER_SYSTEM_PROCESS = 5,
  SECURESERVICE_CREATE_PROCESS = 6,
  SECURESERVICE_INITIALIZE_PROCESS = 7,
  SECURESERVICE_CREATE_THREAD = 8,
  SECURESERVICE_REQUEST_THREAD_EXIT = 9,
  SECURESERVICE_TERMINATE_THREAD = 10,
  SECURESERVICE_RUNDOWN_PROCESS = 11,
  SECURESERVICE_DEBUG_PROCESS = 12,
  SECURESERVICE_GET_TEB_ADDRESS = 13,
  SECURESERVICE_GET_CONTEXT = 14,
  SECURESERVICE_SET_CONTEXT = 15,
  SECURESERVICE_SEND_ATTACH_NOTIFICATIONS = 16,
  SECURESERVICE_GET_ETW_DEBUG_ID = 17,
  SECURESERVICE_GET_ON_DEMAND_DEBUG_CHALLENGE = 18,
  SECURESERVICE_ENABLE_ON_DEMAND_DEBUG_WITH_RESPONSE = 19,
  SECURESERVICE_RETRIEVE_MAILBOX = 20,
  SECURESERVICE_IS_TRUSTLET_RUNNING = 21,
  SECURESERVICE_CREATE_SECURE_ALLOCATION = 22,
  SECURESERVICE_FILL_SECURE_ALLOCATION = 23,
  SECURESERVICE_MAKE_CODE_CATALOG = 24,
  SECURESERVICE_CREATE_SECURE_IMAGE = 25,
  SECURESERVICE_FINALIZE_SECURE_IMAGE_HASH = 26,
  SECURESERVICE_FINISH_SECURE_IMAGE_VALIDATION = 27,
  SECURESERVICE_PREPARE_IMAGE_RELOCATIONS = 28,
  SECURESERVICE_RELOCATE_IMAGE = 29,
  SECURESERVICE_CLOSE_SECURE_HANDLE = 30,
  SECURESERVICE_VALIDATE_DYNAMIC_CODE = 31,
  SECURESERVICE_TRANSFER_IMAGE_VERSION_RESOURCE = 32,
  SECURESERVICE_SET_CODE_INTEGRITY_POLICY = 33,
  SECURESERVICE_EXCHANGE_ENTROPY = 34,
  SECURESERVICE_ALLOCATE_HIBERNATE_RESOURCES = 35,
  SECURESERVICE_FREE_HIBERNATE_RESOURCES = 36,
  SECURESERVICE_CONFIGURE_DYNAMIC_MEMORY = 37,
  SECURESERVICE_DEBUG_PROTECT_MEMORY = 38,
  SECURESERVICE_DEBUG_READ_WRITE_MEMORY = 39,
  SECURESERVICE_QUERY_VIRTUAL_MEMORY = 40,
  SECURESERVICE_CAPTURE_IMAGE_IAT = 41,
  SECURESERVICE_FREE_IMAGE_IAT = 42,
  SECURESERVICE_APPLY_FIXUPS = 43,
  SECURESERVICE_MARK_IMAGE_PROTECTED = 44,
  SECURESERVICE_CREATE_ENCLAVE = 45,
  SECURESERVICE_LOAD_ENCLAVE_DATA = 46,
  SECURESERVICE_LOAD_ENCLAVE_MODULE = 47,
  SECURESERVICE_INITIALIZE_ENCLAVE = 48,
  SECURESERVICE_TERMINATE_ENCLAVE = 49,
  SECURESERVICE_DELETE_ENCLAVE = 50,
  SECURESERVICE_CONNECT_SW_INTERRUPT = 51,
  SECURESERVICE_RELAX_HYPERGUARD_QUOTA = 52,
  SECURESERVICE_LIVEDUMP_QUERY_SECONDARYDATA_SIZE = 53,
  SECURESERVICE_LIVEDUMP_START = 54,
  SECURESERVICE_LIVEDUMP_ADD_BUFFER = 55,
  SECURESERVICE_LIVEDUMP_SETUP_BUFFER = 56,
  SECURESERVICE_LIVEDUMP_FINALIZE = 57,
  SECURESERVICE_LIVEDUMP_ABORT = 58,
  SECURESERVICE_LIVEDUMP_CAPTURE_PROCESS = 59,
  SECURESERVICE_NOTIFY_POWER_STATE = 60,
  SECURESERVICE_QUERY_PROFILE_INFORMATION = 61,
  SECURESERVICE_UPDATE_FREEZE_BIAS = 62,
  SECURESERVICE_CREATE_SECURE_SECTION = 63,
  SECURESERVICE_DELETE_SECURE_SECTION = 64,
  SECURESERVICE_QUERY_SECURE_DEVICE = 65,
  SECURESERVICE_UNPROTECT_SECURE_DEVICE = 66,
  SECURESERVICE_DETERMINE_HOT_PATCH_TYPE = 67,
  SECURESERVICE_OBTAIN_PATCH_UNDO_TABLE_SIZE = 68,
  SECURESERVICE_OBTAIN_PATCH_UNDO_TABLE = 69,
  SECURESERVICE_APPLY_HOT_PATCH = 70,
  SECURESERVICE_REVERT_HOT_PATCH = 71,
  SECURESERVICE_PREPARE_DRIVER_FOR_PATCH = 72,
  SECURESERVICE_PROVISION_DUMP_KEYS = 73,
  SECURESERVICE_CAPTURE_PGO_DATA = 74,
  SECURESERVICE_START_PROFILE = 75,
  SECURESERVICE_STOP_PROFILE = 76,
  SECURESERVICE_SET_TRACEPOINT = 77,
  SECURESERVICE_NO_TRACING_FIRST = 191,
  SECURESERVICE_GET_PEB_ADDRESS = 192,
  SECURESERVICE_VALIDATE_SECURE_IMAGE_PAGES = 193,
  SECURESERVICE_PRE_INIT_FIRST = 207,
  SECURESERVICE_PHASE3_INIT = 208,
  SECURESERVICE_PERIODIC = 209,
  SECURESERVICE_WORK_QUEUE = 210,
  SECURESERVICE_RESERVE_PROTECTED_PAGES = 211,
  SECURESERVICE_APPLY_DYNAMIC_RELOCATIONS = 212,
  SECURESERVICE_ETW_ENABLE_CALLBACK = 213,
  SECURESERVICE_INITIALIZE_SECURE_POOL = 214,
  SECURESERVICE_INITIALIZE_KERNEL_CFG = 215,
  SECURESERVICE_LOAD_DRIVER = 216,
  SECURESERVICE_UNLOAD_DRIVER = 217,
  SECURESERVICE_ENABLE_CFG_TARGET = 218,
  SECURESERVICE_COMPLETE_SLAB_CONFIGURATION = 219,
  SECURESERVICE_INITIALIZE_RETPOLINE = 220,
  SECURESERVICE_PERFORM_RETPOLINE_RELOCATIONS = 221,
  SECURESERVICE_UPDATE_IMPORT_RELOCATIONS = 222,
  SECURESERVICE_DISPATCH_LEVEL_FIRST = 239,
  SECURESERVICE_FLUSH_ADDRESS_SPACE = 240,
  SECURESERVICE_FAST_FLUSH_RANGE_LIST = 241,
  SECURESERVICE_SLOW_FLUSH_RANGE_LIST = 242,
  SECURESERVICE_REMOVE_PROTECTED_PAGE = 243,
  SECURESERVICE_COPY_PROTECTED_PAGE = 244,
  SECURESERVICE_REGISTER_PROTECTED_PAGE = 245,
  SECURESERVICE_DISAMBIGUATE_PROTECTED_PAGE = 246,
  SECURESERVICE_MAKE_PROTECTED_PAGE_WRITABLE = 247,
  SECURESERVICE_MAKE_PROTECTED_PAGE_EXECUTABLE = 248,
  SECURESERVICE_QUERY_STRONG_CODE_FEATURES = 249,
  SECURESERVICE_INVOKE_EFI_RUNTIME_SERVICE = 250,
  SECURESERVICE_LIVEDUMP_COLLECT_LIVE_DUMP = 251,
  SECURESERVICE_REGISTER_LOG_PAGES = 252,
  SECURESERVICE_RECLAIM_PARTITION_PAGES = 253,
  SECURESERVICE_BIND_NT_KERNEL_IMPORTS = 254,
  SECURESERVICE_SET_PLACEHOLDER_PAGES = 255,
  SECURESERVICE_QUERY_SPECULATION_CONTROL_FEATURES = 256,
  SECURESERVICE_PROTECT_KERNEL_DATA_PAGE = 257,
  SECURESERVICE_VERIFY_PAGE = 258,
  SECURESERVICE_PREPARE_FOR_HIBERNATION = 259,
  SECURESERVICE_PREPARE_FOR_CRASHDUMP = 260,
  SECURESERVICE_REPORT_BUGCHECK_PROGRESS = 261,
  SECURESERVICE_SHUTDOWN = 262,
  SECURESERVICE_QUERY_SECURE_PCI_INFO = 263,
  SECURESERVICE_ACCESS_PCI_DEVICE = 264,
  SECURESERVICE_REINITIALIZE_DEBUGGER_TRANSPORT = 265,
  SECURESERVICE_KSR_CALL = 266,
  SECURESERVICE_SVC_CALL = 267,
  SECURESERVICE_BUGCHECK = 1792,
  SECURESERVICE_LIMITED_MODE_SERVICE_START = 2048,
} SKSERVICE, *PSKSERVICE;

struct PEPHANDLE__
{
  /* 0x0000 */ int unused;
}; /* size: 0x0004 */

typedef enum _ETW_NOTIFICATION_TYPE
{
  EtwNotificationTypeNoReply = 1,
  EtwNotificationTypeLegacyEnable = 2,
  EtwNotificationTypeEnable = 3,
  EtwNotificationTypePrivateLogger = 4,
  EtwNotificationTypePerflib = 5,
  EtwNotificationTypeAudio = 6,
  EtwNotificationTypeSession = 7,
  EtwNotificationTypeReserved = 8,
  EtwNotificationTypeCredentialUI = 9,
  EtwNotificationTypeInProcSession = 10,
  EtwNotificationTypeFilteredPrivateLogger = 11,
  EtwNotificationTypeMax = 12,
} ETW_NOTIFICATION_TYPE, *PETW_NOTIFICATION_TYPE;

typedef enum _PS_PROTECTED_TYPE
{
  PsProtectedTypeNone = 0,
  PsProtectedTypeProtectedLight = 1,
  PsProtectedTypeProtected = 2,
  PsProtectedTypeMax = 3,
} PS_PROTECTED_TYPE, *PPS_PROTECTED_TYPE;

typedef union _SLIST_HEADER
{
  union
  {
    struct
    {
      /* 0x0000 */ unsigned __int64 Alignment;
      /* 0x0008 */ unsigned __int64 Region;
    }; /* size: 0x0010 */
    struct
    {
      struct /* bitfield */
      {
        /* 0x0000 */ unsigned __int64 Depth : 16; /* bit position: 0 */
        /* 0x0000 */ unsigned __int64 Sequence : 48; /* bit position: 16 */
      }; /* bitfield */
      struct /* bitfield */
      {
        /* 0x0008 */ unsigned __int64 Reserved : 4; /* bit position: 0 */
        /* 0x0008 */ unsigned __int64 NextEntry : 60; /* bit position: 4 */
      }; /* bitfield */
    } /* size: 0x0010 */ HeaderX64;
  }; /* size: 0x0010 */
} SLIST_HEADER, *PSLIST_HEADER; /* size: 0x0010 */

typedef struct _RTL_LOOKASIDE
{
  /* 0x0000 */ union _SLIST_HEADER ListHead;
  /* 0x0010 */ unsigned short Depth;
  /* 0x0012 */ unsigned short MaximumDepth;
  /* 0x0014 */ unsigned long TotalAllocates;
  /* 0x0018 */ unsigned long AllocateMisses;
  /* 0x001c */ unsigned long TotalFrees;
  /* 0x0020 */ unsigned long FreeMisses;
  /* 0x0024 */ unsigned long LastTotalAllocates;
  /* 0x0028 */ unsigned long LastAllocateMisses;
  /* 0x002c */ unsigned long LastTotalFrees;
  /* 0x0030 */ long __PADDING__[4];
} RTL_LOOKASIDE, *PRTL_LOOKASIDE; /* size: 0x0040 */

typedef enum _BUS_DATA_TYPE
{
  ConfigurationSpaceUndefined = -1,
  Cmos = 0,
  EisaConfiguration = 1,
  Pos = 2,
  CbusConfiguration = 3,
  PCIConfiguration = 4,
  VMEConfiguration = 5,
  NuBusConfiguration = 6,
  PCMCIAConfiguration = 7,
  MPIConfiguration = 8,
  MPSAConfiguration = 9,
  PNPISAConfiguration = 10,
  SgiInternalConfiguration = 11,
  MaximumBusDataType = 12,
} BUS_DATA_TYPE, *PBUS_DATA_TYPE;

enum KD_CALLBACK_ACTION
{
  KdConfigureDeviceAndContinue = 0,
  KdSkipDeviceAndContinue = 1,
  KdConfigureDeviceAndStop = 2,
  KdSkipDeviceAndStop = 3,
};

typedef enum _HAL_CLOCK_TIMER_MODE
{
  HalClockTimerModePeriodic = 0,
  HalClockTimerModeOneShot = 1,
  HalClockTimerModeMax = 2,
} HAL_CLOCK_TIMER_MODE, *PHAL_CLOCK_TIMER_MODE;

typedef enum _BOOT_ENTROPY_SOURCE_RESULT_CODE
{
  BootEntropySourceStructureUninitialized = 0,
  BootEntropySourceDisabledByPolicy = 1,
  BootEntropySourceNotPresent = 2,
  BootEntropySourceError = 3,
  BootEntropySourceSuccess = 4,
} BOOT_ENTROPY_SOURCE_RESULT_CODE, *PBOOT_ENTROPY_SOURCE_RESULT_CODE;

typedef enum _HAL_PROCESSOR_STAT_TYPE
{
  HalProcessorStatResidency = 0,
  HalProcessorStatCount = 1,
  HalProcessorStatMax = 2,
} HAL_PROCESSOR_STAT_TYPE, *PHAL_PROCESSOR_STAT_TYPE;

typedef enum _ETW_PERIODIC_TIMER_STATE
{
  EtwpPeriodicTimerUnset = 0,
  EtwpPeriodicTimerSet = 1,
} ETW_PERIODIC_TIMER_STATE, *PETW_PERIODIC_TIMER_STATE;

struct _KTMNOTIFICATION_PACKET;

typedef enum _MI_CFG_BITMAP_TYPE
{
  CfgBitMapNative = 0,
  CfgBitMapWow64 = 1,
  CfgBitMapMax = 2,
} MI_CFG_BITMAP_TYPE, *PMI_CFG_BITMAP_TYPE;

typedef enum _PROCESS_VA_TYPE
{
  ProcessVAImage = 0,
  ProcessVASection = 1,
  ProcessVAPrivate = 2,
  ProcessVAMax = 3,
} PROCESS_VA_TYPE, *PPROCESS_VA_TYPE;

typedef struct _DMA_TRANSFER_INFO_V1
{
  /* 0x0000 */ unsigned long MapRegisterCount;
  /* 0x0004 */ unsigned long ScatterGatherElementCount;
  /* 0x0008 */ unsigned long ScatterGatherListSize;
} DMA_TRANSFER_INFO_V1, *PDMA_TRANSFER_INFO_V1; /* size: 0x000c */

typedef struct _DMA_TRANSFER_INFO
{
  /* 0x0000 */ unsigned long Version;
  union
  {
    /* 0x0004 */ struct _DMA_TRANSFER_INFO_V1 V1;
    /* 0x0004 */ struct _DMA_TRANSFER_INFO_V2 V2;
  }; /* size: 0x0010 */
} DMA_TRANSFER_INFO, *PDMA_TRANSFER_INFO; /* size: 0x0014 */

struct LIST_ENTRY32
{
  /* 0x0000 */ unsigned long Flink;
  /* 0x0004 */ unsigned long Blink;
}; /* size: 0x0008 */

typedef enum _PS_RESOURCE_TYPE
{
  PsResourceNonPagedPool = 0,
  PsResourcePagedPool = 1,
  PsResourcePageFile = 2,
  PsResourceWorkingSet = 3,
  PsResourceMax = 4,
} PS_RESOURCE_TYPE, *PPS_RESOURCE_TYPE;

typedef enum _HEAP_SEGMGR_LARGE_PAGE_POLICY
{
  HeapSegMgrNoLargePages = 0,
  HeapSegMgrEnableLargePages = 1,
  HeapSegMgrNormalPolicy = 1,
  HeapSegMgrForceSmall = 2,
  HeapSegMgrForceLarge = 3,
  HeapSegMgrForceRandom = 4,
  HeapSegMgrLargePagePolicyMax = 5,
} HEAP_SEGMGR_LARGE_PAGE_POLICY, *PHEAP_SEGMGR_LARGE_PAGE_POLICY;

typedef enum _BOOT_ENTROPY_SOURCE_ID
{
  BootEntropySourceNone = 0,
  BootEntropySourceSeedfile = 1,
  BootEntropySourceExternal = 2,
  BootEntropySourceTpm = 3,
  BootEntropySourceRdrand = 4,
  BootEntropySourceTime = 5,
  BootEntropySourceAcpiOem0 = 6,
  BootEntropySourceUefi = 7,
  BootEntropySourceCng = 8,
  BootEntropySourceTcbTpm = 9,
  BootEntropySourceTcbRdrand = 10,
  BootMaxEntropySources = 10,
} BOOT_ENTROPY_SOURCE_ID, *PBOOT_ENTROPY_SOURCE_ID;

typedef struct _BOOT_ENTROPY_SOURCE_LDR_RESULT
{
  /* 0x0000 */ enum _BOOT_ENTROPY_SOURCE_ID SourceId;
  /* 0x0004 */ long Padding_85;
  /* 0x0008 */ unsigned __int64 Policy;
  /* 0x0010 */ enum _BOOT_ENTROPY_SOURCE_RESULT_CODE ResultCode;
  /* 0x0014 */ long ResultStatus;
  /* 0x0018 */ unsigned __int64 Time;
  /* 0x0020 */ unsigned long EntropyLength;
  /* 0x0024 */ unsigned char EntropyData[64];
  /* 0x0064 */ long __PADDING__[1];
} BOOT_ENTROPY_SOURCE_LDR_RESULT, *PBOOT_ENTROPY_SOURCE_LDR_RESULT; /* size: 0x0068 */

typedef struct _BOOT_ENTROPY_LDR_RESULT
{
  /* 0x0000 */ unsigned long maxEntropySources;
  /* 0x0004 */ long Padding_86;
  /* 0x0008 */ struct _BOOT_ENTROPY_SOURCE_LDR_RESULT EntropySourceResult[10];
  /* 0x0418 */ unsigned char SeedBytesForCng[48];
  /* 0x0448 */ unsigned char RngBytesForNtoskrnl[1024];
  /* 0x0848 */ unsigned char KdEntropy[32];
} BOOT_ENTROPY_LDR_RESULT, *PBOOT_ENTROPY_LDR_RESULT; /* size: 0x0868 */

typedef enum _PO_FX_PERF_STATE_TYPE
{
  PoFxPerfStateTypeDiscrete = 0,
  PoFxPerfStateTypeRange = 1,
  PoFxPerfStateTypeMaximum = 2,
} PO_FX_PERF_STATE_TYPE, *PPO_FX_PERF_STATE_TYPE;

typedef struct _DBGKD_GET_INTERNAL_BREAKPOINT32
{
  /* 0x0000 */ unsigned long BreakpointAddress;
  /* 0x0004 */ unsigned long Flags;
  /* 0x0008 */ unsigned long Calls;
  /* 0x000c */ unsigned long MaxCallsPerPeriod;
  /* 0x0010 */ unsigned long MinInstructions;
  /* 0x0014 */ unsigned long MaxInstructions;
  /* 0x0018 */ unsigned long TotalInstructions;
} DBGKD_GET_INTERNAL_BREAKPOINT32, *PDBGKD_GET_INTERNAL_BREAKPOINT32; /* size: 0x001c */

typedef struct _KENTROPY_TIMING_STATE
{
  /* 0x0000 */ unsigned long EntropyCount;
  /* 0x0004 */ unsigned long Buffer[64];
  /* 0x0104 */ long Padding_87;
  /* 0x0108 */ struct _KDPC Dpc;
  /* 0x0148 */ unsigned long LastDeliveredBuffer;
  /* 0x014c */ long __PADDING__[1];
} KENTROPY_TIMING_STATE, *PKENTROPY_TIMING_STATE; /* size: 0x0150 */

typedef enum _PERFINFO_KERNELMEMORY_USAGE_TYPE
{
  PerfInfoMemUsagePfnMetadata = 0,
  PerfInfoMemUsageMax = 1,
} PERFINFO_KERNELMEMORY_USAGE_TYPE, *PPERFINFO_KERNELMEMORY_USAGE_TYPE;

enum FEATURE_ENABLED_STATE
{
  FEATURE_ENABLED_STATE_DEFAULT = 0,
  FEATURE_ENABLED_STATE_DISABLED = 1,
  FEATURE_ENABLED_STATE_ENABLED = 2,
  FEATURE_ENABLED_STATE_HAS_NOTIFICATION = 128,
  FEATURE_ENABLED_STATE_HAS_VARIANT_CONFIGURATION = 64,
};

typedef struct _INTERRUPT_LINE
{
  /* 0x0000 */ unsigned long UnitId;
  /* 0x0004 */ long Line;
} INTERRUPT_LINE, *PINTERRUPT_LINE; /* size: 0x0008 */

typedef struct _RTL_QUERY_REGISTRY_TABLE
{
  /* 0x0000 */ void* QueryRoutine /* function */;
  /* 0x0008 */ unsigned long Flags;
  /* 0x000c */ long Padding_88;
  /* 0x0010 */ wchar_t* Name;
  /* 0x0018 */ void* EntryContext;
  /* 0x0020 */ unsigned long DefaultType;
  /* 0x0024 */ long Padding_89;
  /* 0x0028 */ void* DefaultData;
  /* 0x0030 */ unsigned long DefaultLength;
  /* 0x0034 */ long __PADDING__[1];
} RTL_QUERY_REGISTRY_TABLE, *PRTL_QUERY_REGISTRY_TABLE; /* size: 0x0038 */

typedef enum _MI_MEMORY_HIGHLOW
{
  MiMemoryHigh = 0,
  MiMemoryLow = 1,
  MiMemoryHighLow = 2,
} MI_MEMORY_HIGHLOW, *PMI_MEMORY_HIGHLOW;

typedef struct _HEAP_VS_DELAY_FREE_CONTEXT
{
  /* 0x0000 */ union _SLIST_HEADER ListHead;
} HEAP_VS_DELAY_FREE_CONTEXT, *PHEAP_VS_DELAY_FREE_CONTEXT; /* size: 0x0010 */

typedef struct _HEAP_SUBALLOCATOR_CALLBACKS
{
  /* 0x0000 */ unsigned __int64 Allocate;
  /* 0x0008 */ unsigned __int64 Free;
  /* 0x0010 */ unsigned __int64 Commit;
  /* 0x0018 */ unsigned __int64 Decommit;
  /* 0x0020 */ unsigned __int64 ExtendContext;
} HEAP_SUBALLOCATOR_CALLBACKS, *PHEAP_SUBALLOCATOR_CALLBACKS; /* size: 0x0028 */

typedef struct _RTL_HP_VS_CONFIG
{
  struct
  {
    struct /* bitfield */
    {
      /* 0x0000 */ unsigned long PageAlignLargeAllocs : 1; /* bit position: 0 */
      /* 0x0000 */ unsigned long FullDecommit : 1; /* bit position: 1 */
      /* 0x0000 */ unsigned long EnableDelayFree : 1; /* bit position: 2 */
    }; /* bitfield */
  } /* size: 0x0004 */ Flags;
} RTL_HP_VS_CONFIG, *PRTL_HP_VS_CONFIG; /* size: 0x0004 */

typedef struct _HEAP_VS_CONTEXT
{
  /* 0x0000 */ unsigned __int64 Lock;
  /* 0x0008 */ enum _RTLP_HP_LOCK_TYPE LockType;
  /* 0x000c */ long Padding_90;
  /* 0x0010 */ struct _RTL_RB_TREE FreeChunkTree;
  /* 0x0020 */ struct _LIST_ENTRY SubsegmentList;
  /* 0x0030 */ unsigned __int64 TotalCommittedUnits;
  /* 0x0038 */ unsigned __int64 FreeCommittedUnits;
  /* 0x0040 */ struct _HEAP_VS_DELAY_FREE_CONTEXT DelayFreeContext;
  /* 0x0050 */ long Padding_91[12];
  /* 0x0080 */ void* BackendCtx;
  /* 0x0088 */ struct _HEAP_SUBALLOCATOR_CALLBACKS Callbacks;
  /* 0x00b0 */ struct _RTL_HP_VS_CONFIG Config;
  /* 0x00b4 */ unsigned long Flags;
  /* 0x00b8 */ long __PADDING__[2];
} HEAP_VS_CONTEXT, *PHEAP_VS_CONTEXT; /* size: 0x00c0 */

typedef enum _PS_PROTECTED_SIGNER
{
  PsProtectedSignerNone = 0,
  PsProtectedSignerAuthenticode = 1,
  PsProtectedSignerCodeGen = 2,
  PsProtectedSignerAntimalware = 3,
  PsProtectedSignerLsa = 4,
  PsProtectedSignerWindows = 5,
  PsProtectedSignerWinTcb = 6,
  PsProtectedSignerWinSystem = 7,
  PsProtectedSignerApp = 8,
  PsProtectedSignerMax = 9,
} PS_PROTECTED_SIGNER, *PPS_PROTECTED_SIGNER;

enum POWER_POLICY_DEVICE_TYPE
{
  PolicyDeviceSystemButton = 0,
  PolicyDeviceThermalZone = 1,
  PolicyDeviceBattery = 2,
  PolicyDeviceMemory = 3,
  PolicyInitiatePowerActionAPI = 4,
  PolicySetPowerStateAPI = 5,
  PolicyImmediateDozeS4 = 6,
  PolicySystemIdle = 7,
  PolicyDeviceWakeAlarm = 8,
  PolicyDeviceFan = 9,
  PolicyCsBatterySaver = 10,
  PolicyImmediateDozeS4Predicted = 11,
  PolicyImmediateDozeS4PredictedNoWake = 12,
  PolicyImmediateDozeS4AdaptiveBudget = 13,
  PolicyImmediateDozeS4AdaptiveReserveNoWake = 14,
  PolicySystemInitiatedShutdown = 15,
  PolicyDeviceMax = 16,
};

typedef struct _HEAP_OPPORTUNISTIC_LARGE_PAGE_STATS
{
  /* 0x0000 */ volatile unsigned __int64 SmallPagesInUseWithinLarge;
  /* 0x0008 */ volatile unsigned __int64 OpportunisticLargePageCount;
} HEAP_OPPORTUNISTIC_LARGE_PAGE_STATS, *PHEAP_OPPORTUNISTIC_LARGE_PAGE_STATS; /* size: 0x0010 */

typedef struct _KTIMER_EXPIRATION_TRACE
{
  /* 0x0000 */ unsigned __int64 InterruptTime;
  /* 0x0008 */ union _LARGE_INTEGER PerformanceCounter;
} KTIMER_EXPIRATION_TRACE, *PKTIMER_EXPIRATION_TRACE; /* size: 0x0010 */

typedef enum _WORKING_SET_TYPE
{
  WorkingSetTypeUser = 0,
  WorkingSetTypeSession = 1,
  WorkingSetTypeSystemTypes = 2,
  WorkingSetTypeSystemCache = 2,
  WorkingSetTypePagedPool = 3,
  WorkingSetTypeSystemViews = 4,
  WorkingSetTypePagableMaximum = 4,
  WorkingSetTypeSystemPtes = 5,
  WorkingSetTypeKernelStacks = 6,
  WorkingSetTypeNonPagedPool = 7,
  WorkingSetTypeMaximum = 8,
} WORKING_SET_TYPE, *PWORKING_SET_TYPE;

typedef struct _SEP_LOGON_SESSION_REFERENCES
{
  /* 0x0000 */ struct _SEP_LOGON_SESSION_REFERENCES* Next;
  /* 0x0008 */ struct _LUID LogonId;
  /* 0x0010 */ struct _LUID BuddyLogonId;
  /* 0x0018 */ __int64 ReferenceCount;
  /* 0x0020 */ unsigned long Flags;
  /* 0x0024 */ long Padding_92;
  /* 0x0028 */ struct _DEVICE_MAP* pDeviceMap;
  /* 0x0030 */ void* Token;
  /* 0x0038 */ struct _UNICODE_STRING AccountName;
  /* 0x0048 */ struct _UNICODE_STRING AuthorityName;
  /* 0x0058 */ struct _SEP_CACHED_HANDLES_TABLE CachedHandlesTable;
  /* 0x0068 */ struct _EX_PUSH_LOCK SharedDataLock;
  /* 0x0070 */ struct _AUTHZBASEP_CLAIM_ATTRIBUTES_COLLECTION* SharedClaimAttributes;
  /* 0x0078 */ struct _SEP_SID_VALUES_BLOCK* SharedSidValues;
  /* 0x0080 */ struct _OB_HANDLE_REVOCATION_BLOCK RevocationBlock;
  /* 0x00a0 */ struct _EJOB* ServerSilo;
  /* 0x00a8 */ struct _LUID SiblingAuthId;
  /* 0x00b0 */ struct _LIST_ENTRY TokenList;
} SEP_LOGON_SESSION_REFERENCES, *PSEP_LOGON_SESSION_REFERENCES; /* size: 0x00c0 */

typedef enum _ETW_STRING_TOKEN_TYPE
{
  ETW_STRING_TOKEN_EXE = 0,
  ETW_STRING_TOKEN_PACKAGE_ID = 1,
  ETW_STRING_TOKEN_PKG_APP_ID = 2,
  ETW_STRING_TOKEN_CONTAINER = 3,
  ETW_STRING_TOKEN_MAX_COUNT = 4,
} ETW_STRING_TOKEN_TYPE, *PETW_STRING_TOKEN_TYPE;

typedef enum _POP_FX_WORK_POOL_QUEUE
{
  PopFxWorkPoolQueueEmergency = 0,
  PopFxWorkPoolQueuePlugin = 1,
  PopFxWorkPoolQueueMax = 2,
} POP_FX_WORK_POOL_QUEUE, *PPOP_FX_WORK_POOL_QUEUE;

typedef enum _PROCESSOR_CACHE_TYPE
{
  CacheUnified = 0,
  CacheInstruction = 1,
  CacheData = 2,
  CacheTrace = 3,
} PROCESSOR_CACHE_TYPE, *PPROCESSOR_CACHE_TYPE;

typedef struct _CACHE_DESCRIPTOR
{
  /* 0x0000 */ unsigned char Level;
  /* 0x0001 */ unsigned char Associativity;
  /* 0x0002 */ unsigned short LineSize;
  /* 0x0004 */ unsigned long Size;
  /* 0x0008 */ enum _PROCESSOR_CACHE_TYPE Type;
} CACHE_DESCRIPTOR, *PCACHE_DESCRIPTOR; /* size: 0x000c */

typedef enum _POP_SYSTEM_IDLE_EVENT_TYPE
{
  PopSystemIdleEventTypeMonitorOffUserInput = 0,
  PopSystemIdleEventTypeMonitorOnUserInput = 1,
  PopSystemIdleEventTypeUserPresence = 2,
  PopSystemIdleEventTypeResumeFromSxSystemPowerState = 3,
  PopSystemIdleEventTypeMax = 4,
  PopSystemIdleEventTypeInvalid = 4,
} POP_SYSTEM_IDLE_EVENT_TYPE, *PPOP_SYSTEM_IDLE_EVENT_TYPE;

typedef enum _MI_DYNAMICBASE_BITMAP
{
  DynamicBaseBitMapNative = 0,
  DynamicBaseBitMap64Low = 1,
  DynamicBaseBitMap64LowWow = 2,
  DynamicBaseBitMap32WowFirst = 3,
  DynamicBaseBitMap32WowLast = 3,
  DynamicBaseBitMapInvalid = 4,
  DynamicBaseBitMapMax = 4,
} MI_DYNAMICBASE_BITMAP, *PMI_DYNAMICBASE_BITMAP;

typedef struct _PO_POWER_PLANE_PROFILE
{
  /* 0x0000 */ unsigned long ExclusivePowerMw;
  /* 0x0004 */ unsigned long PeakPowerMw;
} PO_POWER_PLANE_PROFILE, *PPO_POWER_PLANE_PROFILE; /* size: 0x0008 */

typedef struct _POP_DEVICE_POWER_PROFILE
{
  /* 0x0000 */ struct _UNICODE_STRING DeviceId;
  /* 0x0010 */ struct _POP_POWER_PLANE* PowerPlane;
  /* 0x0018 */ struct _POP_FX_DEVICE* FxDevice;
  /* 0x0020 */ long PowerDrawMw;
  /* 0x0024 */ struct _PO_POWER_PLANE_PROFILE DxPower[4];
  /* 0x0044 */ long Padding_93;
  /* 0x0048 */ unsigned __int64 ComponentCount;
  /* 0x0050 */ struct _POP_COMPONENT_POWER_PROFILE** Components;
} POP_DEVICE_POWER_PROFILE, *PPOP_DEVICE_POWER_PROFILE; /* size: 0x0058 */

enum PS_CREATE_STATE
{
  PsCreateInitialState = 0,
  PsCreateFailOnFileOpen = 1,
  PsCreateFailOnSectionCreate = 2,
  PsCreateFailExeFormat = 3,
  PsCreateFailMachineMismatch = 4,
  PsCreateFailExeName = 5,
  PsCreateSuccess = 6,
  PsCreateMaximumStates = 7,
};

typedef enum _KTHREAD_PPM_POLICY
{
  ThreadPpmDefault = 0,
  ThreadPpmThrottle = 1,
  ThreadPpmSemiThrottle = 2,
  ThreadPpmNoThrottle = 3,
  MaxThreadPpmPolicy = 4,
} KTHREAD_PPM_POLICY, *PKTHREAD_PPM_POLICY;

typedef struct _MDL
{
  /* 0x0000 */ struct _MDL* Next;
  /* 0x0008 */ short Size;
  /* 0x000a */ short MdlFlags;
  /* 0x000c */ unsigned short AllocationProcessorNumber;
  /* 0x000e */ unsigned short Reserved;
  /* 0x0010 */ struct _EPROCESS* Process;
  /* 0x0018 */ void* MappedSystemVa;
  /* 0x0020 */ void* StartVa;
  /* 0x0028 */ unsigned long ByteCount;
  /* 0x002c */ unsigned long ByteOffset;
} MDL, *PMDL; /* size: 0x0030 */

typedef struct _SEP_SILOSTATE
{
  /* 0x0000 */ struct _SEP_LOGON_SESSION_REFERENCES* SystemLogonSession;
  /* 0x0008 */ struct _SEP_LOGON_SESSION_REFERENCES* AnonymousLogonSession;
  /* 0x0010 */ void* AnonymousLogonToken;
  /* 0x0018 */ void* AnonymousLogonTokenNoEveryone;
  /* 0x0020 */ struct _UNICODE_STRING* UncSystemPaths;
  /* 0x0028 */ struct _CI_NGEN_PATHS* NgenPaths;
} SEP_SILOSTATE, *PSEP_SILOSTATE; /* size: 0x0030 */

typedef enum _KPROCESS_PPM_POLICY
{
  ProcessPpmDefault = 0,
  ProcessPpmThrottle = 1,
  ProcessPpmSemiThrottle = 2,
  ProcessPpmNoThrottle = 3,
  ProcessPpmWindowMinimized = 4,
  ProcessPpmWindowOccluded = 5,
  ProcessPpmWindowVisible = 6,
  ProcessPpmWindowInFocus = 7,
  MaxProcessPpmPolicy = 8,
} KPROCESS_PPM_POLICY, *PKPROCESS_PPM_POLICY;

typedef struct _RTL_AVL_TREE
{
  /* 0x0000 */ struct _RTL_BALANCED_NODE* Root;
} RTL_AVL_TREE, *PRTL_AVL_TREE; /* size: 0x0008 */

typedef struct _MMSESSION
{
  /* 0x0000 */ struct _EX_PUSH_LOCK SystemSpaceViewLock;
  /* 0x0008 */ struct _EX_PUSH_LOCK* SystemSpaceViewLockPointer;
  /* 0x0010 */ struct _RTL_AVL_TREE ViewRoot;
  /* 0x0018 */ unsigned long ViewCount;
  /* 0x001c */ unsigned long BitmapFailures;
} MMSESSION, *PMMSESSION; /* size: 0x0020 */

typedef enum _MI_SHARED_USER_PAGE_TYPES
{
  MiSharedUserPageKernel = 0,
  MiSharedUserPageHypervisor = 1,
  MiSharedUserPageMaximum = 2,
} MI_SHARED_USER_PAGE_TYPES, *PMI_SHARED_USER_PAGE_TYPES;

struct RTL_HP_ENV_HANDLE
{
  /* 0x0000 */ void* h[2];
}; /* size: 0x0010 */

typedef struct _RTL_HEAP_MEMORY_LIMIT_DATA
{
  /* 0x0000 */ unsigned __int64 CommitLimitBytes;
  /* 0x0008 */ unsigned __int64 CommitLimitFailureCode;
  /* 0x0010 */ unsigned __int64 MaxAllocationSizeBytes;
  /* 0x0018 */ unsigned __int64 AllocationLimitFailureCode;
} RTL_HEAP_MEMORY_LIMIT_DATA, *PRTL_HEAP_MEMORY_LIMIT_DATA; /* size: 0x0020 */

typedef union _RTL_RUN_ONCE
{
  union
  {
    /* 0x0000 */ void* Ptr;
    /* 0x0000 */ unsigned __int64 Value;
    /* 0x0000 */ unsigned __int64 State : 2; /* bit position: 0 */
  }; /* size: 0x0008 */
} RTL_RUN_ONCE, *PRTL_RUN_ONCE; /* size: 0x0008 */

typedef struct _RTL_HP_SEG_ALLOC_POLICY
{
  /* 0x0000 */ unsigned __int64 MinLargePages;
  /* 0x0008 */ unsigned __int64 MaxLargePages;
  /* 0x0010 */ unsigned char MinUtilization;
  /* 0x0011 */ char __PADDING__[7];
} RTL_HP_SEG_ALLOC_POLICY, *PRTL_HP_SEG_ALLOC_POLICY; /* size: 0x0018 */

typedef struct _HEAP_RUNTIME_MEMORY_STATS
{
  /* 0x0000 */ volatile unsigned __int64 TotalReservedPages;
  /* 0x0008 */ volatile unsigned __int64 TotalCommittedPages;
  /* 0x0010 */ unsigned __int64 FreeCommittedPages;
  /* 0x0018 */ unsigned __int64 LfhFreeCommittedPages;
  /* 0x0020 */ struct _HEAP_OPPORTUNISTIC_LARGE_PAGE_STATS LargePageStats[2];
  /* 0x0040 */ struct _RTL_HP_SEG_ALLOC_POLICY LargePageUtilizationPolicy;
} HEAP_RUNTIME_MEMORY_STATS, *PHEAP_RUNTIME_MEMORY_STATS; /* size: 0x0058 */

typedef struct _HEAP_SEG_CONTEXT
{
  /* 0x0000 */ unsigned __int64 SegmentMask;
  /* 0x0008 */ unsigned char UnitShift;
  /* 0x0009 */ unsigned char PagesPerUnitShift;
  /* 0x000a */ unsigned char FirstDescriptorIndex;
  /* 0x000b */ unsigned char CachedCommitSoftShift;
  /* 0x000c */ unsigned char CachedCommitHighShift;
  union
  {
    union
    {
      struct /* bitfield */
      {
        /* 0x000d */ unsigned char LargePagePolicy : 3; /* bit position: 0 */
        /* 0x000d */ unsigned char FullDecommit : 1; /* bit position: 3 */
        /* 0x000d */ unsigned char ReleaseEmptySegments : 1; /* bit position: 4 */
      }; /* bitfield */
      /* 0x000d */ unsigned char AllFlags;
    }; /* size: 0x0001 */
  } /* size: 0x0001 */ Flags;
  /* 0x000e */ char Padding_94[2];
  /* 0x0010 */ unsigned long MaxAllocationSize;
  /* 0x0014 */ short OlpStatsOffset;
  /* 0x0016 */ short MemStatsOffset;
  /* 0x0018 */ void* LfhContext;
  /* 0x0020 */ void* VsContext;
  /* 0x0028 */ struct RTL_HP_ENV_HANDLE EnvHandle;
  /* 0x0038 */ void* Heap;
  /* 0x0040 */ unsigned __int64 SegmentLock;
  /* 0x0048 */ struct _LIST_ENTRY SegmentListHead;
  /* 0x0058 */ unsigned __int64 SegmentCount;
  /* 0x0060 */ struct _RTL_RB_TREE FreePageRanges;
  /* 0x0070 */ unsigned __int64 FreeSegmentListLock;
  /* 0x0078 */ struct _SINGLE_LIST_ENTRY FreeSegmentList[2];
  /* 0x0088 */ long __PADDING__[14];
} HEAP_SEG_CONTEXT, *PHEAP_SEG_CONTEXT; /* size: 0x00c0 */

typedef struct _RTL_HP_LFH_CONFIG
{
  /* 0x0000 */ unsigned short MaxBlockSize;
  struct /* bitfield */
  {
    /* 0x0002 */ unsigned short WitholdPageCrossingBlocks : 1; /* bit position: 0 */
    /* 0x0002 */ unsigned short DisableRandomization : 1; /* bit position: 1 */
  }; /* bitfield */
} RTL_HP_LFH_CONFIG, *PRTL_HP_LFH_CONFIG; /* size: 0x0004 */

typedef struct _HEAP_LFH_SUBSEGMENT_STAT
{
  /* 0x0000 */ unsigned char Index;
  /* 0x0001 */ unsigned char Count;
} HEAP_LFH_SUBSEGMENT_STAT, *PHEAP_LFH_SUBSEGMENT_STAT; /* size: 0x0002 */

typedef union _HEAP_LFH_SUBSEGMENT_STATS
{
  union
  {
    /* 0x0000 */ struct _HEAP_LFH_SUBSEGMENT_STAT Buckets[4];
    /* 0x0000 */ void* AllStats;
  }; /* size: 0x0008 */
} HEAP_LFH_SUBSEGMENT_STATS, *PHEAP_LFH_SUBSEGMENT_STATS; /* size: 0x0008 */

typedef struct _HEAP_LFH_CONTEXT
{
  /* 0x0000 */ void* BackendCtx;
  /* 0x0008 */ struct _HEAP_SUBALLOCATOR_CALLBACKS Callbacks;
  /* 0x0030 */ const unsigned char* AffinityModArray;
  /* 0x0038 */ unsigned char MaxAffinity;
  /* 0x0039 */ unsigned char LockType;
  /* 0x003a */ short MemStatsOffset;
  /* 0x003c */ struct _RTL_HP_LFH_CONFIG Config;
  /* 0x0040 */ union _HEAP_LFH_SUBSEGMENT_STATS BucketStats;
  /* 0x0048 */ unsigned __int64 SubsegmentCreationLock;
  /* 0x0050 */ long Padding_95[12];
  /* 0x0080 */ struct _HEAP_LFH_BUCKET* Buckets[129];
  /* 0x0488 */ long __PADDING__[14];
} HEAP_LFH_CONTEXT, *PHEAP_LFH_CONTEXT; /* size: 0x04c0 */

typedef struct _SEGMENT_HEAP
{
  /* 0x0000 */ struct RTL_HP_ENV_HANDLE EnvHandle;
  /* 0x0010 */ unsigned long Signature;
  /* 0x0014 */ unsigned long GlobalFlags;
  /* 0x0018 */ unsigned long Interceptor;
  /* 0x001c */ unsigned short ProcessHeapListIndex;
  /* 0x001e */ unsigned short AllocatedFromMetadata : 1; /* bit position: 0 */
  union
  {
    /* 0x0020 */ struct _RTL_HEAP_MEMORY_LIMIT_DATA CommitLimitData;
    struct
    {
      /* 0x0020 */ unsigned __int64 ReservedMustBeZero1;
      /* 0x0028 */ void* UserContext;
      /* 0x0030 */ unsigned __int64 ReservedMustBeZero2;
      /* 0x0038 */ void* Spare;
    }; /* size: 0x0020 */
  }; /* size: 0x0020 */
  /* 0x0040 */ unsigned __int64 LargeMetadataLock;
  /* 0x0048 */ struct _RTL_RB_TREE LargeAllocMetadata;
  /* 0x0058 */ volatile unsigned __int64 LargeReservedPages;
  /* 0x0060 */ volatile unsigned __int64 LargeCommittedPages;
  /* 0x0068 */ union _RTL_RUN_ONCE StackTraceInitVar;
  /* 0x0070 */ long Padding_96[4];
  /* 0x0080 */ struct _HEAP_RUNTIME_MEMORY_STATS MemStats;
  /* 0x00d8 */ unsigned short GlobalLockCount;
  /* 0x00da */ char Padding_97[2];
  /* 0x00dc */ unsigned long GlobalLockOwner;
  /* 0x00e0 */ unsigned __int64 ContextExtendLock;
  /* 0x00e8 */ unsigned char* AllocatedBase;
  /* 0x00f0 */ unsigned char* UncommittedBase;
  /* 0x00f8 */ unsigned char* ReservedLimit;
  /* 0x0100 */ struct _HEAP_SEG_CONTEXT SegContexts[2];
  /* 0x0280 */ struct _HEAP_VS_CONTEXT VsContext;
  /* 0x0340 */ struct _HEAP_LFH_CONTEXT LfhContext;
} SEGMENT_HEAP, *PSEGMENT_HEAP; /* size: 0x0800 */

typedef struct _SID_AND_ATTRIBUTES_HASH
{
  /* 0x0000 */ unsigned long SidCount;
  /* 0x0004 */ long Padding_98;
  /* 0x0008 */ struct _SID_AND_ATTRIBUTES* SidAttr;
  /* 0x0010 */ unsigned __int64 Hash[32];
} SID_AND_ATTRIBUTES_HASH, *PSID_AND_ATTRIBUTES_HASH; /* size: 0x0110 */

typedef enum _TlgBlob_t
{
  _TlgBlobNone = 0,
  _TlgBlobEnd = 1,
  _TlgBlobProvider = 2,
  _TlgBlobEvent3 = 3,
  _TlgBlobProvider3 = 4,
  _TlgBlobEvent2 = 5,
  _TlgBlobEvent4 = 6,
  _TlgBlobMax = 7,
} TlgBlob_t, *PTlgBlob_t;

typedef enum _KTHREAD_STATE
{
  Initialized = 0,
  Ready = 1,
  Running = 2,
  Standby = 3,
  Terminated = 4,
  Waiting = 5,
  Transition = 6,
  DeferredReady = 7,
  GateWaitObsolete = 8,
  WaitingForProcessInSwap = 9,
} KTHREAD_STATE, *PKTHREAD_STATE;

typedef struct _PEBS_DS_SAVE_AREA64
{
  /* 0x0000 */ unsigned __int64 BtsBufferBase;
  /* 0x0008 */ unsigned __int64 BtsIndex;
  /* 0x0010 */ unsigned __int64 BtsAbsoluteMaximum;
  /* 0x0018 */ unsigned __int64 BtsInterruptThreshold;
  /* 0x0020 */ unsigned __int64 PebsBufferBase;
  /* 0x0028 */ unsigned __int64 PebsIndex;
  /* 0x0030 */ unsigned __int64 PebsAbsoluteMaximum;
  /* 0x0038 */ unsigned __int64 PebsInterruptThreshold;
  /* 0x0040 */ unsigned __int64 PebsGpCounterReset[8];
  /* 0x0080 */ unsigned __int64 PebsFixedCounterReset[4];
} PEBS_DS_SAVE_AREA64, *PPEBS_DS_SAVE_AREA64; /* size: 0x00a0 */

typedef enum _CM_DIRTY_VECTOR_OPERATION
{
  DirtyVectorModified = 0,
  DirtyDataCaptureStart = 1,
  DirtyDataCaptureEnd = 2,
} CM_DIRTY_VECTOR_OPERATION, *PCM_DIRTY_VECTOR_OPERATION;

typedef struct _ALPC_HANDLE_ENTRY
{
  /* 0x0000 */ void* Object;
} ALPC_HANDLE_ENTRY, *PALPC_HANDLE_ENTRY; /* size: 0x0008 */

typedef enum _SYSTEM_PROCESS_CLASSIFICATION
{
  SystemProcessClassificationNormal = 0,
  SystemProcessClassificationSystem = 1,
  SystemProcessClassificationSecureSystem = 2,
  SystemProcessClassificationMemCompression = 3,
  SystemProcessClassificationRegistry = 4,
  SystemProcessClassificationMaximum = 5,
} SYSTEM_PROCESS_CLASSIFICATION, *PSYSTEM_PROCESS_CLASSIFICATION;

typedef struct _FILE_NETWORK_OPEN_INFORMATION
{
  /* 0x0000 */ union _LARGE_INTEGER CreationTime;
  /* 0x0008 */ union _LARGE_INTEGER LastAccessTime;
  /* 0x0010 */ union _LARGE_INTEGER LastWriteTime;
  /* 0x0018 */ union _LARGE_INTEGER ChangeTime;
  /* 0x0020 */ union _LARGE_INTEGER AllocationSize;
  /* 0x0028 */ union _LARGE_INTEGER EndOfFile;
  /* 0x0030 */ unsigned long FileAttributes;
  /* 0x0034 */ long __PADDING__[1];
} FILE_NETWORK_OPEN_INFORMATION, *PFILE_NETWORK_OPEN_INFORMATION; /* size: 0x0038 */

typedef struct _HANDLE_REVOCATION_INFO
{
  /* 0x0000 */ struct _LIST_ENTRY ListEntry;
  /* 0x0010 */ struct _OB_HANDLE_REVOCATION_BLOCK* RevocationBlock;
  /* 0x0018 */ unsigned char AllowHandleRevocation;
  /* 0x0019 */ unsigned char Padding1[3];
  /* 0x001c */ unsigned char Padding2[4];
} HANDLE_REVOCATION_INFO, *PHANDLE_REVOCATION_INFO; /* size: 0x0020 */

typedef struct _OB_EXTENDED_USER_INFO
{
  /* 0x0000 */ void* Context1;
  /* 0x0008 */ void* Context2;
} OB_EXTENDED_USER_INFO, *POB_EXTENDED_USER_INFO; /* size: 0x0010 */

typedef struct _OBJECT_FOOTER
{
  /* 0x0000 */ struct _HANDLE_REVOCATION_INFO HandleRevocationInfo;
  /* 0x0020 */ struct _OB_EXTENDED_USER_INFO ExtendedUserInfo;
} OBJECT_FOOTER, *POBJECT_FOOTER; /* size: 0x0030 */

typedef enum _PNP_DEVICE_ACTION_REQUEST
{
  AssignResources = 0,
  ClearDeviceProblem = 1,
  ClearProblem = 2,
  ClearEjectProblem = 3,
  HaltDevice = 4,
  QueryPowerRelations = 5,
  Rebalance = 6,
  ReenumerateBootDevices = 7,
  ReenumerateDeviceOnly = 8,
  ReenumerateDeviceTree = 9,
  ReenumerateRootDevices = 10,
  RequeryDeviceState = 11,
  ResetDevice = 12,
  ResourceRequirementsChanged = 13,
  RestartEnumeration = 14,
  SetDeviceProblem = 15,
  StartDevice = 16,
  StartSystemDevicesPass0 = 17,
  StartSystemDevicesPass1 = 18,
  NotifyTransportRelationsChange = 19,
  NotifyEjectionRelationsChange = 20,
  ConfigureDevice = 21,
  ConfigureDeviceClass = 22,
  ConfigureDeviceExtensions = 23,
  ConfigureDeviceReset = 24,
  ClearDmaGuardProblem = 25,
  PnpDeviceActionRequestMax = 26,
} PNP_DEVICE_ACTION_REQUEST, *PPNP_DEVICE_ACTION_REQUEST;

typedef struct _RTL_CHASH_ENTRY
{
  /* 0x0000 */ unsigned __int64 Key;
} RTL_CHASH_ENTRY, *PRTL_CHASH_ENTRY; /* size: 0x0008 */

typedef enum _PO_HIBER_FORCE_DISABLE_REASON
{
  PoHiberForceDisableReasonPolicy = 0,
  PoHiberForceDisableReasonGuardedHost = 1,
  PoHiberForceDisableReasonMax = 2,
} PO_HIBER_FORCE_DISABLE_REASON, *PPO_HIBER_FORCE_DISABLE_REASON;

typedef struct _MM_PAGED_POOL_INFO
{
  /* 0x0000 */ struct _EX_PUSH_LOCK Lock;
  /* 0x0008 */ unsigned __int64 MaximumSize;
  /* 0x0010 */ unsigned __int64 AllocatedPagedPool;
} MM_PAGED_POOL_INFO, *PMM_PAGED_POOL_INFO; /* size: 0x0018 */

typedef enum _WOW64_SHARED_INFORMATION
{
  SharedNtdll32LdrInitializeThunk = 0,
  SharedNtdll32KiUserExceptionDispatcher = 1,
  SharedNtdll32KiUserApcDispatcher = 2,
  SharedNtdll32KiUserCallbackDispatcher = 3,
  SharedNtdll32RtlUserThreadStart = 4,
  SharedNtdll32pQueryProcessDebugInformationRemote = 5,
  SharedNtdll32BaseAddress = 6,
  SharedNtdll32LdrSystemDllInitBlock = 7,
  SharedNtdll32RtlpFreezeTimeBias = 8,
  Wow64SharedPageEntriesCount = 9,
} WOW64_SHARED_INFORMATION, *PWOW64_SHARED_INFORMATION;

typedef struct _MMPTE_HARDWARE
{
  struct /* bitfield */
  {
    /* 0x0000 */ unsigned __int64 Valid : 1; /* bit position: 0 */
    /* 0x0000 */ unsigned __int64 Dirty1 : 1; /* bit position: 1 */
    /* 0x0000 */ unsigned __int64 Owner : 1; /* bit position: 2 */
    /* 0x0000 */ unsigned __int64 WriteThrough : 1; /* bit position: 3 */
    /* 0x0000 */ unsigned __int64 CacheDisable : 1; /* bit position: 4 */
    /* 0x0000 */ unsigned __int64 Accessed : 1; /* bit position: 5 */
    /* 0x0000 */ unsigned __int64 Dirty : 1; /* bit position: 6 */
    /* 0x0000 */ unsigned __int64 LargePage : 1; /* bit position: 7 */
    /* 0x0000 */ unsigned __int64 Global : 1; /* bit position: 8 */
    /* 0x0000 */ unsigned __int64 CopyOnWrite : 1; /* bit position: 9 */
    /* 0x0000 */ unsigned __int64 Unused : 1; /* bit position: 10 */
    /* 0x0000 */ unsigned __int64 Write : 1; /* bit position: 11 */
    /* 0x0000 */ unsigned __int64 PageFrameNumber : 36; /* bit position: 12 */
    /* 0x0000 */ unsigned __int64 ReservedForHardware : 4; /* bit position: 48 */
    /* 0x0000 */ unsigned __int64 ReservedForSoftware : 4; /* bit position: 52 */
    /* 0x0000 */ unsigned __int64 WsleAge : 4; /* bit position: 56 */
    /* 0x0000 */ unsigned __int64 WsleProtection : 3; /* bit position: 60 */
    /* 0x0000 */ unsigned __int64 NoExecute : 1; /* bit position: 63 */
  }; /* bitfield */
} MMPTE_HARDWARE, *PMMPTE_HARDWARE; /* size: 0x0008 */

typedef struct _MMPTE_PROTOTYPE
{
  struct /* bitfield */
  {
    /* 0x0000 */ unsigned __int64 Valid : 1; /* bit position: 0 */
    /* 0x0000 */ unsigned __int64 DemandFillProto : 1; /* bit position: 1 */
    /* 0x0000 */ unsigned __int64 HiberVerifyConverted : 1; /* bit position: 2 */
    /* 0x0000 */ unsigned __int64 ReadOnly : 1; /* bit position: 3 */
    /* 0x0000 */ unsigned __int64 SwizzleBit : 1; /* bit position: 4 */
    /* 0x0000 */ unsigned __int64 Protection : 5; /* bit position: 5 */
    /* 0x0000 */ unsigned __int64 Prototype : 1; /* bit position: 10 */
    /* 0x0000 */ unsigned __int64 Combined : 1; /* bit position: 11 */
    /* 0x0000 */ unsigned __int64 Unused1 : 4; /* bit position: 12 */
    /* 0x0000 */ __int64 ProtoAddress : 48; /* bit position: 16 */
  }; /* bitfield */
} MMPTE_PROTOTYPE, *PMMPTE_PROTOTYPE; /* size: 0x0008 */

typedef struct _MMPTE_SOFTWARE
{
  struct /* bitfield */
  {
    /* 0x0000 */ unsigned __int64 Valid : 1; /* bit position: 0 */
    /* 0x0000 */ unsigned __int64 PageFileReserved : 1; /* bit position: 1 */
    /* 0x0000 */ unsigned __int64 PageFileAllocated : 1; /* bit position: 2 */
    /* 0x0000 */ unsigned __int64 ColdPage : 1; /* bit position: 3 */
    /* 0x0000 */ unsigned __int64 SwizzleBit : 1; /* bit position: 4 */
    /* 0x0000 */ unsigned __int64 Protection : 5; /* bit position: 5 */
    /* 0x0000 */ unsigned __int64 Prototype : 1; /* bit position: 10 */
    /* 0x0000 */ unsigned __int64 Transition : 1; /* bit position: 11 */
    /* 0x0000 */ unsigned __int64 PageFileLow : 4; /* bit position: 12 */
    /* 0x0000 */ unsigned __int64 UsedPageTableEntries : 10; /* bit position: 16 */
    /* 0x0000 */ unsigned __int64 ShadowStack : 1; /* bit position: 26 */
    /* 0x0000 */ unsigned __int64 Unused : 5; /* bit position: 27 */
    /* 0x0000 */ unsigned __int64 PageFileHigh : 32; /* bit position: 32 */
  }; /* bitfield */
} MMPTE_SOFTWARE, *PMMPTE_SOFTWARE; /* size: 0x0008 */

typedef struct _MMPTE_TIMESTAMP
{
  struct /* bitfield */
  {
    /* 0x0000 */ unsigned __int64 MustBeZero : 1; /* bit position: 0 */
    /* 0x0000 */ unsigned __int64 Unused : 3; /* bit position: 1 */
    /* 0x0000 */ unsigned __int64 SwizzleBit : 1; /* bit position: 4 */
    /* 0x0000 */ unsigned __int64 Protection : 5; /* bit position: 5 */
    /* 0x0000 */ unsigned __int64 Prototype : 1; /* bit position: 10 */
    /* 0x0000 */ unsigned __int64 Transition : 1; /* bit position: 11 */
    /* 0x0000 */ unsigned __int64 PageFileLow : 4; /* bit position: 12 */
    /* 0x0000 */ unsigned __int64 Reserved : 16; /* bit position: 16 */
    /* 0x0000 */ unsigned __int64 GlobalTimeStamp : 32; /* bit position: 32 */
  }; /* bitfield */
} MMPTE_TIMESTAMP, *PMMPTE_TIMESTAMP; /* size: 0x0008 */

typedef struct _MMPTE_TRANSITION
{
  struct /* bitfield */
  {
    /* 0x0000 */ unsigned __int64 Valid : 1; /* bit position: 0 */
    /* 0x0000 */ unsigned __int64 Write : 1; /* bit position: 1 */
    /* 0x0000 */ unsigned __int64 Spare : 1; /* bit position: 2 */
    /* 0x0000 */ unsigned __int64 IoTracker : 1; /* bit position: 3 */
    /* 0x0000 */ unsigned __int64 SwizzleBit : 1; /* bit position: 4 */
    /* 0x0000 */ unsigned __int64 Protection : 5; /* bit position: 5 */
    /* 0x0000 */ unsigned __int64 Prototype : 1; /* bit position: 10 */
    /* 0x0000 */ unsigned __int64 Transition : 1; /* bit position: 11 */
    /* 0x0000 */ unsigned __int64 PageFrameNumber : 36; /* bit position: 12 */
    /* 0x0000 */ unsigned __int64 Unused : 16; /* bit position: 48 */
  }; /* bitfield */
} MMPTE_TRANSITION, *PMMPTE_TRANSITION; /* size: 0x0008 */

typedef struct _MMPTE_SUBSECTION
{
  struct /* bitfield */
  {
    /* 0x0000 */ unsigned __int64 Valid : 1; /* bit position: 0 */
    /* 0x0000 */ unsigned __int64 Unused0 : 3; /* bit position: 1 */
    /* 0x0000 */ unsigned __int64 SwizzleBit : 1; /* bit position: 4 */
    /* 0x0000 */ unsigned __int64 Protection : 5; /* bit position: 5 */
    /* 0x0000 */ unsigned __int64 Prototype : 1; /* bit position: 10 */
    /* 0x0000 */ unsigned __int64 ColdPage : 1; /* bit position: 11 */
    /* 0x0000 */ unsigned __int64 Unused1 : 3; /* bit position: 12 */
    /* 0x0000 */ unsigned __int64 ExecutePrivilege : 1; /* bit position: 15 */
    /* 0x0000 */ __int64 SubsectionAddress : 48; /* bit position: 16 */
  }; /* bitfield */
} MMPTE_SUBSECTION, *PMMPTE_SUBSECTION; /* size: 0x0008 */

typedef struct _MMPTE_LIST
{
  struct /* bitfield */
  {
    /* 0x0000 */ unsigned __int64 Valid : 1; /* bit position: 0 */
    /* 0x0000 */ unsigned __int64 OneEntry : 1; /* bit position: 1 */
    /* 0x0000 */ unsigned __int64 filler0 : 2; /* bit position: 2 */
    /* 0x0000 */ unsigned __int64 SwizzleBit : 1; /* bit position: 4 */
    /* 0x0000 */ unsigned __int64 Protection : 5; /* bit position: 5 */
    /* 0x0000 */ unsigned __int64 Prototype : 1; /* bit position: 10 */
    /* 0x0000 */ unsigned __int64 Transition : 1; /* bit position: 11 */
    /* 0x0000 */ unsigned __int64 filler1 : 16; /* bit position: 12 */
    /* 0x0000 */ unsigned __int64 NextEntry : 36; /* bit position: 28 */
  }; /* bitfield */
} MMPTE_LIST, *PMMPTE_LIST; /* size: 0x0008 */

typedef struct _SLIST_ENTRY
{
  /* 0x0000 */ struct _SLIST_ENTRY* Next;
  /* 0x0008 */ long __PADDING__[2];
} SLIST_ENTRY, *PSLIST_ENTRY; /* size: 0x0010 */

typedef struct _ETW_APC_ENTRY
{
  union
  {
    /* 0x0000 */ struct _SLIST_ENTRY SListEntry;
    /* 0x0000 */ struct _KAPC Apc;
  }; /* size: 0x0058 */
  /* 0x0058 */ long __PADDING__[2];
} ETW_APC_ENTRY, *PETW_APC_ENTRY; /* size: 0x0060 */

typedef enum _MI_KSTACK_TYPE
{
  MiRegularKstack = 0,
  MiShortLivedKstack = 1,
  MiMaximumKstack = 2,
} MI_KSTACK_TYPE, *PMI_KSTACK_TYPE;

typedef enum _ETW_GUID_TYPE
{
  EtwTraceGuidType = 0,
  EtwNotificationGuidType = 1,
  EtwGroupGuidType = 2,
  EtwGuidTypeMax = 3,
} ETW_GUID_TYPE, *PETW_GUID_TYPE;

typedef struct _POP_FX_ACTIVE_TIME_ACCOUNTING
{
  /* 0x0000 */ unsigned __int64 Total;
  /* 0x0008 */ unsigned __int64 Unattributed;
  /* 0x0010 */ unsigned __int64 Buckets[5];
  /* 0x0038 */ unsigned __int64 PerBucket[5];
} POP_FX_ACTIVE_TIME_ACCOUNTING, *PPOP_FX_ACTIVE_TIME_ACCOUNTING; /* size: 0x0060 */

typedef struct _POP_FX_ACCOUNTING
{
  /* 0x0000 */ unsigned __int64 Lock;
  /* 0x0008 */ unsigned char Active;
  /* 0x0009 */ char Padding_99[3];
  /* 0x000c */ unsigned long DripsRequiredState;
  /* 0x0010 */ long Level;
  /* 0x0014 */ long Padding_100;
  /* 0x0018 */ __int64 ActiveStamp;
  /* 0x0020 */ struct _POP_FX_ACTIVE_TIME_ACCOUNTING CsActiveTimeAccounting;
  /* 0x0080 */ struct _POP_FX_ACTIVE_TIME_ACCOUNTING CsCriticalActiveTimeAccounting;
} POP_FX_ACCOUNTING, *PPOP_FX_ACCOUNTING; /* size: 0x00e0 */

typedef struct _KTIMER_TABLE_ENTRY
{
  /* 0x0000 */ unsigned __int64 Lock;
  /* 0x0008 */ struct _LIST_ENTRY Entry;
  /* 0x0018 */ union _ULARGE_INTEGER Time;
} KTIMER_TABLE_ENTRY, *PKTIMER_TABLE_ENTRY; /* size: 0x0020 */

typedef enum _POP_DEEP_SLEEP_DISENGAGE_REASON
{
  PopDeepSleepDisengageReasonInactive = 0,
  PopDeepSleepDisengageReasonNonAoAc = 1,
  PopDeepSleepDisengageReasonPendingIrps = 2,
  PopDeepSleepDisengageReasonPowerSettings = 3,
  PopDeepSleepDisengageReasonDozeS4WorkerQueued = 4,
  PopDeepSleepDisengageReasonSystemPowerTransition = 5,
  PopDeepSleepDisengageReasonDeviceBlockingDrips = 6,
  PopDeepSleepDisengageReasonAcpi = 7,
  PopDeepSleepDisengageReasonDirectedDripsTransition = 8,
  PopDeepSleepDisengageReasonPepPreVeto = 9,
  PopDeepSleepDisengageReasonMax = 10,
} POP_DEEP_SLEEP_DISENGAGE_REASON, *PPOP_DEEP_SLEEP_DISENGAGE_REASON;

typedef enum _KI_CALLBACK
{
  KiCallbackNmi = 0,
  KiCallbackBound = 1,
  KiCallbackSx = 2,
  KiCallbackCount = 3,
  KiFirstCallback = 0,
} KI_CALLBACK, *PKI_CALLBACK;

typedef struct _KSHARED_READY_QUEUE
{
  /* 0x0000 */ unsigned __int64 Lock;
  /* 0x0008 */ unsigned long ReadySummary;
  /* 0x000c */ long Padding_101;
  /* 0x0010 */ struct _LIST_ENTRY ReadyListHead[32];
  /* 0x0210 */ char RunningSummary[64];
  /* 0x0250 */ unsigned char Span;
  /* 0x0251 */ unsigned char LowProcIndex;
  /* 0x0252 */ unsigned char QueueIndex;
  /* 0x0253 */ unsigned char ProcCount;
  /* 0x0254 */ unsigned char ScanOwner;
  /* 0x0255 */ unsigned char Spare[3];
  /* 0x0258 */ unsigned __int64 Affinity;
  /* 0x0260 */ unsigned long ReadyThreadCount;
  /* 0x0264 */ long Padding_102;
  /* 0x0268 */ unsigned __int64 ReadyQueueExpectedRunTime;
} KSHARED_READY_QUEUE, *PKSHARED_READY_QUEUE; /* size: 0x0270 */

enum INTERRUPT_CONNECTION_TYPE
{
  InterruptTypeControllerInput = 0,
  InterruptTypeXapicMessage = 1,
  InterruptTypeHypertransport = 2,
  InterruptTypeMessageRequest = 3,
};

enum HAL_APIC_DESTINATION_MODE
{
  ApicDestinationModePhysical = 1,
  ApicDestinationModeLogicalFlat = 2,
  ApicDestinationModeLogicalClustered = 3,
  ApicDestinationModeUnknown = 4,
};

typedef struct _tlgProviderMetadata_t
{
  /* 0x0000 */ unsigned char Type;
  /* 0x0001 */ struct _GUID ProviderId;
  /* 0x0011 */ unsigned short RemainingSize;
} tlgProviderMetadata_t, *PtlgProviderMetadata_t; /* size: 0x0013 */

typedef struct _RTLP_HP_METADATA_HEAP_CTX
{
  /* 0x0000 */ struct _SEGMENT_HEAP* Heap;
  /* 0x0008 */ union _RTL_RUN_ONCE InitOnce;
} RTLP_HP_METADATA_HEAP_CTX, *PRTLP_HP_METADATA_HEAP_CTX; /* size: 0x0010 */

typedef struct _MMPTE
{
  union
  {
    union
    {
      /* 0x0000 */ unsigned __int64 Long;
      /* 0x0000 */ volatile unsigned __int64 VolatileLong;
      /* 0x0000 */ struct _MMPTE_HARDWARE Hard;
      /* 0x0000 */ struct _MMPTE_PROTOTYPE Proto;
      /* 0x0000 */ struct _MMPTE_SOFTWARE Soft;
      /* 0x0000 */ struct _MMPTE_TIMESTAMP TimeStamp;
      /* 0x0000 */ struct _MMPTE_TRANSITION Trans;
      /* 0x0000 */ struct _MMPTE_SUBSECTION Subsect;
      /* 0x0000 */ struct _MMPTE_LIST List;
    }; /* size: 0x0008 */
  } /* size: 0x0008 */ u;
} MMPTE, *PMMPTE; /* size: 0x0008 */

typedef struct _ETW_STACK_TRACE_BLOCK
{
  /* 0x0000 */ union _LARGE_INTEGER RelatedTimestamp;
  /* 0x0008 */ struct _ETHREAD* Thread;
  /* 0x0010 */ struct _KDPC StackWalkDpc;
  /* 0x0050 */ union _SLIST_HEADER ApcListHead;
  /* 0x0060 */ struct _ETW_APC_ENTRY* ApcEntry;
  /* 0x0068 */ unsigned long ApcEntryCount;
  /* 0x006c */ long Flags;
  /* 0x0070 */ long ApcCount;
  /* 0x0074 */ long MaxApcCount;
  /* 0x0078 */ long __PADDING__[2];
} ETW_STACK_TRACE_BLOCK, *PETW_STACK_TRACE_BLOCK; /* size: 0x0080 */

typedef enum _KWAIT_STATE
{
  WaitInProgress = 0,
  WaitCommitted = 1,
  WaitAborted = 2,
  WaitSuspendInProgress = 3,
  WaitSuspended = 4,
  WaitResumeInProgress = 5,
  WaitResumeAborted = 6,
  WaitFirstSuspendState = 3,
  WaitLastSuspendState = 6,
  MaximumWaitState = 7,
} KWAIT_STATE, *PKWAIT_STATE;

typedef enum _MI_SUBVAD_LISTS
{
  MiSubVadPebTebAny = 0,
  MiSubVadPebTebBelow4gb = 1,
  MiSubVadMaximum = 2,
} MI_SUBVAD_LISTS, *PMI_SUBVAD_LISTS;

struct _ASSEMBLY_STORAGE_MAP;

typedef struct _LAZY_WRITER
{
  /* 0x0000 */ struct _KDPC ScanDpc;
  /* 0x0040 */ struct _KTIMER ScanTimer;
  /* 0x0080 */ unsigned char ScanActive;
  /* 0x0081 */ unsigned char OtherWork;
  /* 0x0082 */ unsigned char PendingTeardownScan;
  /* 0x0083 */ unsigned char PendingPeriodicScan;
  /* 0x0084 */ unsigned char PendingLowMemoryScan;
  /* 0x0085 */ unsigned char PendingPowerScan;
  /* 0x0086 */ unsigned char PendingCoalescingFlushScan;
  /* 0x0087 */ char __PADDING__[1];
} LAZY_WRITER, *PLAZY_WRITER; /* size: 0x0088 */

typedef enum _MI_ASSIGNED_REGION_TYPES
{
  AssignedRegionNonPagedPool = 0,
  AssignedRegionPagedPool = 1,
  AssignedRegionSystemCache = 2,
  AssignedRegionSystemPtes = 3,
  AssignedRegionUltraZero = 4,
  AssignedRegionPfnDatabase = 5,
  AssignedRegionCfg = 6,
  AssignedRegionHyperSpace = 7,
  AssignedRegionKernelStacks = 8,
  AssignedRegionPageTables = 9,
  AssignedRegionSession = 10,
  AssignedRegionSecureNonPagedPool = 11,
  AssignedRegionSystemImages = 12,
  AssignedRegionMaximum = 13,
} MI_ASSIGNED_REGION_TYPES, *PMI_ASSIGNED_REGION_TYPES;

typedef enum _POLICY_AUDIT_EVENT_TYPE
{
  AuditCategorySystem = 0,
  AuditCategoryLogon = 1,
  AuditCategoryObjectAccess = 2,
  AuditCategoryPrivilegeUse = 3,
  AuditCategoryDetailedTracking = 4,
  AuditCategoryPolicyChange = 5,
  AuditCategoryAccountManagement = 6,
  AuditCategoryDirectoryServiceAccess = 7,
  AuditCategoryAccountLogon = 8,
} POLICY_AUDIT_EVENT_TYPE, *PPOLICY_AUDIT_EVENT_TYPE;

enum KD_NAMESPACE_ENUM
{
  KdNameSpacePCI = 0,
  KdNameSpaceACPI = 1,
  KdNameSpaceAny = 2,
  KdNameSpaceNone = 3,
  KdNameSpaceMax = 4,
};

typedef enum _PO_CS_DEVICE_NOTIFICATION_TYPE
{
  PoCsDeviceNotificationStorage = 0,
  PoCsDeviceNotificationWiFi = 1,
  PoCsDeviceNotificationMbn = 2,
  PoCsDeviceNotificationAudio = 3,
  PoCsDeviceNotificationEthernet = 4,
  PoCsDeviceNotificationMaximum = 5,
} PO_CS_DEVICE_NOTIFICATION_TYPE, *PPO_CS_DEVICE_NOTIFICATION_TYPE;

typedef enum _MI_VAD_64K_TYPES
{
  MiVad64KPrivate = 0,
  MiVad64KShared = 1,
  MiVad64KTypes = 2,
} MI_VAD_64K_TYPES, *PMI_VAD_64K_TYPES;

typedef struct _tlgProvider_t
{
  /* 0x0000 */ unsigned int LevelPlus1;
  /* 0x0004 */ long Padding_103;
  /* 0x0008 */ const unsigned short* ProviderMetadataPtr;
  /* 0x0010 */ unsigned __int64 KeywordAny;
  /* 0x0018 */ unsigned __int64 KeywordAll;
  /* 0x0020 */ unsigned __int64 RegHandle;
  /* 0x0028 */ void* EnableCallback /* function */;
  /* 0x0030 */ void* CallbackContext;
} tlgProvider_t, *PtlgProvider_t; /* size: 0x0038 */

typedef enum _EXQUEUEINDEX
{
  ExPoolUntrusted = 0,
  IoPoolUntrusted = 1,
  ExPoolMax = 8,
} EXQUEUEINDEX, *PEXQUEUEINDEX;

typedef struct _EXT_SET_PARAMETERS_V0
{
  /* 0x0000 */ unsigned long Version;
  /* 0x0004 */ unsigned long Reserved;
  /* 0x0008 */ __int64 NoWakeTolerance;
} EXT_SET_PARAMETERS_V0, *PEXT_SET_PARAMETERS_V0; /* size: 0x0010 */

typedef enum _KPROCESS_STATE
{
  ProcessInMemory = 0,
  ProcessOutOfMemory = 1,
  ProcessInTransition = 2,
  ProcessOutTransition = 3,
  ProcessInSwap = 4,
  ProcessOutSwap = 5,
  ProcessRetryOutSwap = 6,
  ProcessAllSwapStates = 7,
} KPROCESS_STATE, *PKPROCESS_STATE;

typedef enum _KENLISTMENT_STATE
{
  KEnlistmentUninitialized = 0,
  KEnlistmentActive = 256,
  KEnlistmentPreparing = 257,
  KEnlistmentPrepared = 258,
  KEnlistmentInDoubt = 259,
  KEnlistmentCommitted = 260,
  KEnlistmentCommittedNotify = 261,
  KEnlistmentCommitRequested = 262,
  KEnlistmentAborted = 263,
  KEnlistmentDelegated = 264,
  KEnlistmentDelegatedDisconnected = 265,
  KEnlistmentPrePreparing = 266,
  KEnlistmentForgotten = 267,
  KEnlistmentRecovering = 268,
  KEnlistmentAborting = 269,
  KEnlistmentReadOnly = 270,
  KEnlistmentOutcomeUnavailable = 271,
  KEnlistmentOffline = 272,
  KEnlistmentPrePrepared = 273,
  KEnlistmentInitialized = 274,
} KENLISTMENT_STATE, *PKENLISTMENT_STATE;

typedef enum _MACHINE_CHECK_NESTING_LEVEL
{
  McheckNormal = 0,
  McheckNmi = 1,
  McheckNestingLevels = 2,
} MACHINE_CHECK_NESTING_LEVEL, *PMACHINE_CHECK_NESTING_LEVEL;

typedef struct _ETW_FILTER_STRING_TOKEN_ELEMENT
{
  /* 0x0000 */ unsigned short Length;
  /* 0x0002 */ char Padding_104[6];
  /* 0x0008 */ wchar_t* String;
} ETW_FILTER_STRING_TOKEN_ELEMENT, *PETW_FILTER_STRING_TOKEN_ELEMENT; /* size: 0x0010 */

typedef enum _ADD_DRIVER_STAGE
{
  ClassConfigFilters = 0,
  LowerDeviceFilters = 1,
  LowerClassFilters = 2,
  DeviceService = 3,
  UpperDeviceFilters = 4,
  UpperClassFilters = 5,
  MaximumAddStage = 6,
} ADD_DRIVER_STAGE, *PADD_DRIVER_STAGE;

typedef enum _INVPCID_TYPE
{
  InvpcidIndividualAddress = 0,
  InvpcidSingleContext = 1,
  InvpcidAllContextAndGlobals = 2,
  InvpcidAllContext = 3,
} INVPCID_TYPE, *PINVPCID_TYPE;

enum TlgOut_t
{
  TlgOutNULL = 0,
  TlgOutNOPRINT = 1,
  TlgOutSTRING = 2,
  TlgOutBOOLEAN = 3,
  TlgOutHEX = 4,
  TlgOutPID = 5,
  TlgOutTID = 6,
  TlgOutPORT = 7,
  TlgOutIPV4 = 8,
  TlgOutIPV6 = 9,
  TlgOutSOCKETADDRESS = 10,
  TlgOutXML = 11,
  TlgOutJSON = 12,
  TlgOutWIN32ERROR = 13,
  TlgOutNTSTATUS = 14,
  TlgOutHRESULT = 15,
  TlgOutFILETIME = 16,
  TlgOutSIGNED = 17,
  TlgOutUNSIGNED = 18,
  TlgOutUTF8 = 35,
  TlgOutPKCS7_WITH_TYPE_INFO = 36,
  TlgOutCODE_POINTER = 37,
  TlgOutDATETIME_UTC = 38,
  _TlgOutMax = 39,
  _TlgOutChain = 128,
  _TlgOutTypeMask = 127,
};

typedef enum _MI_IO_PFN_TYPE
{
  MiIoPfnProbes = 0,
  MiIoPfnMaps = 1,
  MiIoPfnUnmapped = 2,
  MiMaximumIoPfnType = 3,
} MI_IO_PFN_TYPE, *PMI_IO_PFN_TYPE;

typedef enum _PNP_REBALANCE_REASON
{
  RebalanceReasonUnknown = 0,
  RebalanceReasonRequirementsChanged = 1,
  RebalanceReasonNewDevice = 2,
} PNP_REBALANCE_REASON, *PPNP_REBALANCE_REASON;

typedef enum _PNP_REBALANCE_FAILURE
{
  RebalanceFailureNone = 0,
  RebalanceFailureDisabled = 1,
  RebalanceFailureNoMemory = 2,
  RebalanceFailureQueryStopUnexpectedVeto = 3,
  RebalanceFailureNoRequirements = 4,
  RebalanceFailureNoCandidates = 5,
  RebalanceFailureNoConfiguration = 6,
} PNP_REBALANCE_FAILURE, *PPNP_REBALANCE_FAILURE;

typedef enum _PNP_DEVNODE_QUERY_REBALANCE_VETO_REASON
{
  DeviceQueryRebalanceSucceeded = 0,
  DeviceQueryStopFailed = 1,
  DeviceFailedGetNewResourceRequirement = 2,
  DeviceInUnexpectedState = 3,
  DeviceNotSupportQueryRebalance = 4,
} PNP_DEVNODE_QUERY_REBALANCE_VETO_REASON, *PPNP_DEVNODE_QUERY_REBALANCE_VETO_REASON;

typedef struct _PNP_RESOURCE_CONFLICT_TRACE_CONTEXT
{
  /* 0x0000 */ unsigned char ResourceType;
  /* 0x0001 */ char Padding_105[3];
  /* 0x0004 */ unsigned long AlternativeCount;
  /* 0x0008 */ struct _IO_RESOURCE_DESCRIPTOR* ResourceRequests;
  /* 0x0010 */ void* ArbiterInstance;
} PNP_RESOURCE_CONFLICT_TRACE_CONTEXT, *PPNP_RESOURCE_CONFLICT_TRACE_CONTEXT; /* size: 0x0018 */

typedef struct _PNP_REBALANCE_TRACE_CONTEXT
{
  /* 0x0000 */ unsigned long DeviceCount;
  /* 0x0004 */ unsigned long RebalancePhase;
  /* 0x0008 */ enum _PNP_REBALANCE_REASON Reason[2];
  /* 0x0010 */ enum _PNP_REBALANCE_FAILURE Failure[2];
  /* 0x0018 */ struct _DEVICE_NODE* SubtreeRoot;
  /* 0x0020 */ unsigned char SubtreeIncludesRoot;
  /* 0x0021 */ char Padding_106[7];
  /* 0x0028 */ struct _DEVICE_NODE* TriggerRoot;
  /* 0x0030 */ unsigned char RebalanceDueToDynamicPartitioning;
  /* 0x0031 */ char Padding_107[7];
  /* 0x0038 */ unsigned __int64 BeginTime;
  /* 0x0040 */ struct _DEVICE_NODE* VetoNode[2];
  /* 0x0050 */ enum _PNP_DEVNODE_QUERY_REBALANCE_VETO_REASON VetoQueryRebalanceReason[2];
  /* 0x0058 */ struct _PNP_RESOURCE_CONFLICT_TRACE_CONTEXT ConflictContext;
} PNP_REBALANCE_TRACE_CONTEXT, *PPNP_REBALANCE_TRACE_CONTEXT; /* size: 0x0070 */

typedef enum _LDR_DDAG_STATE
{
  LdrModulesMerged = -5,
  LdrModulesInitError = -4,
  LdrModulesSnapError = -3,
  LdrModulesUnloaded = -2,
  LdrModulesUnloading = -1,
  LdrModulesPlaceHolder = 0,
  LdrModulesMapping = 1,
  LdrModulesMapped = 2,
  LdrModulesWaitingForDependencies = 3,
  LdrModulesSnapping = 4,
  LdrModulesSnapped = 5,
  LdrModulesCondensed = 6,
  LdrModulesReadyToInit = 7,
  LdrModulesInitializing = 8,
  LdrModulesReadyToRun = 9,
} LDR_DDAG_STATE, *PLDR_DDAG_STATE;

typedef enum _TRACE_INFORMATION_CLASS
{
  TraceIdClass = 0,
  TraceHandleClass = 1,
  TraceEnableFlagsClass = 2,
  TraceEnableLevelClass = 3,
  GlobalLoggerHandleClass = 4,
  EventLoggerHandleClass = 5,
  AllLoggerHandlesClass = 6,
  TraceHandleByNameClass = 7,
  LoggerEventsLostClass = 8,
  TraceSessionSettingsClass = 9,
  LoggerEventsLoggedClass = 10,
  DiskIoNotifyRoutinesClass = 11,
  TraceInformationClassReserved1 = 12,
  AllPossibleNotifyRoutinesClass = 12,
  FltIoNotifyRoutinesClass = 13,
  TraceInformationClassReserved2 = 14,
  WdfNotifyRoutinesClass = 15,
  MaxTraceInformationClass = 16,
} TRACE_INFORMATION_CLASS, *PTRACE_INFORMATION_CLASS;

typedef enum _MI_PARTITION_THREAD
{
  MiZeroPageThreadSlot = 0,
  MiRebuildLargePagesThreadSlot = 1,
  MiPartitionWorkingSetManagerSlot = 2,
  MiDereferenceSegmentThreadSlot = 3,
  MiModifiedPageWriterSlot = 4,
  MiMappedPageWriterSlot = 5,
  MiNumberOfPartitionThreads = 6,
} MI_PARTITION_THREAD, *PMI_PARTITION_THREAD;

typedef enum _CM_SHARE_DISPOSITION
{
  CmResourceShareUndetermined = 0,
  CmResourceShareDeviceExclusive = 1,
  CmResourceShareDriverExclusive = 2,
  CmResourceShareShared = 3,
} CM_SHARE_DISPOSITION, *PCM_SHARE_DISPOSITION;

typedef struct _ETW_FILTER_STRING_TOKEN
{
  /* 0x0000 */ unsigned short Count;
  /* 0x0002 */ char Padding_108[6];
  /* 0x0008 */ struct _ETW_FILTER_STRING_TOKEN_ELEMENT Tokens[1];
} ETW_FILTER_STRING_TOKEN, *PETW_FILTER_STRING_TOKEN; /* size: 0x0018 */

typedef enum _PERFINFO_MM_STAT
{
  PerfInfoMMStatNotUsed = 0,
  PerfInfoMMStatAggregatePageCombine = 1,
  PerfInfoMMStatIterationPageCombine = 2,
  PerfInfoMMStatMax = 3,
} PERFINFO_MM_STAT, *PPERFINFO_MM_STAT;

typedef enum _MI_WRITE_TYPES
{
  WriteTypeCached = 0,
  WriteTypeNonTemporal = 1,
  WriteTypeMaximum = 2,
} MI_WRITE_TYPES, *PMI_WRITE_TYPES;

typedef union _PPM_POLICY_SETTINGS_MASK
{
  union
  {
    /* 0x0000 */ unsigned __int64 Value;
    struct
    {
      struct /* bitfield */
      {
        /* 0x0000 */ unsigned long PerfDecreaseTime : 1; /* bit position: 0 */
        /* 0x0000 */ unsigned long PerfIncreaseTime : 1; /* bit position: 1 */
        /* 0x0000 */ unsigned long PerfDecreasePolicy : 1; /* bit position: 2 */
        /* 0x0000 */ unsigned long PerfIncreasePolicy : 1; /* bit position: 3 */
        /* 0x0000 */ unsigned long PerfDecreaseThreshold : 1; /* bit position: 4 */
        /* 0x0000 */ unsigned long PerfIncreaseThreshold : 1; /* bit position: 5 */
        /* 0x0000 */ unsigned long PerfMinPolicy : 1; /* bit position: 6 */
        /* 0x0000 */ unsigned long PerfMaxPolicy : 1; /* bit position: 7 */
        /* 0x0000 */ unsigned long PerfTimeCheck : 1; /* bit position: 8 */
        /* 0x0000 */ unsigned long PerfBoostPolicy : 1; /* bit position: 9 */
        /* 0x0000 */ unsigned long PerfBoostMode : 1; /* bit position: 10 */
        /* 0x0000 */ unsigned long AllowThrottling : 1; /* bit position: 11 */
        /* 0x0000 */ unsigned long PerfHistoryCount : 1; /* bit position: 12 */
        /* 0x0000 */ unsigned long ParkingPerfState : 1; /* bit position: 13 */
        /* 0x0000 */ unsigned long LatencyHintPerf : 1; /* bit position: 14 */
        /* 0x0000 */ unsigned long LatencyHintUnpark : 1; /* bit position: 15 */
        /* 0x0000 */ unsigned long CoreParkingMinCores : 1; /* bit position: 16 */
        /* 0x0000 */ unsigned long CoreParkingMaxCores : 1; /* bit position: 17 */
        /* 0x0000 */ unsigned long CoreParkingDecreasePolicy : 1; /* bit position: 18 */
        /* 0x0000 */ unsigned long CoreParkingIncreasePolicy : 1; /* bit position: 19 */
        /* 0x0000 */ unsigned long CoreParkingDecreaseTime : 1; /* bit position: 20 */
        /* 0x0000 */ unsigned long CoreParkingIncreaseTime : 1; /* bit position: 21 */
        /* 0x0000 */ unsigned long CoreParkingOverUtilizationThreshold : 1; /* bit position: 22 */
        /* 0x0000 */ unsigned long CoreParkingDistributeUtility : 1; /* bit position: 23 */
        /* 0x0000 */ unsigned long CoreParkingConcurrencyThreshold : 1; /* bit position: 24 */
        /* 0x0000 */ unsigned long CoreParkingHeadroomThreshold : 1; /* bit position: 25 */
        /* 0x0000 */ unsigned long CoreParkingDistributionThreshold : 1; /* bit position: 26 */
        /* 0x0000 */ unsigned long IdleAllowScaling : 1; /* bit position: 27 */
        /* 0x0000 */ unsigned long IdleDisable : 1; /* bit position: 28 */
        /* 0x0000 */ unsigned long IdleTimeCheck : 1; /* bit position: 29 */
        /* 0x0000 */ unsigned long IdleDemoteThreshold : 1; /* bit position: 30 */
        /* 0x0000 */ unsigned long IdlePromoteThreshold : 1; /* bit position: 31 */
      }; /* bitfield */
      struct /* bitfield */
      {
        /* 0x0004 */ unsigned long HeteroDecreaseTime : 1; /* bit position: 0 */
        /* 0x0004 */ unsigned long HeteroIncreaseTime : 1; /* bit position: 1 */
        /* 0x0004 */ unsigned long HeteroDecreaseThreshold : 1; /* bit position: 2 */
        /* 0x0004 */ unsigned long HeteroIncreaseThreshold : 1; /* bit position: 3 */
        /* 0x0004 */ unsigned long Class0FloorPerformance : 1; /* bit position: 4 */
        /* 0x0004 */ unsigned long Class1InitialPerformance : 1; /* bit position: 5 */
        /* 0x0004 */ unsigned long EnergyPerfPreference : 1; /* bit position: 6 */
        /* 0x0004 */ unsigned long AutonomousActivityWindow : 1; /* bit position: 7 */
        /* 0x0004 */ unsigned long AutonomousMode : 1; /* bit position: 8 */
        /* 0x0004 */ unsigned long DutyCycling : 1; /* bit position: 9 */
        /* 0x0004 */ unsigned long FrequencyCap : 1; /* bit position: 10 */
        /* 0x0004 */ unsigned long ThreadPolicy : 1; /* bit position: 11 */
        /* 0x0004 */ unsigned long ShortThreadPolicy : 1; /* bit position: 12 */
        /* 0x0004 */ unsigned long IdleStateMax : 1; /* bit position: 13 */
        /* 0x0004 */ unsigned long ResponsivenessDisableThreshold : 1; /* bit position: 14 */
        /* 0x0004 */ unsigned long ResponsivenessEnableThreshold : 1; /* bit position: 15 */
        /* 0x0004 */ unsigned long ResponsivenessDisableTime : 1; /* bit position: 16 */
        /* 0x0004 */ unsigned long ResponsivenessEnableTime : 1; /* bit position: 17 */
        /* 0x0004 */ unsigned long ResponsivenessEppCeiling : 1; /* bit position: 18 */
        /* 0x0004 */ unsigned long ResponsivenessPerfFloor : 1; /* bit position: 19 */
        /* 0x0004 */ unsigned long SoftParkLatency : 1; /* bit position: 20 */
        /* 0x0004 */ unsigned long Spare : 11; /* bit position: 21 */
      }; /* bitfield */
    }; /* size: 0x0008 */
  }; /* size: 0x0008 */
} PPM_POLICY_SETTINGS_MASK, *PPPM_POLICY_SETTINGS_MASK; /* size: 0x0008 */

typedef struct _AGGREGATED_PAYLOAD_FILTER
{
  struct /* bitfield */
  {
    /* 0x0000 */ unsigned short MagicValue : 12; /* bit position: 0 */
    /* 0x0000 */ unsigned short DescriptorVersion : 4; /* bit position: 12 */
  }; /* bitfield */
  /* 0x0002 */ unsigned short Size;
  /* 0x0004 */ unsigned short PredicateCount;
  /* 0x0006 */ unsigned short Reserved;
  /* 0x0008 */ unsigned __int64 HashedEventIdBitmap;
  /* 0x0010 */ struct _GUID ProviderGuid;
  /* 0x0020 */ unsigned short EachEventTableOffset;
  /* 0x0022 */ unsigned short EachEventTableLength;
  /* 0x0024 */ unsigned short PayloadDecoderTableOffset;
  /* 0x0026 */ unsigned short PayloadDecoderTableLength;
  /* 0x0028 */ unsigned short EventFilterTableOffset;
  /* 0x002a */ unsigned short EventFilterTableLength;
  /* 0x002c */ unsigned short UNICODEStringTableOffset;
  /* 0x002e */ unsigned short UNICODEStringTableLength;
  /* 0x0030 */ unsigned short ANSIStringTableOffset;
  /* 0x0032 */ unsigned short ANSIStringTableLength;
  /* 0x0034 */ long Padding_109;
  /* 0x0038 */ struct _EVENT_PAYLOAD_PREDICATE PredicateTable[1];
} AGGREGATED_PAYLOAD_FILTER, *PAGGREGATED_PAYLOAD_FILTER; /* size: 0x0050 */

typedef struct _ETW_PAYLOAD_FILTER
{
  /* 0x0000 */ long RefCount;
  /* 0x0004 */ long Padding_110;
  /* 0x0008 */ struct _AGGREGATED_PAYLOAD_FILTER PayloadFilter;
} ETW_PAYLOAD_FILTER, *PETW_PAYLOAD_FILTER; /* size: 0x0058 */

typedef enum _MI_SLAB_ALLOCATOR_TYPE
{
  MiSlabAllocatorTypeSlatProtected = 0,
  MiSlabAllocatorTypeUnprotected = 1,
  MiSlabAllocatorTypeMax = 2,
} MI_SLAB_ALLOCATOR_TYPE, *PMI_SLAB_ALLOCATOR_TYPE;

enum PDCCLIENTID
{
  PDC_INVALID_CLIENT = 0,
  PDC_PLM_CLIENT = 1,
  PDC_NQM_CLIENT = 2,
  PDC_WNS_CLIENT = 3,
  PDC_DAM_CLIENT = 4,
  PDC_WCM_CLIENT = 5,
  PDC_NCSI_CLIENT = 7,
  PDC_DHCP_CLIENT = 8,
  PDC_TCPIP_CLIENT = 9,
  PDC_WU_CLIENT = 11,
  PDC_GP_CLIENT = 12,
  PDC_NCA_CLIENT = 14,
  PDC_BI_CLIENT = 15,
  PDC_MSCHED_CLIENT = 16,
  PDC_SUSPENDRESUME_CLIENT = 17,
  PDC_INTERNAL_CLIENT = 18,
  PDC_DEFAULT_KM_TEST_CLIENT_EXEMPTED = 19,
  PDC_DEFAULT_UM_TEST_CLIENT_EXEMPTED = 20,
  PDC_DAM_PHASE_TEST_CLIENT = 21,
  PDC_LOW_POWER_PHASE_TEST_CLIENT = 22,
  PDC_RESILIENCY_NOTIFICATION_PHASE_TEST_CLIENT = 23,
  PDC_NQM_RESILIENCY_TEST_CLIENT = 24,
  PDC_DAM_RESILIENCY_TEST_CLIENT = 25,
  PDC_DAM_KM_TEST_CLIENT = 26,
  PDC_DAM_UM_TEST_CLIENT = 27,
  PDC_SINGLETON_TEST_CLIENT = 28,
  PDC_NETWORK_SERVICE_TEST_CLIENT = 29,
  PDC_NETWORK_SERVICE2_TEST_CLIENT = 30,
  PDC_SYSTEM_SERVICE_TEST_CLIENT = 31,
  PDC_ACTIV_NOTIF_DAM_RESIL_TEST_CLIENT = 32,
  PDC_ACTIV_NOTIF_NET_RESIL_TEST_CLIENT = 33,
  PDC_SHELL_CLIENT = 34,
  PDC_MAINTENANCE_CLIENT = 35,
  PDC_SYNC_CLIENT = 36,
  PDC_IDM_CLIENT = 37,
  PDC_CORTANA_VOICE_ACTIVATION_CLIENT = 38,
  PDC_TETHERING_CLIENT = 39,
  PDC_AUDIO_CLIENT = 40,
  PDC_LOCK_SCREEN = 41,
  PDC_LREC_CLIENT = 42,
  PDC_WP_BW_CLIENT = 43,
  PDC_WP_MEDIA_STREAMING_CLIENT = 44,
  PDC_WP_MAPS_CLIENT = 46,
  PDC_WP_SYNC_CLIENT = 47,
  PDC_SETTING_SYNC_CLIENT = 48,
  PDC_WP_EDM_CLIENT = 49,
  PDC_WP_WALLET_CLIENT = 50,
  PDC_WP_LOCATION_CLIENT = 51,
  PDC_WP_CM_CLIENT = 53,
  PDC_WP_DCP_CLIENT = 54,
  PDC_WP_WIFIAUTO_CLIENT = 55,
  PDC_BITLOCKER_CLIENT = 56,
  PDC_MDM_CERTINSTALLER_CLIENT = 57,
  PDC_WP_IM_CLIENT = 58,
  PDC_WP_MMS_CLIENT = 59,
  PDC_DEVICEENROLLER_CLIENT = 60,
  PDC_WP_WIFI_SCANNING_CLIENT = 61,
  PDC_WP_OMADM_CLIENT = 62,
  PDC_WP_TELEMETRY_CHECK_CLIENT = 63,
  PDC_WP_DIS_CLIENT = 64,
  PDC_BITS_CLIENT = 65,
  PDC_WP_VOIP_EXECUTION_CLIENT = 66,
  PDC_WP_RESERVED_CLIENT3 = 67,
  PDC_SLEEP_STUDY_CLIENT = 68,
  PDC_WP_AUTOTIMEUPDATE_CLIENT = 69,
  PDC_HYPERV_CLIENT = 70,
  PDC_KM_SIGNAL_CLIENT = 71,
  PDC_UM_SIGNAL_CLIENT = 72,
  PDC_DEVICE_HEALTH_ATTESTATION_CLIENT = 73,
  PDC_XB_SYSTEM_CLIENT = 74,
  PDC_XB_HOST_CLIENT = 75,
  PDC_PRINT_JOB_MANAGER_CLIENT = 76,
  PDC_TELEMETRY_CLIENT = 77,
  PDC_ERROR_REPORTING_CLIENT = 78,
  PDC_XBOX_NTM = 79,
  PDC_CBE_CLIENT = 80,
  PDC_FIND_MY_PHONE_CLIENT = 81,
  PDC_COMMAND_CHANNEL_CLIENT = 82,
  PDC_PPM_PROFILES_CLIENT = 83,
  PDC_WIFI_CALLING_CLIENT = 84,
  PDC_WU_REBOOT_CLIENT = 85,
  PDC_SYSMAIN_CLIENT = 86,
  PDC_XBOX_UPDATE_CLIENT = 87,
  PDC_CHAT_SERVICE_CLIENT = 88,
  PDC_FIND_MY_DEVICE_CLIENT = 89,
  PDC_NOTIFICATION_FORWARDING_AND_ACTION_CLIENT = 90,
  PDC_INSTALL_AGENT_CLIENT = 91,
  PDC_XBOX_WAKE_ON_VOICE = 92,
  PDC_PLM_AUDIO_CLIENT = 93,
  PDC_WP_BCKAUDIO_CLIENT = 94,
  PDC_WAKE_ON_LAN_CLIENT = 95,
  PDC_WP_CLOUD_MESSAGING_CLIENT = 96,
  PDC_DATA_MIGRATION_MANAGER = 97,
  PDC_EVENT_SOUND_MANAGER_CLIENT = 98,
  PDC_WWAN_DORMANCY_HINT_CLIENT = 99,
  PDC_HAM_CLIENT = 100,
  PDC_FILESHARINGSERVER_CLIENT = 101,
  PDC_DIRECTED_DRIPS_TASK_CLIENT = 102,
  PDC_DIRECTED_DRIPS_LPE_CLIENT = 103,
  PDC_DIRECTED_DRIPS_PLM_CLIENT = 104,
  PDC_HTTPSDATASOURCE_CLIENT = 105,
  PDC_TERMINALSERVER_CONNECTION_CLIENT = 106,
  PDC_TERMINALSERVER_SESSION_CLIENT = 107,
  PDC_ANYNETWORK_RESILIENCY_CLIENT = 108,
  PDC_XBOX_NUI_CLIENT = 110,
  PDC_WIFI_CALLING_IMS_CLIENT = 111,
  PDC_SLEEPSTUDY_HELPER_USER_CLIENT = 112,
  PDC_SLEEPSTUDY_HELPER_KERNEL_CLIENT = 113,
  PDC_CONTAINER_MANAGER_CLIENT = 114,
  PDC_NUMBER_OF_CLIENTS = 115,
};

enum SLEEPSTUDY_SPM_SCENARIO_CS_EXIT
{
  SpmScenarioStopReasonUnspecified = 16,
  SpmScenarioStopReasonCsExit = 17,
  SpmScenarioStopReasonInternalSegmentTransition = 18,
  SpmScenarioStopReasonMax = 19,
};

struct _DEVICE_NODE_IOMMU_EXTENSION;

enum PROFILE_DEPARTURE_STYLE
{
  PDS_UPDATE_DEFAULT = 1,
  PDS_UPDATE_ON_REMOVE = 2,
  PDS_UPDATE_ON_INTERFACE = 3,
  PDS_UPDATE_ON_EJECT = 4,
};

enum LSA_FOREST_TRUST_RECORD_TYPE
{
  ForestTrustTopLevelName = 0,
  ForestTrustTopLevelNameEx = 1,
  ForestTrustDomainInfo = 2,
  ForestTrustBinaryInfo = 3,
  ForestTrustScannerInfo = 4,
  ForestTrustRecordTypeLast = 4,
};

typedef struct _EVENT_FILTER_LEVEL_KW
{
  /* 0x0000 */ unsigned __int64 MatchAnyKeyword;
  /* 0x0008 */ unsigned __int64 MatchAllKeyword;
  /* 0x0010 */ unsigned char Level;
  /* 0x0011 */ unsigned char FilterIn;
  /* 0x0012 */ char __PADDING__[6];
} EVENT_FILTER_LEVEL_KW, *PEVENT_FILTER_LEVEL_KW; /* size: 0x0018 */

typedef enum _PROC_HYPERVISOR_STATE
{
  ProcHypervisorNone = 0,
  ProcHypervisorPresent = 1,
  ProcHypervisorPower = 2,
  ProcHypervisorHvCounters = 3,
} PROC_HYPERVISOR_STATE, *PPROC_HYPERVISOR_STATE;

typedef enum _KHETERO_CPU_QOS
{
  KHeteroCpuQosDefault = 0,
  KHeteroCpuQosHigh = 0,
  KHeteroCpuQosMedium = 1,
  KHeteroCpuQosLow = 2,
  KHeteroCpuQosMultimedia = 3,
  KHeteroCpuQosDeadline = 4,
  KHeteroCpuQosDynamic = 5,
  KHeteroCpuQosMax = 5,
} KHETERO_CPU_QOS, *PKHETERO_CPU_QOS;

typedef struct _OBP_SYSTEM_DOS_DEVICE_STATE
{
  /* 0x0000 */ unsigned long GlobalDeviceMap;
  /* 0x0004 */ unsigned long LocalDeviceCount[26];
} OBP_SYSTEM_DOS_DEVICE_STATE, *POBP_SYSTEM_DOS_DEVICE_STATE; /* size: 0x006c */

typedef struct _OBJECT_NAMESPACE_LOOKUPTABLE
{
  /* 0x0000 */ struct _LIST_ENTRY HashBuckets[37];
  /* 0x0250 */ struct _EX_PUSH_LOCK Lock;
  /* 0x0258 */ unsigned long NumberOfPrivateSpaces;
  /* 0x025c */ long __PADDING__[1];
} OBJECT_NAMESPACE_LOOKUPTABLE, *POBJECT_NAMESPACE_LOOKUPTABLE; /* size: 0x0260 */

typedef struct _OBP_SILODRIVERSTATE
{
  /* 0x0000 */ struct _DEVICE_MAP* SystemDeviceMap;
  /* 0x0008 */ struct _OBP_SYSTEM_DOS_DEVICE_STATE SystemDosDeviceState;
  /* 0x0074 */ long Padding_111;
  /* 0x0078 */ struct _EX_PUSH_LOCK DeviceMapLock;
  /* 0x0080 */ struct _OBJECT_NAMESPACE_LOOKUPTABLE PrivateNamespaceLookupTable;
} OBP_SILODRIVERSTATE, *POBP_SILODRIVERSTATE; /* size: 0x02e0 */

typedef struct _SEP_RM_LSA_CONNECTION_STATE
{
  /* 0x0000 */ void* LsaProcessHandle;
  /* 0x0008 */ void* LsaCommandPortHandle;
  /* 0x0010 */ void* SepRmThreadHandle;
  /* 0x0018 */ void* RmCommandPortHandle;
  /* 0x0020 */ void* RmCommandServerPortHandle;
  /* 0x0028 */ void* LsaCommandPortSectionHandle;
  /* 0x0030 */ union _LARGE_INTEGER LsaCommandPortSectionSize;
  /* 0x0038 */ void* LsaViewPortMemory;
  /* 0x0040 */ void* RmViewPortMemory;
  /* 0x0048 */ long LsaCommandPortMemoryDelta;
  /* 0x004c */ unsigned char LsaCommandPortActive;
  /* 0x004d */ char __PADDING__[3];
} SEP_RM_LSA_CONNECTION_STATE, *PSEP_RM_LSA_CONNECTION_STATE; /* size: 0x0050 */

typedef struct _WNF_SILODRIVERSTATE
{
  /* 0x0000 */ struct _WNF_SCOPE_MAP* ScopeMap;
  /* 0x0008 */ void* volatile PermanentNameStoreRootKey;
  /* 0x0010 */ void* volatile PersistentNameStoreRootKey;
  /* 0x0018 */ volatile __int64 PermanentNameSequenceNumber;
  /* 0x0020 */ struct _WNF_LOCK PermanentNameSequenceNumberLock;
  /* 0x0028 */ volatile __int64 PermanentNameSequenceNumberPool;
  /* 0x0030 */ volatile __int64 RuntimeNameSequenceNumber;
} WNF_SILODRIVERSTATE, *PWNF_SILODRIVERSTATE; /* size: 0x0038 */

typedef struct _DBGK_SILOSTATE
{
  /* 0x0000 */ struct _EX_PUSH_LOCK ErrorPortLock;
  /* 0x0008 */ struct _DBGKP_ERROR_PORT* ErrorPort;
  /* 0x0010 */ struct _EPROCESS* ErrorProcess;
  /* 0x0018 */ struct _KEVENT* ErrorPortRegisteredEvent;
} DBGK_SILOSTATE, *PDBGK_SILOSTATE; /* size: 0x0020 */

typedef struct _ESERVERSILO_GLOBALS
{
  /* 0x0000 */ struct _OBP_SILODRIVERSTATE ObSiloState;
  /* 0x02e0 */ struct _SEP_SILOSTATE SeSiloState;
  /* 0x0310 */ struct _SEP_RM_LSA_CONNECTION_STATE SeRmSiloState;
  /* 0x0360 */ struct _ETW_SILODRIVERSTATE* EtwSiloState;
  /* 0x0368 */ struct _EPROCESS* MiSessionLeaderProcess;
  /* 0x0370 */ struct _EPROCESS* ExpDefaultErrorPortProcess;
  /* 0x0378 */ void* ExpDefaultErrorPort;
  /* 0x0380 */ unsigned long HardErrorState;
  /* 0x0384 */ long Padding_112;
  /* 0x0388 */ struct _EXP_LICENSE_STATE* ExpLicenseState;
  /* 0x0390 */ struct _WNF_SILODRIVERSTATE WnfSiloState;
  /* 0x03c8 */ struct _DBGK_SILOSTATE DbgkSiloState;
  /* 0x03e8 */ struct _UNICODE_STRING PsProtectedCurrentDirectory;
  /* 0x03f8 */ struct _UNICODE_STRING PsProtectedEnvironment;
  /* 0x0408 */ void* ApiSetSection;
  /* 0x0410 */ void* ApiSetSchema;
  /* 0x0418 */ unsigned char OneCoreForwardersEnabled;
  /* 0x0419 */ unsigned char TzVirtualizationSupported;
  /* 0x041a */ char Padding_113[6];
  /* 0x0420 */ void* ImgFileExecOptions;
  /* 0x0428 */ struct _EX_TIMEZONE_STATE* ExTimeZoneState;
  /* 0x0430 */ struct _UNICODE_STRING NtSystemRoot;
  /* 0x0440 */ struct _UNICODE_STRING SiloRootDirectoryName;
  /* 0x0450 */ struct _PSP_STORAGE* Storage;
  /* 0x0458 */ enum _SERVERSILO_STATE State;
  /* 0x045c */ long ExitStatus;
  /* 0x0460 */ struct _KEVENT* DeleteEvent;
  /* 0x0468 */ struct _SILO_USER_SHARED_DATA* UserSharedData;
  /* 0x0470 */ void* UserSharedSection;
  /* 0x0478 */ struct _WORK_QUEUE_ITEM TerminateWorkItem;
  /* 0x0498 */ unsigned char IsDownlevelContainer;
  /* 0x0499 */ char __PADDING__[7];
} ESERVERSILO_GLOBALS, *PESERVERSILO_GLOBALS; /* size: 0x04a0 */

typedef enum _KRESOURCEMANAGER_STATE
{
  KResourceManagerUninitialized = 0,
  KResourceManagerOffline = 1,
  KResourceManagerOnline = 2,
} KRESOURCEMANAGER_STATE, *PKRESOURCEMANAGER_STATE;

typedef enum _THREAD_WORKLOAD_CLASS
{
  ThreadWorkloadClassDefault = 0,
  ThreadWorkloadClassGraphics = 1,
  MaxThreadWorkloadClass = 2,
} THREAD_WORKLOAD_CLASS, *PTHREAD_WORKLOAD_CLASS;

typedef struct _POP_COMPONENT_POWER_PROFILE
{
  /* 0x0000 */ struct _GUID ComponentGuid;
  /* 0x0010 */ struct _POP_DEVICE_POWER_PROFILE* Device;
  /* 0x0018 */ unsigned __int64 FxCount;
  /* 0x0020 */ struct _PO_POWER_PLANE_PROFILE FxPower[1];
} POP_COMPONENT_POWER_PROFILE, *PPOP_COMPONENT_POWER_PROFILE; /* size: 0x0028 */

typedef enum _SEP_CACHED_HANDLES_ENTRY_TYPE
{
  SepCachedHandlesEntryLowbox = 0,
  SepCachedHandlesEntryBnoIsolation = 1,
} SEP_CACHED_HANDLES_ENTRY_TYPE, *PSEP_CACHED_HANDLES_ENTRY_TYPE;

typedef enum _POP_DEVICE_IDLE_TYPE
{
  DeviceIdleNormal = 0,
  DeviceIdleDisk = 1,
} POP_DEVICE_IDLE_TYPE, *PPOP_DEVICE_IDLE_TYPE;

typedef enum _MI_CROSS_PARTITION_CHARGE_TYPE
{
  MiCrossPartitionSectionResAvailCharge = 0,
  MiCrossPartitionSectionCommitCharge = 1,
  MiCrossPartitionPageCombineResAvailCharge = 2,
  MiCrossPartitionPageCombineCommitCharge = 3,
  MiCrossPartitionLargePageResAvailCharge = 4,
  MiCrossPartitionLargePageCommitCharge = 5,
  MiCrossPartitionPageCloneResAvailCharge = 6,
  MiCrossPartitionMaximumCharge = 7,
} MI_CROSS_PARTITION_CHARGE_TYPE, *PMI_CROSS_PARTITION_CHARGE_TYPE;

typedef enum _HV_EXT_EPF_MODE
{
  HvExtEpfModeMin = 0,
  HvExtEpfModeNt = 0,
  HvExtEpfModeMax = 1,
} HV_EXT_EPF_MODE, *PHV_EXT_EPF_MODE;

typedef struct _PPM_ENGINE_SETTINGS
{
  /* 0x0000 */ union _PPM_POLICY_SETTINGS_MASK ExplicitSetting[2];
  /* 0x0010 */ unsigned char ThrottlingPolicy;
  /* 0x0011 */ char Padding_114[3];
  /* 0x0014 */ unsigned long PerfTimeCheck;
  /* 0x0018 */ unsigned char PerfHistoryCount[2];
  /* 0x001a */ unsigned char PerfMinPolicy[2];
  /* 0x001c */ unsigned char PerfMaxPolicy[2];
  /* 0x001e */ unsigned char PerfDecreaseTime[2];
  /* 0x0020 */ unsigned char PerfIncreaseTime[2];
  /* 0x0022 */ unsigned char PerfDecreasePolicy[2];
  /* 0x0024 */ unsigned char PerfIncreasePolicy[2];
  /* 0x0026 */ unsigned char PerfDecreaseThreshold[2];
  /* 0x0028 */ unsigned char PerfIncreaseThreshold[2];
  /* 0x002a */ char Padding_115[2];
  /* 0x002c */ unsigned long PerfFrequencyCap[2];
  /* 0x0034 */ unsigned long PerfBoostPolicy;
  /* 0x0038 */ unsigned long PerfBoostMode;
  /* 0x003c */ unsigned long PerfReductionTolerance;
  /* 0x0040 */ unsigned long EnergyPerfPreference[2];
  /* 0x0048 */ unsigned long AutonomousActivityWindow;
  /* 0x004c */ unsigned char AutonomousPreference;
  /* 0x004d */ unsigned char LatencyHintPerf[2];
  /* 0x004f */ unsigned char LatencyHintUnpark[2];
  /* 0x0051 */ char Padding_116[3];
  /* 0x0054 */ unsigned long ResponsivenessDisableThreshold[2];
  /* 0x005c */ unsigned long ResponsivenessEnableThreshold[2];
  /* 0x0064 */ unsigned char ResponsivenessDisableTime[2];
  /* 0x0066 */ unsigned char ResponsivenessEnableTime[2];
  /* 0x0068 */ unsigned long ResponsivenessEppCeiling[2];
  /* 0x0070 */ unsigned long ResponsivenessPerfFloor[2];
  /* 0x0078 */ unsigned char DutyCycling;
  /* 0x0079 */ unsigned char ParkingPerfState[2];
  /* 0x007b */ unsigned char DistributeUtility;
  /* 0x007c */ unsigned char CoreParkingOverUtilizationThreshold;
  /* 0x007d */ unsigned char CoreParkingConcurrencyThreshold;
  /* 0x007e */ unsigned char CoreParkingHeadroomThreshold;
  /* 0x007f */ unsigned char CoreParkingDistributionThreshold;
  /* 0x0080 */ unsigned char CoreParkingDecreasePolicy;
  /* 0x0081 */ unsigned char CoreParkingIncreasePolicy;
  /* 0x0082 */ char Padding_117[2];
  /* 0x0084 */ unsigned long CoreParkingDecreaseTime;
  /* 0x0088 */ unsigned long CoreParkingIncreaseTime;
  /* 0x008c */ unsigned char CoreParkingMinCores[2];
  /* 0x008e */ unsigned char CoreParkingMaxCores[2];
  /* 0x0090 */ unsigned long SoftParkLatency;
  /* 0x0094 */ unsigned char AllowScaling;
  /* 0x0095 */ unsigned char IdleDisabled;
  /* 0x0096 */ char Padding_118[2];
  /* 0x0098 */ unsigned long IdleTimeCheck;
  /* 0x009c */ unsigned char IdleDemotePercent;
  /* 0x009d */ unsigned char IdlePromotePercent;
  /* 0x009e */ unsigned char IdleStateMax;
  /* 0x009f */ unsigned char HeteroDecreaseTime;
  /* 0x00a0 */ unsigned char HeteroIncreaseTime;
  /* 0x00a1 */ unsigned char HeteroDecreaseThreshold[1280];
  /* 0x05a1 */ unsigned char HeteroIncreaseThreshold[1280];
  /* 0x0aa1 */ unsigned char Class0FloorPerformance;
  /* 0x0aa2 */ unsigned char Class1InitialPerformance;
  /* 0x0aa3 */ char Padding_119;
  /* 0x0aa4 */ enum _KHETERO_CPU_POLICY ThreadPolicies[2];
  /* 0x0aac */ long __PADDING__[1];
} PPM_ENGINE_SETTINGS, *PPPM_ENGINE_SETTINGS; /* size: 0x0ab0 */

typedef struct _EPROCESS_VALUES
{
  /* 0x0000 */ unsigned __int64 KernelTime;
  /* 0x0008 */ unsigned __int64 UserTime;
  /* 0x0010 */ unsigned __int64 ReadyTime;
  /* 0x0018 */ unsigned __int64 CycleTime;
  /* 0x0020 */ unsigned __int64 ContextSwitches;
  /* 0x0028 */ __int64 ReadOperationCount;
  /* 0x0030 */ __int64 WriteOperationCount;
  /* 0x0038 */ __int64 OtherOperationCount;
  /* 0x0040 */ __int64 ReadTransferCount;
  /* 0x0048 */ __int64 WriteTransferCount;
  /* 0x0050 */ __int64 OtherTransferCount;
  /* 0x0058 */ unsigned __int64 KernelWaitTime;
  /* 0x0060 */ unsigned __int64 UserWaitTime;
} EPROCESS_VALUES, *PEPROCESS_VALUES; /* size: 0x0068 */

typedef struct _GENERAL_LOOKASIDE
{
  union
  {
    /* 0x0000 */ union _SLIST_HEADER ListHead;
    /* 0x0000 */ struct _SINGLE_LIST_ENTRY SingleListHead;
  }; /* size: 0x0010 */
  /* 0x0010 */ unsigned short Depth;
  /* 0x0012 */ unsigned short MaximumDepth;
  /* 0x0014 */ unsigned long TotalAllocates;
  union
  {
    /* 0x0018 */ unsigned long AllocateMisses;
    /* 0x0018 */ unsigned long AllocateHits;
  }; /* size: 0x0004 */
  /* 0x001c */ unsigned long TotalFrees;
  union
  {
    /* 0x0020 */ unsigned long FreeMisses;
    /* 0x0020 */ unsigned long FreeHits;
  }; /* size: 0x0004 */
  /* 0x0024 */ enum _POOL_TYPE Type;
  /* 0x0028 */ unsigned long Tag;
  /* 0x002c */ unsigned long Size;
  union
  {
    /* 0x0030 */ void* AllocateEx /* function */;
    /* 0x0030 */ void* Allocate /* function */;
  }; /* size: 0x0008 */
  union
  {
    /* 0x0038 */ void* FreeEx /* function */;
    /* 0x0038 */ void* Free /* function */;
  }; /* size: 0x0008 */
  /* 0x0040 */ struct _LIST_ENTRY ListEntry;
  /* 0x0050 */ unsigned long LastTotalAllocates;
  union
  {
    /* 0x0054 */ unsigned long LastAllocateMisses;
    /* 0x0054 */ unsigned long LastAllocateHits;
  }; /* size: 0x0004 */
  /* 0x0058 */ unsigned long Future[2];
  /* 0x0060 */ long __PADDING__[8];
} GENERAL_LOOKASIDE, *PGENERAL_LOOKASIDE; /* size: 0x0080 */

typedef struct _OBJECT_DIRECTORY_ENTRY
{
  /* 0x0000 */ struct _OBJECT_DIRECTORY_ENTRY* ChainLink;
  /* 0x0008 */ void* Object;
  /* 0x0010 */ unsigned long HashValue;
  /* 0x0014 */ long __PADDING__[1];
} OBJECT_DIRECTORY_ENTRY, *POBJECT_DIRECTORY_ENTRY; /* size: 0x0018 */

typedef enum _POP_POWER_ACTION_WATCHDOG_STATE
{
  PopPowerActionWatchdogStateDisabled = 0,
  PopPowerActionWatchdogStateTransitioning = 1,
  PopPowerActionWatchdogStateResuming = 2,
  PopPowerActionWatchdogStateMax = 3,
} POP_POWER_ACTION_WATCHDOG_STATE, *PPOP_POWER_ACTION_WATCHDOG_STATE;

typedef struct _KAFFINITY_EX
{
  /* 0x0000 */ unsigned short Count;
  /* 0x0002 */ unsigned short Size;
  /* 0x0004 */ unsigned long Reserved;
  /* 0x0008 */ unsigned __int64 Bitmap[20];
} KAFFINITY_EX, *PKAFFINITY_EX; /* size: 0x00a8 */

typedef union _KSTACK_COUNT
{
  union
  {
    /* 0x0000 */ long Value;
    struct /* bitfield */
    {
      /* 0x0000 */ unsigned long State : 3; /* bit position: 0 */
      /* 0x0000 */ unsigned long StackCount : 29; /* bit position: 3 */
    }; /* bitfield */
  }; /* size: 0x0004 */
} KSTACK_COUNT, *PKSTACK_COUNT; /* size: 0x0004 */

typedef struct _KPROCESS
{
  /* 0x0000 */ struct _DISPATCHER_HEADER Header;
  /* 0x0018 */ struct _LIST_ENTRY ProfileListHead;
  /* 0x0028 */ unsigned __int64 DirectoryTableBase;
  /* 0x0030 */ struct _LIST_ENTRY ThreadListHead;
  /* 0x0040 */ unsigned long ProcessLock;
  /* 0x0044 */ unsigned long ProcessTimerDelay;
  /* 0x0048 */ unsigned __int64 DeepFreezeStartTime;
  /* 0x0050 */ struct _KAFFINITY_EX Affinity;
  /* 0x00f8 */ unsigned __int64 AffinityPadding[12];
  /* 0x0158 */ struct _LIST_ENTRY ReadyListHead;
  /* 0x0168 */ struct _SINGLE_LIST_ENTRY SwapListEntry;
  /* 0x0170 */ volatile struct _KAFFINITY_EX ActiveProcessors;
  /* 0x0218 */ unsigned __int64 ActiveProcessorsPadding[12];
  union
  {
    struct /* bitfield */
    {
      /* 0x0278 */ unsigned long AutoAlignment : 1; /* bit position: 0 */
      /* 0x0278 */ unsigned long DisableBoost : 1; /* bit position: 1 */
      /* 0x0278 */ unsigned long DisableQuantum : 1; /* bit position: 2 */
      /* 0x0278 */ unsigned long DeepFreeze : 1; /* bit position: 3 */
      /* 0x0278 */ unsigned long TimerVirtualization : 1; /* bit position: 4 */
      /* 0x0278 */ unsigned long CheckStackExtents : 1; /* bit position: 5 */
      /* 0x0278 */ unsigned long CacheIsolationEnabled : 1; /* bit position: 6 */
      /* 0x0278 */ unsigned long PpmPolicy : 3; /* bit position: 7 */
      /* 0x0278 */ unsigned long VaSpaceDeleted : 1; /* bit position: 10 */
      /* 0x0278 */ unsigned long ReservedFlags : 21; /* bit position: 11 */
    }; /* bitfield */
    /* 0x0278 */ volatile long ProcessFlags;
  }; /* size: 0x0004 */
  /* 0x027c */ unsigned long ActiveGroupsMask;
  /* 0x0280 */ char BasePriority;
  /* 0x0281 */ char QuantumReset;
  /* 0x0282 */ char Visited;
  /* 0x0283 */ union _KEXECUTE_OPTIONS Flags;
  /* 0x0284 */ unsigned short ThreadSeed[20];
  /* 0x02ac */ unsigned short ThreadSeedPadding[12];
  /* 0x02c4 */ unsigned short IdealProcessor[20];
  /* 0x02ec */ unsigned short IdealProcessorPadding[12];
  /* 0x0304 */ unsigned short IdealNode[20];
  /* 0x032c */ unsigned short IdealNodePadding[12];
  /* 0x0344 */ unsigned short IdealGlobalNode;
  /* 0x0346 */ unsigned short Spare1;
  /* 0x0348 */ volatile union _KSTACK_COUNT StackCount;
  /* 0x034c */ long Padding_120;
  /* 0x0350 */ struct _LIST_ENTRY ProcessListEntry;
  /* 0x0360 */ unsigned __int64 CycleTime;
  /* 0x0368 */ unsigned __int64 ContextSwitches;
  /* 0x0370 */ struct _KSCHEDULING_GROUP* SchedulingGroup;
  /* 0x0378 */ unsigned long FreezeCount;
  /* 0x037c */ unsigned long KernelTime;
  /* 0x0380 */ unsigned long UserTime;
  /* 0x0384 */ unsigned long ReadyTime;
  /* 0x0388 */ unsigned __int64 UserDirectoryTableBase;
  /* 0x0390 */ unsigned char AddressPolicy;
  /* 0x0391 */ unsigned char Spare2[71];
  /* 0x03d8 */ void* InstrumentationCallback;
  union
  {
    union
    {
      /* 0x03e0 */ unsigned __int64 SecureHandle;
      struct
      {
        struct /* bitfield */
        {
          /* 0x03e0 */ unsigned __int64 SecureProcess : 1; /* bit position: 0 */
          /* 0x03e0 */ unsigned __int64 Unused : 1; /* bit position: 1 */
        }; /* bitfield */
      } /* size: 0x0008 */ Flags;
    }; /* size: 0x0008 */
  } /* size: 0x0008 */ SecureState;
  /* 0x03e8 */ unsigned __int64 KernelWaitTime;
  /* 0x03f0 */ unsigned __int64 UserWaitTime;
  /* 0x03f8 */ unsigned __int64 EndPadding[8];
} KPROCESS, *PKPROCESS; /* size: 0x0438 */

typedef enum _SYSTEM_FEATURE_CONFIGURATION_SECTION_TYPE
{
  SystemFeatureConfigurationSectionTypeBoot = 0,
  SystemFeatureConfigurationSectionTypeRuntime = 1,
  SystemFeatureConfigurationSectionTypeUsageTriggers = 2,
  SystemFeatureConfigurationSectionTypeCount = 3,
} SYSTEM_FEATURE_CONFIGURATION_SECTION_TYPE, *PSYSTEM_FEATURE_CONFIGURATION_SECTION_TYPE;

typedef enum _PS_ATTRIBUTE_NUM
{
  PsAttributeParentProcess = 0,
  PsAttributeDebugObject = 1,
  PsAttributeToken = 2,
  PsAttributeClientId = 3,
  PsAttributeTebAddress = 4,
  PsAttributeImageName = 5,
  PsAttributeImageInfo = 6,
  PsAttributeMemoryReserve = 7,
  PsAttributePriorityClass = 8,
  PsAttributeErrorMode = 9,
  PsAttributeStdHandleInfo = 10,
  PsAttributeHandleList = 11,
  PsAttributeGroupAffinity = 12,
  PsAttributePreferredNode = 13,
  PsAttributeIdealProcessor = 14,
  PsAttributeUmsThread = 15,
  PsAttributeMitigationOptions = 16,
  PsAttributeProtectionLevel = 17,
  PsAttributeSecureProcess = 18,
  PsAttributeJobList = 19,
  PsAttributeChildProcessPolicy = 20,
  PsAttributeAllApplicationPackagesPolicy = 21,
  PsAttributeWin32kFilter = 22,
  PsAttributeSafeOpenPromptOriginClaim = 23,
  PsAttributeBnoIsolation = 24,
  PsAttributeDesktopAppPolicy = 25,
  PsAttributeChpe = 26,
  PsAttributeMitigationAuditOptions = 27,
  PsAttributeMachineType = 28,
  PsAttributeComponentFilter = 29,
  PsAttributeMax = 30,
} PS_ATTRIBUTE_NUM, *PPS_ATTRIBUTE_NUM;

typedef enum _PO_FX_PERF_STATE_UNIT
{
  PoFxPerfStateUnitOther = 0,
  PoFxPerfStateUnitFrequency = 1,
  PoFxPerfStateUnitBandwidth = 2,
  PoFxPerfStateUnitMaximum = 3,
} PO_FX_PERF_STATE_UNIT, *PPO_FX_PERF_STATE_UNIT;

typedef struct _PO_FX_COMPONENT_PERF_SET
{
  /* 0x0000 */ struct _UNICODE_STRING Name;
  /* 0x0010 */ unsigned __int64 Flags;
  /* 0x0018 */ enum _PO_FX_PERF_STATE_UNIT Unit;
  /* 0x001c */ enum _PO_FX_PERF_STATE_TYPE Type;
  union
  {
    struct
    {
      /* 0x0020 */ unsigned long Count;
      /* 0x0004 */ long Padding_121;
      /* 0x0028 */ struct _PO_FX_PERF_STATE* States;
    } /* size: 0x0010 */ Discrete;
    struct
    {
      /* 0x0020 */ unsigned __int64 Minimum;
      /* 0x0028 */ unsigned __int64 Maximum;
    } /* size: 0x0010 */ Range;
  }; /* size: 0x0010 */
} PO_FX_COMPONENT_PERF_SET, *PPO_FX_COMPONENT_PERF_SET; /* size: 0x0030 */

typedef enum _PPM_PERF_QOS_DISABLE_REASON
{
  PpmPerfQosDisableInternal = 0,
  PpmPerfQosDisableNoProfile = 1,
  PpmPerfQosDisableNoPolicy = 2,
  PpmPerfQosDisableInsufficientPolicy = 3,
  PpmPerfQosDisableMaxOverride = 4,
  PpmPerfQosDisableLowLatency = 5,
  PpmPerfQosDisableSmtScheduler = 6,
  PpmPerfQosDisableNoHardwareSupport = 7,
  PpmPerfQosDisableGroupPolicy = 8,
  PpmPerfQosDisableMax = 9,
} PPM_PERF_QOS_DISABLE_REASON, *PPPM_PERF_QOS_DISABLE_REASON;

typedef enum _MI_VAD_ALLOCATION_CELL_TYPE
{
  MiVadBottomUp = 0,
  MiVadStackPebTeb = 1,
  MiVadReserved64 = 2,
  MiVadAllocationCellMaximum = 3,
} MI_VAD_ALLOCATION_CELL_TYPE, *PMI_VAD_ALLOCATION_CELL_TYPE;

typedef enum _ConnectionResourceConsumerDesc
{
  ConnectionResourceConsumerDescIsUndefined = 0,
  ConnectionResourceConsumerDescIsDevice = 1,
  ConnectionResourceConsumerDescIsOpregion = 2,
  ConnectionResourceConsumerDescMax = 3,
} ConnectionResourceConsumerDesc, *PConnectionResourceConsumerDesc;

typedef enum _PROCESS_TERMINATE_REQUEST_REASON
{
  ProcessTerminateRequestReasonNone = 0,
  ProcessTerminateCommitFail = 1,
  ProcessTerminateWriteToExecuteMemory = 2,
  ProcessTerminateAttachedWriteToExecuteMemory = 3,
  ProcessTerminateRequestReasonMax = 4,
} PROCESS_TERMINATE_REQUEST_REASON, *PPROCESS_TERMINATE_REQUEST_REASON;

typedef struct _PROC_PERF_CHECK_SNAP
{
  /* 0x0000 */ unsigned __int64 Time;
  /* 0x0008 */ unsigned __int64 Active;
  /* 0x0010 */ unsigned __int64 Stall;
  /* 0x0018 */ unsigned __int64 FrequencyScaledActive;
  /* 0x0020 */ unsigned __int64 PerformanceScaledActive;
  /* 0x0028 */ unsigned __int64 PerformanceScaledKernelActive;
  /* 0x0030 */ unsigned __int64 CyclesActive;
  /* 0x0038 */ unsigned __int64 CyclesAffinitized;
  /* 0x0040 */ unsigned __int64 TaggedThreadCycles[3];
  /* 0x0058 */ unsigned long ResponsivenessEvents;
  /* 0x005c */ long __PADDING__[1];
} PROC_PERF_CHECK_SNAP, *PPROC_PERF_CHECK_SNAP; /* size: 0x0060 */

typedef union _WHEA_NOTIFICATION_FLAGS
{
  union
  {
    struct /* bitfield */
    {
      /* 0x0000 */ unsigned short PollIntervalRW : 1; /* bit position: 0 */
      /* 0x0000 */ unsigned short SwitchToPollingThresholdRW : 1; /* bit position: 1 */
      /* 0x0000 */ unsigned short SwitchToPollingWindowRW : 1; /* bit position: 2 */
      /* 0x0000 */ unsigned short ErrorThresholdRW : 1; /* bit position: 3 */
      /* 0x0000 */ unsigned short ErrorThresholdWindowRW : 1; /* bit position: 4 */
      /* 0x0000 */ unsigned short Reserved : 11; /* bit position: 5 */
    }; /* bitfield */
    /* 0x0000 */ unsigned short AsUSHORT;
  }; /* size: 0x0002 */
} WHEA_NOTIFICATION_FLAGS, *PWHEA_NOTIFICATION_FLAGS; /* size: 0x0002 */

typedef struct _WHEA_NOTIFICATION_DESCRIPTOR
{
  /* 0x0000 */ unsigned char Type;
  /* 0x0001 */ unsigned char Length;
  /* 0x0002 */ union _WHEA_NOTIFICATION_FLAGS Flags;
  union
  {
    union
    {
      struct
      {
        /* 0x0004 */ unsigned long PollInterval;
      } /* size: 0x0004 */ Polled;
      struct
      {
        /* 0x0004 */ unsigned long PollInterval;
        /* 0x0008 */ unsigned long Vector;
        /* 0x000c */ unsigned long SwitchToPollingThreshold;
        /* 0x0010 */ unsigned long SwitchToPollingWindow;
        /* 0x0014 */ unsigned long ErrorThreshold;
        /* 0x0018 */ unsigned long ErrorThresholdWindow;
      } /* size: 0x0018 */ Interrupt;
      struct
      {
        /* 0x0004 */ unsigned long PollInterval;
        /* 0x0008 */ unsigned long Vector;
        /* 0x000c */ unsigned long SwitchToPollingThreshold;
        /* 0x0010 */ unsigned long SwitchToPollingWindow;
        /* 0x0014 */ unsigned long ErrorThreshold;
        /* 0x0018 */ unsigned long ErrorThresholdWindow;
      } /* size: 0x0018 */ LocalInterrupt;
      struct
      {
        /* 0x0004 */ unsigned long PollInterval;
        /* 0x0008 */ unsigned long Vector;
        /* 0x000c */ unsigned long SwitchToPollingThreshold;
        /* 0x0010 */ unsigned long SwitchToPollingWindow;
        /* 0x0014 */ unsigned long ErrorThreshold;
        /* 0x0018 */ unsigned long ErrorThresholdWindow;
      } /* size: 0x0018 */ Sci;
      struct
      {
        /* 0x0004 */ unsigned long PollInterval;
        /* 0x0008 */ unsigned long Vector;
        /* 0x000c */ unsigned long SwitchToPollingThreshold;
        /* 0x0010 */ unsigned long SwitchToPollingWindow;
        /* 0x0014 */ unsigned long ErrorThreshold;
        /* 0x0018 */ unsigned long ErrorThresholdWindow;
      } /* size: 0x0018 */ Nmi;
      struct
      {
        /* 0x0004 */ unsigned long PollInterval;
        /* 0x0008 */ unsigned long Vector;
        /* 0x000c */ unsigned long SwitchToPollingThreshold;
        /* 0x0010 */ unsigned long SwitchToPollingWindow;
        /* 0x0014 */ unsigned long ErrorThreshold;
        /* 0x0018 */ unsigned long ErrorThresholdWindow;
      } /* size: 0x0018 */ Sea;
      struct
      {
        /* 0x0004 */ unsigned long PollInterval;
        /* 0x0008 */ unsigned long Vector;
        /* 0x000c */ unsigned long SwitchToPollingThreshold;
        /* 0x0010 */ unsigned long SwitchToPollingWindow;
        /* 0x0014 */ unsigned long ErrorThreshold;
        /* 0x0018 */ unsigned long ErrorThresholdWindow;
      } /* size: 0x0018 */ Sei;
      struct
      {
        /* 0x0004 */ unsigned long PollInterval;
        /* 0x0008 */ unsigned long Vector;
        /* 0x000c */ unsigned long SwitchToPollingThreshold;
        /* 0x0010 */ unsigned long SwitchToPollingWindow;
        /* 0x0014 */ unsigned long ErrorThreshold;
        /* 0x0018 */ unsigned long ErrorThresholdWindow;
      } /* size: 0x0018 */ Gsiv;
    }; /* size: 0x0018 */
  } /* size: 0x0018 */ u;
} WHEA_NOTIFICATION_DESCRIPTOR, *PWHEA_NOTIFICATION_DESCRIPTOR; /* size: 0x001c */

typedef enum _REQUESTER_TYPE
{
  KernelRequester = 0,
  UserProcessRequester = 1,
  UserSharedServiceRequester = 2,
} REQUESTER_TYPE, *PREQUESTER_TYPE;

enum ReplacesCorHdrNumericDefines
{
  COMIMAGE_FLAGS_ILONLY = 1,
  COMIMAGE_FLAGS_32BITREQUIRED = 2,
  COMIMAGE_FLAGS_IL_LIBRARY = 4,
  COMIMAGE_FLAGS_STRONGNAMESIGNED = 8,
  COMIMAGE_FLAGS_NATIVE_ENTRYPOINT = 16,
  COMIMAGE_FLAGS_TRACKDEBUGDATA = 0x10000,
  COMIMAGE_FLAGS_32BITPREFERRED = 0x20000,
  COR_VERSION_MAJOR_V2 = 2,
  COR_VERSION_MAJOR = 2,
  COR_VERSION_MINOR = 5,
  COR_DELETED_NAME_LENGTH = 8,
  COR_VTABLEGAP_NAME_LENGTH = 8,
  NATIVE_TYPE_MAX_CB = 1,
  COR_ILMETHOD_SECT_SMALL_MAX_DATASIZE = 255,
  IMAGE_COR_MIH_METHODRVA = 1,
  IMAGE_COR_MIH_EHRVA = 2,
  IMAGE_COR_MIH_BASICBLOCK = 8,
  COR_VTABLE_32BIT = 1,
  COR_VTABLE_64BIT = 2,
  COR_VTABLE_FROM_UNMANAGED = 4,
  COR_VTABLE_FROM_UNMANAGED_RETAIN_APPDOMAIN = 8,
  COR_VTABLE_CALL_MOST_DERIVED = 16,
  IMAGE_COR_EATJ_THUNK_SIZE = 32,
  MAX_CLASS_NAME = 1024,
  MAX_PACKAGE_NAME = 1024,
};

typedef struct _PROC_PERF_HISTORY_ENTRY
{
  /* 0x0000 */ unsigned short Utility;
  /* 0x0002 */ unsigned short AffinitizedUtility;
  /* 0x0004 */ unsigned short Frequency;
  /* 0x0006 */ unsigned char TaggedPercent[3];
  /* 0x0009 */ char __PADDING__[1];
} PROC_PERF_HISTORY_ENTRY, *PPROC_PERF_HISTORY_ENTRY; /* size: 0x000a */

typedef struct _PROC_PERF_HISTORY
{
  /* 0x0000 */ unsigned long Count;
  /* 0x0004 */ unsigned long Slot;
  /* 0x0008 */ unsigned long UtilityTotal;
  /* 0x000c */ unsigned long AffinitizedUtilityTotal;
  /* 0x0010 */ unsigned long FrequencyTotal;
  /* 0x0014 */ unsigned long TaggedPercentTotal[3];
  /* 0x0020 */ struct _PROC_PERF_HISTORY_ENTRY HistoryList[1];
  /* 0x002a */ char __PADDING__[2];
} PROC_PERF_HISTORY, *PPROC_PERF_HISTORY; /* size: 0x002c */

enum PDC_ACTIVITY_TYPE
{
  PdcNetwork = 0,
  PdcSystem = 1,
  PdcTimer = 2,
  PdcAllNetworks = 3,
  PdcAnyNetwork = 4,
  PdcInvalidActivity = 5,
  PdcMaxActivity = 5,
};

typedef enum _MI_INPAGE_SUPPORT_TYPES
{
  MiInPageSupportExpanded = 0,
  MiInPageSupportRegular = 1,
  MiInPageSupportMaximum = 2,
} MI_INPAGE_SUPPORT_TYPES, *PMI_INPAGE_SUPPORT_TYPES;

typedef struct _WHEA_IPF_CPE_DESCRIPTOR
{
  /* 0x0000 */ unsigned short Type;
  /* 0x0002 */ unsigned char Enabled;
  /* 0x0003 */ unsigned char Reserved;
} WHEA_IPF_CPE_DESCRIPTOR, *PWHEA_IPF_CPE_DESCRIPTOR; /* size: 0x0004 */

typedef enum _POP_IO_STATUS
{
  IoReady = 0,
  IoPending = 1,
  IoDone = 2,
} POP_IO_STATUS, *PPOP_IO_STATUS;

typedef enum _LDR_DLL_LOAD_REASON
{
  LoadReasonStaticDependency = 0,
  LoadReasonStaticForwarderDependency = 1,
  LoadReasonDynamicForwarderDependency = 2,
  LoadReasonDelayloadDependency = 3,
  LoadReasonDynamicLoad = 4,
  LoadReasonAsImageLoad = 5,
  LoadReasonAsDataLoad = 6,
  LoadReasonEnclavePrimary = 7,
  LoadReasonEnclaveDependency = 8,
  LoadReasonUnknown = -1,
} LDR_DLL_LOAD_REASON, *PLDR_DLL_LOAD_REASON;

typedef enum _RTL_GENERIC_COMPARE_RESULTS
{
  GenericLessThan = 0,
  GenericGreaterThan = 1,
  GenericEqual = 2,
} RTL_GENERIC_COMPARE_RESULTS, *PRTL_GENERIC_COMPARE_RESULTS;

typedef enum _FAULT_INFORMATION_ARCH
{
  FaultInformationInvalid = 0,
  FaultInformationArm64 = 1,
  FaultInformationX64 = 2,
} FAULT_INFORMATION_ARCH, *PFAULT_INFORMATION_ARCH;

typedef struct _RTL_SPLAY_LINKS
{
  /* 0x0000 */ struct _RTL_SPLAY_LINKS* Parent;
  /* 0x0008 */ struct _RTL_SPLAY_LINKS* LeftChild;
  /* 0x0010 */ struct _RTL_SPLAY_LINKS* RightChild;
} RTL_SPLAY_LINKS, *PRTL_SPLAY_LINKS; /* size: 0x0018 */

typedef enum _MI_AVAILABLE_PAGE_WAIT_TYPES
{
  AvailablePagesWaitLow = 0,
  AvailablePagesWaitHigh = 1,
  AvailablePagesWaitVeryHigh = 2,
  AvailablePagesWaitMaximum = 3,
} MI_AVAILABLE_PAGE_WAIT_TYPES, *PMI_AVAILABLE_PAGE_WAIT_TYPES;

typedef enum _ETW_HEADER_TYPE
{
  EtwHeaderTypeNative = 0,
  EtwHeaderTypeWow = 1,
  EtwHeaderTypeMax = 2,
} ETW_HEADER_TYPE, *PETW_HEADER_TYPE;

typedef struct _PPM_FFH_THROTTLE_STATE_INFO
{
  /* 0x0000 */ unsigned char EnableLogging;
  /* 0x0001 */ char Padding_122[3];
  /* 0x0004 */ unsigned long MismatchCount;
  /* 0x0008 */ unsigned char Initialized;
  /* 0x0009 */ char Padding_123[7];
  /* 0x0010 */ unsigned __int64 LastValue;
  /* 0x0018 */ union _LARGE_INTEGER LastLogTickCount;
} PPM_FFH_THROTTLE_STATE_INFO, *PPPM_FFH_THROTTLE_STATE_INFO; /* size: 0x0020 */

typedef enum _PROCESSOR_PRESENCE
{
  ProcessorPresenceNt = 0,
  ProcessorPresenceHv = 1,
  ProcessorPresenceHidden = 2,
} PROCESSOR_PRESENCE, *PPROCESSOR_PRESENCE;

typedef struct _SUPPORTED_RANGE
{
  /* 0x0000 */ struct _SUPPORTED_RANGE* Next;
  /* 0x0008 */ unsigned long SystemAddressSpace;
  /* 0x000c */ long Padding_124;
  /* 0x0010 */ __int64 SystemBase;
  /* 0x0018 */ __int64 Base;
  /* 0x0020 */ __int64 Limit;
} SUPPORTED_RANGE, *PSUPPORTED_RANGE; /* size: 0x0028 */

typedef struct _SUPPORTED_RANGES
{
  /* 0x0000 */ unsigned short Version;
  /* 0x0002 */ unsigned char Sorted;
  /* 0x0003 */ unsigned char Reserved;
  /* 0x0004 */ unsigned long NoIO;
  /* 0x0008 */ struct _SUPPORTED_RANGE IO;
  /* 0x0030 */ unsigned long NoMemory;
  /* 0x0034 */ long Padding_125;
  /* 0x0038 */ struct _SUPPORTED_RANGE Memory;
  /* 0x0060 */ unsigned long NoPrefetchMemory;
  /* 0x0064 */ long Padding_126;
  /* 0x0068 */ struct _SUPPORTED_RANGE PrefetchMemory;
  /* 0x0090 */ unsigned long NoDma;
  /* 0x0094 */ long Padding_127;
  /* 0x0098 */ struct _SUPPORTED_RANGE Dma;
} SUPPORTED_RANGES, *PSUPPORTED_RANGES; /* size: 0x00c0 */

typedef enum _ARBITER_ACTION
{
  ArbiterActionTestAllocation = 0,
  ArbiterActionRetestAllocation = 1,
  ArbiterActionCommitAllocation = 2,
  ArbiterActionRollbackAllocation = 3,
  ArbiterActionQueryAllocatedResources = 4,
  ArbiterActionWriteReservedResources = 5,
  ArbiterActionQueryConflict = 6,
  ArbiterActionQueryArbitrate = 7,
  ArbiterActionAddReserved = 8,
  ArbiterActionBootAllocation = 9,
} ARBITER_ACTION, *PARBITER_ACTION;

typedef struct _PROC_PERF_QOS_CLASS_POLICY
{
  /* 0x0000 */ unsigned long MaxPolicyPercent;
  /* 0x0004 */ unsigned long MaxEquivalentFrequencyPercent;
  /* 0x0008 */ unsigned long MinPolicyPercent;
  /* 0x000c */ unsigned long AutonomousActivityWindow;
  /* 0x0010 */ unsigned long EnergyPerfPreference;
  /* 0x0014 */ unsigned char ProvideGuidance;
  /* 0x0015 */ unsigned char AllowThrottling;
  /* 0x0016 */ unsigned char PerfBoostMode;
  /* 0x0017 */ unsigned char LatencyHintPerf;
  /* 0x0018 */ unsigned char TrackDesiredCrossClass;
  /* 0x0019 */ char __PADDING__[3];
} PROC_PERF_QOS_CLASS_POLICY, *PPROC_PERF_QOS_CLASS_POLICY; /* size: 0x001c */

typedef struct _PERF_CONTROL_STATE_SELECTION
{
  /* 0x0000 */ unsigned __int64 SelectedState;
  /* 0x0008 */ unsigned long SelectedPercent;
  /* 0x000c */ unsigned long SelectedFrequency;
  /* 0x0010 */ unsigned long MinPercent;
  /* 0x0014 */ unsigned long MaxPercent;
  /* 0x0018 */ unsigned long TolerancePercent;
  /* 0x001c */ unsigned long EppPercent;
  /* 0x0020 */ unsigned long AutonomousActivityWindow;
  /* 0x0024 */ unsigned char Autonomous;
  /* 0x0025 */ unsigned char InheritFromDomain;
  /* 0x0026 */ char __PADDING__[2];
} PERF_CONTROL_STATE_SELECTION, *PPERF_CONTROL_STATE_SELECTION; /* size: 0x0028 */

typedef struct _PROC_PERF_DOMAIN
{
  /* 0x0000 */ struct _LIST_ENTRY Link;
  /* 0x0010 */ struct _PROC_PERF_CHECK_CONTEXT* Master;
  /* 0x0018 */ struct _KAFFINITY_EX Members;
  /* 0x00c0 */ unsigned __int64 DomainContext;
  /* 0x00c8 */ unsigned long ProcessorCount;
  /* 0x00cc */ unsigned char EfficiencyClass;
  /* 0x00cd */ unsigned char NominalPerformanceClass;
  /* 0x00ce */ unsigned char HighestPerformanceClass;
  /* 0x00cf */ char Padding_128;
  /* 0x00d0 */ enum _PROCESSOR_PRESENCE Presence;
  /* 0x00d4 */ long Padding_129;
  /* 0x00d8 */ struct _PROC_PERF_CONSTRAINT* Processors;
  /* 0x00e0 */ void* GetFFHThrottleState /* function */;
  /* 0x00e8 */ void* TimeWindowHandler /* function */;
  /* 0x00f0 */ void* BoostPolicyHandler /* function */;
  /* 0x00f8 */ void* BoostModeHandler /* function */;
  /* 0x0100 */ void* AutonomousActivityWindowHandler /* function */;
  /* 0x0108 */ void* AutonomousModeHandler /* function */;
  /* 0x0110 */ void* ReinitializeHandler /* function */;
  /* 0x0118 */ void* PerfSelectionHandler /* function */;
  /* 0x0120 */ void* PerfControlHandler /* function */;
  /* 0x0128 */ void* PerfControlHandlerHidden /* function */;
  /* 0x0130 */ void* DomainPerfControlHandler /* function */;
  /* 0x0138 */ unsigned long MaxFrequency;
  /* 0x013c */ unsigned long NominalFrequency;
  /* 0x0140 */ unsigned long MaxPercent;
  /* 0x0144 */ unsigned long MinPerfPercent;
  /* 0x0148 */ unsigned long MinThrottlePercent;
  /* 0x014c */ unsigned long AdvertizedMaximumFrequency;
  /* 0x0150 */ unsigned __int64 MinimumRelativePerformance;
  /* 0x0158 */ unsigned __int64 NominalRelativePerformance;
  /* 0x0160 */ unsigned char NominalRelativePerformancePercent;
  /* 0x0161 */ unsigned char Coordination;
  /* 0x0162 */ unsigned char HardPlatformCap;
  /* 0x0163 */ unsigned char AffinitizeControl;
  /* 0x0164 */ unsigned char EfficientThrottle;
  /* 0x0165 */ unsigned char AllowSchedulerDirectedPerfStates;
  /* 0x0166 */ unsigned char InitiateAllProcessors;
  /* 0x0167 */ unsigned char AutonomousMode;
  /* 0x0168 */ unsigned char ProvideGuidance;
  /* 0x0169 */ char Padding_130[3];
  /* 0x016c */ unsigned long DesiredPercent;
  /* 0x0170 */ unsigned long GuaranteedPercent;
  /* 0x0174 */ unsigned char EngageResponsivenessOverrides;
  /* 0x0175 */ char Padding_131[3];
  /* 0x0178 */ struct _PROC_PERF_QOS_CLASS_POLICY QosPolicies[5];
  /* 0x0204 */ unsigned long QosDisableReasons[5];
  /* 0x0218 */ unsigned short QosEquivalencyMasks[5];
  /* 0x0222 */ unsigned char QosSupported;
  /* 0x0223 */ char Padding_132;
  /* 0x0224 */ volatile unsigned long SelectionGeneration;
  /* 0x0228 */ struct _PERF_CONTROL_STATE_SELECTION QosSelection[5];
  /* 0x02f0 */ unsigned __int64 PerfChangeTime;
  /* 0x02f8 */ unsigned long PerfChangeIntervalCount;
  /* 0x02fc */ unsigned char Force;
  /* 0x02fd */ unsigned char Update;
  /* 0x02fe */ unsigned char Apply;
  /* 0x02ff */ char __PADDING__[1];
} PROC_PERF_DOMAIN, *PPROC_PERF_DOMAIN; /* size: 0x0300 */

typedef struct _NT_TIB
{
  /* 0x0000 */ struct _EXCEPTION_REGISTRATION_RECORD* ExceptionList;
  /* 0x0008 */ void* StackBase;
  /* 0x0010 */ void* StackLimit;
  /* 0x0018 */ void* SubSystemTib;
  union
  {
    /* 0x0020 */ void* FiberData;
    /* 0x0020 */ unsigned long Version;
  }; /* size: 0x0008 */
  /* 0x0028 */ void* ArbitraryUserPointer;
  /* 0x0030 */ struct _NT_TIB* Self;
} NT_TIB, *PNT_TIB; /* size: 0x0038 */

typedef struct _KPCR
{
  union
  {
    /* 0x0000 */ struct _NT_TIB NtTib;
    struct
    {
      /* 0x0000 */ union _KGDTENTRY64* GdtBase;
      /* 0x0008 */ struct _KTSS64* TssBase;
      /* 0x0010 */ unsigned __int64 UserRsp;
      /* 0x0018 */ struct _KPCR* Self;
      /* 0x0020 */ struct _KPRCB* CurrentPrcb;
      /* 0x0028 */ struct _KSPIN_LOCK_QUEUE* LockArray;
      /* 0x0030 */ void* Used_Self;
    }; /* size: 0x0038 */
  }; /* size: 0x0038 */
  /* 0x0038 */ union _KIDTENTRY64* IdtBase;
  /* 0x0040 */ unsigned __int64 Unused[2];
  /* 0x0050 */ unsigned char Irql;
  /* 0x0051 */ unsigned char SecondLevelCacheAssociativity;
  /* 0x0052 */ unsigned char ObsoleteNumber;
  /* 0x0053 */ unsigned char Fill0;
  /* 0x0054 */ unsigned long Unused0[3];
  /* 0x0060 */ unsigned short MajorVersion;
  /* 0x0062 */ unsigned short MinorVersion;
  /* 0x0064 */ unsigned long StallScaleFactor;
  /* 0x0068 */ void* Unused1[3];
  /* 0x0080 */ unsigned long KernelReserved[15];
  /* 0x00bc */ unsigned long SecondLevelCacheSize;
  /* 0x00c0 */ unsigned long HalReserved[16];
  /* 0x0100 */ unsigned long Unused2;
  /* 0x0104 */ long Padding_133;
  /* 0x0108 */ void* KdVersionBlock;
  /* 0x0110 */ void* Unused3;
  /* 0x0118 */ unsigned long PcrAlign1[24];
} KPCR, *PKPCR; /* size: 0x0178 */

typedef enum _FAULT_INFORMATION_ARM64_TYPE
{
  UnsupportedUpstreamTransaction = 0,
  AddressSizeFault = 1,
  TlbMatchConflict = 2,
  ExternalFault = 3,
  PermissionFault = 4,
  AccessFlagFault = 5,
  TranslationFault = 6,
  MaxFaultType = 7,
} FAULT_INFORMATION_ARM64_TYPE, *PFAULT_INFORMATION_ARM64_TYPE;

typedef enum _KTRANSACTION_OUTCOME
{
  KTxOutcomeUninitialized = 0,
  KTxOutcomeUndetermined = 1,
  KTxOutcomeCommitted = 2,
  KTxOutcomeAborted = 3,
  KTxOutcomeUnavailable = 4,
} KTRANSACTION_OUTCOME, *PKTRANSACTION_OUTCOME;

typedef enum _PNP_WATCHDOG_TYPE
{
  PNP_EVENT_WORKER_WATCHDOG = 1,
  PNP_DEVICE_COMPLETION_QUEUE_WATCHDOG = 2,
  PNP_DELAYED_REMOVE_WORKER_WATCHDOG = 3,
  PNP_ADD_DEVICE_WATCHDOG = 4,
  PNP_DRIVER_ENTRY_WATCHDOG = 5,
} PNP_WATCHDOG_TYPE, *PPNP_WATCHDOG_TYPE;

typedef enum _DUMP_EVENTS
{
  DUMP_EVENT_NONE = 0,
  DUMP_EVENT_HIBER_RESUME = 1,
  DUMP_EVENT_HIBER_RESUME_END = 2,
} DUMP_EVENTS, *PDUMP_EVENTS;

typedef enum _CONFIGURATION_CLASS
{
  SystemClass = 0,
  ProcessorClass = 1,
  CacheClass = 2,
  AdapterClass = 3,
  ControllerClass = 4,
  PeripheralClass = 5,
  MemoryClass = 6,
  MaximumClass = 7,
} CONFIGURATION_CLASS, *PCONFIGURATION_CLASS;

typedef enum _TAG_UNNAMED_1
{
  KTMOH_CommitTransaction_Result = 1,
  KTMOH_RollbackTransaction_Result = 2,
} TAG_UNNAMED_1, *PTAG_UNNAMED_1;

typedef enum _FS_FILTER_SECTION_SYNC_TYPE
{
  SyncTypeOther = 0,
  SyncTypeCreateSection = 1,
} FS_FILTER_SECTION_SYNC_TYPE, *PFS_FILTER_SECTION_SYNC_TYPE;

typedef union _KIDTENTRY64
{
  union
  {
    struct
    {
      /* 0x0000 */ unsigned short OffsetLow;
      /* 0x0002 */ unsigned short Selector;
      struct /* bitfield */
      {
        /* 0x0004 */ unsigned short IstIndex : 3; /* bit position: 0 */
        /* 0x0004 */ unsigned short Reserved0 : 5; /* bit position: 3 */
        /* 0x0004 */ unsigned short Type : 5; /* bit position: 8 */
        /* 0x0004 */ unsigned short Dpl : 2; /* bit position: 13 */
        /* 0x0004 */ unsigned short Present : 1; /* bit position: 15 */
      }; /* bitfield */
      /* 0x0006 */ unsigned short OffsetMiddle;
      /* 0x0008 */ unsigned long OffsetHigh;
      /* 0x000c */ unsigned long Reserved1;
    }; /* size: 0x0010 */
    /* 0x0000 */ unsigned __int64 Alignment;
  }; /* size: 0x0010 */
} KIDTENTRY64, *PKIDTENTRY64; /* size: 0x0010 */

typedef struct _CM_KCB_UOW
{
  /* 0x0000 */ struct _LIST_ENTRY TransactionListEntry;
  /* 0x0010 */ struct _CM_INTENT_LOCK* KCBLock;
  /* 0x0018 */ struct _CM_INTENT_LOCK* KeyLock;
  /* 0x0020 */ struct _LIST_ENTRY KCBListEntry;
  /* 0x0030 */ struct _CM_KEY_CONTROL_BLOCK* KeyControlBlock;
  /* 0x0038 */ struct _CM_TRANS* Transaction;
  /* 0x0040 */ unsigned long UoWState;
  /* 0x0044 */ enum UoWActionType ActionType;
  /* 0x0048 */ enum HSTORAGE_TYPE StorageType;
  /* 0x004c */ long Padding_134;
  /* 0x0050 */ struct _CM_KCB_UOW* ParentUoW;
  union
  {
    /* 0x0058 */ struct _CM_KEY_CONTROL_BLOCK* ChildKCB;
    /* 0x0058 */ unsigned long VolatileKeyCell;
    struct
    {
      /* 0x0058 */ unsigned long OldValueCell;
      /* 0x005c */ unsigned long NewValueCell;
    }; /* size: 0x0008 */
    /* 0x0058 */ unsigned long UserFlags;
    /* 0x0058 */ union _LARGE_INTEGER LastWriteTime;
    struct
    {
      /* 0x0058 */ struct _CM_KEY_SECURITY_CACHE* TxCachedSecurity;
      /* 0x0060 */ unsigned long TxSecurityCell;
      /* 0x0064 */ unsigned char UpdateEntireSecurity;
    }; /* size: 0x000d */
    struct
    {
      /* 0x0058 */ struct _CM_KEY_CONTROL_BLOCK* OldChildKCB;
      /* 0x0060 */ struct _CM_KEY_CONTROL_BLOCK* NewChildKCB;
    }; /* size: 0x0010 */
    struct
    {
      /* 0x0058 */ struct _CM_KEY_CONTROL_BLOCK* OtherChildKCB;
      /* 0x0060 */ unsigned long ThisVolatileKeyCell;
    }; /* size: 0x000c */
  }; /* size: 0x0010 */
  union
  {
    /* 0x0068 */ void* PrepareDataPointer;
    /* 0x0068 */ struct _CM_UOW_SET_SD_DATA* SecurityData;
    /* 0x0068 */ struct _CM_UOW_KEY_STATE_MODIFICATION* ModifyKeysData;
    /* 0x0068 */ struct _CM_UOW_SET_VALUE_LIST_DATA* SetValueData;
  }; /* size: 0x0008 */
  union
  {
    /* 0x0070 */ struct _CM_UOW_SET_VALUE_KEY_DATA* ValueData;
    /* 0x0070 */ struct _CMP_DISCARD_AND_REPLACE_KCB_CONTEXT* DiscardReplaceContext;
  }; /* size: 0x0008 */
} CM_KCB_UOW, *PCM_KCB_UOW; /* size: 0x0078 */

typedef struct _STRING
{
  /* 0x0000 */ unsigned short Length;
  /* 0x0002 */ unsigned short MaximumLength;
  /* 0x0004 */ long Padding_135;
  /* 0x0008 */ char* Buffer;
} STRING, *PSTRING; /* size: 0x0010 */

typedef struct _TXN_PARAMETER_BLOCK
{
  /* 0x0000 */ unsigned short Length;
  /* 0x0002 */ unsigned short TxFsContext;
  /* 0x0004 */ long Padding_136;
  /* 0x0008 */ void* TransactionObject;
} TXN_PARAMETER_BLOCK, *PTXN_PARAMETER_BLOCK; /* size: 0x0010 */

typedef struct _DEVICE_FLAGS
{
  struct /* bitfield */
  {
    /* 0x0000 */ unsigned long Failed : 1; /* bit position: 0 */
    /* 0x0000 */ unsigned long ReadOnly : 1; /* bit position: 1 */
    /* 0x0000 */ unsigned long Removable : 1; /* bit position: 2 */
    /* 0x0000 */ unsigned long ConsoleIn : 1; /* bit position: 3 */
    /* 0x0000 */ unsigned long ConsoleOut : 1; /* bit position: 4 */
    /* 0x0000 */ unsigned long Input : 1; /* bit position: 5 */
    /* 0x0000 */ unsigned long Output : 1; /* bit position: 6 */
  }; /* bitfield */
} DEVICE_FLAGS, *PDEVICE_FLAGS; /* size: 0x0004 */

typedef struct _CONFIGURATION_COMPONENT
{
  /* 0x0000 */ enum _CONFIGURATION_CLASS Class;
  /* 0x0004 */ enum _CONFIGURATION_TYPE Type;
  /* 0x0008 */ struct _DEVICE_FLAGS Flags;
  /* 0x000c */ unsigned short Version;
  /* 0x000e */ unsigned short Revision;
  /* 0x0010 */ unsigned long Key;
  union
  {
    /* 0x0014 */ unsigned long AffinityMask;
    struct
    {
      /* 0x0014 */ unsigned short Group;
      /* 0x0016 */ unsigned short GroupIndex;
    }; /* size: 0x0004 */
  }; /* size: 0x0004 */
  /* 0x0018 */ unsigned long ConfigurationDataLength;
  /* 0x001c */ unsigned long IdentifierLength;
  /* 0x0020 */ char* Identifier;
} CONFIGURATION_COMPONENT, *PCONFIGURATION_COMPONENT; /* size: 0x0028 */

typedef struct _CONFIGURATION_COMPONENT_DATA
{
  /* 0x0000 */ struct _CONFIGURATION_COMPONENT_DATA* Parent;
  /* 0x0008 */ struct _CONFIGURATION_COMPONENT_DATA* Child;
  /* 0x0010 */ struct _CONFIGURATION_COMPONENT_DATA* Sibling;
  /* 0x0018 */ struct _CONFIGURATION_COMPONENT ComponentEntry;
  /* 0x0040 */ void* ConfigurationData;
} CONFIGURATION_COMPONENT_DATA, *PCONFIGURATION_COMPONENT_DATA; /* size: 0x0048 */

typedef struct _KFLOATING_SAVE
{
  /* 0x0000 */ unsigned long Dummy;
} KFLOATING_SAVE, *PKFLOATING_SAVE; /* size: 0x0004 */

typedef struct _FAST_MUTEX
{
  /* 0x0000 */ long Count;
  /* 0x0004 */ long Padding_137;
  /* 0x0008 */ void* Owner;
  /* 0x0010 */ unsigned long Contention;
  /* 0x0014 */ long Padding_138;
  /* 0x0018 */ struct _KEVENT Event;
  /* 0x0030 */ unsigned long OldIrql;
  /* 0x0034 */ long __PADDING__[1];
} FAST_MUTEX, *PFAST_MUTEX; /* size: 0x0038 */

typedef union _AER_BRIDGE_DESCRIPTOR_FLAGS
{
  union
  {
    struct /* bitfield */
    {
      /* 0x0000 */ unsigned short UncorrectableErrorMaskRW : 1; /* bit position: 0 */
      /* 0x0000 */ unsigned short UncorrectableErrorSeverityRW : 1; /* bit position: 1 */
      /* 0x0000 */ unsigned short CorrectableErrorMaskRW : 1; /* bit position: 2 */
      /* 0x0000 */ unsigned short AdvancedCapsAndControlRW : 1; /* bit position: 3 */
      /* 0x0000 */ unsigned short SecondaryUncorrectableErrorMaskRW : 1; /* bit position: 4 */
      /* 0x0000 */ unsigned short SecondaryUncorrectableErrorSevRW : 1; /* bit position: 5 */
      /* 0x0000 */ unsigned short SecondaryCapsAndControlRW : 1; /* bit position: 6 */
      /* 0x0000 */ unsigned short Reserved : 9; /* bit position: 7 */
    }; /* bitfield */
    /* 0x0000 */ unsigned short AsUSHORT;
  }; /* size: 0x0002 */
} AER_BRIDGE_DESCRIPTOR_FLAGS, *PAER_BRIDGE_DESCRIPTOR_FLAGS; /* size: 0x0002 */

typedef struct _WHEA_AER_BRIDGE_DESCRIPTOR
{
  /* 0x0000 */ unsigned short Type;
  /* 0x0002 */ unsigned char Enabled;
  /* 0x0003 */ unsigned char Reserved;
  /* 0x0004 */ unsigned long BusNumber;
  /* 0x0008 */ struct _WHEA_PCI_SLOT_NUMBER Slot;
  /* 0x000c */ unsigned short DeviceControl;
  /* 0x000e */ union _AER_BRIDGE_DESCRIPTOR_FLAGS Flags;
  /* 0x0010 */ unsigned long UncorrectableErrorMask;
  /* 0x0014 */ unsigned long UncorrectableErrorSeverity;
  /* 0x0018 */ unsigned long CorrectableErrorMask;
  /* 0x001c */ unsigned long AdvancedCapsAndControl;
  /* 0x0020 */ unsigned long SecondaryUncorrectableErrorMask;
  /* 0x0024 */ unsigned long SecondaryUncorrectableErrorSev;
  /* 0x0028 */ unsigned long SecondaryCapsAndControl;
} WHEA_AER_BRIDGE_DESCRIPTOR, *PWHEA_AER_BRIDGE_DESCRIPTOR; /* size: 0x002c */

typedef struct _GENERAL_LOOKASIDE_POOL
{
  union
  {
    /* 0x0000 */ union _SLIST_HEADER ListHead;
    /* 0x0000 */ struct _SINGLE_LIST_ENTRY SingleListHead;
  }; /* size: 0x0010 */
  /* 0x0010 */ unsigned short Depth;
  /* 0x0012 */ unsigned short MaximumDepth;
  /* 0x0014 */ unsigned long TotalAllocates;
  union
  {
    /* 0x0018 */ unsigned long AllocateMisses;
    /* 0x0018 */ unsigned long AllocateHits;
  }; /* size: 0x0004 */
  /* 0x001c */ unsigned long TotalFrees;
  union
  {
    /* 0x0020 */ unsigned long FreeMisses;
    /* 0x0020 */ unsigned long FreeHits;
  }; /* size: 0x0004 */
  /* 0x0024 */ enum _POOL_TYPE Type;
  /* 0x0028 */ unsigned long Tag;
  /* 0x002c */ unsigned long Size;
  union
  {
    /* 0x0030 */ void* AllocateEx /* function */;
    /* 0x0030 */ void* Allocate /* function */;
  }; /* size: 0x0008 */
  union
  {
    /* 0x0038 */ void* FreeEx /* function */;
    /* 0x0038 */ void* Free /* function */;
  }; /* size: 0x0008 */
  /* 0x0040 */ struct _LIST_ENTRY ListEntry;
  /* 0x0050 */ unsigned long LastTotalAllocates;
  union
  {
    /* 0x0054 */ unsigned long LastAllocateMisses;
    /* 0x0054 */ unsigned long LastAllocateHits;
  }; /* size: 0x0004 */
  /* 0x0058 */ unsigned long Future[2];
} GENERAL_LOOKASIDE_POOL, *PGENERAL_LOOKASIDE_POOL; /* size: 0x0060 */

typedef struct _LOOKASIDE_LIST_EX
{
  /* 0x0000 */ struct _GENERAL_LOOKASIDE_POOL L;
} LOOKASIDE_LIST_EX, *PLOOKASIDE_LIST_EX; /* size: 0x0060 */

typedef struct _SHARED_CACHE_MAP_LIST_CURSOR
{
  /* 0x0000 */ struct _LIST_ENTRY SharedCacheMapLinks;
  /* 0x0010 */ unsigned long Flags;
  /* 0x0014 */ long __PADDING__[1];
} SHARED_CACHE_MAP_LIST_CURSOR, *PSHARED_CACHE_MAP_LIST_CURSOR; /* size: 0x0018 */

typedef struct _DIRTY_PAGE_STATISTICS
{
  /* 0x0000 */ unsigned __int64 DirtyPages;
  /* 0x0008 */ unsigned __int64 DirtyPagesLastScan;
  /* 0x0010 */ unsigned long DirtyPagesScheduledLastScan;
  /* 0x0014 */ long __PADDING__[1];
} DIRTY_PAGE_STATISTICS, *PDIRTY_PAGE_STATISTICS; /* size: 0x0018 */

typedef struct _DIRTY_PAGE_THRESHOLDS
{
  /* 0x0000 */ unsigned __int64 DirtyPageThreshold;
  /* 0x0008 */ unsigned __int64 DirtyPageThresholdTop;
  /* 0x0010 */ unsigned __int64 DirtyPageThresholdBottom;
  /* 0x0018 */ unsigned long DirtyPageTarget;
  /* 0x001c */ long Padding_139;
  /* 0x0020 */ unsigned __int64 AggregateAvailablePages;
  /* 0x0028 */ unsigned __int64 AggregateDirtyPages;
  /* 0x0030 */ unsigned long AvailableHistory;
  /* 0x0034 */ long __PADDING__[1];
} DIRTY_PAGE_THRESHOLDS, *PDIRTY_PAGE_THRESHOLDS; /* size: 0x0038 */

typedef struct _CC_PARTITION
{
  /* 0x0000 */ short NodeTypeCode;
  /* 0x0002 */ short NodeByteSize;
  /* 0x0004 */ long Padding_140;
  /* 0x0008 */ struct _EPARTITION* PartitionObject;
  /* 0x0010 */ struct _LIST_ENTRY CleanSharedCacheMapList;
  /* 0x0020 */ struct _LIST_ENTRY CleanSharedCacheMapWithLogHandleList;
  /* 0x0030 */ struct _SHARED_CACHE_MAP_LIST_CURSOR DirtySharedCacheMapList;
  /* 0x0048 */ struct _SHARED_CACHE_MAP_LIST_CURSOR LazyWriteCursor;
  /* 0x0060 */ struct _LIST_ENTRY DirtySharedCacheMapWithLogHandleList;
  /* 0x0070 */ long Padding_141[4];
  /* 0x0080 */ unsigned __int64 PrivateLock;
  /* 0x0088 */ unsigned long ConsecutiveWorklessLazyScanCount;
  /* 0x008c */ unsigned char ForcedDisableLazywriteScan;
  /* 0x008d */ char Padding_142[51];
  /* 0x00c0 */ unsigned __int64 WorkQueueLock;
  /* 0x00c8 */ unsigned long NumberWorkerThreads;
  /* 0x00cc */ unsigned long NumberActiveWorkerThreads;
  /* 0x00d0 */ struct _LIST_ENTRY IdleWorkerThreadList;
  /* 0x00e0 */ struct _LIST_ENTRY FastTeardownWorkQueue;
  /* 0x00f0 */ struct _LIST_ENTRY ExpressWorkQueue;
  /* 0x0100 */ struct _LIST_ENTRY RegularWorkQueue;
  /* 0x0110 */ struct _LIST_ENTRY PostTickWorkQueue;
  /* 0x0120 */ struct _LIST_ENTRY CleanCachemapUninitWorkQueue;
  /* 0x0130 */ struct _LIST_ENTRY IdleExtraWriteBehindThreadList;
  /* 0x0140 */ unsigned long ActiveExtraWriteBehindThreads;
  /* 0x0144 */ unsigned long MaxExtraWriteBehindThreads;
  /* 0x0148 */ struct _LIST_ENTRY IdleCacheMapUninitThreadList;
  /* 0x0158 */ unsigned long ActiveCacheMapUninitThreads;
  /* 0x015c */ unsigned long MaxCacheMapUninitThreads;
  /* 0x0160 */ unsigned char QueueThrottle;
  /* 0x0161 */ char Padding_143[3];
  /* 0x0164 */ unsigned long PostTickWorkItemCount;
  /* 0x0168 */ unsigned long ThreadsActiveBeforeThrottle;
  /* 0x016c */ unsigned long ExtraWBThreadsActiveBeforeThrottle;
  /* 0x0170 */ unsigned long ExecutingWriteBehindWorkItems;
  /* 0x0174 */ unsigned long ExecutingHighPriorityWorkItem;
  /* 0x0178 */ struct _KEVENT LowMemoryEvent;
  /* 0x0190 */ struct _KEVENT PowerEvent;
  /* 0x01a8 */ struct _KEVENT PeriodicEvent;
  /* 0x01c0 */ struct _KEVENT WaitingForTeardownEvent;
  /* 0x01d8 */ struct _KEVENT CoalescingFlushEvent;
  /* 0x01f0 */ unsigned long PagesYetToWrite;
  /* 0x01f4 */ long Padding_144;
  /* 0x01f8 */ struct _LAZY_WRITER LazyWriter;
  /* 0x0280 */ struct _DIRTY_PAGE_STATISTICS DirtyPageStatistics;
  /* 0x0298 */ struct _DIRTY_PAGE_THRESHOLDS DirtyPageThresholds;
  /* 0x02d0 */ struct _WRITE_BEHIND_THROUGHPUT* ThroughputStats;
  /* 0x02d8 */ long ThroughputTrend;
  /* 0x02dc */ long Padding_145;
  /* 0x02e0 */ unsigned __int64 AverageAvailablePages;
  /* 0x02e8 */ unsigned __int64 AverageDirtyPages;
  /* 0x02f0 */ unsigned __int64 PagesSkippedDueToHotSpot;
  /* 0x02f8 */ union _LARGE_INTEGER PrevRegularQueueItemRunTime;
  /* 0x0300 */ union _LARGE_INTEGER PrevExtraWBThreadCheckTime;
  /* 0x0308 */ unsigned char AddExtraWriteBehindThreads;
  /* 0x0309 */ unsigned char RemoveExtraThreadPending;
  /* 0x030a */ char Padding_146[6];
  /* 0x0310 */ struct _LIST_ENTRY DeferredWrites;
  /* 0x0320 */ long Padding_147[8];
  /* 0x0340 */ unsigned __int64 DeferredWriteSpinLock;
  /* 0x0348 */ struct _LIST_ENTRY* IdleAsyncReadWorkerThreadList;
  /* 0x0350 */ unsigned long* NumberActiveAsyncReadWorkerThreads;
  /* 0x0358 */ unsigned long* NumberActiveCompleteAsyncReadWorkItems;
  /* 0x0360 */ struct _LIST_ENTRY* AsyncReadWorkQueue;
  /* 0x0368 */ struct _LIST_ENTRY* AsyncReadCompletionWorkQueue;
  /* 0x0370 */ struct _KEVENT* NewAsyncReadRequestEvent;
  /* 0x0378 */ struct _ASYNC_READ_THREAD_STATS* ReaderThreadsStats;
  /* 0x0380 */ struct _EX_PUSH_LOCK AsyncReadWorkQueueLock;
  /* 0x0388 */ struct _LIST_ENTRY VacbFreeHighPriorityList;
  /* 0x0398 */ unsigned long NumberOfFreeHighPriorityVacbs;
  /* 0x039c */ long Padding_148;
  /* 0x03a0 */ struct _ETHREAD* LowPriWorkerThread;
  /* 0x03a8 */ struct _SHARED_CACHE_MAP* LowPriSharedCacheMap;
  /* 0x03b0 */ long LowPriOldCpuPriority;
  /* 0x03b4 */ enum _IO_PRIORITY_HINT LowPriOldIoPriority;
  /* 0x03b8 */ struct _EX_PUSH_LOCK LowPriorityWorkerThreadLock;
  /* 0x03c0 */ unsigned long MaxNumberOfWriteBehindThreads;
  /* 0x03c4 */ unsigned char CoalescingState;
  /* 0x03c5 */ unsigned char ActivePartition;
  /* 0x03c6 */ unsigned char RundownPhase;
  /* 0x03c7 */ char Padding_149;
  /* 0x03c8 */ __int64 RefCount;
  /* 0x03d0 */ struct _KEVENT ExitEvent;
  /* 0x03e8 */ struct _KEVENT FinalDereferenceEvent;
  /* 0x0400 */ void* LazyWriteScanThreadHandle;
  /* 0x0408 */ long __PADDING__[14];
} CC_PARTITION, *PCC_PARTITION; /* size: 0x0440 */

typedef struct _MM_SESSION_SPACE_FLAGS
{
  struct /* bitfield */
  {
    /* 0x0000 */ unsigned long Initialized : 1; /* bit position: 0 */
    /* 0x0000 */ unsigned long DeletePending : 1; /* bit position: 1 */
    /* 0x0000 */ unsigned long PoolInitialized : 1; /* bit position: 2 */
    /* 0x0000 */ unsigned long DynamicVaInitialized : 1; /* bit position: 3 */
    /* 0x0000 */ unsigned long WsInitialized : 1; /* bit position: 4 */
    /* 0x0000 */ unsigned long PoolDestroyed : 1; /* bit position: 5 */
    /* 0x0000 */ unsigned long ObjectInitialized : 1; /* bit position: 6 */
    /* 0x0000 */ unsigned long SessionHeapInitialized : 1; /* bit position: 7 */
    /* 0x0000 */ unsigned long SessionHeapDestroyed : 1; /* bit position: 8 */
    /* 0x0000 */ unsigned long LeakedPoolDeliberately : 1; /* bit position: 9 */
    /* 0x0000 */ unsigned long Filler : 22; /* bit position: 10 */
  }; /* bitfield */
} MM_SESSION_SPACE_FLAGS, *PMM_SESSION_SPACE_FLAGS; /* size: 0x0004 */

typedef struct _KDEVICE_QUEUE
{
  /* 0x0000 */ short Type;
  /* 0x0002 */ short Size;
  /* 0x0004 */ long Padding_150;
  /* 0x0008 */ struct _LIST_ENTRY DeviceListHead;
  /* 0x0018 */ unsigned __int64 Lock;
  union
  {
    /* 0x0020 */ unsigned char Busy;
    struct /* bitfield */
    {
      /* 0x0020 */ __int64 Reserved : 8; /* bit position: 0 */
      /* 0x0020 */ __int64 Hint : 56; /* bit position: 8 */
    }; /* bitfield */
  }; /* size: 0x0008 */
} KDEVICE_QUEUE, *PKDEVICE_QUEUE; /* size: 0x0028 */

typedef struct _DEVICE_OBJECT
{
  /* 0x0000 */ short Type;
  /* 0x0002 */ unsigned short Size;
  /* 0x0004 */ long ReferenceCount;
  /* 0x0008 */ struct _DRIVER_OBJECT* DriverObject;
  /* 0x0010 */ struct _DEVICE_OBJECT* NextDevice;
  /* 0x0018 */ struct _DEVICE_OBJECT* AttachedDevice;
  /* 0x0020 */ struct _IRP* CurrentIrp;
  /* 0x0028 */ struct _IO_TIMER* Timer;
  /* 0x0030 */ unsigned long Flags;
  /* 0x0034 */ unsigned long Characteristics;
  /* 0x0038 */ struct _VPB* Vpb;
  /* 0x0040 */ void* DeviceExtension;
  /* 0x0048 */ unsigned long DeviceType;
  /* 0x004c */ char StackSize;
  /* 0x004d */ char Padding_151[3];
  union
  {
    union
    {
      /* 0x0050 */ struct _LIST_ENTRY ListEntry;
      /* 0x0050 */ struct _WAIT_CONTEXT_BLOCK Wcb;
    }; /* size: 0x0048 */
  } /* size: 0x0048 */ Queue;
  /* 0x0098 */ unsigned long AlignmentRequirement;
  /* 0x009c */ long Padding_152;
  /* 0x00a0 */ struct _KDEVICE_QUEUE DeviceQueue;
  /* 0x00c8 */ struct _KDPC Dpc;
  /* 0x0108 */ unsigned long ActiveThreadCount;
  /* 0x010c */ long Padding_153;
  /* 0x0110 */ void* SecurityDescriptor;
  /* 0x0118 */ struct _KEVENT DeviceLock;
  /* 0x0130 */ unsigned short SectorSize;
  /* 0x0132 */ unsigned short Spare1;
  /* 0x0134 */ long Padding_154;
  /* 0x0138 */ struct _DEVOBJ_EXTENSION* DeviceObjectExtension;
  /* 0x0140 */ void* Reserved;
  /* 0x0148 */ long __PADDING__[2];
} DEVICE_OBJECT, *PDEVICE_OBJECT; /* size: 0x0150 */

typedef struct _CLIENT_ID32
{
  /* 0x0000 */ unsigned long UniqueProcess;
  /* 0x0004 */ unsigned long UniqueThread;
} CLIENT_ID32, *PCLIENT_ID32; /* size: 0x0008 */

typedef struct _EXCEPTION_RECORD
{
  /* 0x0000 */ long ExceptionCode;
  /* 0x0004 */ unsigned long ExceptionFlags;
  /* 0x0008 */ struct _EXCEPTION_RECORD* ExceptionRecord;
  /* 0x0010 */ void* ExceptionAddress;
  /* 0x0018 */ unsigned long NumberParameters;
  /* 0x001c */ long Padding_155;
  /* 0x0020 */ unsigned __int64 ExceptionInformation[15];
} EXCEPTION_RECORD, *PEXCEPTION_RECORD; /* size: 0x0098 */

typedef struct _NPAGED_LOOKASIDE_LIST
{
  /* 0x0000 */ struct _GENERAL_LOOKASIDE L;
} NPAGED_LOOKASIDE_LIST, *PNPAGED_LOOKASIDE_LIST; /* size: 0x0080 */

typedef struct _HALP_ALLOC_CONTEXT
{
  /* 0x0000 */ struct _LIST_ENTRY BufferList;
  /* 0x0010 */ unsigned __int64 Lock;
} HALP_ALLOC_CONTEXT, *PHALP_ALLOC_CONTEXT; /* size: 0x0018 */

typedef struct _PAGED_LOOKASIDE_LIST
{
  /* 0x0000 */ struct _GENERAL_LOOKASIDE L;
} PAGED_LOOKASIDE_LIST, *PPAGED_LOOKASIDE_LIST; /* size: 0x0080 */

typedef struct _EXT_DELETE_PARAMETERS
{
  /* 0x0000 */ unsigned long Version;
  /* 0x0004 */ unsigned long Reserved;
  /* 0x0008 */ void* DeleteCallback /* function */;
  /* 0x0010 */ void* DeleteContext;
} EXT_DELETE_PARAMETERS, *PEXT_DELETE_PARAMETERS; /* size: 0x0018 */

typedef struct _SECTION_OBJECT_POINTERS
{
  /* 0x0000 */ void* DataSectionObject;
  /* 0x0008 */ void* SharedCacheMap;
  /* 0x0010 */ void* ImageSectionObject;
} SECTION_OBJECT_POINTERS, *PSECTION_OBJECT_POINTERS; /* size: 0x0018 */

typedef struct _SECONDARY_INTERRUPT_LINE_STATE
{
  /* 0x0000 */ enum _KINTERRUPT_POLARITY Polarity;
  /* 0x0004 */ enum _KINTERRUPT_MODE Mode;
  /* 0x0008 */ unsigned long Vector;
  /* 0x000c */ unsigned char Unmasked;
  /* 0x000d */ char __PADDING__[3];
} SECONDARY_INTERRUPT_LINE_STATE, *PSECONDARY_INTERRUPT_LINE_STATE; /* size: 0x0010 */

typedef struct _EX_FAST_REF
{
  union
  {
    /* 0x0000 */ void* Object;
    /* 0x0000 */ unsigned __int64 RefCnt : 4; /* bit position: 0 */
    /* 0x0000 */ unsigned __int64 Value;
  }; /* size: 0x0008 */
} EX_FAST_REF, *PEX_FAST_REF; /* size: 0x0008 */

typedef struct _SE_AUDIT_PROCESS_CREATION_INFO
{
  /* 0x0000 */ struct _OBJECT_NAME_INFORMATION* ImageFileName;
} SE_AUDIT_PROCESS_CREATION_INFO, *PSE_AUDIT_PROCESS_CREATION_INFO; /* size: 0x0008 */

typedef struct _MMSUPPORT_FLAGS
{
  union
  {
    struct
    {
      struct /* bitfield */
      {
        /* 0x0000 */ unsigned char WorkingSetType : 3; /* bit position: 0 */
        /* 0x0000 */ unsigned char Reserved0 : 3; /* bit position: 3 */
        /* 0x0000 */ unsigned char MaximumWorkingSetHard : 1; /* bit position: 6 */
        /* 0x0000 */ unsigned char MinimumWorkingSetHard : 1; /* bit position: 7 */
      }; /* bitfield */
      struct /* bitfield */
      {
        /* 0x0001 */ unsigned char SessionMaster : 1; /* bit position: 0 */
        /* 0x0001 */ unsigned char TrimmerState : 2; /* bit position: 1 */
        /* 0x0001 */ unsigned char Reserved : 1; /* bit position: 3 */
        /* 0x0001 */ unsigned char PageStealers : 4; /* bit position: 4 */
      }; /* bitfield */
    }; /* size: 0x0002 */
    /* 0x0000 */ unsigned short u1;
  }; /* size: 0x0002 */
  /* 0x0002 */ unsigned char MemoryPriority;
  union
  {
    struct /* bitfield */
    {
      /* 0x0003 */ unsigned char WsleDeleted : 1; /* bit position: 0 */
      /* 0x0003 */ unsigned char SvmEnabled : 1; /* bit position: 1 */
      /* 0x0003 */ unsigned char ForceAge : 1; /* bit position: 2 */
      /* 0x0003 */ unsigned char ForceTrim : 1; /* bit position: 3 */
      /* 0x0003 */ unsigned char NewMaximum : 1; /* bit position: 4 */
      /* 0x0003 */ unsigned char CommitReleaseState : 2; /* bit position: 5 */
    }; /* bitfield */
    /* 0x0003 */ unsigned char u2;
  }; /* size: 0x0001 */
} MMSUPPORT_FLAGS, *PMMSUPPORT_FLAGS; /* size: 0x0004 */

typedef struct _MMSUPPORT_INSTANCE
{
  /* 0x0000 */ unsigned long NextPageColor;
  /* 0x0004 */ unsigned long PageFaultCount;
  /* 0x0008 */ unsigned __int64 TrimmedPageCount;
  /* 0x0010 */ struct _MMWSL_INSTANCE* VmWorkingSetList;
  /* 0x0018 */ struct _LIST_ENTRY WorkingSetExpansionLinks;
  /* 0x0028 */ unsigned __int64 AgeDistribution[8];
  /* 0x0068 */ struct _KGATE* ExitOutswapGate;
  /* 0x0070 */ unsigned __int64 MinimumWorkingSetSize;
  /* 0x0078 */ unsigned __int64 WorkingSetLeafSize;
  /* 0x0080 */ unsigned __int64 WorkingSetLeafPrivateSize;
  /* 0x0088 */ unsigned __int64 WorkingSetSize;
  /* 0x0090 */ unsigned __int64 WorkingSetPrivateSize;
  /* 0x0098 */ unsigned __int64 MaximumWorkingSetSize;
  /* 0x00a0 */ unsigned __int64 PeakWorkingSetSize;
  /* 0x00a8 */ unsigned long HardFaultCount;
  /* 0x00ac */ unsigned short LastTrimStamp;
  /* 0x00ae */ unsigned short PartitionId;
  /* 0x00b0 */ unsigned __int64 SelfmapLock;
  /* 0x00b8 */ struct _MMSUPPORT_FLAGS Flags;
  /* 0x00bc */ long __PADDING__[1];
} MMSUPPORT_INSTANCE, *PMMSUPPORT_INSTANCE; /* size: 0x00c0 */

typedef struct _MMSUPPORT_SHARED
{
  /* 0x0000 */ volatile long WorkingSetLock;
  /* 0x0004 */ long GoodCitizenWaiting;
  /* 0x0008 */ unsigned __int64 ReleasedCommitDebt;
  /* 0x0010 */ unsigned __int64 ResetPagesRepurposedCount;
  /* 0x0018 */ void* WsSwapSupport;
  /* 0x0020 */ void* CommitReleaseContext;
  /* 0x0028 */ void* AccessLog;
  /* 0x0030 */ volatile unsigned __int64 ChargedWslePages;
  /* 0x0038 */ unsigned __int64 ActualWslePages;
  /* 0x0040 */ unsigned __int64 WorkingSetCoreLock;
  /* 0x0048 */ void* ShadowMapping;
  /* 0x0050 */ long __PADDING__[12];
} MMSUPPORT_SHARED, *PMMSUPPORT_SHARED; /* size: 0x0080 */

typedef struct _MMSUPPORT_FULL
{
  /* 0x0000 */ struct _MMSUPPORT_INSTANCE Instance;
  /* 0x00c0 */ struct _MMSUPPORT_SHARED Shared;
} MMSUPPORT_FULL, *PMMSUPPORT_FULL; /* size: 0x0140 */

typedef struct _ALPC_PROCESS_CONTEXT
{
  /* 0x0000 */ struct _EX_PUSH_LOCK Lock;
  /* 0x0008 */ struct _LIST_ENTRY ViewListHead;
  /* 0x0018 */ volatile unsigned __int64 PagedPoolQuotaCache;
} ALPC_PROCESS_CONTEXT, *PALPC_PROCESS_CONTEXT; /* size: 0x0020 */

typedef struct _PS_PROTECTION
{
  union
  {
    /* 0x0000 */ unsigned char Level;
    struct /* bitfield */
    {
      /* 0x0000 */ unsigned char Type : 3; /* bit position: 0 */
      /* 0x0000 */ unsigned char Audit : 1; /* bit position: 3 */
      /* 0x0000 */ unsigned char Signer : 4; /* bit position: 4 */
    }; /* bitfield */
  }; /* size: 0x0001 */
} PS_PROTECTION, *PPS_PROTECTION; /* size: 0x0001 */

typedef union _PS_INTERLOCKED_TIMER_DELAY_VALUES
{
  union
  {
    struct /* bitfield */
    {
      /* 0x0000 */ unsigned __int64 DelayMs : 30; /* bit position: 0 */
      /* 0x0000 */ unsigned __int64 CoalescingWindowMs : 30; /* bit position: 30 */
      /* 0x0000 */ unsigned __int64 Reserved : 1; /* bit position: 60 */
      /* 0x0000 */ unsigned __int64 NewTimerWheel : 1; /* bit position: 61 */
      /* 0x0000 */ unsigned __int64 Retry : 1; /* bit position: 62 */
      /* 0x0000 */ unsigned __int64 Locked : 1; /* bit position: 63 */
    }; /* bitfield */
    /* 0x0000 */ unsigned __int64 All;
  }; /* size: 0x0008 */
} PS_INTERLOCKED_TIMER_DELAY_VALUES, *PPS_INTERLOCKED_TIMER_DELAY_VALUES; /* size: 0x0008 */

typedef struct _WNF_STATE_NAME
{
  /* 0x0000 */ unsigned long Data[2];
} WNF_STATE_NAME, *PWNF_STATE_NAME; /* size: 0x0008 */

typedef struct _JOBOBJECT_WAKE_FILTER
{
  /* 0x0000 */ unsigned long HighEdgeFilter;
  /* 0x0004 */ unsigned long LowEdgeFilter;
} JOBOBJECT_WAKE_FILTER, *PJOBOBJECT_WAKE_FILTER; /* size: 0x0008 */

typedef struct _PS_PROCESS_WAKE_INFORMATION
{
  /* 0x0000 */ unsigned __int64 NotificationChannel;
  /* 0x0008 */ unsigned long WakeCounters[7];
  /* 0x0024 */ struct _JOBOBJECT_WAKE_FILTER WakeFilter;
  /* 0x002c */ unsigned long NoWakeCounter;
} PS_PROCESS_WAKE_INFORMATION, *PPS_PROCESS_WAKE_INFORMATION; /* size: 0x0030 */

typedef struct _PS_DYNAMIC_ENFORCED_ADDRESS_RANGES
{
  /* 0x0000 */ struct _RTL_AVL_TREE Tree;
  /* 0x0008 */ struct _EX_PUSH_LOCK Lock;
} PS_DYNAMIC_ENFORCED_ADDRESS_RANGES, *PPS_DYNAMIC_ENFORCED_ADDRESS_RANGES; /* size: 0x0010 */

typedef struct _EPROCESS
{
  /* 0x0000 */ struct _KPROCESS Pcb;
  /* 0x0438 */ struct _EX_PUSH_LOCK ProcessLock;
  /* 0x0440 */ void* UniqueProcessId;
  /* 0x0448 */ struct _LIST_ENTRY ActiveProcessLinks;
  /* 0x0458 */ struct _EX_RUNDOWN_REF RundownProtect;
  union
  {
    /* 0x0460 */ unsigned long Flags2;
    struct /* bitfield */
    {
      /* 0x0460 */ unsigned long JobNotReallyActive : 1; /* bit position: 0 */
      /* 0x0460 */ unsigned long AccountingFolded : 1; /* bit position: 1 */
      /* 0x0460 */ unsigned long NewProcessReported : 1; /* bit position: 2 */
      /* 0x0460 */ unsigned long ExitProcessReported : 1; /* bit position: 3 */
      /* 0x0460 */ unsigned long ReportCommitChanges : 1; /* bit position: 4 */
      /* 0x0460 */ unsigned long LastReportMemory : 1; /* bit position: 5 */
      /* 0x0460 */ unsigned long ForceWakeCharge : 1; /* bit position: 6 */
      /* 0x0460 */ unsigned long CrossSessionCreate : 1; /* bit position: 7 */
      /* 0x0460 */ unsigned long NeedsHandleRundown : 1; /* bit position: 8 */
      /* 0x0460 */ unsigned long RefTraceEnabled : 1; /* bit position: 9 */
      /* 0x0460 */ unsigned long PicoCreated : 1; /* bit position: 10 */
      /* 0x0460 */ unsigned long EmptyJobEvaluated : 1; /* bit position: 11 */
      /* 0x0460 */ unsigned long DefaultPagePriority : 3; /* bit position: 12 */
      /* 0x0460 */ unsigned long PrimaryTokenFrozen : 1; /* bit position: 15 */
      /* 0x0460 */ unsigned long ProcessVerifierTarget : 1; /* bit position: 16 */
      /* 0x0460 */ unsigned long RestrictSetThreadContext : 1; /* bit position: 17 */
      /* 0x0460 */ unsigned long AffinityPermanent : 1; /* bit position: 18 */
      /* 0x0460 */ unsigned long AffinityUpdateEnable : 1; /* bit position: 19 */
      /* 0x0460 */ unsigned long PropagateNode : 1; /* bit position: 20 */
      /* 0x0460 */ unsigned long ExplicitAffinity : 1; /* bit position: 21 */
      /* 0x0460 */ unsigned long ProcessExecutionState : 2; /* bit position: 22 */
      /* 0x0460 */ unsigned long EnableReadVmLogging : 1; /* bit position: 24 */
      /* 0x0460 */ unsigned long EnableWriteVmLogging : 1; /* bit position: 25 */
      /* 0x0460 */ unsigned long FatalAccessTerminationRequested : 1; /* bit position: 26 */
      /* 0x0460 */ unsigned long DisableSystemAllowedCpuSet : 1; /* bit position: 27 */
      /* 0x0460 */ unsigned long ProcessStateChangeRequest : 2; /* bit position: 28 */
      /* 0x0460 */ unsigned long ProcessStateChangeInProgress : 1; /* bit position: 30 */
      /* 0x0460 */ unsigned long InPrivate : 1; /* bit position: 31 */
    }; /* bitfield */
  }; /* size: 0x0004 */
  union
  {
    /* 0x0464 */ unsigned long Flags;
    struct /* bitfield */
    {
      /* 0x0464 */ unsigned long CreateReported : 1; /* bit position: 0 */
      /* 0x0464 */ unsigned long NoDebugInherit : 1; /* bit position: 1 */
      /* 0x0464 */ unsigned long ProcessExiting : 1; /* bit position: 2 */
      /* 0x0464 */ unsigned long ProcessDelete : 1; /* bit position: 3 */
      /* 0x0464 */ unsigned long ManageExecutableMemoryWrites : 1; /* bit position: 4 */
      /* 0x0464 */ unsigned long VmDeleted : 1; /* bit position: 5 */
      /* 0x0464 */ unsigned long OutswapEnabled : 1; /* bit position: 6 */
      /* 0x0464 */ unsigned long Outswapped : 1; /* bit position: 7 */
      /* 0x0464 */ unsigned long FailFastOnCommitFail : 1; /* bit position: 8 */
      /* 0x0464 */ unsigned long Wow64VaSpace4Gb : 1; /* bit position: 9 */
      /* 0x0464 */ unsigned long AddressSpaceInitialized : 2; /* bit position: 10 */
      /* 0x0464 */ unsigned long SetTimerResolution : 1; /* bit position: 12 */
      /* 0x0464 */ unsigned long BreakOnTermination : 1; /* bit position: 13 */
      /* 0x0464 */ unsigned long DeprioritizeViews : 1; /* bit position: 14 */
      /* 0x0464 */ unsigned long WriteWatch : 1; /* bit position: 15 */
      /* 0x0464 */ unsigned long ProcessInSession : 1; /* bit position: 16 */
      /* 0x0464 */ unsigned long OverrideAddressSpace : 1; /* bit position: 17 */
      /* 0x0464 */ unsigned long HasAddressSpace : 1; /* bit position: 18 */
      /* 0x0464 */ unsigned long LaunchPrefetched : 1; /* bit position: 19 */
      /* 0x0464 */ unsigned long Background : 1; /* bit position: 20 */
      /* 0x0464 */ unsigned long VmTopDown : 1; /* bit position: 21 */
      /* 0x0464 */ unsigned long ImageNotifyDone : 1; /* bit position: 22 */
      /* 0x0464 */ unsigned long PdeUpdateNeeded : 1; /* bit position: 23 */
      /* 0x0464 */ unsigned long VdmAllowed : 1; /* bit position: 24 */
      /* 0x0464 */ unsigned long ProcessRundown : 1; /* bit position: 25 */
      /* 0x0464 */ unsigned long ProcessInserted : 1; /* bit position: 26 */
      /* 0x0464 */ unsigned long DefaultIoPriority : 3; /* bit position: 27 */
      /* 0x0464 */ unsigned long ProcessSelfDelete : 1; /* bit position: 30 */
      /* 0x0464 */ unsigned long SetTimerResolutionLink : 1; /* bit position: 31 */
    }; /* bitfield */
  }; /* size: 0x0004 */
  /* 0x0468 */ union _LARGE_INTEGER CreateTime;
  /* 0x0470 */ unsigned __int64 ProcessQuotaUsage[2];
  /* 0x0480 */ unsigned __int64 ProcessQuotaPeak[2];
  /* 0x0490 */ unsigned __int64 PeakVirtualSize;
  /* 0x0498 */ unsigned __int64 VirtualSize;
  /* 0x04a0 */ struct _LIST_ENTRY SessionProcessLinks;
  union
  {
    /* 0x04b0 */ void* ExceptionPortData;
    /* 0x04b0 */ unsigned __int64 ExceptionPortValue;
    /* 0x04b0 */ unsigned __int64 ExceptionPortState : 3; /* bit position: 0 */
  }; /* size: 0x0008 */
  /* 0x04b8 */ struct _EX_FAST_REF Token;
  /* 0x04c0 */ unsigned __int64 MmReserved;
  /* 0x04c8 */ struct _EX_PUSH_LOCK AddressCreationLock;
  /* 0x04d0 */ struct _EX_PUSH_LOCK PageTableCommitmentLock;
  /* 0x04d8 */ struct _ETHREAD* RotateInProgress;
  /* 0x04e0 */ struct _ETHREAD* ForkInProgress;
  /* 0x04e8 */ struct _EJOB* volatile CommitChargeJob;
  /* 0x04f0 */ struct _RTL_AVL_TREE CloneRoot;
  /* 0x04f8 */ volatile unsigned __int64 NumberOfPrivatePages;
  /* 0x0500 */ volatile unsigned __int64 NumberOfLockedPages;
  /* 0x0508 */ void* Win32Process;
  /* 0x0510 */ struct _EJOB* volatile Job;
  /* 0x0518 */ void* SectionObject;
  /* 0x0520 */ void* SectionBaseAddress;
  /* 0x0528 */ unsigned long Cookie;
  /* 0x052c */ long Padding_156;
  /* 0x0530 */ struct _PAGEFAULT_HISTORY* WorkingSetWatch;
  /* 0x0538 */ void* Win32WindowStation;
  /* 0x0540 */ void* InheritedFromUniqueProcessId;
  /* 0x0548 */ volatile unsigned __int64 OwnerProcessId;
  /* 0x0550 */ struct _PEB* Peb;
  /* 0x0558 */ struct _MM_SESSION_SPACE* Session;
  /* 0x0560 */ void* Spare1;
  /* 0x0568 */ struct _EPROCESS_QUOTA_BLOCK* QuotaBlock;
  /* 0x0570 */ struct _HANDLE_TABLE* ObjectTable;
  /* 0x0578 */ void* DebugPort;
  /* 0x0580 */ struct _EWOW64PROCESS* WoW64Process;
  /* 0x0588 */ void* DeviceMap;
  /* 0x0590 */ void* EtwDataSource;
  /* 0x0598 */ unsigned __int64 PageDirectoryPte;
  /* 0x05a0 */ struct _FILE_OBJECT* ImageFilePointer;
  /* 0x05a8 */ unsigned char ImageFileName[15];
  /* 0x05b7 */ unsigned char PriorityClass;
  /* 0x05b8 */ void* SecurityPort;
  /* 0x05c0 */ struct _SE_AUDIT_PROCESS_CREATION_INFO SeAuditProcessCreationInfo;
  /* 0x05c8 */ struct _LIST_ENTRY JobLinks;
  /* 0x05d8 */ void* HighestUserAddress;
  /* 0x05e0 */ struct _LIST_ENTRY ThreadListHead;
  /* 0x05f0 */ volatile unsigned long ActiveThreads;
  /* 0x05f4 */ unsigned long ImagePathHash;
  /* 0x05f8 */ unsigned long DefaultHardErrorProcessing;
  /* 0x05fc */ long LastThreadExitStatus;
  /* 0x0600 */ struct _EX_FAST_REF PrefetchTrace;
  /* 0x0608 */ void* LockedPagesList;
  /* 0x0610 */ union _LARGE_INTEGER ReadOperationCount;
  /* 0x0618 */ union _LARGE_INTEGER WriteOperationCount;
  /* 0x0620 */ union _LARGE_INTEGER OtherOperationCount;
  /* 0x0628 */ union _LARGE_INTEGER ReadTransferCount;
  /* 0x0630 */ union _LARGE_INTEGER WriteTransferCount;
  /* 0x0638 */ union _LARGE_INTEGER OtherTransferCount;
  /* 0x0640 */ unsigned __int64 CommitChargeLimit;
  /* 0x0648 */ volatile unsigned __int64 CommitCharge;
  /* 0x0650 */ volatile unsigned __int64 CommitChargePeak;
  /* 0x0658 */ long Padding_157[10];
  /* 0x0680 */ struct _MMSUPPORT_FULL Vm;
  /* 0x07c0 */ struct _LIST_ENTRY MmProcessLinks;
  /* 0x07d0 */ unsigned long ModifiedPageCount;
  /* 0x07d4 */ long ExitStatus;
  /* 0x07d8 */ struct _RTL_AVL_TREE VadRoot;
  /* 0x07e0 */ void* VadHint;
  /* 0x07e8 */ unsigned __int64 VadCount;
  /* 0x07f0 */ volatile unsigned __int64 VadPhysicalPages;
  /* 0x07f8 */ unsigned __int64 VadPhysicalPagesLimit;
  /* 0x0800 */ struct _ALPC_PROCESS_CONTEXT AlpcContext;
  /* 0x0820 */ struct _LIST_ENTRY TimerResolutionLink;
  /* 0x0830 */ struct _PO_DIAG_STACK_RECORD* TimerResolutionStackRecord;
  /* 0x0838 */ unsigned long RequestedTimerResolution;
  /* 0x083c */ unsigned long SmallestTimerResolution;
  /* 0x0840 */ union _LARGE_INTEGER ExitTime;
  /* 0x0848 */ struct _INVERTED_FUNCTION_TABLE* InvertedFunctionTable;
  /* 0x0850 */ struct _EX_PUSH_LOCK InvertedFunctionTableLock;
  /* 0x0858 */ unsigned long ActiveThreadsHighWatermark;
  /* 0x085c */ unsigned long LargePrivateVadCount;
  /* 0x0860 */ struct _EX_PUSH_LOCK ThreadListLock;
  /* 0x0868 */ void* WnfContext;
  /* 0x0870 */ struct _EJOB* ServerSilo;
  /* 0x0878 */ unsigned char SignatureLevel;
  /* 0x0879 */ unsigned char SectionSignatureLevel;
  /* 0x087a */ struct _PS_PROTECTION Protection;
  struct /* bitfield */
  {
    /* 0x087b */ unsigned char HangCount : 3; /* bit position: 0 */
    /* 0x087b */ unsigned char GhostCount : 3; /* bit position: 3 */
    /* 0x087b */ unsigned char PrefilterException : 1; /* bit position: 6 */
  }; /* bitfield */
  union
  {
    /* 0x087c */ unsigned long Flags3;
    struct /* bitfield */
    {
      /* 0x087c */ unsigned long Minimal : 1; /* bit position: 0 */
      /* 0x087c */ unsigned long ReplacingPageRoot : 1; /* bit position: 1 */
      /* 0x087c */ unsigned long Crashed : 1; /* bit position: 2 */
      /* 0x087c */ unsigned long JobVadsAreTracked : 1; /* bit position: 3 */
      /* 0x087c */ unsigned long VadTrackingDisabled : 1; /* bit position: 4 */
      /* 0x087c */ unsigned long AuxiliaryProcess : 1; /* bit position: 5 */
      /* 0x087c */ unsigned long SubsystemProcess : 1; /* bit position: 6 */
      /* 0x087c */ unsigned long IndirectCpuSets : 1; /* bit position: 7 */
      /* 0x087c */ unsigned long RelinquishedCommit : 1; /* bit position: 8 */
      /* 0x087c */ unsigned long HighGraphicsPriority : 1; /* bit position: 9 */
      /* 0x087c */ unsigned long CommitFailLogged : 1; /* bit position: 10 */
      /* 0x087c */ unsigned long ReserveFailLogged : 1; /* bit position: 11 */
      /* 0x087c */ unsigned long SystemProcess : 1; /* bit position: 12 */
      /* 0x087c */ unsigned long HideImageBaseAddresses : 1; /* bit position: 13 */
      /* 0x087c */ unsigned long AddressPolicyFrozen : 1; /* bit position: 14 */
      /* 0x087c */ unsigned long ProcessFirstResume : 1; /* bit position: 15 */
      /* 0x087c */ unsigned long ForegroundExternal : 1; /* bit position: 16 */
      /* 0x087c */ unsigned long ForegroundSystem : 1; /* bit position: 17 */
      /* 0x087c */ unsigned long HighMemoryPriority : 1; /* bit position: 18 */
      /* 0x087c */ unsigned long EnableProcessSuspendResumeLogging : 1; /* bit position: 19 */
      /* 0x087c */ unsigned long EnableThreadSuspendResumeLogging : 1; /* bit position: 20 */
      /* 0x087c */ unsigned long SecurityDomainChanged : 1; /* bit position: 21 */
      /* 0x087c */ unsigned long SecurityFreezeComplete : 1; /* bit position: 22 */
      /* 0x087c */ unsigned long VmProcessorHost : 1; /* bit position: 23 */
      /* 0x087c */ unsigned long VmProcessorHostTransition : 1; /* bit position: 24 */
      /* 0x087c */ unsigned long AltSyscall : 1; /* bit position: 25 */
      /* 0x087c */ unsigned long TimerResolutionIgnore : 1; /* bit position: 26 */
      /* 0x087c */ unsigned long DisallowUserTerminate : 1; /* bit position: 27 */
    }; /* bitfield */
  }; /* size: 0x0004 */
  /* 0x0880 */ long DeviceAsid;
  /* 0x0884 */ long Padding_158;
  /* 0x0888 */ void* SvmData;
  /* 0x0890 */ struct _EX_PUSH_LOCK SvmProcessLock;
  /* 0x0898 */ unsigned __int64 SvmLock;
  /* 0x08a0 */ struct _LIST_ENTRY SvmProcessDeviceListHead;
  /* 0x08b0 */ unsigned __int64 LastFreezeInterruptTime;
  /* 0x08b8 */ struct _PROCESS_DISK_COUNTERS* DiskCounters;
  /* 0x08c0 */ void* PicoContext;
  /* 0x08c8 */ void* EnclaveTable;
  /* 0x08d0 */ unsigned __int64 EnclaveNumber;
  /* 0x08d8 */ struct _EX_PUSH_LOCK EnclaveLock;
  /* 0x08e0 */ unsigned long HighPriorityFaultsAllowed;
  /* 0x08e4 */ long Padding_159;
  /* 0x08e8 */ struct _PO_PROCESS_ENERGY_CONTEXT* EnergyContext;
  /* 0x08f0 */ void* VmContext;
  /* 0x08f8 */ unsigned __int64 SequenceNumber;
  /* 0x0900 */ unsigned __int64 CreateInterruptTime;
  /* 0x0908 */ unsigned __int64 CreateUnbiasedInterruptTime;
  /* 0x0910 */ unsigned __int64 TotalUnbiasedFrozenTime;
  /* 0x0918 */ unsigned __int64 LastAppStateUpdateTime;
  struct /* bitfield */
  {
    /* 0x0920 */ unsigned __int64 LastAppStateUptime : 61; /* bit position: 0 */
    /* 0x0920 */ unsigned __int64 LastAppState : 3; /* bit position: 61 */
  }; /* bitfield */
  /* 0x0928 */ volatile unsigned __int64 SharedCommitCharge;
  /* 0x0930 */ struct _EX_PUSH_LOCK SharedCommitLock;
  /* 0x0938 */ struct _LIST_ENTRY SharedCommitLinks;
  union
  {
    struct
    {
      /* 0x0948 */ unsigned __int64 AllowedCpuSets;
      /* 0x0950 */ unsigned __int64 DefaultCpuSets;
    }; /* size: 0x0010 */
    struct
    {
      /* 0x0948 */ unsigned __int64* AllowedCpuSetsIndirect;
      /* 0x0950 */ unsigned __int64* DefaultCpuSetsIndirect;
    }; /* size: 0x0010 */
  }; /* size: 0x0010 */
  /* 0x0958 */ void* DiskIoAttribution;
  /* 0x0960 */ void* DxgProcess;
  /* 0x0968 */ unsigned long Win32KFilterSet;
  /* 0x096c */ long Padding_160;
  /* 0x0970 */ volatile union _PS_INTERLOCKED_TIMER_DELAY_VALUES ProcessTimerDelay;
  /* 0x0978 */ volatile unsigned long KTimerSets;
  /* 0x097c */ volatile unsigned long KTimer2Sets;
  /* 0x0980 */ volatile unsigned long ThreadTimerSets;
  /* 0x0984 */ long Padding_161;
  /* 0x0988 */ unsigned __int64 VirtualTimerListLock;
  /* 0x0990 */ struct _LIST_ENTRY VirtualTimerListHead;
  union
  {
    /* 0x09a0 */ struct _WNF_STATE_NAME WakeChannel;
    /* 0x09a0 */ struct _PS_PROCESS_WAKE_INFORMATION WakeInfo;
  }; /* size: 0x0030 */
  union
  {
    /* 0x09d0 */ unsigned long MitigationFlags;
    struct
    {
      struct /* bitfield */
      {
        /* 0x09d0 */ unsigned long ControlFlowGuardEnabled : 1; /* bit position: 0 */
        /* 0x09d0 */ unsigned long ControlFlowGuardExportSuppressionEnabled : 1; /* bit position: 1 */
        /* 0x09d0 */ unsigned long ControlFlowGuardStrict : 1; /* bit position: 2 */
        /* 0x09d0 */ unsigned long DisallowStrippedImages : 1; /* bit position: 3 */
        /* 0x09d0 */ unsigned long ForceRelocateImages : 1; /* bit position: 4 */
        /* 0x09d0 */ unsigned long HighEntropyASLREnabled : 1; /* bit position: 5 */
        /* 0x09d0 */ unsigned long StackRandomizationDisabled : 1; /* bit position: 6 */
        /* 0x09d0 */ unsigned long ExtensionPointDisable : 1; /* bit position: 7 */
        /* 0x09d0 */ unsigned long DisableDynamicCode : 1; /* bit position: 8 */
        /* 0x09d0 */ unsigned long DisableDynamicCodeAllowOptOut : 1; /* bit position: 9 */
        /* 0x09d0 */ unsigned long DisableDynamicCodeAllowRemoteDowngrade : 1; /* bit position: 10 */
        /* 0x09d0 */ unsigned long AuditDisableDynamicCode : 1; /* bit position: 11 */
        /* 0x09d0 */ unsigned long DisallowWin32kSystemCalls : 1; /* bit position: 12 */
        /* 0x09d0 */ unsigned long AuditDisallowWin32kSystemCalls : 1; /* bit position: 13 */
        /* 0x09d0 */ unsigned long EnableFilteredWin32kAPIs : 1; /* bit position: 14 */
        /* 0x09d0 */ unsigned long AuditFilteredWin32kAPIs : 1; /* bit position: 15 */
        /* 0x09d0 */ unsigned long DisableNonSystemFonts : 1; /* bit position: 16 */
        /* 0x09d0 */ unsigned long AuditNonSystemFontLoading : 1; /* bit position: 17 */
        /* 0x09d0 */ unsigned long PreferSystem32Images : 1; /* bit position: 18 */
        /* 0x09d0 */ unsigned long ProhibitRemoteImageMap : 1; /* bit position: 19 */
        /* 0x09d0 */ unsigned long AuditProhibitRemoteImageMap : 1; /* bit position: 20 */
        /* 0x09d0 */ unsigned long ProhibitLowILImageMap : 1; /* bit position: 21 */
        /* 0x09d0 */ unsigned long AuditProhibitLowILImageMap : 1; /* bit position: 22 */
        /* 0x09d0 */ unsigned long SignatureMitigationOptIn : 1; /* bit position: 23 */
        /* 0x09d0 */ unsigned long AuditBlockNonMicrosoftBinaries : 1; /* bit position: 24 */
        /* 0x09d0 */ unsigned long AuditBlockNonMicrosoftBinariesAllowStore : 1; /* bit position: 25 */
        /* 0x09d0 */ unsigned long LoaderIntegrityContinuityEnabled : 1; /* bit position: 26 */
        /* 0x09d0 */ unsigned long AuditLoaderIntegrityContinuity : 1; /* bit position: 27 */
        /* 0x09d0 */ unsigned long EnableModuleTamperingProtection : 1; /* bit position: 28 */
        /* 0x09d0 */ unsigned long EnableModuleTamperingProtectionNoInherit : 1; /* bit position: 29 */
        /* 0x09d0 */ unsigned long RestrictIndirectBranchPrediction : 1; /* bit position: 30 */
        /* 0x09d0 */ unsigned long IsolateSecurityDomain : 1; /* bit position: 31 */
      }; /* bitfield */
    } /* size: 0x0004 */ MitigationFlagsValues;
  }; /* size: 0x0004 */
  union
  {
    /* 0x09d4 */ unsigned long MitigationFlags2;
    struct
    {
      struct /* bitfield */
      {
        /* 0x09d4 */ unsigned long EnableExportAddressFilter : 1; /* bit position: 0 */
        /* 0x09d4 */ unsigned long AuditExportAddressFilter : 1; /* bit position: 1 */
        /* 0x09d4 */ unsigned long EnableExportAddressFilterPlus : 1; /* bit position: 2 */
        /* 0x09d4 */ unsigned long AuditExportAddressFilterPlus : 1; /* bit position: 3 */
        /* 0x09d4 */ unsigned long EnableRopStackPivot : 1; /* bit position: 4 */
        /* 0x09d4 */ unsigned long AuditRopStackPivot : 1; /* bit position: 5 */
        /* 0x09d4 */ unsigned long EnableRopCallerCheck : 1; /* bit position: 6 */
        /* 0x09d4 */ unsigned long AuditRopCallerCheck : 1; /* bit position: 7 */
        /* 0x09d4 */ unsigned long EnableRopSimExec : 1; /* bit position: 8 */
        /* 0x09d4 */ unsigned long AuditRopSimExec : 1; /* bit position: 9 */
        /* 0x09d4 */ unsigned long EnableImportAddressFilter : 1; /* bit position: 10 */
        /* 0x09d4 */ unsigned long AuditImportAddressFilter : 1; /* bit position: 11 */
        /* 0x09d4 */ unsigned long DisablePageCombine : 1; /* bit position: 12 */
        /* 0x09d4 */ unsigned long SpeculativeStoreBypassDisable : 1; /* bit position: 13 */
        /* 0x09d4 */ unsigned long CetUserShadowStacks : 1; /* bit position: 14 */
        /* 0x09d4 */ unsigned long AuditCetUserShadowStacks : 1; /* bit position: 15 */
        /* 0x09d4 */ unsigned long AuditCetUserShadowStacksLogged : 1; /* bit position: 16 */
        /* 0x09d4 */ unsigned long UserCetSetContextIpValidation : 1; /* bit position: 17 */
        /* 0x09d4 */ unsigned long AuditUserCetSetContextIpValidation : 1; /* bit position: 18 */
        /* 0x09d4 */ unsigned long AuditUserCetSetContextIpValidationLogged : 1; /* bit position: 19 */
        /* 0x09d4 */ unsigned long CetUserShadowStacksStrictMode : 1; /* bit position: 20 */
        /* 0x09d4 */ unsigned long BlockNonCetBinaries : 1; /* bit position: 21 */
        /* 0x09d4 */ unsigned long BlockNonCetBinariesNonEhcont : 1; /* bit position: 22 */
        /* 0x09d4 */ unsigned long AuditBlockNonCetBinaries : 1; /* bit position: 23 */
        /* 0x09d4 */ unsigned long AuditBlockNonCetBinariesLogged : 1; /* bit position: 24 */
        /* 0x09d4 */ unsigned long Reserved1 : 1; /* bit position: 25 */
        /* 0x09d4 */ unsigned long Reserved2 : 1; /* bit position: 26 */
        /* 0x09d4 */ unsigned long Reserved3 : 1; /* bit position: 27 */
        /* 0x09d4 */ unsigned long Reserved4 : 1; /* bit position: 28 */
        /* 0x09d4 */ unsigned long Reserved5 : 1; /* bit position: 29 */
        /* 0x09d4 */ unsigned long CetDynamicApisOutOfProcOnly : 1; /* bit position: 30 */
        /* 0x09d4 */ unsigned long UserCetSetContextIpValidationRelaxedMode : 1; /* bit position: 31 */
      }; /* bitfield */
    } /* size: 0x0004 */ MitigationFlags2Values;
  }; /* size: 0x0004 */
  /* 0x09d8 */ void* PartitionObject;
  /* 0x09e0 */ unsigned __int64 SecurityDomain;
  /* 0x09e8 */ unsigned __int64 ParentSecurityDomain;
  /* 0x09f0 */ void* CoverageSamplerContext;
  /* 0x09f8 */ void* MmHotPatchContext;
  /* 0x0a00 */ struct _RTL_AVL_TREE DynamicEHContinuationTargetsTree;
  /* 0x0a08 */ struct _EX_PUSH_LOCK DynamicEHContinuationTargetsLock;
  /* 0x0a10 */ struct _PS_DYNAMIC_ENFORCED_ADDRESS_RANGES DynamicEnforcedCetCompatibleRanges;
  /* 0x0a20 */ unsigned long DisabledComponentFlags;
  /* 0x0a24 */ long Padding_162;
  /* 0x0a28 */ unsigned long* volatile PathRedirectionHashes;
  union
  {
    /* 0x0a30 */ unsigned long MitigationFlags3;
    struct
    {
      struct /* bitfield */
      {
        /* 0x0a30 */ unsigned long RestrictCoreSharing : 1; /* bit position: 0 */
        /* 0x0a30 */ unsigned long DisallowFsctlSystemCalls : 1; /* bit position: 1 */
        /* 0x0a30 */ unsigned long AuditDisallowFsctlSystemCalls : 1; /* bit position: 2 */
        /* 0x0a30 */ unsigned long MitigationFlags3Spare : 29; /* bit position: 3 */
      }; /* bitfield */
    } /* size: 0x0004 */ MitigationFlags3Values;
  }; /* size: 0x0004 */
  /* 0x0a34 */ long __PADDING__[3];
} EPROCESS, *PEPROCESS; /* size: 0x0a40 */

typedef struct _OWNER_ENTRY
{
  /* 0x0000 */ unsigned __int64 OwnerThread;
  union
  {
    struct /* bitfield */
    {
      /* 0x0008 */ unsigned long IoPriorityBoosted : 1; /* bit position: 0 */
      /* 0x0008 */ unsigned long OwnerReferenced : 1; /* bit position: 1 */
      /* 0x0008 */ unsigned long IoQoSPriorityBoosted : 1; /* bit position: 2 */
      /* 0x0008 */ unsigned long OwnerCount : 29; /* bit position: 3 */
    }; /* bitfield */
    /* 0x0008 */ unsigned long TableSize;
  }; /* size: 0x0004 */
  /* 0x000c */ long __PADDING__[1];
} OWNER_ENTRY, *POWNER_ENTRY; /* size: 0x0010 */

typedef struct _ERESOURCE
{
  /* 0x0000 */ struct _LIST_ENTRY SystemResourcesList;
  /* 0x0010 */ struct _OWNER_ENTRY* OwnerTable;
  /* 0x0018 */ short ActiveCount;
  union
  {
    /* 0x001a */ unsigned short Flag;
    struct
    {
      /* 0x001a */ unsigned char ReservedLowFlags;
      /* 0x001b */ unsigned char WaiterPriority;
    }; /* size: 0x0002 */
  }; /* size: 0x0002 */
  /* 0x001c */ long Padding_163;
  /* 0x0020 */ void* SharedWaiters;
  /* 0x0028 */ void* ExclusiveWaiters;
  /* 0x0030 */ struct _OWNER_ENTRY OwnerEntry;
  /* 0x0040 */ unsigned long ActiveEntries;
  /* 0x0044 */ unsigned long ContentionCount;
  /* 0x0048 */ unsigned long NumberOfSharedWaiters;
  /* 0x004c */ unsigned long NumberOfExclusiveWaiters;
  /* 0x0050 */ void* Reserved2;
  union
  {
    /* 0x0058 */ void* Address;
    /* 0x0058 */ unsigned __int64 CreatorBackTraceIndex;
  }; /* size: 0x0008 */
  /* 0x0060 */ unsigned __int64 SpinLock;
} ERESOURCE, *PERESOURCE; /* size: 0x0068 */

typedef struct _CURDIR
{
  /* 0x0000 */ struct _UNICODE_STRING DosPath;
  /* 0x0010 */ void* Handle;
} CURDIR, *PCURDIR; /* size: 0x0018 */

typedef struct _RTL_DRIVE_LETTER_CURDIR
{
  /* 0x0000 */ unsigned short Flags;
  /* 0x0002 */ unsigned short Length;
  /* 0x0004 */ unsigned long TimeStamp;
  /* 0x0008 */ struct _STRING DosPath;
} RTL_DRIVE_LETTER_CURDIR, *PRTL_DRIVE_LETTER_CURDIR; /* size: 0x0018 */

typedef struct _RTL_USER_PROCESS_PARAMETERS
{
  /* 0x0000 */ unsigned long MaximumLength;
  /* 0x0004 */ unsigned long Length;
  /* 0x0008 */ unsigned long Flags;
  /* 0x000c */ unsigned long DebugFlags;
  /* 0x0010 */ void* ConsoleHandle;
  /* 0x0018 */ unsigned long ConsoleFlags;
  /* 0x001c */ long Padding_164;
  /* 0x0020 */ void* StandardInput;
  /* 0x0028 */ void* StandardOutput;
  /* 0x0030 */ void* StandardError;
  /* 0x0038 */ struct _CURDIR CurrentDirectory;
  /* 0x0050 */ struct _UNICODE_STRING DllPath;
  /* 0x0060 */ struct _UNICODE_STRING ImagePathName;
  /* 0x0070 */ struct _UNICODE_STRING CommandLine;
  /* 0x0080 */ void* Environment;
  /* 0x0088 */ unsigned long StartingX;
  /* 0x008c */ unsigned long StartingY;
  /* 0x0090 */ unsigned long CountX;
  /* 0x0094 */ unsigned long CountY;
  /* 0x0098 */ unsigned long CountCharsX;
  /* 0x009c */ unsigned long CountCharsY;
  /* 0x00a0 */ unsigned long FillAttribute;
  /* 0x00a4 */ unsigned long WindowFlags;
  /* 0x00a8 */ unsigned long ShowWindowFlags;
  /* 0x00ac */ long Padding_165;
  /* 0x00b0 */ struct _UNICODE_STRING WindowTitle;
  /* 0x00c0 */ struct _UNICODE_STRING DesktopInfo;
  /* 0x00d0 */ struct _UNICODE_STRING ShellInfo;
  /* 0x00e0 */ struct _UNICODE_STRING RuntimeData;
  /* 0x00f0 */ struct _RTL_DRIVE_LETTER_CURDIR CurrentDirectores[32];
  /* 0x03f0 */ unsigned __int64 EnvironmentSize;
  /* 0x03f8 */ unsigned __int64 EnvironmentVersion;
  /* 0x0400 */ void* PackageDependencyData;
  /* 0x0408 */ unsigned long ProcessGroupId;
  /* 0x040c */ unsigned long LoaderThreads;
  /* 0x0410 */ struct _UNICODE_STRING RedirectionDllName;
  /* 0x0420 */ struct _UNICODE_STRING HeapPartitionName;
  /* 0x0430 */ unsigned __int64* DefaultThreadpoolCpuSetMasks;
  /* 0x0438 */ unsigned long DefaultThreadpoolCpuSetMaskCount;
  /* 0x043c */ unsigned long DefaultThreadpoolThreadMaximum;
} RTL_USER_PROCESS_PARAMETERS, *PRTL_USER_PROCESS_PARAMETERS; /* size: 0x0440 */

typedef struct _KSCHEDULING_GROUP
{
  /* 0x0000 */ struct _KSCHEDULING_GROUP_POLICY Policy;
  /* 0x0008 */ unsigned long RelativeWeight;
  /* 0x000c */ unsigned long ChildMinRate;
  /* 0x0010 */ unsigned long ChildMinWeight;
  /* 0x0014 */ unsigned long ChildTotalWeight;
  /* 0x0018 */ unsigned __int64 QueryHistoryTimeStamp;
  /* 0x0020 */ __int64 NotificationCycles;
  /* 0x0028 */ __int64 MaxQuotaLimitCycles;
  /* 0x0030 */ volatile __int64 MaxQuotaCyclesRemaining;
  union
  {
    /* 0x0038 */ struct _LIST_ENTRY SchedulingGroupList;
    /* 0x0038 */ struct _LIST_ENTRY Sibling;
  }; /* size: 0x0010 */
  /* 0x0048 */ struct _KDPC* NotificationDpc;
  /* 0x0050 */ struct _LIST_ENTRY ChildList;
  /* 0x0060 */ struct _KSCHEDULING_GROUP* Parent;
  /* 0x0068 */ long Padding_166[6];
  /* 0x0080 */ struct _KSCB PerProcessor[1];
  /* 0x0228 */ long __PADDING__[6];
} KSCHEDULING_GROUP, *PKSCHEDULING_GROUP; /* size: 0x0240 */

typedef struct _OBJECT_HEADER_PROCESS_INFO
{
  /* 0x0000 */ struct _EPROCESS* ExclusiveProcess;
  /* 0x0008 */ unsigned __int64 Reserved;
} OBJECT_HEADER_PROCESS_INFO, *POBJECT_HEADER_PROCESS_INFO; /* size: 0x0010 */

typedef struct _CM_PARTIAL_RESOURCE_DESCRIPTOR
{
  /* 0x0000 */ unsigned char Type;
  /* 0x0001 */ unsigned char ShareDisposition;
  /* 0x0002 */ unsigned short Flags;
  union
  {
    union
    {
      struct
      {
        /* 0x0004 */ union _LARGE_INTEGER Start;
        /* 0x000c */ unsigned long Length;
      } /* size: 0x000c */ Generic;
      struct
      {
        /* 0x0004 */ union _LARGE_INTEGER Start;
        /* 0x000c */ unsigned long Length;
      } /* size: 0x000c */ Port;
      struct
      {
        /* 0x0004 */ unsigned short Level;
        /* 0x0006 */ unsigned short Group;
        /* 0x0008 */ unsigned long Vector;
        /* 0x000c */ unsigned __int64 Affinity;
      } /* size: 0x0010 */ Interrupt;
      struct
      {
        union
        {
          struct
          {
            /* 0x0004 */ unsigned short Group;
            /* 0x0006 */ unsigned short MessageCount;
            /* 0x0008 */ unsigned long Vector;
            /* 0x000c */ unsigned __int64 Affinity;
          } /* size: 0x0010 */ Raw;
          struct
          {
            /* 0x0004 */ unsigned short Level;
            /* 0x0006 */ unsigned short Group;
            /* 0x0008 */ unsigned long Vector;
            /* 0x000c */ unsigned __int64 Affinity;
          } /* size: 0x0010 */ Translated;
        }; /* size: 0x0010 */
      } /* size: 0x0010 */ MessageInterrupt;
      struct
      {
        /* 0x0004 */ union _LARGE_INTEGER Start;
        /* 0x000c */ unsigned long Length;
      } /* size: 0x000c */ Memory;
      struct
      {
        /* 0x0004 */ unsigned long Channel;
        /* 0x0008 */ unsigned long Port;
        /* 0x000c */ unsigned long Reserved1;
      } /* size: 0x000c */ Dma;
      struct
      {
        /* 0x0004 */ unsigned long Channel;
        /* 0x0008 */ unsigned long RequestLine;
        /* 0x000c */ unsigned char TransferWidth;
        /* 0x000d */ unsigned char Reserved1;
        /* 0x000e */ unsigned char Reserved2;
        /* 0x000f */ unsigned char Reserved3;
      } /* size: 0x000c */ DmaV3;
      struct
      {
        /* 0x0004 */ unsigned long Data[3];
      } /* size: 0x000c */ DevicePrivate;
      struct
      {
        /* 0x0004 */ unsigned long Start;
        /* 0x0008 */ unsigned long Length;
        /* 0x000c */ unsigned long Reserved;
      } /* size: 0x000c */ BusNumber;
      struct
      {
        /* 0x0004 */ unsigned long DataSize;
        /* 0x0008 */ unsigned long Reserved1;
        /* 0x000c */ unsigned long Reserved2;
      } /* size: 0x000c */ DeviceSpecificData;
      struct
      {
        /* 0x0004 */ union _LARGE_INTEGER Start;
        /* 0x000c */ unsigned long Length40;
      } /* size: 0x000c */ Memory40;
      struct
      {
        /* 0x0004 */ union _LARGE_INTEGER Start;
        /* 0x000c */ unsigned long Length48;
      } /* size: 0x000c */ Memory48;
      struct
      {
        /* 0x0004 */ union _LARGE_INTEGER Start;
        /* 0x000c */ unsigned long Length64;
      } /* size: 0x000c */ Memory64;
      struct
      {
        /* 0x0004 */ unsigned char Class;
        /* 0x0005 */ unsigned char Type;
        /* 0x0006 */ unsigned char Reserved1;
        /* 0x0007 */ unsigned char Reserved2;
        /* 0x0008 */ unsigned long IdLowPart;
        /* 0x000c */ unsigned long IdHighPart;
      } /* size: 0x000c */ Connection;
    }; /* size: 0x0010 */
  } /* size: 0x0010 */ u;
} CM_PARTIAL_RESOURCE_DESCRIPTOR, *PCM_PARTIAL_RESOURCE_DESCRIPTOR; /* size: 0x0014 */

typedef struct _CM_PARTIAL_RESOURCE_LIST
{
  /* 0x0000 */ unsigned short Version;
  /* 0x0002 */ unsigned short Revision;
  /* 0x0004 */ unsigned long Count;
  /* 0x0008 */ struct _CM_PARTIAL_RESOURCE_DESCRIPTOR PartialDescriptors[1];
} CM_PARTIAL_RESOURCE_LIST, *PCM_PARTIAL_RESOURCE_LIST; /* size: 0x001c */

typedef struct _CM_FULL_RESOURCE_DESCRIPTOR
{
  /* 0x0000 */ enum _INTERFACE_TYPE InterfaceType;
  /* 0x0004 */ unsigned long BusNumber;
  /* 0x0008 */ struct _CM_PARTIAL_RESOURCE_LIST PartialResourceList;
} CM_FULL_RESOURCE_DESCRIPTOR, *PCM_FULL_RESOURCE_DESCRIPTOR; /* size: 0x0024 */

typedef struct _CM_RESOURCE_LIST
{
  /* 0x0000 */ unsigned long Count;
  /* 0x0004 */ struct _CM_FULL_RESOURCE_DESCRIPTOR List[1];
} CM_RESOURCE_LIST, *PCM_RESOURCE_LIST; /* size: 0x0028 */

typedef struct _KDPC_LIST
{
  /* 0x0000 */ struct _SINGLE_LIST_ENTRY ListHead;
  /* 0x0008 */ struct _SINGLE_LIST_ENTRY* LastEntry;
} KDPC_LIST, *PKDPC_LIST; /* size: 0x0010 */

typedef struct _KDPC_DATA
{
  /* 0x0000 */ struct _KDPC_LIST DpcList;
  /* 0x0010 */ unsigned __int64 DpcLock;
  /* 0x0018 */ volatile long DpcQueueDepth;
  /* 0x001c */ unsigned long DpcCount;
  /* 0x0020 */ struct _KDPC* volatile ActiveDpc;
} KDPC_DATA, *PKDPC_DATA; /* size: 0x0028 */

typedef struct _PPM_COORDINATED_SELECTION
{
  /* 0x0000 */ unsigned long MaximumStates;
  /* 0x0004 */ unsigned long SelectedStates;
  /* 0x0008 */ unsigned long DefaultSelection;
  /* 0x000c */ long Padding_167;
  /* 0x0010 */ unsigned long* Selection;
} PPM_COORDINATED_SELECTION, *PPPM_COORDINATED_SELECTION; /* size: 0x0018 */

typedef struct _DYNAMIC_FUNCTION_TABLE
{
  /* 0x0000 */ struct _LIST_ENTRY ListEntry;
  /* 0x0010 */ struct _IMAGE_RUNTIME_FUNCTION_ENTRY* FunctionTable;
  /* 0x0018 */ union _LARGE_INTEGER TimeStamp;
  /* 0x0020 */ unsigned __int64 MinimumAddress;
  /* 0x0028 */ unsigned __int64 MaximumAddress;
  /* 0x0030 */ unsigned __int64 BaseAddress;
  /* 0x0038 */ void* Callback /* function */;
  /* 0x0040 */ void* Context;
  /* 0x0048 */ wchar_t* OutOfProcessCallbackDll;
  /* 0x0050 */ enum _FUNCTION_TABLE_TYPE Type;
  /* 0x0054 */ unsigned long EntryCount;
  /* 0x0058 */ struct _RTL_BALANCED_NODE TreeNodeMin;
  /* 0x0070 */ struct _RTL_BALANCED_NODE TreeNodeMax;
} DYNAMIC_FUNCTION_TABLE, *PDYNAMIC_FUNCTION_TABLE; /* size: 0x0088 */

typedef struct _PPM_SELECTION_STATISTICS
{
  /* 0x0000 */ unsigned __int64 SelectedCount;
  /* 0x0008 */ unsigned __int64 VetoCount;
  /* 0x0010 */ unsigned __int64 PreVetoCount;
  /* 0x0018 */ unsigned __int64 WrongProcessorCount;
  /* 0x0020 */ unsigned __int64 LatencyCount;
  /* 0x0028 */ unsigned __int64 IdleDurationCount;
  /* 0x0030 */ unsigned __int64 DeviceDependencyCount;
  /* 0x0038 */ unsigned __int64 ProcessorDependencyCount;
  /* 0x0040 */ unsigned __int64 PlatformOnlyCount;
  /* 0x0048 */ unsigned __int64 InterruptibleCount;
  /* 0x0050 */ unsigned __int64 LegacyOverrideCount;
  /* 0x0058 */ unsigned __int64 CstateCheckCount;
  /* 0x0060 */ unsigned __int64 NoCStateCount;
  /* 0x0068 */ unsigned __int64 CoordinatedDependencyCount;
  /* 0x0070 */ unsigned __int64 NotClockOwnerCount;
  /* 0x0078 */ struct _PPM_VETO_ACCOUNTING* PreVetoAccounting;
} PPM_SELECTION_STATISTICS, *PPPM_SELECTION_STATISTICS; /* size: 0x0080 */

typedef struct _PROC_IDLE_STATE_BUCKET
{
  /* 0x0000 */ unsigned __int64 TotalTime;
  /* 0x0008 */ unsigned __int64 MinTime;
  /* 0x0010 */ unsigned __int64 MaxTime;
  /* 0x0018 */ unsigned long Count;
  /* 0x001c */ long __PADDING__[1];
} PROC_IDLE_STATE_BUCKET, *PPROC_IDLE_STATE_BUCKET; /* size: 0x0020 */

typedef struct _PROC_IDLE_STATE_ACCOUNTING
{
  /* 0x0000 */ unsigned __int64 TotalTime;
  /* 0x0008 */ unsigned long CancelCount;
  /* 0x000c */ unsigned long FailureCount;
  /* 0x0010 */ unsigned long SuccessCount;
  /* 0x0014 */ unsigned long InvalidBucketIndex;
  /* 0x0018 */ unsigned __int64 MinTime;
  /* 0x0020 */ unsigned __int64 MaxTime;
  /* 0x0028 */ struct _PPM_SELECTION_STATISTICS SelectionStatistics;
  /* 0x00a8 */ struct _PROC_IDLE_STATE_BUCKET IdleTimeBuckets[26];
} PROC_IDLE_STATE_ACCOUNTING, *PPROC_IDLE_STATE_ACCOUNTING; /* size: 0x03e8 */

typedef struct _DRIVER_EXTENSION
{
  /* 0x0000 */ struct _DRIVER_OBJECT* DriverObject;
  /* 0x0008 */ void* AddDevice /* function */;
  /* 0x0010 */ unsigned long Count;
  /* 0x0014 */ long Padding_168;
  /* 0x0018 */ struct _UNICODE_STRING ServiceKeyName;
  /* 0x0028 */ struct _IO_CLIENT_EXTENSION* ClientDriverExtension;
  /* 0x0030 */ struct _FS_FILTER_CALLBACKS* FsFilterCallbacks;
  /* 0x0038 */ void* KseCallbacks;
  /* 0x0040 */ void* DvCallbacks;
  /* 0x0048 */ void* VerifierContext;
} DRIVER_EXTENSION, *PDRIVER_EXTENSION; /* size: 0x0050 */

typedef struct _MMWSL_INSTANCE
{
  /* 0x0000 */ struct _MMPTE* NextPteToTrim;
  /* 0x0008 */ struct _MMPTE* NextPteToAge;
  /* 0x0010 */ struct _MMPTE* NextPteToAccessClear;
  /* 0x0018 */ unsigned long LastAccessClearingRemainder;
  /* 0x001c */ unsigned long LastAgingRemainder;
  /* 0x0020 */ unsigned __int64 LockedEntries;
} MMWSL_INSTANCE, *PMMWSL_INSTANCE; /* size: 0x0028 */

typedef struct _DEFERRED_WRITE
{
  /* 0x0000 */ short NodeTypeCode;
  /* 0x0002 */ short NodeByteSize;
  /* 0x0004 */ long Padding_169;
  /* 0x0008 */ struct _FILE_OBJECT* FileObject;
  /* 0x0010 */ unsigned long BytesToWrite;
  /* 0x0014 */ long Padding_170;
  /* 0x0018 */ struct _LIST_ENTRY DeferredWriteLinks;
  /* 0x0028 */ struct _KEVENT* Event;
  /* 0x0030 */ void* PostRoutine /* function */;
  /* 0x0038 */ void* Context1;
  /* 0x0040 */ void* Context2;
  /* 0x0048 */ struct _CC_PARTITION* Partition;
  /* 0x0050 */ unsigned char SoftThrottle;
  /* 0x0051 */ char Padding_171[7];
  /* 0x0058 */ union _LARGE_INTEGER TimeAdded;
} DEFERRED_WRITE, *PDEFERRED_WRITE; /* size: 0x0060 */

typedef struct _PROCESSOR_IDLE_CONSTRAINTS
{
  /* 0x0000 */ unsigned __int64 TotalTime;
  /* 0x0008 */ unsigned __int64 IdleTime;
  /* 0x0010 */ unsigned __int64 ExpectedIdleDuration;
  /* 0x0018 */ unsigned __int64 MaxIdleDuration;
  /* 0x0020 */ unsigned long OverrideState;
  /* 0x0024 */ unsigned long TimeCheck;
  /* 0x0028 */ unsigned char PromotePercent;
  /* 0x0029 */ unsigned char DemotePercent;
  /* 0x002a */ unsigned char Parked;
  /* 0x002b */ unsigned char Interruptible;
  /* 0x002c */ unsigned char PlatformIdle;
  /* 0x002d */ unsigned char ExpectedWakeReason;
  /* 0x002e */ unsigned char IdleStateMax;
  /* 0x002f */ char __PADDING__[1];
} PROCESSOR_IDLE_CONSTRAINTS, *PPROCESSOR_IDLE_CONSTRAINTS; /* size: 0x0030 */

typedef struct _PROCESSOR_IDLE_PREPARE_INFO
{
  /* 0x0000 */ void* Context;
  /* 0x0008 */ struct _PROCESSOR_IDLE_CONSTRAINTS Constraints;
  /* 0x0038 */ unsigned long DependencyCount;
  /* 0x003c */ unsigned long DependencyUsed;
  /* 0x0040 */ struct _PROCESSOR_IDLE_DEPENDENCY* DependencyArray;
  /* 0x0048 */ unsigned long PlatformIdleStateIndex;
  /* 0x004c */ unsigned long ProcessorIdleStateIndex;
  /* 0x0050 */ unsigned long IdleSelectFailureMask;
  /* 0x0054 */ long __PADDING__[1];
} PROCESSOR_IDLE_PREPARE_INFO, *PPROCESSOR_IDLE_PREPARE_INFO; /* size: 0x0058 */

typedef union _KWAIT_STATUS_REGISTER
{
  union
  {
    /* 0x0000 */ unsigned char Flags;
    struct /* bitfield */
    {
      /* 0x0000 */ unsigned char State : 3; /* bit position: 0 */
      /* 0x0000 */ unsigned char Affinity : 1; /* bit position: 3 */
      /* 0x0000 */ unsigned char Priority : 1; /* bit position: 4 */
      /* 0x0000 */ unsigned char Apc : 1; /* bit position: 5 */
      /* 0x0000 */ unsigned char UserApc : 1; /* bit position: 6 */
      /* 0x0000 */ unsigned char Alert : 1; /* bit position: 7 */
    }; /* bitfield */
  }; /* size: 0x0001 */
} KWAIT_STATUS_REGISTER, *PKWAIT_STATUS_REGISTER; /* size: 0x0001 */

typedef struct _KWAIT_BLOCK
{
  /* 0x0000 */ struct _LIST_ENTRY WaitListEntry;
  /* 0x0010 */ unsigned char WaitType;
  /* 0x0011 */ volatile unsigned char BlockState;
  /* 0x0012 */ unsigned short WaitKey;
  /* 0x0014 */ long SpareLong;
  union
  {
    /* 0x0018 */ struct _KTHREAD* Thread;
    /* 0x0018 */ struct _KQUEUE* NotificationQueue;
  }; /* size: 0x0008 */
  /* 0x0020 */ void* Object;
  /* 0x0028 */ void* SparePtr;
} KWAIT_BLOCK, *PKWAIT_BLOCK; /* size: 0x0030 */

typedef struct _KTHREAD
{
  /* 0x0000 */ struct _DISPATCHER_HEADER Header;
  /* 0x0018 */ void* SListFaultAddress;
  /* 0x0020 */ unsigned __int64 QuantumTarget;
  /* 0x0028 */ void* InitialStack;
  /* 0x0030 */ void* volatile StackLimit;
  /* 0x0038 */ void* StackBase;
  /* 0x0040 */ unsigned __int64 ThreadLock;
  /* 0x0048 */ volatile unsigned __int64 CycleTime;
  /* 0x0050 */ unsigned long CurrentRunTime;
  /* 0x0054 */ unsigned long ExpectedRunTime;
  /* 0x0058 */ void* KernelStack;
  /* 0x0060 */ struct _XSAVE_FORMAT* StateSaveArea;
  /* 0x0068 */ struct _KSCHEDULING_GROUP* volatile SchedulingGroup;
  /* 0x0070 */ union _KWAIT_STATUS_REGISTER WaitRegister;
  /* 0x0071 */ volatile unsigned char Running;
  /* 0x0072 */ unsigned char Alerted[2];
  union
  {
    struct /* bitfield */
    {
      /* 0x0074 */ unsigned long AutoBoostActive : 1; /* bit position: 0 */
      /* 0x0074 */ unsigned long ReadyTransition : 1; /* bit position: 1 */
      /* 0x0074 */ unsigned long WaitNext : 1; /* bit position: 2 */
      /* 0x0074 */ unsigned long SystemAffinityActive : 1; /* bit position: 3 */
      /* 0x0074 */ unsigned long Alertable : 1; /* bit position: 4 */
      /* 0x0074 */ unsigned long UserStackWalkActive : 1; /* bit position: 5 */
      /* 0x0074 */ unsigned long ApcInterruptRequest : 1; /* bit position: 6 */
      /* 0x0074 */ unsigned long QuantumEndMigrate : 1; /* bit position: 7 */
      /* 0x0074 */ unsigned long UmsDirectedSwitchEnable : 1; /* bit position: 8 */
      /* 0x0074 */ unsigned long TimerActive : 1; /* bit position: 9 */
      /* 0x0074 */ unsigned long SystemThread : 1; /* bit position: 10 */
      /* 0x0074 */ unsigned long ProcessDetachActive : 1; /* bit position: 11 */
      /* 0x0074 */ unsigned long CalloutActive : 1; /* bit position: 12 */
      /* 0x0074 */ unsigned long ScbReadyQueue : 1; /* bit position: 13 */
      /* 0x0074 */ unsigned long ApcQueueable : 1; /* bit position: 14 */
      /* 0x0074 */ unsigned long ReservedStackInUse : 1; /* bit position: 15 */
      /* 0x0074 */ unsigned long UmsPerformingSyscall : 1; /* bit position: 16 */
      /* 0x0074 */ unsigned long TimerSuspended : 1; /* bit position: 17 */
      /* 0x0074 */ unsigned long SuspendedWaitMode : 1; /* bit position: 18 */
      /* 0x0074 */ unsigned long SuspendSchedulerApcWait : 1; /* bit position: 19 */
      /* 0x0074 */ unsigned long CetUserShadowStack : 1; /* bit position: 20 */
      /* 0x0074 */ unsigned long BypassProcessFreeze : 1; /* bit position: 21 */
      /* 0x0074 */ unsigned long Reserved : 10; /* bit position: 22 */
    }; /* bitfield */
    /* 0x0074 */ long MiscFlags;
  }; /* size: 0x0004 */
  union
  {
    struct /* bitfield */
    {
      /* 0x0078 */ unsigned long ThreadFlagsSpare : 2; /* bit position: 0 */
      /* 0x0078 */ unsigned long AutoAlignment : 1; /* bit position: 2 */
      /* 0x0078 */ unsigned long DisableBoost : 1; /* bit position: 3 */
      /* 0x0078 */ unsigned long AlertedByThreadId : 1; /* bit position: 4 */
      /* 0x0078 */ unsigned long QuantumDonation : 1; /* bit position: 5 */
      /* 0x0078 */ unsigned long EnableStackSwap : 1; /* bit position: 6 */
      /* 0x0078 */ unsigned long GuiThread : 1; /* bit position: 7 */
      /* 0x0078 */ unsigned long DisableQuantum : 1; /* bit position: 8 */
      /* 0x0078 */ unsigned long ChargeOnlySchedulingGroup : 1; /* bit position: 9 */
      /* 0x0078 */ unsigned long DeferPreemption : 1; /* bit position: 10 */
      /* 0x0078 */ unsigned long QueueDeferPreemption : 1; /* bit position: 11 */
      /* 0x0078 */ unsigned long ForceDeferSchedule : 1; /* bit position: 12 */
      /* 0x0078 */ unsigned long SharedReadyQueueAffinity : 1; /* bit position: 13 */
      /* 0x0078 */ unsigned long FreezeCount : 1; /* bit position: 14 */
      /* 0x0078 */ unsigned long TerminationApcRequest : 1; /* bit position: 15 */
      /* 0x0078 */ unsigned long AutoBoostEntriesExhausted : 1; /* bit position: 16 */
      /* 0x0078 */ unsigned long KernelStackResident : 1; /* bit position: 17 */
      /* 0x0078 */ unsigned long TerminateRequestReason : 2; /* bit position: 18 */
      /* 0x0078 */ unsigned long ProcessStackCountDecremented : 1; /* bit position: 20 */
      /* 0x0078 */ unsigned long RestrictedGuiThread : 1; /* bit position: 21 */
      /* 0x0078 */ unsigned long VpBackingThread : 1; /* bit position: 22 */
      /* 0x0078 */ unsigned long ThreadFlagsSpare2 : 1; /* bit position: 23 */
      /* 0x0078 */ unsigned long EtwStackTraceApcInserted : 8; /* bit position: 24 */
    }; /* bitfield */
    /* 0x0078 */ volatile long ThreadFlags;
  }; /* size: 0x0004 */
  /* 0x007c */ volatile unsigned char Tag;
  /* 0x007d */ unsigned char SystemHeteroCpuPolicy;
  struct /* bitfield */
  {
    /* 0x007e */ unsigned char UserHeteroCpuPolicy : 7; /* bit position: 0 */
    /* 0x007e */ unsigned char ExplicitSystemHeteroCpuPolicy : 1; /* bit position: 7 */
  }; /* bitfield */
  union
  {
    struct /* bitfield */
    {
      /* 0x007f */ unsigned char RunningNonRetpolineCode : 1; /* bit position: 0 */
      /* 0x007f */ unsigned char SpecCtrlSpare : 7; /* bit position: 1 */
    }; /* bitfield */
    /* 0x007f */ unsigned char SpecCtrl;
  }; /* size: 0x0001 */
  /* 0x0080 */ unsigned long SystemCallNumber;
  /* 0x0084 */ unsigned long ReadyTime;
  /* 0x0088 */ void* FirstArgument;
  /* 0x0090 */ struct _KTRAP_FRAME* TrapFrame;
  union
  {
    /* 0x0098 */ struct _KAPC_STATE ApcState;
    struct
    {
      /* 0x0098 */ unsigned char ApcStateFill[43];
      /* 0x00c3 */ char Priority;
      /* 0x00c4 */ unsigned long UserIdealProcessor;
    }; /* size: 0x0030 */
  }; /* size: 0x0030 */
  /* 0x00c8 */ volatile __int64 WaitStatus;
  /* 0x00d0 */ struct _KWAIT_BLOCK* WaitBlockList;
  union
  {
    /* 0x00d8 */ struct _LIST_ENTRY WaitListEntry;
    /* 0x00d8 */ struct _SINGLE_LIST_ENTRY SwapListEntry;
  }; /* size: 0x0010 */
  /* 0x00e8 */ struct _DISPATCHER_HEADER* volatile Queue;
  /* 0x00f0 */ void* Teb;
  /* 0x00f8 */ unsigned __int64 RelativeTimerBias;
  /* 0x0100 */ struct _KTIMER Timer;
  union
  {
    /* 0x0140 */ struct _KWAIT_BLOCK WaitBlock[4];
    struct
    {
      /* 0x0140 */ unsigned char WaitBlockFill4[20];
      /* 0x0154 */ unsigned long ContextSwitches;
    }; /* size: 0x0018 */
    struct
    {
      /* 0x0140 */ unsigned char WaitBlockFill5[68];
      /* 0x0184 */ volatile unsigned char State;
      /* 0x0185 */ char Spare13;
      /* 0x0186 */ unsigned char WaitIrql;
      /* 0x0187 */ char WaitMode;
    }; /* size: 0x0048 */
    struct
    {
      /* 0x0140 */ unsigned char WaitBlockFill6[116];
      /* 0x01b4 */ unsigned long WaitTime;
    }; /* size: 0x0078 */
    struct
    {
      /* 0x0140 */ unsigned char WaitBlockFill7[164];
      union
      {
        struct
        {
          /* 0x01e4 */ short KernelApcDisable;
          /* 0x01e6 */ short SpecialApcDisable;
        }; /* size: 0x0004 */
        /* 0x01e4 */ unsigned long CombinedApcDisable;
      }; /* size: 0x0004 */
    }; /* size: 0x00a8 */
    struct
    {
      /* 0x0140 */ unsigned char WaitBlockFill8[40];
      /* 0x0168 */ struct _KTHREAD_COUNTERS* ThreadCounters;
    }; /* size: 0x0030 */
    struct
    {
      /* 0x0140 */ unsigned char WaitBlockFill9[88];
      /* 0x0198 */ struct _XSTATE_SAVE* XStateSave;
    }; /* size: 0x0060 */
    struct
    {
      /* 0x0140 */ unsigned char WaitBlockFill10[136];
      /* 0x01c8 */ void* volatile Win32Thread;
    }; /* size: 0x0090 */
    struct
    {
      /* 0x0140 */ unsigned char WaitBlockFill11[176];
      /* 0x01f0 */ struct _UMS_CONTROL_BLOCK* Ucb;
      /* 0x01f8 */ struct _KUMS_CONTEXT_HEADER* volatile Uch;
    }; /* size: 0x00c0 */
  }; /* size: 0x00c0 */
  union
  {
    /* 0x0200 */ volatile long ThreadFlags2;
    struct /* bitfield */
    {
      /* 0x0200 */ unsigned long BamQosLevel : 8; /* bit position: 0 */
      /* 0x0200 */ unsigned long ThreadFlags2Reserved : 24; /* bit position: 8 */
    }; /* bitfield */
  }; /* size: 0x0004 */
  /* 0x0204 */ unsigned long Spare21;
  /* 0x0208 */ struct _LIST_ENTRY QueueListEntry;
  union
  {
    /* 0x0218 */ volatile unsigned long NextProcessor;
    struct /* bitfield */
    {
      /* 0x0218 */ unsigned long NextProcessorNumber : 31; /* bit position: 0 */
      /* 0x0218 */ unsigned long SharedReadyQueue : 1; /* bit position: 31 */
    }; /* bitfield */
  }; /* size: 0x0004 */
  /* 0x021c */ long QueuePriority;
  /* 0x0220 */ struct _KPROCESS* Process;
  union
  {
    /* 0x0228 */ struct _GROUP_AFFINITY UserAffinity;
    struct
    {
      /* 0x0228 */ unsigned char UserAffinityFill[10];
      /* 0x0232 */ char PreviousMode;
      /* 0x0233 */ char BasePriority;
      union
      {
        /* 0x0234 */ char PriorityDecrement;
        struct /* bitfield */
        {
          /* 0x0234 */ unsigned char ForegroundBoost : 4; /* bit position: 0 */
          /* 0x0234 */ unsigned char UnusualBoost : 4; /* bit position: 4 */
        }; /* bitfield */
      }; /* size: 0x0001 */
      /* 0x0235 */ unsigned char Preempted;
      /* 0x0236 */ unsigned char AdjustReason;
      /* 0x0237 */ char AdjustIncrement;
    }; /* size: 0x0010 */
  }; /* size: 0x0010 */
  /* 0x0238 */ unsigned __int64 AffinityVersion;
  union
  {
    /* 0x0240 */ struct _GROUP_AFFINITY Affinity;
    struct
    {
      /* 0x0240 */ unsigned char AffinityFill[10];
      /* 0x024a */ unsigned char ApcStateIndex;
      /* 0x024b */ unsigned char WaitBlockCount;
      /* 0x024c */ unsigned long IdealProcessor;
    }; /* size: 0x0010 */
  }; /* size: 0x0010 */
  /* 0x0250 */ unsigned __int64 NpxState;
  union
  {
    /* 0x0258 */ struct _KAPC_STATE SavedApcState;
    struct
    {
      /* 0x0258 */ unsigned char SavedApcStateFill[43];
      /* 0x0283 */ unsigned char WaitReason;
      /* 0x0284 */ char SuspendCount;
      /* 0x0285 */ char Saturation;
      /* 0x0286 */ unsigned short SListFaultCount;
    }; /* size: 0x0030 */
  }; /* size: 0x0030 */
  union
  {
    /* 0x0288 */ struct _KAPC SchedulerApc;
    struct
    {
      /* 0x0288 */ unsigned char SchedulerApcFill1[3];
      /* 0x028b */ unsigned char QuantumReset;
    }; /* size: 0x0004 */
    struct
    {
      /* 0x0288 */ unsigned char SchedulerApcFill2[4];
      /* 0x028c */ unsigned long KernelTime;
    }; /* size: 0x0008 */
    struct
    {
      /* 0x0288 */ unsigned char SchedulerApcFill3[64];
      /* 0x02c8 */ struct _KPRCB* volatile WaitPrcb;
    }; /* size: 0x0048 */
    struct
    {
      /* 0x0288 */ unsigned char SchedulerApcFill4[72];
      /* 0x02d0 */ void* LegoData;
    }; /* size: 0x0050 */
    struct
    {
      /* 0x0288 */ unsigned char SchedulerApcFill5[83];
      /* 0x02db */ unsigned char CallbackNestingLevel;
      /* 0x02dc */ unsigned long UserTime;
    }; /* size: 0x0058 */
  }; /* size: 0x0058 */
  /* 0x02e0 */ struct _KEVENT SuspendEvent;
  /* 0x02f8 */ struct _LIST_ENTRY ThreadListEntry;
  /* 0x0308 */ struct _LIST_ENTRY MutantListHead;
  /* 0x0318 */ unsigned char AbEntrySummary;
  /* 0x0319 */ unsigned char AbWaitEntryCount;
  /* 0x031a */ unsigned char AbAllocationRegionCount;
  /* 0x031b */ char SystemPriority;
  /* 0x031c */ unsigned long SecureThreadCookie;
  /* 0x0320 */ struct _KLOCK_ENTRY* LockEntries;
  /* 0x0328 */ struct _SINGLE_LIST_ENTRY PropagateBoostsEntry;
  /* 0x0330 */ struct _SINGLE_LIST_ENTRY IoSelfBoostsEntry;
  /* 0x0338 */ unsigned char PriorityFloorCounts[16];
  /* 0x0348 */ unsigned char PriorityFloorCountsReserved[16];
  /* 0x0358 */ unsigned long PriorityFloorSummary;
  /* 0x035c */ volatile long AbCompletedIoBoostCount;
  /* 0x0360 */ volatile long AbCompletedIoQoSBoostCount;
  /* 0x0364 */ volatile short KeReferenceCount;
  /* 0x0366 */ unsigned char AbOrphanedEntrySummary;
  /* 0x0367 */ unsigned char AbOwnedEntryCount;
  /* 0x0368 */ unsigned long ForegroundLossTime;
  /* 0x036c */ long Padding_172;
  union
  {
    /* 0x0370 */ struct _LIST_ENTRY GlobalForegroundListEntry;
    struct
    {
      /* 0x0370 */ struct _SINGLE_LIST_ENTRY ForegroundDpcStackListEntry;
      /* 0x0378 */ unsigned __int64 InGlobalForegroundList;
    }; /* size: 0x0010 */
  }; /* size: 0x0010 */
  /* 0x0380 */ __int64 ReadOperationCount;
  /* 0x0388 */ __int64 WriteOperationCount;
  /* 0x0390 */ __int64 OtherOperationCount;
  /* 0x0398 */ __int64 ReadTransferCount;
  /* 0x03a0 */ __int64 WriteTransferCount;
  /* 0x03a8 */ __int64 OtherTransferCount;
  /* 0x03b0 */ struct _KSCB* QueuedScb;
  /* 0x03b8 */ volatile unsigned long ThreadTimerDelay;
  union
  {
    /* 0x03bc */ volatile long ThreadFlags3;
    struct /* bitfield */
    {
      /* 0x03bc */ unsigned long ThreadFlags3Reserved : 8; /* bit position: 0 */
      /* 0x03bc */ unsigned long PpmPolicy : 2; /* bit position: 8 */
      /* 0x03bc */ unsigned long ThreadFlags3Reserved2 : 22; /* bit position: 10 */
    }; /* bitfield */
  }; /* size: 0x0004 */
  /* 0x03c0 */ unsigned __int64 TracingPrivate[1];
  /* 0x03c8 */ void* SchedulerAssist;
  /* 0x03d0 */ void* volatile AbWaitObject;
  /* 0x03d8 */ unsigned long ReservedPreviousReadyTimeValue;
  /* 0x03dc */ long Padding_173;
  /* 0x03e0 */ unsigned __int64 KernelWaitTime;
  /* 0x03e8 */ unsigned __int64 UserWaitTime;
  union
  {
    /* 0x03f0 */ struct _LIST_ENTRY GlobalUpdateVpThreadPriorityListEntry;
    struct
    {
      /* 0x03f0 */ struct _SINGLE_LIST_ENTRY UpdateVpThreadPriorityDpcStackListEntry;
      /* 0x03f8 */ unsigned __int64 InGlobalUpdateVpThreadPriorityList;
    }; /* size: 0x0010 */
  }; /* size: 0x0010 */
  /* 0x0400 */ long SchedulerAssistPriorityFloor;
  /* 0x0404 */ unsigned long Spare28;
  /* 0x0408 */ unsigned char ResourceIndex;
  /* 0x0409 */ unsigned char Spare31[3];
  /* 0x040c */ long Padding_174;
  /* 0x0410 */ unsigned __int64 EndPadding[4];
} KTHREAD, *PKTHREAD; /* size: 0x0430 */

typedef struct _CLIENT_ID
{
  /* 0x0000 */ void* UniqueProcess;
  /* 0x0008 */ void* UniqueThread;
} CLIENT_ID, *PCLIENT_ID; /* size: 0x0010 */

typedef union _PS_CLIENT_SECURITY_CONTEXT
{
  union
  {
    /* 0x0000 */ unsigned __int64 ImpersonationData;
    /* 0x0000 */ void* ImpersonationToken;
    struct /* bitfield */
    {
      /* 0x0000 */ unsigned __int64 ImpersonationLevel : 2; /* bit position: 0 */
      /* 0x0000 */ unsigned __int64 EffectiveOnly : 1; /* bit position: 2 */
    }; /* bitfield */
  }; /* size: 0x0008 */
} PS_CLIENT_SECURITY_CONTEXT, *PPS_CLIENT_SECURITY_CONTEXT; /* size: 0x0008 */

typedef struct _ETHREAD
{
  /* 0x0000 */ struct _KTHREAD Tcb;
  /* 0x0430 */ union _LARGE_INTEGER CreateTime;
  union
  {
    /* 0x0438 */ union _LARGE_INTEGER ExitTime;
    /* 0x0438 */ struct _LIST_ENTRY KeyedWaitChain;
  }; /* size: 0x0010 */
  union
  {
    /* 0x0448 */ struct _LIST_ENTRY PostBlockList;
    struct
    {
      /* 0x0448 */ void* ForwardLinkShadow;
      /* 0x0450 */ void* StartAddress;
    }; /* size: 0x0010 */
  }; /* size: 0x0010 */
  union
  {
    /* 0x0458 */ struct _TERMINATION_PORT* TerminationPort;
    /* 0x0458 */ struct _ETHREAD* ReaperLink;
    /* 0x0458 */ void* KeyedWaitValue;
  }; /* size: 0x0008 */
  /* 0x0460 */ unsigned __int64 ActiveTimerListLock;
  /* 0x0468 */ struct _LIST_ENTRY ActiveTimerListHead;
  /* 0x0478 */ struct _CLIENT_ID Cid;
  union
  {
    /* 0x0488 */ struct _KSEMAPHORE KeyedWaitSemaphore;
    /* 0x0488 */ struct _KSEMAPHORE AlpcWaitSemaphore;
  }; /* size: 0x0020 */
  /* 0x04a8 */ union _PS_CLIENT_SECURITY_CONTEXT ClientSecurity;
  /* 0x04b0 */ struct _LIST_ENTRY IrpList;
  /* 0x04c0 */ unsigned __int64 TopLevelIrp;
  /* 0x04c8 */ struct _DEVICE_OBJECT* DeviceToVerify;
  /* 0x04d0 */ void* Win32StartAddress;
  /* 0x04d8 */ void* ChargeOnlySession;
  /* 0x04e0 */ void* LegacyPowerObject;
  /* 0x04e8 */ struct _LIST_ENTRY ThreadListEntry;
  /* 0x04f8 */ struct _EX_RUNDOWN_REF RundownProtect;
  /* 0x0500 */ struct _EX_PUSH_LOCK ThreadLock;
  /* 0x0508 */ unsigned long ReadClusterSize;
  /* 0x050c */ volatile long MmLockOrdering;
  union
  {
    /* 0x0510 */ unsigned long CrossThreadFlags;
    struct /* bitfield */
    {
      /* 0x0510 */ unsigned long Terminated : 1; /* bit position: 0 */
      /* 0x0510 */ unsigned long ThreadInserted : 1; /* bit position: 1 */
      /* 0x0510 */ unsigned long HideFromDebugger : 1; /* bit position: 2 */
      /* 0x0510 */ unsigned long ActiveImpersonationInfo : 1; /* bit position: 3 */
      /* 0x0510 */ unsigned long HardErrorsAreDisabled : 1; /* bit position: 4 */
      /* 0x0510 */ unsigned long BreakOnTermination : 1; /* bit position: 5 */
      /* 0x0510 */ unsigned long SkipCreationMsg : 1; /* bit position: 6 */
      /* 0x0510 */ unsigned long SkipTerminationMsg : 1; /* bit position: 7 */
      /* 0x0510 */ unsigned long CopyTokenOnOpen : 1; /* bit position: 8 */
      /* 0x0510 */ unsigned long ThreadIoPriority : 3; /* bit position: 9 */
      /* 0x0510 */ unsigned long ThreadPagePriority : 3; /* bit position: 12 */
      /* 0x0510 */ unsigned long RundownFail : 1; /* bit position: 15 */
      /* 0x0510 */ unsigned long UmsForceQueueTermination : 1; /* bit position: 16 */
      /* 0x0510 */ unsigned long IndirectCpuSets : 1; /* bit position: 17 */
      /* 0x0510 */ unsigned long DisableDynamicCodeOptOut : 1; /* bit position: 18 */
      /* 0x0510 */ unsigned long ExplicitCaseSensitivity : 1; /* bit position: 19 */
      /* 0x0510 */ unsigned long PicoNotifyExit : 1; /* bit position: 20 */
      /* 0x0510 */ unsigned long DbgWerUserReportActive : 1; /* bit position: 21 */
      /* 0x0510 */ unsigned long ForcedSelfTrimActive : 1; /* bit position: 22 */
      /* 0x0510 */ unsigned long SamplingCoverage : 1; /* bit position: 23 */
      /* 0x0510 */ unsigned long ReservedCrossThreadFlags : 8; /* bit position: 24 */
    }; /* bitfield */
  }; /* size: 0x0004 */
  union
  {
    /* 0x0514 */ unsigned long SameThreadPassiveFlags;
    struct /* bitfield */
    {
      /* 0x0514 */ unsigned long ActiveExWorker : 1; /* bit position: 0 */
      /* 0x0514 */ unsigned long MemoryMaker : 1; /* bit position: 1 */
      /* 0x0514 */ unsigned long StoreLockThread : 2; /* bit position: 2 */
      /* 0x0514 */ unsigned long ClonedThread : 1; /* bit position: 4 */
      /* 0x0514 */ unsigned long KeyedEventInUse : 1; /* bit position: 5 */
      /* 0x0514 */ unsigned long SelfTerminate : 1; /* bit position: 6 */
      /* 0x0514 */ unsigned long RespectIoPriority : 1; /* bit position: 7 */
      /* 0x0514 */ unsigned long ActivePageLists : 1; /* bit position: 8 */
      /* 0x0514 */ unsigned long SecureContext : 1; /* bit position: 9 */
      /* 0x0514 */ unsigned long ZeroPageThread : 1; /* bit position: 10 */
      /* 0x0514 */ unsigned long WorkloadClass : 1; /* bit position: 11 */
      /* 0x0514 */ unsigned long ReservedSameThreadPassiveFlags : 20; /* bit position: 12 */
    }; /* bitfield */
  }; /* size: 0x0004 */
  union
  {
    /* 0x0518 */ unsigned long SameThreadApcFlags;
    struct
    {
      struct /* bitfield */
      {
        /* 0x0518 */ unsigned char OwnsProcessAddressSpaceExclusive : 1; /* bit position: 0 */
        /* 0x0518 */ unsigned char OwnsProcessAddressSpaceShared : 1; /* bit position: 1 */
        /* 0x0518 */ unsigned char HardFaultBehavior : 1; /* bit position: 2 */
        /* 0x0518 */ volatile unsigned char StartAddressInvalid : 1; /* bit position: 3 */
        /* 0x0518 */ unsigned char EtwCalloutActive : 1; /* bit position: 4 */
        /* 0x0518 */ unsigned char SuppressSymbolLoad : 1; /* bit position: 5 */
        /* 0x0518 */ unsigned char Prefetching : 1; /* bit position: 6 */
        /* 0x0518 */ unsigned char OwnsVadExclusive : 1; /* bit position: 7 */
      }; /* bitfield */
      struct /* bitfield */
      {
        /* 0x0519 */ unsigned char SystemPagePriorityActive : 1; /* bit position: 0 */
        /* 0x0519 */ unsigned char SystemPagePriority : 3; /* bit position: 1 */
        /* 0x0519 */ unsigned char AllowUserWritesToExecutableMemory : 1; /* bit position: 4 */
        /* 0x0519 */ unsigned char AllowKernelWritesToExecutableMemory : 1; /* bit position: 5 */
        /* 0x0519 */ unsigned char OwnsVadShared : 1; /* bit position: 6 */
      }; /* bitfield */
    }; /* size: 0x0002 */
  }; /* size: 0x0004 */
  /* 0x051c */ unsigned char CacheManagerActive;
  /* 0x051d */ unsigned char DisablePageFaultClustering;
  /* 0x051e */ unsigned char ActiveFaultCount;
  /* 0x051f */ unsigned char LockOrderState;
  /* 0x0520 */ unsigned long PerformanceCountLowReserved;
  /* 0x0524 */ long PerformanceCountHighReserved;
  /* 0x0528 */ unsigned __int64 AlpcMessageId;
  union
  {
    /* 0x0530 */ void* AlpcMessage;
    /* 0x0530 */ unsigned long AlpcReceiveAttributeSet;
  }; /* size: 0x0008 */
  /* 0x0538 */ struct _LIST_ENTRY AlpcWaitListEntry;
  /* 0x0548 */ long ExitStatus;
  /* 0x054c */ unsigned long CacheManagerCount;
  /* 0x0550 */ unsigned long IoBoostCount;
  /* 0x0554 */ unsigned long IoQoSBoostCount;
  /* 0x0558 */ unsigned long IoQoSThrottleCount;
  /* 0x055c */ unsigned long KernelStackReference;
  /* 0x0560 */ struct _LIST_ENTRY BoostList;
  /* 0x0570 */ struct _LIST_ENTRY DeboostList;
  /* 0x0580 */ unsigned __int64 BoostListLock;
  /* 0x0588 */ unsigned __int64 IrpListLock;
  /* 0x0590 */ void* ReservedForSynchTracking;
  /* 0x0598 */ struct _SINGLE_LIST_ENTRY CmCallbackListHead;
  /* 0x05a0 */ const struct _GUID* ActivityId;
  /* 0x05a8 */ struct _SINGLE_LIST_ENTRY SeLearningModeListHead;
  /* 0x05b0 */ void* VerifierContext;
  /* 0x05b8 */ void* AdjustedClientToken;
  /* 0x05c0 */ void* WorkOnBehalfThread;
  /* 0x05c8 */ struct _PS_PROPERTY_SET PropertySet;
  /* 0x05e0 */ void* PicoContext;
  /* 0x05e8 */ unsigned __int64 UserFsBase;
  /* 0x05f0 */ unsigned __int64 UserGsBase;
  /* 0x05f8 */ struct _THREAD_ENERGY_VALUES* EnergyValues;
  union
  {
    /* 0x0600 */ unsigned __int64 SelectedCpuSets;
    /* 0x0600 */ unsigned __int64* SelectedCpuSetsIndirect;
  }; /* size: 0x0008 */
  /* 0x0608 */ struct _EJOB* Silo;
  /* 0x0610 */ struct _UNICODE_STRING* ThreadName;
  /* 0x0618 */ struct _CONTEXT* SetContextState;
  /* 0x0620 */ unsigned long LastExpectedRunTime;
  /* 0x0624 */ unsigned long HeapData;
  /* 0x0628 */ struct _LIST_ENTRY OwnerEntryListHead;
  /* 0x0638 */ unsigned __int64 DisownedOwnerEntryListLock;
  /* 0x0640 */ struct _LIST_ENTRY DisownedOwnerEntryListHead;
  /* 0x0650 */ struct _KLOCK_ENTRY LockEntries[6];
  /* 0x0890 */ void* CmDbgInfo;
} ETHREAD, *PETHREAD; /* size: 0x0898 */

typedef struct _WNF_NODE_HEADER
{
  /* 0x0000 */ unsigned short NodeTypeCode;
  /* 0x0002 */ unsigned short NodeByteSize;
} WNF_NODE_HEADER, *PWNF_NODE_HEADER; /* size: 0x0004 */

typedef struct _WNF_STATE_NAME_STRUCT
{
  struct /* bitfield */
  {
    /* 0x0000 */ unsigned __int64 Version : 4; /* bit position: 0 */
    /* 0x0000 */ unsigned __int64 NameLifetime : 2; /* bit position: 4 */
    /* 0x0000 */ unsigned __int64 DataScope : 4; /* bit position: 6 */
    /* 0x0000 */ unsigned __int64 PermanentData : 1; /* bit position: 10 */
    /* 0x0000 */ unsigned __int64 Sequence : 53; /* bit position: 11 */
  }; /* bitfield */
} WNF_STATE_NAME_STRUCT, *PWNF_STATE_NAME_STRUCT; /* size: 0x0008 */

typedef struct _WNF_STATE_NAME_REGISTRATION
{
  /* 0x0000 */ unsigned long MaxStateSize;
  /* 0x0004 */ long Padding_175;
  /* 0x0008 */ const struct _WNF_TYPE_ID* TypeId;
  /* 0x0010 */ struct _SECURITY_DESCRIPTOR* SecurityDescriptor;
} WNF_STATE_NAME_REGISTRATION, *PWNF_STATE_NAME_REGISTRATION; /* size: 0x0018 */

typedef struct _WNF_NAME_INSTANCE
{
  /* 0x0000 */ struct _WNF_NODE_HEADER Header;
  /* 0x0004 */ long Padding_176;
  /* 0x0008 */ struct _EX_RUNDOWN_REF RunRef;
  /* 0x0010 */ struct _RTL_BALANCED_NODE TreeLinks;
  /* 0x0028 */ struct _WNF_STATE_NAME_STRUCT StateName;
  /* 0x0030 */ struct _WNF_SCOPE_INSTANCE* ScopeInstance;
  /* 0x0038 */ struct _WNF_STATE_NAME_REGISTRATION StateNameInfo;
  /* 0x0050 */ struct _WNF_LOCK StateDataLock;
  /* 0x0058 */ struct _WNF_STATE_DATA* StateData;
  /* 0x0060 */ unsigned long CurrentChangeStamp;
  /* 0x0064 */ long Padding_177;
  /* 0x0068 */ void* PermanentDataStore;
  /* 0x0070 */ struct _WNF_LOCK StateSubscriptionListLock;
  /* 0x0078 */ struct _LIST_ENTRY StateSubscriptionListHead;
  /* 0x0088 */ struct _LIST_ENTRY TemporaryNameListEntry;
  /* 0x0098 */ struct _EPROCESS* CreatorProcess;
  /* 0x00a0 */ long DataSubscribersCount;
  /* 0x00a4 */ long CurrentDeliveryCount;
} WNF_NAME_INSTANCE, *PWNF_NAME_INSTANCE; /* size: 0x00a8 */

typedef struct _POP_FX_PERF_SET
{
  /* 0x0000 */ struct _PO_FX_COMPONENT_PERF_SET* PerfSet;
  /* 0x0008 */ unsigned __int64 CurrentPerf;
  /* 0x0010 */ unsigned __int64 CurrentPerfStamp;
  /* 0x0018 */ unsigned char CurrentPerfNominal;
  /* 0x0019 */ char __PADDING__[7];
} POP_FX_PERF_SET, *PPOP_FX_PERF_SET; /* size: 0x0020 */

typedef struct _flags
{
  struct /* bitfield */
  {
    /* 0x0000 */ unsigned char Removable : 1; /* bit position: 0 */
    /* 0x0000 */ unsigned char GroupAssigned : 1; /* bit position: 1 */
    /* 0x0000 */ unsigned char GroupCommitted : 1; /* bit position: 2 */
    /* 0x0000 */ unsigned char GroupAssignmentFixed : 1; /* bit position: 3 */
    /* 0x0000 */ unsigned char ProcessorOnly : 1; /* bit position: 4 */
    /* 0x0000 */ unsigned char SmtSetsPresent : 1; /* bit position: 5 */
    /* 0x0000 */ unsigned char Fill : 2; /* bit position: 6 */
  }; /* bitfield */
} flags, *Pflags; /* size: 0x0001 */

typedef struct _KHETERO_PROCESSOR_SET
{
  /* 0x0000 */ unsigned __int64 IdealMask;
  /* 0x0008 */ unsigned __int64 PreferredMask;
  /* 0x0010 */ unsigned __int64 AvailableMask;
} KHETERO_PROCESSOR_SET, *PKHETERO_PROCESSOR_SET; /* size: 0x0018 */

typedef union _KQOS_GROUPING_SETS
{
  /* 0x0000 */ unsigned __int64 SingleCoreSet;
  /* 0x0008 */ unsigned __int64 SmtSet;
} KQOS_GROUPING_SETS, *PKQOS_GROUPING_SETS; /* size: 0x0010 */

typedef struct _KNODE
{
  /* 0x0000 */ unsigned __int64 IdleNonParkedCpuSet;
  /* 0x0008 */ unsigned __int64 IdleSmtSet;
  /* 0x0010 */ unsigned __int64 NonPairedSmtSet;
  /* 0x0018 */ unsigned __int64 IdleCpuSet;
  /* 0x0020 */ long Padding_178[8];
  /* 0x0040 */ unsigned __int64 DeepIdleSet;
  /* 0x0048 */ unsigned __int64 IdleConstrainedSet;
  /* 0x0050 */ unsigned __int64 NonParkedSet;
  /* 0x0058 */ unsigned __int64 SoftParkedSet;
  /* 0x0060 */ unsigned __int64 NonIsrTargetedSet;
  /* 0x0068 */ long ParkLock;
  /* 0x006c */ unsigned short ThreadSeed;
  /* 0x006e */ unsigned short ProcessSeed;
  /* 0x0070 */ long Padding_179[4];
  /* 0x0080 */ unsigned long SiblingMask;
  /* 0x0084 */ long Padding_180;
  union
  {
    /* 0x0088 */ struct _GROUP_AFFINITY Affinity;
    struct
    {
      /* 0x0088 */ unsigned char AffinityFill[10];
      /* 0x0092 */ unsigned short NodeNumber;
      /* 0x0094 */ unsigned short PrimaryNodeNumber;
      /* 0x0096 */ unsigned short Spare0;
    }; /* size: 0x0010 */
  }; /* size: 0x0010 */
  /* 0x0098 */ unsigned __int64 SharedReadyQueueMask;
  /* 0x00a0 */ unsigned __int64 StrideMask;
  /* 0x00a8 */ unsigned long ProximityId;
  /* 0x00ac */ unsigned long Lowest;
  /* 0x00b0 */ unsigned long Highest;
  /* 0x00b4 */ unsigned char MaximumProcessors;
  /* 0x00b5 */ struct _flags Flags;
  /* 0x00b6 */ unsigned char Spare10;
  /* 0x00b7 */ char Padding_181;
  /* 0x00b8 */ struct _KHETERO_PROCESSOR_SET HeteroSets[5];
  /* 0x0130 */ unsigned __int64 PpmConfiguredQosSets[5];
  /* 0x0158 */ unsigned __int64 Spare11;
  /* 0x0160 */ union _KQOS_GROUPING_SETS QosGroupingSets;
  /* 0x0170 */ unsigned __int64 QosPreemptibleSet;
  /* 0x0178 */ unsigned __int64 LLCLeaders;
} KNODE, *PKNODE; /* size: 0x0180 */

typedef union _ENERGY_STATE_DURATION
{
  union
  {
    /* 0x0000 */ unsigned __int64 Value;
    struct
    {
      /* 0x0000 */ unsigned long LastChangeTime;
      struct /* bitfield */
      {
        /* 0x0004 */ unsigned long Duration : 31; /* bit position: 0 */
        /* 0x0004 */ unsigned long IsInState : 1; /* bit position: 31 */
      }; /* bitfield */
    }; /* size: 0x0008 */
  }; /* size: 0x0008 */
} ENERGY_STATE_DURATION, *PENERGY_STATE_DURATION; /* size: 0x0008 */

typedef struct _TOKEN_AUDIT_POLICY
{
  /* 0x0000 */ unsigned char PerUserPolicy[30];
} TOKEN_AUDIT_POLICY, *PTOKEN_AUDIT_POLICY; /* size: 0x001e */

typedef struct _SEP_AUDIT_POLICY
{
  /* 0x0000 */ struct _TOKEN_AUDIT_POLICY AdtTokenPolicy;
  /* 0x001e */ unsigned char PolicySetStatus;
} SEP_AUDIT_POLICY, *PSEP_AUDIT_POLICY; /* size: 0x001f */

typedef struct _KDESCRIPTOR
{
  /* 0x0000 */ unsigned short Pad[3];
  /* 0x0006 */ unsigned short Limit;
  /* 0x0008 */ void* Base;
} KDESCRIPTOR, *PKDESCRIPTOR; /* size: 0x0010 */

typedef struct _KSPECIAL_REGISTERS
{
  /* 0x0000 */ unsigned __int64 Cr0;
  /* 0x0008 */ unsigned __int64 Cr2;
  /* 0x0010 */ unsigned __int64 Cr3;
  /* 0x0018 */ unsigned __int64 Cr4;
  /* 0x0020 */ unsigned __int64 KernelDr0;
  /* 0x0028 */ unsigned __int64 KernelDr1;
  /* 0x0030 */ unsigned __int64 KernelDr2;
  /* 0x0038 */ unsigned __int64 KernelDr3;
  /* 0x0040 */ unsigned __int64 KernelDr6;
  /* 0x0048 */ unsigned __int64 KernelDr7;
  /* 0x0050 */ struct _KDESCRIPTOR Gdtr;
  /* 0x0060 */ struct _KDESCRIPTOR Idtr;
  /* 0x0070 */ unsigned short Tr;
  /* 0x0072 */ unsigned short Ldtr;
  /* 0x0074 */ unsigned long MxCsr;
  /* 0x0078 */ unsigned __int64 DebugControl;
  /* 0x0080 */ unsigned __int64 LastBranchToRip;
  /* 0x0088 */ unsigned __int64 LastBranchFromRip;
  /* 0x0090 */ unsigned __int64 LastExceptionToRip;
  /* 0x0098 */ unsigned __int64 LastExceptionFromRip;
  /* 0x00a0 */ unsigned __int64 Cr8;
  /* 0x00a8 */ unsigned __int64 MsrGsBase;
  /* 0x00b0 */ unsigned __int64 MsrGsSwap;
  /* 0x00b8 */ unsigned __int64 MsrStar;
  /* 0x00c0 */ unsigned __int64 MsrLStar;
  /* 0x00c8 */ unsigned __int64 MsrCStar;
  /* 0x00d0 */ unsigned __int64 MsrSyscallMask;
  /* 0x00d8 */ unsigned __int64 Xcr0;
  /* 0x00e0 */ unsigned __int64 MsrFsBase;
  /* 0x00e8 */ unsigned __int64 SpecialPadding0;
} KSPECIAL_REGISTERS, *PKSPECIAL_REGISTERS; /* size: 0x00f0 */

typedef struct _HANDLE_TABLE_ENTRY_INFO
{
  /* 0x0000 */ unsigned long AuditMask;
  /* 0x0004 */ unsigned long MaxRelativeAccessMask;
} HANDLE_TABLE_ENTRY_INFO, *PHANDLE_TABLE_ENTRY_INFO; /* size: 0x0008 */

typedef struct _SK_CRASH_MODULE
{
  /* 0x0000 */ wchar_t ImageName[32];
  /* 0x0040 */ unsigned long SizeOfImage;
  /* 0x0044 */ unsigned long TimeDateStamp;
} SK_CRASH_MODULE, *PSK_CRASH_MODULE; /* size: 0x0048 */

typedef struct _SK_CRASH_STACK_FRAME
{
  union
  {
    struct
    {
      /* 0x0000 */ unsigned long ModuleId;
      /* 0x0004 */ unsigned long Rva;
    }; /* size: 0x0008 */
    /* 0x0000 */ unsigned __int64 Pc;
  }; /* size: 0x0008 */
} SK_CRASH_STACK_FRAME, *PSK_CRASH_STACK_FRAME; /* size: 0x0008 */

typedef struct _SK_CRASH_MINIDUMP
{
  /* 0x0000 */ unsigned long Size;
  /* 0x0004 */ unsigned long Version;
  /* 0x0008 */ unsigned long ModuleCount;
  /* 0x000c */ unsigned long FrameCount;
  /* 0x0010 */ struct _SK_CRASH_MODULE Modules[16];
  /* 0x0490 */ struct _SK_CRASH_STACK_FRAME StackFrames[366];
} SK_CRASH_MINIDUMP, *PSK_CRASH_MINIDUMP; /* size: 0x1000 */

typedef struct _EWOW64PROCESS
{
  /* 0x0000 */ void* Peb;
  /* 0x0008 */ unsigned short Machine;
  /* 0x000a */ char Padding_182[2];
  /* 0x000c */ enum _SYSTEM_DLL_TYPE NtdllType;
} EWOW64PROCESS, *PEWOW64PROCESS; /* size: 0x0010 */

typedef struct _XSAVE_AREA
{
  /* 0x0000 */ struct _XSAVE_FORMAT LegacyState;
  /* 0x0200 */ struct _XSAVE_AREA_HEADER Header;
} XSAVE_AREA, *PXSAVE_AREA; /* size: 0x0240 */

typedef struct _MI_SUB64K_FREE_RANGES
{
  /* 0x0000 */ struct _RTL_BITMAP_EX BitMap;
  /* 0x0010 */ struct _LIST_ENTRY ListEntry;
  /* 0x0020 */ struct _MMVAD_SHORT* Vad;
  /* 0x0028 */ unsigned long SetBits;
  /* 0x002c */ unsigned long FullSetBits;
  struct /* bitfield */
  {
    /* 0x0030 */ unsigned long SubListIndex : 2; /* bit position: 0 */
    /* 0x0030 */ unsigned long Hint : 30; /* bit position: 2 */
  }; /* bitfield */
  /* 0x0034 */ long __PADDING__[1];
} MI_SUB64K_FREE_RANGES, *PMI_SUB64K_FREE_RANGES; /* size: 0x0038 */

typedef struct _UMS_CONTROL_BLOCK
{
  /* 0x0000 */ struct _RTL_UMS_CONTEXT* UmsContext;
  /* 0x0008 */ struct _SINGLE_LIST_ENTRY* CompletionListEntry;
  /* 0x0010 */ struct _KEVENT* CompletionListEvent;
  /* 0x0018 */ unsigned long ServiceSequenceNumber;
  /* 0x001c */ long Padding_183;
  union
  {
    struct
    {
      /* 0x0020 */ struct _KQUEUE UmsQueue;
      /* 0x0060 */ struct _LIST_ENTRY QueueEntry;
      /* 0x0070 */ struct _RTL_UMS_CONTEXT* YieldingUmsContext;
      /* 0x0078 */ void* YieldingParam;
      /* 0x0080 */ void* UmsTeb;
    }; /* size: 0x0068 */
    struct
    {
      /* 0x0020 */ struct _KQUEUE* UmsAssociatedQueue;
      /* 0x0028 */ struct _LIST_ENTRY* UmsQueueListEntry;
      /* 0x0030 */ struct _KEVENT UmsWaitEvent;
      /* 0x0048 */ void* StagingArea;
      union
      {
        struct /* bitfield */
        {
          /* 0x0050 */ unsigned long UmsPrimaryDeliveredContext : 1; /* bit position: 0 */
          /* 0x0050 */ unsigned long UmsAssociatedQueueUsed : 1; /* bit position: 1 */
          /* 0x0050 */ unsigned long UmsThreadParked : 1; /* bit position: 2 */
        }; /* bitfield */
        /* 0x0050 */ unsigned long UmsFlags;
      }; /* size: 0x0004 */
      /* 0x0054 */ long __PADDING__[13];
    }; /* size: 0x0068 */
  }; /* size: 0x0068 */
} UMS_CONTROL_BLOCK, *PUMS_CONTROL_BLOCK; /* size: 0x0088 */

typedef union _XPF_MCE_FLAGS
{
  union
  {
    struct /* bitfield */
    {
      /* 0x0000 */ unsigned long MCG_CapabilityRW : 1; /* bit position: 0 */
      /* 0x0000 */ unsigned long MCG_GlobalControlRW : 1; /* bit position: 1 */
      /* 0x0000 */ unsigned long Reserved : 30; /* bit position: 2 */
    }; /* bitfield */
    /* 0x0000 */ unsigned long AsULONG;
  }; /* size: 0x0004 */
} XPF_MCE_FLAGS, *PXPF_MCE_FLAGS; /* size: 0x0004 */

typedef union _XPF_MC_BANK_FLAGS
{
  union
  {
    struct /* bitfield */
    {
      /* 0x0000 */ unsigned char ClearOnInitializationRW : 1; /* bit position: 0 */
      /* 0x0000 */ unsigned char ControlDataRW : 1; /* bit position: 1 */
      /* 0x0000 */ unsigned char Reserved : 6; /* bit position: 2 */
    }; /* bitfield */
    /* 0x0000 */ unsigned char AsUCHAR;
  }; /* size: 0x0001 */
} XPF_MC_BANK_FLAGS, *PXPF_MC_BANK_FLAGS; /* size: 0x0001 */

typedef struct _WHEA_XPF_MC_BANK_DESCRIPTOR
{
  /* 0x0000 */ unsigned char BankNumber;
  /* 0x0001 */ unsigned char ClearOnInitialization;
  /* 0x0002 */ unsigned char StatusDataFormat;
  /* 0x0003 */ union _XPF_MC_BANK_FLAGS Flags;
  /* 0x0004 */ unsigned long ControlMsr;
  /* 0x0008 */ unsigned long StatusMsr;
  /* 0x000c */ unsigned long AddressMsr;
  /* 0x0010 */ unsigned long MiscMsr;
  /* 0x0014 */ unsigned __int64 ControlData;
} WHEA_XPF_MC_BANK_DESCRIPTOR, *PWHEA_XPF_MC_BANK_DESCRIPTOR; /* size: 0x001c */

typedef struct _WHEA_XPF_MCE_DESCRIPTOR
{
  /* 0x0000 */ unsigned short Type;
  /* 0x0002 */ unsigned char Enabled;
  /* 0x0003 */ unsigned char NumberOfBanks;
  /* 0x0004 */ union _XPF_MCE_FLAGS Flags;
  /* 0x0008 */ unsigned __int64 MCG_Capability;
  /* 0x0010 */ unsigned __int64 MCG_GlobalControl;
  /* 0x0018 */ struct _WHEA_XPF_MC_BANK_DESCRIPTOR Banks[32];
} WHEA_XPF_MCE_DESCRIPTOR, *PWHEA_XPF_MCE_DESCRIPTOR; /* size: 0x0398 */

typedef struct _WHEA_XPF_CMC_DESCRIPTOR
{
  /* 0x0000 */ unsigned short Type;
  /* 0x0002 */ unsigned char Enabled;
  /* 0x0003 */ unsigned char NumberOfBanks;
  /* 0x0004 */ unsigned long Reserved;
  /* 0x0008 */ struct _WHEA_NOTIFICATION_DESCRIPTOR Notify;
  /* 0x0024 */ struct _WHEA_XPF_MC_BANK_DESCRIPTOR Banks[32];
} WHEA_XPF_CMC_DESCRIPTOR, *PWHEA_XPF_CMC_DESCRIPTOR; /* size: 0x03a4 */

typedef struct _WHEA_XPF_NMI_DESCRIPTOR
{
  /* 0x0000 */ unsigned short Type;
  /* 0x0002 */ unsigned char Enabled;
} WHEA_XPF_NMI_DESCRIPTOR, *PWHEA_XPF_NMI_DESCRIPTOR; /* size: 0x0003 */

typedef struct _WHEA_IPF_MCA_DESCRIPTOR
{
  /* 0x0000 */ unsigned short Type;
  /* 0x0002 */ unsigned char Enabled;
  /* 0x0003 */ unsigned char Reserved;
} WHEA_IPF_MCA_DESCRIPTOR, *PWHEA_IPF_MCA_DESCRIPTOR; /* size: 0x0004 */

typedef struct _WHEA_IPF_CMC_DESCRIPTOR
{
  /* 0x0000 */ unsigned short Type;
  /* 0x0002 */ unsigned char Enabled;
  /* 0x0003 */ unsigned char Reserved;
} WHEA_IPF_CMC_DESCRIPTOR, *PWHEA_IPF_CMC_DESCRIPTOR; /* size: 0x0004 */

typedef union _AER_ROOTPORT_DESCRIPTOR_FLAGS
{
  union
  {
    struct /* bitfield */
    {
      /* 0x0000 */ unsigned short UncorrectableErrorMaskRW : 1; /* bit position: 0 */
      /* 0x0000 */ unsigned short UncorrectableErrorSeverityRW : 1; /* bit position: 1 */
      /* 0x0000 */ unsigned short CorrectableErrorMaskRW : 1; /* bit position: 2 */
      /* 0x0000 */ unsigned short AdvancedCapsAndControlRW : 1; /* bit position: 3 */
      /* 0x0000 */ unsigned short RootErrorCommandRW : 1; /* bit position: 4 */
      /* 0x0000 */ unsigned short Reserved : 11; /* bit position: 5 */
    }; /* bitfield */
    /* 0x0000 */ unsigned short AsUSHORT;
  }; /* size: 0x0002 */
} AER_ROOTPORT_DESCRIPTOR_FLAGS, *PAER_ROOTPORT_DESCRIPTOR_FLAGS; /* size: 0x0002 */

typedef struct _WHEA_AER_ROOTPORT_DESCRIPTOR
{
  /* 0x0000 */ unsigned short Type;
  /* 0x0002 */ unsigned char Enabled;
  /* 0x0003 */ unsigned char Reserved;
  /* 0x0004 */ unsigned long BusNumber;
  /* 0x0008 */ struct _WHEA_PCI_SLOT_NUMBER Slot;
  /* 0x000c */ unsigned short DeviceControl;
  /* 0x000e */ union _AER_ROOTPORT_DESCRIPTOR_FLAGS Flags;
  /* 0x0010 */ unsigned long UncorrectableErrorMask;
  /* 0x0014 */ unsigned long UncorrectableErrorSeverity;
  /* 0x0018 */ unsigned long CorrectableErrorMask;
  /* 0x001c */ unsigned long AdvancedCapsAndControl;
  /* 0x0020 */ unsigned long RootErrorCommand;
} WHEA_AER_ROOTPORT_DESCRIPTOR, *PWHEA_AER_ROOTPORT_DESCRIPTOR; /* size: 0x0024 */

typedef struct _WHEA_GENERIC_ERROR_DESCRIPTOR
{
  /* 0x0000 */ unsigned short Type;
  /* 0x0002 */ unsigned char Reserved;
  /* 0x0003 */ unsigned char Enabled;
  /* 0x0004 */ unsigned long ErrStatusBlockLength;
  /* 0x0008 */ unsigned long RelatedErrorSourceId;
  /* 0x000c */ unsigned char ErrStatusAddressSpaceID;
  /* 0x000d */ unsigned char ErrStatusAddressBitWidth;
  /* 0x000e */ unsigned char ErrStatusAddressBitOffset;
  /* 0x000f */ unsigned char ErrStatusAddressAccessSize;
  /* 0x0010 */ union _LARGE_INTEGER ErrStatusAddress;
  /* 0x0018 */ struct _WHEA_NOTIFICATION_DESCRIPTOR Notify;
} WHEA_GENERIC_ERROR_DESCRIPTOR, *PWHEA_GENERIC_ERROR_DESCRIPTOR; /* size: 0x0034 */

typedef struct _WHEA_GENERIC_ERROR_DESCRIPTOR_V2
{
  /* 0x0000 */ unsigned short Type;
  /* 0x0002 */ unsigned char Reserved;
  /* 0x0003 */ unsigned char Enabled;
  /* 0x0004 */ unsigned long ErrStatusBlockLength;
  /* 0x0008 */ unsigned long RelatedErrorSourceId;
  /* 0x000c */ unsigned char ErrStatusAddressSpaceID;
  /* 0x000d */ unsigned char ErrStatusAddressBitWidth;
  /* 0x000e */ unsigned char ErrStatusAddressBitOffset;
  /* 0x000f */ unsigned char ErrStatusAddressAccessSize;
  /* 0x0010 */ union _LARGE_INTEGER ErrStatusAddress;
  /* 0x0018 */ struct _WHEA_NOTIFICATION_DESCRIPTOR Notify;
  /* 0x0034 */ unsigned char ReadAckAddressSpaceID;
  /* 0x0035 */ unsigned char ReadAckAddressBitWidth;
  /* 0x0036 */ unsigned char ReadAckAddressBitOffset;
  /* 0x0037 */ unsigned char ReadAckAddressAccessSize;
  /* 0x0038 */ union _LARGE_INTEGER ReadAckAddress;
  /* 0x0040 */ unsigned __int64 ReadAckPreserveMask;
  /* 0x0048 */ unsigned __int64 ReadAckWriteMask;
} WHEA_GENERIC_ERROR_DESCRIPTOR_V2, *PWHEA_GENERIC_ERROR_DESCRIPTOR_V2; /* size: 0x0050 */

typedef struct _WHEA_DEVICE_DRIVER_DESCRIPTOR
{
  /* 0x0000 */ unsigned short Type;
  /* 0x0002 */ unsigned char Enabled;
  /* 0x0003 */ unsigned char Reserved;
  /* 0x0004 */ struct _GUID SourceGuid;
  /* 0x0014 */ unsigned short LogTag;
  /* 0x0016 */ unsigned short Reserved2;
  /* 0x0018 */ unsigned long PacketLength;
  /* 0x001c */ unsigned long PacketCount;
  /* 0x0020 */ unsigned char* PacketBuffer;
  /* 0x0028 */ struct _WHEA_ERROR_SOURCE_CONFIGURATION_DD Config;
  /* 0x0040 */ struct _GUID CreatorId;
  /* 0x0050 */ struct _GUID PartitionId;
  /* 0x0060 */ unsigned long MaxSectionDataLength;
  /* 0x0064 */ unsigned long MaxSectionsPerRecord;
  /* 0x0068 */ unsigned char* PacketStateBuffer;
  /* 0x0070 */ long OpenHandles;
} WHEA_DEVICE_DRIVER_DESCRIPTOR, *PWHEA_DEVICE_DRIVER_DESCRIPTOR; /* size: 0x0074 */

typedef struct _RTL_UMS_CONTEXT
{
  /* 0x0000 */ struct _SINGLE_LIST_ENTRY Link;
  /* 0x0008 */ long Padding_184[2];
  /* 0x0010 */ struct _CONTEXT Context;
  /* 0x04e0 */ void* Teb;
  /* 0x04e8 */ void* UserContext;
  union
  {
    struct /* bitfield */
    {
      /* 0x04f0 */ volatile unsigned long ScheduledThread : 1; /* bit position: 0 */
      /* 0x04f0 */ volatile unsigned long Suspended : 1; /* bit position: 1 */
      /* 0x04f0 */ volatile unsigned long VolatileContext : 1; /* bit position: 2 */
      /* 0x04f0 */ volatile unsigned long Terminated : 1; /* bit position: 3 */
      /* 0x04f0 */ volatile unsigned long DebugActive : 1; /* bit position: 4 */
      /* 0x04f0 */ volatile unsigned long RunningOnSelfThread : 1; /* bit position: 5 */
      /* 0x04f0 */ volatile unsigned long DenyRunningOnSelfThread : 1; /* bit position: 6 */
    }; /* bitfield */
    /* 0x04f0 */ volatile long Flags;
  }; /* size: 0x0004 */
  /* 0x04f4 */ long Padding_185;
  union
  {
    struct /* bitfield */
    {
      /* 0x04f8 */ volatile unsigned __int64 KernelUpdateLock : 2; /* bit position: 0 */
      /* 0x04f8 */ volatile unsigned __int64 PrimaryClientID : 62; /* bit position: 2 */
    }; /* bitfield */
    /* 0x04f8 */ volatile unsigned __int64 ContextLock;
  }; /* size: 0x0008 */
  /* 0x0500 */ struct _RTL_UMS_CONTEXT* PrimaryUmsContext;
  /* 0x0508 */ unsigned long SwitchCount;
  /* 0x050c */ unsigned long KernelYieldCount;
  /* 0x0510 */ unsigned long MixedYieldCount;
  /* 0x0514 */ unsigned long YieldCount;
  /* 0x0518 */ long __PADDING__[2];
} RTL_UMS_CONTEXT, *PRTL_UMS_CONTEXT; /* size: 0x0520 */

typedef struct _KUMS_CONTEXT_HEADER
{
  /* 0x0000 */ unsigned __int64 P1Home;
  /* 0x0008 */ unsigned __int64 P2Home;
  /* 0x0010 */ unsigned __int64 P3Home;
  /* 0x0018 */ unsigned __int64 P4Home;
  /* 0x0020 */ void* StackTop;
  /* 0x0028 */ unsigned __int64 StackSize;
  /* 0x0030 */ unsigned __int64 RspOffset;
  /* 0x0038 */ unsigned __int64 Rip;
  /* 0x0040 */ struct _XSAVE_FORMAT* FltSave;
  union
  {
    struct /* bitfield */
    {
      /* 0x0048 */ unsigned __int64 Volatile : 1; /* bit position: 0 */
      /* 0x0048 */ unsigned __int64 Reserved : 63; /* bit position: 1 */
    }; /* bitfield */
    /* 0x0048 */ unsigned __int64 Flags;
  }; /* size: 0x0008 */
  /* 0x0050 */ struct _KTRAP_FRAME* TrapFrame;
  /* 0x0058 */ struct _KEXCEPTION_FRAME* ExceptionFrame;
  /* 0x0060 */ struct _KTHREAD* SourceThread;
  /* 0x0068 */ unsigned __int64 Return;
} KUMS_CONTEXT_HEADER, *PKUMS_CONTEXT_HEADER; /* size: 0x0070 */

struct _PO_PROCESS_ENERGY_CONTEXT;

typedef struct _KEXCEPTION_FRAME
{
  /* 0x0000 */ unsigned __int64 P1Home;
  /* 0x0008 */ unsigned __int64 P2Home;
  /* 0x0010 */ unsigned __int64 P3Home;
  /* 0x0018 */ unsigned __int64 P4Home;
  /* 0x0020 */ unsigned __int64 P5;
  /* 0x0028 */ unsigned __int64 Spare1;
  /* 0x0030 */ struct _M128A Xmm6;
  /* 0x0040 */ struct _M128A Xmm7;
  /* 0x0050 */ struct _M128A Xmm8;
  /* 0x0060 */ struct _M128A Xmm9;
  /* 0x0070 */ struct _M128A Xmm10;
  /* 0x0080 */ struct _M128A Xmm11;
  /* 0x0090 */ struct _M128A Xmm12;
  /* 0x00a0 */ struct _M128A Xmm13;
  /* 0x00b0 */ struct _M128A Xmm14;
  /* 0x00c0 */ struct _M128A Xmm15;
  /* 0x00d0 */ unsigned __int64 TrapFrame;
  /* 0x00d8 */ unsigned __int64 OutputBuffer;
  /* 0x00e0 */ unsigned __int64 OutputLength;
  /* 0x00e8 */ unsigned __int64 Spare2;
  /* 0x00f0 */ unsigned __int64 MxCsr;
  /* 0x00f8 */ unsigned __int64 Rbp;
  /* 0x0100 */ unsigned __int64 Rbx;
  /* 0x0108 */ unsigned __int64 Rdi;
  /* 0x0110 */ unsigned __int64 Rsi;
  /* 0x0118 */ unsigned __int64 R12;
  /* 0x0120 */ unsigned __int64 R13;
  /* 0x0128 */ unsigned __int64 R14;
  /* 0x0130 */ unsigned __int64 R15;
  /* 0x0138 */ unsigned __int64 Return;
} KEXCEPTION_FRAME, *PKEXCEPTION_FRAME; /* size: 0x0140 */

typedef struct _PROC_FEEDBACK
{
  /* 0x0000 */ unsigned __int64 Lock;
  /* 0x0008 */ unsigned __int64 CyclesLast;
  /* 0x0010 */ unsigned __int64 CyclesActive;
  /* 0x0018 */ struct _PROC_FEEDBACK_COUNTER* Counters[2];
  /* 0x0028 */ unsigned __int64 LastUpdateTime;
  /* 0x0030 */ unsigned __int64 UnscaledTime;
  /* 0x0038 */ volatile __int64 UnaccountedTime;
  /* 0x0040 */ unsigned __int64 ScaledTime[2];
  /* 0x0050 */ unsigned __int64 UnaccountedKernelTime;
  /* 0x0058 */ unsigned __int64 PerformanceScaledKernelTime;
  /* 0x0060 */ unsigned long UserTimeLast;
  /* 0x0064 */ unsigned long KernelTimeLast;
  /* 0x0068 */ unsigned __int64 IdleGenerationNumberLast;
  /* 0x0070 */ unsigned __int64 HvActiveTimeLast;
  /* 0x0078 */ unsigned __int64 StallCyclesLast;
  /* 0x0080 */ unsigned __int64 StallTime;
  /* 0x0088 */ unsigned char KernelTimesIndex;
  /* 0x0089 */ unsigned char CounterDiscardsIdleTime;
  /* 0x008a */ char __PADDING__[6];
} PROC_FEEDBACK, *PPROC_FEEDBACK; /* size: 0x0090 */

typedef struct _POOL_TRACKER_TABLE
{
  /* 0x0000 */ volatile long Key;
  /* 0x0004 */ long Padding_186;
  /* 0x0008 */ unsigned __int64 NonPagedBytes;
  /* 0x0010 */ unsigned __int64 NonPagedAllocs;
  /* 0x0018 */ unsigned __int64 NonPagedFrees;
  /* 0x0020 */ unsigned __int64 PagedBytes;
  /* 0x0028 */ unsigned __int64 PagedAllocs;
  /* 0x0030 */ unsigned __int64 PagedFrees;
} POOL_TRACKER_TABLE, *PPOOL_TRACKER_TABLE; /* size: 0x0038 */

struct _EPROCESS_QUOTA_BLOCK;

typedef union _KPRCBFLAG
{
  union
  {
    /* 0x0000 */ volatile long PrcbFlags;
    struct /* bitfield */
    {
      /* 0x0000 */ unsigned long BamQosLevel : 8; /* bit position: 0 */
      /* 0x0000 */ unsigned long PendingQosUpdate : 2; /* bit position: 8 */
      /* 0x0000 */ unsigned long CacheIsolationEnabled : 1; /* bit position: 10 */
      /* 0x0000 */ unsigned long TracepointActive : 1; /* bit position: 11 */
      /* 0x0000 */ unsigned long PrcbFlagsReserved : 20; /* bit position: 12 */
    }; /* bitfield */
  }; /* size: 0x0004 */
} KPRCBFLAG, *PKPRCBFLAG; /* size: 0x0004 */

typedef struct _KPROCESSOR_STATE
{
  /* 0x0000 */ struct _KSPECIAL_REGISTERS SpecialRegisters;
  /* 0x00f0 */ struct _CONTEXT ContextFrame;
} KPROCESSOR_STATE, *PKPROCESSOR_STATE; /* size: 0x05c0 */

typedef struct _PP_LOOKASIDE_LIST
{
  /* 0x0000 */ struct _GENERAL_LOOKASIDE* P;
  /* 0x0008 */ struct _GENERAL_LOOKASIDE* L;
} PP_LOOKASIDE_LIST, *PPP_LOOKASIDE_LIST; /* size: 0x0010 */

typedef struct _KSTATIC_AFFINITY_BLOCK
{
  union
  {
    /* 0x0000 */ struct _KAFFINITY_EX KeFlushTbAffinity;
    /* 0x0000 */ struct _KAFFINITY_EX KeFlushWbAffinity;
    /* 0x0000 */ struct _KAFFINITY_EX KeSyncContextAffinity;
  }; /* size: 0x00a8 */
  /* 0x00a8 */ struct _KAFFINITY_EX KeFlushTbDeepIdleAffinity;
  /* 0x0150 */ struct _KAFFINITY_EX KeIpiSendAffinity;
  /* 0x01f8 */ struct _KAFFINITY_EX KeIpiSendIpiSet;
} KSTATIC_AFFINITY_BLOCK, *PKSTATIC_AFFINITY_BLOCK; /* size: 0x02a0 */

typedef struct _KTIMER_TABLE_STATE
{
  /* 0x0000 */ unsigned __int64 LastTimerExpiration[2];
  /* 0x0010 */ unsigned long LastTimerHand[2];
} KTIMER_TABLE_STATE, *PKTIMER_TABLE_STATE; /* size: 0x0018 */

typedef struct _KTIMER_TABLE
{
  /* 0x0000 */ struct _KTIMER* TimerExpiry[64];
  /* 0x0200 */ struct _KTIMER_TABLE_ENTRY TimerEntries[256][2];
  /* 0x4200 */ struct _KTIMER_TABLE_STATE TableState;
} KTIMER_TABLE, *PKTIMER_TABLE; /* size: 0x4218 */

typedef struct _KGATE
{
  /* 0x0000 */ struct _DISPATCHER_HEADER Header;
} KGATE, *PKGATE; /* size: 0x0018 */

typedef struct _PROC_IDLE_POLICY
{
  /* 0x0000 */ unsigned char PromotePercent;
  /* 0x0001 */ unsigned char DemotePercent;
  /* 0x0002 */ unsigned char PromotePercentBase;
  /* 0x0003 */ unsigned char DemotePercentBase;
  /* 0x0004 */ unsigned char AllowScaling;
  /* 0x0005 */ unsigned char ForceLightIdle;
} PROC_IDLE_POLICY, *PPROC_IDLE_POLICY; /* size: 0x0006 */

typedef union _PPM_IDLE_SYNCHRONIZATION_STATE
{
  union
  {
    /* 0x0000 */ long AsLong;
    struct /* bitfield */
    {
      /* 0x0000 */ long RefCount : 24; /* bit position: 0 */
      /* 0x0000 */ unsigned long State : 8; /* bit position: 24 */
    }; /* bitfield */
  }; /* size: 0x0004 */
} PPM_IDLE_SYNCHRONIZATION_STATE, *PPPM_IDLE_SYNCHRONIZATION_STATE; /* size: 0x0004 */

typedef struct _PROC_IDLE_SNAP
{
  /* 0x0000 */ unsigned __int64 Time;
  /* 0x0008 */ unsigned __int64 Idle;
} PROC_IDLE_SNAP, *PPROC_IDLE_SNAP; /* size: 0x0010 */

typedef struct _PROC_PERF_CHECK_CONTEXT
{
  /* 0x0000 */ struct _PROC_PERF_DOMAIN* Domain;
  /* 0x0008 */ struct _PROC_PERF_CONSTRAINT* Constraint;
  /* 0x0010 */ struct _PROC_PERF_CHECK* PerfCheck;
  /* 0x0018 */ struct _PROC_PERF_LOAD* Load;
  /* 0x0020 */ struct _PROC_PERF_HISTORY* PerfHistory;
  /* 0x0028 */ unsigned long Utility;
  /* 0x002c */ unsigned long AffinitizedUtility;
  /* 0x0030 */ unsigned long MediaUtility;
  /* 0x0034 */ unsigned short LatestAffinitizedPercent;
  /* 0x0036 */ unsigned short AveragePerformancePercent;
  /* 0x0038 */ unsigned long RelativePerformance;
  /* 0x003c */ unsigned char NtProcessor;
  /* 0x003d */ char __PADDING__[3];
} PROC_PERF_CHECK_CONTEXT, *PPROC_PERF_CHECK_CONTEXT; /* size: 0x0040 */

typedef struct _PROCESSOR_POWER_STATE
{
  /* 0x0000 */ struct _PPM_IDLE_STATES* IdleStates;
  /* 0x0008 */ struct _PROC_IDLE_ACCOUNTING* IdleAccounting;
  /* 0x0010 */ unsigned __int64 IdleTimeLast;
  /* 0x0018 */ unsigned __int64 IdleTimeTotal;
  /* 0x0020 */ volatile unsigned __int64 IdleTimeEntry;
  /* 0x0028 */ unsigned __int64 IdleTimeExpiration;
  /* 0x0030 */ unsigned char NonInterruptibleTransition;
  /* 0x0031 */ unsigned char PepWokenTransition;
  /* 0x0032 */ unsigned char HvTargetState;
  /* 0x0033 */ unsigned char SoftParked;
  /* 0x0034 */ unsigned long TargetIdleState;
  /* 0x0038 */ struct _PROC_IDLE_POLICY IdlePolicy;
  /* 0x003e */ char Padding_187[2];
  /* 0x0040 */ volatile union _PPM_IDLE_SYNCHRONIZATION_STATE Synchronization;
  /* 0x0044 */ long Padding_188;
  /* 0x0048 */ struct _PROC_FEEDBACK PerfFeedback;
  /* 0x00d8 */ enum _PROC_HYPERVISOR_STATE Hypervisor;
  /* 0x00dc */ unsigned long LastSysTime;
  /* 0x00e0 */ unsigned __int64 WmiDispatchPtr;
  /* 0x00e8 */ long WmiInterfaceEnabled;
  /* 0x00ec */ long Padding_189;
  /* 0x00f0 */ struct _PPM_FFH_THROTTLE_STATE_INFO FFHThrottleStateInfo;
  /* 0x0110 */ struct _KDPC PerfActionDpc;
  /* 0x0150 */ volatile long PerfActionMask;
  /* 0x0154 */ long Padding_190;
  /* 0x0158 */ struct _PROC_IDLE_SNAP HvIdleCheck;
  /* 0x0168 */ struct _PROC_PERF_CHECK_CONTEXT CheckContext;
  /* 0x01a8 */ struct _PPM_CONCURRENCY_ACCOUNTING* Concurrency;
  /* 0x01b0 */ struct _PPM_CONCURRENCY_ACCOUNTING* ClassConcurrency;
  /* 0x01b8 */ unsigned char ArchitecturalEfficiencyClass;
  /* 0x01b9 */ unsigned char PerformanceSchedulingClass;
  /* 0x01ba */ unsigned char EfficiencySchedulingClass;
  /* 0x01bb */ unsigned char Unused;
  /* 0x01bc */ unsigned char Parked;
  /* 0x01bd */ unsigned char LongPriorQosPeriod;
  /* 0x01be */ char Padding_191[2];
  union
  {
    /* 0x01c0 */ unsigned __int64 SnapTimeLast;
    /* 0x01c0 */ unsigned __int64 EnergyConsumed;
  }; /* size: 0x0008 */
  /* 0x01c8 */ unsigned __int64 ActiveTime;
  /* 0x01d0 */ unsigned __int64 TotalTime;
  /* 0x01d8 */ struct _POP_FX_DEVICE* FxDevice;
  /* 0x01e0 */ unsigned __int64 LastQosTranstionTsc;
  /* 0x01e8 */ unsigned __int64 QosTransitionHysteresis;
  /* 0x01f0 */ enum _KHETERO_CPU_QOS RequestedQosClass;
  /* 0x01f4 */ enum _KHETERO_CPU_QOS ResolvedQosClass;
  /* 0x01f8 */ unsigned short QosEquivalencyMask;
  /* 0x01fa */ unsigned short HwFeedbackTableIndex;
  /* 0x01fc */ unsigned char HwFeedbackParkHint;
  /* 0x01fd */ unsigned char HwFeedbackPerformanceClass;
  /* 0x01fe */ unsigned char HwFeedbackEfficiencyClass;
  /* 0x01ff */ unsigned char HeteroCoreType;
} PROCESSOR_POWER_STATE, *PPROCESSOR_POWER_STATE; /* size: 0x0200 */

typedef struct _FILESYSTEM_DISK_COUNTERS
{
  /* 0x0000 */ unsigned __int64 FsBytesRead;
  /* 0x0008 */ unsigned __int64 FsBytesWritten;
} FILESYSTEM_DISK_COUNTERS, *PFILESYSTEM_DISK_COUNTERS; /* size: 0x0010 */

typedef struct _IOP_IRP_STACK_PROFILER
{
  /* 0x0000 */ unsigned long Profile[20];
  /* 0x0050 */ unsigned long TotalIrps;
} IOP_IRP_STACK_PROFILER, *PIOP_IRP_STACK_PROFILER; /* size: 0x0054 */

typedef struct _KSECURE_FAULT_INFORMATION
{
  /* 0x0000 */ unsigned __int64 FaultCode;
  /* 0x0008 */ unsigned __int64 FaultVa;
} KSECURE_FAULT_INFORMATION, *PKSECURE_FAULT_INFORMATION; /* size: 0x0010 */

typedef struct _MACHINE_FRAME
{
  /* 0x0000 */ unsigned __int64 Rip;
  /* 0x0008 */ unsigned short SegCs;
  /* 0x000a */ unsigned short Fill1[3];
  /* 0x0010 */ unsigned long EFlags;
  /* 0x0014 */ unsigned long Fill2;
  /* 0x0018 */ unsigned __int64 Rsp;
  /* 0x0020 */ unsigned short SegSs;
  /* 0x0022 */ unsigned short Fill3[3];
} MACHINE_FRAME, *PMACHINE_FRAME; /* size: 0x0028 */

typedef struct _MACHINE_CHECK_CONTEXT
{
  /* 0x0000 */ struct _MACHINE_FRAME MachineFrame;
  /* 0x0028 */ unsigned __int64 Rax;
  /* 0x0030 */ unsigned __int64 Rcx;
  /* 0x0038 */ unsigned __int64 Rdx;
  /* 0x0040 */ unsigned __int64 GsBase;
  /* 0x0048 */ unsigned __int64 Cr3;
} MACHINE_CHECK_CONTEXT, *PMACHINE_CHECK_CONTEXT; /* size: 0x0050 */

typedef struct _KREQUEST_PACKET
{
  /* 0x0000 */ void* CurrentPacket[3];
  /* 0x0018 */ void* WorkerRoutine /* function */;
} KREQUEST_PACKET, *PKREQUEST_PACKET; /* size: 0x0020 */

typedef struct _REQUEST_MAILBOX
{
  /* 0x0000 */ struct _REQUEST_MAILBOX* Next;
  /* 0x0008 */ unsigned __int64 RequestSummary;
  /* 0x0010 */ struct _KREQUEST_PACKET RequestPacket;
  /* 0x0030 */ volatile long* NodeTargetCountAddr;
  /* 0x0038 */ volatile long NodeTargetCount;
  /* 0x003c */ long __PADDING__[1];
} REQUEST_MAILBOX, *PREQUEST_MAILBOX; /* size: 0x0040 */

typedef struct _KPRCB
{
  /* 0x0000 */ unsigned long MxCsr;
  /* 0x0004 */ unsigned char LegacyNumber;
  /* 0x0005 */ unsigned char ReservedMustBeZero;
  /* 0x0006 */ unsigned char InterruptRequest;
  /* 0x0007 */ unsigned char IdleHalt;
  /* 0x0008 */ struct _KTHREAD* CurrentThread;
  /* 0x0010 */ struct _KTHREAD* NextThread;
  /* 0x0018 */ struct _KTHREAD* IdleThread;
  /* 0x0020 */ unsigned char NestingLevel;
  /* 0x0021 */ unsigned char ClockOwner;
  union
  {
    /* 0x0022 */ unsigned char PendingTickFlags;
    struct /* bitfield */
    {
      /* 0x0022 */ unsigned char PendingTick : 1; /* bit position: 0 */
      /* 0x0022 */ unsigned char PendingBackupTick : 1; /* bit position: 1 */
    }; /* bitfield */
  }; /* size: 0x0001 */
  /* 0x0023 */ unsigned char IdleState;
  /* 0x0024 */ unsigned long Number;
  /* 0x0028 */ unsigned __int64 RspBase;
  /* 0x0030 */ unsigned __int64 PrcbLock;
  /* 0x0038 */ char* PriorityState;
  /* 0x0040 */ char CpuType;
  /* 0x0041 */ char CpuID;
  union
  {
    /* 0x0042 */ unsigned short CpuStep;
    struct
    {
      /* 0x0042 */ unsigned char CpuStepping;
      /* 0x0043 */ unsigned char CpuModel;
    }; /* size: 0x0002 */
  }; /* size: 0x0002 */
  /* 0x0044 */ unsigned long MHz;
  /* 0x0048 */ unsigned __int64 HalReserved[8];
  /* 0x0088 */ unsigned short MinorVersion;
  /* 0x008a */ unsigned short MajorVersion;
  /* 0x008c */ unsigned char BuildType;
  /* 0x008d */ unsigned char CpuVendor;
  /* 0x008e */ unsigned char LegacyCoresPerPhysicalProcessor;
  /* 0x008f */ unsigned char LegacyLogicalProcessorsPerCore;
  /* 0x0090 */ unsigned __int64 TscFrequency;
  /* 0x0098 */ unsigned long CoresPerPhysicalProcessor;
  /* 0x009c */ unsigned long LogicalProcessorsPerCore;
  /* 0x00a0 */ unsigned __int64 PrcbPad04[4];
  /* 0x00c0 */ struct _KNODE* ParentNode;
  /* 0x00c8 */ unsigned __int64 GroupSetMember;
  /* 0x00d0 */ unsigned char Group;
  /* 0x00d1 */ unsigned char GroupIndex;
  /* 0x00d2 */ unsigned char PrcbPad05[2];
  /* 0x00d4 */ unsigned long InitialApicId;
  /* 0x00d8 */ unsigned long ScbOffset;
  /* 0x00dc */ unsigned long ApicMask;
  /* 0x00e0 */ void* AcpiReserved;
  /* 0x00e8 */ unsigned long CFlushSize;
  /* 0x00ec */ union _KPRCBFLAG PrcbFlags;
  /* 0x00f0 */ unsigned __int64 PrcbPad11[2];
  /* 0x0100 */ struct _KPROCESSOR_STATE ProcessorState;
  /* 0x06c0 */ struct _XSAVE_AREA_HEADER* ExtendedSupervisorState;
  /* 0x06c8 */ unsigned long ProcessorSignature;
  /* 0x06cc */ unsigned long ProcessorFlags;
  union
  {
    struct
    {
      /* 0x06d0 */ unsigned short BpbRetpolineExitSpecCtrl;
      /* 0x06d2 */ unsigned short BpbTrappedRetpolineExitSpecCtrl;
      union
      {
        /* 0x06d4 */ unsigned short BpbTrappedBpbState;
        struct
        {
          struct /* bitfield */
          {
            /* 0x06d4 */ unsigned short BpbTrappedCpuIdle : 1; /* bit position: 0 */
            /* 0x06d4 */ unsigned short BpbTrappedFlushRsbOnTrap : 1; /* bit position: 1 */
            /* 0x06d4 */ unsigned short BpbTrappedIbpbOnReturn : 1; /* bit position: 2 */
            /* 0x06d4 */ unsigned short BpbTrappedIbpbOnTrap : 1; /* bit position: 3 */
            /* 0x06d4 */ unsigned short BpbTrappedIbpbOnRetpolineExit : 1; /* bit position: 4 */
            /* 0x06d4 */ unsigned short BpbTrappedFlushRsbOnReturn : 1; /* bit position: 5 */
            /* 0x06d4 */ unsigned short BpbTrappedFlushRsbOnRetpolineExit : 1; /* bit position: 6 */
            /* 0x06d4 */ unsigned short BpbTrappedBpbStateReserved : 1; /* bit position: 7 */
            /* 0x06d4 */ unsigned short BpbTrappedBpbStateReserved2 : 8; /* bit position: 8 */
          }; /* bitfield */
          union
          {
            /* 0x06d6 */ unsigned char BpbRetpolineState;
            struct
            {
              struct /* bitfield */
              {
                /* 0x06d6 */ unsigned char BpbRunningNonRetpolineCode : 1; /* bit position: 0 */
                /* 0x06d6 */ unsigned char BpbIndirectCallsSafe : 1; /* bit position: 1 */
                /* 0x06d6 */ unsigned char BpbRetpolineEnabled : 1; /* bit position: 2 */
                /* 0x06d6 */ unsigned char BpbRetpolineStateReserved : 5; /* bit position: 3 */
              }; /* bitfield */
              /* 0x06d7 */ unsigned char PrcbPad12b;
            }; /* size: 0x0002 */
          }; /* size: 0x0002 */
        }; /* size: 0x0004 */
      }; /* size: 0x0004 */
    }; /* size: 0x0008 */
    /* 0x06d0 */ unsigned __int64 PrcbPad12a;
  }; /* size: 0x0008 */
  union
  {
    struct
    {
      /* 0x06d8 */ unsigned __int64 TrappedSecurityDomain;
      union
      {
        /* 0x06e0 */ unsigned short BpbState;
        struct
        {
          struct /* bitfield */
          {
            /* 0x06e0 */ unsigned short BpbCpuIdle : 1; /* bit position: 0 */
            /* 0x06e0 */ unsigned short BpbFlushRsbOnTrap : 1; /* bit position: 1 */
            /* 0x06e0 */ unsigned short BpbIbpbOnReturn : 1; /* bit position: 2 */
            /* 0x06e0 */ unsigned short BpbIbpbOnTrap : 1; /* bit position: 3 */
            /* 0x06e0 */ unsigned short BpbIbpbOnRetpolineExit : 1; /* bit position: 4 */
            /* 0x06e0 */ unsigned short BpbFlushRsbOnReturn : 1; /* bit position: 5 */
            /* 0x06e0 */ unsigned short BpbFlushRsbOnRetpolineExit : 1; /* bit position: 6 */
            /* 0x06e0 */ unsigned short BpbDivideOnReturn : 1; /* bit position: 7 */
            /* 0x06e0 */ unsigned short VerwOnNonKvaReturn : 1; /* bit position: 8 */
            /* 0x06e0 */ unsigned short FlushBhbOnTrap : 1; /* bit position: 9 */
            /* 0x06e0 */ unsigned short Spare : 6; /* bit position: 10 */
          }; /* bitfield */
          union
          {
            /* 0x06e2 */ unsigned char BpbFeatures;
            struct
            {
              struct /* bitfield */
              {
                /* 0x06e2 */ unsigned char BpbClearOnIdle : 1; /* bit position: 0 */
                /* 0x06e2 */ unsigned char BpbEnabled : 1; /* bit position: 1 */
                /* 0x06e2 */ unsigned char BpbSmep : 1; /* bit position: 2 */
                /* 0x06e2 */ unsigned char BpbKCet : 1; /* bit position: 3 */
                /* 0x06e2 */ unsigned char BhbFlushSequence : 2; /* bit position: 4 */
                /* 0x06e2 */ unsigned char BpbFeaturesReserved : 2; /* bit position: 6 */
              }; /* bitfield */
              /* 0x06e3 */ unsigned char PrcbPad12e[1];
              /* 0x06e4 */ unsigned short BpbCurrentSpecCtrl;
              /* 0x06e6 */ unsigned short BpbKernelSpecCtrl;
              /* 0x06e8 */ unsigned short BpbNmiSpecCtrl;
              /* 0x06ea */ unsigned short BpbUserSpecCtrl;
              /* 0x06ec */ volatile short PairRegister;
              /* 0x06ee */ unsigned char PrcbPad12d[2];
            }; /* size: 0x000e */
          }; /* size: 0x000e */
        }; /* size: 0x0010 */
      }; /* size: 0x0010 */
    }; /* size: 0x0018 */
    /* 0x06d8 */ unsigned __int64 PrcbPad12c[3];
  }; /* size: 0x0018 */
  /* 0x06f0 */ struct _KSPIN_LOCK_QUEUE LockQueue[17];
  /* 0x0800 */ struct _PP_LOOKASIDE_LIST PPLookasideList[16];
  /* 0x0900 */ struct _GENERAL_LOOKASIDE_POOL PPNxPagedLookasideList[32];
  /* 0x1500 */ struct _GENERAL_LOOKASIDE_POOL PPNPagedLookasideList[32];
  /* 0x2100 */ struct _GENERAL_LOOKASIDE_POOL PPPagedLookasideList[32];
  /* 0x2d00 */ unsigned __int64 MsrIa32TsxCtrl;
  /* 0x2d08 */ struct _SINGLE_LIST_ENTRY DeferredReadyListHead;
  /* 0x2d10 */ volatile long MmPageFaultCount;
  /* 0x2d14 */ volatile long MmCopyOnWriteCount;
  /* 0x2d18 */ volatile long MmTransitionCount;
  /* 0x2d1c */ volatile long MmDemandZeroCount;
  /* 0x2d20 */ volatile long MmPageReadCount;
  /* 0x2d24 */ volatile long MmPageReadIoCount;
  /* 0x2d28 */ volatile long MmDirtyPagesWriteCount;
  /* 0x2d2c */ volatile long MmDirtyWriteIoCount;
  /* 0x2d30 */ volatile long MmMappedPagesWriteCount;
  /* 0x2d34 */ volatile long MmMappedWriteIoCount;
  /* 0x2d38 */ unsigned long KeSystemCalls;
  /* 0x2d3c */ unsigned long KeContextSwitches;
  /* 0x2d40 */ unsigned long PrcbPad40;
  /* 0x2d44 */ unsigned long CcFastReadNoWait;
  /* 0x2d48 */ unsigned long CcFastReadWait;
  /* 0x2d4c */ unsigned long CcFastReadNotPossible;
  /* 0x2d50 */ unsigned long CcCopyReadNoWait;
  /* 0x2d54 */ unsigned long CcCopyReadWait;
  /* 0x2d58 */ unsigned long CcCopyReadNoWaitMiss;
  /* 0x2d5c */ volatile long IoReadOperationCount;
  /* 0x2d60 */ volatile long IoWriteOperationCount;
  /* 0x2d64 */ volatile long IoOtherOperationCount;
  /* 0x2d68 */ union _LARGE_INTEGER IoReadTransferCount;
  /* 0x2d70 */ union _LARGE_INTEGER IoWriteTransferCount;
  /* 0x2d78 */ union _LARGE_INTEGER IoOtherTransferCount;
  /* 0x2d80 */ volatile long PacketBarrier;
  /* 0x2d84 */ volatile long TargetCount;
  /* 0x2d88 */ volatile unsigned long IpiFrozen;
  /* 0x2d8c */ unsigned long PrcbPad30;
  /* 0x2d90 */ void* IsrDpcStats;
  /* 0x2d98 */ unsigned long DeviceInterrupts;
  /* 0x2d9c */ long LookasideIrpFloat;
  /* 0x2da0 */ unsigned long InterruptLastCount;
  /* 0x2da4 */ unsigned long InterruptRate;
  /* 0x2da8 */ unsigned __int64 PrcbPad31;
  /* 0x2db0 */ struct _KPRCB* PairPrcb;
  /* 0x2db8 */ struct _KSTATIC_AFFINITY_BLOCK StaticAffinity;
  /* 0x3058 */ unsigned __int64 PrcbPad35[5];
  /* 0x3080 */ union _SLIST_HEADER InterruptObjectPool;
  /* 0x3090 */ struct _RTL_HASH_TABLE* DpcRuntimeHistoryHashTable;
  /* 0x3098 */ struct _KDPC* DpcRuntimeHistoryHashTableCleanupDpc;
  /* 0x30a0 */ void* CurrentDpcRoutine /* function */;
  /* 0x30a8 */ unsigned __int64 CurrentDpcRuntimeHistoryCached;
  /* 0x30b0 */ unsigned __int64 CurrentDpcStartTime;
  /* 0x30b8 */ unsigned __int64 PrcbPad41[1];
  /* 0x30c0 */ struct _KDPC_DATA DpcData[2];
  /* 0x3110 */ void* DpcStack;
  /* 0x3118 */ long MaximumDpcQueueDepth;
  /* 0x311c */ unsigned long DpcRequestRate;
  /* 0x3120 */ unsigned long MinimumDpcRate;
  /* 0x3124 */ unsigned long DpcLastCount;
  /* 0x3128 */ unsigned char ThreadDpcEnable;
  /* 0x3129 */ volatile unsigned char QuantumEnd;
  /* 0x312a */ volatile unsigned char DpcRoutineActive;
  /* 0x312b */ volatile unsigned char IdleSchedule;
  union
  {
    /* 0x312c */ volatile long DpcRequestSummary;
    /* 0x312c */ short DpcRequestSlot[2];
    struct
    {
      /* 0x312c */ short NormalDpcState;
      /* 0x312e */ short ThreadDpcState;
    }; /* size: 0x0004 */
    struct /* bitfield */
    {
      /* 0x312c */ unsigned long DpcNormalProcessingActive : 1; /* bit position: 0 */
      /* 0x312c */ unsigned long DpcNormalProcessingRequested : 1; /* bit position: 1 */
      /* 0x312c */ unsigned long DpcNormalThreadSignal : 1; /* bit position: 2 */
      /* 0x312c */ unsigned long DpcNormalTimerExpiration : 1; /* bit position: 3 */
      /* 0x312c */ unsigned long DpcNormalDpcPresent : 1; /* bit position: 4 */
      /* 0x312c */ unsigned long DpcNormalLocalInterrupt : 1; /* bit position: 5 */
      /* 0x312c */ unsigned long DpcNormalSpare : 10; /* bit position: 6 */
      /* 0x312c */ unsigned long DpcThreadActive : 1; /* bit position: 16 */
      /* 0x312c */ unsigned long DpcThreadRequested : 1; /* bit position: 17 */
      /* 0x312c */ unsigned long DpcThreadSpare : 14; /* bit position: 18 */
    }; /* bitfield */
  }; /* size: 0x0004 */
  /* 0x3130 */ unsigned long PrcbPad93;
  /* 0x3134 */ unsigned long LastTick;
  /* 0x3138 */ unsigned long ClockInterrupts;
  /* 0x313c */ unsigned long ReadyScanTick;
  /* 0x3140 */ void* InterruptObject[256];
  /* 0x3940 */ struct _KTIMER_TABLE TimerTable;
  /* 0x7b58 */ unsigned long PrcbPad92[10];
  /* 0x7b80 */ struct _KGATE DpcGate;
  /* 0x7b98 */ void* PrcbPad52;
  /* 0x7ba0 */ struct _KDPC CallDpc;
  /* 0x7be0 */ long ClockKeepAlive;
  /* 0x7be4 */ unsigned char PrcbPad60[2];
  union
  {
    struct
    {
      /* 0x7be6 */ unsigned char NmiActive;
      /* 0x7be7 */ unsigned char MceActive;
    }; /* size: 0x0002 */
    /* 0x7be6 */ unsigned short CombinedNmiMceActive;
  }; /* size: 0x0002 */
  /* 0x7be8 */ long DpcWatchdogPeriod;
  /* 0x7bec */ long DpcWatchdogCount;
  /* 0x7bf0 */ volatile long KeSpinLockOrdering;
  /* 0x7bf4 */ unsigned long DpcWatchdogProfileCumulativeDpcThreshold;
  /* 0x7bf8 */ void* CachedPtes;
  /* 0x7c00 */ struct _LIST_ENTRY WaitListHead;
  /* 0x7c10 */ unsigned __int64 WaitLock;
  /* 0x7c18 */ unsigned long ReadySummary;
  /* 0x7c1c */ long AffinitizedSelectionMask;
  /* 0x7c20 */ unsigned long QueueIndex;
  /* 0x7c24 */ unsigned long PrcbPad75[2];
  /* 0x7c2c */ unsigned long DpcWatchdogSequenceNumber;
  /* 0x7c30 */ struct _KDPC TimerExpirationDpc;
  /* 0x7c70 */ struct _RTL_RB_TREE ScbQueue;
  /* 0x7c80 */ struct _LIST_ENTRY DispatcherReadyListHead[32];
  /* 0x7e80 */ unsigned long InterruptCount;
  /* 0x7e84 */ unsigned long KernelTime;
  /* 0x7e88 */ unsigned long UserTime;
  /* 0x7e8c */ unsigned long DpcTime;
  /* 0x7e90 */ unsigned long InterruptTime;
  /* 0x7e94 */ unsigned long AdjustDpcThreshold;
  /* 0x7e98 */ unsigned char DebuggerSavedIRQL;
  /* 0x7e99 */ unsigned char GroupSchedulingOverQuota;
  /* 0x7e9a */ volatile unsigned char DeepSleep;
  /* 0x7e9b */ unsigned char PrcbPad80;
  /* 0x7e9c */ unsigned long DpcTimeCount;
  /* 0x7ea0 */ unsigned long DpcTimeLimit;
  /* 0x7ea4 */ unsigned long PeriodicCount;
  /* 0x7ea8 */ unsigned long PeriodicBias;
  /* 0x7eac */ unsigned long AvailableTime;
  /* 0x7eb0 */ unsigned long KeExceptionDispatchCount;
  /* 0x7eb4 */ unsigned long ReadyThreadCount;
  /* 0x7eb8 */ unsigned __int64 ReadyQueueExpectedRunTime;
  /* 0x7ec0 */ unsigned __int64 StartCycles;
  /* 0x7ec8 */ unsigned __int64 TaggedCyclesStart;
  /* 0x7ed0 */ unsigned __int64 TaggedCycles[3];
  /* 0x7ee8 */ unsigned __int64 AffinitizedCycles;
  /* 0x7ef0 */ unsigned __int64 ImportantCycles;
  /* 0x7ef8 */ unsigned __int64 UnimportantCycles;
  /* 0x7f00 */ unsigned long DpcWatchdogProfileSingleDpcThreshold;
  /* 0x7f04 */ volatile long MmSpinLockOrdering;
  /* 0x7f08 */ void* volatile CachedStack;
  /* 0x7f10 */ unsigned long PageColor;
  /* 0x7f14 */ unsigned long NodeColor;
  /* 0x7f18 */ unsigned long NodeShiftedColor;
  /* 0x7f1c */ unsigned long SecondaryColorMask;
  /* 0x7f20 */ unsigned char PrcbPad81[6];
  /* 0x7f26 */ unsigned char ExceptionStackActive;
  /* 0x7f27 */ unsigned char TbFlushListActive;
  /* 0x7f28 */ void* ExceptionStack;
  /* 0x7f30 */ unsigned __int64 PrcbPad82[1];
  /* 0x7f38 */ unsigned __int64 CycleTime;
  /* 0x7f40 */ unsigned __int64 Cycles[2][4];
  /* 0x7f80 */ unsigned long CcFastMdlReadNoWait;
  /* 0x7f84 */ unsigned long CcFastMdlReadWait;
  /* 0x7f88 */ unsigned long CcFastMdlReadNotPossible;
  /* 0x7f8c */ unsigned long CcMapDataNoWait;
  /* 0x7f90 */ unsigned long CcMapDataWait;
  /* 0x7f94 */ unsigned long CcPinMappedDataCount;
  /* 0x7f98 */ unsigned long CcPinReadNoWait;
  /* 0x7f9c */ unsigned long CcPinReadWait;
  /* 0x7fa0 */ unsigned long CcMdlReadNoWait;
  /* 0x7fa4 */ unsigned long CcMdlReadWait;
  /* 0x7fa8 */ unsigned long CcLazyWriteHotSpots;
  /* 0x7fac */ unsigned long CcLazyWriteIos;
  /* 0x7fb0 */ unsigned long CcLazyWritePages;
  /* 0x7fb4 */ unsigned long CcDataFlushes;
  /* 0x7fb8 */ unsigned long CcDataPages;
  /* 0x7fbc */ unsigned long CcLostDelayedWrites;
  /* 0x7fc0 */ unsigned long CcFastReadResourceMiss;
  /* 0x7fc4 */ unsigned long CcCopyReadWaitMiss;
  /* 0x7fc8 */ unsigned long CcFastMdlReadResourceMiss;
  /* 0x7fcc */ unsigned long CcMapDataNoWaitMiss;
  /* 0x7fd0 */ unsigned long CcMapDataWaitMiss;
  /* 0x7fd4 */ unsigned long CcPinReadNoWaitMiss;
  /* 0x7fd8 */ unsigned long CcPinReadWaitMiss;
  /* 0x7fdc */ unsigned long CcMdlReadNoWaitMiss;
  /* 0x7fe0 */ unsigned long CcMdlReadWaitMiss;
  /* 0x7fe4 */ unsigned long CcReadAheadIos;
  /* 0x7fe8 */ volatile long MmCacheTransitionCount;
  /* 0x7fec */ volatile long MmCacheReadCount;
  /* 0x7ff0 */ volatile long MmCacheIoCount;
  /* 0x7ff4 */ unsigned long PrcbPad91;
  /* 0x7ff8 */ void* MmInternal;
  /* 0x8000 */ struct _PROCESSOR_POWER_STATE PowerState;
  /* 0x8200 */ void* HyperPte;
  /* 0x8208 */ struct _LIST_ENTRY ScbList;
  /* 0x8218 */ struct _KDPC ForceIdleDpc;
  /* 0x8258 */ struct _KDPC DpcWatchdogDpc;
  /* 0x8298 */ struct _KTIMER DpcWatchdogTimer;
  /* 0x82d8 */ struct _CACHE_DESCRIPTOR Cache[5];
  /* 0x8314 */ unsigned long CacheCount;
  /* 0x8318 */ volatile unsigned long CachedCommit;
  /* 0x831c */ volatile unsigned long CachedResidentAvailable;
  /* 0x8320 */ void* WheaInfo;
  /* 0x8328 */ void* EtwSupport;
  /* 0x8330 */ void* ExSaPageArray;
  /* 0x8338 */ unsigned long KeAlignmentFixupCount;
  /* 0x833c */ unsigned long PrcbPad95;
  /* 0x8340 */ union _SLIST_HEADER HypercallPageList;
  /* 0x8350 */ unsigned __int64* StatisticsPage;
  /* 0x8358 */ unsigned __int64 GenerationTarget;
  /* 0x8360 */ unsigned __int64 PrcbPad85[4];
  /* 0x8380 */ void* HypercallCachedPages;
  /* 0x8388 */ void* VirtualApicAssist;
  /* 0x8390 */ struct _KAFFINITY_EX PackageProcessorSet;
  /* 0x8438 */ unsigned long PackageId;
  /* 0x843c */ unsigned long PrcbPad86;
  /* 0x8440 */ unsigned __int64 SharedReadyQueueMask;
  /* 0x8448 */ struct _KSHARED_READY_QUEUE* SharedReadyQueue;
  /* 0x8450 */ unsigned long SharedQueueScanOwner;
  /* 0x8454 */ unsigned long ScanSiblingIndex;
  /* 0x8458 */ unsigned __int64 CoreProcessorSet;
  /* 0x8460 */ unsigned __int64 ScanSiblingMask;
  /* 0x8468 */ unsigned __int64 LLCMask;
  /* 0x8470 */ unsigned __int64 CacheProcessorMask[5];
  /* 0x8498 */ struct _PROCESSOR_PROFILE_CONTROL_AREA* ProcessorProfileControlArea;
  /* 0x84a0 */ void* ProfileEventIndexAddress;
  /* 0x84a8 */ void** DpcWatchdogProfile;
  /* 0x84b0 */ void** DpcWatchdogProfileCurrentEmptyCapture;
  /* 0x84b8 */ void* SchedulerAssist;
  /* 0x84c0 */ struct _SYNCH_COUNTERS SynchCounters;
  /* 0x8578 */ unsigned __int64 PrcbPad94;
  /* 0x8580 */ struct _FILESYSTEM_DISK_COUNTERS FsCounters;
  /* 0x8590 */ unsigned char VendorString[13];
  /* 0x859d */ unsigned char PrcbPad100[3];
  /* 0x85a0 */ unsigned __int64 FeatureBits;
  /* 0x85a8 */ union _LARGE_INTEGER UpdateSignature;
  /* 0x85b0 */ unsigned __int64 PteBitCache;
  /* 0x85b8 */ unsigned long PteBitOffset;
  /* 0x85bc */ unsigned long PrcbPad105;
  /* 0x85c0 */ struct _CONTEXT* Context;
  /* 0x85c8 */ unsigned long ContextFlagsInit;
  /* 0x85cc */ unsigned long PrcbPad115;
  /* 0x85d0 */ struct _XSAVE_AREA* ExtendedState;
  /* 0x85d8 */ void* IsrStack;
  /* 0x85e0 */ struct _KENTROPY_TIMING_STATE EntropyTimingState;
  /* 0x8730 */ unsigned __int64 PrcbPad110;
  struct
  {
    /* 0x8738 */ unsigned long UpdateCycle;
    union
    {
      /* 0x873c */ short PairLocal;
      struct
      {
        /* 0x873c */ unsigned char PairLocalLow;
        struct /* bitfield */
        {
          /* 0x873d */ unsigned char PairLocalForceStibp : 1; /* bit position: 0 */
          /* 0x873d */ unsigned char Reserved : 4; /* bit position: 1 */
          /* 0x873d */ unsigned char Frozen : 1; /* bit position: 5 */
          /* 0x873d */ unsigned char ForceUntrusted : 1; /* bit position: 6 */
          /* 0x873d */ unsigned char SynchIpi : 1; /* bit position: 7 */
        }; /* bitfield */
      }; /* size: 0x0002 */
    }; /* size: 0x0002 */
    union
    {
      /* 0x873e */ short PairRemote;
      struct
      {
        /* 0x873e */ unsigned char PairRemoteLow;
        /* 0x873f */ unsigned char Reserved2;
      }; /* size: 0x0002 */
    }; /* size: 0x0002 */
    /* 0x8740 */ unsigned char Trace[24];
    /* 0x8758 */ unsigned __int64 LocalDomain;
    /* 0x8760 */ unsigned __int64 RemoteDomain;
    /* 0x8768 */ struct _KTHREAD* Thread;
  } /* size: 0x0038 */ StibpPairingTrace;
  /* 0x8770 */ struct _SINGLE_LIST_ENTRY AbSelfIoBoostsList;
  /* 0x8778 */ struct _SINGLE_LIST_ENTRY AbPropagateBoostsList;
  /* 0x8780 */ struct _KDPC AbDpc;
  /* 0x87c0 */ struct _IOP_IRP_STACK_PROFILER IoIrpStackProfilerCurrent;
  /* 0x8814 */ struct _IOP_IRP_STACK_PROFILER IoIrpStackProfilerPrevious;
  /* 0x8868 */ struct _KSECURE_FAULT_INFORMATION SecureFault;
  /* 0x8878 */ unsigned __int64 PrcbPad120;
  /* 0x8880 */ struct _KSHARED_READY_QUEUE LocalSharedReadyQueue;
  /* 0x8af0 */ unsigned __int64 PrcbPad125[2];
  /* 0x8b00 */ unsigned long TimerExpirationTraceCount;
  /* 0x8b04 */ unsigned long PrcbPad127;
  /* 0x8b08 */ struct _KTIMER_EXPIRATION_TRACE TimerExpirationTrace[16];
  /* 0x8c08 */ unsigned __int64 PrcbPad128[7];
  /* 0x8c40 */ struct _REQUEST_MAILBOX* Mailbox;
  /* 0x8c48 */ unsigned __int64 PrcbPad130[7];
  /* 0x8c80 */ struct _MACHINE_CHECK_CONTEXT McheckContext[2];
  /* 0x8d20 */ unsigned __int64 PrcbPad134[4];
  /* 0x8d40 */ struct _KLOCK_QUEUE_HANDLE SelfmapLockHandle[4];
  /* 0x8da0 */ unsigned __int64 PrcbPad134a[4];
  /* 0x8dc0 */ unsigned char PrcbPad138[128];
  /* 0x8e40 */ unsigned char PrcbPad138a[64];
  /* 0x8e80 */ unsigned __int64 KernelDirectoryTableBase;
  /* 0x8e88 */ unsigned __int64 RspBaseShadow;
  /* 0x8e90 */ unsigned __int64 UserRspShadow;
  /* 0x8e98 */ unsigned long ShadowFlags;
  /* 0x8e9c */ unsigned long PrcbPad138b;
  /* 0x8ea0 */ unsigned __int64 PrcbPad138c;
  /* 0x8ea8 */ unsigned short PrcbPad138d;
  /* 0x8eaa */ unsigned short VerwSelector;
  /* 0x8eac */ unsigned long DbgMceNestingLevel;
  /* 0x8eb0 */ unsigned long DbgMceFlags;
  /* 0x8eb4 */ unsigned long PrcbPad139b;
  /* 0x8eb8 */ unsigned __int64 PrcbPad140[505];
  /* 0x9e80 */ unsigned __int64 PrcbPad140a[8];
  /* 0x9ec0 */ unsigned __int64 PrcbPad141[504];
  /* 0xae80 */ unsigned char PrcbPad141a[64];
  /* 0xaec0 */ struct _REQUEST_MAILBOX RequestMailbox[1];
} KPRCB, *PKPRCB; /* size: 0xaf00 */

typedef struct _ALPC_COMPLETION_PACKET_LOOKASIDE_ENTRY
{
  /* 0x0000 */ struct _SINGLE_LIST_ENTRY ListEntry;
  /* 0x0008 */ struct _IO_MINI_COMPLETION_PACKET_USER* Packet;
  /* 0x0010 */ struct _ALPC_COMPLETION_PACKET_LOOKASIDE* Lookaside;
} ALPC_COMPLETION_PACKET_LOOKASIDE_ENTRY, *PALPC_COMPLETION_PACKET_LOOKASIDE_ENTRY; /* size: 0x0018 */

typedef struct _RTL_HASH_TABLE
{
  /* 0x0000 */ unsigned long EntryCount;
  struct /* bitfield */
  {
    /* 0x0004 */ unsigned long MaskBitCount : 5; /* bit position: 0 */
    /* 0x0004 */ unsigned long BucketCount : 27; /* bit position: 5 */
  }; /* bitfield */
  /* 0x0008 */ struct _SINGLE_LIST_ENTRY* Buckets;
} RTL_HASH_TABLE, *PRTL_HASH_TABLE; /* size: 0x0010 */

typedef struct _PNP_REPLACE_PROCESSOR_LIST
{
  /* 0x0000 */ unsigned __int64* Affinity;
  /* 0x0008 */ unsigned long GroupCount;
  /* 0x000c */ unsigned long AllocatedCount;
  /* 0x0010 */ unsigned long Count;
  /* 0x0014 */ unsigned long ApicIds[1];
} PNP_REPLACE_PROCESSOR_LIST, *PPNP_REPLACE_PROCESSOR_LIST; /* size: 0x0018 */

typedef struct _HALP_EMERGENCY_LA_QUEUE_ENTRY
{
  /* 0x0000 */ struct _LIST_ENTRY ListEntry;
  /* 0x0010 */ enum _HALP_EMERGENCY_LA_QUEUE_TYPE EntryType;
  /* 0x0014 */ long __PADDING__[1];
} HALP_EMERGENCY_LA_QUEUE_ENTRY, *PHALP_EMERGENCY_LA_QUEUE_ENTRY; /* size: 0x0018 */

typedef struct _SCATTER_GATHER_ELEMENT
{
  /* 0x0000 */ union _LARGE_INTEGER Address;
  /* 0x0008 */ unsigned long Length;
  /* 0x000c */ long Padding_192;
  /* 0x0010 */ unsigned __int64 Reserved;
} SCATTER_GATHER_ELEMENT, *PSCATTER_GATHER_ELEMENT; /* size: 0x0018 */

typedef struct _SCATTER_GATHER_LIST
{
  /* 0x0000 */ unsigned long NumberOfElements;
  /* 0x0004 */ long Padding_193;
  /* 0x0008 */ unsigned __int64 Reserved;
  /* 0x0010 */ struct _SCATTER_GATHER_ELEMENT* Elements /* zero-length array */;
} SCATTER_GATHER_LIST, *PSCATTER_GATHER_LIST; /* size: 0x0010 */

typedef struct _ADAPTER_OBJECT
{
  /* 0x0000 */ struct _HALP_DMA_ADAPTER_OBJECT AdapterObject;
  /* 0x0098 */ struct _HALP_DMA_MASTER_ADAPTER_OBJECT* MasterAdapter;
  /* 0x00a0 */ struct _LIST_ENTRY WaitQueueEntry;
  union
  {
    /* 0x00b0 */ struct _KDEVICE_QUEUE ChannelWaitQueue;
    struct
    {
      /* 0x00b0 */ unsigned __int64 ResourceWaitLock;
      /* 0x00b8 */ struct _LIST_ENTRY ResourceWaitQueue;
      /* 0x00c8 */ struct _LIST_ENTRY ChannelResourceWaitQueue;
    }; /* size: 0x0028 */
  }; /* size: 0x0028 */
  /* 0x00d8 */ unsigned char ResourceQueueBusy;
  /* 0x00d9 */ char Padding_194[7];
  /* 0x00e0 */ unsigned long MapRegistersPerChannel;
  /* 0x00e4 */ long Padding_195;
  /* 0x00e8 */ void* MapRegisterBase;
  /* 0x00f0 */ unsigned long NumberOfMapRegisters;
  /* 0x00f4 */ unsigned long MaxTransferLength;
  /* 0x00f8 */ void* CrashDumpRegisterBase[2];
  /* 0x0108 */ unsigned long NumberOfCrashDumpRegisters[2];
  /* 0x0110 */ unsigned long CrashDumpRegisterRefCount[2];
  /* 0x0118 */ struct _LIST_ENTRY AdapterCrashDumpList;
  /* 0x0128 */ struct _MDL* MapRegisterMdl;
  /* 0x0130 */ unsigned __int64 MapRegisterMdlLock;
  /* 0x0138 */ struct _EX_PUSH_LOCK ExpiredLock;
  /* 0x0140 */ void* AllocationHandle;
  /* 0x0148 */ void* VirtualAddress;
  /* 0x0150 */ unsigned char IsAllocationMdlBased;
  /* 0x0151 */ unsigned char NoLocalPool;
  /* 0x0152 */ unsigned char ExpiredFlag;
  /* 0x0153 */ char Padding_196[5];
  /* 0x0158 */ struct _WAIT_CONTEXT_BLOCK* CurrentWcb;
  /* 0x0160 */ struct _DMA_TRANSFER_CONTEXT* CurrentTransferContext;
  /* 0x0168 */ struct _HALP_DMA_CONTROLLER* DmaController;
  /* 0x0170 */ unsigned long Controller;
  /* 0x0174 */ unsigned long ChannelNumber;
  /* 0x0178 */ unsigned long RequestLine;
  /* 0x017c */ unsigned long RequestedChannelCount;
  /* 0x0180 */ unsigned long AllocatedChannelCount;
  /* 0x0184 */ unsigned long AllocatedChannels[8];
  /* 0x01a4 */ long Padding_197;
  /* 0x01a8 */ void* ChannelAdapter;
  /* 0x01b0 */ unsigned char NeedsMapRegisters;
  /* 0x01b1 */ unsigned char MasterDevice;
  /* 0x01b2 */ unsigned char ScatterGather;
  /* 0x01b3 */ unsigned char AutoInitialize;
  /* 0x01b4 */ unsigned char IgnoreCount;
  /* 0x01b5 */ unsigned char CacheCoherent;
  /* 0x01b6 */ char Padding_198[2];
  union
  {
    struct
    {
      /* 0x01b8 */ unsigned char Dma32BitAddresses;
      /* 0x01b9 */ unsigned char Dma64BitAddresses;
    }; /* size: 0x0002 */
    /* 0x01b8 */ unsigned long DmaAddressWidth;
  }; /* size: 0x0004 */
  /* 0x01bc */ enum _DMA_WIDTH DmaPortWidth;
  /* 0x01c0 */ union _LARGE_INTEGER DeviceAddress;
  /* 0x01c8 */ struct _LIST_ENTRY AdapterList;
  /* 0x01d8 */ struct _WORK_QUEUE_ITEM WorkItem;
  /* 0x01f8 */ struct _HALP_DMA_DOMAIN_OBJECT* DomainPointer;
  /* 0x0200 */ enum _EXT_IOMMU_TRANSLATION_TYPE TranslationType;
  /* 0x0204 */ unsigned char AdapterInUse;
  /* 0x0205 */ char Padding_199[3];
  /* 0x0208 */ struct _DEVICE_OBJECT* DeviceObject;
  /* 0x0210 */ struct _EXT_IOMMU_DEVICE_ID* DeviceId;
  /* 0x0218 */ void* IommuDevice;
  /* 0x0220 */ struct _MDL* ScatterGatherMdl;
  /* 0x0228 */ unsigned __int64 LowMemoryLogicalAddressBase;
  /* 0x0230 */ unsigned __int64 LowMemoryLogicalAddressQueueLock;
  /* 0x0238 */ struct _LIST_ENTRY LowMemoryLogicalAddressQueue;
  /* 0x0248 */ unsigned char LowMemoryLogicalAddressQueueInUse;
  /* 0x0249 */ char Padding_200[7];
  /* 0x0250 */ struct _HALP_EMERGENCY_LA_QUEUE_ENTRY LowMemoryLogicalAddressQueueEntry;
  /* 0x0268 */ enum _HALP_DMA_ADAPTER_ALLOCATION_STATE AllocationState;
  /* 0x026c */ unsigned long ScatterGatherBufferLength;
  /* 0x0270 */ struct _SCATTER_GATHER_LIST ScatterGatherBuffer;
} ADAPTER_OBJECT, *PADAPTER_OBJECT; /* size: 0x0280 */

typedef struct _PORT_MESSAGE
{
  union
  {
    union
    {
      struct
      {
        /* 0x0000 */ short DataLength;
        /* 0x0002 */ short TotalLength;
      } /* size: 0x0004 */ s1;
      /* 0x0000 */ unsigned long Length;
    }; /* size: 0x0004 */
  } /* size: 0x0004 */ u1;
  union
  {
    union
    {
      struct
      {
        /* 0x0004 */ short Type;
        /* 0x0006 */ short DataInfoOffset;
      } /* size: 0x0004 */ s2;
      /* 0x0004 */ unsigned long ZeroInit;
    }; /* size: 0x0004 */
  } /* size: 0x0004 */ u2;
  union
  {
    /* 0x0008 */ struct _CLIENT_ID ClientId;
    /* 0x0008 */ double DoNotUseThisField;
  }; /* size: 0x0010 */
  /* 0x0018 */ unsigned long MessageId;
  /* 0x001c */ long Padding_201;
  union
  {
    /* 0x0020 */ unsigned __int64 ClientViewSize;
    struct
    {
      /* 0x0020 */ unsigned long CallbackId;
      /* 0x0024 */ long __PADDING__[1];
    }; /* size: 0x0008 */
  }; /* size: 0x0008 */
} PORT_MESSAGE, *PPORT_MESSAGE; /* size: 0x0028 */

typedef struct _HAL_DP_REPLACE_PARAMETERS
{
  /* 0x0000 */ unsigned long Flags;
  /* 0x0004 */ long Padding_202;
  /* 0x0008 */ struct _PNP_REPLACE_PROCESSOR_LIST* TargetProcessors;
  /* 0x0010 */ struct _PNP_REPLACE_PROCESSOR_LIST* SpareProcessors;
} HAL_DP_REPLACE_PARAMETERS, *PHAL_DP_REPLACE_PARAMETERS; /* size: 0x0018 */

typedef struct _PPM_SELECTION_MENU
{
  /* 0x0000 */ unsigned long Count;
  /* 0x0004 */ long Padding_203;
  /* 0x0008 */ struct _PPM_SELECTION_MENU_ENTRY* Entries;
} PPM_SELECTION_MENU, *PPPM_SELECTION_MENU; /* size: 0x0010 */

typedef struct _PPM_VETO_ACCOUNTING
{
  /* 0x0000 */ volatile long VetoPresent;
  /* 0x0004 */ long Padding_204;
  /* 0x0008 */ struct _LIST_ENTRY VetoListHead;
  /* 0x0018 */ unsigned char CsAccountingBlocks;
  /* 0x0019 */ unsigned char BlocksDrips;
  /* 0x001a */ char Padding_205[2];
  /* 0x001c */ unsigned long PreallocatedVetoCount;
  /* 0x0020 */ struct _PPM_VETO_ENTRY* PreallocatedVetoList;
} PPM_VETO_ACCOUNTING, *PPPM_VETO_ACCOUNTING; /* size: 0x0028 */

typedef struct _PPM_IDLE_STATE
{
  /* 0x0000 */ struct _KAFFINITY_EX DomainMembers;
  /* 0x00a8 */ struct _UNICODE_STRING Name;
  /* 0x00b8 */ unsigned long Latency;
  /* 0x00bc */ unsigned long BreakEvenDuration;
  /* 0x00c0 */ unsigned long Power;
  /* 0x00c4 */ unsigned long StateFlags;
  /* 0x00c8 */ struct _PPM_VETO_ACCOUNTING VetoAccounting;
  /* 0x00f0 */ unsigned char StateType;
  /* 0x00f1 */ unsigned char InterruptsEnabled;
  /* 0x00f2 */ unsigned char Interruptible;
  /* 0x00f3 */ unsigned char ContextRetained;
  /* 0x00f4 */ unsigned char CacheCoherent;
  /* 0x00f5 */ unsigned char WakesSpuriously;
  /* 0x00f6 */ unsigned char PlatformOnly;
  /* 0x00f7 */ unsigned char NoCState;
} PPM_IDLE_STATE, *PPPM_IDLE_STATE; /* size: 0x00f8 */

typedef struct _PPM_IDLE_STATES
{
  /* 0x0000 */ unsigned char InterfaceVersion;
  /* 0x0001 */ unsigned char IdleOverride;
  /* 0x0002 */ unsigned char EstimateIdleDuration;
  /* 0x0003 */ unsigned char ExitLatencyTraceEnabled;
  /* 0x0004 */ unsigned char NonInterruptibleTransition;
  /* 0x0005 */ unsigned char UnaccountedTransition;
  /* 0x0006 */ unsigned char IdleDurationLimited;
  /* 0x0007 */ unsigned char IdleCheckLimited;
  /* 0x0008 */ unsigned char StrictVetoBias;
  /* 0x0009 */ char Padding_206[3];
  /* 0x000c */ unsigned long ExitLatencyCountdown;
  /* 0x0010 */ unsigned long TargetState;
  /* 0x0014 */ unsigned long ActualState;
  /* 0x0018 */ unsigned long OldState;
  /* 0x001c */ unsigned long OverrideIndex;
  /* 0x0020 */ unsigned long ProcessorIdleCount;
  /* 0x0024 */ unsigned long Type;
  /* 0x0028 */ unsigned __int64 LevelId;
  /* 0x0030 */ unsigned short ReasonFlags;
  /* 0x0032 */ char Padding_207[6];
  /* 0x0038 */ volatile unsigned __int64 InitiateWakeStamp;
  /* 0x0040 */ long PreviousStatus;
  /* 0x0044 */ unsigned long PreviousCancelReason;
  /* 0x0048 */ struct _KAFFINITY_EX PrimaryProcessorMask;
  /* 0x00f0 */ struct _KAFFINITY_EX SecondaryProcessorMask;
  /* 0x0198 */ void* IdlePrepare /* function */;
  /* 0x01a0 */ void* IdlePreExecute /* function */;
  /* 0x01a8 */ void* IdleExecute /* function */;
  /* 0x01b0 */ void* IdlePreselect /* function */;
  /* 0x01b8 */ void* IdleTest /* function */;
  /* 0x01c0 */ void* IdleAvailabilityCheck /* function */;
  /* 0x01c8 */ void* IdleComplete /* function */;
  /* 0x01d0 */ void* IdleCancel /* function */;
  /* 0x01d8 */ void* IdleIsHalted /* function */;
  /* 0x01e0 */ void* IdleInitiateWake /* function */;
  /* 0x01e8 */ struct _PROCESSOR_IDLE_PREPARE_INFO PrepareInfo;
  /* 0x0240 */ struct _KAFFINITY_EX DeepIdleSnapshot;
  /* 0x02e8 */ struct _PERFINFO_PPM_STATE_SELECTION* Tracing;
  /* 0x02f0 */ struct _PERFINFO_PPM_STATE_SELECTION* CoordinatedTracing;
  /* 0x02f8 */ struct _PPM_SELECTION_MENU ProcessorMenu;
  /* 0x0308 */ struct _PPM_SELECTION_MENU CoordinatedMenu;
  /* 0x0318 */ struct _PPM_COORDINATED_SELECTION CoordinatedSelection;
  /* 0x0330 */ struct _PPM_IDLE_STATE State[1];
} PPM_IDLE_STATES, *PPPM_IDLE_STATES; /* size: 0x0428 */

typedef struct _WORK_QUEUE_ENTRY
{
  /* 0x0000 */ struct _LIST_ENTRY WorkQueueLinks;
  union
  {
    union
    {
      struct
      {
        /* 0x0010 */ struct _FILE_OBJECT* FileObject;
        /* 0x0018 */ void* DiskIoAttribution;
      } /* size: 0x0010 */ Read;
      struct
      {
        /* 0x0010 */ struct _SHARED_CACHE_MAP* SharedCacheMap;
      } /* size: 0x0008 */ Write;
      struct
      {
        /* 0x0010 */ struct _KEVENT* Event;
      } /* size: 0x0008 */ Event;
      struct
      {
        /* 0x0010 */ unsigned long Reason;
      } /* size: 0x0004 */ Notification;
      struct
      {
        /* 0x0010 */ struct _SHARED_CACHE_MAP* SharedCacheMap;
        /* 0x0018 */ struct _IO_STATUS_BLOCK* IoStatus;
        /* 0x0020 */ struct _KEVENT CallerWaitEvent;
        /* 0x0038 */ unsigned char IsLowPriWriteBehind;
        /* 0x0039 */ char __PADDING__[7];
      } /* size: 0x0030 */ LowPriWrite;
      struct
      {
        /* 0x0010 */ struct _SHARED_CACHE_MAP* SharedCacheMap;
        /* 0x0018 */ union _LARGE_INTEGER FileOffset;
        /* 0x0020 */ struct _FILE_OBJECT* FileObject;
        /* 0x0028 */ unsigned long Length;
        /* 0x001c */ long Padding_208;
        /* 0x0030 */ struct _SINGLE_LIST_ENTRY* PrefetchList;
        /* 0x0038 */ unsigned long PrefetchPagePriority;
        /* 0x002c */ long Padding_209;
        /* 0x0040 */ struct _MDL* Mdl;
        /* 0x0048 */ struct _IO_STATUS_BLOCK* IoStatusBlock;
        /* 0x0050 */ struct _CC_ASYNC_READ_CONTEXT* CallbackContext;
        /* 0x0058 */ struct _EPROCESS* OriginatingProcess;
        /* 0x0060 */ struct _ETHREAD* IoIssuerThread;
        /* 0x0068 */ void* DiskIoAttribution;
        /* 0x0070 */ char RequestorMode;
        /* 0x0061 */ char Padding_210[3];
        /* 0x0074 */ unsigned long NestingLevel;
      } /* size: 0x0068 */ AsyncRead;
    }; /* size: 0x0068 */
  } /* size: 0x0068 */ Parameters;
  /* 0x0078 */ unsigned char Function;
  /* 0x0079 */ char Padding_211[7];
  /* 0x0080 */ struct _CC_PARTITION* Partition;
} WORK_QUEUE_ENTRY, *PWORK_QUEUE_ENTRY; /* size: 0x0088 */

typedef struct _TOKEN_PRIVILEGES
{
  /* 0x0000 */ unsigned long PrivilegeCount;
  /* 0x0004 */ struct _LUID_AND_ATTRIBUTES Privileges[1];
} TOKEN_PRIVILEGES, *PTOKEN_PRIVILEGES; /* size: 0x0010 */

typedef struct _POP_FX_PROVIDER
{
  /* 0x0000 */ unsigned long Index;
  /* 0x0004 */ unsigned char Activating;
  /* 0x0005 */ char __PADDING__[3];
} POP_FX_PROVIDER, *PPOP_FX_PROVIDER; /* size: 0x0008 */

typedef struct _PROCESSOR_IDLE_DEPENDENCY
{
  /* 0x0000 */ unsigned long ProcessorIndex;
  /* 0x0004 */ unsigned char ExpectedState;
  /* 0x0005 */ unsigned char AllowDeeperStates;
  /* 0x0006 */ unsigned char LooseDependency;
  /* 0x0007 */ char __PADDING__[1];
} PROCESSOR_IDLE_DEPENDENCY, *PPROCESSOR_IDLE_DEPENDENCY; /* size: 0x0008 */

typedef struct _ETW_PMC_SUPPORT
{
  /* 0x0000 */ enum _KPROFILE_SOURCE* Source;
  /* 0x0008 */ volatile unsigned long HookIdCount;
  /* 0x000c */ unsigned short HookId[4];
  /* 0x0014 */ volatile unsigned long CountersCount;
  /* 0x0018 */ struct _HAL_PMC_COUNTERS* ProcessorCtrs[1];
} ETW_PMC_SUPPORT, *PETW_PMC_SUPPORT; /* size: 0x0020 */

typedef struct _KSYSTEM_TIME
{
  /* 0x0000 */ unsigned long LowPart;
  /* 0x0004 */ long High1Time;
  /* 0x0008 */ long High2Time;
} KSYSTEM_TIME, *PKSYSTEM_TIME; /* size: 0x000c */

typedef struct _SILO_USER_SHARED_DATA
{
  /* 0x0000 */ unsigned long ServiceSessionId;
  /* 0x0004 */ unsigned long ActiveConsoleId;
  /* 0x0008 */ __int64 ConsoleSessionForegroundProcessId;
  /* 0x0010 */ enum _NT_PRODUCT_TYPE NtProductType;
  /* 0x0014 */ unsigned long SuiteMask;
  /* 0x0018 */ unsigned long SharedUserSessionId;
  /* 0x001c */ unsigned char IsMultiSessionSku;
  /* 0x001d */ char Padding_212;
  /* 0x001e */ wchar_t NtSystemRoot[260];
  /* 0x0226 */ unsigned short UserModeGlobalLogger[16];
  /* 0x0246 */ char Padding_213[2];
  /* 0x0248 */ unsigned long TimeZoneId;
  /* 0x024c */ volatile long TimeZoneBiasStamp;
  /* 0x0250 */ struct _KSYSTEM_TIME TimeZoneBias;
  /* 0x025c */ long Padding_214;
  /* 0x0260 */ union _LARGE_INTEGER TimeZoneBiasEffectiveStart;
  /* 0x0268 */ union _LARGE_INTEGER TimeZoneBiasEffectiveEnd;
} SILO_USER_SHARED_DATA, *PSILO_USER_SHARED_DATA; /* size: 0x0270 */

typedef union _HEAP_VS_CHUNK_HEADER_SIZE
{
  union
  {
    struct
    {
      struct /* bitfield */
      {
        /* 0x0000 */ unsigned long MemoryCost : 16; /* bit position: 0 */
        /* 0x0000 */ unsigned long UnsafeSize : 16; /* bit position: 16 */
      }; /* bitfield */
      struct /* bitfield */
      {
        /* 0x0004 */ unsigned long UnsafePrevSize : 16; /* bit position: 0 */
        /* 0x0004 */ unsigned long Allocated : 8; /* bit position: 16 */
      }; /* bitfield */
    }; /* size: 0x0008 */
    /* 0x0000 */ unsigned short KeyUShort;
    /* 0x0000 */ unsigned long KeyULong;
    /* 0x0000 */ unsigned __int64 HeaderBits;
  }; /* size: 0x0008 */
} HEAP_VS_CHUNK_HEADER_SIZE, *PHEAP_VS_CHUNK_HEADER_SIZE; /* size: 0x0008 */

typedef struct _HEAP_VS_CHUNK_HEADER
{
  /* 0x0000 */ union _HEAP_VS_CHUNK_HEADER_SIZE Sizes;
  union
  {
    struct /* bitfield */
    {
      /* 0x0008 */ unsigned long EncodedSegmentPageOffset : 8; /* bit position: 0 */
      /* 0x0008 */ unsigned long UnusedBytes : 1; /* bit position: 8 */
      /* 0x0008 */ unsigned long SkipDuringWalk : 1; /* bit position: 9 */
      /* 0x0008 */ unsigned long Spare : 22; /* bit position: 10 */
    }; /* bitfield */
    /* 0x0008 */ unsigned long AllocatedChunkBits;
  }; /* size: 0x0004 */
  /* 0x000c */ long __PADDING__[1];
} HEAP_VS_CHUNK_HEADER, *PHEAP_VS_CHUNK_HEADER; /* size: 0x0010 */

typedef struct _HEAP_VS_CHUNK_FREE_HEADER
{
  union
  {
    /* 0x0000 */ struct _HEAP_VS_CHUNK_HEADER Header;
    struct
    {
      /* 0x0000 */ unsigned __int64 OverlapsHeader;
      /* 0x0008 */ struct _RTL_BALANCED_NODE Node;
    }; /* size: 0x0020 */
  }; /* size: 0x0020 */
} HEAP_VS_CHUNK_FREE_HEADER, *PHEAP_VS_CHUNK_FREE_HEADER; /* size: 0x0020 */

typedef struct _OB_EXTENDED_PARSE_PARAMETERS
{
  /* 0x0000 */ unsigned short Length;
  /* 0x0002 */ char Padding_215[2];
  /* 0x0004 */ unsigned long RestrictedAccessMask;
  /* 0x0008 */ struct _EJOB* Silo;
} OB_EXTENDED_PARSE_PARAMETERS, *POB_EXTENDED_PARSE_PARAMETERS; /* size: 0x0010 */

typedef struct _PERFINFO_PPM_STATE_SELECTION
{
  /* 0x0000 */ unsigned long SelectedState;
  /* 0x0004 */ unsigned long VetoedStates;
  /* 0x0008 */ unsigned long VetoReason[1];
} PERFINFO_PPM_STATE_SELECTION, *PPERFINFO_PPM_STATE_SELECTION; /* size: 0x000c */

typedef struct _PPM_SELECTION_MENU_ENTRY
{
  /* 0x0000 */ unsigned char StrictDependency;
  /* 0x0001 */ unsigned char InitiatingState;
  /* 0x0002 */ unsigned char DependentState;
  /* 0x0003 */ char Padding_216;
  /* 0x0004 */ unsigned long StateIndex;
  /* 0x0008 */ unsigned long Dependencies;
  /* 0x000c */ long Padding_217;
  /* 0x0010 */ struct _PPM_SELECTION_DEPENDENCY* DependencyList;
} PPM_SELECTION_MENU_ENTRY, *PPPM_SELECTION_MENU_ENTRY; /* size: 0x0018 */

typedef struct _PPM_SELECTION_DEPENDENCY
{
  /* 0x0000 */ unsigned long Processor;
  /* 0x0004 */ long Padding_218;
  /* 0x0008 */ struct _PPM_SELECTION_MENU Menu;
} PPM_SELECTION_DEPENDENCY, *PPPM_SELECTION_DEPENDENCY; /* size: 0x0018 */

typedef struct _OBJECT_ATTRIBUTES
{
  /* 0x0000 */ unsigned long Length;
  /* 0x0004 */ long Padding_219;
  /* 0x0008 */ void* RootDirectory;
  /* 0x0010 */ struct _UNICODE_STRING* ObjectName;
  /* 0x0018 */ unsigned long Attributes;
  /* 0x001c */ long Padding_220;
  /* 0x0020 */ void* SecurityDescriptor;
  /* 0x0028 */ void* SecurityQualityOfService;
} OBJECT_ATTRIBUTES, *POBJECT_ATTRIBUTES; /* size: 0x0030 */

typedef struct _PPM_VETO_ENTRY
{
  /* 0x0000 */ struct _LIST_ENTRY Link;
  /* 0x0010 */ unsigned long VetoReason;
  /* 0x0014 */ unsigned long ReferenceCount;
  /* 0x0018 */ unsigned __int64 HitCount;
  /* 0x0020 */ unsigned __int64 LastActivationTime;
  /* 0x0028 */ unsigned __int64 TotalActiveTime;
  /* 0x0030 */ unsigned __int64 CsActivationTime;
  /* 0x0038 */ unsigned __int64 CsActiveTime;
} PPM_VETO_ENTRY, *PPPM_VETO_ENTRY; /* size: 0x0040 */

typedef struct _TOKEN_SOURCE
{
  /* 0x0000 */ char SourceName[8];
  /* 0x0008 */ struct _LUID SourceIdentifier;
} TOKEN_SOURCE, *PTOKEN_SOURCE; /* size: 0x0010 */

typedef struct _TOKEN_CONTROL
{
  /* 0x0000 */ struct _LUID TokenId;
  /* 0x0008 */ struct _LUID AuthenticationId;
  /* 0x0010 */ struct _LUID ModifiedId;
  /* 0x0018 */ struct _TOKEN_SOURCE TokenSource;
} TOKEN_CONTROL, *PTOKEN_CONTROL; /* size: 0x0028 */

typedef struct _SECURITY_CLIENT_CONTEXT
{
  /* 0x0000 */ struct _SECURITY_QUALITY_OF_SERVICE SecurityQos;
  /* 0x000c */ long Padding_221;
  /* 0x0010 */ void* ClientToken;
  /* 0x0018 */ unsigned char DirectlyAccessClientToken;
  /* 0x0019 */ unsigned char DirectAccessEffectiveOnly;
  /* 0x001a */ unsigned char ServerIsRemote;
  /* 0x001b */ char Padding_222;
  /* 0x001c */ struct _TOKEN_CONTROL ClientTokenControl;
  /* 0x0044 */ long __PADDING__[1];
} SECURITY_CLIENT_CONTEXT, *PSECURITY_CLIENT_CONTEXT; /* size: 0x0048 */

typedef struct _PROC_IDLE_ACCOUNTING
{
  /* 0x0000 */ unsigned long StateCount;
  /* 0x0004 */ unsigned long TotalTransitions;
  /* 0x0008 */ unsigned long ResetCount;
  /* 0x000c */ unsigned long AbortCount;
  /* 0x0010 */ unsigned __int64 StartTime;
  /* 0x0018 */ unsigned __int64 PriorIdleTime;
  /* 0x0020 */ enum PPM_IDLE_BUCKET_TIME_TYPE TimeUnit;
  /* 0x0024 */ long Padding_223;
  /* 0x0028 */ struct _PROC_IDLE_STATE_ACCOUNTING State[1];
} PROC_IDLE_ACCOUNTING, *PPROC_IDLE_ACCOUNTING; /* size: 0x0410 */

struct _EXP_LICENSE_STATE;

typedef struct _IO_ADAPTER_CRYPTO_PARAMETERS
{
  /* 0x0000 */ unsigned __int64 Tweak;
  /* 0x0008 */ struct _IO_ADAPTER_CRYPTO_KEY_DESCRIPTOR* KeyDescriptor;
} IO_ADAPTER_CRYPTO_PARAMETERS, *PIO_ADAPTER_CRYPTO_PARAMETERS; /* size: 0x0010 */

typedef struct _COPY_INFORMATION
{
  /* 0x0000 */ struct _FILE_OBJECT* SourceFileObject;
  /* 0x0008 */ __int64 SourceFileOffset;
} COPY_INFORMATION, *PCOPY_INFORMATION; /* size: 0x0010 */

typedef struct _IOP_IRP_EXTENSION
{
  union
  {
    /* 0x0000 */ unsigned short ExtensionFlags;
    struct /* bitfield */
    {
      /* 0x0000 */ unsigned short Allocated : 1; /* bit position: 0 */
      /* 0x0000 */ unsigned short PropagateId : 1; /* bit position: 1 */
      /* 0x0000 */ unsigned short SpareBits : 14; /* bit position: 2 */
    }; /* bitfield */
  }; /* size: 0x0002 */
  /* 0x0002 */ unsigned short TypesAllocated;
  /* 0x0004 */ unsigned char GenericExtension[4];
  /* 0x0008 */ void* VerifierContext;
  /* 0x0010 */ unsigned __int64 DiskIoAttributionHandle;
  /* 0x0018 */ struct _GUID ActivityId;
  union
  {
    /* 0x0028 */ union _LARGE_INTEGER Timestamp;
    /* 0x0028 */ unsigned long ZeroingOffset;
    struct
    {
      /* 0x0028 */ struct _IO_IRP_EXT_TRACK_OFFSET_HEADER* FsTrackOffsetBlob;
      /* 0x0030 */ __int64 FsTrackedOffset;
    }; /* size: 0x0010 */
    /* 0x0028 */ struct _IO_ADAPTER_CRYPTO_PARAMETERS AdapterCryptoParameters;
  }; /* size: 0x0010 */
  union
  {
    union
    {
      /* 0x0038 */ unsigned __int64 Value;
      struct /* bitfield */
      {
        /* 0x0038 */ unsigned __int64 UserFlags : 32; /* bit position: 0 */
        /* 0x0038 */ unsigned __int64 SystemFlags : 16; /* bit position: 32 */
        /* 0x0038 */ unsigned __int64 UserFlagsId : 16; /* bit position: 48 */
      }; /* bitfield */
    }; /* size: 0x0008 */
  } /* size: 0x0008 */ DriverFlags;
  /* 0x0040 */ struct _COPY_INFORMATION CopyInformation;
} IOP_IRP_EXTENSION, *PIOP_IRP_EXTENSION; /* size: 0x0050 */

typedef struct _PROC_FEEDBACK_COUNTER
{
  union
  {
    /* 0x0000 */ void* InstantaneousRead /* function */;
    /* 0x0000 */ void* DifferentialRead /* function */;
  }; /* size: 0x0008 */
  /* 0x0008 */ unsigned __int64 LastActualCount;
  /* 0x0010 */ unsigned __int64 LastReferenceCount;
  /* 0x0018 */ unsigned long CachedValue;
  /* 0x001c */ long Padding_224;
  /* 0x0020 */ unsigned char Affinitized;
  /* 0x0021 */ unsigned char Differential;
  /* 0x0022 */ unsigned char DiscardIdleTime;
  /* 0x0023 */ unsigned char Scaling;
  /* 0x0024 */ long Padding_225;
  /* 0x0028 */ unsigned __int64 Context;
} PROC_FEEDBACK_COUNTER, *PPROC_FEEDBACK_COUNTER; /* size: 0x0030 */

typedef struct _HEAP_LFH_SUBSEGMENT_OWNER
{
  struct /* bitfield */
  {
    /* 0x0000 */ unsigned char IsBucket : 1; /* bit position: 0 */
    /* 0x0000 */ unsigned char Spare0 : 7; /* bit position: 1 */
  }; /* bitfield */
  /* 0x0001 */ unsigned char BucketIndex;
  union
  {
    /* 0x0002 */ unsigned char SlotCount;
    /* 0x0002 */ unsigned char SlotIndex;
  }; /* size: 0x0001 */
  /* 0x0003 */ unsigned char Spare1;
  /* 0x0004 */ long Padding_226;
  /* 0x0008 */ unsigned __int64 AvailableSubsegmentCount;
  /* 0x0010 */ unsigned __int64 Lock;
  /* 0x0018 */ struct _LIST_ENTRY AvailableSubsegmentList;
  /* 0x0028 */ struct _LIST_ENTRY FullSubsegmentList;
} HEAP_LFH_SUBSEGMENT_OWNER, *PHEAP_LFH_SUBSEGMENT_OWNER; /* size: 0x0038 */

typedef struct _HEAP_LFH_AFFINITY_SLOT
{
  /* 0x0000 */ struct _HEAP_LFH_SUBSEGMENT_OWNER State;
  /* 0x0038 */ struct _HEAP_LFH_FAST_REF ActiveSubsegment;
} HEAP_LFH_AFFINITY_SLOT, *PHEAP_LFH_AFFINITY_SLOT; /* size: 0x0040 */

typedef struct _PROC_PERF_CONSTRAINT
{
  /* 0x0000 */ struct _PROC_PERF_CHECK_CONTEXT* CheckContext;
  /* 0x0008 */ unsigned __int64 PerfContext;
  /* 0x0010 */ enum _PROCESSOR_PRESENCE Presence;
  /* 0x0014 */ unsigned long ProcessorId;
  /* 0x0018 */ unsigned long PlatformCap;
  /* 0x001c */ unsigned long ThermalCap;
  /* 0x0020 */ unsigned long LimitReasons;
  /* 0x0024 */ long Padding_227;
  /* 0x0028 */ unsigned __int64 PlatformCapStartTime;
  /* 0x0030 */ unsigned long ProcCap;
  /* 0x0034 */ unsigned long ProcFloor;
  /* 0x0038 */ unsigned long TargetPercent;
  /* 0x003c */ unsigned char EngageResponsivenessOverrides;
  /* 0x003d */ unsigned char ResponsivenessChangeCount;
  /* 0x003e */ char Padding_228[2];
  /* 0x0040 */ struct _PERF_CONTROL_STATE_SELECTION Selection;
  /* 0x0068 */ unsigned long DomainSelectionGeneration;
  /* 0x006c */ unsigned long PreviousFrequency;
  /* 0x0070 */ unsigned long PreviousPercent;
  /* 0x0074 */ unsigned long LatestFrequencyPercent;
  /* 0x0078 */ unsigned long LatestPerformancePercent;
  /* 0x007c */ unsigned char Force;
  /* 0x007d */ unsigned char UseQosUpdateLock;
  /* 0x007e */ char Padding_229[2];
  /* 0x0080 */ unsigned __int64 QosUpdateLock;
} PROC_PERF_CONSTRAINT, *PPROC_PERF_CONSTRAINT; /* size: 0x0088 */

typedef struct _NUMA_MEMORY_RANGE
{
  /* 0x0000 */ unsigned long ProximityId;
  /* 0x0004 */ long Padding_230;
  /* 0x0008 */ unsigned __int64 BasePage;
  /* 0x0010 */ unsigned __int64 EndPage;
} NUMA_MEMORY_RANGE, *PNUMA_MEMORY_RANGE; /* size: 0x0018 */

typedef struct _LOADER_RESET_REASON
{
  /* 0x0000 */ unsigned char Supplied;
  /* 0x0001 */ char Padding_231[7];
  union
  {
    union
    {
      struct
      {
        /* 0x0008 */ unsigned char Pch;
        /* 0x0009 */ unsigned char EmbeddedController;
        /* 0x000a */ unsigned char Reserved[6];
      } /* size: 0x0008 */ Component;
      /* 0x0008 */ unsigned __int64 AsULONG64;
      /* 0x0008 */ unsigned char AsBytes[8];
    }; /* size: 0x0008 */
  } /* size: 0x0008 */ Basic;
  /* 0x0010 */ unsigned long AdditionalInfo[8];
} LOADER_RESET_REASON, *PLOADER_RESET_REASON; /* size: 0x0030 */

typedef struct _SEP_SID_VALUES_BLOCK
{
  /* 0x0000 */ unsigned long BlockLength;
  /* 0x0004 */ long Padding_232;
  /* 0x0008 */ __int64 ReferenceCount;
  /* 0x0010 */ unsigned long SidCount;
  /* 0x0014 */ long Padding_233;
  /* 0x0018 */ unsigned __int64 SidValuesStart;
} SEP_SID_VALUES_BLOCK, *PSEP_SID_VALUES_BLOCK; /* size: 0x0020 */

typedef struct _ETW_LAST_ENABLE_INFO
{
  /* 0x0000 */ union _LARGE_INTEGER EnableFlags;
  /* 0x0008 */ unsigned short LoggerId;
  /* 0x000a */ unsigned char Level;
  struct /* bitfield */
  {
    /* 0x000b */ unsigned char Enabled : 1; /* bit position: 0 */
    /* 0x000b */ unsigned char InternalFlag : 7; /* bit position: 1 */
  }; /* bitfield */
  /* 0x000c */ long __PADDING__[1];
} ETW_LAST_ENABLE_INFO, *PETW_LAST_ENABLE_INFO; /* size: 0x0010 */

struct _JOB_ACCESS_STATE;

typedef struct _HEAP_SEGMENT
{
  /* 0x0000 */ struct _HEAP_ENTRY Entry;
  /* 0x0010 */ unsigned long SegmentSignature;
  /* 0x0014 */ unsigned long SegmentFlags;
  /* 0x0018 */ struct _LIST_ENTRY SegmentListEntry;
  /* 0x0028 */ struct _HEAP* Heap;
  /* 0x0030 */ void* BaseAddress;
  /* 0x0038 */ unsigned long NumberOfPages;
  /* 0x003c */ long Padding_234;
  /* 0x0040 */ struct _HEAP_ENTRY* FirstEntry;
  /* 0x0048 */ struct _HEAP_ENTRY* LastValidEntry;
  /* 0x0050 */ unsigned long NumberOfUnCommittedPages;
  /* 0x0054 */ unsigned long NumberOfUnCommittedRanges;
  /* 0x0058 */ unsigned short SegmentAllocatorBackTraceIndex;
  /* 0x005a */ unsigned short Reserved;
  /* 0x005c */ long Padding_235;
  /* 0x0060 */ struct _LIST_ENTRY UCRSegmentList;
} HEAP_SEGMENT, *PHEAP_SEGMENT; /* size: 0x0070 */

typedef struct _IO_MINI_COMPLETION_PACKET_USER
{
  /* 0x0000 */ struct _LIST_ENTRY ListEntry;
  /* 0x0010 */ unsigned long PacketType;
  /* 0x0014 */ long Padding_236;
  /* 0x0018 */ void* KeyContext;
  /* 0x0020 */ void* ApcContext;
  /* 0x0028 */ long IoStatus;
  /* 0x002c */ long Padding_237;
  /* 0x0030 */ unsigned __int64 IoStatusInformation;
  /* 0x0038 */ void* MiniPacketCallback /* function */;
  /* 0x0040 */ void* Context;
  /* 0x0048 */ unsigned char Allocated;
  /* 0x0049 */ char __PADDING__[7];
} IO_MINI_COMPLETION_PACKET_USER, *PIO_MINI_COMPLETION_PACKET_USER; /* size: 0x0050 */

typedef struct _PROC_PERF_CHECK
{
  /* 0x0000 */ unsigned __int64 LastActive;
  /* 0x0008 */ unsigned __int64 LastTime;
  /* 0x0010 */ unsigned __int64 LastStall;
  /* 0x0018 */ unsigned long LastResponsivenessEvents;
  /* 0x001c */ long Padding_238;
  /* 0x0020 */ struct _PROC_PERF_CHECK_SNAP LastPerfCheckSnap;
  /* 0x0080 */ struct _PROC_PERF_CHECK_SNAP CurrentSnap;
  /* 0x00e0 */ struct _PROC_PERF_CHECK_SNAP LastDeliveredSnap;
  /* 0x0140 */ unsigned long LastDeliveredPerformance;
  /* 0x0144 */ unsigned long LastDeliveredFrequency;
  /* 0x0148 */ unsigned char TaggedThreadPercent[3];
  /* 0x014b */ unsigned char Class0FloorPerfSelection;
  /* 0x014c */ unsigned char Class1MinimumPerfSelection;
  /* 0x014d */ char Padding_239[3];
  /* 0x0150 */ unsigned long CurrentResponsivenessEvents;
  /* 0x0154 */ long __PADDING__[1];
} PROC_PERF_CHECK, *PPROC_PERF_CHECK; /* size: 0x0158 */

typedef struct _PROC_PERF_LOAD
{
  /* 0x0000 */ unsigned char BusyPercentage;
  /* 0x0001 */ unsigned char FrequencyPercentage;
} PROC_PERF_LOAD, *PPROC_PERF_LOAD; /* size: 0x0002 */

typedef struct _INTERRUPT_TARGET
{
  /* 0x0000 */ enum _INTERRUPT_TARGET_TYPE Target;
  /* 0x0004 */ long Padding_240;
  union
  {
    /* 0x0008 */ unsigned long PhysicalTarget;
    /* 0x0008 */ unsigned long LogicalFlatTarget;
    /* 0x0008 */ unsigned long RemapIndex;
    struct
    {
      /* 0x0008 */ unsigned long ClusterId;
      /* 0x000c */ unsigned long ClusterMask;
    }; /* size: 0x0008 */
    struct
    {
      /* 0x0008 */ unsigned long Low32;
      /* 0x000c */ unsigned long High32;
      /* 0x0010 */ unsigned __int64 InterruptData;
    } /* size: 0x0010 */ HypervisorTarget;
  }; /* size: 0x0010 */
} INTERRUPT_TARGET, *PINTERRUPT_TARGET; /* size: 0x0018 */

typedef struct _INTERRUPT_LINE_STATE
{
  /* 0x0000 */ enum _KINTERRUPT_POLARITY Polarity;
  /* 0x0004 */ unsigned char EmulateActiveBoth;
  /* 0x0005 */ char Padding_241[3];
  /* 0x0008 */ enum _KINTERRUPT_MODE TriggerMode;
  /* 0x000c */ unsigned long Flags;
  /* 0x0010 */ struct _INTERRUPT_LINE Routing;
  /* 0x0018 */ struct _INTERRUPT_TARGET ProcessorTarget;
  /* 0x0030 */ unsigned long Vector;
  /* 0x0034 */ unsigned long Priority;
} INTERRUPT_LINE_STATE, *PINTERRUPT_LINE_STATE; /* size: 0x0038 */

typedef struct _PPM_CONCURRENCY_ACCOUNTING
{
  /* 0x0000 */ unsigned __int64 Lock;
  /* 0x0008 */ unsigned long Processors;
  /* 0x000c */ unsigned long ActiveProcessors;
  /* 0x0010 */ unsigned __int64 LastUpdateTime;
  /* 0x0018 */ unsigned __int64 TotalTime;
  /* 0x0020 */ unsigned __int64 AccumulatedTime[1];
} PPM_CONCURRENCY_ACCOUNTING, *PPPM_CONCURRENCY_ACCOUNTING; /* size: 0x0028 */

typedef struct _POP_FX_DRIVER_CALLBACKS
{
  /* 0x0000 */ void* ComponentActive /* function */;
  /* 0x0008 */ void* ComponentIdle /* function */;
  /* 0x0010 */ void* ComponentIdleState /* function */;
  /* 0x0018 */ void* DevicePowerRequired /* function */;
  /* 0x0020 */ void* DevicePowerNotRequired /* function */;
  /* 0x0028 */ void* PowerControl /* function */;
  /* 0x0030 */ void* ComponentCriticalTransition /* function */;
  /* 0x0038 */ void* DripsWatchdogCallback /* function */;
  /* 0x0040 */ void* DirectedPowerUpCallback /* function */;
  /* 0x0048 */ void* DirectedPowerDownCallback /* function */;
} POP_FX_DRIVER_CALLBACKS, *PPOP_FX_DRIVER_CALLBACKS; /* size: 0x0050 */

typedef struct _POP_FX_WORK_ORDER
{
  /* 0x0000 */ struct _WORK_QUEUE_ITEM WorkItem;
  /* 0x0020 */ long WorkCount;
  /* 0x0024 */ long Padding_242;
  /* 0x0028 */ void* Context;
  /* 0x0030 */ struct _POP_FX_WORK_ORDER_WATCHDOG_INFO* WatchdogTimerInfo;
} POP_FX_WORK_ORDER, *PPOP_FX_WORK_ORDER; /* size: 0x0038 */

typedef struct _POP_FX_DRIPS_WATCHDOG_CONTEXT
{
  /* 0x0000 */ struct _LIST_ENTRY Link;
  /* 0x0010 */ unsigned long ComponentIndex;
  /* 0x0014 */ long Padding_243;
  /* 0x0018 */ struct _DEVICE_NODE** ChildDevices;
  /* 0x0020 */ unsigned long ChildDeviceCount;
  /* 0x0024 */ long __PADDING__[1];
} POP_FX_DRIPS_WATCHDOG_CONTEXT, *PPOP_FX_DRIPS_WATCHDOG_CONTEXT; /* size: 0x0028 */

typedef struct _POP_FX_WORK_ORDER_WATCHDOG_INFO
{
  /* 0x0000 */ struct _LIST_ENTRY Link;
  /* 0x0010 */ struct _KTIMER Timer;
  /* 0x0050 */ struct _KDPC Dpc;
  /* 0x0090 */ struct _POP_FX_WORK_ORDER* WorkOrder;
  /* 0x0098 */ struct _PEP_WORK_INFORMATION* CurrentWorkInfo;
  /* 0x00a0 */ unsigned __int64 WatchdogStart;
  /* 0x00a8 */ struct _KTHREAD* WorkerThread;
} POP_FX_WORK_ORDER_WATCHDOG_INFO, *PPOP_FX_WORK_ORDER_WATCHDOG_INFO; /* size: 0x00b0 */

typedef struct _POP_FX_DEVICE_DIRECTED_TRANSITION_STATE
{
  /* 0x0000 */ void* CompletionContext;
  /* 0x0008 */ long CompletionStatus;
  struct /* bitfield */
  {
    /* 0x000c */ unsigned long DIrpPending : 1; /* bit position: 0 */
    /* 0x000c */ unsigned long DIrpCompleted : 1; /* bit position: 1 */
  }; /* bitfield */
} POP_FX_DEVICE_DIRECTED_TRANSITION_STATE, *PPOP_FX_DEVICE_DIRECTED_TRANSITION_STATE; /* size: 0x0010 */

typedef struct _POP_FX_DEVICE
{
  /* 0x0000 */ struct _LIST_ENTRY Link;
  /* 0x0010 */ struct _IRP* Irp;
  /* 0x0018 */ struct _POP_IRP_DATA* IrpData;
  /* 0x0020 */ volatile union _POP_FX_DEVICE_STATUS Status;
  /* 0x0024 */ volatile long PowerReqCall;
  /* 0x0028 */ volatile long PowerNotReqCall;
  /* 0x002c */ long Padding_244;
  /* 0x0030 */ struct _DEVICE_NODE* DevNode;
  /* 0x0038 */ struct PEPHANDLE__* DpmContext;
  /* 0x0040 */ struct _POP_FX_PLUGIN* Plugin;
  /* 0x0048 */ struct PEPHANDLE__* PluginHandle;
  /* 0x0050 */ struct _POP_FX_PLUGIN* AcpiPlugin;
  /* 0x0058 */ struct PEPHANDLE__* AcpiPluginHandle;
  /* 0x0060 */ struct _DEVICE_OBJECT* DeviceObject;
  /* 0x0068 */ struct _DEVICE_OBJECT* TargetDevice;
  /* 0x0070 */ struct _POP_FX_DRIVER_CALLBACKS Callbacks;
  /* 0x00c0 */ void* DriverContext;
  /* 0x00c8 */ struct _LIST_ENTRY AcpiLink;
  /* 0x00d8 */ struct _UNICODE_STRING DeviceId;
  /* 0x00e8 */ volatile long CommonReferenceFlags;
  /* 0x00ec */ long Padding_245;
  /* 0x00f0 */ struct _IO_REMOVE_LOCK RemoveLock;
  /* 0x0110 */ struct _IO_REMOVE_LOCK AcpiRemoveLock;
  /* 0x0130 */ struct _POP_FX_WORK_ORDER WorkOrder;
  /* 0x0168 */ unsigned __int64 IdleLock;
  /* 0x0170 */ struct _KTIMER IdleTimer;
  /* 0x01b0 */ struct _KDPC IdleDpc;
  /* 0x01f0 */ unsigned __int64 IdleTimeout;
  /* 0x01f8 */ unsigned __int64 IdleStamp;
  /* 0x0200 */ struct _DEVICE_OBJECT* NextIrpDeviceObject[2];
  /* 0x0210 */ union _POWER_STATE NextIrpPowerState[2];
  /* 0x0218 */ void* NextIrpCallerCompletion[2] /* function */;
  /* 0x0228 */ void* NextIrpCallerContext[2];
  /* 0x0238 */ struct _KEVENT IrpCompleteEvent;
  /* 0x0250 */ void* PowerOnDumpDeviceCallback /* function */;
  /* 0x0258 */ struct _POP_FX_ACCOUNTING Accounting;
  /* 0x0338 */ volatile unsigned long Flags;
  /* 0x033c */ unsigned long ComponentCount;
  /* 0x0340 */ struct _POP_FX_COMPONENT** Components;
  /* 0x0348 */ unsigned long LogEntries;
  /* 0x034c */ long Padding_246;
  /* 0x0350 */ struct _POP_FX_LOG_ENTRY* Log;
  /* 0x0358 */ volatile long LogIndex;
  /* 0x035c */ long Padding_247;
  /* 0x0360 */ struct _DRIVER_OBJECT* DripsWatchdogDriverObject;
  /* 0x0368 */ struct _POP_FX_DRIPS_WATCHDOG_CONTEXT DripsWatchdogContext;
  /* 0x0390 */ unsigned long DirectedTimeout;
  /* 0x0394 */ long Padding_248;
  /* 0x0398 */ struct _POP_FX_WORK_ORDER DirectedWorkOrder;
  /* 0x03d0 */ struct _POP_FX_WORK_ORDER_WATCHDOG_INFO DirectedWorkWatchdogInfo;
  /* 0x0480 */ unsigned __int64 DirectedLock;
  /* 0x0488 */ volatile long DirectedTransitionCallCount;
  /* 0x048c */ long Padding_249;
  /* 0x0490 */ struct _POP_FX_DEVICE_DIRECTED_TRANSITION_STATE DirectedTransitionState;
  /* 0x04a0 */ struct _POP_DEVICE_POWER_PROFILE* PowerProfile;
  /* 0x04a8 */ struct _UNICODE_STRING FriendlyName;
} POP_FX_DEVICE, *PPOP_FX_DEVICE; /* size: 0x04b8 */

typedef struct _IO_STATUS_BLOCK
{
  union
  {
    /* 0x0000 */ long Status;
    /* 0x0000 */ void* Pointer;
  }; /* size: 0x0008 */
  /* 0x0008 */ unsigned __int64 Information;
} IO_STATUS_BLOCK, *PIO_STATUS_BLOCK; /* size: 0x0010 */

typedef struct _IRP
{
  /* 0x0000 */ short Type;
  /* 0x0002 */ unsigned short Size;
  /* 0x0004 */ unsigned short AllocationProcessorNumber;
  /* 0x0006 */ unsigned short Reserved;
  /* 0x0008 */ struct _MDL* MdlAddress;
  /* 0x0010 */ unsigned long Flags;
  /* 0x0014 */ long Padding_250;
  union
  {
    union
    {
      /* 0x0018 */ struct _IRP* MasterIrp;
      /* 0x0018 */ long IrpCount;
      /* 0x0018 */ void* SystemBuffer;
    }; /* size: 0x0008 */
  } /* size: 0x0008 */ AssociatedIrp;
  /* 0x0020 */ struct _LIST_ENTRY ThreadListEntry;
  /* 0x0030 */ struct _IO_STATUS_BLOCK IoStatus;
  /* 0x0040 */ char RequestorMode;
  /* 0x0041 */ unsigned char PendingReturned;
  /* 0x0042 */ char StackCount;
  /* 0x0043 */ char CurrentLocation;
  /* 0x0044 */ unsigned char Cancel;
  /* 0x0045 */ unsigned char CancelIrql;
  /* 0x0046 */ char ApcEnvironment;
  /* 0x0047 */ unsigned char AllocationFlags;
  /* 0x0048 */ struct _IO_STATUS_BLOCK* UserIosb;
  /* 0x0050 */ struct _KEVENT* UserEvent;
  union
  {
    union
    {
      struct
      {
        union
        {
          /* 0x0058 */ void* UserApcRoutine /* function */;
          /* 0x0058 */ void* IssuingProcess;
        }; /* size: 0x0008 */
        /* 0x0060 */ void* UserApcContext;
      } /* size: 0x0010 */ AsynchronousParameters;
      /* 0x0058 */ union _LARGE_INTEGER AllocationSize;
    }; /* size: 0x0010 */
  } /* size: 0x0010 */ Overlay;
  /* 0x0068 */ void* CancelRoutine /* function */;
  /* 0x0070 */ void* UserBuffer;
  union
  {
    union
    {
      struct
      {
        union
        {
          /* 0x0078 */ struct _KDEVICE_QUEUE_ENTRY DeviceQueueEntry;
          /* 0x0078 */ void* DriverContext[4];
        }; /* size: 0x0020 */
        /* 0x0098 */ struct _ETHREAD* Thread;
        /* 0x00a0 */ char* AuxiliaryBuffer;
        /* 0x00a8 */ struct _LIST_ENTRY ListEntry;
        union
        {
          /* 0x00b8 */ struct _IO_STACK_LOCATION* CurrentStackLocation;
          /* 0x00b8 */ unsigned long PacketType;
        }; /* size: 0x0008 */
        /* 0x00c0 */ struct _FILE_OBJECT* OriginalFileObject;
        /* 0x00c8 */ void* IrpExtension;
      } /* size: 0x0058 */ Overlay;
      /* 0x0078 */ struct _KAPC Apc;
      /* 0x0078 */ void* CompletionKey;
    }; /* size: 0x0058 */
  } /* size: 0x0058 */ Tail;
} IRP, *PIRP; /* size: 0x00d0 */

typedef struct _ALPC_MESSAGE_ATTRIBUTES
{
  /* 0x0000 */ unsigned long AllocatedAttributes;
  /* 0x0004 */ unsigned long ValidAttributes;
} ALPC_MESSAGE_ATTRIBUTES, *PALPC_MESSAGE_ATTRIBUTES; /* size: 0x0008 */

typedef struct _AUTHZBASEP_CLAIM_ATTRIBUTES_COLLECTION
{
  /* 0x0000 */ unsigned long DeviceGroupsCount;
  /* 0x0004 */ long Padding_251;
  /* 0x0008 */ struct _SID_AND_ATTRIBUTES* pDeviceGroups;
  /* 0x0010 */ unsigned long RestrictedDeviceGroupsCount;
  /* 0x0014 */ long Padding_252;
  /* 0x0018 */ struct _SID_AND_ATTRIBUTES* pRestrictedDeviceGroups;
  /* 0x0020 */ struct _SID_AND_ATTRIBUTES_HASH DeviceGroupsHash;
  /* 0x0130 */ struct _SID_AND_ATTRIBUTES_HASH RestrictedDeviceGroupsHash;
  /* 0x0240 */ struct _AUTHZBASEP_SECURITY_ATTRIBUTES_INFORMATION* pUserSecurityAttributes;
  /* 0x0248 */ struct _AUTHZBASEP_SECURITY_ATTRIBUTES_INFORMATION* pDeviceSecurityAttributes;
  /* 0x0250 */ struct _AUTHZBASEP_SECURITY_ATTRIBUTES_INFORMATION* pRestrictedUserSecurityAttributes;
  /* 0x0258 */ struct _AUTHZBASEP_SECURITY_ATTRIBUTES_INFORMATION* pRestrictedDeviceSecurityAttributes;
} AUTHZBASEP_CLAIM_ATTRIBUTES_COLLECTION, *PAUTHZBASEP_CLAIM_ATTRIBUTES_COLLECTION; /* size: 0x0260 */

typedef struct _STRING32
{
  /* 0x0000 */ unsigned short Length;
  /* 0x0002 */ unsigned short MaximumLength;
  /* 0x0004 */ unsigned long Buffer;
} STRING32, *PSTRING32; /* size: 0x0008 */

typedef struct _DRIVER_OBJECT
{
  /* 0x0000 */ short Type;
  /* 0x0002 */ short Size;
  /* 0x0004 */ long Padding_253;
  /* 0x0008 */ struct _DEVICE_OBJECT* DeviceObject;
  /* 0x0010 */ unsigned long Flags;
  /* 0x0014 */ long Padding_254;
  /* 0x0018 */ void* DriverStart;
  /* 0x0020 */ unsigned long DriverSize;
  /* 0x0024 */ long Padding_255;
  /* 0x0028 */ void* DriverSection;
  /* 0x0030 */ struct _DRIVER_EXTENSION* DriverExtension;
  /* 0x0038 */ struct _UNICODE_STRING DriverName;
  /* 0x0048 */ struct _UNICODE_STRING* HardwareDatabase;
  /* 0x0050 */ struct _FAST_IO_DISPATCH* FastIoDispatch;
  /* 0x0058 */ void* DriverInit /* function */;
  /* 0x0060 */ void* DriverStartIo /* function */;
  /* 0x0068 */ void* DriverUnload /* function */;
  /* 0x0070 */ void* MajorFunction[28] /* function */;
} DRIVER_OBJECT, *PDRIVER_OBJECT; /* size: 0x0150 */

typedef struct _IO_CLIENT_EXTENSION
{
  /* 0x0000 */ struct _IO_CLIENT_EXTENSION* NextExtension;
  /* 0x0008 */ void* ClientIdentificationAddress;
} IO_CLIENT_EXTENSION, *PIO_CLIENT_EXTENSION; /* size: 0x0010 */

typedef struct _KIST_LINK_FRAME
{
  /* 0x0000 */ struct _KIST_BASE_FRAME* IstBaseFrame;
  /* 0x0008 */ unsigned long Signature;
  /* 0x000c */ unsigned long Reserved0;
  /* 0x0010 */ unsigned __int64 Reserved[2];
} KIST_LINK_FRAME, *PKIST_LINK_FRAME; /* size: 0x0020 */

typedef union _FS_FILTER_PARAMETERS
{
  union
  {
    struct
    {
      /* 0x0000 */ union _LARGE_INTEGER* EndingOffset;
      /* 0x0008 */ struct _ERESOURCE** ResourceToRelease;
    } /* size: 0x0010 */ AcquireForModifiedPageWriter;
    struct
    {
      /* 0x0000 */ struct _ERESOURCE* ResourceToRelease;
    } /* size: 0x0008 */ ReleaseForModifiedPageWriter;
    struct
    {
      /* 0x0000 */ enum _FS_FILTER_SECTION_SYNC_TYPE SyncType;
      /* 0x0004 */ unsigned long PageProtection;
      /* 0x0008 */ struct _FS_FILTER_SECTION_SYNC_OUTPUT* OutputInformation;
      /* 0x0010 */ unsigned long Flags;
      /* 0x0014 */ long __PADDING__[1];
    } /* size: 0x0018 */ AcquireForSectionSynchronization;
    struct
    {
      /* 0x0000 */ struct _IRP* Irp;
      /* 0x0008 */ void* FileInformation;
      /* 0x0010 */ unsigned long* Length;
      /* 0x0018 */ enum _FILE_INFORMATION_CLASS FileInformationClass;
      /* 0x001c */ long CompletionStatus;
    } /* size: 0x0020 */ QueryOpen;
    struct
    {
      /* 0x0000 */ void* Argument1;
      /* 0x0008 */ void* Argument2;
      /* 0x0010 */ void* Argument3;
      /* 0x0018 */ void* Argument4;
      /* 0x0020 */ void* Argument5;
    } /* size: 0x0028 */ Others;
  }; /* size: 0x0028 */
} FS_FILTER_PARAMETERS, *PFS_FILTER_PARAMETERS; /* size: 0x0028 */

typedef struct _FS_FILTER_CALLBACK_DATA
{
  /* 0x0000 */ unsigned long SizeOfFsFilterCallbackData;
  /* 0x0004 */ unsigned char Operation;
  /* 0x0005 */ unsigned char Reserved;
  /* 0x0006 */ char Padding_256[2];
  /* 0x0008 */ struct _DEVICE_OBJECT* DeviceObject;
  /* 0x0010 */ struct _FILE_OBJECT* FileObject;
  /* 0x0018 */ union _FS_FILTER_PARAMETERS Parameters;
} FS_FILTER_CALLBACK_DATA, *PFS_FILTER_CALLBACK_DATA; /* size: 0x0040 */

typedef struct _INTERRUPT_HT_INTR_INFO
{
  union
  {
    union
    {
      struct
      {
        struct /* bitfield */
        {
          /* 0x0000 */ unsigned long Mask : 1; /* bit position: 0 */
          /* 0x0000 */ unsigned long Polarity : 1; /* bit position: 1 */
          /* 0x0000 */ unsigned long MessageType : 3; /* bit position: 2 */
          /* 0x0000 */ unsigned long RequestEOI : 1; /* bit position: 5 */
          /* 0x0000 */ unsigned long DestinationMode : 1; /* bit position: 6 */
          /* 0x0000 */ unsigned long MessageType3 : 1; /* bit position: 7 */
          /* 0x0000 */ unsigned long Destination : 8; /* bit position: 8 */
          /* 0x0000 */ unsigned long Vector : 8; /* bit position: 16 */
          /* 0x0000 */ unsigned long ExtendedAddress : 8; /* bit position: 24 */
        }; /* bitfield */
      } /* size: 0x0004 */ bits;
      /* 0x0000 */ unsigned long AsULONG;
    }; /* size: 0x0004 */
  } /* size: 0x0004 */ LowPart;
  union
  {
    union
    {
      struct
      {
        struct /* bitfield */
        {
          /* 0x0004 */ unsigned long ExtendedDestination : 24; /* bit position: 0 */
          /* 0x0004 */ unsigned long Reserved : 6; /* bit position: 24 */
          /* 0x0004 */ unsigned long PassPW : 1; /* bit position: 30 */
          /* 0x0004 */ unsigned long WaitingForEOI : 1; /* bit position: 31 */
        }; /* bitfield */
      } /* size: 0x0004 */ bits;
      /* 0x0004 */ unsigned long AsULONG;
    }; /* size: 0x0004 */
  } /* size: 0x0004 */ HighPart;
} INTERRUPT_HT_INTR_INFO, *PINTERRUPT_HT_INTR_INFO; /* size: 0x0008 */

typedef struct _FILE_OBJECT
{
  /* 0x0000 */ short Type;
  /* 0x0002 */ short Size;
  /* 0x0004 */ long Padding_257;
  /* 0x0008 */ struct _DEVICE_OBJECT* DeviceObject;
  /* 0x0010 */ struct _VPB* Vpb;
  /* 0x0018 */ void* FsContext;
  /* 0x0020 */ void* FsContext2;
  /* 0x0028 */ struct _SECTION_OBJECT_POINTERS* SectionObjectPointer;
  /* 0x0030 */ void* PrivateCacheMap;
  /* 0x0038 */ long FinalStatus;
  /* 0x003c */ long Padding_258;
  /* 0x0040 */ struct _FILE_OBJECT* RelatedFileObject;
  /* 0x0048 */ unsigned char LockOperation;
  /* 0x0049 */ unsigned char DeletePending;
  /* 0x004a */ unsigned char ReadAccess;
  /* 0x004b */ unsigned char WriteAccess;
  /* 0x004c */ unsigned char DeleteAccess;
  /* 0x004d */ unsigned char SharedRead;
  /* 0x004e */ unsigned char SharedWrite;
  /* 0x004f */ unsigned char SharedDelete;
  /* 0x0050 */ unsigned long Flags;
  /* 0x0054 */ long Padding_259;
  /* 0x0058 */ struct _UNICODE_STRING FileName;
  /* 0x0068 */ union _LARGE_INTEGER CurrentByteOffset;
  /* 0x0070 */ unsigned long Waiters;
  /* 0x0074 */ unsigned long Busy;
  /* 0x0078 */ void* LastLock;
  /* 0x0080 */ struct _KEVENT Lock;
  /* 0x0098 */ struct _KEVENT Event;
  /* 0x00b0 */ struct _IO_COMPLETION_CONTEXT* CompletionContext;
  /* 0x00b8 */ unsigned __int64 IrpListLock;
  /* 0x00c0 */ struct _LIST_ENTRY IrpList;
  /* 0x00d0 */ void* FileObjectExtension;
} FILE_OBJECT, *PFILE_OBJECT; /* size: 0x00d8 */

typedef struct _VPB
{
  /* 0x0000 */ short Type;
  /* 0x0002 */ short Size;
  /* 0x0004 */ unsigned short Flags;
  /* 0x0006 */ unsigned short VolumeLabelLength;
  /* 0x0008 */ struct _DEVICE_OBJECT* DeviceObject;
  /* 0x0010 */ struct _DEVICE_OBJECT* RealDevice;
  /* 0x0018 */ unsigned long SerialNumber;
  /* 0x001c */ unsigned long ReferenceCount;
  /* 0x0020 */ wchar_t VolumeLabel[32];
} VPB, *PVPB; /* size: 0x0060 */

typedef struct _IO_COMPLETION_CONTEXT
{
  /* 0x0000 */ void* Port;
  /* 0x0008 */ void* Key;
  /* 0x0010 */ __int64 UsageCount;
} IO_COMPLETION_CONTEXT, *PIO_COMPLETION_CONTEXT; /* size: 0x0018 */

typedef struct _KALPC_REGION
{
  /* 0x0000 */ struct _LIST_ENTRY RegionListEntry;
  /* 0x0010 */ struct _KALPC_SECTION* Section;
  /* 0x0018 */ unsigned __int64 Offset;
  /* 0x0020 */ unsigned __int64 Size;
  /* 0x0028 */ unsigned __int64 ViewSize;
  union
  {
    struct
    {
      /* 0x0030 */ unsigned long Secure : 1; /* bit position: 0 */
    } /* size: 0x0004 */ s1;
  } /* size: 0x0004 */ u1;
  /* 0x0034 */ unsigned long NumberOfViews;
  /* 0x0038 */ struct _LIST_ENTRY ViewListHead;
  /* 0x0048 */ struct _KALPC_VIEW* ReadOnlyView;
  /* 0x0050 */ struct _KALPC_VIEW* ReadWriteView;
} KALPC_REGION, *PKALPC_REGION; /* size: 0x0058 */

typedef struct _FS_FILTER_SECTION_SYNC_OUTPUT
{
  /* 0x0000 */ unsigned long StructureSize;
  /* 0x0004 */ unsigned long SizeReturned;
  /* 0x0008 */ unsigned long Flags;
  /* 0x000c */ unsigned long DesiredReadAlignment;
} FS_FILTER_SECTION_SYNC_OUTPUT, *PFS_FILTER_SECTION_SYNC_OUTPUT; /* size: 0x0010 */

typedef struct _DESCRIPTION_HEADER
{
  /* 0x0000 */ unsigned long Signature;
  /* 0x0004 */ unsigned long Length;
  /* 0x0008 */ unsigned char Revision;
  /* 0x0009 */ unsigned char Checksum;
  /* 0x000a */ char OEMID[6];
  /* 0x0010 */ char OEMTableID[8];
  /* 0x0018 */ unsigned long OEMRevision;
  /* 0x001c */ char CreatorID[4];
  /* 0x0020 */ unsigned long CreatorRev;
} DESCRIPTION_HEADER, *PDESCRIPTION_HEADER; /* size: 0x0024 */

typedef struct _RSDT_32
{
  /* 0x0000 */ struct _DESCRIPTION_HEADER Header;
  /* 0x0024 */ unsigned long Tables[1];
} RSDT_32, *PRSDT_32; /* size: 0x0028 */

typedef struct _OBJECT_DIRECTORY
{
  /* 0x0000 */ struct _OBJECT_DIRECTORY_ENTRY* HashBuckets[37];
  /* 0x0128 */ struct _EX_PUSH_LOCK Lock;
  /* 0x0130 */ struct _DEVICE_MAP* DeviceMap;
  /* 0x0138 */ struct _OBJECT_DIRECTORY* ShadowDirectory;
  /* 0x0140 */ void* NamespaceEntry;
  /* 0x0148 */ void* SessionObject;
  /* 0x0150 */ unsigned long Flags;
  /* 0x0154 */ unsigned long SessionId;
} OBJECT_DIRECTORY, *POBJECT_DIRECTORY; /* size: 0x0158 */

typedef struct _FAST_IO_DISPATCH
{
  /* 0x0000 */ unsigned long SizeOfFastIoDispatch;
  /* 0x0004 */ long Padding_260;
  /* 0x0008 */ void* FastIoCheckIfPossible /* function */;
  /* 0x0010 */ void* FastIoRead /* function */;
  /* 0x0018 */ void* FastIoWrite /* function */;
  /* 0x0020 */ void* FastIoQueryBasicInfo /* function */;
  /* 0x0028 */ void* FastIoQueryStandardInfo /* function */;
  /* 0x0030 */ void* FastIoLock /* function */;
  /* 0x0038 */ void* FastIoUnlockSingle /* function */;
  /* 0x0040 */ void* FastIoUnlockAll /* function */;
  /* 0x0048 */ void* FastIoUnlockAllByKey /* function */;
  /* 0x0050 */ void* FastIoDeviceControl /* function */;
  /* 0x0058 */ void* AcquireFileForNtCreateSection /* function */;
  /* 0x0060 */ void* ReleaseFileForNtCreateSection /* function */;
  /* 0x0068 */ void* FastIoDetachDevice /* function */;
  /* 0x0070 */ void* FastIoQueryNetworkOpenInfo /* function */;
  /* 0x0078 */ void* AcquireForModWrite /* function */;
  /* 0x0080 */ void* MdlRead /* function */;
  /* 0x0088 */ void* MdlReadComplete /* function */;
  /* 0x0090 */ void* PrepareMdlWrite /* function */;
  /* 0x0098 */ void* MdlWriteComplete /* function */;
  /* 0x00a0 */ void* FastIoReadCompressed /* function */;
  /* 0x00a8 */ void* FastIoWriteCompressed /* function */;
  /* 0x00b0 */ void* MdlReadCompleteCompressed /* function */;
  /* 0x00b8 */ void* MdlWriteCompleteCompressed /* function */;
  /* 0x00c0 */ void* FastIoQueryOpen /* function */;
  /* 0x00c8 */ void* ReleaseForModWrite /* function */;
  /* 0x00d0 */ void* AcquireForCcFlush /* function */;
  /* 0x00d8 */ void* ReleaseForCcFlush /* function */;
} FAST_IO_DISPATCH, *PFAST_IO_DISPATCH; /* size: 0x00e0 */

typedef struct _FADT
{
  /* 0x0000 */ struct _DESCRIPTION_HEADER Header;
  /* 0x0024 */ unsigned long facs;
  /* 0x0028 */ unsigned long dsdt;
  /* 0x002c */ unsigned char int_model;
  /* 0x002d */ unsigned char pm_profile;
  /* 0x002e */ unsigned short sci_int_vector;
  /* 0x0030 */ unsigned long smi_cmd_io_port;
  /* 0x0034 */ unsigned char acpi_on_value;
  /* 0x0035 */ unsigned char acpi_off_value;
  /* 0x0036 */ unsigned char s4bios_req;
  /* 0x0037 */ unsigned char pstate_control;
  /* 0x0038 */ unsigned long pm1a_evt_blk_io_port;
  /* 0x003c */ unsigned long pm1b_evt_blk_io_port;
  /* 0x0040 */ unsigned long pm1a_ctrl_blk_io_port;
  /* 0x0044 */ unsigned long pm1b_ctrl_blk_io_port;
  /* 0x0048 */ unsigned long pm2_ctrl_blk_io_port;
  /* 0x004c */ unsigned long pm_tmr_blk_io_port;
  /* 0x0050 */ unsigned long gp0_blk_io_port;
  /* 0x0054 */ unsigned long gp1_blk_io_port;
  /* 0x0058 */ unsigned char pm1_evt_len;
  /* 0x0059 */ unsigned char pm1_ctrl_len;
  /* 0x005a */ unsigned char pm2_ctrl_len;
  /* 0x005b */ unsigned char pm_tmr_len;
  /* 0x005c */ unsigned char gp0_blk_len;
  /* 0x005d */ unsigned char gp1_blk_len;
  /* 0x005e */ unsigned char gp1_base;
  /* 0x005f */ unsigned char cstate_control;
  /* 0x0060 */ unsigned short lvl2_latency;
  /* 0x0062 */ unsigned short lvl3_latency;
  /* 0x0064 */ unsigned short flush_size;
  /* 0x0066 */ unsigned short flush_stride;
  /* 0x0068 */ unsigned char duty_offset;
  /* 0x0069 */ unsigned char duty_width;
  /* 0x006a */ unsigned char day_alarm_index;
  /* 0x006b */ unsigned char month_alarm_index;
  /* 0x006c */ unsigned char century_alarm_index;
  /* 0x006d */ unsigned short boot_arch;
  /* 0x006f */ unsigned char reserved3[1];
  /* 0x0070 */ unsigned long flags;
  /* 0x0074 */ struct _GEN_ADDR reset_reg;
  /* 0x0080 */ unsigned char reset_val;
  /* 0x0081 */ unsigned short arm_boot_arch;
  /* 0x0083 */ unsigned char minor_version_number;
  /* 0x0084 */ union _LARGE_INTEGER x_firmware_ctrl;
  /* 0x008c */ union _LARGE_INTEGER x_dsdt;
  /* 0x0094 */ struct _GEN_ADDR x_pm1a_evt_blk;
  /* 0x00a0 */ struct _GEN_ADDR x_pm1b_evt_blk;
  /* 0x00ac */ struct _GEN_ADDR x_pm1a_ctrl_blk;
  /* 0x00b8 */ struct _GEN_ADDR x_pm1b_ctrl_blk;
  /* 0x00c4 */ struct _GEN_ADDR x_pm2_ctrl_blk;
  /* 0x00d0 */ struct _GEN_ADDR x_pm_tmr_blk;
  /* 0x00dc */ struct _GEN_ADDR x_gp0_blk;
  /* 0x00e8 */ struct _GEN_ADDR x_gp1_blk;
  /* 0x00f4 */ struct _GEN_ADDR sleep_control_reg;
  /* 0x0100 */ struct _GEN_ADDR sleep_status_reg;
  /* 0x010c */ unsigned __int64 hypervisor_vendor_identity;
} FADT, *PFADT; /* size: 0x0114 */

typedef struct _PEP_WORK_ACPI_NOTIFY
{
  /* 0x0000 */ struct POHANDLE__* DeviceHandle;
  /* 0x0008 */ unsigned long NotifyCode;
  /* 0x000c */ long __PADDING__[1];
} PEP_WORK_ACPI_NOTIFY, *PPEP_WORK_ACPI_NOTIFY; /* size: 0x0010 */

typedef struct _CUSTOM_SYSTEM_EVENT_TRIGGER_CONFIG
{
  /* 0x0000 */ unsigned long Size;
  /* 0x0004 */ long Padding_261;
  /* 0x0008 */ const wchar_t* TriggerId;
} CUSTOM_SYSTEM_EVENT_TRIGGER_CONFIG, *PCUSTOM_SYSTEM_EVENT_TRIGGER_CONFIG; /* size: 0x0010 */

typedef struct _EVENT_DESCRIPTOR
{
  /* 0x0000 */ unsigned short Id;
  /* 0x0002 */ unsigned char Version;
  /* 0x0003 */ unsigned char Channel;
  /* 0x0004 */ unsigned char Level;
  /* 0x0005 */ unsigned char Opcode;
  /* 0x0006 */ unsigned short Task;
  /* 0x0008 */ unsigned __int64 Keyword;
} EVENT_DESCRIPTOR, *PEVENT_DESCRIPTOR; /* size: 0x0010 */

typedef union _PEP_ACPI_RESOURCE_FLAGS
{
  union
  {
    /* 0x0000 */ unsigned long AsULong;
    struct /* bitfield */
    {
      /* 0x0000 */ unsigned long Shared : 1; /* bit position: 0 */
      /* 0x0000 */ unsigned long Wake : 1; /* bit position: 1 */
      /* 0x0000 */ unsigned long ResourceUsage : 1; /* bit position: 2 */
      /* 0x0000 */ unsigned long SlaveMode : 1; /* bit position: 3 */
      /* 0x0000 */ unsigned long AddressingMode : 1; /* bit position: 4 */
      /* 0x0000 */ unsigned long SharedMode : 1; /* bit position: 5 */
      /* 0x0000 */ unsigned long Reserved : 26; /* bit position: 6 */
    }; /* bitfield */
  }; /* size: 0x0004 */
} PEP_ACPI_RESOURCE_FLAGS, *PPEP_ACPI_RESOURCE_FLAGS; /* size: 0x0004 */

typedef struct _PEP_ACPI_SPB_RESOURCE
{
  /* 0x0000 */ enum _PEP_ACPI_RESOURCE_TYPE Type;
  /* 0x0004 */ union _PEP_ACPI_RESOURCE_FLAGS Flags;
  /* 0x0008 */ unsigned short TypeSpecificFlags;
  /* 0x000a */ unsigned char ResourceSourceIndex;
  /* 0x000b */ char Padding_262[5];
  /* 0x0010 */ struct _UNICODE_STRING* ResourceSourceName;
  /* 0x0018 */ char* VendorData;
  /* 0x0020 */ unsigned short VendorDataLength;
  /* 0x0022 */ char __PADDING__[6];
} PEP_ACPI_SPB_RESOURCE, *PPEP_ACPI_SPB_RESOURCE; /* size: 0x0028 */

typedef struct _PEP_ACPI_SPB_UART_RESOURCE
{
  /* 0x0000 */ struct _PEP_ACPI_SPB_RESOURCE SpbCommon;
  /* 0x0028 */ unsigned long BaudRate;
  /* 0x002c */ unsigned short RxBufferSize;
  /* 0x002e */ unsigned short TxBufferSize;
  /* 0x0030 */ unsigned char Parity;
  /* 0x0031 */ unsigned char LinesInUse;
  /* 0x0032 */ char __PADDING__[6];
} PEP_ACPI_SPB_UART_RESOURCE, *PPEP_ACPI_SPB_UART_RESOURCE; /* size: 0x0038 */

typedef struct _FILE_BASIC_INFORMATION
{
  /* 0x0000 */ union _LARGE_INTEGER CreationTime;
  /* 0x0008 */ union _LARGE_INTEGER LastAccessTime;
  /* 0x0010 */ union _LARGE_INTEGER LastWriteTime;
  /* 0x0018 */ union _LARGE_INTEGER ChangeTime;
  /* 0x0020 */ unsigned long FileAttributes;
  /* 0x0024 */ long __PADDING__[1];
} FILE_BASIC_INFORMATION, *PFILE_BASIC_INFORMATION; /* size: 0x0028 */

typedef struct _HANDLE_TRACE_DB_ENTRY
{
  /* 0x0000 */ struct _CLIENT_ID ClientId;
  /* 0x0010 */ void* Handle;
  /* 0x0018 */ unsigned long Type;
  /* 0x001c */ long Padding_263;
  /* 0x0020 */ void* StackTrace[16];
} HANDLE_TRACE_DB_ENTRY, *PHANDLE_TRACE_DB_ENTRY; /* size: 0x00a0 */

typedef struct _EXHANDLE
{
  union
  {
    struct /* bitfield */
    {
      /* 0x0000 */ unsigned long TagBits : 2; /* bit position: 0 */
      /* 0x0000 */ unsigned long Index : 30; /* bit position: 2 */
    }; /* bitfield */
    /* 0x0000 */ void* GenericHandleOverlay;
    /* 0x0000 */ unsigned __int64 Value;
  }; /* size: 0x0008 */
} EXHANDLE, *PEXHANDLE; /* size: 0x0008 */

typedef union _HANDLE_TABLE_ENTRY
{
  union
  {
    /* 0x0000 */ volatile __int64 VolatileLowValue;
    /* 0x0000 */ __int64 LowValue;
    struct
    {
      /* 0x0000 */ struct _HANDLE_TABLE_ENTRY_INFO* volatile InfoTable;
      union
      {
        /* 0x0008 */ __int64 HighValue;
        /* 0x0008 */ union _HANDLE_TABLE_ENTRY* NextFreeHandleEntry;
        /* 0x0008 */ struct _EXHANDLE LeafHandleValue;
      }; /* size: 0x0008 */
    }; /* size: 0x0010 */
    /* 0x0000 */ __int64 RefCountField;
    struct
    {
      struct /* bitfield */
      {
        /* 0x0000 */ unsigned __int64 Unlocked : 1; /* bit position: 0 */
        /* 0x0000 */ unsigned __int64 RefCnt : 16; /* bit position: 1 */
        /* 0x0000 */ unsigned __int64 Attributes : 3; /* bit position: 17 */
        /* 0x0000 */ unsigned __int64 ObjectPointerBits : 44; /* bit position: 20 */
      }; /* bitfield */
      struct /* bitfield */
      {
        /* 0x0008 */ unsigned long GrantedAccessBits : 25; /* bit position: 0 */
        /* 0x0008 */ unsigned long NoRightsUpgrade : 1; /* bit position: 25 */
        /* 0x0008 */ unsigned long Spare1 : 6; /* bit position: 26 */
      }; /* bitfield */
      /* 0x000c */ unsigned long Spare2;
    }; /* size: 0x0010 */
  }; /* size: 0x0010 */
} HANDLE_TABLE_ENTRY, *PHANDLE_TABLE_ENTRY; /* size: 0x0010 */

struct _ACTIVATION_CONTEXT;

typedef struct _DBGKD_SET_SPECIAL_CALL32
{
  /* 0x0000 */ unsigned long SpecialCall;
} DBGKD_SET_SPECIAL_CALL32, *PDBGKD_SET_SPECIAL_CALL32; /* size: 0x0004 */

typedef struct _OBJECT_NAME_INFORMATION
{
  /* 0x0000 */ struct _UNICODE_STRING Name;
} OBJECT_NAME_INFORMATION, *POBJECT_NAME_INFORMATION; /* size: 0x0010 */

typedef struct _LOG_HANDLE_CONTEXT
{
  /* 0x0000 */ void* LogHandle;
  /* 0x0008 */ void* FlushToLsnRoutine /* function */;
  /* 0x0010 */ void* QueryLogHandleInfoRoutine /* function */;
  /* 0x0018 */ struct _DIRTY_PAGE_STATISTICS DirtyPageStatistics;
  /* 0x0030 */ struct _DIRTY_PAGE_THRESHOLDS DirtyPageThresholds;
  /* 0x0068 */ unsigned long AdditionalPagesToWrite;
  /* 0x006c */ unsigned long CcLWScanDPThreshold;
  /* 0x0070 */ union _LARGE_INTEGER LargestLsnForCurrentLWScan;
  /* 0x0078 */ struct _FILE_OBJECT* RelatedFileObject;
  /* 0x0080 */ unsigned __int64 LargestLsnFileObjectKey;
  /* 0x0088 */ union _LARGE_INTEGER LastLWTimeStamp;
  /* 0x0090 */ unsigned long Flags;
  /* 0x0094 */ long __PADDING__[1];
} LOG_HANDLE_CONTEXT, *PLOG_HANDLE_CONTEXT; /* size: 0x0098 */

typedef struct _VOLUME_CACHE_MAP
{
  /* 0x0000 */ short NodeTypeCode;
  /* 0x0002 */ short NodeByteCode;
  /* 0x0004 */ unsigned long UseCount;
  /* 0x0008 */ struct _DEVICE_OBJECT* DeviceObject;
  /* 0x0010 */ struct _LIST_ENTRY VolumeCacheMapLinks;
  /* 0x0020 */ unsigned __int64 DirtyPages;
  /* 0x0028 */ struct _LOG_HANDLE_CONTEXT LogHandleContext;
  /* 0x00c0 */ unsigned long Flags;
  /* 0x00c4 */ unsigned long PagesQueuedToDisk;
  /* 0x00c8 */ unsigned long LoggedPagesQueuedToDisk;
  /* 0x00cc */ long __PADDING__[1];
} VOLUME_CACHE_MAP, *PVOLUME_CACHE_MAP; /* size: 0x00d0 */

typedef struct _POP_FX_LOG_ENTRY
{
  /* 0x0000 */ unsigned __int64 Timestamp;
  /* 0x0008 */ unsigned char Operation;
  /* 0x0009 */ unsigned char Component;
  /* 0x000a */ unsigned short Processor;
  /* 0x000c */ unsigned short Process;
  /* 0x000e */ unsigned short Thread;
  /* 0x0010 */ unsigned __int64 Information;
} POP_FX_LOG_ENTRY, *PPOP_FX_LOG_ENTRY; /* size: 0x0018 */

typedef struct _INTERRUPT_FUNCTION_TABLE
{
  /* 0x0000 */ void* InitializeLocalUnit /* function */;
  /* 0x0008 */ void* InitializeIoUnit /* function */;
  /* 0x0010 */ void* SetPriority /* function */;
  /* 0x0018 */ void* GetLocalUnitError /* function */;
  /* 0x0020 */ void* ClearLocalUnitError /* function */;
  /* 0x0028 */ void* GetLogicalId /* function */;
  /* 0x0030 */ void* SetLogicalId /* function */;
  /* 0x0038 */ void* AcceptAndGetSource /* function */;
  /* 0x0040 */ void* EndOfInterrupt /* function */;
  /* 0x0048 */ void* FastEndOfInterrupt /* function */;
  /* 0x0050 */ void* SetLineState /* function */;
  /* 0x0058 */ void* RequestInterrupt /* function */;
  /* 0x0060 */ void* StartProcessor /* function */;
  /* 0x0068 */ void* GenerateMessage /* function */;
  /* 0x0070 */ void* ConvertId /* function */;
  /* 0x0078 */ void* SaveLocalInterrupts /* function */;
  /* 0x0080 */ void* ReplayLocalInterrupts /* function */;
  /* 0x0088 */ void* DeinitializeLocalUnit /* function */;
  /* 0x0090 */ void* DeinitializeIoUnit /* function */;
  /* 0x0098 */ void* QueryAndGetSource /* function */;
  /* 0x00a0 */ void* DeactivateInterrupt /* function */;
  /* 0x00a8 */ void* DirectedEndOfInterrupt /* function */;
  /* 0x00b0 */ void* QueryLocalUnitInfo /* function */;
} INTERRUPT_FUNCTION_TABLE, *PINTERRUPT_FUNCTION_TABLE; /* size: 0x00b8 */

typedef struct _CACHE_UNINITIALIZE_EVENT
{
  /* 0x0000 */ struct _CACHE_UNINITIALIZE_EVENT* Next;
  /* 0x0008 */ struct _KEVENT Event;
} CACHE_UNINITIALIZE_EVENT, *PCACHE_UNINITIALIZE_EVENT; /* size: 0x0020 */

typedef struct _WHEAP_INFO_BLOCK
{
  /* 0x0000 */ unsigned long ErrorSourceCount;
  /* 0x0004 */ long Padding_264;
  /* 0x0008 */ struct _WHEAP_ERROR_SOURCE_TABLE* ErrorSourceTable;
  /* 0x0010 */ struct _WHEAP_WORK_QUEUE* WorkQueue;
} WHEAP_INFO_BLOCK, *PWHEAP_INFO_BLOCK; /* size: 0x0018 */

typedef union _PPM_COORDINATED_SYNCHRONIZATION
{
  union
  {
    /* 0x0000 */ long AsLong;
    struct /* bitfield */
    {
      /* 0x0000 */ unsigned long EnterProcessor : 12; /* bit position: 0 */
      /* 0x0000 */ unsigned long ExitProcessor : 12; /* bit position: 12 */
      /* 0x0000 */ unsigned long Transition : 2; /* bit position: 24 */
      /* 0x0000 */ unsigned long Entered : 1; /* bit position: 26 */
      /* 0x0000 */ unsigned long EntryPriority : 5; /* bit position: 27 */
    }; /* bitfield */
  }; /* size: 0x0004 */
} PPM_COORDINATED_SYNCHRONIZATION, *PPPM_COORDINATED_SYNCHRONIZATION; /* size: 0x0004 */

typedef struct _PPM_PLATFORM_STATE
{
  /* 0x0000 */ unsigned __int64 LevelId;
  /* 0x0008 */ unsigned long Latency;
  /* 0x000c */ unsigned long BreakEvenDuration;
  /* 0x0010 */ struct _PPM_VETO_ACCOUNTING VetoAccounting;
  /* 0x0038 */ unsigned char TransitionDebugger;
  /* 0x0039 */ unsigned char Platform;
  /* 0x003a */ char Padding_265[2];
  /* 0x003c */ unsigned long DependencyListCount;
  /* 0x0040 */ struct _KAFFINITY_EX Processors;
  /* 0x00e8 */ struct _UNICODE_STRING Name;
  /* 0x00f8 */ struct _PPM_SELECTION_DEPENDENCY* DependencyLists;
  /* 0x0100 */ volatile union _PPM_COORDINATED_SYNCHRONIZATION Synchronization;
  /* 0x0104 */ long Padding_266;
  /* 0x0108 */ volatile unsigned __int64 EnterTime;
  /* 0x0110 */ long Padding_267[12];
  union
  {
    /* 0x0140 */ volatile long RefCount;
    /* 0x0140 */ unsigned char CacheAlign0[64];
  }; /* size: 0x0040 */
} PPM_PLATFORM_STATE, *PPPM_PLATFORM_STATE; /* size: 0x0180 */

typedef union _KGDTENTRY64
{
  union
  {
    struct
    {
      /* 0x0000 */ unsigned short LimitLow;
      /* 0x0002 */ unsigned short BaseLow;
      union
      {
        struct
        {
          /* 0x0004 */ unsigned char BaseMiddle;
          /* 0x0005 */ unsigned char Flags1;
          /* 0x0006 */ unsigned char Flags2;
          /* 0x0007 */ unsigned char BaseHigh;
        } /* size: 0x0004 */ Bytes;
        struct
        {
          struct
          {
            struct /* bitfield */
            {
              /* 0x0004 */ unsigned long BaseMiddle : 8; /* bit position: 0 */
              /* 0x0004 */ unsigned long Type : 5; /* bit position: 8 */
              /* 0x0004 */ unsigned long Dpl : 2; /* bit position: 13 */
              /* 0x0004 */ unsigned long Present : 1; /* bit position: 15 */
              /* 0x0004 */ unsigned long LimitHigh : 4; /* bit position: 16 */
              /* 0x0004 */ unsigned long System : 1; /* bit position: 20 */
              /* 0x0004 */ unsigned long LongMode : 1; /* bit position: 21 */
              /* 0x0004 */ unsigned long DefaultBig : 1; /* bit position: 22 */
              /* 0x0004 */ unsigned long Granularity : 1; /* bit position: 23 */
              /* 0x0004 */ unsigned long BaseHigh : 8; /* bit position: 24 */
            }; /* bitfield */
          } /* size: 0x0004 */ Bits;
          /* 0x0008 */ unsigned long BaseUpper;
          /* 0x000c */ unsigned long MustBeZero;
        }; /* size: 0x000c */
      }; /* size: 0x000c */
    }; /* size: 0x0010 */
    struct
    {
      /* 0x0000 */ __int64 DataLow;
      /* 0x0008 */ __int64 DataHigh;
    }; /* size: 0x0010 */
  }; /* size: 0x0010 */
} KGDTENTRY64, *PKGDTENTRY64; /* size: 0x0010 */

typedef union _WHEA_XPF_PROCESSOR_ERROR_SECTION_VALIDBITS
{
  union
  {
    struct /* bitfield */
    {
      /* 0x0000 */ unsigned __int64 LocalAPICId : 1; /* bit position: 0 */
      /* 0x0000 */ unsigned __int64 CpuId : 1; /* bit position: 1 */
      /* 0x0000 */ unsigned __int64 ProcInfoCount : 6; /* bit position: 2 */
      /* 0x0000 */ unsigned __int64 ContextInfoCount : 6; /* bit position: 8 */
      /* 0x0000 */ unsigned __int64 Reserved : 50; /* bit position: 14 */
    }; /* bitfield */
    /* 0x0000 */ unsigned __int64 ValidBits;
  }; /* size: 0x0008 */
} WHEA_XPF_PROCESSOR_ERROR_SECTION_VALIDBITS, *PWHEA_XPF_PROCESSOR_ERROR_SECTION_VALIDBITS; /* size: 0x0008 */

typedef struct _WHEA_XPF_PROCESSOR_ERROR_SECTION
{
  /* 0x0000 */ union _WHEA_XPF_PROCESSOR_ERROR_SECTION_VALIDBITS ValidBits;
  /* 0x0008 */ unsigned __int64 LocalAPICId;
  /* 0x0010 */ unsigned char CpuId[48];
  /* 0x0040 */ unsigned char VariableInfo[1];
} WHEA_XPF_PROCESSOR_ERROR_SECTION, *PWHEA_XPF_PROCESSOR_ERROR_SECTION; /* size: 0x0041 */

struct DEBUG_MEMORY_REQUIREMENTS
{
  /* 0x0000 */ union _LARGE_INTEGER Start;
  /* 0x0008 */ union _LARGE_INTEGER MaxEnd;
  /* 0x0010 */ void* VirtualAddress;
  /* 0x0018 */ unsigned long Length;
  /* 0x001c */ unsigned char Cached;
  /* 0x001d */ unsigned char Aligned;
  /* 0x001e */ char __PADDING__[2];
}; /* size: 0x0020 */

typedef struct _COMPRESSED_DATA_INFO
{
  /* 0x0000 */ unsigned short CompressionFormatAndEngine;
  /* 0x0002 */ unsigned char CompressionUnitShift;
  /* 0x0003 */ unsigned char ChunkShift;
  /* 0x0004 */ unsigned char ClusterShift;
  /* 0x0005 */ unsigned char Reserved;
  /* 0x0006 */ unsigned short NumberOfChunks;
  /* 0x0008 */ unsigned long CompressedChunkSizes[1];
} COMPRESSED_DATA_INFO, *PCOMPRESSED_DATA_INFO; /* size: 0x000c */

typedef struct _OBJECT_HANDLE_COUNT_ENTRY
{
  /* 0x0000 */ struct _EPROCESS* Process;
  struct /* bitfield */
  {
    /* 0x0008 */ unsigned long HandleCount : 24; /* bit position: 0 */
    /* 0x0008 */ unsigned long LockCount : 8; /* bit position: 24 */
  }; /* bitfield */
  /* 0x000c */ long __PADDING__[1];
} OBJECT_HANDLE_COUNT_ENTRY, *POBJECT_HANDLE_COUNT_ENTRY; /* size: 0x0010 */

typedef struct _OBJECT_HEADER_HANDLE_INFO
{
  union
  {
    /* 0x0000 */ struct _OBJECT_HANDLE_COUNT_DATABASE* HandleCountDataBase;
    /* 0x0000 */ struct _OBJECT_HANDLE_COUNT_ENTRY SingleEntry;
  }; /* size: 0x0010 */
} OBJECT_HEADER_HANDLE_INFO, *POBJECT_HEADER_HANDLE_INFO; /* size: 0x0010 */

typedef struct _INVERTED_FUNCTION_TABLE_ENTRY
{
  union
  {
    /* 0x0000 */ struct _IMAGE_RUNTIME_FUNCTION_ENTRY* FunctionTable;
    /* 0x0000 */ struct _DYNAMIC_FUNCTION_TABLE* DynamicTable;
  }; /* size: 0x0008 */
  /* 0x0008 */ void* ImageBase;
  /* 0x0010 */ unsigned long SizeOfImage;
  /* 0x0014 */ unsigned long SizeOfTable;
} INVERTED_FUNCTION_TABLE_ENTRY, *PINVERTED_FUNCTION_TABLE_ENTRY; /* size: 0x0018 */

typedef struct _ARM64_DBGKD_CONTROL_SET
{
  /* 0x0000 */ unsigned long Continue;
  /* 0x0004 */ unsigned long TraceFlag;
  /* 0x0008 */ unsigned __int64 CurrentSymbolStart;
  /* 0x0010 */ unsigned __int64 CurrentSymbolEnd;
} ARM64_DBGKD_CONTROL_SET, *PARM64_DBGKD_CONTROL_SET; /* size: 0x0018 */

typedef struct _PNP_WATCHDOG
{
  /* 0x0000 */ unsigned __int64 WatchdogStart;
  /* 0x0008 */ struct _WDT_HANDLE* WatchdogTimer;
  /* 0x0010 */ enum _PNP_WATCHDOG_TYPE WatchdogContextType;
  /* 0x0014 */ long Padding_268;
  /* 0x0018 */ void* WatchdogContext;
  /* 0x0020 */ unsigned char TriggerEventLogged;
  /* 0x0021 */ char __PADDING__[7];
} PNP_WATCHDOG, *PPNP_WATCHDOG; /* size: 0x0028 */

typedef struct _PO_NOTIFY_ORDER_LEVEL
{
  /* 0x0000 */ unsigned long DeviceCount;
  /* 0x0004 */ unsigned long ActiveCount;
  /* 0x0008 */ struct _LIST_ENTRY WaitSleep;
  /* 0x0018 */ struct _LIST_ENTRY ReadySleep;
  /* 0x0028 */ struct _LIST_ENTRY ReadyS0;
  /* 0x0038 */ struct _LIST_ENTRY WaitS0;
} PO_NOTIFY_ORDER_LEVEL, *PPO_NOTIFY_ORDER_LEVEL; /* size: 0x0048 */

typedef struct _POP_FX_DEPENDENT
{
  /* 0x0000 */ unsigned long Index;
  /* 0x0004 */ unsigned long ProviderIndex;
} POP_FX_DEPENDENT, *PPOP_FX_DEPENDENT; /* size: 0x0008 */

typedef struct _IO_TIMER
{
  /* 0x0000 */ short Type;
  /* 0x0002 */ short TimerFlag;
  /* 0x0004 */ long Padding_269;
  /* 0x0008 */ struct _LIST_ENTRY TimerList;
  /* 0x0018 */ void* TimerRoutine /* function */;
  /* 0x0020 */ void* Context;
  /* 0x0028 */ struct _DEVICE_OBJECT* DeviceObject;
} IO_TIMER, *PIO_TIMER; /* size: 0x0030 */

typedef struct _KIST_BASE_FRAME
{
  /* 0x0000 */ struct _KPCR* KernelGsBase;
  /* 0x0008 */ struct _KIST_LINK_FRAME* IstStack;
  /* 0x0010 */ unsigned __int64 PreviousGsBase;
  /* 0x0018 */ unsigned __int64 PreviousCr3;
  /* 0x0020 */ unsigned __int64 IstPad;
  /* 0x0028 */ unsigned __int64 Reserved;
} KIST_BASE_FRAME, *PKIST_BASE_FRAME; /* size: 0x0030 */

typedef union _WHEA_ERROR_RECORD_HEADER_FLAGS
{
  union
  {
    struct /* bitfield */
    {
      /* 0x0000 */ unsigned long Recovered : 1; /* bit position: 0 */
      /* 0x0000 */ unsigned long PreviousError : 1; /* bit position: 1 */
      /* 0x0000 */ unsigned long Simulated : 1; /* bit position: 2 */
      /* 0x0000 */ unsigned long DeviceDriver : 1; /* bit position: 3 */
      /* 0x0000 */ unsigned long CriticalEvent : 1; /* bit position: 4 */
      /* 0x0000 */ unsigned long PersistPfn : 1; /* bit position: 5 */
      /* 0x0000 */ unsigned long Reserved : 26; /* bit position: 6 */
    }; /* bitfield */
    /* 0x0000 */ unsigned long AsULONG;
  }; /* size: 0x0004 */
} WHEA_ERROR_RECORD_HEADER_FLAGS, *PWHEA_ERROR_RECORD_HEADER_FLAGS; /* size: 0x0004 */

typedef struct _DEVOBJ_EXTENSION
{
  /* 0x0000 */ short Type;
  /* 0x0002 */ unsigned short Size;
  /* 0x0004 */ long Padding_270;
  /* 0x0008 */ struct _DEVICE_OBJECT* DeviceObject;
  /* 0x0010 */ unsigned long PowerFlags;
  /* 0x0014 */ long Padding_271;
  /* 0x0018 */ struct _DEVICE_OBJECT_POWER_EXTENSION* Dope;
  /* 0x0020 */ unsigned long ExtensionFlags;
  /* 0x0024 */ long Padding_272;
  /* 0x0028 */ void* DeviceNode;
  /* 0x0030 */ struct _DEVICE_OBJECT* AttachedTo;
  /* 0x0038 */ long StartIoCount;
  /* 0x003c */ long StartIoKey;
  /* 0x0040 */ unsigned long StartIoFlags;
  /* 0x0044 */ long Padding_273;
  /* 0x0048 */ struct _VPB* Vpb;
  /* 0x0050 */ void* DependencyNode;
  /* 0x0058 */ void* InterruptContext;
  /* 0x0060 */ long InterruptCount;
  /* 0x0064 */ long Padding_274;
  /* 0x0068 */ void* VerifierContext;
} DEVOBJ_EXTENSION, *PDEVOBJ_EXTENSION; /* size: 0x0070 */

typedef struct _DEVICE_OBJECT_POWER_EXTENSION
{
  /* 0x0000 */ volatile unsigned long IdleCount;
  /* 0x0004 */ volatile unsigned long BusyCount;
  /* 0x0008 */ volatile unsigned long BusyReference;
  /* 0x000c */ unsigned long TotalBusyCount;
  /* 0x0010 */ unsigned long ConservationIdleTime;
  /* 0x0014 */ unsigned long PerformanceIdleTime;
  /* 0x0018 */ struct _DEVICE_OBJECT* DeviceObject;
  /* 0x0020 */ struct _LIST_ENTRY IdleList;
  /* 0x0030 */ enum _POP_DEVICE_IDLE_TYPE IdleType;
  /* 0x0034 */ enum _DEVICE_POWER_STATE IdleState;
  /* 0x0038 */ enum _DEVICE_POWER_STATE CurrentState;
  /* 0x003c */ long Padding_275;
  /* 0x0040 */ struct _POP_COOLING_EXTENSION* CoolingExtension;
  /* 0x0048 */ struct _LIST_ENTRY Volume;
  union
  {
    struct
    {
      /* 0x0058 */ unsigned long IdleTime;
      /* 0x005c */ unsigned long NonIdleTime;
    } /* size: 0x0008 */ Disk;
  } /* size: 0x0008 */ Specific;
} DEVICE_OBJECT_POWER_EXTENSION, *PDEVICE_OBJECT_POWER_EXTENSION; /* size: 0x0060 */

typedef struct _THERMAL_COOLING_INTERFACE
{
  /* 0x0000 */ unsigned short Size;
  /* 0x0002 */ unsigned short Version;
  /* 0x0004 */ long Padding_276;
  /* 0x0008 */ void* Context;
  /* 0x0010 */ void* InterfaceReference /* function */;
  /* 0x0018 */ void* InterfaceDereference /* function */;
  /* 0x0020 */ unsigned long Flags;
  /* 0x0024 */ long Padding_277;
  /* 0x0028 */ void* ActiveCooling /* function */;
  /* 0x0030 */ void* PassiveCooling /* function */;
} THERMAL_COOLING_INTERFACE, *PTHERMAL_COOLING_INTERFACE; /* size: 0x0038 */

typedef struct _POP_COOLING_EXTENSION
{
  /* 0x0000 */ struct _LIST_ENTRY Link;
  /* 0x0010 */ struct _LIST_ENTRY RequestListHead;
  /* 0x0020 */ struct _POP_RW_LOCK Lock;
  /* 0x0030 */ struct _DEVICE_OBJECT* DeviceObject;
  /* 0x0038 */ void* NotificationEntry;
  /* 0x0040 */ unsigned char Enabled;
  /* 0x0041 */ unsigned char ActiveEngaged;
  /* 0x0042 */ unsigned char ThrottleLimit;
  /* 0x0043 */ unsigned char UpdatingToCurrent;
  /* 0x0044 */ long Padding_278;
  /* 0x0048 */ struct _KEVENT* RemovalFlushEvent;
  /* 0x0050 */ struct _KEVENT* PnpFlushEvent;
  /* 0x0058 */ struct _THERMAL_COOLING_INTERFACE Interface;
} POP_COOLING_EXTENSION, *PPOP_COOLING_EXTENSION; /* size: 0x0090 */

typedef struct _ETW_BUFFER_QUEUE
{
  /* 0x0000 */ struct _SINGLE_LIST_ENTRY* QueueTail;
  /* 0x0008 */ struct _SINGLE_LIST_ENTRY QueueEntry;
} ETW_BUFFER_QUEUE, *PETW_BUFFER_QUEUE; /* size: 0x0010 */

typedef struct _HANDLE_TRACE_DEBUG_INFO
{
  /* 0x0000 */ long RefCount;
  /* 0x0004 */ unsigned long TableSize;
  /* 0x0008 */ unsigned long BitMaskFlags;
  /* 0x000c */ long Padding_279;
  /* 0x0010 */ struct _FAST_MUTEX CloseCompactionLock;
  /* 0x0048 */ unsigned long CurrentStackIndex;
  /* 0x004c */ long Padding_280;
  /* 0x0050 */ struct _HANDLE_TRACE_DB_ENTRY TraceDb[1];
} HANDLE_TRACE_DEBUG_INFO, *PHANDLE_TRACE_DEBUG_INFO; /* size: 0x00f0 */

typedef struct _DBGKD_SET_SPECIAL_CALL64
{
  /* 0x0000 */ unsigned __int64 SpecialCall;
} DBGKD_SET_SPECIAL_CALL64, *PDBGKD_SET_SPECIAL_CALL64; /* size: 0x0008 */

typedef struct _HEAP_VS_UNUSED_BYTES_INFO
{
  union
  {
    struct /* bitfield */
    {
      /* 0x0000 */ unsigned short UnusedBytes : 13; /* bit position: 0 */
      /* 0x0000 */ unsigned short LfhSubsegment : 1; /* bit position: 13 */
      /* 0x0000 */ unsigned short ExtraPresent : 1; /* bit position: 14 */
      /* 0x0000 */ unsigned short OneByteUnused : 1; /* bit position: 15 */
    }; /* bitfield */
    /* 0x0000 */ unsigned char Bytes[2];
  }; /* size: 0x0002 */
} HEAP_VS_UNUSED_BYTES_INFO, *PHEAP_VS_UNUSED_BYTES_INFO; /* size: 0x0002 */

typedef struct _IO_DRIVER_CREATE_CONTEXT
{
  /* 0x0000 */ short Size;
  /* 0x0002 */ char Padding_281[6];
  /* 0x0008 */ struct _ECP_LIST* ExtraCreateParameter;
  /* 0x0010 */ void* DeviceObjectHint;
  /* 0x0018 */ struct _TXN_PARAMETER_BLOCK* TxnParameters;
  /* 0x0020 */ struct _EJOB* SiloContext;
} IO_DRIVER_CREATE_CONTEXT, *PIO_DRIVER_CREATE_CONTEXT; /* size: 0x0028 */

typedef struct _NAMED_PIPE_CREATE_PARAMETERS
{
  /* 0x0000 */ unsigned long NamedPipeType;
  /* 0x0004 */ unsigned long ReadMode;
  /* 0x0008 */ unsigned long CompletionMode;
  /* 0x000c */ unsigned long MaximumInstances;
  /* 0x0010 */ unsigned long InboundQuota;
  /* 0x0014 */ unsigned long OutboundQuota;
  /* 0x0018 */ union _LARGE_INTEGER DefaultTimeout;
  /* 0x0020 */ unsigned char TimeoutSpecified;
  /* 0x0021 */ char __PADDING__[7];
} NAMED_PIPE_CREATE_PARAMETERS, *PNAMED_PIPE_CREATE_PARAMETERS; /* size: 0x0028 */

typedef struct _MAILSLOT_CREATE_PARAMETERS
{
  /* 0x0000 */ unsigned long MailslotQuota;
  /* 0x0004 */ unsigned long MaximumMessageSize;
  /* 0x0008 */ union _LARGE_INTEGER ReadTimeout;
  /* 0x0010 */ unsigned char TimeoutSpecified;
  /* 0x0011 */ char __PADDING__[7];
} MAILSLOT_CREATE_PARAMETERS, *PMAILSLOT_CREATE_PARAMETERS; /* size: 0x0018 */

typedef struct _DBGKD_READ_MEMORY32
{
  /* 0x0000 */ unsigned long TargetBaseAddress;
  /* 0x0004 */ unsigned long TransferCount;
  /* 0x0008 */ unsigned long ActualBytesRead;
} DBGKD_READ_MEMORY32, *PDBGKD_READ_MEMORY32; /* size: 0x000c */

typedef struct _DBGKD_WRITE_MEMORY32
{
  /* 0x0000 */ unsigned long TargetBaseAddress;
  /* 0x0004 */ unsigned long TransferCount;
  /* 0x0008 */ unsigned long ActualBytesWritten;
} DBGKD_WRITE_MEMORY32, *PDBGKD_WRITE_MEMORY32; /* size: 0x000c */

typedef struct _DBGKD_READ_MEMORY64
{
  /* 0x0000 */ unsigned __int64 TargetBaseAddress;
  /* 0x0008 */ unsigned long TransferCount;
  /* 0x000c */ unsigned long ActualBytesRead;
} DBGKD_READ_MEMORY64, *PDBGKD_READ_MEMORY64; /* size: 0x0010 */

typedef struct _DBGKD_WRITE_MEMORY64
{
  /* 0x0000 */ unsigned __int64 TargetBaseAddress;
  /* 0x0008 */ unsigned long TransferCount;
  /* 0x000c */ unsigned long ActualBytesWritten;
} DBGKD_WRITE_MEMORY64, *PDBGKD_WRITE_MEMORY64; /* size: 0x0010 */

typedef struct _DBGKD_SET_CONTEXT
{
  /* 0x0000 */ unsigned long ContextFlags;
} DBGKD_SET_CONTEXT, *PDBGKD_SET_CONTEXT; /* size: 0x0004 */

typedef struct _DBGKD_WRITE_BREAKPOINT32
{
  /* 0x0000 */ unsigned long BreakPointAddress;
  /* 0x0004 */ unsigned long BreakPointHandle;
} DBGKD_WRITE_BREAKPOINT32, *PDBGKD_WRITE_BREAKPOINT32; /* size: 0x0008 */

typedef struct _DBGKD_RESTORE_BREAKPOINT
{
  /* 0x0000 */ unsigned long BreakPointHandle;
} DBGKD_RESTORE_BREAKPOINT, *PDBGKD_RESTORE_BREAKPOINT; /* size: 0x0004 */

typedef struct _DBGKD_CONTINUE
{
  /* 0x0000 */ long ContinueStatus;
} DBGKD_CONTINUE, *PDBGKD_CONTINUE; /* size: 0x0004 */

typedef struct _X86_DBGKD_CONTROL_SET
{
  /* 0x0000 */ unsigned long TraceFlag;
  /* 0x0004 */ unsigned long Dr7;
  /* 0x0008 */ unsigned long CurrentSymbolStart;
  /* 0x000c */ unsigned long CurrentSymbolEnd;
} X86_DBGKD_CONTROL_SET, *PX86_DBGKD_CONTROL_SET; /* size: 0x0010 */

typedef struct _IA64_DBGKD_CONTROL_SET
{
  /* 0x0000 */ unsigned long Continue;
  /* 0x0004 */ unsigned __int64 CurrentSymbolStart;
  /* 0x000c */ unsigned __int64 CurrentSymbolEnd;
} IA64_DBGKD_CONTROL_SET, *PIA64_DBGKD_CONTROL_SET; /* size: 0x0014 */

typedef struct _ARM_DBGKD_CONTROL_SET
{
  /* 0x0000 */ unsigned long Continue;
  /* 0x0004 */ unsigned long CurrentSymbolStart;
  /* 0x0008 */ unsigned long CurrentSymbolEnd;
} ARM_DBGKD_CONTROL_SET, *PARM_DBGKD_CONTROL_SET; /* size: 0x000c */

typedef struct _PPC_DBGKD_CONTROL_SET
{
  /* 0x0000 */ unsigned long Continue;
  /* 0x0004 */ unsigned long CurrentSymbolStart;
  /* 0x0008 */ unsigned long CurrentSymbolEnd;
} PPC_DBGKD_CONTROL_SET, *PPPC_DBGKD_CONTROL_SET; /* size: 0x000c */

typedef struct _DBGKD_ANY_CONTROL_SET
{
  union
  {
    /* 0x0000 */ struct _X86_DBGKD_CONTROL_SET X86ControlSet;
    /* 0x0000 */ unsigned long AlphaControlSet;
    /* 0x0000 */ struct _IA64_DBGKD_CONTROL_SET IA64ControlSet;
    /* 0x0000 */ struct _AMD64_DBGKD_CONTROL_SET Amd64ControlSet;
    /* 0x0000 */ struct _ARM_DBGKD_CONTROL_SET ArmControlSet;
    /* 0x0000 */ struct _ARM64_DBGKD_CONTROL_SET Arm64ControlSet;
    /* 0x0000 */ struct _ARMCE_DBGKD_CONTROL_SET ArmCeControlSet;
    struct
    {
      /* 0x0000 */ struct _PPC_DBGKD_CONTROL_SET PpcControlSet;
      /* 0x000c */ long __PADDING__[4];
    }; /* size: 0x001c */
  }; /* size: 0x001c */
} DBGKD_ANY_CONTROL_SET, *PDBGKD_ANY_CONTROL_SET; /* size: 0x001c */

typedef struct _DBGKD_CONTINUE2
{
  /* 0x0000 */ long ContinueStatus;
  union
  {
    /* 0x0004 */ struct _AMD64_DBGKD_CONTROL_SET ControlSet;
    /* 0x0004 */ struct _DBGKD_ANY_CONTROL_SET AnyControlSet;
  }; /* size: 0x001c */
} DBGKD_CONTINUE2, *PDBGKD_CONTINUE2; /* size: 0x0020 */

typedef struct _DBGKD_READ_WRITE_IO32
{
  /* 0x0000 */ unsigned long DataSize;
  /* 0x0004 */ unsigned long IoAddress;
  /* 0x0008 */ unsigned long DataValue;
} DBGKD_READ_WRITE_IO32, *PDBGKD_READ_WRITE_IO32; /* size: 0x000c */

typedef struct _DBGKD_READ_WRITE_IO_EXTENDED32
{
  /* 0x0000 */ unsigned long DataSize;
  /* 0x0004 */ unsigned long InterfaceType;
  /* 0x0008 */ unsigned long BusNumber;
  /* 0x000c */ unsigned long AddressSpace;
  /* 0x0010 */ unsigned long IoAddress;
  /* 0x0014 */ unsigned long DataValue;
} DBGKD_READ_WRITE_IO_EXTENDED32, *PDBGKD_READ_WRITE_IO_EXTENDED32; /* size: 0x0018 */

typedef struct _DBGKD_QUERY_SPECIAL_CALLS
{
  /* 0x0000 */ unsigned long NumberOfSpecialCalls;
} DBGKD_QUERY_SPECIAL_CALLS, *PDBGKD_QUERY_SPECIAL_CALLS; /* size: 0x0004 */

typedef struct _DBGKD_BREAKPOINTEX
{
  /* 0x0000 */ unsigned long BreakPointCount;
  /* 0x0004 */ long ContinueStatus;
} DBGKD_BREAKPOINTEX, *PDBGKD_BREAKPOINTEX; /* size: 0x0008 */

typedef struct _DBGKD_READ_WRITE_MSR
{
  /* 0x0000 */ unsigned long Msr;
  /* 0x0004 */ unsigned long DataValueLow;
  /* 0x0008 */ unsigned long DataValueHigh;
} DBGKD_READ_WRITE_MSR, *PDBGKD_READ_WRITE_MSR; /* size: 0x000c */

typedef struct _DBGKD_SEARCH_MEMORY
{
  union
  {
    /* 0x0000 */ unsigned __int64 SearchAddress;
    /* 0x0000 */ unsigned __int64 FoundAddress;
  }; /* size: 0x0008 */
  /* 0x0008 */ unsigned __int64 SearchLength;
  /* 0x0010 */ unsigned long PatternLength;
  /* 0x0014 */ long __PADDING__[1];
} DBGKD_SEARCH_MEMORY, *PDBGKD_SEARCH_MEMORY; /* size: 0x0018 */

typedef struct _DBGKD_CONTEXT_EX
{
  /* 0x0000 */ unsigned long Offset;
  /* 0x0004 */ unsigned long ByteCount;
  /* 0x0008 */ unsigned long BytesCopied;
} DBGKD_CONTEXT_EX, *PDBGKD_CONTEXT_EX; /* size: 0x000c */

typedef struct _RELATION_LIST
{
  /* 0x0000 */ struct _DEVICE_OBJECT_LIST* DeviceObjectList;
  /* 0x0008 */ unsigned char Sorted;
  /* 0x0009 */ char __PADDING__[7];
} RELATION_LIST, *PRELATION_LIST; /* size: 0x0010 */

typedef struct _VF_SUSPECT_DRIVER_ENTRY
{
  /* 0x0000 */ struct _LIST_ENTRY Links;
  /* 0x0010 */ unsigned long Loads;
  /* 0x0014 */ unsigned long Unloads;
  /* 0x0018 */ struct _UNICODE_STRING BaseName;
} VF_SUSPECT_DRIVER_ENTRY, *PVF_SUSPECT_DRIVER_ENTRY; /* size: 0x0028 */

typedef struct _HEAP_STOP_ON_TAG
{
  union
  {
    /* 0x0000 */ unsigned long HeapAndTagIndex;
    struct
    {
      /* 0x0000 */ unsigned short TagIndex;
      /* 0x0002 */ unsigned short HeapIndex;
    }; /* size: 0x0004 */
  }; /* size: 0x0004 */
} HEAP_STOP_ON_TAG, *PHEAP_STOP_ON_TAG; /* size: 0x0004 */

typedef struct _FILE_GET_QUOTA_INFORMATION
{
  /* 0x0000 */ unsigned long NextEntryOffset;
  /* 0x0004 */ unsigned long SidLength;
  /* 0x0008 */ struct _SID Sid;
} FILE_GET_QUOTA_INFORMATION, *PFILE_GET_QUOTA_INFORMATION; /* size: 0x0014 */

typedef struct _MI_CACHED_PTE
{
  union
  {
    struct
    {
      /* 0x0000 */ unsigned long GlobalTimeStamp;
      /* 0x0004 */ unsigned long PteIndex;
    }; /* size: 0x0008 */
    /* 0x0000 */ __int64 Long;
  }; /* size: 0x0008 */
} MI_CACHED_PTE, *PMI_CACHED_PTE; /* size: 0x0008 */

typedef struct _MI_CACHED_PTES
{
  /* 0x0000 */ struct _MI_CACHED_PTE Bins[8];
  /* 0x0040 */ long CachedPteCount;
  /* 0x0044 */ long __PADDING__[1];
} MI_CACHED_PTES, *PMI_CACHED_PTES; /* size: 0x0048 */

typedef struct _EXCEPTION_RECORD32
{
  /* 0x0000 */ long ExceptionCode;
  /* 0x0004 */ unsigned long ExceptionFlags;
  /* 0x0008 */ unsigned long ExceptionRecord;
  /* 0x000c */ unsigned long ExceptionAddress;
  /* 0x0010 */ unsigned long NumberParameters;
  /* 0x0014 */ unsigned long ExceptionInformation[15];
} EXCEPTION_RECORD32, *PEXCEPTION_RECORD32; /* size: 0x0050 */

typedef struct _DBGKM_EXCEPTION32
{
  /* 0x0000 */ struct _EXCEPTION_RECORD32 ExceptionRecord;
  /* 0x0050 */ unsigned long FirstChance;
} DBGKM_EXCEPTION32, *PDBGKM_EXCEPTION32; /* size: 0x0054 */

typedef struct _MI_SYSTEM_PTE_TYPE
{
  /* 0x0000 */ struct _RTL_BITMAP_EX Bitmap;
  /* 0x0010 */ struct _MMPTE* BasePte;
  /* 0x0018 */ unsigned long Flags;
  /* 0x001c */ enum _MI_SYSTEM_VA_TYPE VaType;
  /* 0x0020 */ unsigned long* FailureCount;
  /* 0x0028 */ unsigned long PteFailures;
  /* 0x002c */ long Padding_282;
  union
  {
    /* 0x0030 */ unsigned __int64 SpinLock;
    /* 0x0030 */ struct _EX_PUSH_LOCK* GlobalPushLock;
  }; /* size: 0x0008 */
  /* 0x0038 */ volatile unsigned __int64 TotalSystemPtes;
  /* 0x0040 */ unsigned __int64 Hint;
  /* 0x0048 */ unsigned __int64 LowestBitEverAllocated;
  /* 0x0050 */ volatile struct _MI_CACHED_PTES* CachedPtes;
  /* 0x0058 */ volatile unsigned __int64 TotalFreeSystemPtes;
} MI_SYSTEM_PTE_TYPE, *PMI_SYSTEM_PTE_TYPE; /* size: 0x0060 */

typedef struct _HANDLE_TABLE_FREE_LIST
{
  /* 0x0000 */ struct _EX_PUSH_LOCK FreeListLock;
  /* 0x0008 */ union _HANDLE_TABLE_ENTRY* FirstFreeHandleEntry;
  /* 0x0010 */ union _HANDLE_TABLE_ENTRY* LastFreeHandleEntry;
  /* 0x0018 */ long HandleCount;
  /* 0x001c */ unsigned long HighWaterMark;
  /* 0x0020 */ long __PADDING__[8];
} HANDLE_TABLE_FREE_LIST, *PHANDLE_TABLE_FREE_LIST; /* size: 0x0040 */

typedef struct _DEVICE_CAPABILITIES
{
  /* 0x0000 */ unsigned short Size;
  /* 0x0002 */ unsigned short Version;
  struct /* bitfield */
  {
    /* 0x0004 */ unsigned long DeviceD1 : 1; /* bit position: 0 */
    /* 0x0004 */ unsigned long DeviceD2 : 1; /* bit position: 1 */
    /* 0x0004 */ unsigned long LockSupported : 1; /* bit position: 2 */
    /* 0x0004 */ unsigned long EjectSupported : 1; /* bit position: 3 */
    /* 0x0004 */ unsigned long Removable : 1; /* bit position: 4 */
    /* 0x0004 */ unsigned long DockDevice : 1; /* bit position: 5 */
    /* 0x0004 */ unsigned long UniqueID : 1; /* bit position: 6 */
    /* 0x0004 */ unsigned long SilentInstall : 1; /* bit position: 7 */
    /* 0x0004 */ unsigned long RawDeviceOK : 1; /* bit position: 8 */
    /* 0x0004 */ unsigned long SurpriseRemovalOK : 1; /* bit position: 9 */
    /* 0x0004 */ unsigned long WakeFromD0 : 1; /* bit position: 10 */
    /* 0x0004 */ unsigned long WakeFromD1 : 1; /* bit position: 11 */
    /* 0x0004 */ unsigned long WakeFromD2 : 1; /* bit position: 12 */
    /* 0x0004 */ unsigned long WakeFromD3 : 1; /* bit position: 13 */
    /* 0x0004 */ unsigned long HardwareDisabled : 1; /* bit position: 14 */
    /* 0x0004 */ unsigned long NonDynamic : 1; /* bit position: 15 */
    /* 0x0004 */ unsigned long WarmEjectSupported : 1; /* bit position: 16 */
    /* 0x0004 */ unsigned long NoDisplayInUI : 1; /* bit position: 17 */
    /* 0x0004 */ unsigned long Reserved1 : 1; /* bit position: 18 */
    /* 0x0004 */ unsigned long WakeFromInterrupt : 1; /* bit position: 19 */
    /* 0x0004 */ unsigned long SecureDevice : 1; /* bit position: 20 */
    /* 0x0004 */ unsigned long ChildOfVgaEnabledBridge : 1; /* bit position: 21 */
    /* 0x0004 */ unsigned long DecodeIoOnBoot : 1; /* bit position: 22 */
    /* 0x0004 */ unsigned long Reserved : 9; /* bit position: 23 */
  }; /* bitfield */
  /* 0x0008 */ unsigned long Address;
  /* 0x000c */ unsigned long UINumber;
  /* 0x0010 */ enum _DEVICE_POWER_STATE DeviceState[7];
  /* 0x002c */ enum _SYSTEM_POWER_STATE SystemWake;
  /* 0x0030 */ enum _DEVICE_POWER_STATE DeviceWake;
  /* 0x0034 */ unsigned long D1Latency;
  /* 0x0038 */ unsigned long D2Latency;
  /* 0x003c */ unsigned long D3Latency;
} DEVICE_CAPABILITIES, *PDEVICE_CAPABILITIES; /* size: 0x0040 */

typedef struct _STACK_TABLE
{
  /* 0x0000 */ unsigned short NumStackTraces;
  /* 0x0002 */ unsigned short TraceCapacity;
  /* 0x0004 */ long Padding_283;
  /* 0x0008 */ struct _OBJECT_REF_TRACE* StackTrace[16];
  /* 0x0088 */ unsigned short StackTableHash[16381];
  /* 0x8082 */ char __PADDING__[6];
} STACK_TABLE, *PSTACK_TABLE; /* size: 0x8088 */

typedef struct _VF_KE_CRITICAL_REGION_TRACE
{
  /* 0x0000 */ struct _ETHREAD* Thread;
  /* 0x0008 */ void* StackTrace[7];
} VF_KE_CRITICAL_REGION_TRACE, *PVF_KE_CRITICAL_REGION_TRACE; /* size: 0x0040 */

typedef struct _IO_RESOURCE_REQUIREMENTS_LIST
{
  /* 0x0000 */ unsigned long ListSize;
  /* 0x0004 */ enum _INTERFACE_TYPE InterfaceType;
  /* 0x0008 */ unsigned long BusNumber;
  /* 0x000c */ unsigned long SlotNumber;
  /* 0x0010 */ unsigned long Reserved[3];
  /* 0x001c */ unsigned long AlternativeLists;
  /* 0x0020 */ struct _IO_RESOURCE_LIST List[1];
} IO_RESOURCE_REQUIREMENTS_LIST, *PIO_RESOURCE_REQUIREMENTS_LIST; /* size: 0x0048 */

typedef struct _XSTATE_FEATURE
{
  /* 0x0000 */ unsigned long Offset;
  /* 0x0004 */ unsigned long Size;
} XSTATE_FEATURE, *PXSTATE_FEATURE; /* size: 0x0008 */

typedef struct _XSTATE_CONFIGURATION
{
  /* 0x0000 */ unsigned __int64 EnabledFeatures;
  /* 0x0008 */ unsigned __int64 EnabledVolatileFeatures;
  /* 0x0010 */ unsigned long Size;
  union
  {
    /* 0x0014 */ unsigned long ControlFlags;
    struct /* bitfield */
    {
      /* 0x0014 */ unsigned long OptimizedSave : 1; /* bit position: 0 */
      /* 0x0014 */ unsigned long CompactionEnabled : 1; /* bit position: 1 */
    }; /* bitfield */
  }; /* size: 0x0004 */
  /* 0x0018 */ struct _XSTATE_FEATURE Features[64];
  /* 0x0218 */ unsigned __int64 EnabledSupervisorFeatures;
  /* 0x0220 */ unsigned __int64 AlignedFeatures;
  /* 0x0228 */ unsigned long AllFeatureSize;
  /* 0x022c */ unsigned long AllFeatures[64];
  /* 0x032c */ long Padding_284;
  /* 0x0330 */ unsigned __int64 EnabledUserVisibleSupervisorFeatures;
} XSTATE_CONFIGURATION, *PXSTATE_CONFIGURATION; /* size: 0x0338 */

typedef struct _KUSER_SHARED_DATA
{
  /* 0x0000 */ unsigned long TickCountLowDeprecated;
  /* 0x0004 */ unsigned long TickCountMultiplier;
  /* 0x0008 */ volatile struct _KSYSTEM_TIME InterruptTime;
  /* 0x0014 */ volatile struct _KSYSTEM_TIME SystemTime;
  /* 0x0020 */ volatile struct _KSYSTEM_TIME TimeZoneBias;
  /* 0x002c */ unsigned short ImageNumberLow;
  /* 0x002e */ unsigned short ImageNumberHigh;
  /* 0x0030 */ wchar_t NtSystemRoot[260];
  /* 0x0238 */ unsigned long MaxStackTraceDepth;
  /* 0x023c */ unsigned long CryptoExponent;
  /* 0x0240 */ unsigned long TimeZoneId;
  /* 0x0244 */ unsigned long LargePageMinimum;
  /* 0x0248 */ unsigned long AitSamplingValue;
  /* 0x024c */ unsigned long AppCompatFlag;
  /* 0x0250 */ unsigned __int64 RNGSeedVersion;
  /* 0x0258 */ unsigned long GlobalValidationRunlevel;
  /* 0x025c */ volatile long TimeZoneBiasStamp;
  /* 0x0260 */ unsigned long NtBuildNumber;
  /* 0x0264 */ enum _NT_PRODUCT_TYPE NtProductType;
  /* 0x0268 */ unsigned char ProductTypeIsValid;
  /* 0x0269 */ unsigned char Reserved0[1];
  /* 0x026a */ unsigned short NativeProcessorArchitecture;
  /* 0x026c */ unsigned long NtMajorVersion;
  /* 0x0270 */ unsigned long NtMinorVersion;
  /* 0x0274 */ unsigned char ProcessorFeatures[64];
  /* 0x02b4 */ unsigned long Reserved1;
  /* 0x02b8 */ unsigned long Reserved3;
  /* 0x02bc */ volatile unsigned long TimeSlip;
  /* 0x02c0 */ enum _ALTERNATIVE_ARCHITECTURE_TYPE AlternativeArchitecture;
  /* 0x02c4 */ unsigned long BootId;
  /* 0x02c8 */ union _LARGE_INTEGER SystemExpirationDate;
  /* 0x02d0 */ unsigned long SuiteMask;
  /* 0x02d4 */ unsigned char KdDebuggerEnabled;
  union
  {
    /* 0x02d5 */ unsigned char MitigationPolicies;
    struct /* bitfield */
    {
      /* 0x02d5 */ unsigned char NXSupportPolicy : 2; /* bit position: 0 */
      /* 0x02d5 */ unsigned char SEHValidationPolicy : 2; /* bit position: 2 */
      /* 0x02d5 */ unsigned char CurDirDevicesSkippedForDlls : 2; /* bit position: 4 */
      /* 0x02d5 */ unsigned char Reserved : 2; /* bit position: 6 */
    }; /* bitfield */
  }; /* size: 0x0001 */
  /* 0x02d6 */ unsigned short CyclesPerYield;
  /* 0x02d8 */ volatile unsigned long ActiveConsoleId;
  /* 0x02dc */ volatile unsigned long DismountCount;
  /* 0x02e0 */ unsigned long ComPlusPackage;
  /* 0x02e4 */ unsigned long LastSystemRITEventTickCount;
  /* 0x02e8 */ unsigned long NumberOfPhysicalPages;
  /* 0x02ec */ unsigned char SafeBootMode;
  /* 0x02ed */ unsigned char VirtualizationFlags;
  /* 0x02ee */ unsigned char Reserved12[2];
  union
  {
    /* 0x02f0 */ unsigned long SharedDataFlags;
    struct /* bitfield */
    {
      /* 0x02f0 */ unsigned long DbgErrorPortPresent : 1; /* bit position: 0 */
      /* 0x02f0 */ unsigned long DbgElevationEnabled : 1; /* bit position: 1 */
      /* 0x02f0 */ unsigned long DbgVirtEnabled : 1; /* bit position: 2 */
      /* 0x02f0 */ unsigned long DbgInstallerDetectEnabled : 1; /* bit position: 3 */
      /* 0x02f0 */ unsigned long DbgLkgEnabled : 1; /* bit position: 4 */
      /* 0x02f0 */ unsigned long DbgDynProcessorEnabled : 1; /* bit position: 5 */
      /* 0x02f0 */ unsigned long DbgConsoleBrokerEnabled : 1; /* bit position: 6 */
      /* 0x02f0 */ unsigned long DbgSecureBootEnabled : 1; /* bit position: 7 */
      /* 0x02f0 */ unsigned long DbgMultiSessionSku : 1; /* bit position: 8 */
      /* 0x02f0 */ unsigned long DbgMultiUsersInSessionSku : 1; /* bit position: 9 */
      /* 0x02f0 */ unsigned long DbgStateSeparationEnabled : 1; /* bit position: 10 */
      /* 0x02f0 */ unsigned long SpareBits : 21; /* bit position: 11 */
    }; /* bitfield */
  }; /* size: 0x0004 */
  /* 0x02f4 */ unsigned long DataFlagsPad[1];
  /* 0x02f8 */ unsigned __int64 TestRetInstruction;
  /* 0x0300 */ __int64 QpcFrequency;
  /* 0x0308 */ unsigned long SystemCall;
  /* 0x030c */ unsigned long Reserved2;
  /* 0x0310 */ unsigned __int64 SystemCallPad[2];
  union
  {
    /* 0x0320 */ volatile struct _KSYSTEM_TIME TickCount;
    /* 0x0320 */ volatile unsigned __int64 TickCountQuad;
    /* 0x0320 */ unsigned long ReservedTickCountOverlay[3];
  }; /* size: 0x000c */
  /* 0x032c */ unsigned long TickCountPad[1];
  /* 0x0330 */ unsigned long Cookie;
  /* 0x0334 */ unsigned long CookiePad[1];
  /* 0x0338 */ __int64 ConsoleSessionForegroundProcessId;
  /* 0x0340 */ unsigned __int64 TimeUpdateLock;
  /* 0x0348 */ unsigned __int64 BaselineSystemTimeQpc;
  /* 0x0350 */ unsigned __int64 BaselineInterruptTimeQpc;
  /* 0x0358 */ unsigned __int64 QpcSystemTimeIncrement;
  /* 0x0360 */ unsigned __int64 QpcInterruptTimeIncrement;
  /* 0x0368 */ unsigned char QpcSystemTimeIncrementShift;
  /* 0x0369 */ unsigned char QpcInterruptTimeIncrementShift;
  /* 0x036a */ unsigned short UnparkedProcessorCount;
  /* 0x036c */ unsigned long EnclaveFeatureMask[4];
  /* 0x037c */ unsigned long TelemetryCoverageRound;
  /* 0x0380 */ unsigned short UserModeGlobalLogger[16];
  /* 0x03a0 */ unsigned long ImageFileExecutionOptions;
  /* 0x03a4 */ unsigned long LangGenerationCount;
  /* 0x03a8 */ unsigned __int64 Reserved4;
  /* 0x03b0 */ volatile unsigned __int64 InterruptTimeBias;
  /* 0x03b8 */ volatile unsigned __int64 QpcBias;
  /* 0x03c0 */ unsigned long ActiveProcessorCount;
  /* 0x03c4 */ volatile unsigned char ActiveGroupCount;
  /* 0x03c5 */ unsigned char Reserved9;
  union
  {
    /* 0x03c6 */ unsigned short QpcData;
    struct
    {
      /* 0x03c6 */ volatile unsigned char QpcBypassEnabled;
      /* 0x03c7 */ unsigned char QpcShift;
    }; /* size: 0x0002 */
  }; /* size: 0x0002 */
  /* 0x03c8 */ union _LARGE_INTEGER TimeZoneBiasEffectiveStart;
  /* 0x03d0 */ union _LARGE_INTEGER TimeZoneBiasEffectiveEnd;
  /* 0x03d8 */ struct _XSTATE_CONFIGURATION XState;
  /* 0x0710 */ struct _KSYSTEM_TIME FeatureConfigurationChangeStamp;
  /* 0x071c */ unsigned long Spare;
} KUSER_SHARED_DATA, *PKUSER_SHARED_DATA; /* size: 0x0720 */

typedef struct _POWER_SEQUENCE
{
  /* 0x0000 */ unsigned long SequenceD1;
  /* 0x0004 */ unsigned long SequenceD2;
  /* 0x0008 */ unsigned long SequenceD3;
} POWER_SEQUENCE, *PPOWER_SEQUENCE; /* size: 0x000c */

typedef struct _PLATFORM_INTERRUPT
{
  /* 0x0000 */ unsigned char Type;
  /* 0x0001 */ unsigned char Length;
  /* 0x0002 */ unsigned short Flags;
  /* 0x0004 */ unsigned char InterruptType;
  /* 0x0005 */ unsigned char APICID;
  /* 0x0006 */ unsigned char ACPIEID;
  /* 0x0007 */ unsigned char IOSAPICVector;
  /* 0x0008 */ unsigned long GlobalVector;
  /* 0x000c */ unsigned long Reserved;
} PLATFORM_INTERRUPT, *PPLATFORM_INTERRUPT; /* size: 0x0010 */

typedef struct _MMPFNLIST
{
  /* 0x0000 */ unsigned __int64 Total;
  /* 0x0008 */ enum _MMLISTS ListName;
  /* 0x000c */ long Padding_285;
  /* 0x0010 */ unsigned __int64 Flink;
  /* 0x0018 */ unsigned __int64 Blink;
  /* 0x0020 */ unsigned __int64 Lock;
} MMPFNLIST, *PMMPFNLIST; /* size: 0x0028 */

typedef struct _MI_AVAILABLE_PAGE_WAIT_STATES
{
  /* 0x0000 */ struct _KEVENT Event;
  /* 0x0018 */ unsigned long EventSets;
  /* 0x001c */ long __PADDING__[1];
} MI_AVAILABLE_PAGE_WAIT_STATES, *PMI_AVAILABLE_PAGE_WAIT_STATES; /* size: 0x0020 */

typedef struct _MI_SLAB_ALLOCATOR_CONTEXT
{
  /* 0x0000 */ struct _RTL_RB_TREE AllocationsTree;
  /* 0x0010 */ volatile long Lock;
  /* 0x0014 */ long Padding_286;
  /* 0x0018 */ struct _MI_SLAB_ALLOCATOR_ENTRY* SlabEntryHint;
  /* 0x0020 */ unsigned __int64 FreePageCount;
  /* 0x0028 */ unsigned __int64 SlabEntryCount;
  /* 0x0030 */ enum _MI_SLAB_ALLOCATOR_TYPE Type;
  /* 0x0034 */ enum _MI_SLAB_ALLOCATOR_PROTECTION Protection;
  union
  {
    union
    {
      struct /* bitfield */
      {
        /* 0x0038 */ unsigned long EntryBecameEmpty : 1; /* bit position: 0 */
        /* 0x0038 */ unsigned long Spare : 31; /* bit position: 1 */
      }; /* bitfield */
      /* 0x0038 */ unsigned long AllFlags;
    }; /* size: 0x0004 */
  } /* size: 0x0004 */ Flags;
  /* 0x003c */ long Padding_287;
  /* 0x0040 */ struct _MMPFNLIST StandbyList;
  /* 0x0068 */ unsigned __int64 LastReplenishTime;
  /* 0x0070 */ unsigned __int64 LastFailureTime;
} MI_SLAB_ALLOCATOR_CONTEXT, *PMI_SLAB_ALLOCATOR_CONTEXT; /* size: 0x0078 */

typedef struct _MI_PARTITION_PAGE_LISTS
{
  /* 0x0000 */ struct _MMPFNLIST* FreePagesByColor[2];
  /* 0x0010 */ long Padding_288[12];
  /* 0x0040 */ struct _MMPFNLIST ZeroedPageListHead;
  /* 0x0068 */ long Padding_289[6];
  /* 0x0080 */ struct _MMPFNLIST FreePageListHead;
  /* 0x00a8 */ long Padding_290[6];
  /* 0x00c0 */ struct _MMPFNLIST StandbyPageListHead;
  /* 0x00e8 */ long Padding_291[6];
  /* 0x0100 */ struct _MMPFNLIST StandbyPageListByPriority[8];
  /* 0x0240 */ struct _MMPFNLIST ModifiedPageListNoReservation;
  /* 0x0268 */ long Padding_292[6];
  /* 0x0280 */ struct _MMPFNLIST ModifiedPageListByReservation[16];
  /* 0x0500 */ struct _MMPFNLIST MappedPageListHead[16];
  /* 0x0780 */ struct _MMPFNLIST BadPageListHead;
  /* 0x07a8 */ long Padding_293[6];
  /* 0x07c0 */ struct _MMPFNLIST EnclavePageListHead;
  /* 0x07e8 */ union _SLIST_HEADER* FreePageSlist[2];
  /* 0x07f8 */ struct _MMPFNLIST* PageLocationList[8];
  /* 0x0838 */ volatile unsigned long StandbyRepurposedByPriority[8];
  /* 0x0858 */ long Padding_294[10];
  /* 0x0880 */ volatile unsigned __int64 TransitionSharedPages;
  /* 0x0888 */ unsigned __int64 TransitionSharedPagesPeak[6];
  /* 0x08b8 */ struct _KEVENT MappedPageListHeadEvent[16];
  /* 0x0a38 */ struct _MI_DECAY_TIMER_LINK DecayClusterTimerHeads[4];
  /* 0x0a58 */ unsigned long DecayHand;
  /* 0x0a5c */ unsigned char StandbyListDiscard;
  /* 0x0a5d */ unsigned char FreeListDiscard;
  /* 0x0a5e */ unsigned char PfnBitMapsReady;
  /* 0x0a5f */ char Padding_295;
  /* 0x0a60 */ unsigned __int64 LastDecayHandUpdateTime;
  /* 0x0a68 */ struct _MI_LDW_WORK_CONTEXT LastChanceLdwContext;
  /* 0x0aa0 */ struct _RTL_AVL_TREE HugePfnBadPages;
  /* 0x0aa8 */ long Padding_296[6];
  /* 0x0ac0 */ unsigned __int64 AvailableEventsLock;
  /* 0x0ac8 */ struct _MI_AVAILABLE_PAGE_WAIT_STATES AvailablePageWaitStates[3];
  /* 0x0b28 */ void* MirrorListLocks;
  /* 0x0b30 */ long Padding_297[4];
  /* 0x0b40 */ volatile unsigned __int64 TransitionPrivatePages;
  /* 0x0b48 */ struct _RTL_BITMAP_EX LargePfnBitMap[2];
  /* 0x0b68 */ struct _MI_FREE_LARGE_PAGE_LIST* LargePageListHeads;
  /* 0x0b70 */ unsigned char* MediumPagesOnFreeZeroList;
  /* 0x0b78 */ struct _RTL_BITMAP_EX LargePageRebuildCandidates;
  /* 0x0b88 */ wchar_t* LargePagesOnFreeZeroList;
  /* 0x0b90 */ volatile long HugePageRebuildCandidatesExist;
  /* 0x0b94 */ long Padding_298;
  /* 0x0b98 */ struct _KEVENT LargePageCandidatesExistEvent;
  /* 0x0bb0 */ unsigned __int64 LowMemoryThreshold;
  /* 0x0bb8 */ unsigned __int64 HighMemoryThreshold;
  /* 0x0bc0 */ struct _MI_SLAB_ALLOCATOR_CONTEXT SlabContexts[4][2];
  /* 0x0f80 */ struct _RTL_BITMAP_EX SlabPfnBitMap;
  /* 0x0f90 */ void* HugePfnLists;
  /* 0x0f98 */ unsigned __int64 AvailableHugeIoRanges;
  /* 0x0fa0 */ long __PADDING__[8];
} MI_PARTITION_PAGE_LISTS, *PMI_PARTITION_PAGE_LISTS; /* size: 0x0fc0 */

typedef struct _HIVE_WAIT_PACKET
{
  /* 0x0000 */ struct _KEVENT WakeEvent;
  /* 0x0018 */ long Status;
  /* 0x001c */ long Padding_299;
  /* 0x0020 */ struct _HIVE_WAIT_PACKET* Next;
} HIVE_WAIT_PACKET, *PHIVE_WAIT_PACKET; /* size: 0x0028 */

typedef struct _POP_IRP_DATA
{
  /* 0x0000 */ struct _LIST_ENTRY Link;
  /* 0x0010 */ struct _IRP* Irp;
  /* 0x0018 */ struct _DEVICE_OBJECT* Pdo;
  /* 0x0020 */ struct _DEVICE_OBJECT* TargetDevice;
  /* 0x0028 */ struct _DEVICE_OBJECT* CurrentDevice;
  /* 0x0030 */ unsigned __int64 WatchdogStart;
  /* 0x0038 */ struct _KTIMER WatchdogTimer;
  /* 0x0078 */ struct _KDPC WatchdogDpc;
  /* 0x00b8 */ unsigned char MinorFunction;
  /* 0x00b9 */ char Padding_300[3];
  /* 0x00bc */ enum _POWER_STATE_TYPE PowerStateType;
  /* 0x00c0 */ union _POWER_STATE PowerState;
  /* 0x00c4 */ unsigned char WatchdogEnabled;
  /* 0x00c5 */ char Padding_301[3];
  /* 0x00c8 */ struct _POP_FX_DEVICE* FxDevice;
  /* 0x00d0 */ unsigned char SystemTransition;
  /* 0x00d1 */ unsigned char NotifyPEP;
  /* 0x00d2 */ char Padding_302[2];
  /* 0x00d4 */ long IrpSequenceID;
  union
  {
    struct
    {
      /* 0x00d8 */ void* CallerCompletion /* function */;
      /* 0x00e0 */ void* CallerContext;
      /* 0x00e8 */ struct _DEVICE_OBJECT* CallerDevice;
      /* 0x00f0 */ unsigned char SystemWake;
      /* 0x00f1 */ char __PADDING__[7];
    } /* size: 0x0020 */ Device;
    struct
    {
      /* 0x00d8 */ struct _PO_DEVICE_NOTIFY* NotifyDevice;
      /* 0x00e0 */ unsigned char FxDeviceActivated;
      /* 0x00e1 */ char __PADDING__[7];
    } /* size: 0x0010 */ System;
  }; /* size: 0x0020 */
  /* 0x00f8 */ enum _POP_PEP_NOTIFY_DEVICE_DSTATE_REASON DStateReason;
  /* 0x00fc */ long __PADDING__[1];
} POP_IRP_DATA, *PPOP_IRP_DATA; /* size: 0x0100 */

typedef struct _TRUSTLET_COLLABORATION_ID
{
  /* 0x0000 */ unsigned __int64 Value[2];
} TRUSTLET_COLLABORATION_ID, *PTRUSTLET_COLLABORATION_ID; /* size: 0x0010 */

typedef struct _POP_FX_PLUGIN
{
  /* 0x0000 */ struct _LIST_ENTRY Link;
  /* 0x0010 */ unsigned long Version;
  /* 0x0014 */ long Padding_303;
  /* 0x0018 */ unsigned __int64 Flags;
  /* 0x0020 */ struct _KQUEUE WorkQueue;
  /* 0x0060 */ void* AcceptDeviceNotification /* function */;
  /* 0x0068 */ void* AcceptProcessorNotification /* function */;
  /* 0x0070 */ void* AcceptAcpiNotification /* function */;
  /* 0x0078 */ struct _POP_FX_WORK_POOL PluginWorkPool;
} POP_FX_PLUGIN, *PPOP_FX_PLUGIN; /* size: 0x01a8 */

typedef struct _TRUSTLET_MAILBOX_KEY
{
  /* 0x0000 */ unsigned __int64 SecretValue[2];
} TRUSTLET_MAILBOX_KEY, *PTRUSTLET_MAILBOX_KEY; /* size: 0x0010 */

typedef struct _DEVICE_RELATIONS
{
  /* 0x0000 */ unsigned long Count;
  /* 0x0004 */ long Padding_304;
  /* 0x0008 */ struct _DEVICE_OBJECT* Objects[1];
} DEVICE_RELATIONS, *PDEVICE_RELATIONS; /* size: 0x0010 */

typedef struct _PNP_DEVICE_EVENT_ENTRY
{
  /* 0x0000 */ struct _LIST_ENTRY ListEntry;
  /* 0x0010 */ unsigned long Argument;
  /* 0x0014 */ long ArgumentStatus;
  /* 0x0018 */ struct _KEVENT* CallerEvent;
  /* 0x0020 */ void* Callback /* function */;
  /* 0x0028 */ void* Context;
  /* 0x0030 */ enum _PNP_VETO_TYPE* VetoType;
  /* 0x0038 */ struct _UNICODE_STRING* VetoName;
  /* 0x0040 */ unsigned long RefCount;
  /* 0x0044 */ unsigned long Lock;
  /* 0x0048 */ unsigned char Cancel;
  /* 0x0049 */ char Padding_305[7];
  /* 0x0050 */ struct _PNP_DEVICE_EVENT_ENTRY* Parent;
  /* 0x0058 */ struct _GUID ActivityId;
  /* 0x0068 */ struct _PNP_WATCHDOG* Watchdog;
  /* 0x0070 */ struct _PLUGPLAY_EVENT_BLOCK Data;
} PNP_DEVICE_EVENT_ENTRY, *PPNP_DEVICE_EVENT_ENTRY; /* size: 0x00c0 */

typedef union _WHEA_PROCESSOR_GENERIC_ERROR_SECTION_VALIDBITS
{
  union
  {
    struct /* bitfield */
    {
      /* 0x0000 */ unsigned __int64 ProcessorType : 1; /* bit position: 0 */
      /* 0x0000 */ unsigned __int64 InstructionSet : 1; /* bit position: 1 */
      /* 0x0000 */ unsigned __int64 ErrorType : 1; /* bit position: 2 */
      /* 0x0000 */ unsigned __int64 Operation : 1; /* bit position: 3 */
      /* 0x0000 */ unsigned __int64 Flags : 1; /* bit position: 4 */
      /* 0x0000 */ unsigned __int64 Level : 1; /* bit position: 5 */
      /* 0x0000 */ unsigned __int64 CPUVersion : 1; /* bit position: 6 */
      /* 0x0000 */ unsigned __int64 CPUBrandString : 1; /* bit position: 7 */
      /* 0x0000 */ unsigned __int64 ProcessorId : 1; /* bit position: 8 */
      /* 0x0000 */ unsigned __int64 TargetAddress : 1; /* bit position: 9 */
      /* 0x0000 */ unsigned __int64 RequesterId : 1; /* bit position: 10 */
      /* 0x0000 */ unsigned __int64 ResponderId : 1; /* bit position: 11 */
      /* 0x0000 */ unsigned __int64 InstructionPointer : 1; /* bit position: 12 */
      /* 0x0000 */ unsigned __int64 Reserved : 51; /* bit position: 13 */
    }; /* bitfield */
    /* 0x0000 */ unsigned __int64 ValidBits;
  }; /* size: 0x0008 */
} WHEA_PROCESSOR_GENERIC_ERROR_SECTION_VALIDBITS, *PWHEA_PROCESSOR_GENERIC_ERROR_SECTION_VALIDBITS; /* size: 0x0008 */

typedef struct _WDT_HANDLE
{
  /* 0x0000 */ char Reserved;
} WDT_HANDLE, *PWDT_HANDLE; /* size: 0x0001 */

typedef union _INVPCID_DESCRIPTOR
{
  union
  {
    struct
    {
      union
      {
        struct /* bitfield */
        {
          /* 0x0000 */ unsigned __int64 Pcid : 12; /* bit position: 0 */
          /* 0x0000 */ unsigned __int64 Reserved : 52; /* bit position: 12 */
        }; /* bitfield */
        /* 0x0000 */ unsigned __int64 EntirePcid;
      }; /* size: 0x0008 */
      /* 0x0008 */ unsigned __int64 Virtual;
    } /* size: 0x0010 */ IndividualAddress;
    struct
    {
      union
      {
        struct /* bitfield */
        {
          /* 0x0000 */ unsigned __int64 Pcid : 12; /* bit position: 0 */
          /* 0x0000 */ unsigned __int64 Reserved : 52; /* bit position: 12 */
        }; /* bitfield */
        /* 0x0000 */ unsigned __int64 EntirePcid;
      }; /* size: 0x0008 */
      /* 0x0008 */ unsigned __int64 Reserved2;
    } /* size: 0x0010 */ SingleContext;
    struct
    {
      /* 0x0000 */ unsigned __int64 Reserved[2];
    } /* size: 0x0010 */ AllContextAndGlobals;
    struct
    {
      /* 0x0000 */ unsigned __int64 Reserved[2];
    } /* size: 0x0010 */ AllContext;
  }; /* size: 0x0010 */
} INVPCID_DESCRIPTOR, *PINVPCID_DESCRIPTOR; /* size: 0x0010 */

typedef struct _CM_UOW_SET_VALUE_KEY_DATA
{
  /* 0x0000 */ unsigned long PreparedCell;
  /* 0x0004 */ unsigned long OldValueCell;
  /* 0x0008 */ unsigned short NameLength;
  /* 0x000a */ char Padding_306[2];
  /* 0x000c */ unsigned long DataSize;
} CM_UOW_SET_VALUE_KEY_DATA, *PCM_UOW_SET_VALUE_KEY_DATA; /* size: 0x0010 */

typedef struct _DEVICE_OBJECT_LIST
{
  /* 0x0000 */ unsigned long Count;
  /* 0x0004 */ unsigned long MaxCount;
  /* 0x0008 */ unsigned long TagCount;
  /* 0x000c */ enum _PNP_DEVICE_DELETE_TYPE OperationCode;
  /* 0x0010 */ struct _DEVICE_OBJECT_LIST_ENTRY Devices[1];
} DEVICE_OBJECT_LIST, *PDEVICE_OBJECT_LIST; /* size: 0x0028 */

typedef struct _MMSECURE_FLAGS
{
  struct /* bitfield */
  {
    /* 0x0000 */ unsigned long ReadOnly : 1; /* bit position: 0 */
    /* 0x0000 */ unsigned long ReadWrite : 1; /* bit position: 1 */
    /* 0x0000 */ unsigned long SecNoChange : 1; /* bit position: 2 */
    /* 0x0000 */ unsigned long NoDelete : 1; /* bit position: 3 */
    /* 0x0000 */ unsigned long RequiresPteReversal : 1; /* bit position: 4 */
    /* 0x0000 */ unsigned long ExclusiveSecure : 1; /* bit position: 5 */
    /* 0x0000 */ unsigned long UserModeOnly : 1; /* bit position: 6 */
    /* 0x0000 */ unsigned long NoInherit : 1; /* bit position: 7 */
    /* 0x0000 */ unsigned long CheckVad : 1; /* bit position: 8 */
    /* 0x0000 */ unsigned long Spare : 3; /* bit position: 9 */
  }; /* bitfield */
} MMSECURE_FLAGS, *PMMSECURE_FLAGS; /* size: 0x0004 */

typedef struct _MMADDRESS_LIST
{
  union
  {
    union
    {
      /* 0x0000 */ struct _MMSECURE_FLAGS Flags;
      /* 0x0000 */ unsigned long FlagsLong;
      /* 0x0000 */ void* StartVa;
    }; /* size: 0x0008 */
  } /* size: 0x0008 */ u1;
  /* 0x0008 */ void* EndVa;
} MMADDRESS_LIST, *PMMADDRESS_LIST; /* size: 0x0010 */

typedef struct _MI_LARGEPAGE_VAD_INFO
{
  /* 0x0000 */ unsigned char LargeImageBias;
  /* 0x0001 */ unsigned char Spare[3];
  /* 0x0004 */ long Padding_307;
  /* 0x0008 */ unsigned __int64 ActualImageViewSize;
  /* 0x0010 */ struct _EPARTITION* ReferencedPartition;
} MI_LARGEPAGE_VAD_INFO, *PMI_LARGEPAGE_VAD_INFO; /* size: 0x0018 */

typedef struct _MI_PHYSICAL_VIEW
{
  /* 0x0000 */ struct _RTL_BALANCED_NODE PhysicalNode;
  /* 0x0018 */ struct _MMVAD_SHORT* Vad;
  /* 0x0020 */ struct _AWEINFO* AweInfo;
  union
  {
    union
    {
      /* 0x0028 */ unsigned long ViewPageSize : 2; /* bit position: 0 */
      /* 0x0028 */ struct _CONTROL_AREA* ControlArea;
    }; /* size: 0x0008 */
  } /* size: 0x0008 */ u1;
} MI_PHYSICAL_VIEW, *PMI_PHYSICAL_VIEW; /* size: 0x0030 */

typedef struct _MI_VAD_EVENT_BLOCK
{
  /* 0x0000 */ struct _MI_VAD_EVENT_BLOCK* Next;
  union
  {
    /* 0x0008 */ struct _KGATE Gate;
    /* 0x0008 */ struct _MMADDRESS_LIST SecureInfo;
    /* 0x0008 */ struct _RTL_BITMAP_EX BitMap;
    /* 0x0008 */ struct _MMINPAGE_SUPPORT* InPageSupport;
    /* 0x0008 */ struct _MI_LARGEPAGE_VAD_INFO LargePage;
    /* 0x0008 */ struct _MI_PHYSICAL_VIEW AweView;
    /* 0x0008 */ struct _ETHREAD* CreatingThread;
    /* 0x0008 */ struct _MI_SUB64K_FREE_RANGES PebTeb;
    /* 0x0008 */ struct _MMVAD_SHORT* PlaceholderVad;
  }; /* size: 0x0038 */
  /* 0x0040 */ unsigned long WaitReason;
  /* 0x0044 */ long __PADDING__[1];
} MI_VAD_EVENT_BLOCK, *PMI_VAD_EVENT_BLOCK; /* size: 0x0048 */

typedef struct _PROCLOCALSAPIC
{
  /* 0x0000 */ unsigned char Type;
  /* 0x0001 */ unsigned char Length;
  /* 0x0002 */ unsigned char ACPIProcessorID;
  /* 0x0003 */ unsigned char APICID;
  /* 0x0004 */ unsigned char APICEID;
  /* 0x0005 */ unsigned char Reserved[3];
  /* 0x0008 */ unsigned long Flags;
  /* 0x000c */ unsigned long ACPIProcessorUIDInteger;
  /* 0x0010 */ char ACPIProcessorUIDString[1];
} PROCLOCALSAPIC, *PPROCLOCALSAPIC; /* size: 0x0011 */

typedef struct _PEP_WORK_IDLE_STATE
{
  /* 0x0000 */ struct POHANDLE__* DeviceHandle;
  /* 0x0008 */ unsigned long Component;
  /* 0x000c */ unsigned long State;
} PEP_WORK_IDLE_STATE, *PPEP_WORK_IDLE_STATE; /* size: 0x0010 */

typedef struct _PEP_WORK_DEVICE_POWER
{
  /* 0x0000 */ struct POHANDLE__* DeviceHandle;
  /* 0x0008 */ unsigned char PowerRequired;
  /* 0x0009 */ char __PADDING__[7];
} PEP_WORK_DEVICE_POWER, *PPEP_WORK_DEVICE_POWER; /* size: 0x0010 */

typedef struct _PEP_WORK_POWER_CONTROL
{
  /* 0x0000 */ struct POHANDLE__* DeviceHandle;
  /* 0x0008 */ const struct _GUID* PowerControlCode;
  /* 0x0010 */ void* RequestContext;
  /* 0x0018 */ void* InBuffer;
  /* 0x0020 */ unsigned __int64 InBufferSize;
  /* 0x0028 */ void* OutBuffer;
  /* 0x0030 */ unsigned __int64 OutBufferSize;
} PEP_WORK_POWER_CONTROL, *PPEP_WORK_POWER_CONTROL; /* size: 0x0038 */

typedef struct _PEP_WORK_COMPLETE_IDLE_STATE
{
  /* 0x0000 */ struct POHANDLE__* DeviceHandle;
  /* 0x0008 */ unsigned long Component;
  /* 0x000c */ long __PADDING__[1];
} PEP_WORK_COMPLETE_IDLE_STATE, *PPEP_WORK_COMPLETE_IDLE_STATE; /* size: 0x0010 */

typedef struct _PEP_WORK_ACPI_EVALUATE_CONTROL_METHOD_COMPLETE
{
  /* 0x0000 */ struct POHANDLE__* DeviceHandle;
  /* 0x0008 */ unsigned long CompletionFlags;
  /* 0x000c */ long MethodStatus;
  /* 0x0010 */ void* CompletionContext;
  /* 0x0018 */ unsigned __int64 OutputArgumentSize;
  /* 0x0020 */ struct _ACPI_METHOD_ARGUMENT_V1* OutputArguments;
} PEP_WORK_ACPI_EVALUATE_CONTROL_METHOD_COMPLETE, *PPEP_WORK_ACPI_EVALUATE_CONTROL_METHOD_COMPLETE; /* size: 0x0028 */

typedef struct _PEP_WORK_INFORMATION
{
  /* 0x0000 */ enum _PEP_WORK_TYPE WorkType;
  /* 0x0004 */ long Padding_308;
  union
  {
    /* 0x0008 */ struct _PEP_WORK_ACTIVE_COMPLETE ActiveComplete;
    /* 0x0008 */ struct _PEP_WORK_IDLE_STATE IdleState;
    /* 0x0008 */ struct _PEP_WORK_DEVICE_POWER DevicePower;
    /* 0x0008 */ struct _PEP_WORK_POWER_CONTROL PowerControl;
    /* 0x0008 */ struct _PEP_WORK_DEVICE_IDLE DeviceIdle;
    /* 0x0008 */ struct _PEP_WORK_COMPLETE_IDLE_STATE CompleteIdleState;
    /* 0x0008 */ struct _PEP_WORK_COMPLETE_PERF_STATE CompletePerfState;
    /* 0x0008 */ struct _PEP_WORK_ACPI_NOTIFY AcpiNotify;
    struct
    {
      /* 0x0008 */ struct _PEP_WORK_ACPI_EVALUATE_CONTROL_METHOD_COMPLETE ControlMethodComplete;
      /* 0x0030 */ long __PADDING__[4];
    }; /* size: 0x0038 */
  }; /* size: 0x0038 */
} PEP_WORK_INFORMATION, *PPEP_WORK_INFORMATION; /* size: 0x0040 */

struct POHANDLE__
{
  /* 0x0000 */ int unused;
}; /* size: 0x0004 */

typedef struct _MMPFNENTRY1
{
  struct /* bitfield */
  {
    /* 0x0000 */ unsigned char PageLocation : 3; /* bit position: 0 */
    /* 0x0000 */ unsigned char WriteInProgress : 1; /* bit position: 3 */
    /* 0x0000 */ unsigned char Modified : 1; /* bit position: 4 */
    /* 0x0000 */ unsigned char ReadInProgress : 1; /* bit position: 5 */
    /* 0x0000 */ unsigned char CacheAttribute : 2; /* bit position: 6 */
  }; /* bitfield */
} MMPFNENTRY1, *PMMPFNENTRY1; /* size: 0x0001 */

typedef struct _MMPFNENTRY3
{
  struct /* bitfield */
  {
    /* 0x0000 */ unsigned char Priority : 3; /* bit position: 0 */
    /* 0x0000 */ unsigned char OnProtectedStandby : 1; /* bit position: 3 */
    /* 0x0000 */ unsigned char InPageError : 1; /* bit position: 4 */
    /* 0x0000 */ unsigned char SystemChargedPage : 1; /* bit position: 5 */
    /* 0x0000 */ unsigned char RemovalRequested : 1; /* bit position: 6 */
    /* 0x0000 */ unsigned char ParityError : 1; /* bit position: 7 */
  }; /* bitfield */
} MMPFNENTRY3, *PMMPFNENTRY3; /* size: 0x0001 */

typedef struct _ACPI_METHOD_ARGUMENT_V1
{
  /* 0x0000 */ unsigned short Type;
  /* 0x0002 */ unsigned short DataLength;
  union
  {
    /* 0x0004 */ unsigned long Argument;
    struct
    {
      /* 0x0004 */ unsigned char Data[1];
      /* 0x0005 */ char __PADDING__[3];
    }; /* size: 0x0004 */
  }; /* size: 0x0004 */
} ACPI_METHOD_ARGUMENT_V1, *PACPI_METHOD_ARGUMENT_V1; /* size: 0x0008 */

typedef struct _WHEA_RECOVERY_CONTEXT
{
  union
  {
    struct
    {
      /* 0x0000 */ unsigned __int64 Address;
      /* 0x0008 */ unsigned char Consumed;
      /* 0x0009 */ char Padding_309;
      /* 0x000a */ unsigned short ErrorCode;
      /* 0x000c */ unsigned char ErrorIpValid;
      /* 0x000d */ unsigned char RestartIpValid;
      /* 0x000e */ unsigned char ClearPoison;
      /* 0x000f */ char __PADDING__[1];
    } /* size: 0x0010 */ MemoryError;
    struct
    {
      /* 0x0000 */ unsigned __int64 PmemErrInfo;
    } /* size: 0x0008 */ PmemError;
  }; /* size: 0x0010 */
  /* 0x0010 */ unsigned __int64 PartitionId;
  /* 0x0018 */ unsigned int VpIndex;
  /* 0x001c */ enum _WHEA_RECOVERY_CONTEXT_ERROR_TYPE ErrorType;
} WHEA_RECOVERY_CONTEXT, *PWHEA_RECOVERY_CONTEXT; /* size: 0x0020 */

typedef struct _DMA_OPERATIONS
{
  /* 0x0000 */ unsigned long Size;
  /* 0x0004 */ long Padding_310;
  /* 0x0008 */ void* PutDmaAdapter /* function */;
  /* 0x0010 */ void* AllocateCommonBuffer /* function */;
  /* 0x0018 */ void* FreeCommonBuffer /* function */;
  /* 0x0020 */ void* AllocateAdapterChannel /* function */;
  /* 0x0028 */ void* FlushAdapterBuffers /* function */;
  /* 0x0030 */ void* FreeAdapterChannel /* function */;
  /* 0x0038 */ void* FreeMapRegisters /* function */;
  /* 0x0040 */ void* MapTransfer /* function */;
  /* 0x0048 */ void* GetDmaAlignment /* function */;
  /* 0x0050 */ void* ReadDmaCounter /* function */;
  /* 0x0058 */ void* GetScatterGatherList /* function */;
  /* 0x0060 */ void* PutScatterGatherList /* function */;
  /* 0x0068 */ void* CalculateScatterGatherList /* function */;
  /* 0x0070 */ void* BuildScatterGatherList /* function */;
  /* 0x0078 */ void* BuildMdlFromScatterGatherList /* function */;
  /* 0x0080 */ void* GetDmaAdapterInfo /* function */;
  /* 0x0088 */ void* GetDmaTransferInfo /* function */;
  /* 0x0090 */ void* InitializeDmaTransferContext /* function */;
  /* 0x0098 */ void* AllocateCommonBufferEx /* function */;
  /* 0x00a0 */ void* AllocateAdapterChannelEx /* function */;
  /* 0x00a8 */ void* ConfigureAdapterChannel /* function */;
  /* 0x00b0 */ void* CancelAdapterChannel /* function */;
  /* 0x00b8 */ void* MapTransferEx /* function */;
  /* 0x00c0 */ void* GetScatterGatherListEx /* function */;
  /* 0x00c8 */ void* BuildScatterGatherListEx /* function */;
  /* 0x00d0 */ void* FlushAdapterBuffersEx /* function */;
  /* 0x00d8 */ void* FreeAdapterObject /* function */;
  /* 0x00e0 */ void* CancelMappedTransfer /* function */;
  /* 0x00e8 */ void* AllocateDomainCommonBuffer /* function */;
  /* 0x00f0 */ void* FlushDmaBuffer /* function */;
  /* 0x00f8 */ void* JoinDmaDomain /* function */;
  /* 0x0100 */ void* LeaveDmaDomain /* function */;
  /* 0x0108 */ void* GetDmaDomain /* function */;
  /* 0x0110 */ void* AllocateCommonBufferWithBounds /* function */;
  /* 0x0118 */ void* AllocateCommonBufferVector /* function */;
  /* 0x0120 */ void* GetCommonBufferFromVectorByIndex /* function */;
  /* 0x0128 */ void* FreeCommonBufferFromVector /* function */;
  /* 0x0130 */ void* FreeCommonBufferVector /* function */;
} DMA_OPERATIONS, *PDMA_OPERATIONS; /* size: 0x0138 */

typedef struct _PEP_CRASHDUMP_INFORMATION
{
  /* 0x0000 */ struct PEPHANDLE__* DeviceHandle;
  /* 0x0008 */ void* DeviceContext;
} PEP_CRASHDUMP_INFORMATION, *PPEP_CRASHDUMP_INFORMATION; /* size: 0x0010 */

typedef union _POP_FX_COMPONENT_FLAGS
{
  union
  {
    struct
    {
      /* 0x0000 */ long Value;
      /* 0x0004 */ long Value2;
    }; /* size: 0x0008 */
    struct
    {
      struct /* bitfield */
      {
        /* 0x0000 */ unsigned long RefCount : 30; /* bit position: 0 */
        /* 0x0000 */ unsigned long Idling : 1; /* bit position: 30 */
        /* 0x0000 */ unsigned long Active : 1; /* bit position: 31 */
      }; /* bitfield */
      struct /* bitfield */
      {
        /* 0x0004 */ unsigned long CriticalIdleOverride : 1; /* bit position: 0 */
        /* 0x0004 */ unsigned long ResidentOverride : 1; /* bit position: 1 */
        /* 0x0004 */ unsigned long Reserved : 30; /* bit position: 2 */
      }; /* bitfield */
    }; /* size: 0x0008 */
  }; /* size: 0x0008 */
} POP_FX_COMPONENT_FLAGS, *PPOP_FX_COMPONENT_FLAGS; /* size: 0x0008 */

typedef struct _POP_FX_COMPONENT
{
  /* 0x0000 */ struct _GUID Id;
  /* 0x0010 */ unsigned long Index;
  /* 0x0014 */ long Padding_311;
  /* 0x0018 */ struct _POP_FX_WORK_ORDER WorkOrder;
  /* 0x0050 */ struct _POP_FX_DEVICE* Device;
  /* 0x0058 */ volatile union _POP_FX_COMPONENT_FLAGS Flags;
  /* 0x0060 */ volatile long Resident;
  /* 0x0064 */ long Padding_312;
  /* 0x0068 */ struct _KEVENT ActiveEvent;
  /* 0x0080 */ unsigned __int64 IdleLock;
  /* 0x0088 */ volatile long IdleConditionComplete;
  /* 0x008c */ volatile long IdleStateComplete;
  /* 0x0090 */ unsigned __int64 IdleStamp;
  /* 0x0098 */ volatile unsigned long CurrentIdleState;
  /* 0x009c */ unsigned long IdleStateCount;
  /* 0x00a0 */ struct _POP_FX_IDLE_STATE* IdleStates;
  /* 0x00a8 */ unsigned long DeepestWakeableIdleState;
  /* 0x00ac */ unsigned long ProviderCount;
  /* 0x00b0 */ struct _POP_FX_PROVIDER* Providers;
  /* 0x00b8 */ unsigned long IdleProviderCount;
  /* 0x00bc */ unsigned long DependentCount;
  /* 0x00c0 */ struct _POP_FX_DEPENDENT* Dependents;
  /* 0x00c8 */ struct _POP_FX_ACCOUNTING Accounting;
  /* 0x01a8 */ struct _POP_FX_PERF_INFO* Performance;
  /* 0x01b0 */ struct _POP_COMPONENT_POWER_PROFILE* PowerProfile;
} POP_FX_COMPONENT, *PPOP_FX_COMPONENT; /* size: 0x01b8 */

typedef struct _POP_FX_IDLE_STATE
{
  /* 0x0000 */ unsigned __int64 TransitionLatency;
  /* 0x0008 */ unsigned __int64 ResidencyRequirement;
  /* 0x0010 */ unsigned long NominalPower;
  /* 0x0014 */ long __PADDING__[1];
} POP_FX_IDLE_STATE, *PPOP_FX_IDLE_STATE; /* size: 0x0018 */

typedef struct _POP_FX_PERF_INFO
{
  /* 0x0000 */ struct _POP_FX_COMPONENT* Component;
  /* 0x0008 */ struct _KEVENT CompletedEvent;
  /* 0x0020 */ void* ComponentPerfState /* function */;
  /* 0x0028 */ volatile union _POP_FX_PERF_FLAGS Flags;
  /* 0x002c */ long Padding_313;
  /* 0x0030 */ struct _PO_FX_PERF_STATE_CHANGE* LastChange;
  /* 0x0038 */ unsigned long LastChangeCount;
  /* 0x003c */ long Padding_314;
  /* 0x0040 */ unsigned __int64 LastChangeStamp;
  /* 0x0048 */ unsigned char LastChangeNominal;
  /* 0x0049 */ unsigned char PepRegistered;
  /* 0x004a */ unsigned char QueryOnIdleStates;
  /* 0x004b */ char Padding_315[5];
  /* 0x0050 */ void* volatile RequestDriverContext;
  /* 0x0058 */ struct _POP_FX_WORK_ORDER WorkOrder;
  /* 0x0090 */ unsigned long SetsCount;
  /* 0x0094 */ long Padding_316;
  /* 0x0098 */ struct _POP_FX_PERF_SET* Sets;
} POP_FX_PERF_INFO, *PPOP_FX_PERF_INFO; /* size: 0x00a0 */

typedef union _WHEAP_ERROR_RECORD_WRAPPER_FLAGS
{
  union
  {
    struct /* bitfield */
    {
      /* 0x0000 */ unsigned long Preallocated : 1; /* bit position: 0 */
      /* 0x0000 */ unsigned long FromPersistentStore : 1; /* bit position: 1 */
      /* 0x0000 */ unsigned long PlatformPfaControl : 1; /* bit position: 2 */
      /* 0x0000 */ unsigned long PlatformDirectedOffline : 1; /* bit position: 3 */
      /* 0x0000 */ unsigned long Reserved : 28; /* bit position: 4 */
    }; /* bitfield */
    /* 0x0000 */ unsigned long AsULONG;
  }; /* size: 0x0004 */
} WHEAP_ERROR_RECORD_WRAPPER_FLAGS, *PWHEAP_ERROR_RECORD_WRAPPER_FLAGS; /* size: 0x0004 */

typedef struct _PO_FX_PERF_STATE_CHANGE
{
  /* 0x0000 */ unsigned long Set;
  /* 0x0004 */ long Padding_317;
  union
  {
    /* 0x0008 */ unsigned long StateIndex;
    /* 0x0008 */ unsigned __int64 StateValue;
  }; /* size: 0x0008 */
} PO_FX_PERF_STATE_CHANGE, *PPO_FX_PERF_STATE_CHANGE; /* size: 0x0010 */

typedef union _WHEA_REVISION
{
  union
  {
    struct
    {
      /* 0x0000 */ unsigned char MinorRevision;
      /* 0x0001 */ unsigned char MajorRevision;
    }; /* size: 0x0002 */
    /* 0x0000 */ unsigned short AsUSHORT;
  }; /* size: 0x0002 */
} WHEA_REVISION, *PWHEA_REVISION; /* size: 0x0002 */

typedef struct _WHEA_ERROR_RECORD_HEADER
{
  /* 0x0000 */ unsigned long Signature;
  /* 0x0004 */ union _WHEA_REVISION Revision;
  /* 0x0006 */ unsigned long SignatureEnd;
  /* 0x000a */ unsigned short SectionCount;
  /* 0x000c */ enum _WHEA_ERROR_SEVERITY Severity;
  /* 0x0010 */ union _WHEA_ERROR_RECORD_HEADER_VALIDBITS ValidBits;
  /* 0x0014 */ unsigned long Length;
  /* 0x0018 */ union _WHEA_TIMESTAMP Timestamp;
  /* 0x0020 */ struct _GUID PlatformId;
  /* 0x0030 */ struct _GUID PartitionId;
  /* 0x0040 */ struct _GUID CreatorId;
  /* 0x0050 */ struct _GUID NotifyType;
  /* 0x0060 */ unsigned __int64 RecordId;
  /* 0x0068 */ union _WHEA_ERROR_RECORD_HEADER_FLAGS Flags;
  /* 0x006c */ union _WHEA_PERSISTENCE_INFO PersistenceInfo;
  /* 0x0074 */ unsigned char Reserved[12];
} WHEA_ERROR_RECORD_HEADER, *PWHEA_ERROR_RECORD_HEADER; /* size: 0x0080 */

typedef union _WHEA_ERROR_RECORD_SECTION_DESCRIPTOR_VALIDBITS
{
  union
  {
    struct /* bitfield */
    {
      /* 0x0000 */ unsigned char FRUId : 1; /* bit position: 0 */
      /* 0x0000 */ unsigned char FRUText : 1; /* bit position: 1 */
      /* 0x0000 */ unsigned char Reserved : 6; /* bit position: 2 */
    }; /* bitfield */
    /* 0x0000 */ unsigned char AsUCHAR;
  }; /* size: 0x0001 */
} WHEA_ERROR_RECORD_SECTION_DESCRIPTOR_VALIDBITS, *PWHEA_ERROR_RECORD_SECTION_DESCRIPTOR_VALIDBITS; /* size: 0x0001 */

typedef struct _WHEA_ERROR_RECORD_SECTION_DESCRIPTOR
{
  /* 0x0000 */ unsigned long SectionOffset;
  /* 0x0004 */ unsigned long SectionLength;
  /* 0x0008 */ union _WHEA_REVISION Revision;
  /* 0x000a */ union _WHEA_ERROR_RECORD_SECTION_DESCRIPTOR_VALIDBITS ValidBits;
  /* 0x000b */ unsigned char Reserved;
  /* 0x000c */ union _WHEA_ERROR_RECORD_SECTION_DESCRIPTOR_FLAGS Flags;
  /* 0x0010 */ struct _GUID SectionType;
  /* 0x0020 */ struct _GUID FRUId;
  /* 0x0030 */ enum _WHEA_ERROR_SEVERITY SectionSeverity;
  /* 0x0034 */ char FRUText[20];
} WHEA_ERROR_RECORD_SECTION_DESCRIPTOR, *PWHEA_ERROR_RECORD_SECTION_DESCRIPTOR; /* size: 0x0048 */

typedef struct _WHEA_ERROR_RECORD
{
  /* 0x0000 */ struct _WHEA_ERROR_RECORD_HEADER Header;
  /* 0x0080 */ struct _WHEA_ERROR_RECORD_SECTION_DESCRIPTOR SectionDescriptor[1];
} WHEA_ERROR_RECORD, *PWHEA_ERROR_RECORD; /* size: 0x00c8 */

typedef struct _WHEAP_ERROR_RECORD_WRAPPER
{
  /* 0x0000 */ struct _LIST_ENTRY WorkEntry;
  /* 0x0010 */ unsigned long Length;
  /* 0x0014 */ unsigned long ProcessorNumber;
  /* 0x0018 */ union _WHEAP_ERROR_RECORD_WRAPPER_FLAGS Flags;
  /* 0x001c */ volatile long InUse;
  /* 0x0020 */ struct _WHEAP_ERROR_SOURCE* ErrorSource;
  /* 0x0028 */ struct _WHEA_ERROR_RECORD ErrorRecord;
} WHEAP_ERROR_RECORD_WRAPPER, *PWHEAP_ERROR_RECORD_WRAPPER; /* size: 0x00f0 */

typedef struct _PO_FX_PERF_STATE
{
  /* 0x0000 */ unsigned __int64 Value;
  /* 0x0008 */ void* Context;
} PO_FX_PERF_STATE, *PPO_FX_PERF_STATE; /* size: 0x0010 */

typedef struct _CM_PATH_HASH
{
  /* 0x0000 */ unsigned long Hash;
} CM_PATH_HASH, *PCM_PATH_HASH; /* size: 0x0004 */

typedef struct _CM_KEY_HASH
{
  /* 0x0000 */ struct _CM_PATH_HASH ConvKey;
  /* 0x0004 */ long Padding_318;
  /* 0x0008 */ struct _CM_KEY_HASH* NextHash;
  /* 0x0010 */ struct _HHIVE* KeyHive;
  /* 0x0018 */ unsigned long KeyCell;
  /* 0x001c */ long __PADDING__[1];
} CM_KEY_HASH, *PCM_KEY_HASH; /* size: 0x0020 */

typedef struct _CHILD_LIST
{
  /* 0x0000 */ unsigned long Count;
  /* 0x0004 */ unsigned long List;
} CHILD_LIST, *PCHILD_LIST; /* size: 0x0008 */

typedef struct _CM_KEY_CONTROL_BLOCK
{
  /* 0x0000 */ unsigned __int64 RefCount;
  struct /* bitfield */
  {
    /* 0x0008 */ unsigned long ExtFlags : 16; /* bit position: 0 */
    /* 0x0008 */ unsigned long Freed : 1; /* bit position: 16 */
    /* 0x0008 */ unsigned long Discarded : 1; /* bit position: 17 */
    /* 0x0008 */ unsigned long HiveUnloaded : 1; /* bit position: 18 */
    /* 0x0008 */ unsigned long Decommissioned : 1; /* bit position: 19 */
    /* 0x0008 */ unsigned long SpareExtFlag : 1; /* bit position: 20 */
    /* 0x0008 */ unsigned long TotalLevels : 10; /* bit position: 21 */
  }; /* bitfield */
  /* 0x000c */ long Padding_319;
  union
  {
    /* 0x0010 */ struct _CM_KEY_HASH KeyHash;
    struct
    {
      /* 0x0010 */ struct _CM_PATH_HASH ConvKey;
      /* 0x0014 */ long Padding_320;
      /* 0x0018 */ struct _CM_KEY_HASH* NextHash;
      /* 0x0020 */ struct _HHIVE* KeyHive;
      /* 0x0028 */ unsigned long KeyCell;
    }; /* size: 0x0018 */
  }; /* size: 0x0020 */
  /* 0x0030 */ struct _EX_PUSH_LOCK KcbPushlock;
  union
  {
    /* 0x0038 */ struct _KTHREAD* Owner;
    /* 0x0038 */ long SharedCount;
  }; /* size: 0x0008 */
  struct /* bitfield */
  {
    /* 0x0040 */ unsigned char DelayedDeref : 1; /* bit position: 0 */
    /* 0x0040 */ unsigned char DelayedClose : 1; /* bit position: 1 */
    /* 0x0040 */ unsigned char Parking : 1; /* bit position: 2 */
  }; /* bitfield */
  /* 0x0041 */ unsigned char LayerSemantics;
  /* 0x0042 */ short LayerHeight;
  /* 0x0044 */ unsigned long Spare1;
  /* 0x0048 */ struct _CM_KEY_CONTROL_BLOCK* ParentKcb;
  /* 0x0050 */ struct _CM_NAME_CONTROL_BLOCK* NameBlock;
  /* 0x0058 */ struct _CM_KEY_SECURITY_CACHE* CachedSecurity;
  /* 0x0060 */ struct _CHILD_LIST ValueList;
  /* 0x0068 */ struct _CM_KEY_CONTROL_BLOCK* LinkTarget;
  union
  {
    /* 0x0070 */ struct _CM_INDEX_HINT_BLOCK* IndexHint;
    /* 0x0070 */ unsigned long HashKey;
    /* 0x0070 */ unsigned long SubKeyCount;
  }; /* size: 0x0008 */
  union
  {
    /* 0x0078 */ struct _LIST_ENTRY KeyBodyListHead;
    /* 0x0078 */ struct _LIST_ENTRY ClonedListEntry;
  }; /* size: 0x0010 */
  /* 0x0088 */ struct _CM_KEY_BODY* KeyBodyArray[4];
  /* 0x00a8 */ union _LARGE_INTEGER KcbLastWriteTime;
  /* 0x00b0 */ unsigned short KcbMaxNameLen;
  /* 0x00b2 */ unsigned short KcbMaxValueNameLen;
  /* 0x00b4 */ unsigned long KcbMaxValueDataLen;
  struct /* bitfield */
  {
    /* 0x00b8 */ unsigned long KcbUserFlags : 4; /* bit position: 0 */
    /* 0x00b8 */ unsigned long KcbVirtControlFlags : 4; /* bit position: 4 */
    /* 0x00b8 */ unsigned long KcbDebug : 8; /* bit position: 8 */
    /* 0x00b8 */ unsigned long Flags : 16; /* bit position: 16 */
  }; /* bitfield */
  /* 0x00bc */ unsigned long Spare3;
  /* 0x00c0 */ struct _CM_KCB_LAYER_INFO* LayerInfo;
  /* 0x00c8 */ char* RealKeyName;
  /* 0x00d0 */ struct _LIST_ENTRY KCBUoWListHead;
  union
  {
    /* 0x00e0 */ struct _LIST_ENTRY DelayQueueEntry;
    /* 0x00e0 */ volatile unsigned char* Stolen;
  }; /* size: 0x0010 */
  /* 0x00f0 */ struct _CM_TRANS* TransKCBOwner;
  /* 0x00f8 */ struct _CM_INTENT_LOCK KCBLock;
  /* 0x0108 */ struct _CM_INTENT_LOCK KeyLock;
  /* 0x0118 */ struct _CHILD_LIST TransValueCache;
  /* 0x0120 */ struct _CM_TRANS* TransValueListOwner;
  union
  {
    /* 0x0128 */ struct _UNICODE_STRING* FullKCBName;
    struct /* bitfield */
    {
      /* 0x0128 */ unsigned __int64 FullKCBNameStale : 1; /* bit position: 0 */
      /* 0x0128 */ unsigned __int64 Reserved : 63; /* bit position: 1 */
    }; /* bitfield */
  }; /* size: 0x0008 */
  /* 0x0130 */ unsigned __int64 SequenceNumber;
} CM_KEY_CONTROL_BLOCK, *PCM_KEY_CONTROL_BLOCK; /* size: 0x0138 */

typedef struct _POP_POWER_PLANE
{
  /* 0x0000 */ struct _UNICODE_STRING PowerPlaneId;
  /* 0x0010 */ unsigned __int64 Lock;
  /* 0x0018 */ unsigned char OldIrql;
  /* 0x0019 */ char Padding_321[3];
  /* 0x001c */ volatile long DevicePowerMw;
  /* 0x0020 */ void* PmaxHandle;
  /* 0x0028 */ void* NotifyDevicePowerDraw /* function */;
  /* 0x0030 */ unsigned __int64 DeviceCount;
  /* 0x0038 */ struct _POP_DEVICE_POWER_PROFILE** Devices;
} POP_POWER_PLANE, *PPOP_POWER_PLANE; /* size: 0x0040 */

typedef struct _PROCLOCALAPIC
{
  /* 0x0000 */ unsigned char Type;
  /* 0x0001 */ unsigned char Length;
  /* 0x0002 */ unsigned char ACPIProcessorID;
  /* 0x0003 */ unsigned char APICID;
  /* 0x0004 */ unsigned long Flags;
} PROCLOCALAPIC, *PPROCLOCALAPIC; /* size: 0x0008 */

typedef struct _PEBS_DS_SAVE_AREA32
{
  /* 0x0000 */ unsigned long BtsBufferBase;
  /* 0x0004 */ unsigned long BtsIndex;
  /* 0x0008 */ unsigned long BtsAbsoluteMaximum;
  /* 0x000c */ unsigned long BtsInterruptThreshold;
  /* 0x0010 */ unsigned long PebsBufferBase;
  /* 0x0014 */ unsigned long PebsIndex;
  /* 0x0018 */ unsigned long PebsAbsoluteMaximum;
  /* 0x001c */ unsigned long PebsInterruptThreshold;
  /* 0x0020 */ unsigned __int64 PebsGpCounterReset[8];
  /* 0x0060 */ unsigned __int64 PebsFixedCounterReset[4];
} PEBS_DS_SAVE_AREA32, *PPEBS_DS_SAVE_AREA32; /* size: 0x0080 */

typedef struct _PEBS_DS_SAVE_AREA
{
  union
  {
    /* 0x0000 */ struct _PEBS_DS_SAVE_AREA32 As32Bit;
    /* 0x0000 */ struct _PEBS_DS_SAVE_AREA64 As64Bit;
  }; /* size: 0x00a0 */
} PEBS_DS_SAVE_AREA, *PPEBS_DS_SAVE_AREA; /* size: 0x00a0 */

typedef struct _PROCESSOR_PROFILE_CONTROL_AREA
{
  /* 0x0000 */ struct _PEBS_DS_SAVE_AREA PebsDsSaveArea;
} PROCESSOR_PROFILE_CONTROL_AREA, *PPROCESSOR_PROFILE_CONTROL_AREA; /* size: 0x00a0 */

typedef struct _MMEXTEND_INFO
{
  /* 0x0000 */ unsigned __int64 CommittedSize;
  /* 0x0008 */ unsigned long ReferenceCount;
  /* 0x000c */ long __PADDING__[1];
} MMEXTEND_INFO, *PMMEXTEND_INFO; /* size: 0x0010 */

typedef struct _RTL_DYNAMIC_HASH_TABLE_CONTEXT
{
  /* 0x0000 */ struct _LIST_ENTRY* ChainHead;
  /* 0x0008 */ struct _LIST_ENTRY* PrevLinkage;
  /* 0x0010 */ unsigned __int64 Signature;
} RTL_DYNAMIC_HASH_TABLE_CONTEXT, *PRTL_DYNAMIC_HASH_TABLE_CONTEXT; /* size: 0x0018 */

struct wil_details_StagingConfig
{
  /* 0x0000 */ enum wil_FeatureStore store;
  /* 0x0004 */ int forUpdate;
  /* 0x0008 */ unsigned long readChangeStamp;
  /* 0x000c */ unsigned char readVersion;
  /* 0x000d */ char Padding_322[3];
  /* 0x0010 */ int modified;
  /* 0x0014 */ long Padding_323;
  /* 0x0018 */ struct wil_details_StagingConfigHeader* header;
  /* 0x0020 */ struct wil_details_StagingConfigFeature* features;
  /* 0x0028 */ struct wil_details_StagingConfigUsageTrigger* triggers;
  /* 0x0030 */ int changedInSession;
  /* 0x0034 */ long Padding_324;
  /* 0x0038 */ void* buffer;
  /* 0x0040 */ unsigned __int64 bufferSize;
  /* 0x0048 */ unsigned __int64 bufferAlloc;
  /* 0x0050 */ int bufferOwned;
  /* 0x0054 */ long __PADDING__[1];
}; /* size: 0x0058 */

typedef struct _TERMINATION_PORT
{
  /* 0x0000 */ struct _TERMINATION_PORT* Next;
  /* 0x0008 */ void* Port;
} TERMINATION_PORT, *PTERMINATION_PORT; /* size: 0x0010 */

typedef struct _JOB_RATE_CONTROL_HEADER
{
  /* 0x0000 */ void* RateControlQuotaReference;
  /* 0x0008 */ struct _RTL_BITMAP OverQuotaHistory;
  /* 0x0018 */ unsigned char* BitMapBuffer;
  /* 0x0020 */ unsigned __int64 BitMapBufferSize;
} JOB_RATE_CONTROL_HEADER, *PJOB_RATE_CONTROL_HEADER; /* size: 0x0028 */

typedef struct _PS_IO_CONTROL_ENTRY
{
  union
  {
    /* 0x0000 */ struct _RTL_BALANCED_NODE VolumeTreeNode;
    struct
    {
      /* 0x0000 */ struct _LIST_ENTRY FreeListEntry;
      /* 0x0010 */ unsigned __int64 ReservedForParentValue;
    }; /* size: 0x0018 */
  }; /* size: 0x0018 */
  /* 0x0018 */ unsigned __int64 VolumeKey;
  /* 0x0020 */ struct _EX_RUNDOWN_REF Rundown;
  /* 0x0028 */ void* IoControl;
  /* 0x0030 */ void* VolumeIoAttribution;
} PS_IO_CONTROL_ENTRY, *PPS_IO_CONTROL_ENTRY; /* size: 0x0038 */

typedef union _JOBOBJECT_ENERGY_TRACKING_STATE
{
  union
  {
    /* 0x0000 */ unsigned __int64 Value;
    struct
    {
      /* 0x0000 */ unsigned long UpdateMask;
      /* 0x0004 */ unsigned long DesiredState;
    }; /* size: 0x0008 */
  }; /* size: 0x0008 */
} JOBOBJECT_ENERGY_TRACKING_STATE, *PJOBOBJECT_ENERGY_TRACKING_STATE; /* size: 0x0008 */

typedef struct _EJOB
{
  /* 0x0000 */ struct _KEVENT Event;
  /* 0x0018 */ struct _LIST_ENTRY JobLinks;
  /* 0x0028 */ struct _LIST_ENTRY ProcessListHead;
  /* 0x0038 */ struct _ERESOURCE JobLock;
  /* 0x00a0 */ union _LARGE_INTEGER TotalUserTime;
  /* 0x00a8 */ union _LARGE_INTEGER TotalKernelTime;
  /* 0x00b0 */ union _LARGE_INTEGER TotalCycleTime;
  /* 0x00b8 */ union _LARGE_INTEGER ThisPeriodTotalUserTime;
  /* 0x00c0 */ union _LARGE_INTEGER ThisPeriodTotalKernelTime;
  /* 0x00c8 */ unsigned __int64 TotalContextSwitches;
  /* 0x00d0 */ unsigned long TotalPageFaultCount;
  /* 0x00d4 */ unsigned long TotalProcesses;
  /* 0x00d8 */ unsigned long ActiveProcesses;
  /* 0x00dc */ unsigned long TotalTerminatedProcesses;
  /* 0x00e0 */ union _LARGE_INTEGER PerProcessUserTimeLimit;
  /* 0x00e8 */ union _LARGE_INTEGER PerJobUserTimeLimit;
  /* 0x00f0 */ unsigned __int64 MinimumWorkingSetSize;
  /* 0x00f8 */ unsigned __int64 MaximumWorkingSetSize;
  /* 0x0100 */ unsigned long LimitFlags;
  /* 0x0104 */ unsigned long ActiveProcessLimit;
  /* 0x0108 */ struct _KAFFINITY_EX Affinity;
  /* 0x01b0 */ struct _JOB_ACCESS_STATE* AccessState;
  /* 0x01b8 */ void* AccessStateQuotaReference;
  /* 0x01c0 */ unsigned long UIRestrictionsClass;
  /* 0x01c4 */ unsigned long EndOfJobTimeAction;
  /* 0x01c8 */ void* CompletionPort;
  /* 0x01d0 */ void* CompletionKey;
  /* 0x01d8 */ unsigned __int64 CompletionCount;
  /* 0x01e0 */ unsigned long SessionId;
  /* 0x01e4 */ unsigned long SchedulingClass;
  /* 0x01e8 */ unsigned __int64 ReadOperationCount;
  /* 0x01f0 */ unsigned __int64 WriteOperationCount;
  /* 0x01f8 */ unsigned __int64 OtherOperationCount;
  /* 0x0200 */ unsigned __int64 ReadTransferCount;
  /* 0x0208 */ unsigned __int64 WriteTransferCount;
  /* 0x0210 */ unsigned __int64 OtherTransferCount;
  /* 0x0218 */ struct _PROCESS_DISK_COUNTERS DiskIoInfo;
  /* 0x0240 */ unsigned __int64 ProcessMemoryLimit;
  /* 0x0248 */ unsigned __int64 JobMemoryLimit;
  /* 0x0250 */ unsigned __int64 JobTotalMemoryLimit;
  /* 0x0258 */ unsigned __int64 PeakProcessMemoryUsed;
  /* 0x0260 */ unsigned __int64 PeakJobMemoryUsed;
  /* 0x0268 */ struct _KAFFINITY_EX EffectiveAffinity;
  /* 0x0310 */ union _LARGE_INTEGER EffectivePerProcessUserTimeLimit;
  /* 0x0318 */ unsigned __int64 EffectiveMinimumWorkingSetSize;
  /* 0x0320 */ unsigned __int64 EffectiveMaximumWorkingSetSize;
  /* 0x0328 */ unsigned __int64 EffectiveProcessMemoryLimit;
  /* 0x0330 */ struct _EJOB* EffectiveProcessMemoryLimitJob;
  /* 0x0338 */ struct _EJOB* EffectivePerProcessUserTimeLimitJob;
  /* 0x0340 */ struct _EJOB* EffectiveNetIoRateLimitJob;
  /* 0x0348 */ struct _EJOB* EffectiveHeapAttributionJob;
  /* 0x0350 */ unsigned long EffectiveLimitFlags;
  /* 0x0354 */ unsigned long EffectiveSchedulingClass;
  /* 0x0358 */ unsigned long EffectiveFreezeCount;
  /* 0x035c */ unsigned long EffectiveBackgroundCount;
  /* 0x0360 */ unsigned long EffectiveSwapCount;
  /* 0x0364 */ unsigned long EffectiveNotificationLimitCount;
  /* 0x0368 */ unsigned char EffectivePriorityClass;
  /* 0x0369 */ unsigned char PriorityClass;
  /* 0x036a */ unsigned char NestingDepth;
  /* 0x036b */ unsigned char Reserved1[1];
  /* 0x036c */ unsigned long CompletionFilter;
  union
  {
    /* 0x0370 */ struct _WNF_STATE_NAME WakeChannel;
    /* 0x0370 */ struct _PS_JOB_WAKE_INFORMATION WakeInfo;
  }; /* size: 0x0048 */
  /* 0x03b8 */ struct _JOBOBJECT_WAKE_FILTER WakeFilter;
  /* 0x03c0 */ unsigned long LowEdgeLatchFilter;
  /* 0x03c4 */ long Padding_325;
  /* 0x03c8 */ struct _EJOB* NotificationLink;
  /* 0x03d0 */ unsigned __int64 CurrentJobMemoryUsed;
  /* 0x03d8 */ struct _JOB_NOTIFICATION_INFORMATION* NotificationInfo;
  /* 0x03e0 */ void* NotificationInfoQuotaReference;
  /* 0x03e8 */ struct _IO_MINI_COMPLETION_PACKET_USER* NotificationPacket;
  /* 0x03f0 */ struct _JOB_CPU_RATE_CONTROL* CpuRateControl;
  /* 0x03f8 */ void* EffectiveSchedulingGroup;
  /* 0x0400 */ unsigned __int64 ReadyTime;
  /* 0x0408 */ struct _EX_PUSH_LOCK MemoryLimitsLock;
  /* 0x0410 */ struct _LIST_ENTRY SiblingJobLinks;
  /* 0x0420 */ struct _LIST_ENTRY ChildJobListHead;
  /* 0x0430 */ struct _EJOB* ParentJob;
  /* 0x0438 */ struct _EJOB* volatile RootJob;
  /* 0x0440 */ struct _LIST_ENTRY IteratorListHead;
  /* 0x0450 */ unsigned __int64 AncestorCount;
  union
  {
    /* 0x0458 */ struct _EJOB** Ancestors;
    /* 0x0458 */ void* SessionObject;
  }; /* size: 0x0008 */
  /* 0x0460 */ struct _EPROCESS_VALUES Accounting;
  /* 0x04c8 */ unsigned long ShadowActiveProcessCount;
  /* 0x04cc */ unsigned long ActiveAuxiliaryProcessCount;
  /* 0x04d0 */ unsigned long SequenceNumber;
  /* 0x04d4 */ unsigned long JobId;
  /* 0x04d8 */ struct _GUID ContainerId;
  /* 0x04e8 */ struct _GUID ContainerTelemetryId;
  /* 0x04f8 */ struct _ESERVERSILO_GLOBALS* ServerSiloGlobals;
  /* 0x0500 */ struct _PS_PROPERTY_SET PropertySet;
  /* 0x0518 */ struct _PSP_STORAGE* Storage;
  /* 0x0520 */ struct _JOB_NET_RATE_CONTROL* NetRateControl;
  union
  {
    /* 0x0528 */ unsigned long JobFlags;
    struct /* bitfield */
    {
      /* 0x0528 */ unsigned long CloseDone : 1; /* bit position: 0 */
      /* 0x0528 */ unsigned long MultiGroup : 1; /* bit position: 1 */
      /* 0x0528 */ unsigned long OutstandingNotification : 1; /* bit position: 2 */
      /* 0x0528 */ unsigned long NotificationInProgress : 1; /* bit position: 3 */
      /* 0x0528 */ unsigned long UILimits : 1; /* bit position: 4 */
      /* 0x0528 */ unsigned long CpuRateControlActive : 1; /* bit position: 5 */
      /* 0x0528 */ unsigned long OwnCpuRateControl : 1; /* bit position: 6 */
      /* 0x0528 */ unsigned long Terminating : 1; /* bit position: 7 */
      /* 0x0528 */ unsigned long WorkingSetLock : 1; /* bit position: 8 */
      /* 0x0528 */ unsigned long JobFrozen : 1; /* bit position: 9 */
      /* 0x0528 */ unsigned long Background : 1; /* bit position: 10 */
      /* 0x0528 */ unsigned long WakeNotificationAllocated : 1; /* bit position: 11 */
      /* 0x0528 */ unsigned long WakeNotificationEnabled : 1; /* bit position: 12 */
      /* 0x0528 */ unsigned long WakeNotificationPending : 1; /* bit position: 13 */
      /* 0x0528 */ unsigned long LimitNotificationRequired : 1; /* bit position: 14 */
      /* 0x0528 */ unsigned long ZeroCountNotificationRequired : 1; /* bit position: 15 */
      /* 0x0528 */ unsigned long CycleTimeNotificationRequired : 1; /* bit position: 16 */
      /* 0x0528 */ unsigned long CycleTimeNotificationPending : 1; /* bit position: 17 */
      /* 0x0528 */ unsigned long TimersVirtualized : 1; /* bit position: 18 */
      /* 0x0528 */ unsigned long JobSwapped : 1; /* bit position: 19 */
      /* 0x0528 */ unsigned long ViolationDetected : 1; /* bit position: 20 */
      /* 0x0528 */ unsigned long EmptyJobNotified : 1; /* bit position: 21 */
      /* 0x0528 */ unsigned long NoSystemCharge : 1; /* bit position: 22 */
      /* 0x0528 */ unsigned long DropNoWakeCharges : 1; /* bit position: 23 */
      /* 0x0528 */ unsigned long NoWakeChargePolicyDecided : 1; /* bit position: 24 */
      /* 0x0528 */ unsigned long NetRateControlActive : 1; /* bit position: 25 */
      /* 0x0528 */ unsigned long OwnNetRateControl : 1; /* bit position: 26 */
      /* 0x0528 */ unsigned long IoRateControlActive : 1; /* bit position: 27 */
      /* 0x0528 */ unsigned long OwnIoRateControl : 1; /* bit position: 28 */
      /* 0x0528 */ unsigned long DisallowNewProcesses : 1; /* bit position: 29 */
      /* 0x0528 */ unsigned long Silo : 1; /* bit position: 30 */
      /* 0x0528 */ unsigned long ContainerTelemetryIdSet : 1; /* bit position: 31 */
    }; /* bitfield */
  }; /* size: 0x0004 */
  union
  {
    /* 0x052c */ unsigned long JobFlags2;
    struct /* bitfield */
    {
      /* 0x052c */ unsigned long ParentLocked : 1; /* bit position: 0 */
      /* 0x052c */ unsigned long EnableUsermodeSiloThreadImpersonation : 1; /* bit position: 1 */
      /* 0x052c */ unsigned long DisallowUsermodeSiloThreadImpersonation : 1; /* bit position: 2 */
    }; /* bitfield */
  }; /* size: 0x0004 */
  /* 0x0530 */ struct _PROCESS_EXTENDED_ENERGY_VALUES* EnergyValues;
  /* 0x0538 */ volatile unsigned __int64 SharedCommitCharge;
  /* 0x0540 */ unsigned long DiskIoAttributionUserRefCount;
  /* 0x0544 */ unsigned long DiskIoAttributionRefCount;
  union
  {
    /* 0x0548 */ void* DiskIoAttributionContext;
    /* 0x0548 */ struct _EJOB* DiskIoAttributionOwnerJob;
  }; /* size: 0x0008 */
  /* 0x0550 */ struct _JOB_RATE_CONTROL_HEADER IoRateControlHeader;
  /* 0x0578 */ struct _PS_IO_CONTROL_ENTRY GlobalIoControl;
  /* 0x05b0 */ volatile long IoControlStateLock;
  /* 0x05b4 */ long Padding_326;
  /* 0x05b8 */ struct _RTL_RB_TREE VolumeIoControlTree;
  /* 0x05c8 */ unsigned __int64 IoRateOverQuotaHistory;
  /* 0x05d0 */ unsigned long IoRateCurrentGeneration;
  /* 0x05d4 */ unsigned long IoRateLastQueryGeneration;
  /* 0x05d8 */ unsigned long IoRateGenerationLength;
  /* 0x05dc */ unsigned long IoRateOverQuotaNotifySequenceId;
  /* 0x05e0 */ unsigned __int64 LastThrottledIoTime;
  /* 0x05e8 */ struct _EX_PUSH_LOCK IoControlLock;
  /* 0x05f0 */ __int64 SiloHardReferenceCount;
  /* 0x05f8 */ struct _WORK_QUEUE_ITEM RundownWorkItem;
  /* 0x0618 */ void* PartitionObject;
  /* 0x0620 */ struct _EJOB* PartitionOwnerJob;
  /* 0x0628 */ union _JOBOBJECT_ENERGY_TRACKING_STATE EnergyTrackingState;
  /* 0x0630 */ unsigned __int64 KernelWaitTime;
  /* 0x0638 */ unsigned __int64 UserWaitTime;
} EJOB, *PEJOB; /* size: 0x0640 */

typedef struct _MMSECTION_FLAGS2
{
  /* 0x0000 */ unsigned short PartitionId : 10; /* bit position: 0 */
  struct /* bitfield */
  {
    /* 0x0002 */ unsigned char NoCrossPartitionAccess : 1; /* bit position: 0 */
    /* 0x0002 */ unsigned char SubsectionCrossPartitionReferenceOverflow : 1; /* bit position: 1 */
  }; /* bitfield */
  /* 0x0003 */ char __PADDING__[1];
} MMSECTION_FLAGS2, *PMMSECTION_FLAGS2; /* size: 0x0004 */

typedef struct _EXT_IOMMU_DEVICE_ID_TEST
{
  /* 0x0000 */ unsigned __int64 UniqueId;
} EXT_IOMMU_DEVICE_ID_TEST, *PEXT_IOMMU_DEVICE_ID_TEST; /* size: 0x0008 */

typedef struct _ECP_LIST
{
  /* 0x0000 */ unsigned long Signature;
  /* 0x0004 */ unsigned long Flags;
  /* 0x0008 */ struct _LIST_ENTRY EcpList;
} ECP_LIST, *PECP_LIST; /* size: 0x0018 */

struct _JOB_NOTIFICATION_INFORMATION;

typedef struct _REGISTERED_INTERRUPT_CONTROLLER
{
  /* 0x0000 */ struct _LIST_ENTRY ListEntry;
  /* 0x0010 */ void* InternalData;
  /* 0x0018 */ unsigned long InternalDataSize;
  /* 0x001c */ long Padding_327;
  /* 0x0020 */ struct _INTERRUPT_FUNCTION_TABLE FunctionTable;
  /* 0x00d8 */ enum _KNOWN_CONTROLLER_TYPE KnownType;
  /* 0x00dc */ unsigned long Capabilities;
  /* 0x00e0 */ unsigned long Flags;
  /* 0x00e4 */ unsigned long MaxPriority;
  /* 0x00e8 */ unsigned long UnitId;
  /* 0x00ec */ long Padding_328;
  /* 0x00f0 */ struct _LIST_ENTRY LinesHead;
  /* 0x0100 */ struct _LIST_ENTRY OutputLinesHead;
  /* 0x0110 */ long MinLine;
  /* 0x0114 */ long MaxLine;
  /* 0x0118 */ unsigned long MaxClusterSize;
  /* 0x011c */ unsigned long MaxClusters;
  /* 0x0120 */ unsigned long InterruptReplayDataSize;
  /* 0x0124 */ enum _INTERRUPT_PROBLEM Problem;
  /* 0x0128 */ long ProblemStatus;
  /* 0x012c */ long Padding_329;
  /* 0x0130 */ const char* ProblemSourceFile;
  /* 0x0138 */ unsigned long ProblemSourceLine;
  /* 0x013c */ unsigned long CustomProblem;
  /* 0x0140 */ long CustomProblemStatus;
  /* 0x0144 */ long Padding_330;
  /* 0x0148 */ struct _UNICODE_STRING ResourceId;
  /* 0x0158 */ struct POHANDLE__* PowerHandle;
} REGISTERED_INTERRUPT_CONTROLLER, *PREGISTERED_INTERRUPT_CONTROLLER; /* size: 0x0160 */

struct _JOB_CPU_RATE_CONTROL;

typedef struct _DEVICE_MAP
{
  /* 0x0000 */ struct _OBJECT_DIRECTORY* DosDevicesDirectory;
  /* 0x0008 */ struct _OBJECT_DIRECTORY* GlobalDosDevicesDirectory;
  /* 0x0010 */ void* DosDevicesDirectoryHandle;
  /* 0x0018 */ volatile long ReferenceCount;
  /* 0x001c */ unsigned long DriveMap;
  /* 0x0020 */ unsigned char DriveType[32];
  /* 0x0040 */ struct _EJOB* ServerSilo;
} DEVICE_MAP, *PDEVICE_MAP; /* size: 0x0048 */

struct _ACTIVATION_CONTEXT_DATA;

typedef struct _SID_AND_ATTRIBUTES
{
  /* 0x0000 */ void* Sid;
  /* 0x0008 */ unsigned long Attributes;
  /* 0x000c */ long __PADDING__[1];
} SID_AND_ATTRIBUTES, *PSID_AND_ATTRIBUTES; /* size: 0x0010 */

typedef struct _AUTHZBASEP_SECURITY_ATTRIBUTES_INFORMATION
{
  /* 0x0000 */ unsigned long SecurityAttributeCount;
  /* 0x0004 */ long Padding_331;
  /* 0x0008 */ struct _LIST_ENTRY SecurityAttributesList;
  /* 0x0018 */ unsigned long WorkingSecurityAttributeCount;
  /* 0x001c */ long Padding_332;
  /* 0x0020 */ struct _LIST_ENTRY WorkingSecurityAttributesList;
} AUTHZBASEP_SECURITY_ATTRIBUTES_INFORMATION, *PAUTHZBASEP_SECURITY_ATTRIBUTES_INFORMATION; /* size: 0x0030 */

typedef struct _MI_WRITE_MODES
{
  /* 0x0000 */ unsigned __int64 WriteType[2];
} MI_WRITE_MODES, *PMI_WRITE_MODES; /* size: 0x0010 */

typedef struct _ETW_GUID_ENTRY
{
  /* 0x0000 */ struct _LIST_ENTRY GuidList;
  /* 0x0010 */ struct _LIST_ENTRY SiloGuidList;
  /* 0x0020 */ volatile __int64 RefCount;
  /* 0x0028 */ struct _GUID Guid;
  /* 0x0038 */ struct _LIST_ENTRY RegListHead;
  /* 0x0048 */ void* SecurityDescriptor;
  union
  {
    /* 0x0050 */ struct _ETW_LAST_ENABLE_INFO LastEnable;
    /* 0x0050 */ unsigned __int64 MatchId;
  }; /* size: 0x0010 */
  /* 0x0060 */ struct _TRACE_ENABLE_INFO ProviderEnableInfo;
  /* 0x0080 */ struct _TRACE_ENABLE_INFO EnableInfo[8];
  /* 0x0180 */ struct _ETW_FILTER_HEADER* FilterData;
  /* 0x0188 */ struct _ETW_SILODRIVERSTATE* SiloState;
  /* 0x0190 */ struct _ETW_GUID_ENTRY* HostEntry;
  /* 0x0198 */ struct _EX_PUSH_LOCK Lock;
  /* 0x01a0 */ struct _ETHREAD* LockOwner;
} ETW_GUID_ENTRY, *PETW_GUID_ENTRY; /* size: 0x01a8 */

typedef struct _ETW_PRIV_HANDLE_DEMUX_TABLE
{
  /* 0x0000 */ struct _RTL_RB_TREE Tree;
  /* 0x0010 */ struct _EX_PUSH_LOCK Lock;
  /* 0x0018 */ unsigned short SequenceNumber;
  /* 0x001a */ char __PADDING__[6];
} ETW_PRIV_HANDLE_DEMUX_TABLE, *PETW_PRIV_HANDLE_DEMUX_TABLE; /* size: 0x0020 */

typedef struct _ETW_COUNTERS
{
  /* 0x0000 */ long GuidCount;
  /* 0x0004 */ long PoolUsage[2];
  /* 0x000c */ long SessionCount;
} ETW_COUNTERS, *PETW_COUNTERS; /* size: 0x0010 */

typedef struct _ETW_SYSTEM_LOGGER
{
  /* 0x0000 */ unsigned char LoggerId;
  /* 0x0001 */ unsigned char ClockType;
} ETW_SYSTEM_LOGGER, *PETW_SYSTEM_LOGGER; /* size: 0x0002 */

typedef struct _ETW_SYSTEM_LOGGER_SETTINGS
{
  /* 0x0000 */ struct _ETW_SYSTEM_LOGGER EtwpSystemLogger[8];
  /* 0x0010 */ volatile unsigned long EtwpActiveSystemLoggers;
  /* 0x0014 */ struct _PERFINFO_GROUPMASK SiloGlobalGroupMask;
  /* 0x0034 */ struct _PERFINFO_GROUPMASK EtwpGroupMasks[10];
} ETW_SYSTEM_LOGGER_SETTINGS, *PETW_SYSTEM_LOGGER_SETTINGS; /* size: 0x0174 */

typedef struct _ETW_SILODRIVERSTATE
{
  /* 0x0000 */ struct _EJOB* Silo;
  /* 0x0008 */ struct _ESERVERSILO_GLOBALS* SiloGlobals;
  /* 0x0010 */ unsigned long MaxLoggers;
  /* 0x0014 */ long Padding_333;
  /* 0x0018 */ struct _ETW_GUID_ENTRY EtwpSecurityProviderGuidEntry;
  /* 0x01c0 */ struct _EX_RUNDOWN_REF_CACHE_AWARE** EtwpLoggerRundown;
  /* 0x01c8 */ struct _WMI_LOGGER_CONTEXT** EtwpLoggerContext;
  /* 0x01d0 */ struct _ETW_HASH_BUCKET EtwpGuidHashTable[64];
  /* 0x0fd0 */ unsigned short EtwpSecurityLoggers[8];
  /* 0x0fe0 */ unsigned char EtwpSecurityProviderEnableMask;
  /* 0x0fe1 */ char Padding_334[3];
  /* 0x0fe4 */ long EtwpShutdownInProgress;
  /* 0x0fe8 */ unsigned long EtwpSecurityProviderPID;
  /* 0x0fec */ long Padding_335;
  /* 0x0ff0 */ struct _ETW_PRIV_HANDLE_DEMUX_TABLE PrivHandleDemuxTable;
  /* 0x1010 */ struct _ETW_COUNTERS EtwpCounters;
  /* 0x1020 */ union _LARGE_INTEGER LogfileBytesWritten;
  /* 0x1028 */ struct _ETW_SILO_TRACING_BLOCK* ProcessorBlocks;
  /* 0x1030 */ struct _EX_WNF_SUBSCRIPTION* ContainerRestoreWnfSubscription;
  /* 0x1038 */ struct _GUID PartitionId;
  /* 0x1048 */ struct _GUID ParentId;
  /* 0x1058 */ union _LARGE_INTEGER QpcOffsetFromRoot;
  /* 0x1060 */ char* PartitionName;
  /* 0x1068 */ unsigned short PartitionNameSize;
  /* 0x106a */ unsigned short UnusedPadding;
  /* 0x106c */ unsigned long PartitionType;
  /* 0x1070 */ struct _ETW_SYSTEM_LOGGER_SETTINGS SystemLoggerSettings;
  /* 0x11e4 */ long Padding_336;
  /* 0x11e8 */ struct _KMUTANT EtwpStartTraceMutex;
} ETW_SILODRIVERSTATE, *PETW_SILODRIVERSTATE; /* size: 0x1220 */

typedef struct _ETW_FILTER_HEADER
{
  /* 0x0000 */ long FilterFlags;
  /* 0x0004 */ long Padding_337;
  /* 0x0008 */ struct _ETW_FILTER_PID* PidFilter;
  /* 0x0010 */ struct _ETW_FILTER_STRING_TOKEN* ExeFilter;
  /* 0x0018 */ struct _ETW_FILTER_STRING_TOKEN* PkgIdFilter;
  /* 0x0020 */ struct _ETW_FILTER_STRING_TOKEN* PkgAppIdFilter;
  /* 0x0028 */ struct _ETW_FILTER_STRING_TOKEN* ContainerFilter;
  /* 0x0030 */ struct _ETW_PERFECT_HASH_FUNCTION* StackWalkIdFilter;
  /* 0x0038 */ struct _ETW_FILTER_EVENT_NAME_DATA* StackWalkNameFilter;
  /* 0x0040 */ struct _EVENT_FILTER_LEVEL_KW* StackWalkLevelKwFilter;
  /* 0x0048 */ struct _ETW_PERFECT_HASH_FUNCTION* EventIdFilter;
  /* 0x0050 */ struct _ETW_PAYLOAD_FILTER* PayloadFilter;
  /* 0x0058 */ struct _EVENT_FILTER_HEADER* ProviderSideFilter;
  /* 0x0060 */ struct _ETW_FILTER_EVENT_NAME_DATA* EventNameFilter;
} ETW_FILTER_HEADER, *PETW_FILTER_HEADER; /* size: 0x0068 */

typedef struct _ETW_FILTER_PID
{
  /* 0x0000 */ unsigned long Count;
  /* 0x0004 */ unsigned long Pids[8];
} ETW_FILTER_PID, *PETW_FILTER_PID; /* size: 0x0024 */

typedef struct _HARDWARE_PTE
{
  struct /* bitfield */
  {
    /* 0x0000 */ unsigned __int64 Valid : 1; /* bit position: 0 */
    /* 0x0000 */ unsigned __int64 Write : 1; /* bit position: 1 */
    /* 0x0000 */ unsigned __int64 Owner : 1; /* bit position: 2 */
    /* 0x0000 */ unsigned __int64 WriteThrough : 1; /* bit position: 3 */
    /* 0x0000 */ unsigned __int64 CacheDisable : 1; /* bit position: 4 */
    /* 0x0000 */ unsigned __int64 Accessed : 1; /* bit position: 5 */
    /* 0x0000 */ unsigned __int64 Dirty : 1; /* bit position: 6 */
    /* 0x0000 */ unsigned __int64 LargePage : 1; /* bit position: 7 */
    /* 0x0000 */ unsigned __int64 Global : 1; /* bit position: 8 */
    /* 0x0000 */ unsigned __int64 CopyOnWrite : 1; /* bit position: 9 */
    /* 0x0000 */ unsigned __int64 Prototype : 1; /* bit position: 10 */
    /* 0x0000 */ unsigned __int64 reserved0 : 1; /* bit position: 11 */
    /* 0x0000 */ unsigned __int64 PageFrameNumber : 36; /* bit position: 12 */
    /* 0x0000 */ unsigned __int64 reserved1 : 4; /* bit position: 48 */
    /* 0x0000 */ unsigned __int64 SoftwareWsIndex : 11; /* bit position: 52 */
    /* 0x0000 */ unsigned __int64 NoExecute : 1; /* bit position: 63 */
  }; /* bitfield */
} HARDWARE_PTE, *PHARDWARE_PTE; /* size: 0x0008 */

typedef struct _MI_WRITE_CALIBRATION
{
  /* 0x0000 */ unsigned long MaximumNumberProcessors;
  /* 0x0004 */ enum _MI_WRITE_TYPES OptimalWriteType;
  /* 0x0008 */ unsigned __int64 PerProcessorNumberOfBytes;
  /* 0x0010 */ unsigned long OptimalWriteProcessors[2];
  /* 0x0018 */ struct _MI_WRITE_MODES* RawTimeStamps;
} MI_WRITE_CALIBRATION, *PMI_WRITE_CALIBRATION; /* size: 0x0020 */

typedef struct _MI_PARTITION_ZEROING
{
  /* 0x0000 */ struct _KEVENT PageEvent;
  /* 0x0018 */ unsigned char ThreadPriorityStatic;
  /* 0x0019 */ unsigned char AdaptiveZeroingEnabled;
  /* 0x001a */ char Padding_338[2];
  /* 0x001c */ long ZeroFreePageSlistMinimum;
  /* 0x0020 */ struct _WORK_QUEUE_ITEM RebalanceZeroFreeWorkItem;
  /* 0x0040 */ volatile long NodeCount;
  /* 0x0044 */ volatile long BackgroundZeroingDisabled;
  /* 0x0048 */ struct _KGATE LargeBootZeroingComplete;
  /* 0x0060 */ struct _MI_WRITE_CALIBRATION WriteCalibration;
  /* 0x0080 */ unsigned char IpiCalibrationFailed;
  /* 0x0081 */ char Padding_339[3];
  /* 0x0084 */ volatile long ActiveProcessorsForIpiCalibration;
  /* 0x0088 */ volatile long NodesReadyForIpiCalibration;
  /* 0x008c */ long Padding_340;
  /* 0x0090 */ struct _KEVENT ReleaseNodeZeroingThreads;
  /* 0x00a8 */ struct _MI_ZERO_THREAD_CONTEXT* ThreadContext;
} MI_PARTITION_ZEROING, *PMI_PARTITION_ZEROING; /* size: 0x00b0 */

struct _ETW_PERFECT_HASH_FUNCTION;

typedef struct _ETW_FILTER_EVENT_NAME_DATA
{
  /* 0x0000 */ unsigned char FilterIn;
  /* 0x0001 */ unsigned char Level;
  /* 0x0002 */ char Padding_341[6];
  /* 0x0008 */ unsigned __int64 MatchAnyKeyword;
  /* 0x0010 */ unsigned __int64 MatchAllKeyword;
  /* 0x0018 */ struct _RTL_HASH_TABLE NameTable;
} ETW_FILTER_EVENT_NAME_DATA, *PETW_FILTER_EVENT_NAME_DATA; /* size: 0x0028 */

typedef struct _PEB_LDR_DATA
{
  /* 0x0000 */ unsigned long Length;
  /* 0x0004 */ unsigned char Initialized;
  /* 0x0005 */ char Padding_342[3];
  /* 0x0008 */ void* SsHandle;
  /* 0x0010 */ struct _LIST_ENTRY InLoadOrderModuleList;
  /* 0x0020 */ struct _LIST_ENTRY InMemoryOrderModuleList;
  /* 0x0030 */ struct _LIST_ENTRY InInitializationOrderModuleList;
  /* 0x0040 */ void* EntryInProgress;
  /* 0x0048 */ unsigned char ShutdownInProgress;
  /* 0x0049 */ char Padding_343[7];
  /* 0x0050 */ void* ShutdownThreadId;
} PEB_LDR_DATA, *PPEB_LDR_DATA; /* size: 0x0058 */

typedef struct _EVENT_FILTER_HEADER
{
  /* 0x0000 */ unsigned short Id;
  /* 0x0002 */ unsigned char Version;
  /* 0x0003 */ unsigned char Reserved[5];
  /* 0x0008 */ unsigned __int64 InstanceId;
  /* 0x0010 */ unsigned long Size;
  /* 0x0014 */ unsigned long NextOffset;
} EVENT_FILTER_HEADER, *PEVENT_FILTER_HEADER; /* size: 0x0018 */

typedef union _MM_PAGE_ACCESS_INFO_FLAGS
{
  union
  {
    struct
    {
      struct /* bitfield */
      {
        /* 0x0000 */ unsigned long FilePointerIndex : 9; /* bit position: 0 */
        /* 0x0000 */ unsigned long HardFault : 1; /* bit position: 9 */
        /* 0x0000 */ unsigned long Image : 1; /* bit position: 10 */
        /* 0x0000 */ unsigned long Spare0 : 1; /* bit position: 11 */
      }; /* bitfield */
    } /* size: 0x0004 */ File;
    struct
    {
      struct /* bitfield */
      {
        /* 0x0000 */ unsigned long FilePointerIndex : 9; /* bit position: 0 */
        /* 0x0000 */ unsigned long HardFault : 1; /* bit position: 9 */
        /* 0x0000 */ unsigned long Spare1 : 2; /* bit position: 10 */
      }; /* bitfield */
    } /* size: 0x0004 */ Private;
  }; /* size: 0x0004 */
} MM_PAGE_ACCESS_INFO_FLAGS, *PMM_PAGE_ACCESS_INFO_FLAGS; /* size: 0x0004 */

typedef struct _EX_RUNDOWN_REF_CACHE_AWARE
{
  /* 0x0000 */ struct _EX_RUNDOWN_REF* RunRefs;
  /* 0x0008 */ void* PoolToFree;
  /* 0x0010 */ unsigned long RunRefSize;
  /* 0x0014 */ unsigned long Number;
} EX_RUNDOWN_REF_CACHE_AWARE, *PEX_RUNDOWN_REF_CACHE_AWARE; /* size: 0x0018 */

typedef struct _ETW_PARTITION_CONTEXT
{
  /* 0x0000 */ struct _EPARTITION* Partition;
} ETW_PARTITION_CONTEXT, *PETW_PARTITION_CONTEXT; /* size: 0x0008 */

typedef struct _WMI_LOGGER_CONTEXT
{
  /* 0x0000 */ unsigned long LoggerId;
  /* 0x0004 */ unsigned long BufferSize;
  /* 0x0008 */ unsigned long MaximumEventSize;
  /* 0x000c */ unsigned long LoggerMode;
  /* 0x0010 */ long AcceptNewEvents;
  /* 0x0014 */ unsigned long EventMarker[2];
  /* 0x001c */ unsigned long ErrorMarker;
  /* 0x0020 */ unsigned long SizeMask;
  /* 0x0024 */ long Padding_344;
  /* 0x0028 */ unsigned __int64 GetCpuClock;
  /* 0x0030 */ struct _ETHREAD* LoggerThread;
  /* 0x0038 */ long LoggerStatus;
  /* 0x003c */ unsigned long FailureReason;
  /* 0x0040 */ struct _ETW_BUFFER_QUEUE BufferQueue;
  /* 0x0050 */ struct _ETW_BUFFER_QUEUE OverflowQueue;
  /* 0x0060 */ struct _LIST_ENTRY GlobalList;
  /* 0x0070 */ struct _LIST_ENTRY DebugIdTrackingList;
  /* 0x0080 */ struct _ETW_DECODE_CONTROL_ENTRY* DecodeControlList;
  /* 0x0088 */ unsigned long DecodeControlCount;
  /* 0x008c */ long Padding_345;
  union
  {
    /* 0x0090 */ struct _WMI_BUFFER_HEADER* BatchedBufferList;
    /* 0x0090 */ struct _EX_FAST_REF CurrentBuffer;
  }; /* size: 0x0008 */
  /* 0x0098 */ struct _UNICODE_STRING LoggerName;
  /* 0x00a8 */ struct _UNICODE_STRING LogFileName;
  /* 0x00b8 */ struct _UNICODE_STRING LogFilePattern;
  /* 0x00c8 */ struct _UNICODE_STRING NewLogFileName;
  /* 0x00d8 */ unsigned long ClockType;
  /* 0x00dc */ unsigned long LastFlushedBuffer;
  /* 0x00e0 */ unsigned long FlushTimer;
  /* 0x00e4 */ unsigned long FlushThreshold;
  /* 0x00e8 */ union _LARGE_INTEGER ByteOffset;
  /* 0x00f0 */ unsigned long MinimumBuffers;
  /* 0x00f4 */ volatile long BuffersAvailable;
  /* 0x00f8 */ volatile long NumberOfBuffers;
  /* 0x00fc */ unsigned long MaximumBuffers;
  /* 0x0100 */ volatile unsigned long EventsLost;
  /* 0x0104 */ volatile long PeakBuffersCount;
  /* 0x0108 */ unsigned long BuffersWritten;
  /* 0x010c */ unsigned long LogBuffersLost;
  /* 0x0110 */ unsigned long RealTimeBuffersDelivered;
  /* 0x0114 */ unsigned long RealTimeBuffersLost;
  /* 0x0118 */ long* SequencePtr;
  /* 0x0120 */ unsigned long LocalSequence;
  /* 0x0124 */ struct _GUID InstanceGuid;
  /* 0x0134 */ unsigned long MaximumFileSize;
  /* 0x0138 */ long FileCounter;
  /* 0x013c */ enum _POOL_TYPE PoolType;
  /* 0x0140 */ struct _ETW_REF_CLOCK ReferenceTime;
  /* 0x0150 */ long CollectionOn;
  /* 0x0154 */ unsigned long ProviderInfoSize;
  /* 0x0158 */ struct _LIST_ENTRY Consumers;
  /* 0x0168 */ unsigned long NumConsumers;
  /* 0x016c */ long Padding_346;
  /* 0x0170 */ struct _ETW_REALTIME_CONSUMER* TransitionConsumer;
  /* 0x0178 */ void* RealtimeLogfileHandle;
  /* 0x0180 */ struct _UNICODE_STRING RealtimeLogfileName;
  /* 0x0190 */ union _LARGE_INTEGER RealtimeWriteOffset;
  /* 0x0198 */ union _LARGE_INTEGER RealtimeReadOffset;
  /* 0x01a0 */ union _LARGE_INTEGER RealtimeLogfileSize;
  /* 0x01a8 */ unsigned __int64 RealtimeLogfileUsage;
  /* 0x01b0 */ unsigned __int64 RealtimeMaximumFileSize;
  /* 0x01b8 */ unsigned long RealtimeBuffersSaved;
  /* 0x01bc */ long Padding_347;
  /* 0x01c0 */ struct _ETW_REF_CLOCK RealtimeReferenceTime;
  /* 0x01d0 */ enum _ETW_RT_EVENT_LOSS NewRTEventsLost;
  /* 0x01d4 */ long Padding_348;
  /* 0x01d8 */ struct _KEVENT LoggerEvent;
  /* 0x01f0 */ struct _KEVENT FlushEvent;
  /* 0x0208 */ struct _KTIMER FlushTimeOutTimer;
  /* 0x0248 */ struct _KDPC LoggerDpc;
  /* 0x0288 */ struct _KMUTANT LoggerMutex;
  /* 0x02c0 */ struct _EX_PUSH_LOCK LoggerLock;
  union
  {
    /* 0x02c8 */ unsigned __int64 BufferListSpinLock;
    /* 0x02c8 */ struct _EX_PUSH_LOCK BufferListPushLock;
  }; /* size: 0x0008 */
  /* 0x02d0 */ struct _SECURITY_CLIENT_CONTEXT ClientSecurityContext;
  /* 0x0318 */ struct _TOKEN_ACCESS_INFORMATION* TokenAccessInformation;
  /* 0x0320 */ struct _EX_FAST_REF SecurityDescriptor;
  /* 0x0328 */ union _LARGE_INTEGER StartTime;
  /* 0x0330 */ void* LogFileHandle;
  /* 0x0338 */ __int64 BufferSequenceNumber;
  union
  {
    /* 0x0340 */ unsigned long Flags;
    struct /* bitfield */
    {
      /* 0x0340 */ unsigned long Persistent : 1; /* bit position: 0 */
      /* 0x0340 */ unsigned long AutoLogger : 1; /* bit position: 1 */
      /* 0x0340 */ unsigned long FsReady : 1; /* bit position: 2 */
      /* 0x0340 */ unsigned long RealTime : 1; /* bit position: 3 */
      /* 0x0340 */ unsigned long Wow : 1; /* bit position: 4 */
      /* 0x0340 */ unsigned long KernelTrace : 1; /* bit position: 5 */
      /* 0x0340 */ unsigned long NoMoreEnable : 1; /* bit position: 6 */
      /* 0x0340 */ unsigned long StackTracing : 1; /* bit position: 7 */
      /* 0x0340 */ unsigned long ErrorLogged : 1; /* bit position: 8 */
      /* 0x0340 */ unsigned long RealtimeLoggerContextFreed : 1; /* bit position: 9 */
      /* 0x0340 */ unsigned long PebsTracing : 1; /* bit position: 10 */
      /* 0x0340 */ unsigned long PmcCounters : 1; /* bit position: 11 */
      /* 0x0340 */ unsigned long PageAlignBuffers : 1; /* bit position: 12 */
      /* 0x0340 */ unsigned long StackLookasideListAllocated : 1; /* bit position: 13 */
      /* 0x0340 */ unsigned long SecurityTrace : 1; /* bit position: 14 */
      /* 0x0340 */ unsigned long LastBranchTracing : 1; /* bit position: 15 */
      /* 0x0340 */ unsigned long SystemLoggerIndex : 8; /* bit position: 16 */
      /* 0x0340 */ unsigned long StackCaching : 1; /* bit position: 24 */
      /* 0x0340 */ unsigned long ProviderTracking : 1; /* bit position: 25 */
      /* 0x0340 */ unsigned long ProcessorTrace : 1; /* bit position: 26 */
      /* 0x0340 */ unsigned long QpcDeltaTracking : 1; /* bit position: 27 */
      /* 0x0340 */ unsigned long MarkerBufferSaved : 1; /* bit position: 28 */
      /* 0x0340 */ unsigned long LargeMdlPages : 1; /* bit position: 29 */
      /* 0x0340 */ unsigned long ExcludeKernelStack : 1; /* bit position: 30 */
      /* 0x0340 */ unsigned long SpareFlags2 : 1; /* bit position: 31 */
    }; /* bitfield */
  }; /* size: 0x0004 */
  union
  {
    /* 0x0344 */ volatile unsigned long RequestFlag;
    struct /* bitfield */
    {
      /* 0x0344 */ unsigned long DbgRequestNewFile : 1; /* bit position: 0 */
      /* 0x0344 */ unsigned long DbgRequestUpdateFile : 1; /* bit position: 1 */
      /* 0x0344 */ unsigned long DbgRequestFlush : 1; /* bit position: 2 */
      /* 0x0344 */ unsigned long DbgRequestDisableRealtime : 1; /* bit position: 3 */
      /* 0x0344 */ unsigned long DbgRequestDisconnectConsumer : 1; /* bit position: 4 */
      /* 0x0344 */ unsigned long DbgRequestConnectConsumer : 1; /* bit position: 5 */
      /* 0x0344 */ unsigned long DbgRequestNotifyConsumer : 1; /* bit position: 6 */
      /* 0x0344 */ unsigned long DbgRequestUpdateHeader : 1; /* bit position: 7 */
      /* 0x0344 */ unsigned long DbgRequestDeferredFlush : 1; /* bit position: 8 */
      /* 0x0344 */ unsigned long DbgRequestDeferredFlushTimer : 1; /* bit position: 9 */
      /* 0x0344 */ unsigned long DbgRequestFlushTimer : 1; /* bit position: 10 */
      /* 0x0344 */ unsigned long DbgRequestUpdateDebugger : 1; /* bit position: 11 */
      /* 0x0344 */ unsigned long DbgSpareRequestFlags : 20; /* bit position: 12 */
    }; /* bitfield */
  }; /* size: 0x0004 */
  /* 0x0348 */ long Padding_349[2];
  /* 0x0350 */ struct _ETW_STACK_TRACE_BLOCK StackTraceBlock;
  /* 0x03d0 */ struct _RTL_BITMAP HookIdMap;
  /* 0x03e0 */ struct _ETW_STACK_CACHE* StackCache;
  /* 0x03e8 */ struct _ETW_PMC_SUPPORT* PmcData;
  /* 0x03f0 */ struct _ETW_LBR_SUPPORT* LbrData;
  /* 0x03f8 */ struct _ETW_IPT_SUPPORT* IptData;
  /* 0x0400 */ struct _LIST_ENTRY BinaryTrackingList;
  /* 0x0410 */ struct _WMI_BUFFER_HEADER** ScratchArray;
  /* 0x0418 */ struct _DISALLOWED_GUIDS DisallowedGuids;
  /* 0x0428 */ struct PERIODIC_CAPTURE_STATE_CONTEXT* PeriodicCaptureStateContext;
  /* 0x0430 */ struct _ETW_SOFT_RESTART_CONTEXT* SoftRestartContext;
  /* 0x0438 */ struct _ETW_SILODRIVERSTATE* SiloState;
  /* 0x0440 */ struct _WORK_QUEUE_ITEM CompressionWorkItem;
  /* 0x0460 */ long CompressionWorkItemState;
  /* 0x0464 */ long Padding_350;
  /* 0x0468 */ struct _EX_PUSH_LOCK CompressionLock;
  /* 0x0470 */ struct _WMI_BUFFER_HEADER* CompressionTarget;
  /* 0x0478 */ void* CompressionWorkspace;
  /* 0x0480 */ long CompressionOn;
  /* 0x0484 */ unsigned long CompressionRatioGuess;
  /* 0x0488 */ unsigned long PartialBufferCompressionLevel;
  /* 0x048c */ enum ETW_COMPRESSION_RESUMPTION_MODE CompressionResumptionMode;
  /* 0x0490 */ struct _SINGLE_LIST_ENTRY PlaceholderList;
  /* 0x0498 */ struct _KDPC CompressionDpc;
  /* 0x04d8 */ union _LARGE_INTEGER LastBufferSwitchTime;
  /* 0x04e0 */ union _LARGE_INTEGER BufferWriteDuration;
  /* 0x04e8 */ union _LARGE_INTEGER BufferCompressDuration;
  /* 0x04f0 */ __int64 ReferenceQpcDelta;
  /* 0x04f8 */ struct _ETW_EVENT_CALLBACK_CONTEXT* CallbackContext;
  /* 0x0500 */ union _LARGE_INTEGER* LastDroppedTime;
  /* 0x0508 */ union _LARGE_INTEGER* FlushingLastDroppedTime;
  /* 0x0510 */ __int64 FlushingSequenceNumber;
  /* 0x0518 */ struct _ETW_PARTITION_CONTEXT PartitionContext;
  /* 0x0520 */ struct _MDL* BufferMdl;
  /* 0x0528 */ long __PADDING__[2];
} WMI_LOGGER_CONTEXT, *PWMI_LOGGER_CONTEXT; /* size: 0x0530 */

typedef struct _INVERTED_FUNCTION_TABLE
{
  /* 0x0000 */ unsigned long CurrentSize;
  /* 0x0004 */ unsigned long MaximumSize;
  /* 0x0008 */ volatile unsigned long Epoch;
  /* 0x000c */ unsigned char Overflow;
  /* 0x000d */ char Padding_351[3];
  /* 0x0010 */ struct _INVERTED_FUNCTION_TABLE_ENTRY TableEntry[256];
} INVERTED_FUNCTION_TABLE, *PINVERTED_FUNCTION_TABLE; /* size: 0x1810 */

struct wil_StagingConfig;

typedef struct _IMAGE_RUNTIME_FUNCTION_ENTRY
{
  /* 0x0000 */ unsigned long BeginAddress;
  /* 0x0004 */ unsigned long EndAddress;
  union
  {
    /* 0x0008 */ unsigned long UnwindInfoAddress;
    /* 0x0008 */ unsigned long UnwindData;
  }; /* size: 0x0004 */
} IMAGE_RUNTIME_FUNCTION_ENTRY, *PIMAGE_RUNTIME_FUNCTION_ENTRY; /* size: 0x000c */

struct _ETW_STACK_CACHE;

typedef struct _PROCESS_ENERGY_VALUES
{
  /* 0x0000 */ unsigned __int64 Cycles[2][4];
  /* 0x0040 */ unsigned __int64 DiskEnergy;
  /* 0x0048 */ unsigned __int64 NetworkTailEnergy;
  /* 0x0050 */ unsigned __int64 MBBTailEnergy;
  /* 0x0058 */ unsigned __int64 NetworkTxRxBytes;
  /* 0x0060 */ unsigned __int64 MBBTxRxBytes;
  union
  {
    /* 0x0068 */ union _ENERGY_STATE_DURATION Durations[3];
    struct
    {
      /* 0x0068 */ union _ENERGY_STATE_DURATION ForegroundDuration;
      /* 0x0070 */ union _ENERGY_STATE_DURATION DesktopVisibleDuration;
      /* 0x0078 */ union _ENERGY_STATE_DURATION PSMForegroundDuration;
    }; /* size: 0x0018 */
  }; /* size: 0x0018 */
  /* 0x0080 */ unsigned long CompositionRendered;
  /* 0x0084 */ unsigned long CompositionDirtyGenerated;
  /* 0x0088 */ unsigned long CompositionDirtyPropagated;
  /* 0x008c */ unsigned long Reserved1;
  /* 0x0090 */ unsigned __int64 AttributedCycles[2][4];
  /* 0x00d0 */ unsigned __int64 WorkOnBehalfCycles[2][4];
} PROCESS_ENERGY_VALUES, *PPROCESS_ENERGY_VALUES; /* size: 0x0110 */

typedef struct _PROCESS_ENERGY_VALUES_EXTENSION
{
  union
  {
    /* 0x0000 */ union _TIMELINE_BITMAP Timelines[14];
    struct
    {
      /* 0x0000 */ union _TIMELINE_BITMAP CpuTimeline;
      /* 0x0008 */ union _TIMELINE_BITMAP DiskTimeline;
      /* 0x0010 */ union _TIMELINE_BITMAP NetworkTimeline;
      /* 0x0018 */ union _TIMELINE_BITMAP MBBTimeline;
      /* 0x0020 */ union _TIMELINE_BITMAP ForegroundTimeline;
      /* 0x0028 */ union _TIMELINE_BITMAP DesktopVisibleTimeline;
      /* 0x0030 */ union _TIMELINE_BITMAP CompositionRenderedTimeline;
      /* 0x0038 */ union _TIMELINE_BITMAP CompositionDirtyGeneratedTimeline;
      /* 0x0040 */ union _TIMELINE_BITMAP CompositionDirtyPropagatedTimeline;
      /* 0x0048 */ union _TIMELINE_BITMAP InputTimeline;
      /* 0x0050 */ union _TIMELINE_BITMAP AudioInTimeline;
      /* 0x0058 */ union _TIMELINE_BITMAP AudioOutTimeline;
      /* 0x0060 */ union _TIMELINE_BITMAP DisplayRequiredTimeline;
      /* 0x0068 */ union _TIMELINE_BITMAP KeyboardInputTimeline;
    }; /* size: 0x0070 */
  }; /* size: 0x0070 */
  union
  {
    /* 0x0070 */ union _ENERGY_STATE_DURATION Durations[5];
    struct
    {
      /* 0x0070 */ union _ENERGY_STATE_DURATION InputDuration;
      /* 0x0078 */ union _ENERGY_STATE_DURATION AudioInDuration;
      /* 0x0080 */ union _ENERGY_STATE_DURATION AudioOutDuration;
      /* 0x0088 */ union _ENERGY_STATE_DURATION DisplayRequiredDuration;
      /* 0x0090 */ union _ENERGY_STATE_DURATION PSMBackgroundDuration;
    }; /* size: 0x0028 */
  }; /* size: 0x0028 */
  /* 0x0098 */ unsigned long KeyboardInput;
  /* 0x009c */ unsigned long MouseInput;
} PROCESS_ENERGY_VALUES_EXTENSION, *PPROCESS_ENERGY_VALUES_EXTENSION; /* size: 0x00a0 */

typedef struct _PROCESS_EXTENDED_ENERGY_VALUES
{
  /* 0x0000 */ struct _PROCESS_ENERGY_VALUES Base;
  /* 0x0110 */ struct _PROCESS_ENERGY_VALUES_EXTENSION Extension;
} PROCESS_EXTENDED_ENERGY_VALUES, *PPROCESS_EXTENDED_ENERGY_VALUES; /* size: 0x01b0 */

typedef struct _ETW_IPT_SUPPORT
{
  /* 0x0000 */ void* IptHandle;
  /* 0x0008 */ unsigned __int64 IptOption;
  /* 0x0010 */ struct _ETW_HW_TRACE_EXT_INTERFACE* EtwHwTraceExtInterface;
  /* 0x0018 */ volatile unsigned long HookIdCount;
  /* 0x001c */ unsigned short HookId[4];
  /* 0x0024 */ long __PADDING__[1];
} ETW_IPT_SUPPORT, *PETW_IPT_SUPPORT; /* size: 0x0028 */

typedef struct _ETW_HW_TRACE_EXT_INTERFACE
{
  /* 0x0000 */ void* StartProcessorTraceOnEachCore /* function */;
  /* 0x0008 */ void* StopProcessorTraceOnEachCore /* function */;
  /* 0x0010 */ void* LogProcessorTraceOnCurrentCore /* function */;
} ETW_HW_TRACE_EXT_INTERFACE, *PETW_HW_TRACE_EXT_INTERFACE; /* size: 0x0018 */

typedef struct _ENODE
{
  /* 0x0000 */ struct _KNODE Ncb;
  /* 0x0180 */ struct _WORK_QUEUE_ITEM HotAddProcessorWorkItem;
  /* 0x01a0 */ long __PADDING__[8];
} ENODE, *PENODE; /* size: 0x01c0 */

struct _PAGEFAULT_HISTORY;

struct PERIODIC_CAPTURE_STATE_CONTEXT
{
  /* 0x0000 */ __int64 RelativeTimerDueTime;
  /* 0x0008 */ struct _EX_TIMER* Timer;
  /* 0x0010 */ struct _PERIODIC_CAPTURE_STATE_GUIDS Guids;
  /* 0x0020 */ struct _WORK_QUEUE_ITEM WorkItem;
  /* 0x0040 */ enum _ETW_PERIODIC_TIMER_STATE TimerState;
  /* 0x0044 */ long __PADDING__[1];
}; /* size: 0x0048 */

struct _EX_TIMER;

typedef struct _PCAT_FIRMWARE_INFORMATION
{
  /* 0x0000 */ unsigned long PlaceHolder;
} PCAT_FIRMWARE_INFORMATION, *PPCAT_FIRMWARE_INFORMATION; /* size: 0x0004 */

struct _ETW_EVENT_CALLBACK_CONTEXT;

typedef struct _MMSUBSECTION_FLAGS
{
  struct /* bitfield */
  {
    /* 0x0000 */ unsigned short SubsectionAccessed : 1; /* bit position: 0 */
    /* 0x0000 */ unsigned short Protection : 5; /* bit position: 1 */
    /* 0x0000 */ unsigned short StartingSector4132 : 10; /* bit position: 6 */
  }; /* bitfield */
  struct /* bitfield */
  {
    /* 0x0002 */ unsigned short SubsectionStatic : 1; /* bit position: 0 */
    /* 0x0002 */ unsigned short GlobalMemory : 1; /* bit position: 1 */
    /* 0x0002 */ unsigned short Spare : 1; /* bit position: 2 */
    /* 0x0002 */ unsigned short OnDereferenceList : 1; /* bit position: 3 */
    /* 0x0002 */ unsigned short SectorEndOffset : 12; /* bit position: 4 */
  }; /* bitfield */
} MMSUBSECTION_FLAGS, *PMMSUBSECTION_FLAGS; /* size: 0x0004 */

typedef struct _VIRTUAL_EFI_RUNTIME_SERVICES
{
  /* 0x0000 */ unsigned __int64 GetTime;
  /* 0x0008 */ unsigned __int64 SetTime;
  /* 0x0010 */ unsigned __int64 GetWakeupTime;
  /* 0x0018 */ unsigned __int64 SetWakeupTime;
  /* 0x0020 */ unsigned __int64 SetVirtualAddressMap;
  /* 0x0028 */ unsigned __int64 ConvertPointer;
  /* 0x0030 */ unsigned __int64 GetVariable;
  /* 0x0038 */ unsigned __int64 GetNextVariableName;
  /* 0x0040 */ unsigned __int64 SetVariable;
  /* 0x0048 */ unsigned __int64 GetNextHighMonotonicCount;
  /* 0x0050 */ unsigned __int64 ResetSystem;
  /* 0x0058 */ unsigned __int64 UpdateCapsule;
  /* 0x0060 */ unsigned __int64 QueryCapsuleCapabilities;
  /* 0x0068 */ unsigned __int64 QueryVariableInfo;
} VIRTUAL_EFI_RUNTIME_SERVICES, *PVIRTUAL_EFI_RUNTIME_SERVICES; /* size: 0x0070 */

typedef struct _EPARTITION
{
  /* 0x0000 */ void* MmPartition;
  /* 0x0008 */ void* CcPartition;
  /* 0x0010 */ void* ExPartition;
  /* 0x0018 */ __int64 HardReferenceCount;
  /* 0x0020 */ __int64 OpenHandleCount;
  /* 0x0028 */ struct _LIST_ENTRY ActivePartitionLinks;
  /* 0x0038 */ struct _EPARTITION* ParentPartition;
  /* 0x0040 */ struct _WORK_QUEUE_ITEM TeardownWorkItem;
  /* 0x0060 */ struct _EX_PUSH_LOCK TeardownLock;
  /* 0x0068 */ struct _EPROCESS* SystemProcess;
  /* 0x0070 */ void* SystemProcessHandle;
  union
  {
    /* 0x0078 */ unsigned long PartitionFlags;
    /* 0x0078 */ unsigned long PairedWithJob : 1; /* bit position: 0 */
  }; /* size: 0x0004 */
  /* 0x007c */ long __PADDING__[1];
} EPARTITION, *PEPARTITION; /* size: 0x0080 */

struct _EX_WNF_SUBSCRIPTION;

typedef union _EXT_IOMMU_DEVICE_ID_FLAGS
{
  union
  {
    /* 0x0000 */ unsigned short AsUSHORT;
    struct /* bitfield */
    {
      /* 0x0000 */ unsigned short IsAliased : 1; /* bit position: 0 */
      /* 0x0000 */ unsigned short HasMultipleIds : 1; /* bit position: 1 */
      /* 0x0000 */ unsigned short Reserved : 14; /* bit position: 2 */
    }; /* bitfield */
  }; /* size: 0x0002 */
} EXT_IOMMU_DEVICE_ID_FLAGS, *PEXT_IOMMU_DEVICE_ID_FLAGS; /* size: 0x0002 */

struct _AWEINFO;

typedef struct _WNF_SCOPE_MAP_ENTRY
{
  /* 0x0000 */ struct _WNF_LOCK MapEntryLock;
  /* 0x0008 */ struct _LIST_ENTRY MapEntryHead;
} WNF_SCOPE_MAP_ENTRY, *PWNF_SCOPE_MAP_ENTRY; /* size: 0x0018 */

typedef struct _WNF_SCOPE_MAP
{
  /* 0x0000 */ struct _WNF_NODE_HEADER Header;
  /* 0x0004 */ long Padding_352;
  /* 0x0008 */ struct _WNF_SCOPE_INSTANCE* SystemScopeInstance;
  /* 0x0010 */ struct _WNF_SCOPE_INSTANCE* MachineScopeInstance;
  /* 0x0018 */ struct _WNF_SCOPE_INSTANCE* PhysicalMachineScopeInstance;
  /* 0x0020 */ struct _WNF_SCOPE_MAP_ENTRY ByDataScope[6];
} WNF_SCOPE_MAP, *PWNF_SCOPE_MAP; /* size: 0x00b0 */

typedef struct _MI_PARTITION_FLAGS
{
  struct /* bitfield */
  {
    /* 0x0000 */ unsigned long BeingDeleted : 1; /* bit position: 0 */
    /* 0x0000 */ unsigned long PageListsInitialized : 1; /* bit position: 1 */
    /* 0x0000 */ unsigned long StoreReservedPagesCharged : 1; /* bit position: 2 */
    /* 0x0000 */ unsigned long UseProtectedSlabAllocators : 1; /* bit position: 3 */
    /* 0x0000 */ unsigned long UseUnprotectedSlabAllocators : 1; /* bit position: 4 */
    /* 0x0000 */ unsigned long PureHoldingPartition : 1; /* bit position: 5 */
    /* 0x0000 */ unsigned long ZeroPagesOptional : 1; /* bit position: 6 */
    /* 0x0000 */ unsigned long BackgroundZeroingDisabled : 1; /* bit position: 7 */
  }; /* bitfield */
} MI_PARTITION_FLAGS, *PMI_PARTITION_FLAGS; /* size: 0x0004 */

typedef struct _MI_PARTITION_CORE
{
  /* 0x0000 */ unsigned short PartitionId;
  /* 0x0002 */ char Padding_353[2];
  union
  {
    union
    {
      /* 0x0004 */ unsigned long LongFlags;
      /* 0x0004 */ struct _MI_PARTITION_FLAGS Flags;
    }; /* size: 0x0004 */
  } /* size: 0x0004 */ u;
  /* 0x0008 */ unsigned long Signature;
  /* 0x000c */ unsigned char MemoryConfigurationChanged;
  /* 0x000d */ char Padding_354[3];
  /* 0x0010 */ struct _MI_NODE_INFORMATION* NodeInformation;
  /* 0x0018 */ struct _RTL_AVL_TREE PageRoot;
  /* 0x0020 */ struct _PHYSICAL_MEMORY_DESCRIPTOR* MemoryNodeRuns;
  /* 0x0028 */ unsigned __int64 MemoryBlockReferences;
  /* 0x0030 */ struct _WORK_QUEUE_ITEM PfnUnmapWorkItem;
  /* 0x0050 */ unsigned __int64 PfnUnmapCount;
  /* 0x0058 */ void* PfnUnmapWaitList;
  /* 0x0060 */ struct _PHYSICAL_MEMORY_DESCRIPTOR* MemoryRuns;
  /* 0x0068 */ struct _KEVENT ExitEvent;
  /* 0x0080 */ void* SystemThreadHandles[6];
  /* 0x00b0 */ struct _EPARTITION* PartitionObject;
  /* 0x00b8 */ struct _EX_PUSH_LOCK PartitionSystemThreadsLock;
  /* 0x00c0 */ struct _EX_PUSH_LOCK DynamicMemoryPushLock;
  /* 0x00c8 */ volatile long DynamicMemoryLock;
  /* 0x00cc */ unsigned char PfnUnmapActive;
  /* 0x00cd */ char Padding_355[3];
  /* 0x00d0 */ struct _KEVENT TemporaryMemoryEvent;
  /* 0x00e8 */ void* RootDirectory;
  /* 0x00f0 */ void* KernelObjectsDirectory;
  /* 0x00f8 */ struct _KEVENT* MemoryEvents[11];
  /* 0x0150 */ void* MemoryEventHandles[11];
  /* 0x01a8 */ unsigned __int64 TotalHugeIoRanges;
  /* 0x01b0 */ unsigned __int64 NonChargedSecurePages;
} MI_PARTITION_CORE, *PMI_PARTITION_CORE; /* size: 0x01b8 */

typedef struct _MMPAGE_FILE_EXPANSION_FLAGS
{
  /* 0x0000 */ unsigned char PageFileNumber : 8; /* bit position: 0 */
  /* 0x0001 */ unsigned char Spare1 : 8; /* bit position: 0 */
  /* 0x0002 */ unsigned char Spare2 : 8; /* bit position: 0 */
  struct /* bitfield */
  {
    /* 0x0003 */ unsigned char IgnoreCurrentCommit : 1; /* bit position: 0 */
    /* 0x0003 */ unsigned char IncreaseMinimumSize : 1; /* bit position: 1 */
    /* 0x0003 */ unsigned char AttemptForCantExtend : 1; /* bit position: 2 */
    /* 0x0003 */ unsigned char UnusedSegmentDeletion : 1; /* bit position: 3 */
    /* 0x0003 */ unsigned char PageFileContract : 1; /* bit position: 4 */
    /* 0x0003 */ unsigned char NoWait : 1; /* bit position: 5 */
    /* 0x0003 */ unsigned char Spare3 : 2; /* bit position: 6 */
  }; /* bitfield */
} MMPAGE_FILE_EXPANSION_FLAGS, *PMMPAGE_FILE_EXPANSION_FLAGS; /* size: 0x0004 */

typedef struct _MMPAGE_FILE_EXPANSION
{
  /* 0x0000 */ struct _SEGMENT* Segment;
  /* 0x0008 */ struct _LIST_ENTRY DereferenceList;
  /* 0x0018 */ struct _MI_PARTITION* Partition;
  /* 0x0020 */ unsigned __int64 RequestedExpansionSize;
  /* 0x0028 */ unsigned __int64 ActualExpansion;
  /* 0x0030 */ struct _KEVENT Event;
  /* 0x0048 */ volatile long InProgress;
  union
  {
    union
    {
      /* 0x004c */ unsigned long LongFlags;
      /* 0x004c */ struct _MMPAGE_FILE_EXPANSION_FLAGS Flags;
    }; /* size: 0x0004 */
  } /* size: 0x0004 */ u1;
  /* 0x0050 */ void** volatile ActiveEntry;
} MMPAGE_FILE_EXPANSION, *PMMPAGE_FILE_EXPANSION; /* size: 0x0058 */

typedef struct _MMMOD_WRITER_LISTHEAD
{
  /* 0x0000 */ struct _LIST_ENTRY ListHead;
  union
  {
    /* 0x0010 */ struct _KGATE Gate;
    /* 0x0010 */ struct _KEVENT Event;
  }; /* size: 0x0018 */
} MMMOD_WRITER_LISTHEAD, *PMMMOD_WRITER_LISTHEAD; /* size: 0x0028 */

typedef struct _MI_RESTRICTED_MODWRITES
{
  /* 0x0000 */ unsigned char MaximumClusterPages;
  /* 0x0001 */ unsigned char ReducedClusterWrites;
  /* 0x0002 */ unsigned char ImposeDelay;
} MI_RESTRICTED_MODWRITES, *PMI_RESTRICTED_MODWRITES; /* size: 0x0003 */

typedef struct _MI_PARTITION_MODWRITES
{
  /* 0x0000 */ struct _MMPAGE_FILE_EXPANSION AttemptForCantExtend;
  /* 0x0058 */ struct _MMPAGE_FILE_EXPANSION PageFileContract;
  /* 0x00b0 */ unsigned __int64 NumberOfMappedMdls;
  /* 0x00b8 */ volatile long NumberOfMappedMdlsInUse;
  /* 0x00bc */ unsigned long NumberOfMappedMdlsInUsePeak;
  /* 0x00c0 */ struct _MMMOD_WRITER_LISTHEAD MappedFileHeader;
  /* 0x00e8 */ unsigned char NeedMappedMdl;
  /* 0x00e9 */ unsigned char NeedPageFileMdl;
  /* 0x00ea */ unsigned char ModwriterActive;
  /* 0x00eb */ unsigned char TransitionInserted;
  /* 0x00ec */ long LastModifiedWriteError;
  /* 0x00f0 */ long LastMappedWriteError;
  /* 0x00f4 */ volatile unsigned long MappedFileWriteSucceeded;
  /* 0x00f8 */ unsigned long MappedWriteBurstCount;
  /* 0x00fc */ unsigned long LowPriorityModWritesOutstanding;
  /* 0x0100 */ struct _KEVENT BoostModWriteIoPriorityEvent;
  /* 0x0118 */ long ModifiedWriterThreadPriority;
  /* 0x011c */ long Padding_356;
  /* 0x0120 */ unsigned __int64 ModifiedPagesLowPriorityGoal;
  /* 0x0128 */ struct _KEVENT ModifiedPageWriterEvent;
  /* 0x0140 */ struct _KEVENT ModifiedWriterExitedEvent;
  /* 0x0158 */ volatile long WriteAllPagefilePages;
  /* 0x015c */ volatile long WriteAllMappedPages;
  /* 0x0160 */ struct _KEVENT MappedPageWriterEvent;
  /* 0x0178 */ struct _MI_MODWRITE_DATA ModWriteData;
  /* 0x01b8 */ struct _KEVENT RescanPageFilesEvent;
  /* 0x01d0 */ struct _MMMOD_WRITER_LISTHEAD PagingFileHeader;
  /* 0x01f8 */ struct _ETHREAD* ModifiedPageWriterThread;
  /* 0x0200 */ struct _EX_RUNDOWN_REF ModifiedPageWriterRundown;
  /* 0x0208 */ struct _WORK_QUEUE_ITEM PagefileScanWorkItem;
  /* 0x0228 */ unsigned long PagefileScanCount;
  /* 0x022c */ volatile long ClusterRestrictionLock;
  /* 0x0230 */ struct _MI_RESTRICTED_MODWRITES ClusterRestrictions[2];
  /* 0x0236 */ char Padding_357[2];
  /* 0x0238 */ struct _KEVENT NotifyStoreMemoryConditions;
  /* 0x0250 */ volatile unsigned char DelayMappedWrite;
  /* 0x0251 */ char Padding_358[3];
  /* 0x0254 */ volatile unsigned long PagefileReservationsEnabled;
  /* 0x0258 */ struct _EX_PUSH_LOCK PageFileCreationLock;
  /* 0x0260 */ struct _WORK_QUEUE_ITEM TrimPagefileWorkItem;
  /* 0x0280 */ unsigned __int64 LastTrimPagefileTime;
  /* 0x0288 */ struct _WORK_QUEUE_ITEM WsSwapPagefileContractWorkItem;
  /* 0x02a8 */ volatile long WsSwapPageFileContractionInProgress;
  /* 0x02ac */ long Padding_359;
  /* 0x02b0 */ struct _EX_PUSH_LOCK WorkingSetSwapLock;
  /* 0x02b8 */ volatile long WorkingSetInswapLock;
  /* 0x02bc */ long __PADDING__[1];
} MI_PARTITION_MODWRITES, *PMI_PARTITION_MODWRITES; /* size: 0x02c0 */

typedef struct _MI_PARTITION_STORES
{
  union
  {
    union
    {
      struct /* bitfield */
      {
        /* 0x0000 */ long FlushCompleting : 1; /* bit position: 0 */
        /* 0x0000 */ long FlushInProgress : 31; /* bit position: 1 */
      }; /* bitfield */
      /* 0x0000 */ volatile long Long;
    }; /* size: 0x0004 */
  } /* size: 0x0004 */ WriteAllStoreHintedPages;
  /* 0x0004 */ unsigned long VirtualPageFileNumber;
  /* 0x0008 */ unsigned long Registered;
  /* 0x000c */ unsigned long ReadClusterSizeMax;
  /* 0x0010 */ unsigned long EvictFlushRequestCount;
  /* 0x0014 */ unsigned long ModifiedWriteDisableCount;
  /* 0x0018 */ unsigned long WriteIssueFailures;
  /* 0x001c */ unsigned long WritesOutstanding;
  /* 0x0020 */ volatile long EvictFlushLock;
  /* 0x0024 */ long Padding_360;
  /* 0x0028 */ struct _ETHREAD* EvictionThread;
  /* 0x0030 */ struct _KEVENT EvictEvent;
  /* 0x0048 */ long Padding_361[2];
  /* 0x0050 */ union _SLIST_HEADER WriteSupportSListHead;
  /* 0x0060 */ struct _KEVENT EvictFlushCompleteEvent;
  /* 0x0078 */ struct _RTL_BITMAP* ModifiedWriteFailedBitmap;
  /* 0x0080 */ struct _EPROCESS* StoreProcess;
  /* 0x0088 */ unsigned long DeleteStoredPages;
  /* 0x008c */ long __PADDING__[1];
} MI_PARTITION_STORES, *PMI_PARTITION_STORES; /* size: 0x0090 */

typedef struct _MMDEREFERENCE_SEGMENT_HEADER
{
  /* 0x0000 */ struct _KSEMAPHORE Semaphore;
  /* 0x0020 */ struct _LIST_ENTRY ControlAreaDeleteListHead;
  /* 0x0030 */ struct _LIST_ENTRY UnusedSegmentDeleteListHead;
  /* 0x0040 */ struct _LIST_ENTRY PagefileExtensionListHead;
} MMDEREFERENCE_SEGMENT_HEADER, *PMMDEREFERENCE_SEGMENT_HEADER; /* size: 0x0050 */

typedef struct _MI_PTE_CHAIN_HEAD
{
  /* 0x0000 */ struct _MMPTE Flink;
  /* 0x0008 */ struct _MMPTE Blink;
  /* 0x0010 */ struct _MMPTE* PteBase;
} MI_PTE_CHAIN_HEAD, *PMI_PTE_CHAIN_HEAD; /* size: 0x0018 */

typedef struct _MI_PARTITION_SEGMENTS
{
  /* 0x0000 */ volatile long SegmentListLock;
  /* 0x0004 */ unsigned long DeleteOnCloseCount;
  /* 0x0008 */ volatile __int64 FsControlAreaCount;
  /* 0x0010 */ volatile __int64 PfControlAreaCount;
  /* 0x0018 */ volatile __int64 CloneHeaderCount;
  /* 0x0020 */ struct _KEVENT DeleteSubsectionCleanup;
  /* 0x0038 */ struct _KEVENT UnusedSegmentCleanup;
  /* 0x0050 */ unsigned __int64 SubsectionDeletePtes;
  /* 0x0058 */ struct _MMPAGE_FILE_EXPANSION AttemptForCantExtend;
  /* 0x00b0 */ struct _MMDEREFERENCE_SEGMENT_HEADER DereferenceSegmentHeader;
  /* 0x0100 */ struct _LIST_ENTRY DeleteOnCloseList;
  /* 0x0110 */ struct _KTIMER DeleteOnCloseTimer;
  /* 0x0150 */ unsigned char DeleteOnCloseTimerActive;
  /* 0x0151 */ unsigned char SegmentDereferenceThreadExists;
  /* 0x0152 */ char Padding_362[6];
  /* 0x0158 */ void* SegmentDereferenceActiveControlArea;
  /* 0x0160 */ unsigned __int64 UnusedSegmentPagedPool;
  /* 0x0168 */ struct _LIST_ENTRY UnusedSegmentList;
  /* 0x0178 */ struct _LIST_ENTRY UnusedSubsectionList;
  /* 0x0188 */ struct _LIST_ENTRY DeleteSubsectionList;
  /* 0x0198 */ struct _KEVENT ControlAreaDeleteEvent;
  /* 0x01b0 */ struct _SINGLE_LIST_ENTRY ControlAreaDeleteList;
  /* 0x01b8 */ struct _MI_PTE_CHAIN_HEAD FreeSystemCache;
  /* 0x01d0 */ struct _KEVENT CloneDereferenceEvent;
  /* 0x01e8 */ long Padding_363[2];
  /* 0x01f0 */ union _SLIST_HEADER CloneProtosSListHead;
  /* 0x0200 */ struct _EX_PUSH_LOCK SystemCacheInitLock;
  /* 0x0208 */ unsigned long PagefileExtensionWaiters;
  /* 0x020c */ unsigned long PagefileExtensionRequests;
  /* 0x0210 */ struct _KEVENT PagefileExtensionWaitEvent;
  /* 0x0228 */ struct _MI_CROSS_PARTITION_CHARGES SharedCharges[7];
  /* 0x0308 */ struct _KEVENT* SharedChargesDrainEvent;
  /* 0x0310 */ struct _KEVENT* ControlAreasDrainEvent;
  /* 0x0318 */ struct _KEVENT* CloneHeaderDrainEvent;
  /* 0x0320 */ struct _EX_RUNDOWN_REF_CACHE_AWARE* ProbeRundownReference;
  /* 0x0328 */ long __PADDING__[6];
} MI_PARTITION_SEGMENTS, *PMI_PARTITION_SEGMENTS; /* size: 0x0340 */

typedef struct _MI_PARTITION_COMMIT
{
  /* 0x0000 */ unsigned __int64 PeakCommitment;
  /* 0x0008 */ unsigned __int64 TotalCommitLimitMaximum;
  /* 0x0010 */ volatile long Popups[2];
  /* 0x0018 */ unsigned __int64 LowCommitThreshold;
  /* 0x0020 */ unsigned __int64 HighCommitThreshold;
  /* 0x0028 */ unsigned __int64 EventLock;
  /* 0x0030 */ unsigned __int64 SystemCommitReserve;
  /* 0x0038 */ unsigned __int64 OverCommit;
} MI_PARTITION_COMMIT, *PMI_PARTITION_COMMIT; /* size: 0x0040 */

typedef struct _MI_COMBINE_WORKITEM
{
  /* 0x0000 */ void* NextEntry;
  /* 0x0008 */ struct _WORK_QUEUE_ITEM WorkItem;
} MI_COMBINE_WORKITEM, *PMI_COMBINE_WORKITEM; /* size: 0x0028 */

typedef struct _MI_COMBINE_PAGE_LISTHEAD
{
  /* 0x0000 */ struct _RTL_AVL_TREE Table;
  /* 0x0008 */ volatile long Lock;
  /* 0x000c */ long __PADDING__[1];
} MI_COMBINE_PAGE_LISTHEAD, *PMI_COMBINE_PAGE_LISTHEAD; /* size: 0x0010 */

typedef struct _MI_PAGE_COMBINE_STATISTICS
{
  /* 0x0000 */ unsigned __int64 PagesScannedActive;
  /* 0x0008 */ unsigned __int64 PagesScannedStandby;
  /* 0x0010 */ unsigned __int64 PagesCombined;
  /* 0x0018 */ unsigned long CombineScanCount;
  /* 0x001c */ long CombinedBlocksInUse;
  /* 0x0020 */ long SumCombinedBlocksReferenceCount;
  /* 0x0024 */ long __PADDING__[1];
} MI_PAGE_COMBINE_STATISTICS, *PMI_PAGE_COMBINE_STATISTICS; /* size: 0x0028 */

typedef struct _MI_PAGE_COMBINING_SUPPORT
{
  /* 0x0000 */ struct _MI_PARTITION* Partition;
  /* 0x0008 */ struct _LIST_ENTRY ArbitraryPfnMapList;
  /* 0x0018 */ struct _MI_COMBINE_WORKITEM FreeCombinePoolItem;
  /* 0x0040 */ unsigned long CombiningThreadCount;
  /* 0x0044 */ long Padding_364;
  /* 0x0048 */ struct _LIST_ENTRY CombinePageFreeList;
  /* 0x0058 */ unsigned __int64 CombineFreeListLock;
  /* 0x0060 */ struct _MI_COMBINE_PAGE_LISTHEAD CombinePageListHeads[16];
  /* 0x0160 */ unsigned __int64 CommonPageCombineDomain;
  /* 0x0168 */ struct _MI_PAGE_COMBINE_STATISTICS PageCombineStats;
} MI_PAGE_COMBINING_SUPPORT, *PMI_PAGE_COMBINING_SUPPORT; /* size: 0x0190 */

typedef struct _MMWORKING_SET_EXPANSION_HEAD
{
  /* 0x0000 */ struct _LIST_ENTRY ListHead;
} MMWORKING_SET_EXPANSION_HEAD, *PMMWORKING_SET_EXPANSION_HEAD; /* size: 0x0010 */

typedef struct _MI_PAGEFILE_TRACES
{
  /* 0x0000 */ long Status;
  /* 0x0004 */ unsigned short PartitionId;
  /* 0x0006 */ unsigned char Priority;
  /* 0x0007 */ unsigned char IrpPriority;
  /* 0x0008 */ unsigned char ReservationWrite;
  /* 0x0009 */ char Padding_365[7];
  /* 0x0010 */ union _LARGE_INTEGER CurrentTime;
  /* 0x0018 */ unsigned __int64 AvailablePages;
  /* 0x0020 */ unsigned __int64 ModifiedPagesTotal;
  /* 0x0028 */ unsigned __int64 ModifiedPagefilePages;
  /* 0x0030 */ unsigned __int64 ModifiedNoWritePages;
  /* 0x0038 */ unsigned __int64 ModifiedPagefileNoReservationPages;
  struct
  {
    /* 0x0040 */ struct _MDL Mdl;
    /* 0x0070 */ unsigned __int64 Page[1];
  } /* size: 0x0038 */ MdlHack;
} MI_PAGEFILE_TRACES, *PMI_PAGEFILE_TRACES; /* size: 0x0078 */

typedef struct _MI_VISIBLE_PARTITION
{
  /* 0x0000 */ unsigned __int64 LowestPhysicalPage;
  /* 0x0008 */ unsigned __int64 HighestPhysicalPage;
  /* 0x0010 */ unsigned __int64 NumberOfPhysicalPages;
  /* 0x0018 */ volatile unsigned long NumberOfPagingFiles;
  /* 0x001c */ unsigned char SystemCacheInitialized;
  /* 0x001d */ char Padding_366[3];
  /* 0x0020 */ struct _MMPAGING_FILE* PagingFile[16];
  /* 0x00a0 */ long Padding_367[8];
  /* 0x00c0 */ volatile unsigned __int64 AvailablePages;
  /* 0x00c8 */ long Padding_368[14];
  /* 0x0100 */ volatile unsigned __int64 ResidentAvailablePages;
  /* 0x0108 */ long Padding_369[14];
  /* 0x0140 */ struct _MMSUPPORT_INSTANCE PartitionWs[1];
  /* 0x0200 */ struct _MMWSL_INSTANCE PartitionWorkingSetLists[1];
  /* 0x0228 */ volatile unsigned __int64 TotalCommittedPages;
  /* 0x0230 */ long Padding_370[4];
  /* 0x0240 */ struct _MMPFNLIST ModifiedPageListHead;
  /* 0x0268 */ long Padding_371[6];
  /* 0x0280 */ struct _MMPFNLIST ModifiedNoWritePageListHead;
  /* 0x02a8 */ unsigned __int64 TotalCommitLimit;
  /* 0x02b0 */ unsigned __int64 TotalPagesForPagingFile;
  /* 0x02b8 */ unsigned __int64 VadPhysicalPages;
  /* 0x02c0 */ unsigned __int64 ProcessLockedFilePages;
  /* 0x02c8 */ volatile unsigned __int64 SharedCommit;
  /* 0x02d0 */ unsigned __int64 SlabAllocatorPages;
  /* 0x02d8 */ unsigned long ChargeCommitmentFailures[4];
  /* 0x02e8 */ volatile long PageFileTraceIndex;
  /* 0x02ec */ long Padding_372;
  /* 0x02f0 */ struct _MI_PAGEFILE_TRACES PageFileTraces[32];
  /* 0x11f0 */ long __PADDING__[4];
} MI_VISIBLE_PARTITION, *PMI_VISIBLE_PARTITION; /* size: 0x1200 */

typedef struct _MI_PARTITION
{
  /* 0x0000 */ struct _MI_PARTITION_CORE Core;
  /* 0x01b8 */ struct _MI_PARTITION_MODWRITES Modwriter;
  /* 0x0478 */ long Padding_373[2];
  /* 0x0480 */ struct _MI_PARTITION_STORES Store;
  /* 0x0510 */ long Padding_374[12];
  /* 0x0540 */ struct _MI_PARTITION_SEGMENTS Segments;
  /* 0x0880 */ struct _MI_PARTITION_PAGE_LISTS PageLists;
  /* 0x1840 */ struct _MI_PARTITION_COMMIT Commit;
  /* 0x1880 */ struct _MI_PARTITION_ZEROING Zeroing;
  /* 0x1930 */ struct _MI_PAGE_COMBINING_SUPPORT PageCombine;
  /* 0x1ac0 */ void* WorkingSetControl;
  /* 0x1ac8 */ struct _MMWORKING_SET_EXPANSION_HEAD WorkingSetExpansionHead;
  /* 0x1ad8 */ unsigned long SessionDetachTimeStamp;
  /* 0x1adc */ long Padding_375[9];
  /* 0x1b00 */ struct _MI_VISIBLE_PARTITION Vp;
} MI_PARTITION, *PMI_PARTITION; /* size: 0x2d00 */

typedef struct _WNF_SCOPE_INSTANCE
{
  /* 0x0000 */ struct _WNF_NODE_HEADER Header;
  /* 0x0004 */ long Padding_376;
  /* 0x0008 */ struct _EX_RUNDOWN_REF RunRef;
  /* 0x0010 */ enum _WNF_DATA_SCOPE DataScope;
  /* 0x0014 */ unsigned long InstanceIdSize;
  /* 0x0018 */ void* InstanceIdData;
  /* 0x0020 */ struct _LIST_ENTRY ResolverListEntry;
  /* 0x0030 */ struct _WNF_LOCK NameSetLock;
  /* 0x0038 */ struct _RTL_AVL_TREE NameSet;
  /* 0x0040 */ void* PermanentDataStore;
  /* 0x0048 */ void* VolatilePermanentDataStore;
} WNF_SCOPE_INSTANCE, *PWNF_SCOPE_INSTANCE; /* size: 0x0050 */

typedef struct _MMSUPPORT_AGGREGATION
{
  /* 0x0000 */ unsigned long PageFaultCount;
  /* 0x0004 */ long Padding_377;
  /* 0x0008 */ unsigned __int64 WorkingSetSize;
  /* 0x0010 */ unsigned __int64 WorkingSetLeafSize;
  /* 0x0018 */ unsigned __int64 PeakWorkingSetSize;
} MMSUPPORT_AGGREGATION, *PMMSUPPORT_AGGREGATION; /* size: 0x0020 */

union wil_details_ReportedState
{
  union
  {
    /* 0x0000 */ unsigned int exchange;
    struct /* bitfield */
    {
      /* 0x0000 */ unsigned int queuedForReporting : 1; /* bit position: 0 */
      /* 0x0000 */ unsigned int reportedDeviceUsage : 1; /* bit position: 1 */
      /* 0x0000 */ unsigned int reportedDevicePotential : 1; /* bit position: 2 */
      /* 0x0000 */ unsigned int reportedDeviceOpportunity : 1; /* bit position: 3 */
      /* 0x0000 */ unsigned int reportedDevicePotentialOpportunity : 1; /* bit position: 4 */
      /* 0x0000 */ unsigned int usageCount : 9; /* bit position: 5 */
      /* 0x0000 */ unsigned int usageCountRepresentsPotential : 1; /* bit position: 14 */
      /* 0x0000 */ unsigned int opportunityCount : 7; /* bit position: 15 */
      /* 0x0000 */ unsigned int opportunityCountRepresentsPotential : 1; /* bit position: 22 */
      /* 0x0000 */ unsigned int unused : 9; /* bit position: 23 */
    }; /* bitfield */
  }; /* size: 0x0004 */
}; /* size: 0x0004 */

union wil_details_RecordedState
{
  union
  {
    /* 0x0000 */ unsigned int exchange;
    struct /* bitfield */
    {
      /* 0x0000 */ unsigned int recordedDeviceUsage : 1; /* bit position: 0 */
      /* 0x0000 */ unsigned int recordedDevicePotential : 1; /* bit position: 1 */
      /* 0x0000 */ unsigned int recordedDeviceOpportunity : 1; /* bit position: 2 */
      /* 0x0000 */ unsigned int recordedDevicePotentialOpportunity : 1; /* bit position: 3 */
      /* 0x0000 */ unsigned int recordedVariantDeviceUsage : 1; /* bit position: 4 */
      /* 0x0000 */ unsigned int recordedVariant : 6; /* bit position: 5 */
      /* 0x0000 */ unsigned int unused : 21; /* bit position: 11 */
    }; /* bitfield */
  }; /* size: 0x0004 */
}; /* size: 0x0004 */

struct wil_details_FeatureReportingCache
{
  /* 0x0000 */ union wil_details_ReportedState reported;
  /* 0x0004 */ union wil_details_RecordedState recorded;
}; /* size: 0x0008 */

struct _PSP_STORAGE;

typedef struct _HANDLE_TABLE
{
  /* 0x0000 */ unsigned long NextHandleNeedingPool;
  /* 0x0004 */ long ExtraInfoPages;
  /* 0x0008 */ volatile unsigned __int64 TableCode;
  /* 0x0010 */ struct _EPROCESS* QuotaProcess;
  /* 0x0018 */ struct _LIST_ENTRY HandleTableList;
  /* 0x0028 */ unsigned long UniqueProcessId;
  union
  {
    /* 0x002c */ unsigned long Flags;
    struct /* bitfield */
    {
      /* 0x002c */ unsigned char StrictFIFO : 1; /* bit position: 0 */
      /* 0x002c */ unsigned char EnableHandleExceptions : 1; /* bit position: 1 */
      /* 0x002c */ unsigned char Rundown : 1; /* bit position: 2 */
      /* 0x002c */ unsigned char Duplicated : 1; /* bit position: 3 */
      /* 0x002c */ unsigned char RaiseUMExceptionOnInvalidHandleClose : 1; /* bit position: 4 */
    }; /* bitfield */
  }; /* size: 0x0004 */
  /* 0x0030 */ struct _EX_PUSH_LOCK HandleContentionEvent;
  /* 0x0038 */ struct _EX_PUSH_LOCK HandleTableLock;
  union
  {
    /* 0x0040 */ struct _HANDLE_TABLE_FREE_LIST FreeLists[1];
    struct
    {
      /* 0x0040 */ unsigned char ActualEntry[32];
      /* 0x0060 */ struct _HANDLE_TRACE_DEBUG_INFO* DebugInfo;
      /* 0x0068 */ long __PADDING__[6];
    }; /* size: 0x0040 */
  }; /* size: 0x0040 */
} HANDLE_TABLE, *PHANDLE_TABLE; /* size: 0x0080 */

typedef struct _RTL_BALANCED_LINKS
{
  /* 0x0000 */ struct _RTL_BALANCED_LINKS* Parent;
  /* 0x0008 */ struct _RTL_BALANCED_LINKS* LeftChild;
  /* 0x0010 */ struct _RTL_BALANCED_LINKS* RightChild;
  /* 0x0018 */ char Balance;
  /* 0x0019 */ unsigned char Reserved[3];
  /* 0x001c */ long __PADDING__[1];
} RTL_BALANCED_LINKS, *PRTL_BALANCED_LINKS; /* size: 0x0020 */

typedef struct _KTMOBJECT_NAMESPACE_LINK
{
  /* 0x0000 */ struct _RTL_BALANCED_LINKS Links;
  /* 0x0020 */ unsigned char Expired;
  /* 0x0021 */ char __PADDING__[7];
} KTMOBJECT_NAMESPACE_LINK, *PKTMOBJECT_NAMESPACE_LINK; /* size: 0x0028 */

typedef struct _RTL_AVL_TABLE
{
  /* 0x0000 */ struct _RTL_BALANCED_LINKS BalancedRoot;
  /* 0x0020 */ void* OrderedPointer;
  /* 0x0028 */ unsigned long WhichOrderedElement;
  /* 0x002c */ unsigned long NumberGenericTableElements;
  /* 0x0030 */ unsigned long DepthOfTree;
  /* 0x0034 */ long Padding_378;
  /* 0x0038 */ struct _RTL_BALANCED_LINKS* RestartKey;
  /* 0x0040 */ unsigned long DeleteCount;
  /* 0x0044 */ long Padding_379;
  /* 0x0048 */ void* CompareRoutine /* function */;
  /* 0x0050 */ void* AllocateRoutine /* function */;
  /* 0x0058 */ void* FreeRoutine /* function */;
  /* 0x0060 */ void* TableContext;
} RTL_AVL_TABLE, *PRTL_AVL_TABLE; /* size: 0x0068 */

typedef struct _KTMOBJECT_NAMESPACE
{
  /* 0x0000 */ struct _RTL_AVL_TABLE Table;
  /* 0x0068 */ struct _KMUTANT Mutex;
  /* 0x00a0 */ unsigned short LinksOffset;
  /* 0x00a2 */ unsigned short GuidOffset;
  /* 0x00a4 */ unsigned char Expired;
  /* 0x00a5 */ char __PADDING__[3];
} KTMOBJECT_NAMESPACE, *PKTMOBJECT_NAMESPACE; /* size: 0x00a8 */

typedef union _CLS_LSN
{
  union
  {
    struct
    {
      /* 0x0000 */ unsigned int idxRecord;
      /* 0x0004 */ unsigned long cidContainer;
    } /* size: 0x0008 */ offset;
    /* 0x0000 */ unsigned __int64 ullOffset;
  }; /* size: 0x0008 */
} CLS_LSN, *PCLS_LSN; /* size: 0x0008 */

typedef struct _KTM
{
  /* 0x0000 */ unsigned long cookie;
  /* 0x0004 */ long Padding_380;
  /* 0x0008 */ struct _KMUTANT Mutex;
  /* 0x0040 */ enum KTM_STATE State;
  /* 0x0044 */ long Padding_381;
  /* 0x0048 */ struct _KTMOBJECT_NAMESPACE_LINK NamespaceLink;
  /* 0x0070 */ struct _GUID TmIdentity;
  /* 0x0080 */ unsigned long Flags;
  /* 0x0084 */ unsigned long VolatileFlags;
  /* 0x0088 */ struct _UNICODE_STRING LogFileName;
  /* 0x0098 */ struct _FILE_OBJECT* LogFileObject;
  /* 0x00a0 */ void* MarshallingContext;
  /* 0x00a8 */ void* LogManagementContext;
  /* 0x00b0 */ struct _KTMOBJECT_NAMESPACE Transactions;
  /* 0x0158 */ struct _KTMOBJECT_NAMESPACE ResourceManagers;
  /* 0x0200 */ struct _KMUTANT LsnOrderedMutex;
  /* 0x0238 */ struct _LIST_ENTRY LsnOrderedList;
  /* 0x0248 */ union _LARGE_INTEGER CommitVirtualClock;
  /* 0x0250 */ struct _FAST_MUTEX CommitVirtualClockMutex;
  /* 0x0288 */ union _CLS_LSN BaseLsn;
  /* 0x0290 */ union _CLS_LSN CurrentReadLsn;
  /* 0x0298 */ union _CLS_LSN LastRecoveredLsn;
  /* 0x02a0 */ void* TmRmHandle;
  /* 0x02a8 */ struct _KRESOURCEMANAGER* TmRm;
  /* 0x02b0 */ struct _KEVENT LogFullNotifyEvent;
  /* 0x02c8 */ struct _WORK_QUEUE_ITEM CheckpointWorkItem;
  /* 0x02e8 */ union _CLS_LSN CheckpointTargetLsn;
  /* 0x02f0 */ struct _WORK_QUEUE_ITEM LogFullCompletedWorkItem;
  /* 0x0310 */ struct _ERESOURCE LogWriteResource;
  /* 0x0378 */ unsigned long LogFlags;
  /* 0x037c */ long LogFullStatus;
  /* 0x0380 */ long RecoveryStatus;
  /* 0x0384 */ long Padding_382;
  /* 0x0388 */ union _CLS_LSN LastCheckBaseLsn;
  /* 0x0390 */ struct _LIST_ENTRY RestartOrderedList;
  /* 0x03a0 */ struct _WORK_QUEUE_ITEM OfflineWorkItem;
} KTM, *PKTM; /* size: 0x03c0 */

typedef struct _PEB
{
  /* 0x0000 */ unsigned char InheritedAddressSpace;
  /* 0x0001 */ unsigned char ReadImageFileExecOptions;
  /* 0x0002 */ unsigned char BeingDebugged;
  union
  {
    /* 0x0003 */ unsigned char BitField;
    struct /* bitfield */
    {
      /* 0x0003 */ unsigned char ImageUsesLargePages : 1; /* bit position: 0 */
      /* 0x0003 */ unsigned char IsProtectedProcess : 1; /* bit position: 1 */
      /* 0x0003 */ unsigned char IsImageDynamicallyRelocated : 1; /* bit position: 2 */
      /* 0x0003 */ unsigned char SkipPatchingUser32Forwarders : 1; /* bit position: 3 */
      /* 0x0003 */ unsigned char IsPackagedProcess : 1; /* bit position: 4 */
      /* 0x0003 */ unsigned char IsAppContainer : 1; /* bit position: 5 */
      /* 0x0003 */ unsigned char IsProtectedProcessLight : 1; /* bit position: 6 */
      /* 0x0003 */ unsigned char IsLongPathAwareProcess : 1; /* bit position: 7 */
    }; /* bitfield */
  }; /* size: 0x0001 */
  /* 0x0004 */ unsigned char Padding0[4];
  /* 0x0008 */ void* Mutant;
  /* 0x0010 */ void* ImageBaseAddress;
  /* 0x0018 */ struct _PEB_LDR_DATA* Ldr;
  /* 0x0020 */ struct _RTL_USER_PROCESS_PARAMETERS* ProcessParameters;
  /* 0x0028 */ void* SubSystemData;
  /* 0x0030 */ void* ProcessHeap;
  /* 0x0038 */ struct _RTL_CRITICAL_SECTION* FastPebLock;
  /* 0x0040 */ union _SLIST_HEADER* volatile AtlThunkSListPtr;
  /* 0x0048 */ void* IFEOKey;
  union
  {
    /* 0x0050 */ unsigned long CrossProcessFlags;
    struct /* bitfield */
    {
      /* 0x0050 */ unsigned long ProcessInJob : 1; /* bit position: 0 */
      /* 0x0050 */ unsigned long ProcessInitializing : 1; /* bit position: 1 */
      /* 0x0050 */ unsigned long ProcessUsingVEH : 1; /* bit position: 2 */
      /* 0x0050 */ unsigned long ProcessUsingVCH : 1; /* bit position: 3 */
      /* 0x0050 */ unsigned long ProcessUsingFTH : 1; /* bit position: 4 */
      /* 0x0050 */ unsigned long ProcessPreviouslyThrottled : 1; /* bit position: 5 */
      /* 0x0050 */ unsigned long ProcessCurrentlyThrottled : 1; /* bit position: 6 */
      /* 0x0050 */ unsigned long ProcessImagesHotPatched : 1; /* bit position: 7 */
      /* 0x0050 */ unsigned long ReservedBits0 : 24; /* bit position: 8 */
    }; /* bitfield */
  }; /* size: 0x0004 */
  /* 0x0054 */ unsigned char Padding1[4];
  union
  {
    /* 0x0058 */ void* KernelCallbackTable;
    /* 0x0058 */ void* UserSharedInfoPtr;
  }; /* size: 0x0008 */
  /* 0x0060 */ unsigned long SystemReserved;
  /* 0x0064 */ unsigned long AtlThunkSListPtr32;
  /* 0x0068 */ void* ApiSetMap;
  /* 0x0070 */ unsigned long TlsExpansionCounter;
  /* 0x0074 */ unsigned char Padding2[4];
  /* 0x0078 */ void* TlsBitmap;
  /* 0x0080 */ unsigned long TlsBitmapBits[2];
  /* 0x0088 */ void* ReadOnlySharedMemoryBase;
  /* 0x0090 */ void* SharedData;
  /* 0x0098 */ void** ReadOnlyStaticServerData;
  /* 0x00a0 */ void* AnsiCodePageData;
  /* 0x00a8 */ void* OemCodePageData;
  /* 0x00b0 */ void* UnicodeCaseTableData;
  /* 0x00b8 */ unsigned long NumberOfProcessors;
  /* 0x00bc */ unsigned long NtGlobalFlag;
  /* 0x00c0 */ union _LARGE_INTEGER CriticalSectionTimeout;
  /* 0x00c8 */ unsigned __int64 HeapSegmentReserve;
  /* 0x00d0 */ unsigned __int64 HeapSegmentCommit;
  /* 0x00d8 */ unsigned __int64 HeapDeCommitTotalFreeThreshold;
  /* 0x00e0 */ unsigned __int64 HeapDeCommitFreeBlockThreshold;
  /* 0x00e8 */ unsigned long NumberOfHeaps;
  /* 0x00ec */ unsigned long MaximumNumberOfHeaps;
  /* 0x00f0 */ void** ProcessHeaps;
  /* 0x00f8 */ void* GdiSharedHandleTable;
  /* 0x0100 */ void* ProcessStarterHelper;
  /* 0x0108 */ unsigned long GdiDCAttributeList;
  /* 0x010c */ unsigned char Padding3[4];
  /* 0x0110 */ struct _RTL_CRITICAL_SECTION* LoaderLock;
  /* 0x0118 */ unsigned long OSMajorVersion;
  /* 0x011c */ unsigned long OSMinorVersion;
  /* 0x0120 */ unsigned short OSBuildNumber;
  /* 0x0122 */ unsigned short OSCSDVersion;
  /* 0x0124 */ unsigned long OSPlatformId;
  /* 0x0128 */ unsigned long ImageSubsystem;
  /* 0x012c */ unsigned long ImageSubsystemMajorVersion;
  /* 0x0130 */ unsigned long ImageSubsystemMinorVersion;
  /* 0x0134 */ unsigned char Padding4[4];
  /* 0x0138 */ unsigned __int64 ActiveProcessAffinityMask;
  /* 0x0140 */ unsigned long GdiHandleBuffer[60];
  /* 0x0230 */ void* PostProcessInitRoutine /* function */;
  /* 0x0238 */ void* TlsExpansionBitmap;
  /* 0x0240 */ unsigned long TlsExpansionBitmapBits[32];
  /* 0x02c0 */ unsigned long SessionId;
  /* 0x02c4 */ unsigned char Padding5[4];
  /* 0x02c8 */ union _ULARGE_INTEGER AppCompatFlags;
  /* 0x02d0 */ union _ULARGE_INTEGER AppCompatFlagsUser;
  /* 0x02d8 */ void* pShimData;
  /* 0x02e0 */ void* AppCompatInfo;
  /* 0x02e8 */ struct _UNICODE_STRING CSDVersion;
  /* 0x02f8 */ const struct _ACTIVATION_CONTEXT_DATA* ActivationContextData;
  /* 0x0300 */ struct _ASSEMBLY_STORAGE_MAP* ProcessAssemblyStorageMap;
  /* 0x0308 */ const struct _ACTIVATION_CONTEXT_DATA* SystemDefaultActivationContextData;
  /* 0x0310 */ struct _ASSEMBLY_STORAGE_MAP* SystemAssemblyStorageMap;
  /* 0x0318 */ unsigned __int64 MinimumStackCommit;
  /* 0x0320 */ void* SparePointers[4];
  /* 0x0340 */ unsigned long SpareUlongs[5];
  /* 0x0354 */ long Padding_383;
  /* 0x0358 */ void* WerRegistrationData;
  /* 0x0360 */ void* WerShipAssertPtr;
  /* 0x0368 */ void* pUnused;
  /* 0x0370 */ void* pImageHeaderHash;
  union
  {
    /* 0x0378 */ unsigned long TracingFlags;
    struct /* bitfield */
    {
      /* 0x0378 */ unsigned long HeapTracingEnabled : 1; /* bit position: 0 */
      /* 0x0378 */ unsigned long CritSecTracingEnabled : 1; /* bit position: 1 */
      /* 0x0378 */ unsigned long LibLoaderTracingEnabled : 1; /* bit position: 2 */
      /* 0x0378 */ unsigned long SpareTracingBits : 29; /* bit position: 3 */
    }; /* bitfield */
  }; /* size: 0x0004 */
  /* 0x037c */ unsigned char Padding6[4];
  /* 0x0380 */ unsigned __int64 CsrServerReadOnlySharedMemoryBase;
  /* 0x0388 */ unsigned __int64 TppWorkerpListLock;
  /* 0x0390 */ struct _LIST_ENTRY TppWorkerpList;
  /* 0x03a0 */ void* WaitOnAddressHashTable[128];
  /* 0x07a0 */ void* TelemetryCoverageHeader;
  /* 0x07a8 */ unsigned long CloudFileFlags;
  /* 0x07ac */ unsigned long CloudFileDiagFlags;
  /* 0x07b0 */ char PlaceholderCompatibilityMode;
  /* 0x07b1 */ char PlaceholderCompatibilityModeReserved[7];
  /* 0x07b8 */ struct _LEAP_SECOND_DATA* LeapSecondData;
  union
  {
    /* 0x07c0 */ unsigned long LeapSecondFlags;
    struct /* bitfield */
    {
      /* 0x07c0 */ unsigned long SixtySecondEnabled : 1; /* bit position: 0 */
      /* 0x07c0 */ unsigned long Reserved : 31; /* bit position: 1 */
    }; /* bitfield */
  }; /* size: 0x0004 */
  /* 0x07c4 */ unsigned long NtGlobalFlag2;
} PEB, *PPEB; /* size: 0x07c8 */

typedef struct _RTL_CRITICAL_SECTION
{
  /* 0x0000 */ struct _RTL_CRITICAL_SECTION_DEBUG* DebugInfo;
  /* 0x0008 */ long LockCount;
  /* 0x000c */ long RecursionCount;
  /* 0x0010 */ void* OwningThread;
  /* 0x0018 */ void* LockSemaphore;
  /* 0x0020 */ unsigned __int64 SpinCount;
} RTL_CRITICAL_SECTION, *PRTL_CRITICAL_SECTION; /* size: 0x0028 */

typedef struct _RTL_CRITICAL_SECTION_DEBUG
{
  /* 0x0000 */ unsigned short Type;
  /* 0x0002 */ unsigned short CreatorBackTraceIndex;
  /* 0x0004 */ long Padding_384;
  /* 0x0008 */ struct _RTL_CRITICAL_SECTION* CriticalSection;
  /* 0x0010 */ struct _LIST_ENTRY ProcessLocksList;
  /* 0x0020 */ unsigned long EntryCount;
  /* 0x0024 */ unsigned long ContentionCount;
  /* 0x0028 */ unsigned long Flags;
  /* 0x002c */ unsigned short CreatorBackTraceIndexHigh;
  /* 0x002e */ unsigned short SpareUSHORT;
} RTL_CRITICAL_SECTION_DEBUG, *PRTL_CRITICAL_SECTION_DEBUG; /* size: 0x0030 */

typedef struct _LEAP_SECOND_DATA
{
  /* 0x0000 */ unsigned char Enabled;
  /* 0x0001 */ char Padding_385[3];
  /* 0x0004 */ unsigned long Count;
  /* 0x0008 */ union _LARGE_INTEGER Data[1];
} LEAP_SECOND_DATA, *PLEAP_SECOND_DATA; /* size: 0x0010 */

typedef struct _MI_SESSION_DRIVER_UNLOAD
{
  union
  {
    /* 0x0000 */ void* Function /* function */;
    /* 0x0000 */ unsigned __int64 FunctionValue;
  }; /* size: 0x0008 */
} MI_SESSION_DRIVER_UNLOAD, *PMI_SESSION_DRIVER_UNLOAD; /* size: 0x0008 */

typedef struct _MM_SESSION_SPACE
{
  /* 0x0000 */ volatile long ReferenceCount;
  union
  {
    union
    {
      /* 0x0004 */ unsigned long LongFlags;
      /* 0x0004 */ struct _MM_SESSION_SPACE_FLAGS Flags;
    }; /* size: 0x0004 */
  } /* size: 0x0004 */ u;
  /* 0x0008 */ unsigned long SessionId;
  /* 0x000c */ volatile long ProcessReferenceToSession;
  /* 0x0010 */ struct _LIST_ENTRY ProcessList;
  /* 0x0020 */ unsigned __int64 SessionPageDirectoryIndex;
  /* 0x0028 */ volatile unsigned __int64 NonPagablePages;
  /* 0x0030 */ volatile unsigned __int64 CommittedPages;
  /* 0x0038 */ void* PagedPoolStart;
  /* 0x0040 */ void* PagedPoolEnd;
  /* 0x0048 */ void* SessionObject;
  /* 0x0050 */ void* SessionObjectHandle;
  /* 0x0058 */ struct _RTL_AVL_TREE ImageTree;
  /* 0x0060 */ unsigned long LocaleId;
  /* 0x0064 */ unsigned long AttachCount;
  /* 0x0068 */ struct _KGATE AttachGate;
  /* 0x0080 */ struct _LIST_ENTRY WsListEntry;
  /* 0x0090 */ struct _RTL_BALANCED_NODE WsTreeEntry;
  /* 0x00a8 */ struct _MM_PAGED_POOL_INFO PagedPoolInfo;
  /* 0x00c0 */ struct _MMSESSION Session;
  /* 0x00e0 */ unsigned __int64 CombineDomain;
  /* 0x00e8 */ long Padding_386[6];
  /* 0x0100 */ struct _MMSUPPORT_FULL Vm;
  /* 0x0240 */ struct _MMWSL_INSTANCE WorkingSetList;
  /* 0x0268 */ long Padding_387[6];
  /* 0x0280 */ struct _MMSUPPORT_AGGREGATION AggregateSessionWs;
  /* 0x02a0 */ void* HeapState;
  /* 0x02a8 */ struct _MI_SESSION_DRIVER_UNLOAD DriverUnload;
  /* 0x02b0 */ unsigned long TopLevelPteLockBits[32];
  /* 0x0330 */ struct _MMPTE PageDirectory;
  /* 0x0338 */ struct _EX_PUSH_LOCK SessionVaLock;
  /* 0x0340 */ struct _RTL_BITMAP_EX DynamicVaBitMap;
  /* 0x0350 */ unsigned __int64 DynamicVaHint;
  /* 0x0358 */ struct _EX_PUSH_LOCK SessionPteLock;
  /* 0x0360 */ long PoolBigEntriesInUse;
  /* 0x0364 */ volatile long PagedPoolPdeCount;
  /* 0x0368 */ unsigned long DynamicSessionPdeCount;
  /* 0x036c */ long Padding_388;
  /* 0x0370 */ struct _MI_SYSTEM_PTE_TYPE SystemPteInfo;
  /* 0x03d0 */ void* PoolTrackTableExpansion;
  /* 0x03d8 */ unsigned __int64 PoolTrackTableExpansionSize;
  /* 0x03e0 */ void* PoolTrackBigPages;
  /* 0x03e8 */ unsigned __int64 PoolTrackBigPagesSize;
  /* 0x03f0 */ struct _RTL_AVL_TREE PermittedFaultsTree;
  /* 0x03f8 */ enum _IO_SESSION_STATE IoState;
  /* 0x03fc */ unsigned long IoStateSequence;
  /* 0x0400 */ struct _KEVENT IoNotificationEvent;
  /* 0x0418 */ struct _EJOB* ServerSilo;
  /* 0x0420 */ unsigned __int64 CreateTime;
  /* 0x0428 */ long Padding_389[758];
  /* 0x1000 */ unsigned char PoolTags[16384];
} MM_SESSION_SPACE, *PMM_SESSION_SPACE; /* size: 0x5000 */

typedef struct _KENLISTMENT_HISTORY
{
  /* 0x0000 */ unsigned long Notification;
  /* 0x0004 */ enum _KENLISTMENT_STATE NewState;
} KENLISTMENT_HISTORY, *PKENLISTMENT_HISTORY; /* size: 0x0008 */

typedef struct _KENLISTMENT
{
  /* 0x0000 */ unsigned long cookie;
  /* 0x0004 */ long Padding_390;
  /* 0x0008 */ struct _KTMOBJECT_NAMESPACE_LINK NamespaceLink;
  /* 0x0030 */ struct _GUID EnlistmentId;
  /* 0x0040 */ struct _KMUTANT Mutex;
  /* 0x0078 */ struct _LIST_ENTRY NextSameTx;
  /* 0x0088 */ struct _LIST_ENTRY NextSameRm;
  /* 0x0098 */ struct _KRESOURCEMANAGER* ResourceManager;
  /* 0x00a0 */ struct _KTRANSACTION* Transaction;
  /* 0x00a8 */ enum _KENLISTMENT_STATE State;
  /* 0x00ac */ unsigned long Flags;
  /* 0x00b0 */ unsigned long NotificationMask;
  /* 0x00b4 */ long Padding_391;
  /* 0x00b8 */ void* Key;
  /* 0x00c0 */ unsigned long KeyRefCount;
  /* 0x00c4 */ long Padding_392;
  /* 0x00c8 */ void* RecoveryInformation;
  /* 0x00d0 */ unsigned long RecoveryInformationLength;
  /* 0x00d4 */ long Padding_393;
  /* 0x00d8 */ void* DynamicNameInformation;
  /* 0x00e0 */ unsigned long DynamicNameInformationLength;
  /* 0x00e4 */ long Padding_394;
  /* 0x00e8 */ struct _KTMNOTIFICATION_PACKET* FinalNotification;
  /* 0x00f0 */ struct _KENLISTMENT* SupSubEnlistment;
  /* 0x00f8 */ void* SupSubEnlHandle;
  /* 0x0100 */ void* SubordinateTxHandle;
  /* 0x0108 */ struct _GUID CrmEnlistmentEnId;
  /* 0x0118 */ struct _GUID CrmEnlistmentTmId;
  /* 0x0128 */ struct _GUID CrmEnlistmentRmId;
  /* 0x0138 */ unsigned long NextHistory;
  /* 0x013c */ struct _KENLISTMENT_HISTORY History[20];
  /* 0x01dc */ long __PADDING__[1];
} KENLISTMENT, *PKENLISTMENT; /* size: 0x01e0 */

typedef struct _ASYNC_READ_THREAD_STATS
{
  /* 0x0000 */ unsigned long CurrentLoad[101];
} ASYNC_READ_THREAD_STATS, *PASYNC_READ_THREAD_STATS; /* size: 0x0194 */

typedef struct _CMSI_RW_LOCK
{
  /* 0x0000 */ void* Reserved;
} CMSI_RW_LOCK, *PCMSI_RW_LOCK; /* size: 0x0008 */

typedef struct _CMP_VOLUME_MANAGER
{
  /* 0x0000 */ struct _CMSI_RW_LOCK VolumeContextListLock;
  /* 0x0008 */ struct _LIST_ENTRY VolumeContextListHead;
} CMP_VOLUME_MANAGER, *PCMP_VOLUME_MANAGER; /* size: 0x0018 */

typedef struct _CC_ASYNC_READ_CONTEXT
{
  /* 0x0000 */ void* CompletionRoutine /* function */;
  /* 0x0008 */ void* Context;
  /* 0x0010 */ struct _MDL* Mdl;
  /* 0x0018 */ char RequestorMode;
  /* 0x0019 */ char Padding_395[3];
  /* 0x001c */ unsigned long NestingLevel;
} CC_ASYNC_READ_CONTEXT, *PCC_ASYNC_READ_CONTEXT; /* size: 0x0020 */

typedef union _PS_TRUSTLET_ATTRIBUTE_ACCESSRIGHTS
{
  union
  {
    struct /* bitfield */
    {
      /* 0x0000 */ unsigned char Trustlet : 1; /* bit position: 0 */
      /* 0x0000 */ unsigned char Ntos : 1; /* bit position: 1 */
      /* 0x0000 */ unsigned char WriteHandle : 1; /* bit position: 2 */
      /* 0x0000 */ unsigned char ReadHandle : 1; /* bit position: 3 */
      /* 0x0000 */ unsigned char Reserved : 4; /* bit position: 4 */
    }; /* bitfield */
    /* 0x0000 */ unsigned char AccessRights;
  }; /* size: 0x0001 */
} PS_TRUSTLET_ATTRIBUTE_ACCESSRIGHTS, *PPS_TRUSTLET_ATTRIBUTE_ACCESSRIGHTS; /* size: 0x0001 */

typedef struct _PO_DIAG_STACK_RECORD
{
  /* 0x0000 */ unsigned long StackDepth;
  /* 0x0004 */ long Padding_396;
  /* 0x0008 */ void* Stack[1];
} PO_DIAG_STACK_RECORD, *PPO_DIAG_STACK_RECORD; /* size: 0x0010 */

typedef struct _CM_DIRTY_VECTOR_LOG_ENTRY
{
  /* 0x0000 */ struct _ETHREAD* Thread;
  /* 0x0008 */ enum _CM_DIRTY_VECTOR_OPERATION Operation;
  union
  {
    union
    {
      struct
      {
        /* 0x000c */ unsigned long Start;
        /* 0x0010 */ unsigned long Length;
      } /* size: 0x0008 */ DirtyVectorModifiedContext;
      struct
      {
        /* 0x000c */ unsigned long RangeCount;
        /* 0x0010 */ unsigned long SetBitCount;
      } /* size: 0x0008 */ DirtyDataCaptureContext;
      struct
      {
        /* 0x000c */ unsigned long Context1;
        /* 0x0010 */ unsigned long Context2;
      } /* size: 0x0008 */ Raw;
    }; /* size: 0x0008 */
  } /* size: 0x0008 */ Data;
  /* 0x0014 */ long Padding_397;
  /* 0x0018 */ void* Stack[6];
} CM_DIRTY_VECTOR_LOG_ENTRY, *PCM_DIRTY_VECTOR_LOG_ENTRY; /* size: 0x0048 */

typedef struct _CM_DIRTY_VECTOR_LOG
{
  /* 0x0000 */ volatile unsigned long Next;
  /* 0x0004 */ unsigned long Size;
  /* 0x0008 */ struct _CM_DIRTY_VECTOR_LOG_ENTRY Log[16];
} CM_DIRTY_VECTOR_LOG, *PCM_DIRTY_VECTOR_LOG; /* size: 0x0488 */

typedef struct _IMAGE_DATA_DIRECTORY
{
  /* 0x0000 */ unsigned long VirtualAddress;
  /* 0x0004 */ unsigned long Size;
} IMAGE_DATA_DIRECTORY, *PIMAGE_DATA_DIRECTORY; /* size: 0x0008 */

struct tagSWITCH_CONTEXT_DATA
{
  /* 0x0000 */ unsigned __int64 ullOsMaxVersionTested;
  /* 0x0008 */ unsigned long ulTargetPlatform;
  /* 0x000c */ long Padding_398;
  /* 0x0010 */ unsigned __int64 ullContextMinimum;
  /* 0x0018 */ struct _GUID guPlatform;
  /* 0x0028 */ struct _GUID guMinPlatform;
  /* 0x0038 */ unsigned long ulContextSource;
  /* 0x003c */ unsigned long ulElementCount;
  /* 0x0040 */ struct _GUID guElements[48];
}; /* size: 0x0340 */

typedef struct _EVENT_DATA_DESCRIPTOR
{
  /* 0x0000 */ unsigned __int64 Ptr;
  /* 0x0008 */ unsigned long Size;
  union
  {
    /* 0x000c */ unsigned long Reserved;
    struct
    {
      /* 0x000c */ unsigned char Type;
      /* 0x000d */ unsigned char Reserved1;
      /* 0x000e */ unsigned short Reserved2;
    }; /* size: 0x0004 */
  }; /* size: 0x0004 */
} EVENT_DATA_DESCRIPTOR, *PEVENT_DATA_DESCRIPTOR; /* size: 0x0010 */

typedef struct _RTL_DYNAMIC_HASH_TABLE_ENTRY
{
  /* 0x0000 */ struct _LIST_ENTRY Linkage;
  /* 0x0010 */ unsigned __int64 Signature;
} RTL_DYNAMIC_HASH_TABLE_ENTRY, *PRTL_DYNAMIC_HASH_TABLE_ENTRY; /* size: 0x0018 */

typedef struct _RTL_DYNAMIC_HASH_TABLE_ENUMERATOR
{
  union
  {
    /* 0x0000 */ struct _RTL_DYNAMIC_HASH_TABLE_ENTRY HashEntry;
    /* 0x0000 */ struct _LIST_ENTRY* CurEntry;
  }; /* size: 0x0018 */
  /* 0x0018 */ struct _LIST_ENTRY* ChainHead;
  /* 0x0020 */ unsigned long BucketIndex;
  /* 0x0024 */ long __PADDING__[1];
} RTL_DYNAMIC_HASH_TABLE_ENUMERATOR, *PRTL_DYNAMIC_HASH_TABLE_ENUMERATOR; /* size: 0x0028 */

typedef struct _EXCEPTION_REGISTRATION_RECORD
{
  /* 0x0000 */ struct _EXCEPTION_REGISTRATION_RECORD* Next;
  /* 0x0008 */ void* Handler /* function */;
} EXCEPTION_REGISTRATION_RECORD, *PEXCEPTION_REGISTRATION_RECORD; /* size: 0x0010 */

typedef struct _MMVAD_FLAGS1
{
  struct /* bitfield */
  {
    /* 0x0000 */ unsigned long CommitCharge : 31; /* bit position: 0 */
    /* 0x0000 */ unsigned long MemCommit : 1; /* bit position: 31 */
  }; /* bitfield */
} MMVAD_FLAGS1, *PMMVAD_FLAGS1; /* size: 0x0004 */

typedef struct _KTSS64
{
  /* 0x0000 */ unsigned long Reserved0;
  /* 0x0004 */ unsigned __int64 Rsp0;
  /* 0x000c */ unsigned __int64 Rsp1;
  /* 0x0014 */ unsigned __int64 Rsp2;
  /* 0x001c */ unsigned __int64 Ist[8];
  /* 0x005c */ unsigned __int64 Reserved1;
  /* 0x0064 */ unsigned short Reserved2;
  /* 0x0066 */ unsigned short IoMapBase;
} KTSS64, *PKTSS64; /* size: 0x0068 */

typedef struct _MI_ACTIVE_PFN
{
  union
  {
    struct
    {
      struct /* bitfield */
      {
        /* 0x0000 */ unsigned __int64 Tradable : 1; /* bit position: 0 */
        /* 0x0000 */ unsigned __int64 NonPagedBuddy : 43; /* bit position: 1 */
      }; /* bitfield */
    } /* size: 0x0008 */ Leaf;
    struct
    {
      struct /* bitfield */
      {
        /* 0x0000 */ unsigned __int64 Tradable : 1; /* bit position: 0 */
        /* 0x0000 */ unsigned __int64 WsleAge : 3; /* bit position: 1 */
        /* 0x0000 */ unsigned __int64 OldestWsleLeafEntries : 10; /* bit position: 4 */
        /* 0x0000 */ unsigned __int64 OldestWsleLeafAge : 3; /* bit position: 14 */
        /* 0x0000 */ unsigned __int64 NonPagedBuddy : 43; /* bit position: 17 */
      }; /* bitfield */
    } /* size: 0x0008 */ PageTable;
    /* 0x0000 */ unsigned __int64 EntireActiveField;
  }; /* size: 0x0008 */
} MI_ACTIVE_PFN, *PMI_ACTIVE_PFN; /* size: 0x0008 */

typedef struct _ACTIVATION_CONTEXT_STACK32
{
  /* 0x0000 */ unsigned long ActiveFrame;
  /* 0x0004 */ struct LIST_ENTRY32 FrameListCache;
  /* 0x000c */ unsigned long Flags;
  /* 0x0010 */ unsigned long NextCookieSequenceNumber;
  /* 0x0014 */ unsigned long StackId;
} ACTIVATION_CONTEXT_STACK32, *PACTIVATION_CONTEXT_STACK32; /* size: 0x0018 */

typedef struct _WHEA_ERROR_SOURCE_DESCRIPTOR
{
  /* 0x0000 */ unsigned long Length;
  /* 0x0004 */ unsigned long Version;
  /* 0x0008 */ enum _WHEA_ERROR_SOURCE_TYPE Type;
  /* 0x000c */ enum _WHEA_ERROR_SOURCE_STATE State;
  /* 0x0010 */ unsigned long MaxRawDataLength;
  /* 0x0014 */ unsigned long NumRecordsToPreallocate;
  /* 0x0018 */ unsigned long MaxSectionsPerRecord;
  /* 0x001c */ unsigned long ErrorSourceId;
  /* 0x0020 */ unsigned long PlatformErrorSourceId;
  /* 0x0024 */ unsigned long Flags;
  union
  {
    union
    {
      /* 0x0028 */ struct _WHEA_XPF_MCE_DESCRIPTOR XpfMceDescriptor;
      /* 0x0028 */ struct _WHEA_XPF_CMC_DESCRIPTOR XpfCmcDescriptor;
      /* 0x0028 */ struct _WHEA_XPF_NMI_DESCRIPTOR XpfNmiDescriptor;
      /* 0x0028 */ struct _WHEA_IPF_MCA_DESCRIPTOR IpfMcaDescriptor;
      /* 0x0028 */ struct _WHEA_IPF_CMC_DESCRIPTOR IpfCmcDescriptor;
      /* 0x0028 */ struct _WHEA_IPF_CPE_DESCRIPTOR IpfCpeDescriptor;
      /* 0x0028 */ struct _WHEA_AER_ROOTPORT_DESCRIPTOR AerRootportDescriptor;
      /* 0x0028 */ struct _WHEA_AER_ENDPOINT_DESCRIPTOR AerEndpointDescriptor;
      /* 0x0028 */ struct _WHEA_AER_BRIDGE_DESCRIPTOR AerBridgeDescriptor;
      /* 0x0028 */ struct _WHEA_GENERIC_ERROR_DESCRIPTOR GenErrDescriptor;
      /* 0x0028 */ struct _WHEA_GENERIC_ERROR_DESCRIPTOR_V2 GenErrDescriptorV2;
      /* 0x0028 */ struct _WHEA_DEVICE_DRIVER_DESCRIPTOR DeviceDriverDescriptor;
    }; /* size: 0x03a4 */
  } /* size: 0x03a4 */ Info;
} WHEA_ERROR_SOURCE_DESCRIPTOR, *PWHEA_ERROR_SOURCE_DESCRIPTOR; /* size: 0x03cc */

typedef struct _MCUPDATE_INFO
{
  /* 0x0000 */ struct _LIST_ENTRY List;
  /* 0x0010 */ unsigned long Status;
  /* 0x0014 */ long Padding_399;
  /* 0x0018 */ unsigned __int64 Id;
  /* 0x0020 */ unsigned __int64 VendorScratch[2];
} MCUPDATE_INFO, *PMCUPDATE_INFO; /* size: 0x0030 */

typedef struct _DEVPROPKEY
{
  /* 0x0000 */ struct _GUID fmtid;
  /* 0x0010 */ unsigned long pid;
} DEVPROPKEY, *PDEVPROPKEY; /* size: 0x0014 */

typedef struct _IO_APIC_DATA
{
  /* 0x0000 */ unsigned __int64 PhysicalAddress;
  /* 0x0008 */ unsigned long Identifier;
  /* 0x000c */ long Padding_400;
  /* 0x0010 */ struct _IO_APIC_REGISTERS* BaseAddress;
  /* 0x0018 */ unsigned char Version;
  /* 0x0019 */ unsigned char PinCount;
  /* 0x001a */ unsigned char Initialized;
  /* 0x001b */ unsigned char InitializedFirstLocalUnit;
  /* 0x001c */ unsigned long GsiBase;
  /* 0x0020 */ unsigned long CmciRegister;
  /* 0x0024 */ unsigned long DeferredErrorRegister;
  /* 0x0028 */ unsigned char IoUnitMissing;
  /* 0x0029 */ char __PADDING__[7];
} IO_APIC_DATA, *PIO_APIC_DATA; /* size: 0x0030 */

typedef struct _IO_APIC_REGISTERS
{
  /* 0x0000 */ volatile unsigned long RegisterIndex;
  /* 0x0004 */ volatile unsigned long Reserved1[3];
  /* 0x0010 */ volatile unsigned long RegisterValue;
  /* 0x0014 */ volatile unsigned long Reserved2[11];
  /* 0x0040 */ volatile unsigned long EndOfInterrupt;
} IO_APIC_REGISTERS, *PIO_APIC_REGISTERS; /* size: 0x0044 */

typedef struct _HMAP_ENTRY
{
  /* 0x0000 */ unsigned __int64 BlockOffset;
  /* 0x0008 */ unsigned __int64 PermanentBinAddress;
  /* 0x0010 */ unsigned long MemAlloc;
  /* 0x0014 */ long __PADDING__[1];
} HMAP_ENTRY, *PHMAP_ENTRY; /* size: 0x0018 */

typedef struct _HMAP_TABLE
{
  /* 0x0000 */ struct _HMAP_ENTRY Table[512];
} HMAP_TABLE, *PHMAP_TABLE; /* size: 0x3000 */

typedef struct _SECURITY_DESCRIPTOR_RELATIVE
{
  /* 0x0000 */ unsigned char Revision;
  /* 0x0001 */ unsigned char Sbz1;
  /* 0x0002 */ unsigned short Control;
  /* 0x0004 */ unsigned long Owner;
  /* 0x0008 */ unsigned long Group;
  /* 0x000c */ unsigned long Sacl;
  /* 0x0010 */ unsigned long Dacl;
} SECURITY_DESCRIPTOR_RELATIVE, *PSECURITY_DESCRIPTOR_RELATIVE; /* size: 0x0014 */

typedef struct _SECTION_IMAGE_INFORMATION
{
  /* 0x0000 */ void* TransferAddress;
  /* 0x0008 */ unsigned long ZeroBits;
  /* 0x000c */ long Padding_401;
  /* 0x0010 */ unsigned __int64 MaximumStackSize;
  /* 0x0018 */ unsigned __int64 CommittedStackSize;
  /* 0x0020 */ unsigned long SubSystemType;
  union
  {
    struct
    {
      /* 0x0024 */ unsigned short SubSystemMinorVersion;
      /* 0x0026 */ unsigned short SubSystemMajorVersion;
    }; /* size: 0x0004 */
    /* 0x0024 */ unsigned long SubSystemVersion;
  }; /* size: 0x0004 */
  union
  {
    struct
    {
      /* 0x0028 */ unsigned short MajorOperatingSystemVersion;
      /* 0x002a */ unsigned short MinorOperatingSystemVersion;
    }; /* size: 0x0004 */
    /* 0x0028 */ unsigned long OperatingSystemVersion;
  }; /* size: 0x0004 */
  /* 0x002c */ unsigned short ImageCharacteristics;
  /* 0x002e */ unsigned short DllCharacteristics;
  /* 0x0030 */ unsigned short Machine;
  /* 0x0032 */ unsigned char ImageContainsCode;
  union
  {
    /* 0x0033 */ unsigned char ImageFlags;
    struct /* bitfield */
    {
      /* 0x0033 */ unsigned char ComPlusNativeReady : 1; /* bit position: 0 */
      /* 0x0033 */ unsigned char ComPlusILOnly : 1; /* bit position: 1 */
      /* 0x0033 */ unsigned char ImageDynamicallyRelocated : 1; /* bit position: 2 */
      /* 0x0033 */ unsigned char ImageMappedFlat : 1; /* bit position: 3 */
      /* 0x0033 */ unsigned char BaseBelow4gb : 1; /* bit position: 4 */
      /* 0x0033 */ unsigned char ComPlusPrefer32bit : 1; /* bit position: 5 */
      /* 0x0033 */ unsigned char Reserved : 2; /* bit position: 6 */
    }; /* bitfield */
  }; /* size: 0x0001 */
  /* 0x0034 */ unsigned long LoaderFlags;
  /* 0x0038 */ unsigned long ImageFileSize;
  /* 0x003c */ unsigned long CheckSum;
} SECTION_IMAGE_INFORMATION, *PSECTION_IMAGE_INFORMATION; /* size: 0x0040 */

typedef struct _DMA_REQUEST_LINE_BINDING_DESCRIPTION
{
  /* 0x0000 */ unsigned long RequestLine;
  /* 0x0004 */ unsigned long ChannelNumber;
} DMA_REQUEST_LINE_BINDING_DESCRIPTION, *PDMA_REQUEST_LINE_BINDING_DESCRIPTION; /* size: 0x0008 */

typedef struct _MMPFNLIST_SHORT
{
  /* 0x0000 */ unsigned __int64 Total;
  /* 0x0008 */ unsigned __int64 Flink;
  /* 0x0010 */ unsigned __int64 Blink;
} MMPFNLIST_SHORT, *PMMPFNLIST_SHORT; /* size: 0x0018 */

struct wil_details_StagingConfigWnfStateName
{
  /* 0x0000 */ unsigned int Data[2];
}; /* size: 0x0008 */

typedef struct _IOSAPIC
{
  /* 0x0000 */ unsigned char Type;
  /* 0x0001 */ unsigned char Length;
  /* 0x0002 */ unsigned char IOSAPICID;
  /* 0x0003 */ unsigned char Reserved;
  /* 0x0004 */ unsigned long SystemVectorBase;
  /* 0x0008 */ unsigned __int64 IOSAPICAddress;
} IOSAPIC, *PIOSAPIC; /* size: 0x0010 */

typedef struct _ACPI_CACHED_TABLE
{
  /* 0x0000 */ struct _LIST_ENTRY Links;
  /* 0x0010 */ union _LARGE_INTEGER PhysicalAddress;
  /* 0x0018 */ struct _DESCRIPTION_HEADER Header;
  /* 0x003c */ long __PADDING__[1];
} ACPI_CACHED_TABLE, *PACPI_CACHED_TABLE; /* size: 0x0040 */

typedef struct _MI_PAGEFILE_BITMAPS_CACHE_ENTRY
{
  union
  {
    /* 0x0000 */ struct _RTL_BALANCED_NODE LengthTreeNode;
    /* 0x0000 */ struct _LIST_ENTRY FreeListEntry;
  }; /* size: 0x0018 */
  /* 0x0018 */ struct _RTL_BALANCED_NODE LocationTreeNode;
  /* 0x0030 */ unsigned long StartingIndex;
  /* 0x0034 */ unsigned long Length;
} MI_PAGEFILE_BITMAPS_CACHE_ENTRY, *PMI_PAGEFILE_BITMAPS_CACHE_ENTRY; /* size: 0x0038 */

typedef struct _LOCAL_NMISOURCE
{
  /* 0x0000 */ unsigned char Type;
  /* 0x0001 */ unsigned char Length;
  /* 0x0002 */ unsigned char ProcessorID;
  /* 0x0003 */ unsigned short Flags;
  /* 0x0005 */ unsigned char LINTIN;
} LOCAL_NMISOURCE, *PLOCAL_NMISOURCE; /* size: 0x0006 */

typedef struct _EVENT_HEADER_EXTENDED_DATA_ITEM
{
  /* 0x0000 */ unsigned short Reserved1;
  /* 0x0002 */ unsigned short ExtType;
  struct /* bitfield */
  {
    /* 0x0004 */ unsigned short Linkage : 1; /* bit position: 0 */
    /* 0x0004 */ unsigned short Reserved2 : 15; /* bit position: 1 */
  }; /* bitfield */
  /* 0x0006 */ unsigned short DataSize;
  /* 0x0008 */ unsigned __int64 DataPtr;
} EVENT_HEADER_EXTENDED_DATA_ITEM, *PEVENT_HEADER_EXTENDED_DATA_ITEM; /* size: 0x0010 */

typedef struct _RTL_FEATURE_USAGE_REPORT
{
  /* 0x0000 */ unsigned int FeatureId;
  /* 0x0004 */ unsigned short ReportingKind;
  /* 0x0006 */ unsigned short ReportingOptions;
} RTL_FEATURE_USAGE_REPORT, *PRTL_FEATURE_USAGE_REPORT; /* size: 0x0008 */

typedef struct __WIL__WNF_STATE_NAME
{
  /* 0x0000 */ unsigned long Data[2];
} _WIL__WNF_STATE_NAME, *P_WIL__WNF_STATE_NAME; /* size: 0x0008 */

typedef struct _DMA_ADAPTER_INFO_V1
{
  /* 0x0000 */ unsigned long ReadDmaCounterAvailable;
  /* 0x0004 */ unsigned long ScatterGatherLimit;
  /* 0x0008 */ unsigned long DmaAddressWidth;
  /* 0x000c */ unsigned long Flags;
  /* 0x0010 */ unsigned long MinimumTransferUnit;
} DMA_ADAPTER_INFO_V1, *PDMA_ADAPTER_INFO_V1; /* size: 0x0014 */

typedef struct _DMA_ADAPTER_INFO
{
  /* 0x0000 */ unsigned long Version;
  /* 0x0004 */ struct _DMA_ADAPTER_INFO_V1 V1;
} DMA_ADAPTER_INFO, *PDMA_ADAPTER_INFO; /* size: 0x0018 */

typedef struct _DMA_COMMON_BUFFER_VECTOR
{
  /* 0x0000 */ struct _LIST_ENTRY ListEntry;
  /* 0x0010 */ unsigned __int64 SizeOfEntries;
  /* 0x0018 */ unsigned long NumberOfEntries;
  /* 0x001c */ long Padding_402;
  /* 0x0020 */ struct _HALP_DMA_DOMAIN_OBJECT* Domain;
  /* 0x0028 */ struct _MDL* Mdl;
  /* 0x0030 */ void* BaseAddress;
  /* 0x0038 */ unsigned __int64 BaseLogicalAddress;
  /* 0x0040 */ struct _DMA_COMMON_BUFFER_ENTRY* Entries;
} DMA_COMMON_BUFFER_VECTOR, *PDMA_COMMON_BUFFER_VECTOR; /* size: 0x0048 */

typedef struct _RTLP_HP_QUEUE_LOCK_HANDLE
{
  /* 0x0000 */ unsigned __int64 Reserved1;
  /* 0x0008 */ unsigned __int64 LockPtr;
  /* 0x0010 */ unsigned __int64 HandleData;
} RTLP_HP_QUEUE_LOCK_HANDLE, *PRTLP_HP_QUEUE_LOCK_HANDLE; /* size: 0x0018 */

struct wil_details_StagingConfigHeaderProperties
{
  struct /* bitfield */
  {
    /* 0x0000 */ unsigned int ignoreServiceState : 1; /* bit position: 0 */
    /* 0x0000 */ unsigned int ignoreUserState : 1; /* bit position: 1 */
    /* 0x0000 */ unsigned int ignoreTestState : 1; /* bit position: 2 */
    /* 0x0000 */ unsigned int ignoreVariants : 1; /* bit position: 3 */
    /* 0x0000 */ unsigned int unused : 28; /* bit position: 4 */
  }; /* bitfield */
}; /* size: 0x0004 */

struct wil_details_StagingConfigHeader
{
  /* 0x0000 */ unsigned char version;
  /* 0x0001 */ unsigned char versionMinor;
  /* 0x0002 */ unsigned short headerSizeBytes;
  /* 0x0004 */ unsigned short featureCount;
  /* 0x0006 */ unsigned short featureUsageTriggerCount;
  /* 0x0008 */ struct wil_details_StagingConfigHeaderProperties sessionProperties;
  /* 0x000c */ struct wil_details_StagingConfigHeaderProperties properties;
}; /* size: 0x0010 */

struct FEATURE_ERROR
{
  /* 0x0000 */ HRESULT hr;
  /* 0x0004 */ unsigned short lineNumber;
  /* 0x0006 */ char Padding_403[2];
  /* 0x0008 */ const char* file;
  /* 0x0010 */ const char* process;
  /* 0x0018 */ const char* modulePath;
  /* 0x0020 */ unsigned int callerReturnAddressOffset;
  /* 0x0024 */ long Padding_404;
  /* 0x0028 */ const char* callerModule;
  /* 0x0030 */ const char* message;
  /* 0x0038 */ unsigned short originLineNumber;
  /* 0x003a */ char Padding_405[6];
  /* 0x0040 */ const char* originFile;
  /* 0x0048 */ const char* originModule;
  /* 0x0050 */ unsigned int originCallerReturnAddressOffset;
  /* 0x0054 */ long Padding_406;
  /* 0x0058 */ const char* originCallerModule;
  /* 0x0060 */ const char* originName;
}; /* size: 0x0068 */

typedef struct _HEAP_LFH_UNUSED_BYTES_INFO
{
  union
  {
    struct /* bitfield */
    {
      /* 0x0000 */ unsigned short UnusedBytes : 14; /* bit position: 0 */
      /* 0x0000 */ unsigned short ExtraPresent : 1; /* bit position: 14 */
      /* 0x0000 */ unsigned short OneByteUnused : 1; /* bit position: 15 */
    }; /* bitfield */
    /* 0x0000 */ unsigned char Bytes[2];
  }; /* size: 0x0002 */
} HEAP_LFH_UNUSED_BYTES_INFO, *PHEAP_LFH_UNUSED_BYTES_INFO; /* size: 0x0002 */

typedef struct _EXT_IOMMU_DEVICE_ID_PCI
{
  union
  {
    /* 0x0000 */ unsigned __int64 AsUINT64;
    struct
    {
      /* 0x0000 */ unsigned short PciSegmentNumber;
      struct /* bitfield */
      {
        /* 0x0002 */ unsigned short PhantomFunctionBits : 2; /* bit position: 0 */
        /* 0x0002 */ unsigned short BusRange : 1; /* bit position: 2 */
        /* 0x0002 */ unsigned short Reserved : 5; /* bit position: 3 */
        /* 0x0002 */ unsigned short StartBusNumber : 8; /* bit position: 8 */
      }; /* bitfield */
      union
      {
        /* 0x0004 */ unsigned short Bdf;
        struct
        {
          /* 0x0004 */ unsigned char SubordinateBus;
          /* 0x0005 */ unsigned char SecondaryBus;
        }; /* size: 0x0002 */
      }; /* size: 0x0002 */
      /* 0x0006 */ unsigned short DevicePathLength;
    }; /* size: 0x0008 */
  }; /* size: 0x0008 */
  /* 0x0008 */ wchar_t* DevicePath;
} EXT_IOMMU_DEVICE_ID_PCI, *PEXT_IOMMU_DEVICE_ID_PCI; /* size: 0x0010 */

typedef struct _EXT_IOMMU_DEVICE_ID_ACPI
{
  /* 0x0000 */ const char* ObjectName;
} EXT_IOMMU_DEVICE_ID_ACPI, *PEXT_IOMMU_DEVICE_ID_ACPI; /* size: 0x0008 */

typedef struct _EXT_IOMMU_DEVICE_ID_GIC
{
  /* 0x0000 */ unsigned int LineNumber;
} EXT_IOMMU_DEVICE_ID_GIC, *PEXT_IOMMU_DEVICE_ID_GIC; /* size: 0x0004 */

typedef struct _EXT_IOMMU_DEVICE_ID
{
  /* 0x0000 */ enum _EXT_IOMMU_DEVICE_TYPE DeviceType;
  /* 0x0004 */ union _EXT_IOMMU_DEVICE_ID_FLAGS Flags;
  /* 0x0006 */ char Padding_407[2];
  union
  {
    /* 0x0008 */ struct _EXT_IOMMU_DEVICE_ID_PCI Pci;
    /* 0x0008 */ struct _EXT_IOMMU_DEVICE_ID_ACPI Acpi;
    /* 0x0008 */ unsigned char IoApicId;
    /* 0x0008 */ unsigned __int64 LogicalId;
    /* 0x0008 */ struct _EXT_IOMMU_DEVICE_ID_TEST Test;
    struct
    {
      /* 0x0008 */ struct _EXT_IOMMU_DEVICE_ID_GIC Gic;
      /* 0x000c */ long __PADDING__[3];
    }; /* size: 0x0010 */
  }; /* size: 0x0010 */
} EXT_IOMMU_DEVICE_ID, *PEXT_IOMMU_DEVICE_ID; /* size: 0x0018 */

typedef struct _MI_CONTROL_AREA_WAIT_BLOCK
{
  /* 0x0000 */ struct _MI_CONTROL_AREA_WAIT_BLOCK* Next;
  /* 0x0008 */ unsigned long WaitReason;
  /* 0x000c */ unsigned long WaitResponse;
  /* 0x0010 */ struct _KGATE Gate;
} MI_CONTROL_AREA_WAIT_BLOCK, *PMI_CONTROL_AREA_WAIT_BLOCK; /* size: 0x0028 */

typedef struct _MMSECTION_FLAGS
{
  struct /* bitfield */
  {
    /* 0x0000 */ unsigned int BeingDeleted : 1; /* bit position: 0 */
    /* 0x0000 */ unsigned int BeingCreated : 1; /* bit position: 1 */
    /* 0x0000 */ unsigned int BeingPurged : 1; /* bit position: 2 */
    /* 0x0000 */ unsigned int NoModifiedWriting : 1; /* bit position: 3 */
    /* 0x0000 */ unsigned int FailAllIo : 1; /* bit position: 4 */
    /* 0x0000 */ unsigned int Image : 1; /* bit position: 5 */
    /* 0x0000 */ unsigned int Based : 1; /* bit position: 6 */
    /* 0x0000 */ unsigned int File : 1; /* bit position: 7 */
    /* 0x0000 */ unsigned int AttemptingDelete : 1; /* bit position: 8 */
    /* 0x0000 */ unsigned int PrefetchCreated : 1; /* bit position: 9 */
    /* 0x0000 */ unsigned int PhysicalMemory : 1; /* bit position: 10 */
    /* 0x0000 */ unsigned int ImageControlAreaOnRemovableMedia : 1; /* bit position: 11 */
    /* 0x0000 */ unsigned int Reserve : 1; /* bit position: 12 */
    /* 0x0000 */ unsigned int Commit : 1; /* bit position: 13 */
    /* 0x0000 */ unsigned int NoChange : 1; /* bit position: 14 */
    /* 0x0000 */ unsigned int WasPurged : 1; /* bit position: 15 */
    /* 0x0000 */ unsigned int UserReference : 1; /* bit position: 16 */
    /* 0x0000 */ unsigned int GlobalMemory : 1; /* bit position: 17 */
    /* 0x0000 */ unsigned int DeleteOnClose : 1; /* bit position: 18 */
    /* 0x0000 */ unsigned int FilePointerNull : 1; /* bit position: 19 */
    /* 0x0000 */ unsigned long PreferredNode : 6; /* bit position: 20 */
    /* 0x0000 */ unsigned int GlobalOnlyPerSession : 1; /* bit position: 26 */
    /* 0x0000 */ unsigned int UserWritable : 1; /* bit position: 27 */
    /* 0x0000 */ unsigned int SystemVaAllocated : 1; /* bit position: 28 */
    /* 0x0000 */ unsigned int PreferredFsCompressionBoundary : 1; /* bit position: 29 */
    /* 0x0000 */ unsigned int UsingFileExtents : 1; /* bit position: 30 */
    /* 0x0000 */ unsigned int PageSize64K : 1; /* bit position: 31 */
  }; /* bitfield */
} MMSECTION_FLAGS, *PMMSECTION_FLAGS; /* size: 0x0004 */

typedef struct _CONTROL_AREA
{
  /* 0x0000 */ struct _SEGMENT* Segment;
  union
  {
    /* 0x0008 */ struct _LIST_ENTRY ListHead;
    /* 0x0008 */ void* AweContext;
  }; /* size: 0x0010 */
  /* 0x0018 */ unsigned __int64 NumberOfSectionReferences;
  /* 0x0020 */ unsigned __int64 NumberOfPfnReferences;
  /* 0x0028 */ unsigned __int64 NumberOfMappedViews;
  /* 0x0030 */ unsigned __int64 NumberOfUserReferences;
  union
  {
    union
    {
      /* 0x0038 */ unsigned long LongFlags;
      /* 0x0038 */ struct _MMSECTION_FLAGS Flags;
    }; /* size: 0x0004 */
  } /* size: 0x0004 */ u;
  union
  {
    union
    {
      /* 0x003c */ unsigned long LongFlags;
      /* 0x003c */ struct _MMSECTION_FLAGS2 Flags;
    }; /* size: 0x0004 */
  } /* size: 0x0004 */ u1;
  /* 0x0040 */ struct _EX_FAST_REF FilePointer;
  /* 0x0048 */ volatile long ControlAreaLock;
  /* 0x004c */ unsigned long ModifiedWriteCount;
  /* 0x0050 */ struct _MI_CONTROL_AREA_WAIT_BLOCK* WaitList;
  union
  {
    struct
    {
      union
      {
        /* 0x0058 */ unsigned long NumberOfSystemCacheViews;
        /* 0x0058 */ unsigned long ImageRelocationStartBit;
      }; /* size: 0x0004 */
      union
      {
        /* 0x005c */ volatile long WritableUserReferences;
        struct /* bitfield */
        {
          /* 0x005c */ unsigned long ImageRelocationSizeIn64k : 16; /* bit position: 0 */
          /* 0x005c */ unsigned long SystemImage : 1; /* bit position: 16 */
          /* 0x005c */ unsigned long CantMove : 1; /* bit position: 17 */
          /* 0x005c */ unsigned long StrongCode : 2; /* bit position: 18 */
          /* 0x005c */ unsigned long BitMap : 2; /* bit position: 20 */
          /* 0x005c */ unsigned long ImageActive : 1; /* bit position: 22 */
          /* 0x005c */ unsigned long ImageBaseOkToReuse : 1; /* bit position: 23 */
        }; /* bitfield */
      }; /* size: 0x0004 */
      union
      {
        /* 0x0060 */ unsigned long FlushInProgressCount;
        /* 0x0060 */ unsigned long NumberOfSubsections;
        /* 0x0060 */ struct _MI_IMAGE_SECURITY_REFERENCE* SeImageStub;
      }; /* size: 0x0008 */
    } /* size: 0x0010 */ e2;
  } /* size: 0x0010 */ u2;
  /* 0x0068 */ struct _EX_PUSH_LOCK FileObjectLock;
  /* 0x0070 */ volatile unsigned __int64 LockedPages;
  union
  {
    union
    {
      struct /* bitfield */
      {
        /* 0x0078 */ unsigned __int64 IoAttributionContext : 61; /* bit position: 0 */
        /* 0x0078 */ unsigned __int64 Spare : 3; /* bit position: 61 */
      }; /* bitfield */
      /* 0x0078 */ unsigned __int64 ImageCrossPartitionCharge;
      /* 0x0078 */ unsigned __int64 CommittedPageCount : 36; /* bit position: 0 */
    }; /* size: 0x0008 */
  } /* size: 0x0008 */ u3;
} CONTROL_AREA, *PCONTROL_AREA; /* size: 0x0080 */

typedef struct _HEAP_LIST_LOOKUP
{
  /* 0x0000 */ struct _HEAP_LIST_LOOKUP* ExtendedLookup;
  /* 0x0008 */ unsigned long ArraySize;
  /* 0x000c */ unsigned long ExtraItem;
  /* 0x0010 */ unsigned long ItemCount;
  /* 0x0014 */ unsigned long OutOfRangeItems;
  /* 0x0018 */ unsigned long BaseIndex;
  /* 0x001c */ long Padding_408;
  /* 0x0020 */ struct _LIST_ENTRY* ListHead;
  /* 0x0028 */ unsigned long* ListsInUseUlong;
  /* 0x0030 */ struct _LIST_ENTRY** ListHints;
} HEAP_LIST_LOOKUP, *PHEAP_LIST_LOOKUP; /* size: 0x0038 */

typedef struct _HALP_DMA_MASTER_ADAPTER_OBJECT
{
  /* 0x0000 */ struct _HALP_DMA_ADAPTER_OBJECT AdapterObject;
  /* 0x0098 */ struct _LIST_ENTRY ContiguousAdapterQueue;
  /* 0x00a8 */ struct _LIST_ENTRY ScatterAdapterQueue;
  /* 0x00b8 */ unsigned long MapBufferSize;
  /* 0x00bc */ long Padding_409;
  /* 0x00c0 */ union _LARGE_INTEGER MapBufferPhysicalAddress;
  /* 0x00c8 */ unsigned long ContiguousPageCount;
  /* 0x00cc */ unsigned long ContiguousPageLimit;
  /* 0x00d0 */ unsigned long ScatterPageCount;
  /* 0x00d4 */ unsigned long ScatterPageLimit;
} HALP_DMA_MASTER_ADAPTER_OBJECT, *PHALP_DMA_MASTER_ADAPTER_OBJECT; /* size: 0x00d8 */

typedef struct _MI_CLONE_BLOCK_FLAGS
{
  struct /* bitfield */
  {
    /* 0x0000 */ unsigned __int64 ActualCloneCommit : 59; /* bit position: 0 */
    /* 0x0000 */ unsigned __int64 CloneProtection : 5; /* bit position: 59 */
  }; /* bitfield */
} MI_CLONE_BLOCK_FLAGS, *PMI_CLONE_BLOCK_FLAGS; /* size: 0x0008 */

typedef struct _MMCLONE_BLOCK
{
  /* 0x0000 */ struct _MMPTE ProtoPte;
  /* 0x0008 */ unsigned __int64 CrossPartitionReferences;
  union
  {
    /* 0x0010 */ volatile unsigned __int64 CloneCommitCount;
    /* 0x0010 */ struct _MI_CLONE_BLOCK_FLAGS u1;
  }; /* size: 0x0008 */
  /* 0x0018 */ volatile unsigned __int64 CloneRefCount;
} MMCLONE_BLOCK, *PMMCLONE_BLOCK; /* size: 0x0020 */

typedef struct _CM_INDEX_HINT_BLOCK
{
  /* 0x0000 */ unsigned long Count;
  /* 0x0004 */ unsigned long HashKey[1];
} CM_INDEX_HINT_BLOCK, *PCM_INDEX_HINT_BLOCK; /* size: 0x0008 */

typedef struct _ALPC_WORK_ON_BEHALF_TICKET
{
  /* 0x0000 */ unsigned long ThreadId;
  /* 0x0004 */ unsigned long ThreadCreationTimeLow;
} ALPC_WORK_ON_BEHALF_TICKET, *PALPC_WORK_ON_BEHALF_TICKET; /* size: 0x0008 */

typedef struct _KALPC_WORK_ON_BEHALF_DATA
{
  /* 0x0000 */ struct _ALPC_WORK_ON_BEHALF_TICKET Ticket;
} KALPC_WORK_ON_BEHALF_DATA, *PKALPC_WORK_ON_BEHALF_DATA; /* size: 0x0008 */

typedef struct _CM_KCB_LAYER_INFO
{
  /* 0x0000 */ struct _LIST_ENTRY LayerListEntry;
  /* 0x0010 */ struct _CM_KEY_CONTROL_BLOCK* Kcb;
  /* 0x0018 */ struct _CM_KCB_LAYER_INFO* LowerLayer;
  /* 0x0020 */ struct _LIST_ENTRY UpperLayerListHead;
  /* 0x0030 */ struct _LIST_ENTRY DiscardedUpperLayerListHead;
} CM_KCB_LAYER_INFO, *PCM_KCB_LAYER_INFO; /* size: 0x0040 */

typedef struct _HEAP_LARGE_ALLOC_DATA
{
  /* 0x0000 */ struct _RTL_BALANCED_NODE TreeNode;
  union
  {
    /* 0x0018 */ unsigned __int64 VirtualAddress;
    /* 0x0018 */ unsigned __int64 UnusedBytes : 16; /* bit position: 0 */
  }; /* size: 0x0008 */
  struct /* bitfield */
  {
    /* 0x0020 */ unsigned __int64 ExtraPresent : 1; /* bit position: 0 */
    /* 0x0020 */ unsigned __int64 GuardPageCount : 1; /* bit position: 1 */
    /* 0x0020 */ unsigned __int64 GuardPageAlignment : 6; /* bit position: 2 */
    /* 0x0020 */ unsigned __int64 Spare : 4; /* bit position: 8 */
    /* 0x0020 */ unsigned __int64 AllocatedPages : 52; /* bit position: 12 */
  }; /* bitfield */
} HEAP_LARGE_ALLOC_DATA, *PHEAP_LARGE_ALLOC_DATA; /* size: 0x0028 */

typedef struct _VF_ADDRESS_RANGE
{
  /* 0x0000 */ unsigned char* Start;
  /* 0x0008 */ unsigned char* End;
} VF_ADDRESS_RANGE, *PVF_ADDRESS_RANGE; /* size: 0x0010 */

typedef struct _BLOB_TYPE
{
  /* 0x0000 */ enum _BLOB_ID ResourceId;
  /* 0x0004 */ unsigned long PoolTag;
  /* 0x0008 */ unsigned long LookasideIndex;
  /* 0x000c */ unsigned long Flags;
  /* 0x0010 */ struct _BLOB_COUNTERS* Counters;
  /* 0x0018 */ void* CleanupProcedure /* function */;
  /* 0x0020 */ void* DeleteProcedure /* function */;
  /* 0x0028 */ void* DestroyProcedure /* function */;
  /* 0x0030 */ unsigned __int64 UsualSize;
} BLOB_TYPE, *PBLOB_TYPE; /* size: 0x0038 */

typedef struct _HIVE_WRITE_WAIT_QUEUE
{
  /* 0x0000 */ struct _ETHREAD* ActiveThread;
  /* 0x0008 */ struct _HIVE_WAIT_PACKET* WaitList;
} HIVE_WRITE_WAIT_QUEUE, *PHIVE_WRITE_WAIT_QUEUE; /* size: 0x0010 */

typedef struct _CM_FAST_LEAF_HINT
{
  union
  {
    /* 0x0000 */ unsigned char Characters[4];
    /* 0x0000 */ unsigned long FullHint;
  }; /* size: 0x0004 */
} CM_FAST_LEAF_HINT, *PCM_FAST_LEAF_HINT; /* size: 0x0004 */

typedef struct _CM_COMPONENT_HASH
{
  /* 0x0000 */ unsigned long Hash;
} CM_COMPONENT_HASH, *PCM_COMPONENT_HASH; /* size: 0x0004 */

typedef struct _CM_INDEX
{
  /* 0x0000 */ unsigned long Cell;
  union
  {
    /* 0x0004 */ struct _CM_FAST_LEAF_HINT NameHint;
    /* 0x0004 */ struct _CM_COMPONENT_HASH HashKey;
  }; /* size: 0x0004 */
} CM_INDEX, *PCM_INDEX; /* size: 0x0008 */

typedef struct _OPEN_PACKET
{
  /* 0x0000 */ short Type;
  /* 0x0002 */ short Size;
  /* 0x0004 */ long Padding_410;
  /* 0x0008 */ struct _FILE_OBJECT* FileObject;
  /* 0x0010 */ long FinalStatus;
  /* 0x0014 */ long Padding_411;
  /* 0x0018 */ unsigned __int64 Information;
  /* 0x0020 */ unsigned long ParseCheck;
  /* 0x0024 */ long Padding_412;
  union
  {
    /* 0x0028 */ struct _FILE_OBJECT* RelatedFileObject;
    /* 0x0028 */ struct _DEVICE_OBJECT* ReferencedDeviceObject;
  }; /* size: 0x0008 */
  /* 0x0030 */ struct _OBJECT_ATTRIBUTES* OriginalAttributes;
  /* 0x0038 */ union _LARGE_INTEGER AllocationSize;
  /* 0x0040 */ unsigned long CreateOptions;
  /* 0x0044 */ unsigned short FileAttributes;
  /* 0x0046 */ unsigned short ShareAccess;
  /* 0x0048 */ void* EaBuffer;
  /* 0x0050 */ unsigned long EaLength;
  /* 0x0054 */ unsigned long Options;
  /* 0x0058 */ unsigned long Disposition;
  /* 0x005c */ long Padding_413;
  /* 0x0060 */ struct _FILE_BASIC_INFORMATION* BasicInformation;
  /* 0x0068 */ struct _FILE_NETWORK_OPEN_INFORMATION* NetworkInformation;
  /* 0x0070 */ void* FileInformation;
  /* 0x0078 */ enum _CREATE_FILE_TYPE CreateFileType;
  /* 0x007c */ long Padding_414;
  /* 0x0080 */ void* MailslotOrPipeParameters;
  /* 0x0088 */ unsigned char Override;
  /* 0x0089 */ unsigned char QueryOnly;
  /* 0x008a */ unsigned char DeleteOnly;
  /* 0x008b */ unsigned char FullAttributes;
  /* 0x008c */ long Padding_415;
  /* 0x0090 */ struct _DUMMY_FILE_OBJECT* LocalFileObject;
  /* 0x0098 */ unsigned long InternalFlags;
  /* 0x009c */ char AccessMode;
  /* 0x009d */ char Padding_416[3];
  /* 0x00a0 */ struct _IO_DRIVER_CREATE_CONTEXT DriverCreateContext;
  /* 0x00c8 */ enum _FILE_INFORMATION_CLASS FileInformationClass;
  /* 0x00cc */ unsigned long FileInformationLength;
  /* 0x00d0 */ unsigned char FilterQuery;
  /* 0x00d1 */ char Padding_417[7];
  /* 0x00d8 */ __int64 ExtendedCreateFlags;
} OPEN_PACKET, *POPEN_PACKET; /* size: 0x00e0 */

typedef struct _HBIN
{
  /* 0x0000 */ unsigned long Signature;
  /* 0x0004 */ unsigned long FileOffset;
  /* 0x0008 */ unsigned long Size;
  /* 0x000c */ unsigned long Reserved1[2];
  /* 0x0014 */ union _LARGE_INTEGER TimeStamp;
  /* 0x001c */ unsigned long Spare;
} HBIN, *PHBIN; /* size: 0x0020 */

typedef struct _ETW_SYSTEMTIME
{
  /* 0x0000 */ unsigned short Year;
  /* 0x0002 */ unsigned short Month;
  /* 0x0004 */ unsigned short DayOfWeek;
  /* 0x0006 */ unsigned short Day;
  /* 0x0008 */ unsigned short Hour;
  /* 0x000a */ unsigned short Minute;
  /* 0x000c */ unsigned short Second;
  /* 0x000e */ unsigned short Milliseconds;
} ETW_SYSTEMTIME, *PETW_SYSTEMTIME; /* size: 0x0010 */

typedef struct _CM_PARSE_DEBUG_INFO
{
  /* 0x0000 */ struct _CM_KEY_CONTROL_BLOCK* SymlinkCachedKcb;
  /* 0x0008 */ struct _CM_KEY_CONTROL_BLOCK* StartingKcb;
  /* 0x0010 */ struct _CM_KEY_CONTROL_BLOCK* KcbCacheResult;
  /* 0x0018 */ struct _CM_KEY_CONTROL_BLOCK* WalkResult;
  /* 0x0020 */ struct _CM_KEY_CONTROL_BLOCK* DeepestKcbFound;
  /* 0x0028 */ unsigned char KcbCacheLevels;
  /* 0x0029 */ unsigned char WalkLevels;
  /* 0x002a */ unsigned char FailureCount;
  /* 0x002b */ char Padding_418;
  /* 0x002c */ struct
  {
    /* 0x002c */ long Status;
    /* 0x0030 */ unsigned long Point;
  } /* size: 0x0008 */ FailurePoints[4];
  /* 0x004c */ long __PADDING__[1];
} CM_PARSE_DEBUG_INFO, *PCM_PARSE_DEBUG_INFO; /* size: 0x0050 */

typedef struct _HIVE_LOAD_FAILURE
{
  /* 0x0000 */ struct _HHIVE* Hive;
  /* 0x0008 */ unsigned short Index;
  /* 0x000a */ unsigned short RecoverableIndex;
  /* 0x000c */ struct
  {
    /* 0x000c */ enum _CM_LOAD_FAILURE_TYPE Failure;
    /* 0x0010 */ long Status;
    /* 0x0014 */ unsigned long Point;
  } /* size: 0x000c */ Locations[8];
  /* 0x006c */ struct
  {
    /* 0x006c */ enum _CM_LOAD_FAILURE_TYPE Failure;
    /* 0x0070 */ long Status;
    /* 0x0074 */ unsigned long Point;
  } /* size: 0x000c */ RecoverableLocations[8];
  /* 0x00cc */ long Padding_419;
  struct
  {
    /* 0x00d0 */ unsigned long Action;
    /* 0x0004 */ long Padding_420;
    /* 0x00d8 */ void* Handle;
    /* 0x00e0 */ long Status;
    /* 0x00e4 */ long __PADDING__[1];
  } /* size: 0x0018 */ RegistryIO;
  struct
  {
    /* 0x00e8 */ void* CheckStack;
  } /* size: 0x0008 */ CheckRegistry2;
  struct
  {
    /* 0x00f0 */ unsigned long Cell;
    /* 0x0004 */ long Padding_421;
    /* 0x00f8 */ struct _CELL_DATA* CellPoint;
    /* 0x0100 */ void* RootPoint;
    /* 0x0108 */ unsigned long Index;
    /* 0x010c */ long __PADDING__[1];
  } /* size: 0x0020 */ CheckKey;
  struct
  {
    /* 0x0110 */ struct _CELL_DATA* List;
    /* 0x0118 */ unsigned long Index;
    /* 0x011c */ unsigned long Cell;
    /* 0x0120 */ struct _CELL_DATA* CellPoint;
  } /* size: 0x0018 */ CheckValueList;
  struct
  {
    /* 0x0128 */ unsigned long Space;
    /* 0x012c */ unsigned long MapPoint;
    /* 0x0130 */ struct _HBIN* BinPoint;
  } /* size: 0x0010 */ CheckHive;
  struct
  {
    /* 0x0138 */ unsigned long Space;
    /* 0x013c */ unsigned long MapPoint;
    /* 0x0140 */ struct _HBIN* BinPoint;
  } /* size: 0x0010 */ CheckHive1;
  struct
  {
    /* 0x0148 */ struct _HBIN* Bin;
    /* 0x0150 */ struct _HCELL* CellPoint;
  } /* size: 0x0010 */ CheckBin;
  struct
  {
    /* 0x0158 */ unsigned long FileOffset;
  } /* size: 0x0004 */ RecoverData;
  /* 0x015c */ long Padding_422;
  /* 0x0160 */ struct _CM_PARSE_DEBUG_INFO LinkDebug;
} HIVE_LOAD_FAILURE, *PHIVE_LOAD_FAILURE; /* size: 0x01b0 */

typedef struct _MI_SUBSECTION_ENTRY1
{
  struct /* bitfield */
  {
    /* 0x0000 */ unsigned long CrossPartitionReferences : 30; /* bit position: 0 */
    /* 0x0000 */ unsigned long SubsectionMappedLarge : 2; /* bit position: 30 */
  }; /* bitfield */
} MI_SUBSECTION_ENTRY1, *PMI_SUBSECTION_ENTRY1; /* size: 0x0004 */

typedef struct _SUBSECTION
{
  /* 0x0000 */ struct _CONTROL_AREA* ControlArea;
  /* 0x0008 */ struct _MMPTE* SubsectionBase;
  /* 0x0010 */ struct _SUBSECTION* NextSubsection;
  union
  {
    /* 0x0018 */ struct _RTL_AVL_TREE GlobalPerSessionHead;
    /* 0x0018 */ struct _MI_CONTROL_AREA_WAIT_BLOCK* CreationWaitList;
    /* 0x0018 */ struct _MI_PER_SESSION_PROTOS* SessionDriverProtos;
  }; /* size: 0x0008 */
  union
  {
    union
    {
      /* 0x0020 */ unsigned long LongFlags;
      /* 0x0020 */ struct _MMSUBSECTION_FLAGS SubsectionFlags;
    }; /* size: 0x0004 */
  } /* size: 0x0004 */ u;
  /* 0x0024 */ unsigned long StartingSector;
  /* 0x0028 */ unsigned long NumberOfFullSectors;
  /* 0x002c */ unsigned long PtesInSubsection;
  union
  {
    union
    {
      /* 0x0030 */ struct _MI_SUBSECTION_ENTRY1 e1;
      /* 0x0030 */ unsigned long EntireField;
    }; /* size: 0x0004 */
  } /* size: 0x0004 */ u1;
  struct /* bitfield */
  {
    /* 0x0034 */ unsigned long UnusedPtes : 30; /* bit position: 0 */
    /* 0x0034 */ unsigned long ExtentQueryNeeded : 1; /* bit position: 30 */
    /* 0x0034 */ unsigned long DirtyPages : 1; /* bit position: 31 */
  }; /* bitfield */
} SUBSECTION, *PSUBSECTION; /* size: 0x0038 */

typedef struct _HALP_DMA_DOMAIN_OBJECT
{
  /* 0x0000 */ struct _LIST_ENTRY ListEntry;
  /* 0x0010 */ union _LARGE_INTEGER MaximumPhysicalAddress;
  /* 0x0018 */ union _LARGE_INTEGER BoundaryAddressMultiple;
  /* 0x0020 */ unsigned char CacheCoherent;
  /* 0x0021 */ unsigned char FirmwareReserved;
  /* 0x0022 */ char Padding_423[6];
  /* 0x0028 */ void* IommuDomainPointer;
  /* 0x0030 */ void* LaState;
  /* 0x0038 */ unsigned __int64 LaStateLock;
  /* 0x0040 */ enum _EXT_IOMMU_TRANSLATION_TYPE TranslationType;
  /* 0x0044 */ long Padding_424;
  /* 0x0048 */ struct _ADAPTER_OBJECT* OwningAdapter;
  /* 0x0050 */ struct _RTL_RB_TREE CommonBufferRoot;
  /* 0x0060 */ unsigned __int64 CommonBufferTreeLock;
  /* 0x0068 */ struct _LIST_ENTRY VectorCommonBufferListHead;
  /* 0x0078 */ unsigned __int64 VectorCommonBufferLock;
  /* 0x0080 */ unsigned long DomainRefCount;
  /* 0x0084 */ long __PADDING__[1];
} HALP_DMA_DOMAIN_OBJECT, *PHALP_DMA_DOMAIN_OBJECT; /* size: 0x0088 */

typedef union _HEAP_SEGMENT_MGR_COMMIT_STATE
{
  union
  {
    struct /* bitfield */
    {
      /* 0x0000 */ unsigned short CommittedPageCount : 11; /* bit position: 0 */
      /* 0x0000 */ unsigned short Spare : 3; /* bit position: 11 */
      /* 0x0000 */ unsigned short LargePageOperationInProgress : 1; /* bit position: 14 */
      /* 0x0000 */ unsigned short LargePageCommit : 1; /* bit position: 15 */
    }; /* bitfield */
    /* 0x0000 */ volatile unsigned short EntireUShortV;
    /* 0x0000 */ unsigned short EntireUShort;
  }; /* size: 0x0002 */
} HEAP_SEGMENT_MGR_COMMIT_STATE, *PHEAP_SEGMENT_MGR_COMMIT_STATE; /* size: 0x0002 */

typedef struct _DMA_COMMON_BUFFER_ENTRY
{
  /* 0x0000 */ void* VirtualAddress;
  /* 0x0008 */ union _LARGE_INTEGER LogicalAddress;
} DMA_COMMON_BUFFER_ENTRY, *PDMA_COMMON_BUFFER_ENTRY; /* size: 0x0010 */

typedef struct _HEAP_DESCRIPTOR_KEY
{
  union
  {
    /* 0x0000 */ unsigned long Key;
    struct /* bitfield */
    {
      /* 0x0000 */ unsigned long EncodedCommittedPageCount : 16; /* bit position: 0 */
      /* 0x0000 */ unsigned long LargePageCost : 8; /* bit position: 16 */
      /* 0x0000 */ unsigned long UnitCount : 8; /* bit position: 24 */
    }; /* bitfield */
  }; /* size: 0x0004 */
} HEAP_DESCRIPTOR_KEY, *PHEAP_DESCRIPTOR_KEY; /* size: 0x0004 */

typedef struct _HEAP_PAGE_RANGE_DESCRIPTOR
{
  union
  {
    /* 0x0000 */ struct _RTL_BALANCED_NODE TreeNode;
    struct
    {
      /* 0x0000 */ unsigned long TreeSignature;
      /* 0x0004 */ unsigned long UnusedBytes;
      struct /* bitfield */
      {
        /* 0x0008 */ unsigned short ExtraPresent : 1; /* bit position: 0 */
        /* 0x0008 */ unsigned short Spare0 : 15; /* bit position: 1 */
      }; /* bitfield */
    }; /* size: 0x000a */
  }; /* size: 0x0018 */
  /* 0x0018 */ volatile unsigned char RangeFlags;
  /* 0x0019 */ unsigned char CommittedPageCount;
  /* 0x001a */ unsigned short Spare;
  union
  {
    /* 0x001c */ struct _HEAP_DESCRIPTOR_KEY Key;
    struct
    {
      /* 0x001c */ unsigned char Align[3];
      union
      {
        /* 0x001f */ unsigned char UnitOffset;
        /* 0x001f */ unsigned char UnitSize;
      }; /* size: 0x0001 */
    }; /* size: 0x0004 */
  }; /* size: 0x0004 */
} HEAP_PAGE_RANGE_DESCRIPTOR, *PHEAP_PAGE_RANGE_DESCRIPTOR; /* size: 0x0020 */

typedef union _HEAP_PAGE_SEGMENT
{
  union
  {
    struct
    {
      /* 0x0000 */ struct _LIST_ENTRY ListEntry;
      /* 0x0010 */ unsigned __int64 Signature;
      /* 0x0018 */ union _HEAP_SEGMENT_MGR_COMMIT_STATE* SegmentCommitState;
      /* 0x0020 */ unsigned char UnusedWatermark;
    }; /* size: 0x0021 */
    /* 0x0000 */ struct _HEAP_PAGE_RANGE_DESCRIPTOR DescArray[256];
  }; /* size: 0x2000 */
} HEAP_PAGE_SEGMENT, *PHEAP_PAGE_SEGMENT; /* size: 0x2000 */

typedef struct _GENERIC_MAPPING
{
  /* 0x0000 */ unsigned long GenericRead;
  /* 0x0004 */ unsigned long GenericWrite;
  /* 0x0008 */ unsigned long GenericExecute;
  /* 0x000c */ unsigned long GenericAll;
} GENERIC_MAPPING, *PGENERIC_MAPPING; /* size: 0x0010 */

typedef struct _OBJECT_TYPE_INITIALIZER
{
  /* 0x0000 */ unsigned short Length;
  union
  {
    /* 0x0002 */ unsigned short ObjectTypeFlags;
    struct
    {
      struct /* bitfield */
      {
        /* 0x0002 */ unsigned char CaseInsensitive : 1; /* bit position: 0 */
        /* 0x0002 */ unsigned char UnnamedObjectsOnly : 1; /* bit position: 1 */
        /* 0x0002 */ unsigned char UseDefaultObject : 1; /* bit position: 2 */
        /* 0x0002 */ unsigned char SecurityRequired : 1; /* bit position: 3 */
        /* 0x0002 */ unsigned char MaintainHandleCount : 1; /* bit position: 4 */
        /* 0x0002 */ unsigned char MaintainTypeList : 1; /* bit position: 5 */
        /* 0x0002 */ unsigned char SupportsObjectCallbacks : 1; /* bit position: 6 */
        /* 0x0002 */ unsigned char CacheAligned : 1; /* bit position: 7 */
      }; /* bitfield */
      struct /* bitfield */
      {
        /* 0x0003 */ unsigned char UseExtendedParameters : 1; /* bit position: 0 */
        /* 0x0003 */ unsigned char Reserved : 7; /* bit position: 1 */
      }; /* bitfield */
    }; /* size: 0x0002 */
  }; /* size: 0x0002 */
  /* 0x0004 */ unsigned long ObjectTypeCode;
  /* 0x0008 */ unsigned long InvalidAttributes;
  /* 0x000c */ struct _GENERIC_MAPPING GenericMapping;
  /* 0x001c */ unsigned long ValidAccessMask;
  /* 0x0020 */ unsigned long RetainAccess;
  /* 0x0024 */ enum _POOL_TYPE PoolType;
  /* 0x0028 */ unsigned long DefaultPagedPoolCharge;
  /* 0x002c */ unsigned long DefaultNonPagedPoolCharge;
  /* 0x0030 */ void* DumpProcedure /* function */;
  /* 0x0038 */ void* OpenProcedure /* function */;
  /* 0x0040 */ void* CloseProcedure /* function */;
  /* 0x0048 */ void* DeleteProcedure /* function */;
  union
  {
    /* 0x0050 */ void* ParseProcedure /* function */;
    /* 0x0050 */ void* ParseProcedureEx /* function */;
  }; /* size: 0x0008 */
  /* 0x0058 */ void* SecurityProcedure /* function */;
  /* 0x0060 */ void* QueryNameProcedure /* function */;
  /* 0x0068 */ void* OkayToCloseProcedure /* function */;
  /* 0x0070 */ unsigned long WaitObjectFlagMask;
  /* 0x0074 */ unsigned short WaitObjectFlagOffset;
  /* 0x0076 */ unsigned short WaitObjectPointerOffset;
} OBJECT_TYPE_INITIALIZER, *POBJECT_TYPE_INITIALIZER; /* size: 0x0078 */

typedef struct _OBJECT_TYPE
{
  /* 0x0000 */ struct _LIST_ENTRY TypeList;
  /* 0x0010 */ struct _UNICODE_STRING Name;
  /* 0x0020 */ void* DefaultObject;
  /* 0x0028 */ unsigned char Index;
  /* 0x0029 */ char Padding_425[3];
  /* 0x002c */ unsigned long TotalNumberOfObjects;
  /* 0x0030 */ unsigned long TotalNumberOfHandles;
  /* 0x0034 */ unsigned long HighWaterNumberOfObjects;
  /* 0x0038 */ unsigned long HighWaterNumberOfHandles;
  /* 0x003c */ long Padding_426;
  /* 0x0040 */ struct _OBJECT_TYPE_INITIALIZER TypeInfo;
  /* 0x00b8 */ struct _EX_PUSH_LOCK TypeLock;
  /* 0x00c0 */ unsigned long Key;
  /* 0x00c4 */ long Padding_427;
  /* 0x00c8 */ struct _LIST_ENTRY CallbackList;
} OBJECT_TYPE, *POBJECT_TYPE; /* size: 0x00d8 */

struct _CALLBACK_OBJECT;

typedef struct _CM_KEY_SECURITY_CACHE_ENTRY
{
  /* 0x0000 */ unsigned long Cell;
  /* 0x0004 */ long Padding_428;
  /* 0x0008 */ struct _CM_KEY_SECURITY_CACHE* CachedSecurity;
} CM_KEY_SECURITY_CACHE_ENTRY, *PCM_KEY_SECURITY_CACHE_ENTRY; /* size: 0x0010 */

typedef struct _CM_WORKITEM
{
  /* 0x0000 */ struct _LIST_ENTRY ListEntry;
  /* 0x0010 */ unsigned long Private;
  /* 0x0014 */ long Padding_429;
  /* 0x0018 */ void* WorkerRoutine /* function */;
  /* 0x0020 */ void* Parameter;
} CM_WORKITEM, *PCM_WORKITEM; /* size: 0x0028 */

typedef struct _HALP_DMA_TRANSLATION_ENTRY
{
  /* 0x0000 */ unsigned __int64 PhysicalAddress;
  /* 0x0008 */ struct _HALP_DMA_TRANSLATION_ENTRY* Next;
  /* 0x0010 */ unsigned long MappedLength;
  /* 0x0014 */ long Padding_430;
  /* 0x0018 */ unsigned __int64 LogicalAddress;
  /* 0x0020 */ unsigned __int64 LogicalMappedLength;
  /* 0x0028 */ unsigned __int64 NextLogicalAddress;
  union
  {
    union
    {
      /* 0x0030 */ void* VirtualAddress;
      struct
      {
        struct /* bitfield */
        {
          /* 0x0030 */ unsigned __int64 BoundToMaster : 1; /* bit position: 0 */
          /* 0x0030 */ unsigned __int64 BoundToScatterPool : 1; /* bit position: 1 */
          /* 0x0030 */ unsigned __int64 OwnedByMaster : 1; /* bit position: 2 */
          /* 0x0030 */ unsigned __int64 OwnedByScatterPool : 1; /* bit position: 3 */
          /* 0x0030 */ unsigned __int64 TemporaryMapping : 1; /* bit position: 4 */
          /* 0x0030 */ unsigned __int64 ZeroBuffer : 1; /* bit position: 5 */
          /* 0x0030 */ unsigned __int64 Address : 58; /* bit position: 6 */
        }; /* bitfield */
      } /* size: 0x0008 */ Flags;
    }; /* size: 0x0008 */
  } /* size: 0x0008 */ u;
  /* 0x0038 */ struct _HALP_DMA_TRANSLATION_ENTRY* NextMapping;
  /* 0x0040 */ unsigned char LogicalBounceBufferPremapped;
  /* 0x0041 */ char __PADDING__[7];
} HALP_DMA_TRANSLATION_ENTRY, *PHALP_DMA_TRANSLATION_ENTRY; /* size: 0x0048 */

typedef struct _CM_UOW_SET_SD_DATA
{
  /* 0x0000 */ unsigned long SecurityCell;
  /* 0x0004 */ long Padding_431;
  /* 0x0008 */ struct _HHIVE* Hive;
} CM_UOW_SET_SD_DATA, *PCM_UOW_SET_SD_DATA; /* size: 0x0010 */

typedef struct _HALP_DMA_TRANSLATION_BUFFER
{
  /* 0x0000 */ struct _HALP_DMA_TRANSLATION_BUFFER* Next;
  /* 0x0008 */ unsigned long EntryCount;
  /* 0x000c */ long Padding_432;
  /* 0x0010 */ struct _HALP_DMA_TRANSLATION_ENTRY* Entries;
} HALP_DMA_TRANSLATION_BUFFER, *PHALP_DMA_TRANSLATION_BUFFER; /* size: 0x0018 */

typedef struct _CM_UOW_SET_VALUE_LIST_DATA
{
  /* 0x0000 */ unsigned long RefCount;
  /* 0x0004 */ struct _CHILD_LIST ValueList;
} CM_UOW_SET_VALUE_LIST_DATA, *PCM_UOW_SET_VALUE_LIST_DATA; /* size: 0x000c */

typedef struct _CMP_DISCARD_AND_REPLACE_KCB_CONTEXT
{
  /* 0x0000 */ struct _CM_KEY_CONTROL_BLOCK* BaseKcb;
  /* 0x0008 */ long PrepareStatus;
  /* 0x000c */ long Padding_433;
  /* 0x0010 */ struct _LIST_ENTRY ClonedKcbListHead;
} CMP_DISCARD_AND_REPLACE_KCB_CONTEXT, *PCMP_DISCARD_AND_REPLACE_KCB_CONTEXT; /* size: 0x0020 */

typedef struct _DMA_TRANSFER_CONTEXT_V1
{
  /* 0x0000 */ long DmaState;
  /* 0x0004 */ unsigned long TransferState;
  /* 0x0008 */ struct _WAIT_CONTEXT_BLOCK Wcb;
  /* 0x0050 */ void* HalWcb;
} DMA_TRANSFER_CONTEXT_V1, *PDMA_TRANSFER_CONTEXT_V1; /* size: 0x0058 */

typedef struct _DMA_TRANSFER_CONTEXT
{
  /* 0x0000 */ unsigned long Version;
  /* 0x0004 */ long Padding_434;
  /* 0x0008 */ struct _DMA_TRANSFER_CONTEXT_V1 V1;
} DMA_TRANSFER_CONTEXT, *PDMA_TRANSFER_CONTEXT; /* size: 0x0060 */

typedef struct _DMA_FUNCTION_TABLE
{
  /* 0x0000 */ void* InitializeController /* function */;
  /* 0x0008 */ void* ValidateRequestLineBinding /* function */;
  /* 0x0010 */ void* QueryMaxFragments /* function */;
  /* 0x0018 */ void* ProgramChannel /* function */;
  /* 0x0020 */ void* ConfigureChannel /* function */;
  /* 0x0028 */ void* FlushChannel /* function */;
  /* 0x0030 */ void* HandleInterrupt /* function */;
  /* 0x0038 */ void* ReadDmaCounter /* function */;
  /* 0x0040 */ void* ReportCommonBuffer /* function */;
  /* 0x0048 */ void* CancelTransfer /* function */;
} DMA_FUNCTION_TABLE, *PDMA_FUNCTION_TABLE; /* size: 0x0050 */

typedef struct _HALP_DMA_CONTROLLER
{
  /* 0x0000 */ struct _LIST_ENTRY Controllers;
  /* 0x0010 */ struct _LIST_ENTRY AdapterList;
  /* 0x0020 */ unsigned long ControllerId;
  /* 0x0024 */ unsigned long MinimumRequestLine;
  /* 0x0028 */ unsigned long MaximumRequestLine;
  /* 0x002c */ unsigned long ChannelCount;
  /* 0x0030 */ unsigned long ScatterGatherLimit;
  /* 0x0034 */ long Padding_435;
  /* 0x0038 */ struct _HALP_DMA_CHANNEL* Channels;
  /* 0x0040 */ void* ExtensionData;
  /* 0x0048 */ unsigned char CacheCoherent;
  /* 0x0049 */ char Padding_436[3];
  /* 0x004c */ unsigned long DmaAddressWidth;
  /* 0x0050 */ struct _DMA_FUNCTION_TABLE Operations;
  /* 0x00a0 */ unsigned long SupportedPortWidths;
  /* 0x00a4 */ unsigned long MinimumTransferUnit;
  /* 0x00a8 */ unsigned __int64 Lock;
  /* 0x00b0 */ unsigned char Irql;
  /* 0x00b1 */ unsigned char GeneratesInterrupt;
  /* 0x00b2 */ char Padding_437[2];
  /* 0x00b4 */ long Gsi;
  /* 0x00b8 */ enum _KINTERRUPT_POLARITY InterruptPolarity;
  /* 0x00bc */ enum _KINTERRUPT_MODE InterruptMode;
  /* 0x00c0 */ struct _UNICODE_STRING ResourceId;
  /* 0x00d0 */ struct POHANDLE__* PowerHandle;
  /* 0x00d8 */ unsigned char PowerActive;
  /* 0x00d9 */ char __PADDING__[7];
} HALP_DMA_CONTROLLER, *PHALP_DMA_CONTROLLER; /* size: 0x00e0 */

typedef struct _HALP_DMA_CHANNEL
{
  /* 0x0000 */ unsigned long ChannelNumber;
  /* 0x0004 */ unsigned char Initialized;
  /* 0x0005 */ unsigned char Busy;
  /* 0x0006 */ unsigned char Complete;
  /* 0x0007 */ char Padding_438;
  /* 0x0008 */ void* CurrentCompletionRoutine /* function */;
  /* 0x0010 */ void* CurrentCompletionContext;
  /* 0x0018 */ struct _ADAPTER_OBJECT* CurrentChildAdapter;
  /* 0x0020 */ enum _DMA_INTERRUPT_TYPE CurrentInterruptType;
  /* 0x0024 */ long Padding_439;
  /* 0x0028 */ struct _KDPC Dpc;
  /* 0x0068 */ unsigned char GeneratesInterrupt;
  /* 0x0069 */ char Padding_440[3];
  /* 0x006c */ long Gsi;
  /* 0x0070 */ enum _KINTERRUPT_POLARITY InterruptPolarity;
  /* 0x0074 */ enum _KINTERRUPT_MODE InterruptMode;
  /* 0x0078 */ unsigned long CommonBufferLength;
  /* 0x007c */ long Padding_441;
  /* 0x0080 */ void* CommonBufferVirtualAddress;
  /* 0x0088 */ union _LARGE_INTEGER CommonBufferLogicalAddress;
  /* 0x0090 */ struct _LIST_ENTRY AdapterQueue;
} HALP_DMA_CHANNEL, *PHALP_DMA_CHANNEL; /* size: 0x00a0 */

typedef struct _MM_SHARED_VAD_FLAGS
{
  struct /* bitfield */
  {
    /* 0x0000 */ unsigned long Lock : 1; /* bit position: 0 */
    /* 0x0000 */ unsigned long LockContended : 1; /* bit position: 1 */
    /* 0x0000 */ unsigned long DeleteInProgress : 1; /* bit position: 2 */
    /* 0x0000 */ unsigned long NoChange : 1; /* bit position: 3 */
    /* 0x0000 */ unsigned long VadType : 3; /* bit position: 4 */
    /* 0x0000 */ unsigned long Protection : 5; /* bit position: 7 */
    /* 0x0000 */ unsigned long PreferredNode : 6; /* bit position: 12 */
    /* 0x0000 */ unsigned long PageSize : 2; /* bit position: 18 */
    /* 0x0000 */ unsigned long PrivateMemoryAlwaysClear : 1; /* bit position: 20 */
    /* 0x0000 */ unsigned long PrivateFixup : 1; /* bit position: 21 */
    /* 0x0000 */ unsigned long HotPatchAllowed : 1; /* bit position: 22 */
  }; /* bitfield */
} MM_SHARED_VAD_FLAGS, *PMM_SHARED_VAD_FLAGS; /* size: 0x0004 */

typedef union _HEAP_LFH_ONDEMAND_POINTER
{
  union
  {
    struct
    {
      struct /* bitfield */
      {
        /* 0x0000 */ unsigned short Invalid : 1; /* bit position: 0 */
        /* 0x0000 */ unsigned short AllocationInProgress : 1; /* bit position: 1 */
        /* 0x0000 */ unsigned short Spare0 : 14; /* bit position: 2 */
      }; /* bitfield */
      /* 0x0002 */ unsigned short UsageData;
    }; /* size: 0x0004 */
    /* 0x0000 */ void* AllBits;
  }; /* size: 0x0008 */
} HEAP_LFH_ONDEMAND_POINTER, *PHEAP_LFH_ONDEMAND_POINTER; /* size: 0x0008 */

typedef struct _MI_STORE_INPAGE_COMPLETE_FLAGS
{
  union
  {
    /* 0x0000 */ unsigned long EntireFlags;
    struct /* bitfield */
    {
      /* 0x0000 */ unsigned long StoreFault : 1; /* bit position: 0 */
      /* 0x0000 */ unsigned long LowResourceFailure : 1; /* bit position: 1 */
      /* 0x0000 */ unsigned long Spare : 14; /* bit position: 2 */
      /* 0x0000 */ unsigned long RemainingPageCount : 16; /* bit position: 16 */
    }; /* bitfield */
  }; /* size: 0x0004 */
} MI_STORE_INPAGE_COMPLETE_FLAGS, *PMI_STORE_INPAGE_COMPLETE_FLAGS; /* size: 0x0004 */

typedef struct _MI_HARD_FAULT_STATE
{
  /* 0x0000 */ struct _MMPFN* SwapPfn;
  /* 0x0008 */ struct _MI_STORE_INPAGE_COMPLETE_FLAGS StoreFlags;
  /* 0x000c */ long __PADDING__[1];
} MI_HARD_FAULT_STATE, *PMI_HARD_FAULT_STATE; /* size: 0x0010 */

typedef struct _DMA_SCATTER_GATHER_LIST
{
  /* 0x0000 */ unsigned long NumberOfElements;
  /* 0x0004 */ long Padding_442;
  /* 0x0008 */ unsigned __int64 Reserved;
  /* 0x0010 */ struct _SCATTER_GATHER_ELEMENT* Elements /* zero-length array */;
} DMA_SCATTER_GATHER_LIST, *PDMA_SCATTER_GATHER_LIST; /* size: 0x0010 */

typedef struct _ALPC_PORT_ATTRIBUTES
{
  /* 0x0000 */ unsigned long Flags;
  /* 0x0004 */ struct _SECURITY_QUALITY_OF_SERVICE SecurityQos;
  /* 0x0010 */ unsigned __int64 MaxMessageLength;
  /* 0x0018 */ unsigned __int64 MemoryBandwidth;
  /* 0x0020 */ unsigned __int64 MaxPoolUsage;
  /* 0x0028 */ unsigned __int64 MaxSectionSize;
  /* 0x0030 */ unsigned __int64 MaxViewSize;
  /* 0x0038 */ unsigned __int64 MaxTotalSectionSize;
  /* 0x0040 */ unsigned long DupObjectTypes;
  /* 0x0044 */ unsigned long Reserved;
} ALPC_PORT_ATTRIBUTES, *PALPC_PORT_ATTRIBUTES; /* size: 0x0048 */

typedef struct _ALPC_PORT
{
  /* 0x0000 */ struct _LIST_ENTRY PortListEntry;
  /* 0x0010 */ struct _ALPC_COMMUNICATION_INFO* CommunicationInfo;
  /* 0x0018 */ struct _EPROCESS* OwnerProcess;
  /* 0x0020 */ void* CompletionPort;
  /* 0x0028 */ void* CompletionKey;
  /* 0x0030 */ struct _ALPC_COMPLETION_PACKET_LOOKASIDE* CompletionPacketLookaside;
  /* 0x0038 */ void* PortContext;
  /* 0x0040 */ struct _SECURITY_CLIENT_CONTEXT StaticSecurity;
  /* 0x0088 */ struct _EX_PUSH_LOCK IncomingQueueLock;
  /* 0x0090 */ struct _LIST_ENTRY MainQueue;
  /* 0x00a0 */ struct _LIST_ENTRY LargeMessageQueue;
  /* 0x00b0 */ struct _EX_PUSH_LOCK PendingQueueLock;
  /* 0x00b8 */ struct _LIST_ENTRY PendingQueue;
  /* 0x00c8 */ struct _EX_PUSH_LOCK DirectQueueLock;
  /* 0x00d0 */ struct _LIST_ENTRY DirectQueue;
  /* 0x00e0 */ struct _EX_PUSH_LOCK WaitQueueLock;
  /* 0x00e8 */ struct _LIST_ENTRY WaitQueue;
  union
  {
    /* 0x00f8 */ struct _KSEMAPHORE* Semaphore;
    /* 0x00f8 */ struct _KEVENT* DummyEvent;
  }; /* size: 0x0008 */
  /* 0x0100 */ struct _ALPC_PORT_ATTRIBUTES PortAttributes;
  /* 0x0148 */ struct _EX_PUSH_LOCK ResourceListLock;
  /* 0x0150 */ struct _LIST_ENTRY ResourceListHead;
  /* 0x0160 */ struct _EX_PUSH_LOCK PortObjectLock;
  /* 0x0168 */ struct _ALPC_COMPLETION_LIST* CompletionList;
  /* 0x0170 */ struct _CALLBACK_OBJECT* CallbackObject;
  /* 0x0178 */ void* CallbackContext;
  /* 0x0180 */ struct _LIST_ENTRY CanceledQueue;
  /* 0x0190 */ long SequenceNo;
  /* 0x0194 */ long ReferenceNo;
  /* 0x0198 */ struct _PALPC_PORT_REFERENCE_WAIT_BLOCK* ReferenceNoWait;
  union
  {
    union
    {
      struct
      {
        struct /* bitfield */
        {
          /* 0x01a0 */ unsigned long Initialized : 1; /* bit position: 0 */
          /* 0x01a0 */ unsigned long Type : 2; /* bit position: 1 */
          /* 0x01a0 */ unsigned long ConnectionPending : 1; /* bit position: 3 */
          /* 0x01a0 */ unsigned long ConnectionRefused : 1; /* bit position: 4 */
          /* 0x01a0 */ unsigned long Disconnected : 1; /* bit position: 5 */
          /* 0x01a0 */ unsigned long Closed : 1; /* bit position: 6 */
          /* 0x01a0 */ unsigned long NoFlushOnClose : 1; /* bit position: 7 */
          /* 0x01a0 */ unsigned long ReturnExtendedInfo : 1; /* bit position: 8 */
          /* 0x01a0 */ unsigned long Waitable : 1; /* bit position: 9 */
          /* 0x01a0 */ unsigned long DynamicSecurity : 1; /* bit position: 10 */
          /* 0x01a0 */ unsigned long Wow64CompletionList : 1; /* bit position: 11 */
          /* 0x01a0 */ unsigned long Lpc : 1; /* bit position: 12 */
          /* 0x01a0 */ unsigned long LpcToLpc : 1; /* bit position: 13 */
          /* 0x01a0 */ unsigned long HasCompletionList : 1; /* bit position: 14 */
          /* 0x01a0 */ unsigned long HadCompletionList : 1; /* bit position: 15 */
          /* 0x01a0 */ unsigned long EnableCompletionList : 1; /* bit position: 16 */
        }; /* bitfield */
      } /* size: 0x0004 */ s1;
      /* 0x01a0 */ unsigned long State;
    }; /* size: 0x0004 */
  } /* size: 0x0004 */ u1;
  /* 0x01a4 */ long Padding_443;
  /* 0x01a8 */ struct _ALPC_PORT* TargetQueuePort;
  /* 0x01b0 */ struct _ALPC_PORT* TargetSequencePort;
  /* 0x01b8 */ struct _KALPC_MESSAGE* CachedMessage;
  /* 0x01c0 */ unsigned long MainQueueLength;
  /* 0x01c4 */ unsigned long LargeMessageQueueLength;
  /* 0x01c8 */ unsigned long PendingQueueLength;
  /* 0x01cc */ unsigned long DirectQueueLength;
  /* 0x01d0 */ unsigned long CanceledQueueLength;
  /* 0x01d4 */ unsigned long WaitQueueLength;
} ALPC_PORT, *PALPC_PORT; /* size: 0x01d8 */

typedef struct _HBASE_BLOCK
{
  /* 0x0000 */ unsigned long Signature;
  /* 0x0004 */ unsigned long Sequence1;
  /* 0x0008 */ unsigned long Sequence2;
  /* 0x000c */ union _LARGE_INTEGER TimeStamp;
  /* 0x0014 */ unsigned long Major;
  /* 0x0018 */ unsigned long Minor;
  /* 0x001c */ unsigned long Type;
  /* 0x0020 */ unsigned long Format;
  /* 0x0024 */ unsigned long RootCell;
  /* 0x0028 */ unsigned long Length;
  /* 0x002c */ unsigned long Cluster;
  /* 0x0030 */ unsigned char FileName[64];
  /* 0x0070 */ struct _GUID RmId;
  /* 0x0080 */ struct _GUID LogId;
  /* 0x0090 */ unsigned long Flags;
  /* 0x0094 */ struct _GUID TmId;
  /* 0x00a4 */ unsigned long GuidSignature;
  /* 0x00a8 */ unsigned __int64 LastReorganizeTime;
  /* 0x00b0 */ unsigned long Reserved1[83];
  /* 0x01fc */ unsigned long CheckSum;
  /* 0x0200 */ unsigned long Reserved2[882];
  /* 0x0fc8 */ struct _GUID ThawTmId;
  /* 0x0fd8 */ struct _GUID ThawRmId;
  /* 0x0fe8 */ struct _GUID ThawLogId;
  /* 0x0ff8 */ unsigned long BootType;
  /* 0x0ffc */ unsigned long BootRecover;
} HBASE_BLOCK, *PHBASE_BLOCK; /* size: 0x1000 */

typedef struct _HVP_VIEW_MAP
{
  /* 0x0000 */ void* SectionReference;
  /* 0x0008 */ __int64 StorageEndFileOffset;
  /* 0x0010 */ __int64 SectionEndFileOffset;
  /* 0x0018 */ struct _CMSI_PROCESS_TUPLE* ProcessTuple;
  /* 0x0020 */ unsigned long Flags;
  /* 0x0024 */ long Padding_444;
  /* 0x0028 */ struct _RTL_RB_TREE ViewTree;
} HVP_VIEW_MAP, *PHVP_VIEW_MAP; /* size: 0x0038 */

typedef struct _KALPC_RESERVE
{
  /* 0x0000 */ struct _ALPC_PORT* OwnerPort;
  /* 0x0008 */ struct _ALPC_HANDLE_TABLE* HandleTable;
  /* 0x0010 */ void* Handle;
  /* 0x0018 */ struct _KALPC_MESSAGE* Message;
  /* 0x0020 */ unsigned __int64 Size;
  /* 0x0028 */ long Active;
  /* 0x002c */ long __PADDING__[1];
} KALPC_RESERVE, *PKALPC_RESERVE; /* size: 0x0030 */

typedef struct _FREE_DISPLAY
{
  /* 0x0000 */ unsigned long RealVectorSize;
  /* 0x0004 */ unsigned long Hint;
  /* 0x0008 */ struct _RTL_BITMAP Display;
} FREE_DISPLAY, *PFREE_DISPLAY; /* size: 0x0018 */

typedef struct _DUAL
{
  /* 0x0000 */ unsigned long Length;
  /* 0x0004 */ long Padding_445;
  /* 0x0008 */ struct _HMAP_DIRECTORY* Map;
  /* 0x0010 */ struct _HMAP_TABLE* SmallDir;
  /* 0x0018 */ unsigned long Guard;
  /* 0x001c */ long Padding_446;
  /* 0x0020 */ struct _FREE_DISPLAY FreeDisplay[24];
  /* 0x0260 */ struct _LIST_ENTRY FreeBins;
  /* 0x0270 */ unsigned long FreeSummary;
  /* 0x0274 */ long __PADDING__[1];
} DUAL, *PDUAL; /* size: 0x0278 */

typedef struct _KRESOURCEMANAGER_COMPLETION_BINDING
{
  /* 0x0000 */ struct _LIST_ENTRY NotificationListHead;
  /* 0x0010 */ void* Port;
  /* 0x0018 */ unsigned __int64 Key;
  /* 0x0020 */ struct _EPROCESS* BindingProcess;
} KRESOURCEMANAGER_COMPLETION_BINDING, *PKRESOURCEMANAGER_COMPLETION_BINDING; /* size: 0x0028 */

typedef struct _HEAP_COUNTERS
{
  /* 0x0000 */ unsigned __int64 TotalMemoryReserved;
  /* 0x0008 */ unsigned __int64 TotalMemoryCommitted;
  /* 0x0010 */ unsigned __int64 TotalMemoryLargeUCR;
  /* 0x0018 */ unsigned __int64 TotalSizeInVirtualBlocks;
  /* 0x0020 */ unsigned long TotalSegments;
  /* 0x0024 */ unsigned long TotalUCRs;
  /* 0x0028 */ unsigned long CommittOps;
  /* 0x002c */ unsigned long DeCommitOps;
  /* 0x0030 */ unsigned long LockAcquires;
  /* 0x0034 */ unsigned long LockCollisions;
  /* 0x0038 */ unsigned long CommitRate;
  /* 0x003c */ unsigned long DecommittRate;
  /* 0x0040 */ unsigned long CommitFailures;
  /* 0x0044 */ unsigned long InBlockCommitFailures;
  /* 0x0048 */ unsigned long PollIntervalCounter;
  /* 0x004c */ unsigned long DecommitsSinceLastCheck;
  /* 0x0050 */ unsigned long HeapPollInterval;
  /* 0x0054 */ unsigned long AllocAndFreeOps;
  /* 0x0058 */ unsigned long AllocationIndicesActive;
  /* 0x005c */ unsigned long InBlockDeccommits;
  /* 0x0060 */ unsigned __int64 InBlockDeccomitSize;
  /* 0x0068 */ unsigned __int64 HighWatermarkSize;
  /* 0x0070 */ unsigned __int64 LastPolledSize;
} HEAP_COUNTERS, *PHEAP_COUNTERS; /* size: 0x0078 */

typedef struct _HEAP_TUNING_PARAMETERS
{
  /* 0x0000 */ unsigned long CommittThresholdShift;
  /* 0x0004 */ long Padding_447;
  /* 0x0008 */ unsigned __int64 MaxPreCommittThreshold;
} HEAP_TUNING_PARAMETERS, *PHEAP_TUNING_PARAMETERS; /* size: 0x0010 */

typedef struct _HEAP
{
  union
  {
    /* 0x0000 */ struct _HEAP_SEGMENT Segment;
    struct
    {
      /* 0x0000 */ struct _HEAP_ENTRY Entry;
      /* 0x0010 */ unsigned long SegmentSignature;
      /* 0x0014 */ unsigned long SegmentFlags;
      /* 0x0018 */ struct _LIST_ENTRY SegmentListEntry;
      /* 0x0028 */ struct _HEAP* Heap;
      /* 0x0030 */ void* BaseAddress;
      /* 0x0038 */ unsigned long NumberOfPages;
      /* 0x003c */ long Padding_448;
      /* 0x0040 */ struct _HEAP_ENTRY* FirstEntry;
      /* 0x0048 */ struct _HEAP_ENTRY* LastValidEntry;
      /* 0x0050 */ unsigned long NumberOfUnCommittedPages;
      /* 0x0054 */ unsigned long NumberOfUnCommittedRanges;
      /* 0x0058 */ unsigned short SegmentAllocatorBackTraceIndex;
      /* 0x005a */ unsigned short Reserved;
      /* 0x005c */ long Padding_449;
      /* 0x0060 */ struct _LIST_ENTRY UCRSegmentList;
    }; /* size: 0x0068 */
  }; /* size: 0x0070 */
  /* 0x0070 */ unsigned long Flags;
  /* 0x0074 */ unsigned long ForceFlags;
  /* 0x0078 */ unsigned long CompatibilityFlags;
  /* 0x007c */ unsigned long EncodeFlagMask;
  /* 0x0080 */ struct _HEAP_ENTRY Encoding;
  /* 0x0090 */ unsigned long Interceptor;
  /* 0x0094 */ unsigned long VirtualMemoryThreshold;
  /* 0x0098 */ unsigned long Signature;
  /* 0x009c */ long Padding_450;
  /* 0x00a0 */ unsigned __int64 SegmentReserve;
  /* 0x00a8 */ unsigned __int64 SegmentCommit;
  /* 0x00b0 */ unsigned __int64 DeCommitFreeBlockThreshold;
  /* 0x00b8 */ unsigned __int64 DeCommitTotalFreeThreshold;
  /* 0x00c0 */ unsigned __int64 TotalFreeSize;
  /* 0x00c8 */ unsigned __int64 MaximumAllocationSize;
  /* 0x00d0 */ unsigned short ProcessHeapsListIndex;
  /* 0x00d2 */ unsigned short HeaderValidateLength;
  /* 0x00d4 */ long Padding_451;
  /* 0x00d8 */ void* HeaderValidateCopy;
  /* 0x00e0 */ unsigned short NextAvailableTagIndex;
  /* 0x00e2 */ unsigned short MaximumTagIndex;
  /* 0x00e4 */ long Padding_452;
  /* 0x00e8 */ struct _HEAP_TAG_ENTRY* TagEntries;
  /* 0x00f0 */ struct _LIST_ENTRY UCRList;
  /* 0x0100 */ unsigned __int64 AlignRound;
  /* 0x0108 */ unsigned __int64 AlignMask;
  /* 0x0110 */ struct _LIST_ENTRY VirtualAllocdBlocks;
  /* 0x0120 */ struct _LIST_ENTRY SegmentList;
  /* 0x0130 */ unsigned short AllocatorBackTraceIndex;
  /* 0x0132 */ char Padding_453[2];
  /* 0x0134 */ unsigned long NonDedicatedListLength;
  /* 0x0138 */ void* BlocksIndex;
  /* 0x0140 */ void* UCRIndex;
  /* 0x0148 */ struct _HEAP_PSEUDO_TAG_ENTRY* PseudoTagEntries;
  /* 0x0150 */ struct _LIST_ENTRY FreeLists;
  /* 0x0160 */ struct _HEAP_LOCK* LockVariable;
  /* 0x0168 */ void* CommitRoutine /* function */;
  /* 0x0170 */ union _RTL_RUN_ONCE StackTraceInitVar;
  /* 0x0178 */ struct _RTL_HEAP_MEMORY_LIMIT_DATA CommitLimitData;
  /* 0x0198 */ void* FrontEndHeap;
  /* 0x01a0 */ unsigned short FrontHeapLockCount;
  /* 0x01a2 */ unsigned char FrontEndHeapType;
  /* 0x01a3 */ unsigned char RequestedFrontEndHeapType;
  /* 0x01a4 */ long Padding_454;
  /* 0x01a8 */ wchar_t* FrontEndHeapUsageData;
  /* 0x01b0 */ unsigned short FrontEndHeapMaximumIndex;
  /* 0x01b2 */ volatile unsigned char FrontEndHeapStatusBitmap[129];
  /* 0x0233 */ char Padding_455[5];
  /* 0x0238 */ struct _HEAP_COUNTERS Counters;
  /* 0x02b0 */ struct _HEAP_TUNING_PARAMETERS TuningParameters;
} HEAP, *PHEAP; /* size: 0x02c0 */

typedef union _MM_STORE_KEY
{
  union
  {
    struct /* bitfield */
    {
      /* 0x0000 */ unsigned __int64 KeyLow : 60; /* bit position: 0 */
      /* 0x0000 */ unsigned __int64 KeyHigh : 4; /* bit position: 60 */
    }; /* bitfield */
    /* 0x0000 */ unsigned __int64 EntireKey;
  }; /* size: 0x0008 */
} MM_STORE_KEY, *PMM_STORE_KEY; /* size: 0x0008 */

typedef struct _KTRANSACTION_HISTORY
{
  /* 0x0000 */ enum _TAG_UNNAMED_1 RecordType;
  /* 0x0004 */ unsigned long Payload;
} KTRANSACTION_HISTORY, *PKTRANSACTION_HISTORY; /* size: 0x0008 */

typedef struct _HEAP_TAG_ENTRY
{
  /* 0x0000 */ unsigned long Allocs;
  /* 0x0004 */ unsigned long Frees;
  /* 0x0008 */ unsigned __int64 Size;
  /* 0x0010 */ unsigned short TagIndex;
  /* 0x0012 */ unsigned short CreatorBackTraceIndex;
  /* 0x0014 */ wchar_t TagName[24];
  /* 0x0044 */ long __PADDING__[1];
} HEAP_TAG_ENTRY, *PHEAP_TAG_ENTRY; /* size: 0x0048 */

typedef struct _RSDP
{
  /* 0x0000 */ unsigned __int64 Signature;
  /* 0x0008 */ unsigned char Checksum;
  /* 0x0009 */ unsigned char OEMID[6];
  /* 0x000f */ unsigned char Revision;
  /* 0x0010 */ unsigned long RsdtAddress;
  /* 0x0014 */ unsigned long Length;
  /* 0x0018 */ union _LARGE_INTEGER XsdtAddress;
  /* 0x0020 */ unsigned char XChecksum;
  /* 0x0021 */ unsigned char Reserved[3];
} RSDP, *PRSDP; /* size: 0x0024 */

typedef struct _XSDT
{
  /* 0x0000 */ struct _DESCRIPTION_HEADER Header;
  /* 0x0024 */ union _LARGE_INTEGER Tables[1];
} XSDT, *PXSDT; /* size: 0x002c */

typedef struct _SMBIOS3_TABLE_HEADER
{
  /* 0x0000 */ unsigned char Signature[5];
  /* 0x0005 */ unsigned char Checksum;
  /* 0x0006 */ unsigned char Length;
  /* 0x0007 */ unsigned char MajorVersion;
  /* 0x0008 */ unsigned char MinorVersion;
  /* 0x0009 */ unsigned char Docrev;
  /* 0x000a */ unsigned char EntryPointRevision;
  /* 0x000b */ unsigned char Reserved;
  /* 0x000c */ unsigned long StructureTableMaximumSize;
  /* 0x0010 */ unsigned __int64 StructureTableAddress;
} SMBIOS3_TABLE_HEADER, *PSMBIOS3_TABLE_HEADER; /* size: 0x0018 */

typedef struct _IOAPIC
{
  /* 0x0000 */ unsigned char Type;
  /* 0x0001 */ unsigned char Length;
  /* 0x0002 */ unsigned char IOAPICID;
  /* 0x0003 */ unsigned char Reserved;
  /* 0x0004 */ unsigned long IOAPICAddress;
  /* 0x0008 */ unsigned long SystemVectorBase;
} IOAPIC, *PIOAPIC; /* size: 0x000c */

typedef struct _HAL_INTEL_ENLIGHTENMENT_INFORMATION
{
  /* 0x0000 */ unsigned long Enlightenments;
  /* 0x0004 */ unsigned long HypervisorConnected;
  /* 0x0008 */ void* EndOfInterrupt /* function */;
  /* 0x0010 */ void* ApicWriteIcr /* function */;
  /* 0x0018 */ unsigned long Reserved0;
  /* 0x001c */ unsigned long SpinCountMask;
  /* 0x0020 */ void* LongSpinWait /* function */;
  /* 0x0028 */ void* GetReferenceTime /* function */;
  /* 0x0030 */ void* SetSystemSleepProperty /* function */;
  /* 0x0038 */ void* EnterSleepState /* function */;
  /* 0x0040 */ void* NotifyDebugDeviceAvailable /* function */;
  /* 0x0048 */ void* MapDeviceInterrupt /* function */;
  /* 0x0050 */ void* UnmapDeviceInterrupt /* function */;
  /* 0x0058 */ void* RetargetDeviceInterrupt /* function */;
  /* 0x0060 */ void* SetHpetConfig /* function */;
  /* 0x0068 */ void* NotifyHpetEnabled /* function */;
  /* 0x0070 */ void* QueryAssociatedProcessors /* function */;
  /* 0x0078 */ void* ReadMultipleMsr /* function */;
  /* 0x0080 */ void* WriteMultipleMsr /* function */;
  /* 0x0088 */ void* ReadCpuid /* function */;
  /* 0x0090 */ void* LpWritebackInvalidate /* function */;
  /* 0x0098 */ void* GetMachineCheckContext /* function */;
  /* 0x00a0 */ void* SuspendPartition /* function */;
  /* 0x00a8 */ void* ResumePartition /* function */;
  /* 0x00b0 */ void* SetSystemMachineCheckProperty /* function */;
  /* 0x00b8 */ void* WheaErrorNotification /* function */;
  /* 0x00c0 */ void* GetProcessorIndexFromVpIndex /* function */;
  /* 0x00c8 */ void* SyntheticClusterIpi /* function */;
  /* 0x00d0 */ void* VpStartEnabled /* function */;
  /* 0x00d8 */ void* StartVirtualProcessor /* function */;
  /* 0x00e0 */ void* GetVpIndexFromApicId /* function */;
  /* 0x00e8 */ void* IumAccessPciDevice /* function */;
  /* 0x00f0 */ void* IumEfiRuntimeService /* function */;
  /* 0x00f8 */ void* SvmGetSystemCapabilities /* function */;
  /* 0x0100 */ void* SvmGetDeviceCapabilities /* function */;
  /* 0x0108 */ void* SvmCreatePasidSpace /* function */;
  /* 0x0110 */ void* SvmSetPasidAddressSpace /* function */;
  /* 0x0118 */ void* SvmFlushPasid /* function */;
  /* 0x0120 */ void* SvmAttachPasidSpace /* function */;
  /* 0x0128 */ void* SvmDetachPasidSpace /* function */;
  /* 0x0130 */ void* SvmEnablePasid /* function */;
  /* 0x0138 */ void* SvmDisablePasid /* function */;
  /* 0x0140 */ void* SvmAcknowledgePageRequest /* function */;
  /* 0x0148 */ void* SvmCreatePrQueue /* function */;
  /* 0x0150 */ void* SvmDeletePrQueue /* function */;
  /* 0x0158 */ void* SvmClearPrqStalled /* function */;
  /* 0x0160 */ void* SvmSetDeviceEnabled /* function */;
  /* 0x0168 */ void* HvDebuggerPowerHandler /* function */;
  /* 0x0170 */ void* SetQpcBias /* function */;
  /* 0x0178 */ void* GetQpcBias /* function */;
  /* 0x0180 */ void* RegisterDeviceId /* function */;
  /* 0x0188 */ void* UnregisterDeviceId /* function */;
  /* 0x0190 */ void* AllocateDeviceDomain /* function */;
  /* 0x0198 */ void* AttachDeviceDomain /* function */;
  /* 0x01a0 */ void* DetachDeviceDomain /* function */;
  /* 0x01a8 */ void* DeleteDeviceDomain /* function */;
  /* 0x01b0 */ void* MapDeviceLogicalRange /* function */;
  /* 0x01b8 */ void* UnmapDeviceLogicalRange /* function */;
  /* 0x01c0 */ void* MapDeviceSparsePages /* function */;
  /* 0x01c8 */ void* UnmapDeviceSparsePages /* function */;
  /* 0x01d0 */ void* GetDmaGuardEnabled /* function */;
  /* 0x01d8 */ void* UpdateMicrocode /* function */;
  /* 0x01e0 */ void* GetSintMessage /* function */;
  /* 0x01e8 */ void* RestoreTime /* function */;
  /* 0x01f0 */ void* SetRootFaultReportingReady /* function */;
} HAL_INTEL_ENLIGHTENMENT_INFORMATION, *PHAL_INTEL_ENLIGHTENMENT_INFORMATION; /* size: 0x01f8 */

typedef struct _LOADER_PARAMETER_HYPERVISOR_EXTENSION
{
  /* 0x0000 */ unsigned long InitialHypervisorCrashdumpAreaPageCount;
  /* 0x0004 */ unsigned long HypervisorCrashdumpAreaPageCount;
  /* 0x0008 */ unsigned __int64 InitialHypervisorCrashdumpAreaSpa;
  /* 0x0010 */ unsigned __int64 HypervisorCrashdumpAreaSpa;
  /* 0x0018 */ unsigned __int64 HypervisorLaunchStatus;
  /* 0x0020 */ unsigned __int64 HypervisorLaunchStatusArg1;
  /* 0x0028 */ unsigned __int64 HypervisorLaunchStatusArg2;
  /* 0x0030 */ unsigned __int64 HypervisorLaunchStatusArg3;
  /* 0x0038 */ unsigned __int64 HypervisorLaunchStatusArg4;
} LOADER_PARAMETER_HYPERVISOR_EXTENSION, *PLOADER_PARAMETER_HYPERVISOR_EXTENSION; /* size: 0x0040 */

typedef struct _MMVAD_FLAGS
{
  struct /* bitfield */
  {
    /* 0x0000 */ unsigned long Lock : 1; /* bit position: 0 */
    /* 0x0000 */ unsigned long LockContended : 1; /* bit position: 1 */
    /* 0x0000 */ unsigned long DeleteInProgress : 1; /* bit position: 2 */
    /* 0x0000 */ unsigned long NoChange : 1; /* bit position: 3 */
    /* 0x0000 */ unsigned long VadType : 3; /* bit position: 4 */
    /* 0x0000 */ unsigned long Protection : 5; /* bit position: 7 */
    /* 0x0000 */ unsigned long PreferredNode : 6; /* bit position: 12 */
    /* 0x0000 */ unsigned long PageSize : 2; /* bit position: 18 */
    /* 0x0000 */ unsigned long PrivateMemory : 1; /* bit position: 20 */
  }; /* bitfield */
} MMVAD_FLAGS, *PMMVAD_FLAGS; /* size: 0x0004 */

typedef struct _MM_PRIVATE_VAD_FLAGS
{
  struct /* bitfield */
  {
    /* 0x0000 */ unsigned long Lock : 1; /* bit position: 0 */
    /* 0x0000 */ unsigned long LockContended : 1; /* bit position: 1 */
    /* 0x0000 */ unsigned long DeleteInProgress : 1; /* bit position: 2 */
    /* 0x0000 */ unsigned long NoChange : 1; /* bit position: 3 */
    /* 0x0000 */ unsigned long VadType : 3; /* bit position: 4 */
    /* 0x0000 */ unsigned long Protection : 5; /* bit position: 7 */
    /* 0x0000 */ unsigned long PreferredNode : 6; /* bit position: 12 */
    /* 0x0000 */ unsigned long PageSize : 2; /* bit position: 18 */
    /* 0x0000 */ unsigned long PrivateMemoryAlwaysSet : 1; /* bit position: 20 */
    /* 0x0000 */ unsigned long WriteWatch : 1; /* bit position: 21 */
    /* 0x0000 */ unsigned long FixedLargePageSize : 1; /* bit position: 22 */
    /* 0x0000 */ unsigned long ZeroFillPagesOptional : 1; /* bit position: 23 */
    /* 0x0000 */ unsigned long Graphics : 1; /* bit position: 24 */
    /* 0x0000 */ unsigned long Enclave : 1; /* bit position: 25 */
    /* 0x0000 */ unsigned long ShadowStack : 1; /* bit position: 26 */
    /* 0x0000 */ unsigned long PhysicalMemoryPfnsReferenced : 1; /* bit position: 27 */
  }; /* bitfield */
} MM_PRIVATE_VAD_FLAGS, *PMM_PRIVATE_VAD_FLAGS; /* size: 0x0004 */

typedef struct _MM_GRAPHICS_VAD_FLAGS
{
  struct /* bitfield */
  {
    /* 0x0000 */ unsigned long Lock : 1; /* bit position: 0 */
    /* 0x0000 */ unsigned long LockContended : 1; /* bit position: 1 */
    /* 0x0000 */ unsigned long DeleteInProgress : 1; /* bit position: 2 */
    /* 0x0000 */ unsigned long NoChange : 1; /* bit position: 3 */
    /* 0x0000 */ unsigned long VadType : 3; /* bit position: 4 */
    /* 0x0000 */ unsigned long Protection : 5; /* bit position: 7 */
    /* 0x0000 */ unsigned long PreferredNode : 6; /* bit position: 12 */
    /* 0x0000 */ unsigned long PageSize : 2; /* bit position: 18 */
    /* 0x0000 */ unsigned long PrivateMemoryAlwaysSet : 1; /* bit position: 20 */
    /* 0x0000 */ unsigned long WriteWatch : 1; /* bit position: 21 */
    /* 0x0000 */ unsigned long FixedLargePageSize : 1; /* bit position: 22 */
    /* 0x0000 */ unsigned long ZeroFillPagesOptional : 1; /* bit position: 23 */
    /* 0x0000 */ unsigned long GraphicsAlwaysSet : 1; /* bit position: 24 */
    /* 0x0000 */ unsigned long GraphicsUseCoherentBus : 1; /* bit position: 25 */
    /* 0x0000 */ unsigned long GraphicsNoCache : 1; /* bit position: 26 */
    /* 0x0000 */ unsigned long GraphicsPageProtection : 3; /* bit position: 27 */
  }; /* bitfield */
} MM_GRAPHICS_VAD_FLAGS, *PMM_GRAPHICS_VAD_FLAGS; /* size: 0x0004 */

typedef struct _OBP_LOOKUP_CONTEXT
{
  /* 0x0000 */ struct _OBJECT_DIRECTORY* Directory;
  /* 0x0008 */ void* Object;
  /* 0x0010 */ struct _OBJECT_DIRECTORY_ENTRY** EntryLink;
  /* 0x0018 */ unsigned long HashValue;
  /* 0x001c */ unsigned short HashIndex;
  /* 0x001e */ unsigned char DirectoryLocked;
  /* 0x001f */ unsigned char LockedExclusive;
  /* 0x0020 */ unsigned long LockStateSignature;
  /* 0x0024 */ long __PADDING__[1];
} OBP_LOOKUP_CONTEXT, *POBP_LOOKUP_CONTEXT; /* size: 0x0028 */

typedef struct _BLOB
{
  union
  {
    /* 0x0000 */ struct _LIST_ENTRY ResourceList;
    /* 0x0000 */ struct _SLIST_ENTRY FreeListEntry;
  }; /* size: 0x0010 */
  union
  {
    union
    {
      struct
      {
        struct /* bitfield */
        {
          /* 0x0010 */ unsigned char ReferenceCache : 1; /* bit position: 0 */
          /* 0x0010 */ unsigned char Lookaside : 1; /* bit position: 1 */
          /* 0x0010 */ unsigned char Initializing : 1; /* bit position: 2 */
          /* 0x0010 */ unsigned char Deleted : 1; /* bit position: 3 */
        }; /* bitfield */
      } /* size: 0x0001 */ s1;
      /* 0x0010 */ unsigned char Flags;
    }; /* size: 0x0001 */
  } /* size: 0x0001 */ u1;
  /* 0x0011 */ unsigned char ResourceId;
  /* 0x0012 */ short CachedReferences;
  /* 0x0014 */ long Padding_456;
  /* 0x0018 */ __int64 ReferenceCount;
  /* 0x0020 */ struct _EX_PUSH_LOCK Lock;
  /* 0x0028 */ long __PADDING__[2];
} BLOB, *PBLOB; /* size: 0x0030 */

typedef struct _RTL_ATOM_TABLE
{
  /* 0x0000 */ unsigned long Signature;
  /* 0x0004 */ volatile long ReferenceCount;
  /* 0x0008 */ struct _EX_PUSH_LOCK PushLock;
  /* 0x0010 */ struct _HANDLE_TABLE* ExHandleTable;
  /* 0x0018 */ unsigned long Flags;
  /* 0x001c */ unsigned long NumberOfBuckets;
  /* 0x0020 */ struct _RTL_ATOM_TABLE_ENTRY* Buckets[1];
} RTL_ATOM_TABLE, *PRTL_ATOM_TABLE; /* size: 0x0028 */

typedef struct _RTL_ATOM_TABLE_REFERENCE
{
  /* 0x0000 */ struct _LIST_ENTRY LowBoxList;
  /* 0x0010 */ unsigned long LowBoxID;
  /* 0x0014 */ unsigned short ReferenceCount;
  /* 0x0016 */ unsigned short Flags;
} RTL_ATOM_TABLE_REFERENCE, *PRTL_ATOM_TABLE_REFERENCE; /* size: 0x0018 */

typedef struct _CMP_VOLUME_CONTEXT
{
  /* 0x0000 */ struct _LIST_ENTRY VolumeContextListEntry;
  /* 0x0010 */ struct _CMP_VOLUME_MANAGER* VolumeManager;
  /* 0x0018 */ __int64 RefCount;
  /* 0x0020 */ struct _GUID VolumeGuid;
  /* 0x0030 */ void* VolumeFileObject;
  /* 0x0038 */ struct _CMSI_RW_LOCK VolumeContextLock;
  /* 0x0040 */ unsigned char DeviceUsageNotificationSent;
  /* 0x0041 */ char __PADDING__[7];
} CMP_VOLUME_CONTEXT, *PCMP_VOLUME_CONTEXT; /* size: 0x0048 */

typedef struct _WNF_SUBSCRIPTION
{
  /* 0x0000 */ struct _WNF_NODE_HEADER Header;
  /* 0x0004 */ long Padding_457;
  /* 0x0008 */ struct _EX_RUNDOWN_REF RunRef;
  /* 0x0010 */ unsigned __int64 SubscriptionId;
  /* 0x0018 */ struct _LIST_ENTRY ProcessSubscriptionListEntry;
  /* 0x0028 */ struct _EPROCESS* Process;
  /* 0x0030 */ struct _WNF_NAME_INSTANCE* NameInstance;
  /* 0x0038 */ struct _WNF_STATE_NAME_STRUCT StateName;
  /* 0x0040 */ struct _LIST_ENTRY StateSubscriptionListEntry;
  /* 0x0050 */ unsigned __int64 CallbackRoutine;
  /* 0x0058 */ void* CallbackContext;
  /* 0x0060 */ unsigned long CurrentChangeStamp;
  /* 0x0064 */ unsigned long SubscribedEventSet;
  /* 0x0068 */ struct _LIST_ENTRY PendingSubscriptionListEntry;
  /* 0x0078 */ enum _WNF_SUBSCRIPTION_STATE SubscriptionState;
  /* 0x007c */ unsigned long SignaledEventSet;
  /* 0x0080 */ unsigned long InDeliveryEventSet;
  /* 0x0084 */ long __PADDING__[1];
} WNF_SUBSCRIPTION, *PWNF_SUBSCRIPTION; /* size: 0x0088 */

typedef struct _PNP_DEVICE_ACTION_ENTRY
{
  /* 0x0000 */ struct _LIST_ENTRY ListEntry;
  /* 0x0010 */ struct _DEVICE_OBJECT* DeviceObject;
  /* 0x0018 */ enum _PNP_DEVICE_ACTION_REQUEST RequestType;
  /* 0x001c */ unsigned char ReorderingBarrier;
  /* 0x001d */ char Padding_458[3];
  /* 0x0020 */ unsigned __int64 RequestArgument;
  /* 0x0028 */ struct _KEVENT* CompletionEvent;
  /* 0x0030 */ long* CompletionStatus;
  /* 0x0038 */ struct _GUID ActivityId;
  /* 0x0048 */ long RefCount;
  /* 0x004c */ unsigned char Dequeued;
  /* 0x004d */ char Padding_459[3];
  /* 0x0050 */ struct _EX_PUSH_LOCK CancelLock;
  /* 0x0058 */ unsigned char CancelRequested;
  /* 0x0059 */ char __PADDING__[7];
} PNP_DEVICE_ACTION_ENTRY, *PPNP_DEVICE_ACTION_ENTRY; /* size: 0x0060 */

typedef struct _WNF_STATE_DATA
{
  /* 0x0000 */ struct _WNF_NODE_HEADER Header;
  /* 0x0004 */ unsigned long AllocatedSize;
  /* 0x0008 */ unsigned long DataSize;
  /* 0x000c */ unsigned long ChangeStamp;
} WNF_STATE_DATA, *PWNF_STATE_DATA; /* size: 0x0010 */

typedef struct _OB_DUPLICATE_OBJECT_STATE
{
  /* 0x0000 */ struct _EPROCESS* SourceProcess;
  /* 0x0008 */ void* SourceHandle;
  /* 0x0010 */ void* Object;
  /* 0x0018 */ unsigned long TargetAccess;
  /* 0x001c */ struct _HANDLE_TABLE_ENTRY_INFO ObjectInfo;
  /* 0x0024 */ unsigned long HandleAttributes;
} OB_DUPLICATE_OBJECT_STATE, *POB_DUPLICATE_OBJECT_STATE; /* size: 0x0028 */

typedef struct _KALPC_HANDLE_DATA
{
  /* 0x0000 */ unsigned long ObjectType;
  /* 0x0004 */ unsigned long Count;
  /* 0x0008 */ struct _OB_DUPLICATE_OBJECT_STATE DuplicateContext;
} KALPC_HANDLE_DATA, *PKALPC_HANDLE_DATA; /* size: 0x0030 */

typedef struct _CM_NAME_HASH
{
  /* 0x0000 */ struct _CM_COMPONENT_HASH ConvKey;
  /* 0x0004 */ long Padding_460;
  /* 0x0008 */ struct _CM_NAME_HASH* NextHash;
  /* 0x0010 */ unsigned short NameLength;
  /* 0x0012 */ wchar_t Name[1];
  /* 0x0014 */ long __PADDING__[1];
} CM_NAME_HASH, *PCM_NAME_HASH; /* size: 0x0018 */

typedef struct _CM_NAME_CONTROL_BLOCK
{
  struct /* bitfield */
  {
    /* 0x0000 */ unsigned long Compressed : 1; /* bit position: 0 */
    /* 0x0000 */ unsigned long RefCount : 31; /* bit position: 1 */
  }; /* bitfield */
  /* 0x0004 */ long Padding_461;
  union
  {
    /* 0x0008 */ struct _CM_NAME_HASH NameHash;
    struct
    {
      /* 0x0008 */ struct _CM_COMPONENT_HASH ConvKey;
      /* 0x000c */ long Padding_462;
      /* 0x0010 */ struct _CM_KEY_HASH* NextHash;
      /* 0x0018 */ unsigned short NameLength;
      /* 0x001a */ wchar_t Name[1];
      /* 0x001c */ long __PADDING__[1];
    }; /* size: 0x0014 */
  }; /* size: 0x0018 */
} CM_NAME_CONTROL_BLOCK, *PCM_NAME_CONTROL_BLOCK; /* size: 0x0020 */

typedef struct _CM_KEY_SECURITY
{
  /* 0x0000 */ unsigned short Signature;
  /* 0x0002 */ unsigned short Reserved;
  /* 0x0004 */ unsigned long Flink;
  /* 0x0008 */ unsigned long Blink;
  /* 0x000c */ unsigned long ReferenceCount;
  /* 0x0010 */ unsigned long DescriptorLength;
  /* 0x0014 */ struct _SECURITY_DESCRIPTOR_RELATIVE Descriptor;
} CM_KEY_SECURITY, *PCM_KEY_SECURITY; /* size: 0x0028 */

typedef struct _HV_GET_BIN_CONTEXT
{
  /* 0x0000 */ unsigned short OutstandingReference : 1; /* bit position: 0 */
} HV_GET_BIN_CONTEXT, *PHV_GET_BIN_CONTEXT; /* size: 0x0002 */

typedef struct _HV_GET_CELL_CONTEXT
{
  /* 0x0000 */ unsigned long Cell;
  /* 0x0004 */ struct _HV_GET_BIN_CONTEXT BinContext;
  /* 0x0006 */ char __PADDING__[2];
} HV_GET_CELL_CONTEXT, *PHV_GET_CELL_CONTEXT; /* size: 0x0008 */

typedef struct _HEAP_ENTRY_EXTRA
{
  union
  {
    struct
    {
      /* 0x0000 */ unsigned short AllocatorBackTraceIndex;
      /* 0x0002 */ unsigned short TagIndex;
      /* 0x0004 */ long Padding_463;
      /* 0x0008 */ unsigned __int64 Settable;
    }; /* size: 0x000c */
    struct
    {
      /* 0x0000 */ unsigned __int64 ZeroInit;
      /* 0x0008 */ unsigned __int64 ZeroInit1;
    }; /* size: 0x0010 */
  }; /* size: 0x0010 */
} HEAP_ENTRY_EXTRA, *PHEAP_ENTRY_EXTRA; /* size: 0x0010 */

typedef struct _SEGMENT_FLAGS
{
  union
  {
    struct /* bitfield */
    {
      /* 0x0000 */ unsigned short TotalNumberOfPtes4132 : 10; /* bit position: 0 */
      /* 0x0000 */ unsigned short Spare0 : 1; /* bit position: 10 */
      /* 0x0000 */ unsigned short SessionDriverProtos : 1; /* bit position: 11 */
      /* 0x0000 */ unsigned short LargePages : 1; /* bit position: 12 */
      /* 0x0000 */ unsigned short DebugSymbolsLoaded : 1; /* bit position: 13 */
      /* 0x0000 */ unsigned short WriteCombined : 1; /* bit position: 14 */
      /* 0x0000 */ unsigned short NoCache : 1; /* bit position: 15 */
    }; /* bitfield */
    /* 0x0000 */ unsigned short Short0;
  }; /* size: 0x0002 */
  union
  {
    struct /* bitfield */
    {
      /* 0x0002 */ unsigned char Spare : 1; /* bit position: 0 */
      /* 0x0002 */ unsigned char DefaultProtectionMask : 5; /* bit position: 1 */
      /* 0x0002 */ unsigned char Binary32 : 1; /* bit position: 6 */
      /* 0x0002 */ unsigned char ContainsDebug : 1; /* bit position: 7 */
    }; /* bitfield */
    /* 0x0002 */ unsigned char UChar1;
  }; /* size: 0x0001 */
  union
  {
    struct /* bitfield */
    {
      /* 0x0003 */ unsigned char ForceCollision : 1; /* bit position: 0 */
      /* 0x0003 */ unsigned char ImageSigningType : 3; /* bit position: 1 */
      /* 0x0003 */ unsigned char ImageSigningLevel : 4; /* bit position: 4 */
    }; /* bitfield */
    /* 0x0003 */ unsigned char UChar2;
  }; /* size: 0x0001 */
} SEGMENT_FLAGS, *PSEGMENT_FLAGS; /* size: 0x0004 */

typedef struct _CACHE_MANAGER_CALLBACKS
{
  /* 0x0000 */ void* AcquireForLazyWrite /* function */;
  /* 0x0008 */ void* ReleaseFromLazyWrite /* function */;
  /* 0x0010 */ void* AcquireForReadAhead /* function */;
  /* 0x0018 */ void* ReleaseFromReadAhead /* function */;
} CACHE_MANAGER_CALLBACKS, *PCACHE_MANAGER_CALLBACKS; /* size: 0x0020 */

typedef struct _MI_EXTRA_IMAGE_INFORMATION
{
  /* 0x0000 */ unsigned long SizeOfHeaders;
  /* 0x0004 */ unsigned long SizeOfImage;
  /* 0x0008 */ unsigned long TimeDateStamp;
  struct /* bitfield */
  {
    /* 0x000c */ unsigned long ImageCetShadowStacksReady : 1; /* bit position: 0 */
    /* 0x000c */ unsigned long ImageCetShadowStacksStrictMode : 1; /* bit position: 1 */
    /* 0x000c */ unsigned long ImageCetSetContextIpValidationRelaxedMode : 1; /* bit position: 2 */
    /* 0x000c */ unsigned long ImageCetDynamicApisAllowInProc : 1; /* bit position: 3 */
    /* 0x000c */ unsigned long ImageCetDowngradeReserved1 : 1; /* bit position: 4 */
    /* 0x000c */ unsigned long ImageCetDowngradeReserved2 : 1; /* bit position: 5 */
    /* 0x000c */ unsigned long Spare : 26; /* bit position: 6 */
  }; /* bitfield */
} MI_EXTRA_IMAGE_INFORMATION, *PMI_EXTRA_IMAGE_INFORMATION; /* size: 0x0010 */

typedef struct _VACB_ARRAY_HEADER
{
  /* 0x0000 */ unsigned long VacbArrayIndex;
  /* 0x0004 */ unsigned long MappingCount;
  /* 0x0008 */ unsigned long HighestMappedIndex;
  /* 0x000c */ unsigned long Reserved;
} VACB_ARRAY_HEADER, *PVACB_ARRAY_HEADER; /* size: 0x0010 */

typedef struct _PEP_ACPI_EXTENDED_ADDRESS
{
  /* 0x0000 */ enum _PEP_ACPI_RESOURCE_TYPE Type;
  /* 0x0004 */ union _PEP_ACPI_RESOURCE_FLAGS Flags;
  /* 0x0008 */ unsigned char ResourceFlags;
  /* 0x0009 */ unsigned char GeneralFlags;
  /* 0x000a */ unsigned char TypeSpecificFlags;
  /* 0x000b */ unsigned char RevisionId;
  /* 0x000c */ unsigned char Reserved;
  /* 0x000d */ char Padding_464[3];
  /* 0x0010 */ unsigned __int64 Granularity;
  /* 0x0018 */ unsigned __int64 MinimumAddress;
  /* 0x0020 */ unsigned __int64 MaximumAddress;
  /* 0x0028 */ unsigned __int64 TranslationAddress;
  /* 0x0030 */ unsigned __int64 AddressLength;
  /* 0x0038 */ unsigned __int64 TypeAttribute;
  /* 0x0040 */ struct _UNICODE_STRING* DescriptorName;
} PEP_ACPI_EXTENDED_ADDRESS, *PPEP_ACPI_EXTENDED_ADDRESS; /* size: 0x0048 */

typedef struct _MI_FREE_LARGE_PAGE_LIST
{
  /* 0x0000 */ struct _LIST_ENTRY ListHead;
  /* 0x0010 */ unsigned __int64 EntryCount;
} MI_FREE_LARGE_PAGE_LIST, *PMI_FREE_LARGE_PAGE_LIST; /* size: 0x0018 */

typedef struct _PROCESSOR_PLATFORM_STATE_RESIDENCY
{
  /* 0x0000 */ unsigned __int64 Residency;
  /* 0x0008 */ unsigned __int64 TransitionCount;
} PROCESSOR_PLATFORM_STATE_RESIDENCY, *PPROCESSOR_PLATFORM_STATE_RESIDENCY; /* size: 0x0010 */

struct wil_details_StagingConfigFeature
{
  /* 0x0000 */ unsigned int featureId;
  struct /* bitfield */
  {
    /* 0x0004 */ unsigned int changedInSession : 1; /* bit position: 0 */
    /* 0x0004 */ unsigned int isVariantConfig : 1; /* bit position: 1 */
    /* 0x0004 */ unsigned int unused1 : 6; /* bit position: 2 */
    /* 0x0004 */ unsigned int serviceState : 2; /* bit position: 8 */
    /* 0x0004 */ unsigned int userState : 2; /* bit position: 10 */
    /* 0x0004 */ unsigned int testState : 2; /* bit position: 12 */
    /* 0x0004 */ unsigned int unused2 : 2; /* bit position: 14 */
    /* 0x0004 */ unsigned int unused3 : 8; /* bit position: 16 */
    /* 0x0004 */ unsigned int variant : 6; /* bit position: 24 */
    /* 0x0004 */ unsigned int payloadKind : 2; /* bit position: 30 */
  }; /* bitfield */
  /* 0x0008 */ unsigned int payload;
}; /* size: 0x000c */

typedef struct _HAL_HV_SVM_SYSTEM_CAPABILITIES
{
  struct /* bitfield */
  {
    /* 0x0000 */ unsigned long SvmSupported : 1; /* bit position: 0 */
    /* 0x0000 */ unsigned long GpaAlwaysValid : 1; /* bit position: 1 */
  }; /* bitfield */
  /* 0x0004 */ unsigned long MaxPasidSpaceCount;
  /* 0x0008 */ unsigned long MaxPasidSpacePasidCount;
  /* 0x000c */ unsigned long MaxPrqSize;
  /* 0x0010 */ unsigned long IommuCount;
  /* 0x0014 */ unsigned long MinIommuPasidCount;
} HAL_HV_SVM_SYSTEM_CAPABILITIES, *PHAL_HV_SVM_SYSTEM_CAPABILITIES; /* size: 0x0018 */

struct wil_details_StagingConfigUsageTrigger
{
  /* 0x0000 */ unsigned int featureId;
  /* 0x0004 */ struct wil_details_StagingConfigWnfStateName trigger;
  struct /* bitfield */
  {
    /* 0x000c */ unsigned int serviceReportingKind : 16; /* bit position: 0 */
    /* 0x000c */ unsigned int isVariantConfig : 1; /* bit position: 16 */
    /* 0x000c */ unsigned int unused : 15; /* bit position: 17 */
  }; /* bitfield */
}; /* size: 0x0010 */

typedef struct _DBGKD_SET_INTERNAL_BREAKPOINT64
{
  /* 0x0000 */ unsigned __int64 BreakpointAddress;
  /* 0x0008 */ unsigned long Flags;
  /* 0x000c */ long __PADDING__[1];
} DBGKD_SET_INTERNAL_BREAKPOINT64, *PDBGKD_SET_INTERNAL_BREAKPOINT64; /* size: 0x0010 */

typedef struct _HAL_HV_SVM_DEVICE_CAPABILITIES
{
  struct /* bitfield */
  {
    /* 0x0000 */ unsigned long SvmSupported : 1; /* bit position: 0 */
    /* 0x0000 */ unsigned long PciExecute : 1; /* bit position: 1 */
    /* 0x0000 */ unsigned long NoExecute : 1; /* bit position: 2 */
    /* 0x0000 */ unsigned long Reserved : 28; /* bit position: 3 */
    /* 0x0000 */ unsigned long OverflowPossible : 1; /* bit position: 31 */
  }; /* bitfield */
  /* 0x0004 */ unsigned long PasidCount;
  /* 0x0008 */ unsigned long IommuIndex;
} HAL_HV_SVM_DEVICE_CAPABILITIES, *PHAL_HV_SVM_DEVICE_CAPABILITIES; /* size: 0x000c */

typedef struct _SEGMENT
{
  /* 0x0000 */ struct _CONTROL_AREA* ControlArea;
  /* 0x0008 */ unsigned long TotalNumberOfPtes;
  /* 0x000c */ struct _SEGMENT_FLAGS SegmentFlags;
  /* 0x0010 */ unsigned __int64 NumberOfCommittedPages;
  /* 0x0018 */ unsigned __int64 SizeOfSegment;
  union
  {
    /* 0x0020 */ struct _MMEXTEND_INFO* ExtendInfo;
    /* 0x0020 */ void* BasedAddress;
  }; /* size: 0x0008 */
  /* 0x0028 */ struct _EX_PUSH_LOCK SegmentLock;
  union
  {
    union
    {
      /* 0x0030 */ unsigned __int64 ImageCommitment;
      /* 0x0030 */ unsigned long CreatingProcessId;
    }; /* size: 0x0008 */
  } /* size: 0x0008 */ u1;
  union
  {
    union
    {
      /* 0x0038 */ struct _MI_SECTION_IMAGE_INFORMATION* ImageInformation;
      /* 0x0038 */ void* FirstMappedVa;
    }; /* size: 0x0008 */
  } /* size: 0x0008 */ u2;
  /* 0x0040 */ struct _MMPTE* PrototypePte;
} SEGMENT, *PSEGMENT; /* size: 0x0048 */

typedef struct _IMAGE_SECURITY_CONTEXT
{
  union
  {
    /* 0x0000 */ void* PageHashes;
    /* 0x0000 */ unsigned __int64 Value;
    struct /* bitfield */
    {
      /* 0x0000 */ unsigned __int64 SecurityBeingCreated : 2; /* bit position: 0 */
      /* 0x0000 */ unsigned __int64 SecurityMandatory : 1; /* bit position: 2 */
      /* 0x0000 */ unsigned __int64 PageHashPointer : 61; /* bit position: 3 */
    }; /* bitfield */
  }; /* size: 0x0008 */
} IMAGE_SECURITY_CONTEXT, *PIMAGE_SECURITY_CONTEXT; /* size: 0x0008 */

typedef struct _MI_IMAGE_SECURITY_REFERENCE
{
  /* 0x0000 */ struct _MI_PROTOTYPE_PTES_NODE ProtosNode;
  /* 0x0020 */ void* DynamicRelocations;
  /* 0x0028 */ struct _IMAGE_SECURITY_CONTEXT SecurityContext;
  union
  {
    union
    {
      /* 0x0030 */ void* ImageFileExtents;
      /* 0x0030 */ unsigned __int64 ImageFileExtentsUlongPtr;
      struct /* bitfield */
      {
        /* 0x0030 */ unsigned __int64 FilesystemWantsRva : 1; /* bit position: 0 */
        /* 0x0030 */ unsigned __int64 Spare : 3; /* bit position: 1 */
      }; /* bitfield */
    }; /* size: 0x0008 */
  } /* size: 0x0008 */ u1;
  /* 0x0038 */ unsigned __int64 StrongImageReference;
} MI_IMAGE_SECURITY_REFERENCE, *PMI_IMAGE_SECURITY_REFERENCE; /* size: 0x0040 */

typedef struct _KTB_FLUSH_VA
{
  union
  {
    union
    {
      struct /* bitfield */
      {
        /* 0x0000 */ unsigned __int64 NumberOfEntries : 10; /* bit position: 0 */
        /* 0x0000 */ unsigned __int64 PageSize : 2; /* bit position: 10 */
      }; /* bitfield */
      /* 0x0000 */ void* Va;
      /* 0x0000 */ unsigned __int64 VaLong;
    }; /* size: 0x0008 */
  } /* size: 0x0008 */ u1;
} KTB_FLUSH_VA, *PKTB_FLUSH_VA; /* size: 0x0008 */

typedef struct _RTL_CSPARSE_BITMAP
{
  /* 0x0000 */ unsigned __int64* CommitBitmap;
  /* 0x0008 */ unsigned __int64* UserBitmap;
  /* 0x0010 */ unsigned __int64 BitCount;
  /* 0x0018 */ unsigned __int64 BitmapLock;
  /* 0x0020 */ unsigned __int64 DecommitPageIndex;
  /* 0x0028 */ unsigned __int64 RtlpCSparseBitmapWakeLock;
  /* 0x0030 */ unsigned char LockType;
  /* 0x0031 */ unsigned char AddressSpace;
  /* 0x0032 */ unsigned char MemType;
  /* 0x0033 */ unsigned char AllocAlignment;
  /* 0x0034 */ unsigned long CommitDirectoryMaxSize;
  /* 0x0038 */ unsigned __int64 CommitDirectory[1];
} RTL_CSPARSE_BITMAP, *PRTL_CSPARSE_BITMAP; /* size: 0x0040 */

typedef struct _RTLP_HP_ALLOC_TRACKER
{
  /* 0x0000 */ unsigned __int64 BaseAddress;
  union
  {
    /* 0x0008 */ struct _RTL_CSPARSE_BITMAP AllocTrackerBitmap;
    /* 0x0008 */ unsigned char AllocTrackerBitmapBuffer[72];
  }; /* size: 0x0048 */
} RTLP_HP_ALLOC_TRACKER, *PRTLP_HP_ALLOC_TRACKER; /* size: 0x0050 */

typedef struct _RTLP_HP_HEAP_GLOBALS
{
  /* 0x0000 */ unsigned __int64 HeapKey;
  /* 0x0008 */ unsigned __int64 LfhKey;
  /* 0x0010 */ struct _HEAP_FAILURE_INFORMATION* FailureInfo;
  /* 0x0018 */ struct _RTL_HEAP_MEMORY_LIMIT_DATA CommitLimitData;
} RTLP_HP_HEAP_GLOBALS, *PRTLP_HP_HEAP_GLOBALS; /* size: 0x0038 */

typedef struct _NLS_DATA_BLOCK
{
  /* 0x0000 */ void* AnsiCodePageData;
  /* 0x0008 */ void* OemCodePageData;
  /* 0x0010 */ void* UnicodeCaseTableData;
} NLS_DATA_BLOCK, *PNLS_DATA_BLOCK; /* size: 0x0018 */

typedef struct _HEAP_VAMGR_ALLOCATOR
{
  /* 0x0000 */ unsigned __int64 TreeLock;
  /* 0x0008 */ struct _RTL_RB_TREE FreeRanges;
  /* 0x0018 */ struct _HEAP_VAMGR_VASPACE* VaSpace;
  /* 0x0020 */ void* PartitionHandle;
  /* 0x0028 */ unsigned short ChunksPerRegion;
  /* 0x002a */ unsigned short RefCount;
  /* 0x002c */ unsigned char AllocatorIndex;
  /* 0x002d */ unsigned char NumaNode;
  struct /* bitfield */
  {
    /* 0x002e */ unsigned char LockType : 1; /* bit position: 0 */
    /* 0x002e */ unsigned char MemoryType : 2; /* bit position: 1 */
    /* 0x002e */ unsigned char ConstrainedVA : 1; /* bit position: 3 */
    /* 0x002e */ unsigned char AllowFreeHead : 1; /* bit position: 4 */
    /* 0x002e */ unsigned char Spare0 : 3; /* bit position: 5 */
  }; /* bitfield */
  /* 0x002f */ unsigned char Spare1;
} HEAP_VAMGR_ALLOCATOR, *PHEAP_VAMGR_ALLOCATOR; /* size: 0x0030 */

typedef struct _RTL_CHASH_TABLE
{
  /* 0x0000 */ struct _RTL_CHASH_ENTRY* Table;
  /* 0x0008 */ unsigned long EntrySizeShift;
  /* 0x000c */ unsigned long EntryMax;
  /* 0x0010 */ unsigned long EntryCount;
  /* 0x0014 */ long __PADDING__[1];
} RTL_CHASH_TABLE, *PRTL_CHASH_TABLE; /* size: 0x0018 */

typedef struct _PRIVATE_CACHE_MAP_FLAGS
{
  struct /* bitfield */
  {
    /* 0x0000 */ unsigned long DontUse : 16; /* bit position: 0 */
    /* 0x0000 */ unsigned long ReadAheadActive : 1; /* bit position: 16 */
    /* 0x0000 */ unsigned long ReadAheadEnabled : 1; /* bit position: 17 */
    /* 0x0000 */ unsigned long PagePriority : 3; /* bit position: 18 */
    /* 0x0000 */ unsigned long PipelineReadAheads : 1; /* bit position: 21 */
    /* 0x0000 */ unsigned long Available : 10; /* bit position: 22 */
  }; /* bitfield */
} PRIVATE_CACHE_MAP_FLAGS, *PPRIVATE_CACHE_MAP_FLAGS; /* size: 0x0004 */

typedef struct _PRIVATE_CACHE_MAP
{
  union
  {
    /* 0x0000 */ short NodeTypeCode;
    /* 0x0000 */ struct _PRIVATE_CACHE_MAP_FLAGS Flags;
  }; /* size: 0x0004 */
  /* 0x0004 */ unsigned long ReadAheadMask;
  /* 0x0008 */ struct _FILE_OBJECT* FileObject;
  /* 0x0010 */ union _LARGE_INTEGER FileOffset1;
  /* 0x0018 */ union _LARGE_INTEGER BeyondLastByte1;
  /* 0x0020 */ union _LARGE_INTEGER FileOffset2;
  /* 0x0028 */ union _LARGE_INTEGER BeyondLastByte2;
  /* 0x0030 */ unsigned long SequentialReadCount;
  /* 0x0034 */ unsigned long ReadAheadLength;
  /* 0x0038 */ union _LARGE_INTEGER ReadAheadOffset;
  /* 0x0040 */ union _LARGE_INTEGER ReadAheadBeyondLastByte;
  /* 0x0048 */ unsigned __int64 PrevReadAheadBeyondLastByte;
  /* 0x0050 */ unsigned __int64 ReadAheadSpinLock;
  /* 0x0058 */ unsigned long PipelinedReadAheadRequestSize;
  /* 0x005c */ unsigned long ReadAheadGrowth;
  /* 0x0060 */ struct _LIST_ENTRY PrivateLinks;
  /* 0x0070 */ void* ReadAheadWorkItem;
} PRIVATE_CACHE_MAP, *PPRIVATE_CACHE_MAP; /* size: 0x0078 */

typedef struct _WRITE_BEHIND_THROUGHPUT
{
  /* 0x0000 */ unsigned long PagesYetToWrite;
  /* 0x0004 */ unsigned long Throughput;
} WRITE_BEHIND_THROUGHPUT, *PWRITE_BEHIND_THROUGHPUT; /* size: 0x0008 */

typedef struct _NT_TIB64
{
  /* 0x0000 */ unsigned __int64 ExceptionList;
  /* 0x0008 */ unsigned __int64 StackBase;
  /* 0x0010 */ unsigned __int64 StackLimit;
  /* 0x0018 */ unsigned __int64 SubSystemTib;
  union
  {
    /* 0x0020 */ unsigned __int64 FiberData;
    /* 0x0020 */ unsigned long Version;
  }; /* size: 0x0008 */
  /* 0x0028 */ unsigned __int64 ArbitraryUserPointer;
  /* 0x0030 */ unsigned __int64 Self;
} NT_TIB64, *PNT_TIB64; /* size: 0x0038 */

typedef struct _HAL_HV_DMA_DOMAIN_INFO
{
  /* 0x0000 */ unsigned long DomainId;
  /* 0x0004 */ unsigned char IsStage1;
  /* 0x0005 */ char __PADDING__[3];
} HAL_HV_DMA_DOMAIN_INFO, *PHAL_HV_DMA_DOMAIN_INFO; /* size: 0x0008 */

typedef struct _PHYSICAL_MEMORY_RUN
{
  /* 0x0000 */ unsigned __int64 BasePage;
  /* 0x0008 */ unsigned __int64 PageCount;
} PHYSICAL_MEMORY_RUN, *PPHYSICAL_MEMORY_RUN; /* size: 0x0010 */

typedef struct _PHYSICAL_MEMORY_DESCRIPTOR
{
  /* 0x0000 */ unsigned long NumberOfRuns;
  /* 0x0004 */ long Padding_465;
  /* 0x0008 */ unsigned __int64 NumberOfPages;
  /* 0x0010 */ struct _PHYSICAL_MEMORY_RUN Run[1];
} PHYSICAL_MEMORY_DESCRIPTOR, *PPHYSICAL_MEMORY_DESCRIPTOR; /* size: 0x0020 */

typedef struct _POP_PPM_PROFILE
{
  /* 0x0000 */ wchar_t* Name;
  /* 0x0008 */ unsigned char Id;
  /* 0x0009 */ char Padding_466[3];
  /* 0x000c */ struct _GUID Guid;
  /* 0x001c */ unsigned long Flags;
  /* 0x0020 */ unsigned char Priority;
  /* 0x0021 */ char Padding_467[7];
  /* 0x0028 */ struct _PPM_ENGINE_SETTINGS Settings[2];
  /* 0x1588 */ unsigned __int64 StartTime;
  /* 0x1590 */ unsigned __int64 Count;
  /* 0x1598 */ unsigned __int64 MaxDuration;
  /* 0x15a0 */ unsigned __int64 MinDuration;
  /* 0x15a8 */ unsigned __int64 TotalDuration;
} POP_PPM_PROFILE, *PPOP_PPM_PROFILE; /* size: 0x15b0 */

typedef struct _MAP_REGISTER_ENTRY
{
  /* 0x0000 */ void* MapRegister;
  /* 0x0008 */ unsigned char WriteToDevice;
  /* 0x0009 */ char __PADDING__[7];
} MAP_REGISTER_ENTRY, *PMAP_REGISTER_ENTRY; /* size: 0x0010 */

typedef struct _SEGMENT_HEAP_EXTRA
{
  /* 0x0000 */ unsigned short AllocationTag;
  struct /* bitfield */
  {
    /* 0x0002 */ unsigned char InterceptorIndex : 4; /* bit position: 0 */
    /* 0x0002 */ unsigned char UserFlags : 4; /* bit position: 4 */
  }; /* bitfield */
  /* 0x0003 */ unsigned char ExtraSizeInUnits;
  /* 0x0004 */ long Padding_468;
  /* 0x0008 */ void* Settable;
} SEGMENT_HEAP_EXTRA, *PSEGMENT_HEAP_EXTRA; /* size: 0x0010 */

struct _MI_ZERO_THREAD_CONTEXT;

struct DEBUG_DEVICE_ADDRESS
{
  /* 0x0000 */ unsigned char Type;
  /* 0x0001 */ unsigned char Valid;
  union
  {
    /* 0x0002 */ unsigned char Reserved[2];
    struct
    {
      /* 0x0002 */ unsigned char BitWidth;
      /* 0x0003 */ unsigned char AccessSize;
    }; /* size: 0x0002 */
  }; /* size: 0x0002 */
  /* 0x0004 */ long Padding_469;
  /* 0x0008 */ unsigned char* TranslatedAddress;
  /* 0x0010 */ unsigned long Length;
  /* 0x0014 */ long __PADDING__[1];
}; /* size: 0x0018 */

typedef struct _RTL_SPARSE_ARRAY
{
  /* 0x0000 */ unsigned __int64 ElementCount;
  /* 0x0008 */ unsigned long ElementSizeShift;
  /* 0x000c */ long Padding_470;
  /* 0x0010 */ struct _RTL_CSPARSE_BITMAP Bitmap;
} RTL_SPARSE_ARRAY, *PRTL_SPARSE_ARRAY; /* size: 0x0050 */

typedef struct _HEAP_VAMGR_VASPACE
{
  /* 0x0000 */ enum _RTLP_HP_ADDRESS_SPACE_TYPE AddressSpaceType;
  /* 0x0004 */ long Padding_471;
  /* 0x0008 */ unsigned __int64 BaseAddress;
  union
  {
    /* 0x0010 */ struct _RTL_SPARSE_ARRAY VaRangeArray;
    /* 0x0010 */ unsigned char VaRangeArrayBuffer[2128];
  }; /* size: 0x0850 */
} HEAP_VAMGR_VASPACE, *PHEAP_VAMGR_VASPACE; /* size: 0x0860 */

typedef struct _HEAP_VAMGR_CTX
{
  /* 0x0000 */ struct _HEAP_VAMGR_VASPACE VaSpace;
  /* 0x0860 */ unsigned __int64 AllocatorLock;
  /* 0x0868 */ unsigned long AllocatorCount;
  /* 0x086c */ long Padding_472;
  /* 0x0870 */ struct _HEAP_VAMGR_ALLOCATOR Allocators[255];
} HEAP_VAMGR_CTX, *PHEAP_VAMGR_CTX; /* size: 0x3840 */

typedef struct _RTL_HP_SUB_ALLOCATOR_CONFIGS
{
  /* 0x0000 */ struct _RTL_HP_LFH_CONFIG LfhConfigs;
  /* 0x0004 */ struct _RTL_HP_VS_CONFIG VsConfigs;
} RTL_HP_SUB_ALLOCATOR_CONFIGS, *PRTL_HP_SUB_ALLOCATOR_CONFIGS; /* size: 0x0008 */

typedef struct _RTLP_HP_HEAP_MANAGER
{
  /* 0x0000 */ struct _RTLP_HP_HEAP_GLOBALS* Globals;
  /* 0x0008 */ struct _RTLP_HP_ALLOC_TRACKER AllocTracker;
  /* 0x0058 */ struct _HEAP_VAMGR_CTX VaMgr;
  /* 0x3898 */ struct _RTLP_HP_METADATA_HEAP_CTX MetadataHeaps[3];
  /* 0x38c8 */ struct _RTL_HP_SUB_ALLOCATOR_CONFIGS SubAllocConfigs;
} RTLP_HP_HEAP_MANAGER, *PRTLP_HP_HEAP_MANAGER; /* size: 0x38d0 */

typedef struct _SEP_LUID_TO_INDEX_MAP_ENTRY
{
  /* 0x0000 */ struct _RTL_DYNAMIC_HASH_TABLE_ENTRY HashEntry;
  /* 0x0018 */ __int64 ReferenceCount;
  /* 0x0020 */ unsigned __int64 Luid;
  /* 0x0028 */ unsigned __int64 IndexIntoGlobalSingletonTable;
  /* 0x0030 */ unsigned char MarkedForDeletion;
  /* 0x0031 */ char __PADDING__[7];
} SEP_LUID_TO_INDEX_MAP_ENTRY, *PSEP_LUID_TO_INDEX_MAP_ENTRY; /* size: 0x0038 */

struct _PCW_INSTANCE;

typedef struct _THERMAL_ZONE_COUNTERS
{
  /* 0x0000 */ unsigned long Temperature;
  /* 0x0004 */ unsigned long ThrottleLimit;
  /* 0x0008 */ unsigned long ThrottleReasons;
  /* 0x000c */ unsigned long TemperatureHighPrecision;
} THERMAL_ZONE_COUNTERS, *PTHERMAL_ZONE_COUNTERS; /* size: 0x0010 */

typedef struct _RTL_HASH_ENTRY
{
  /* 0x0000 */ struct _SINGLE_LIST_ENTRY BucketLink;
  /* 0x0008 */ unsigned __int64 Key;
} RTL_HASH_ENTRY, *PRTL_HASH_ENTRY; /* size: 0x0010 */

typedef struct _ETW_SESSION_PERF_COUNTERS
{
  /* 0x0000 */ long BufferMemoryPagedPool;
  /* 0x0004 */ long BufferMemoryNonPagedPool;
  /* 0x0008 */ unsigned __int64 EventsLoggedCount;
  /* 0x0010 */ long EventsLost;
  /* 0x0014 */ long NumConsumers;
} ETW_SESSION_PERF_COUNTERS, *PETW_SESSION_PERF_COUNTERS; /* size: 0x0018 */

typedef struct _CONTROLLER_OBJECT
{
  /* 0x0000 */ short Type;
  /* 0x0002 */ short Size;
  /* 0x0004 */ long Padding_473;
  /* 0x0008 */ void* ControllerExtension;
  /* 0x0010 */ struct _KDEVICE_QUEUE DeviceWaitQueue;
  /* 0x0038 */ unsigned long Spare1;
  /* 0x003c */ long Padding_474;
  /* 0x0040 */ union _LARGE_INTEGER Spare2;
} CONTROLLER_OBJECT, *PCONTROLLER_OBJECT; /* size: 0x0048 */

typedef struct _FACS
{
  /* 0x0000 */ unsigned long Signature;
  /* 0x0004 */ unsigned long Length;
  /* 0x0008 */ unsigned long HardwareSignature;
  /* 0x000c */ unsigned long pFirmwareWakingVector;
  /* 0x0010 */ unsigned long GlobalLock;
  /* 0x0014 */ unsigned long Flags;
  /* 0x0018 */ union _LARGE_INTEGER x_FirmwareWakingVector;
  /* 0x0020 */ unsigned char version;
  /* 0x0021 */ unsigned char Reserved[31];
} FACS, *PFACS; /* size: 0x0040 */

typedef struct _POP_CURRENT_BROADCAST
{
  /* 0x0000 */ unsigned char InProgress;
  /* 0x0001 */ char Padding_475[3];
  /* 0x0004 */ struct _SYSTEM_POWER_STATE_CONTEXT SystemContext;
  /* 0x0008 */ enum POWER_ACTION PowerAction;
  /* 0x000c */ long Padding_476;
  /* 0x0010 */ struct _POP_DEVICE_SYS_STATE* DeviceState;
} POP_CURRENT_BROADCAST, *PPOP_CURRENT_BROADCAST; /* size: 0x0018 */

typedef struct _SECONDARY_INTERRUPT_PROVIDER_INTERFACE
{
  /* 0x0000 */ unsigned short Size;
  /* 0x0002 */ unsigned short Version;
  /* 0x0004 */ long Padding_477;
  /* 0x0008 */ void* Context;
  /* 0x0010 */ unsigned long GsivBase;
  /* 0x0014 */ unsigned short GsivSize;
  /* 0x0016 */ char Padding_478[2];
  /* 0x0018 */ struct _DRIVER_OBJECT* DriverObject;
  /* 0x0020 */ void* Reserved1;
  /* 0x0028 */ void* Reserved2;
  /* 0x0030 */ void* Reserved3;
  /* 0x0038 */ void* Reserved4;
  /* 0x0040 */ void* Reserved5;
  /* 0x0048 */ void* Reserved6;
  /* 0x0050 */ void* Reserved7;
} SECONDARY_INTERRUPT_PROVIDER_INTERFACE, *PSECONDARY_INTERRUPT_PROVIDER_INTERFACE; /* size: 0x0058 */

typedef struct _SECONDARY_IC_LIST_ENTRY
{
  /* 0x0000 */ struct _LIST_ENTRY ListEntry;
  /* 0x0010 */ unsigned long GsivBase;
  /* 0x0014 */ unsigned long GsivSize;
  /* 0x0018 */ struct _SECONDARY_INTERRUPT_PROVIDER_INTERFACE Interface;
  /* 0x0070 */ volatile long BusyCount;
  /* 0x0074 */ volatile long ExclusiveWaiterCount;
  /* 0x0078 */ struct _KEVENT NotificationEvent;
  /* 0x0090 */ struct _LIST_ENTRY SignalListEntry;
  /* 0x00a0 */ struct _SECONDARY_INTERRUPT_LINE_STATE State[1];
} SECONDARY_IC_LIST_ENTRY, *PSECONDARY_IC_LIST_ENTRY; /* size: 0x00b0 */

typedef struct _WNF_TYPE_ID
{
  /* 0x0000 */ struct _GUID TypeId;
} WNF_TYPE_ID, *PWNF_TYPE_ID; /* size: 0x0010 */

typedef struct _IO_NMISOURCE
{
  /* 0x0000 */ unsigned char Type;
  /* 0x0001 */ unsigned char Length;
  /* 0x0002 */ unsigned short Flags;
  /* 0x0004 */ unsigned long GlobalSystemInterruptVector;
} IO_NMISOURCE, *PIO_NMISOURCE; /* size: 0x0008 */

struct wil_details_FeatureTestState
{
  /* 0x0000 */ enum wil_details_FeatureTestStateKind kind;
  /* 0x0004 */ unsigned int featureId;
  /* 0x0008 */ enum wil_FeatureEnabledState state;
  /* 0x000c */ unsigned char variant;
  /* 0x000d */ char Padding_479[3];
  /* 0x0010 */ unsigned int payload;
  /* 0x0014 */ enum wil_FeatureVariantPayloadKind payloadKind;
  /* 0x0018 */ struct wil_details_FeatureTestState* next;
}; /* size: 0x0020 */

typedef struct _ISA_VECTOR
{
  /* 0x0000 */ unsigned char Type;
  /* 0x0001 */ unsigned char Length;
  /* 0x0002 */ unsigned char Bus;
  /* 0x0003 */ unsigned char Source;
  /* 0x0004 */ unsigned long GlobalSystemInterruptVector;
  /* 0x0008 */ unsigned short Flags;
} ISA_VECTOR, *PISA_VECTOR; /* size: 0x000a */

typedef struct _WHEA_PROCESSOR_GENERIC_ERROR_SECTION
{
  /* 0x0000 */ union _WHEA_PROCESSOR_GENERIC_ERROR_SECTION_VALIDBITS ValidBits;
  /* 0x0008 */ unsigned char ProcessorType;
  /* 0x0009 */ unsigned char InstructionSet;
  /* 0x000a */ unsigned char ErrorType;
  /* 0x000b */ unsigned char Operation;
  /* 0x000c */ unsigned char Flags;
  /* 0x000d */ unsigned char Level;
  /* 0x000e */ unsigned short Reserved;
  /* 0x0010 */ unsigned __int64 CPUVersion;
  /* 0x0018 */ unsigned char CPUBrandString[128];
  /* 0x0098 */ unsigned __int64 ProcessorId;
  /* 0x00a0 */ unsigned __int64 TargetAddress;
  /* 0x00a8 */ unsigned __int64 RequesterId;
  /* 0x00b0 */ unsigned __int64 ResponderId;
  /* 0x00b8 */ unsigned __int64 InstructionPointer;
} WHEA_PROCESSOR_GENERIC_ERROR_SECTION, *PWHEA_PROCESSOR_GENERIC_ERROR_SECTION; /* size: 0x00c0 */

typedef struct _OBJECT_REF_STACK_INFO
{
  /* 0x0000 */ unsigned long Sequence;
  /* 0x0004 */ unsigned short Index;
  /* 0x0006 */ unsigned short NumTraces;
  /* 0x0008 */ unsigned long Tag;
} OBJECT_REF_STACK_INFO, *POBJECT_REF_STACK_INFO; /* size: 0x000c */

typedef struct _OBJECT_REF_INFO
{
  /* 0x0000 */ struct _OBJECT_HEADER* ObjectHeader;
  /* 0x0008 */ void* NextRef;
  /* 0x0010 */ unsigned char ImageFileName[16];
  /* 0x0020 */ unsigned short NextPos;
  /* 0x0022 */ unsigned short MaxStacks;
  union
  {
    /* 0x0024 */ struct _OBJECT_REF_STACK_INFO* StackInfo /* zero-length array */;
    /* 0x0024 */ long __PADDING__[1];
  }; /* size: 0x0004 */
} OBJECT_REF_INFO, *POBJECT_REF_INFO; /* size: 0x0028 */

typedef struct _MAPIC
{
  /* 0x0000 */ struct _DESCRIPTION_HEADER Header;
  /* 0x0024 */ unsigned long LocalAPICAddress;
  /* 0x0028 */ unsigned long Flags;
  /* 0x002c */ unsigned long APICTables[1];
} MAPIC, *PMAPIC; /* size: 0x0030 */

typedef struct _EVENT_FILTER_DESCRIPTOR
{
  /* 0x0000 */ unsigned __int64 Ptr;
  /* 0x0008 */ unsigned long Size;
  /* 0x000c */ unsigned long Type;
} EVENT_FILTER_DESCRIPTOR, *PEVENT_FILTER_DESCRIPTOR; /* size: 0x0010 */

typedef union _HV_PARTITION_PRIVILEGE_MASK
{
  union
  {
    /* 0x0000 */ unsigned __int64 AsUINT64;
    struct /* bitfield */
    {
      /* 0x0000 */ unsigned __int64 AccessVpRunTimeReg : 1; /* bit position: 0 */
      /* 0x0000 */ unsigned __int64 AccessPartitionReferenceCounter : 1; /* bit position: 1 */
      /* 0x0000 */ unsigned __int64 AccessSynicRegs : 1; /* bit position: 2 */
      /* 0x0000 */ unsigned __int64 AccessSyntheticTimerRegs : 1; /* bit position: 3 */
      /* 0x0000 */ unsigned __int64 AccessIntrCtrlRegs : 1; /* bit position: 4 */
      /* 0x0000 */ unsigned __int64 AccessHypercallMsrs : 1; /* bit position: 5 */
      /* 0x0000 */ unsigned __int64 AccessVpIndex : 1; /* bit position: 6 */
      /* 0x0000 */ unsigned __int64 AccessResetReg : 1; /* bit position: 7 */
      /* 0x0000 */ unsigned __int64 AccessStatsReg : 1; /* bit position: 8 */
      /* 0x0000 */ unsigned __int64 AccessPartitionReferenceTsc : 1; /* bit position: 9 */
      /* 0x0000 */ unsigned __int64 AccessGuestIdleReg : 1; /* bit position: 10 */
      /* 0x0000 */ unsigned __int64 AccessFrequencyRegs : 1; /* bit position: 11 */
      /* 0x0000 */ unsigned __int64 AccessDebugRegs : 1; /* bit position: 12 */
      /* 0x0000 */ unsigned __int64 AccessReenlightenmentControls : 1; /* bit position: 13 */
      /* 0x0000 */ unsigned __int64 AccessRootSchedulerReg : 1; /* bit position: 14 */
      /* 0x0000 */ unsigned __int64 AccessTscInvariantControls : 1; /* bit position: 15 */
      /* 0x0000 */ unsigned __int64 Reserved1 : 16; /* bit position: 16 */
      /* 0x0000 */ unsigned __int64 CreatePartitions : 1; /* bit position: 32 */
      /* 0x0000 */ unsigned __int64 AccessPartitionId : 1; /* bit position: 33 */
      /* 0x0000 */ unsigned __int64 AccessMemoryPool : 1; /* bit position: 34 */
      /* 0x0000 */ unsigned __int64 AdjustMessageBuffers : 1; /* bit position: 35 */
      /* 0x0000 */ unsigned __int64 PostMessages : 1; /* bit position: 36 */
      /* 0x0000 */ unsigned __int64 SignalEvents : 1; /* bit position: 37 */
      /* 0x0000 */ unsigned __int64 CreatePort : 1; /* bit position: 38 */
      /* 0x0000 */ unsigned __int64 ConnectPort : 1; /* bit position: 39 */
      /* 0x0000 */ unsigned __int64 AccessStats : 1; /* bit position: 40 */
      /* 0x0000 */ unsigned __int64 Reserved2 : 2; /* bit position: 41 */
      /* 0x0000 */ unsigned __int64 Debugging : 1; /* bit position: 43 */
      /* 0x0000 */ unsigned __int64 CpuManagement : 1; /* bit position: 44 */
      /* 0x0000 */ unsigned __int64 ConfigureProfiler : 1; /* bit position: 45 */
      /* 0x0000 */ unsigned __int64 AccessVpExitTracing : 1; /* bit position: 46 */
      /* 0x0000 */ unsigned __int64 EnableExtendedGvaRangesForFlushVirtualAddressList : 1; /* bit position: 47 */
      /* 0x0000 */ unsigned __int64 AccessVsm : 1; /* bit position: 48 */
      /* 0x0000 */ unsigned __int64 AccessVpRegisters : 1; /* bit position: 49 */
      /* 0x0000 */ unsigned __int64 UnusedBit : 1; /* bit position: 50 */
      /* 0x0000 */ unsigned __int64 FastHypercallOutput : 1; /* bit position: 51 */
      /* 0x0000 */ unsigned __int64 EnableExtendedHypercalls : 1; /* bit position: 52 */
      /* 0x0000 */ unsigned __int64 StartVirtualProcessor : 1; /* bit position: 53 */
      /* 0x0000 */ unsigned __int64 Isolation : 1; /* bit position: 54 */
      /* 0x0000 */ unsigned __int64 Reserved3 : 9; /* bit position: 55 */
    }; /* bitfield */
  }; /* size: 0x0008 */
} HV_PARTITION_PRIVILEGE_MASK, *PHV_PARTITION_PRIVILEGE_MASK; /* size: 0x0008 */

typedef struct _SECURITY_DESCRIPTOR
{
  /* 0x0000 */ unsigned char Revision;
  /* 0x0001 */ unsigned char Sbz1;
  /* 0x0002 */ unsigned short Control;
  /* 0x0004 */ long Padding_480;
  /* 0x0008 */ void* Owner;
  /* 0x0010 */ void* Group;
  /* 0x0018 */ struct _ACL* Sacl;
  /* 0x0020 */ struct _ACL* Dacl;
} SECURITY_DESCRIPTOR, *PSECURITY_DESCRIPTOR; /* size: 0x0028 */

typedef struct _PS_MITIGATION_OPTIONS_MAP
{
  /* 0x0000 */ unsigned __int64 Map[3];
} PS_MITIGATION_OPTIONS_MAP, *PPS_MITIGATION_OPTIONS_MAP; /* size: 0x0018 */

typedef struct _ACCESS_REASONS
{
  /* 0x0000 */ unsigned long Data[32];
} ACCESS_REASONS, *PACCESS_REASONS; /* size: 0x0080 */

typedef struct _AUX_ACCESS_DATA
{
  /* 0x0000 */ struct _PRIVILEGE_SET* PrivilegesUsed;
  /* 0x0008 */ struct _GENERIC_MAPPING GenericMapping;
  /* 0x0018 */ unsigned long AccessesToAudit;
  /* 0x001c */ unsigned long MaximumAuditMask;
  /* 0x0020 */ struct _GUID TransactionId;
  /* 0x0030 */ void* NewSecurityDescriptor;
  /* 0x0038 */ void* ExistingSecurityDescriptor;
  /* 0x0040 */ void* ParentSecurityDescriptor;
  /* 0x0048 */ void* DeRefSecurityDescriptor /* function */;
  /* 0x0050 */ void* SDLock;
  /* 0x0058 */ struct _ACCESS_REASONS AccessReasons;
  /* 0x00d8 */ unsigned char GenerateStagingEvents;
  /* 0x00d9 */ char __PADDING__[7];
} AUX_ACCESS_DATA, *PAUX_ACCESS_DATA; /* size: 0x00e0 */

typedef struct _PS_MITIGATION_AUDIT_OPTIONS_MAP
{
  /* 0x0000 */ unsigned __int64 Map[3];
} PS_MITIGATION_AUDIT_OPTIONS_MAP, *PPS_MITIGATION_AUDIT_OPTIONS_MAP; /* size: 0x0018 */

typedef struct _ACL
{
  /* 0x0000 */ unsigned char AclRevision;
  /* 0x0001 */ unsigned char Sbz1;
  /* 0x0002 */ unsigned short AclSize;
  /* 0x0004 */ unsigned short AceCount;
  /* 0x0006 */ unsigned short Sbz2;
} ACL, *PACL; /* size: 0x0008 */

typedef struct _OBJECT_HANDLE_INFORMATION
{
  /* 0x0000 */ unsigned long HandleAttributes;
  /* 0x0004 */ unsigned long GrantedAccess;
} OBJECT_HANDLE_INFORMATION, *POBJECT_HANDLE_INFORMATION; /* size: 0x0008 */

struct _TP_POOL;

typedef struct _PCW_COUNTER_INFORMATION
{
  /* 0x0000 */ unsigned __int64 CounterMask;
  /* 0x0008 */ const struct _UNICODE_STRING* InstanceMask;
} PCW_COUNTER_INFORMATION, *PPCW_COUNTER_INFORMATION; /* size: 0x0010 */

struct _TP_CLEANUP_GROUP;

struct _TP_CALLBACK_INSTANCE;

typedef struct _TP_CALLBACK_ENVIRON_V3
{
  /* 0x0000 */ unsigned long Version;
  /* 0x0004 */ long Padding_481;
  /* 0x0008 */ struct _TP_POOL* Pool;
  /* 0x0010 */ struct _TP_CLEANUP_GROUP* CleanupGroup;
  /* 0x0018 */ void* CleanupGroupCancelCallback /* function */;
  /* 0x0020 */ void* RaceDll;
  /* 0x0028 */ struct _ACTIVATION_CONTEXT* ActivationContext;
  /* 0x0030 */ void* FinalizationCallback /* function */;
  union
  {
    union
    {
      /* 0x0038 */ unsigned long Flags;
      struct
      {
        struct /* bitfield */
        {
          /* 0x0038 */ unsigned long LongFunction : 1; /* bit position: 0 */
          /* 0x0038 */ unsigned long Persistent : 1; /* bit position: 1 */
          /* 0x0038 */ unsigned long Private : 30; /* bit position: 2 */
        }; /* bitfield */
      } /* size: 0x0004 */ s;
    }; /* size: 0x0004 */
  } /* size: 0x0004 */ u;
  /* 0x003c */ enum _TP_CALLBACK_PRIORITY CallbackPriority;
  /* 0x0040 */ unsigned long Size;
  /* 0x0044 */ long __PADDING__[1];
} TP_CALLBACK_ENVIRON_V3, *PTP_CALLBACK_ENVIRON_V3; /* size: 0x0048 */

typedef struct _DBGKD_READ_WRITE_IO_EXTENDED64
{
  /* 0x0000 */ unsigned long DataSize;
  /* 0x0004 */ unsigned long InterfaceType;
  /* 0x0008 */ unsigned long BusNumber;
  /* 0x000c */ unsigned long AddressSpace;
  /* 0x0010 */ unsigned __int64 IoAddress;
  /* 0x0018 */ unsigned long DataValue;
  /* 0x001c */ long __PADDING__[1];
} DBGKD_READ_WRITE_IO_EXTENDED64, *PDBGKD_READ_WRITE_IO_EXTENDED64; /* size: 0x0020 */

typedef struct _DBGKD_WRITE_BREAKPOINT64
{
  /* 0x0000 */ unsigned __int64 BreakPointAddress;
  /* 0x0008 */ unsigned long BreakPointHandle;
  /* 0x000c */ long __PADDING__[1];
} DBGKD_WRITE_BREAKPOINT64, *PDBGKD_WRITE_BREAKPOINT64; /* size: 0x0010 */

typedef struct _DBGKD_GET_INTERNAL_BREAKPOINT64
{
  /* 0x0000 */ unsigned __int64 BreakpointAddress;
  /* 0x0008 */ unsigned long Flags;
  /* 0x000c */ unsigned long Calls;
  /* 0x0010 */ unsigned long MaxCallsPerPeriod;
  /* 0x0014 */ unsigned long MinInstructions;
  /* 0x0018 */ unsigned long MaxInstructions;
  /* 0x001c */ unsigned long TotalInstructions;
} DBGKD_GET_INTERNAL_BREAKPOINT64, *PDBGKD_GET_INTERNAL_BREAKPOINT64; /* size: 0x0020 */

typedef struct _DBGKD_GET_VERSION64
{
  /* 0x0000 */ unsigned short MajorVersion;
  /* 0x0002 */ unsigned short MinorVersion;
  /* 0x0004 */ unsigned char ProtocolVersion;
  /* 0x0005 */ unsigned char KdSecondaryVersion;
  /* 0x0006 */ unsigned short Flags;
  /* 0x0008 */ unsigned short MachineType;
  /* 0x000a */ unsigned char MaxPacketType;
  /* 0x000b */ unsigned char MaxStateChange;
  /* 0x000c */ unsigned char MaxManipulate;
  /* 0x000d */ unsigned char Simulation;
  /* 0x000e */ unsigned short Unused[1];
  /* 0x0010 */ unsigned __int64 KernBase;
  /* 0x0018 */ unsigned __int64 PsLoadedModuleList;
  /* 0x0020 */ unsigned __int64 DebuggerDataList;
} DBGKD_GET_VERSION64, *PDBGKD_GET_VERSION64; /* size: 0x0028 */

typedef struct _DBGKD_GET_SET_BUS_DATA
{
  /* 0x0000 */ unsigned long BusDataType;
  /* 0x0004 */ unsigned long BusNumber;
  /* 0x0008 */ unsigned long SlotNumber;
  /* 0x000c */ unsigned long Offset;
  /* 0x0010 */ unsigned long Length;
} DBGKD_GET_SET_BUS_DATA, *PDBGKD_GET_SET_BUS_DATA; /* size: 0x0014 */

typedef struct _DBGKD_FILL_MEMORY
{
  /* 0x0000 */ unsigned __int64 Address;
  /* 0x0008 */ unsigned long Length;
  /* 0x000c */ unsigned short Flags;
  /* 0x000e */ unsigned short PatternLength;
} DBGKD_FILL_MEMORY, *PDBGKD_FILL_MEMORY; /* size: 0x0010 */

typedef struct _DBGKD_SWITCH_PARTITION
{
  /* 0x0000 */ unsigned long Partition;
} DBGKD_SWITCH_PARTITION, *PDBGKD_SWITCH_PARTITION; /* size: 0x0004 */

typedef struct _DBGKD_WRITE_CUSTOM_BREAKPOINT
{
  /* 0x0000 */ unsigned __int64 BreakPointAddress;
  /* 0x0008 */ unsigned __int64 BreakPointInstruction;
  /* 0x0010 */ unsigned long BreakPointHandle;
  /* 0x0014 */ unsigned char BreakPointInstructionSize;
  /* 0x0015 */ unsigned char BreakPointInstructionAlignment;
  /* 0x0016 */ char __PADDING__[2];
} DBGKD_WRITE_CUSTOM_BREAKPOINT, *PDBGKD_WRITE_CUSTOM_BREAKPOINT; /* size: 0x0018 */

typedef struct _ACTIVATION_CONTEXT_STACK
{
  /* 0x0000 */ struct _RTL_ACTIVATION_CONTEXT_STACK_FRAME* ActiveFrame;
  /* 0x0008 */ struct _LIST_ENTRY FrameListCache;
  /* 0x0018 */ unsigned long Flags;
  /* 0x001c */ unsigned long NextCookieSequenceNumber;
  /* 0x0020 */ unsigned long StackId;
  /* 0x0024 */ long __PADDING__[1];
} ACTIVATION_CONTEXT_STACK, *PACTIVATION_CONTEXT_STACK; /* size: 0x0028 */

typedef struct _GDI_TEB_BATCH
{
  struct /* bitfield */
  {
    /* 0x0000 */ unsigned long Offset : 31; /* bit position: 0 */
    /* 0x0000 */ unsigned long HasRenderingCommand : 1; /* bit position: 31 */
  }; /* bitfield */
  /* 0x0004 */ long Padding_482;
  /* 0x0008 */ unsigned __int64 HDC;
  /* 0x0010 */ unsigned long Buffer[310];
} GDI_TEB_BATCH, *PGDI_TEB_BATCH; /* size: 0x04e8 */

typedef struct _TEB
{
  /* 0x0000 */ struct _NT_TIB NtTib;
  /* 0x0038 */ void* EnvironmentPointer;
  /* 0x0040 */ struct _CLIENT_ID ClientId;
  /* 0x0050 */ void* ActiveRpcHandle;
  /* 0x0058 */ void* ThreadLocalStoragePointer;
  /* 0x0060 */ struct _PEB* ProcessEnvironmentBlock;
  /* 0x0068 */ unsigned long LastErrorValue;
  /* 0x006c */ unsigned long CountOfOwnedCriticalSections;
  /* 0x0070 */ void* CsrClientThread;
  /* 0x0078 */ void* Win32ThreadInfo;
  /* 0x0080 */ unsigned long User32Reserved[26];
  /* 0x00e8 */ unsigned long UserReserved[5];
  /* 0x00fc */ long Padding_483;
  /* 0x0100 */ void* WOW32Reserved;
  /* 0x0108 */ unsigned long CurrentLocale;
  /* 0x010c */ unsigned long FpSoftwareStatusRegister;
  /* 0x0110 */ void* ReservedForDebuggerInstrumentation[16];
  /* 0x0190 */ void* SystemReserved1[30];
  /* 0x0280 */ char PlaceholderCompatibilityMode;
  /* 0x0281 */ unsigned char PlaceholderHydrationAlwaysExplicit;
  /* 0x0282 */ char PlaceholderReserved[10];
  /* 0x028c */ unsigned long ProxiedProcessId;
  /* 0x0290 */ struct _ACTIVATION_CONTEXT_STACK _ActivationStack;
  /* 0x02b8 */ unsigned char WorkingOnBehalfTicket[8];
  /* 0x02c0 */ long ExceptionCode;
  /* 0x02c4 */ unsigned char Padding0[4];
  /* 0x02c8 */ struct _ACTIVATION_CONTEXT_STACK* ActivationContextStackPointer;
  /* 0x02d0 */ unsigned __int64 InstrumentationCallbackSp;
  /* 0x02d8 */ unsigned __int64 InstrumentationCallbackPreviousPc;
  /* 0x02e0 */ unsigned __int64 InstrumentationCallbackPreviousSp;
  /* 0x02e8 */ unsigned long TxFsContext;
  /* 0x02ec */ unsigned char InstrumentationCallbackDisabled;
  /* 0x02ed */ unsigned char UnalignedLoadStoreExceptions;
  /* 0x02ee */ unsigned char Padding1[2];
  /* 0x02f0 */ struct _GDI_TEB_BATCH GdiTebBatch;
  /* 0x07d8 */ struct _CLIENT_ID RealClientId;
  /* 0x07e8 */ void* GdiCachedProcessHandle;
  /* 0x07f0 */ unsigned long GdiClientPID;
  /* 0x07f4 */ unsigned long GdiClientTID;
  /* 0x07f8 */ void* GdiThreadLocalInfo;
  /* 0x0800 */ unsigned __int64 Win32ClientInfo[62];
  /* 0x09f0 */ void* glDispatchTable[233];
  /* 0x1138 */ unsigned __int64 glReserved1[29];
  /* 0x1220 */ void* glReserved2;
  /* 0x1228 */ void* glSectionInfo;
  /* 0x1230 */ void* glSection;
  /* 0x1238 */ void* glTable;
  /* 0x1240 */ void* glCurrentRC;
  /* 0x1248 */ void* glContext;
  /* 0x1250 */ unsigned long LastStatusValue;
  /* 0x1254 */ unsigned char Padding2[4];
  /* 0x1258 */ struct _UNICODE_STRING StaticUnicodeString;
  /* 0x1268 */ wchar_t StaticUnicodeBuffer[261];
  /* 0x1472 */ unsigned char Padding3[6];
  /* 0x1478 */ void* DeallocationStack;
  /* 0x1480 */ void* TlsSlots[64];
  /* 0x1680 */ struct _LIST_ENTRY TlsLinks;
  /* 0x1690 */ void* Vdm;
  /* 0x1698 */ void* ReservedForNtRpc;
  /* 0x16a0 */ void* DbgSsReserved[2];
  /* 0x16b0 */ unsigned long HardErrorMode;
  /* 0x16b4 */ unsigned char Padding4[4];
  /* 0x16b8 */ void* Instrumentation[11];
  /* 0x1710 */ struct _GUID ActivityId;
  /* 0x1720 */ void* SubProcessTag;
  /* 0x1728 */ void* PerflibData;
  /* 0x1730 */ void* EtwTraceData;
  /* 0x1738 */ void* WinSockData;
  /* 0x1740 */ unsigned long GdiBatchCount;
  union
  {
    /* 0x1744 */ struct _PROCESSOR_NUMBER CurrentIdealProcessor;
    /* 0x1744 */ unsigned long IdealProcessorValue;
    struct
    {
      /* 0x1744 */ unsigned char ReservedPad0;
      /* 0x1745 */ unsigned char ReservedPad1;
      /* 0x1746 */ unsigned char ReservedPad2;
      /* 0x1747 */ unsigned char IdealProcessor;
    }; /* size: 0x0004 */
  }; /* size: 0x0004 */
  /* 0x1748 */ unsigned long GuaranteedStackBytes;
  /* 0x174c */ unsigned char Padding5[4];
  /* 0x1750 */ void* ReservedForPerf;
  /* 0x1758 */ void* ReservedForOle;
  /* 0x1760 */ unsigned long WaitingOnLoaderLock;
  /* 0x1764 */ unsigned char Padding6[4];
  /* 0x1768 */ void* SavedPriorityState;
  /* 0x1770 */ unsigned __int64 ReservedForCodeCoverage;
  /* 0x1778 */ void* ThreadPoolData;
  /* 0x1780 */ void** TlsExpansionSlots;
  /* 0x1788 */ void* DeallocationBStore;
  /* 0x1790 */ void* BStoreLimit;
  /* 0x1798 */ unsigned long MuiGeneration;
  /* 0x179c */ unsigned long IsImpersonating;
  /* 0x17a0 */ void* NlsCache;
  /* 0x17a8 */ void* pShimData;
  /* 0x17b0 */ unsigned long HeapData;
  /* 0x17b4 */ unsigned char Padding7[4];
  /* 0x17b8 */ void* CurrentTransactionHandle;
  /* 0x17c0 */ struct _TEB_ACTIVE_FRAME* ActiveFrame;
  /* 0x17c8 */ void* FlsData;
  /* 0x17d0 */ void* PreferredLanguages;
  /* 0x17d8 */ void* UserPrefLanguages;
  /* 0x17e0 */ void* MergedPrefLanguages;
  /* 0x17e8 */ unsigned long MuiImpersonation;
  union
  {
    /* 0x17ec */ volatile unsigned short CrossTebFlags;
    /* 0x17ec */ unsigned short SpareCrossTebBits : 16; /* bit position: 0 */
  }; /* size: 0x0002 */
  union
  {
    /* 0x17ee */ unsigned short SameTebFlags;
    struct /* bitfield */
    {
      /* 0x17ee */ unsigned short SafeThunkCall : 1; /* bit position: 0 */
      /* 0x17ee */ unsigned short InDebugPrint : 1; /* bit position: 1 */
      /* 0x17ee */ unsigned short HasFiberData : 1; /* bit position: 2 */
      /* 0x17ee */ unsigned short SkipThreadAttach : 1; /* bit position: 3 */
      /* 0x17ee */ unsigned short WerInShipAssertCode : 1; /* bit position: 4 */
      /* 0x17ee */ unsigned short RanProcessInit : 1; /* bit position: 5 */
      /* 0x17ee */ unsigned short ClonedThread : 1; /* bit position: 6 */
      /* 0x17ee */ unsigned short SuppressDebugMsg : 1; /* bit position: 7 */
      /* 0x17ee */ unsigned short DisableUserStackWalk : 1; /* bit position: 8 */
      /* 0x17ee */ unsigned short RtlExceptionAttached : 1; /* bit position: 9 */
      /* 0x17ee */ unsigned short InitialThread : 1; /* bit position: 10 */
      /* 0x17ee */ unsigned short SessionAware : 1; /* bit position: 11 */
      /* 0x17ee */ unsigned short LoadOwner : 1; /* bit position: 12 */
      /* 0x17ee */ unsigned short LoaderWorker : 1; /* bit position: 13 */
      /* 0x17ee */ unsigned short SkipLoaderInit : 1; /* bit position: 14 */
      /* 0x17ee */ unsigned short SpareSameTebBits : 1; /* bit position: 15 */
    }; /* bitfield */
  }; /* size: 0x0002 */
  /* 0x17f0 */ void* TxnScopeEnterCallback;
  /* 0x17f8 */ void* TxnScopeExitCallback;
  /* 0x1800 */ void* TxnScopeContext;
  /* 0x1808 */ unsigned long LockCount;
  /* 0x180c */ long WowTebOffset;
  /* 0x1810 */ void* ResourceRetValue;
  /* 0x1818 */ void* ReservedForWdf;
  /* 0x1820 */ unsigned __int64 ReservedForCrt;
  /* 0x1828 */ struct _GUID EffectiveContainerId;
} TEB, *PTEB; /* size: 0x1838 */

typedef struct _RTL_ACTIVATION_CONTEXT_STACK_FRAME
{
  /* 0x0000 */ struct _RTL_ACTIVATION_CONTEXT_STACK_FRAME* Previous;
  /* 0x0008 */ struct _ACTIVATION_CONTEXT* ActivationContext;
  /* 0x0010 */ unsigned long Flags;
  /* 0x0014 */ long __PADDING__[1];
} RTL_ACTIVATION_CONTEXT_STACK_FRAME, *PRTL_ACTIVATION_CONTEXT_STACK_FRAME; /* size: 0x0018 */

typedef struct _TEB_ACTIVE_FRAME
{
  /* 0x0000 */ unsigned long Flags;
  /* 0x0004 */ long Padding_484;
  /* 0x0008 */ struct _TEB_ACTIVE_FRAME* Previous;
  /* 0x0010 */ const struct _TEB_ACTIVE_FRAME_CONTEXT* Context;
} TEB_ACTIVE_FRAME, *PTEB_ACTIVE_FRAME; /* size: 0x0018 */

typedef struct _DBGKD_MANIPULATE_STATE64
{
  /* 0x0000 */ unsigned long ApiNumber;
  /* 0x0004 */ unsigned short ProcessorLevel;
  /* 0x0006 */ unsigned short Processor;
  /* 0x0008 */ long ReturnStatus;
  /* 0x000c */ long Padding_485;
  union
  {
    union
    {
      /* 0x0010 */ struct _DBGKD_READ_MEMORY64 ReadMemory;
      /* 0x0010 */ struct _DBGKD_WRITE_MEMORY64 WriteMemory;
      /* 0x0010 */ struct _DBGKD_GET_CONTEXT GetContext;
      /* 0x0010 */ struct _DBGKD_SET_CONTEXT SetContext;
      /* 0x0010 */ struct _DBGKD_WRITE_BREAKPOINT64 WriteBreakPoint;
      /* 0x0010 */ struct _DBGKD_RESTORE_BREAKPOINT RestoreBreakPoint;
      /* 0x0010 */ struct _DBGKD_CONTINUE Continue;
      /* 0x0010 */ struct _DBGKD_CONTINUE2 Continue2;
      /* 0x0010 */ struct _DBGKD_READ_WRITE_IO64 ReadWriteIo;
      /* 0x0010 */ struct _DBGKD_READ_WRITE_IO_EXTENDED64 ReadWriteIoExtended;
      /* 0x0010 */ struct _DBGKD_QUERY_SPECIAL_CALLS QuerySpecialCalls;
      /* 0x0010 */ struct _DBGKD_SET_SPECIAL_CALL64 SetSpecialCall;
      /* 0x0010 */ struct _DBGKD_SET_INTERNAL_BREAKPOINT64 SetInternalBreakpoint;
      /* 0x0010 */ struct _DBGKD_GET_INTERNAL_BREAKPOINT64 GetInternalBreakpoint;
      /* 0x0010 */ struct _DBGKD_GET_VERSION64 GetVersion64;
      /* 0x0010 */ struct _DBGKD_BREAKPOINTEX BreakPointEx;
      /* 0x0010 */ struct _DBGKD_READ_WRITE_MSR ReadWriteMsr;
      /* 0x0010 */ struct _DBGKD_SEARCH_MEMORY SearchMemory;
      /* 0x0010 */ struct _DBGKD_GET_SET_BUS_DATA GetSetBusData;
      /* 0x0010 */ struct _DBGKD_FILL_MEMORY FillMemory;
      /* 0x0010 */ struct _DBGKD_QUERY_MEMORY QueryMemory;
      /* 0x0010 */ struct _DBGKD_SWITCH_PARTITION SwitchPartition;
      /* 0x0010 */ struct _DBGKD_CONTEXT_EX GetContextEx;
      /* 0x0010 */ struct _DBGKD_CONTEXT_EX SetContextEx;
      /* 0x0010 */ struct _DBGKD_WRITE_CUSTOM_BREAKPOINT WriteCustomBreakPoint;
    }; /* size: 0x0028 */
  } /* size: 0x0028 */ u;
} DBGKD_MANIPULATE_STATE64, *PDBGKD_MANIPULATE_STATE64; /* size: 0x0038 */

typedef struct _TEB_ACTIVE_FRAME_CONTEXT
{
  /* 0x0000 */ unsigned long Flags;
  /* 0x0004 */ long Padding_486;
  /* 0x0008 */ const char* FrameName;
} TEB_ACTIVE_FRAME_CONTEXT, *PTEB_ACTIVE_FRAME_CONTEXT; /* size: 0x0010 */

typedef struct _EX_HEAP_SESSION_STATE
{
  /* 0x0000 */ struct _RTLP_HP_HEAP_MANAGER HeapManager;
  /* 0x38d0 */ struct RTL_HP_ENV_HANDLE PagedEnv;
  /* 0x38e0 */ struct _SEGMENT_HEAP* PagedHeap;
  /* 0x38e8 */ struct _SEGMENT_HEAP* SpecialPoolHeap;
} EX_HEAP_SESSION_STATE, *PEX_HEAP_SESSION_STATE; /* size: 0x38f0 */

typedef struct _IMAGE_FILE_HEADER
{
  /* 0x0000 */ unsigned short Machine;
  /* 0x0002 */ unsigned short NumberOfSections;
  /* 0x0004 */ unsigned long TimeDateStamp;
  /* 0x0008 */ unsigned long PointerToSymbolTable;
  /* 0x000c */ unsigned long NumberOfSymbols;
  /* 0x0010 */ unsigned short SizeOfOptionalHeader;
  /* 0x0012 */ unsigned short Characteristics;
} IMAGE_FILE_HEADER, *PIMAGE_FILE_HEADER; /* size: 0x0014 */

typedef struct _IMAGE_OPTIONAL_HEADER64
{
  /* 0x0000 */ unsigned short Magic;
  /* 0x0002 */ unsigned char MajorLinkerVersion;
  /* 0x0003 */ unsigned char MinorLinkerVersion;
  /* 0x0004 */ unsigned long SizeOfCode;
  /* 0x0008 */ unsigned long SizeOfInitializedData;
  /* 0x000c */ unsigned long SizeOfUninitializedData;
  /* 0x0010 */ unsigned long AddressOfEntryPoint;
  /* 0x0014 */ unsigned long BaseOfCode;
  /* 0x0018 */ unsigned __int64 ImageBase;
  /* 0x0020 */ unsigned long SectionAlignment;
  /* 0x0024 */ unsigned long FileAlignment;
  /* 0x0028 */ unsigned short MajorOperatingSystemVersion;
  /* 0x002a */ unsigned short MinorOperatingSystemVersion;
  /* 0x002c */ unsigned short MajorImageVersion;
  /* 0x002e */ unsigned short MinorImageVersion;
  /* 0x0030 */ unsigned short MajorSubsystemVersion;
  /* 0x0032 */ unsigned short MinorSubsystemVersion;
  /* 0x0034 */ unsigned long Win32VersionValue;
  /* 0x0038 */ unsigned long SizeOfImage;
  /* 0x003c */ unsigned long SizeOfHeaders;
  /* 0x0040 */ unsigned long CheckSum;
  /* 0x0044 */ unsigned short Subsystem;
  /* 0x0046 */ unsigned short DllCharacteristics;
  /* 0x0048 */ unsigned __int64 SizeOfStackReserve;
  /* 0x0050 */ unsigned __int64 SizeOfStackCommit;
  /* 0x0058 */ unsigned __int64 SizeOfHeapReserve;
  /* 0x0060 */ unsigned __int64 SizeOfHeapCommit;
  /* 0x0068 */ unsigned long LoaderFlags;
  /* 0x006c */ unsigned long NumberOfRvaAndSizes;
  /* 0x0070 */ struct _IMAGE_DATA_DIRECTORY DataDirectory[16];
} IMAGE_OPTIONAL_HEADER64, *PIMAGE_OPTIONAL_HEADER64; /* size: 0x00f0 */

typedef struct _IMAGE_NT_HEADERS64
{
  /* 0x0000 */ unsigned long Signature;
  /* 0x0004 */ struct _IMAGE_FILE_HEADER FileHeader;
  /* 0x0018 */ struct _IMAGE_OPTIONAL_HEADER64 OptionalHeader;
} IMAGE_NT_HEADERS64, *PIMAGE_NT_HEADERS64; /* size: 0x0108 */

typedef struct _MMCLONE_HEADER
{
  /* 0x0000 */ unsigned __int64 NumberOfPtes;
  /* 0x0008 */ volatile unsigned __int64 NumberOfProcessReferences;
  /* 0x0010 */ struct _MMCLONE_BLOCK* ClonePtes;
  /* 0x0018 */ struct _MI_PARTITION* Partition;
} MMCLONE_HEADER, *PMMCLONE_HEADER; /* size: 0x0020 */

typedef struct _IMAGE_DOS_HEADER
{
  /* 0x0000 */ unsigned short e_magic;
  /* 0x0002 */ unsigned short e_cblp;
  /* 0x0004 */ unsigned short e_cp;
  /* 0x0006 */ unsigned short e_crlc;
  /* 0x0008 */ unsigned short e_cparhdr;
  /* 0x000a */ unsigned short e_minalloc;
  /* 0x000c */ unsigned short e_maxalloc;
  /* 0x000e */ unsigned short e_ss;
  /* 0x0010 */ unsigned short e_sp;
  /* 0x0012 */ unsigned short e_csum;
  /* 0x0014 */ unsigned short e_ip;
  /* 0x0016 */ unsigned short e_cs;
  /* 0x0018 */ unsigned short e_lfarlc;
  /* 0x001a */ unsigned short e_ovno;
  /* 0x001c */ unsigned short e_res[4];
  /* 0x0024 */ unsigned short e_oemid;
  /* 0x0026 */ unsigned short e_oeminfo;
  /* 0x0028 */ unsigned short e_res2[10];
  /* 0x003c */ long e_lfanew;
} IMAGE_DOS_HEADER, *PIMAGE_DOS_HEADER; /* size: 0x0040 */

typedef struct _PEP_ACPI_IO_MEMORY_RESOURCE
{
  /* 0x0000 */ enum _PEP_ACPI_RESOURCE_TYPE Type;
  /* 0x0004 */ unsigned char Information;
  /* 0x0005 */ char Padding_487[3];
  /* 0x0008 */ union _LARGE_INTEGER MinimumAddress;
  /* 0x0010 */ union _LARGE_INTEGER MaximumAddress;
  /* 0x0018 */ unsigned long Alignment;
  /* 0x001c */ unsigned long Length;
} PEP_ACPI_IO_MEMORY_RESOURCE, *PPEP_ACPI_IO_MEMORY_RESOURCE; /* size: 0x0020 */

typedef struct _PEP_ACPI_INTERRUPT_RESOURCE
{
  /* 0x0000 */ enum _PEP_ACPI_RESOURCE_TYPE Type;
  /* 0x0004 */ enum _KINTERRUPT_MODE InterruptType;
  /* 0x0008 */ enum _KINTERRUPT_POLARITY InterruptPolarity;
  /* 0x000c */ union _PEP_ACPI_RESOURCE_FLAGS Flags;
  /* 0x0010 */ unsigned char Count;
  /* 0x0011 */ char Padding_488[7];
  /* 0x0018 */ unsigned long* Pins;
} PEP_ACPI_INTERRUPT_RESOURCE, *PPEP_ACPI_INTERRUPT_RESOURCE; /* size: 0x0020 */

typedef struct _PEP_ACPI_GPIO_RESOURCE
{
  /* 0x0000 */ enum _PEP_ACPI_RESOURCE_TYPE Type;
  /* 0x0004 */ union _PEP_ACPI_RESOURCE_FLAGS Flags;
  /* 0x0008 */ enum _KINTERRUPT_MODE InterruptType;
  /* 0x000c */ enum _KINTERRUPT_POLARITY InterruptPolarity;
  /* 0x0010 */ enum _GPIO_PIN_CONFIG_TYPE PinConfig;
  /* 0x0014 */ enum _GPIO_PIN_IORESTRICTION_TYPE IoRestrictionType;
  /* 0x0018 */ unsigned short DriveStrength;
  /* 0x001a */ unsigned short DebounceTimeout;
  /* 0x001c */ long Padding_489;
  /* 0x0020 */ wchar_t* PinTable;
  /* 0x0028 */ unsigned short PinCount;
  /* 0x002a */ unsigned char ResourceSourceIndex;
  /* 0x002b */ char Padding_490[5];
  /* 0x0030 */ struct _UNICODE_STRING* ResourceSourceName;
  /* 0x0038 */ unsigned char* VendorData;
  /* 0x0040 */ unsigned short VendorDataLength;
  /* 0x0042 */ char __PADDING__[6];
} PEP_ACPI_GPIO_RESOURCE, *PPEP_ACPI_GPIO_RESOURCE; /* size: 0x0048 */

typedef struct _PEP_ACPI_SPB_I2C_RESOURCE
{
  /* 0x0000 */ struct _PEP_ACPI_SPB_RESOURCE SpbCommon;
  /* 0x0028 */ unsigned long ConnectionSpeed;
  /* 0x002c */ unsigned short SlaveAddress;
  /* 0x002e */ char __PADDING__[2];
} PEP_ACPI_SPB_I2C_RESOURCE, *PPEP_ACPI_SPB_I2C_RESOURCE; /* size: 0x0030 */

typedef struct _PEP_ACPI_SPB_SPI_RESOURCE
{
  /* 0x0000 */ struct _PEP_ACPI_SPB_RESOURCE SpbCommon;
  /* 0x0028 */ unsigned long ConnectionSpeed;
  /* 0x002c */ unsigned char DataBitLength;
  /* 0x002d */ unsigned char Phase;
  /* 0x002e */ unsigned char Polarity;
  /* 0x002f */ char Padding_491;
  /* 0x0030 */ unsigned short DeviceSelection;
  /* 0x0032 */ char __PADDING__[6];
} PEP_ACPI_SPB_SPI_RESOURCE, *PPEP_ACPI_SPB_SPI_RESOURCE; /* size: 0x0038 */

typedef union _PEP_ACPI_RESOURCE
{
  union
  {
    /* 0x0000 */ enum _PEP_ACPI_RESOURCE_TYPE Type;
    /* 0x0000 */ struct _PEP_ACPI_IO_MEMORY_RESOURCE IoMemory;
    /* 0x0000 */ struct _PEP_ACPI_INTERRUPT_RESOURCE Interrupt;
    /* 0x0000 */ struct _PEP_ACPI_GPIO_RESOURCE Gpio;
    /* 0x0000 */ struct _PEP_ACPI_SPB_I2C_RESOURCE SpbI2c;
    /* 0x0000 */ struct _PEP_ACPI_SPB_SPI_RESOURCE SpbSpi;
    /* 0x0000 */ struct _PEP_ACPI_SPB_UART_RESOURCE SpbUart;
    /* 0x0000 */ struct _PEP_ACPI_EXTENDED_ADDRESS ExtendedAddress;
  }; /* size: 0x0048 */
} PEP_ACPI_RESOURCE, *PPEP_ACPI_RESOURCE; /* size: 0x0048 */

struct POWER_ACTION_POLICY
{
  /* 0x0000 */ enum POWER_ACTION Action;
  /* 0x0004 */ unsigned long Flags;
  /* 0x0008 */ unsigned long EventCode;
}; /* size: 0x000c */

typedef struct _MI_FREE_LARGE_PAGES
{
  /* 0x0000 */ unsigned __int64 LargePageFreeCount[2];
  /* 0x0010 */ unsigned __int64 LargePageFreeCountHiLow[2][2];
  /* 0x0030 */ unsigned __int64 LargePagesCount[4][4][2][2];
  /* 0x0230 */ struct _MI_FREE_LARGE_PAGE_LIST* LargePageEntries[4][4][2][2];
} MI_FREE_LARGE_PAGES, *PMI_FREE_LARGE_PAGES; /* size: 0x0430 */

typedef struct _SINGLE_LIST_ENTRY32
{
  /* 0x0000 */ unsigned long Next;
} SINGLE_LIST_ENTRY32, *PSINGLE_LIST_ENTRY32; /* size: 0x0004 */

typedef struct _DEVICE_DSM_DEFINITION
{
  /* 0x0000 */ unsigned long Action;
  /* 0x0004 */ unsigned char SingleRange;
  /* 0x0005 */ char Padding_492[3];
  /* 0x0008 */ unsigned long ParameterBlockAlignment;
  /* 0x000c */ unsigned long ParameterBlockLength;
  /* 0x0010 */ unsigned char HasOutput;
  /* 0x0011 */ char Padding_493[3];
  /* 0x0014 */ unsigned long OutputBlockAlignment;
  /* 0x0018 */ unsigned long OutputBlockLength;
} DEVICE_DSM_DEFINITION, *PDEVICE_DSM_DEFINITION; /* size: 0x001c */

typedef struct _PS_TRUSTLET_ATTRIBUTE_TYPE
{
  union
  {
    struct
    {
      /* 0x0000 */ unsigned char Version;
      /* 0x0001 */ unsigned char DataCount;
      /* 0x0002 */ unsigned char SemanticType;
      /* 0x0003 */ union _PS_TRUSTLET_ATTRIBUTE_ACCESSRIGHTS AccessRights;
    }; /* size: 0x0004 */
    /* 0x0000 */ unsigned long AttributeType;
  }; /* size: 0x0004 */
} PS_TRUSTLET_ATTRIBUTE_TYPE, *PPS_TRUSTLET_ATTRIBUTE_TYPE; /* size: 0x0004 */

typedef struct _PS_TRUSTLET_ATTRIBUTE_HEADER
{
  /* 0x0000 */ struct _PS_TRUSTLET_ATTRIBUTE_TYPE AttributeType;
  struct /* bitfield */
  {
    /* 0x0004 */ unsigned long InstanceNumber : 8; /* bit position: 0 */
    /* 0x0004 */ unsigned long Reserved : 24; /* bit position: 8 */
  }; /* bitfield */
} PS_TRUSTLET_ATTRIBUTE_HEADER, *PPS_TRUSTLET_ATTRIBUTE_HEADER; /* size: 0x0008 */

typedef struct _PS_TRUSTLET_ATTRIBUTE_DATA
{
  /* 0x0000 */ struct _PS_TRUSTLET_ATTRIBUTE_HEADER Header;
  /* 0x0008 */ unsigned __int64 Data[1];
} PS_TRUSTLET_ATTRIBUTE_DATA, *PPS_TRUSTLET_ATTRIBUTE_DATA; /* size: 0x0010 */

typedef struct _PS_TRUSTLET_CREATE_ATTRIBUTES
{
  /* 0x0000 */ unsigned __int64 TrustletIdentity;
  /* 0x0008 */ struct _PS_TRUSTLET_ATTRIBUTE_DATA Attributes[1];
} PS_TRUSTLET_CREATE_ATTRIBUTES, *PPS_TRUSTLET_CREATE_ATTRIBUTES; /* size: 0x0018 */

typedef struct _EXCEPTION_RECORD64
{
  /* 0x0000 */ long ExceptionCode;
  /* 0x0004 */ unsigned long ExceptionFlags;
  /* 0x0008 */ unsigned __int64 ExceptionRecord;
  /* 0x0010 */ unsigned __int64 ExceptionAddress;
  /* 0x0018 */ unsigned long NumberParameters;
  /* 0x001c */ unsigned long __unusedAlignment;
  /* 0x0020 */ unsigned __int64 ExceptionInformation[15];
} EXCEPTION_RECORD64, *PEXCEPTION_RECORD64; /* size: 0x0098 */

typedef struct _DBGKM_EXCEPTION64
{
  /* 0x0000 */ struct _EXCEPTION_RECORD64 ExceptionRecord;
  /* 0x0098 */ unsigned long FirstChance;
  /* 0x009c */ long __PADDING__[1];
} DBGKM_EXCEPTION64, *PDBGKM_EXCEPTION64; /* size: 0x00a0 */

union wil_details_FeatureStateCache
{
  union
  {
    /* 0x0000 */ unsigned int exchange;
    struct
    {
      struct /* bitfield */
      {
        /* 0x0000 */ unsigned int stateCached : 1; /* bit position: 0 */
        /* 0x0000 */ unsigned int hasNotificationCached : 1; /* bit position: 1 */
        /* 0x0000 */ unsigned int variantCached : 1; /* bit position: 2 */
        /* 0x0000 */ unsigned int effectiveState : 1; /* bit position: 3 */
        /* 0x0000 */ unsigned int desiredState : 1; /* bit position: 4 */
        /* 0x0000 */ unsigned int configuredState : 2; /* bit position: 5 */
        /* 0x0000 */ unsigned int needsRefresh : 1; /* bit position: 7 */
        /* 0x0000 */ unsigned int hasNotification : 1; /* bit position: 8 */
        /* 0x0000 */ unsigned int isVariant : 1; /* bit position: 9 */
        /* 0x0000 */ unsigned int variant : 6; /* bit position: 10 */
        /* 0x0000 */ unsigned int unused : 16; /* bit position: 16 */
      }; /* bitfield */
      /* 0x0004 */ unsigned int payloadId;
    }; /* size: 0x0008 */
    /* 0x0000 */ unsigned __int64 exchange64;
  }; /* size: 0x0008 */
}; /* size: 0x0008 */

typedef struct _OBJECT_REF_TRACE
{
  /* 0x0000 */ void* StackTrace[16];
} OBJECT_REF_TRACE, *POBJECT_REF_TRACE; /* size: 0x0080 */

struct wil_details_RecordUsageResult
{
  /* 0x0000 */ int queueBackground;
  /* 0x0004 */ unsigned int countImmediate;
  /* 0x0008 */ enum wil_details_ServiceReportingKind kindImmediate;
  /* 0x000c */ unsigned int payloadId;
  /* 0x0010 */ int ignoredUse;
  /* 0x0014 */ int isVariantConfiguration;
}; /* size: 0x0018 */

typedef struct _KERNEL_STACK_SEGMENT
{
  /* 0x0000 */ unsigned __int64 StackBase;
  /* 0x0008 */ unsigned __int64 StackLimit;
  /* 0x0010 */ unsigned __int64 KernelStack;
  /* 0x0018 */ unsigned __int64 InitialStack;
} KERNEL_STACK_SEGMENT, *PKERNEL_STACK_SEGMENT; /* size: 0x0020 */

typedef struct _KSTACK_CONTROL
{
  /* 0x0000 */ unsigned __int64 StackBase;
  union
  {
    /* 0x0008 */ unsigned __int64 ActualLimit;
    /* 0x0008 */ unsigned __int64 StackExpansion : 1; /* bit position: 0 */
  }; /* size: 0x0008 */
  /* 0x0010 */ struct _KERNEL_STACK_SEGMENT Previous;
} KSTACK_CONTROL, *PKSTACK_CONTROL; /* size: 0x0030 */

typedef struct _IO_PRIORITY_INFO
{
  /* 0x0000 */ unsigned long Size;
  /* 0x0004 */ unsigned long ThreadPriority;
  /* 0x0008 */ unsigned long PagePriority;
  /* 0x000c */ enum _IO_PRIORITY_HINT IoPriority;
} IO_PRIORITY_INFO, *PIO_PRIORITY_INFO; /* size: 0x0010 */

typedef struct _EVENT_HEADER
{
  /* 0x0000 */ unsigned short Size;
  /* 0x0002 */ unsigned short HeaderType;
  /* 0x0004 */ unsigned short Flags;
  /* 0x0006 */ unsigned short EventProperty;
  /* 0x0008 */ unsigned long ThreadId;
  /* 0x000c */ unsigned long ProcessId;
  /* 0x0010 */ union _LARGE_INTEGER TimeStamp;
  /* 0x0018 */ struct _GUID ProviderId;
  /* 0x0028 */ struct _EVENT_DESCRIPTOR EventDescriptor;
  union
  {
    struct
    {
      /* 0x0038 */ unsigned long KernelTime;
      /* 0x003c */ unsigned long UserTime;
    }; /* size: 0x0008 */
    /* 0x0038 */ unsigned __int64 ProcessorTime;
  }; /* size: 0x0008 */
  /* 0x0040 */ struct _GUID ActivityId;
} EVENT_HEADER, *PEVENT_HEADER; /* size: 0x0050 */

typedef struct _EVENT_RECORD
{
  /* 0x0000 */ struct _EVENT_HEADER EventHeader;
  /* 0x0050 */ struct _ETW_BUFFER_CONTEXT BufferContext;
  /* 0x0054 */ unsigned short ExtendedDataCount;
  /* 0x0056 */ unsigned short UserDataLength;
  /* 0x0058 */ struct _EVENT_HEADER_EXTENDED_DATA_ITEM* ExtendedData;
  /* 0x0060 */ void* UserData;
  /* 0x0068 */ void* UserContext;
} EVENT_RECORD, *PEVENT_RECORD; /* size: 0x0070 */

typedef struct _MM_PAGE_ACCESS_INFO_HEADER
{
  /* 0x0000 */ struct _SINGLE_LIST_ENTRY Link;
  /* 0x0008 */ enum _MM_PAGE_ACCESS_TYPE Type;
  union
  {
    /* 0x000c */ unsigned long EmptySequenceNumber;
    /* 0x000c */ unsigned long CurrentFileIndex;
  }; /* size: 0x0004 */
  /* 0x0010 */ unsigned __int64 CreateTime;
  union
  {
    /* 0x0018 */ unsigned __int64 EmptyTime;
    /* 0x0018 */ struct _MM_PAGE_ACCESS_INFO* TempEntry;
  }; /* size: 0x0008 */
  union
  {
    struct
    {
      /* 0x0020 */ struct _MM_PAGE_ACCESS_INFO* PageEntry;
      /* 0x0028 */ unsigned __int64* FileEntry;
      /* 0x0030 */ unsigned __int64* FirstFileEntry;
      /* 0x0038 */ struct _EPROCESS* Process;
      /* 0x0040 */ unsigned long SessionId;
    }; /* size: 0x0024 */
    struct
    {
      /* 0x0020 */ unsigned __int64* PageFrameEntry;
      /* 0x0028 */ unsigned __int64* LastPageFrameEntry;
      /* 0x0030 */ long __PADDING__[6];
    }; /* size: 0x0028 */
  }; /* size: 0x0028 */
} MM_PAGE_ACCESS_INFO_HEADER, *PMM_PAGE_ACCESS_INFO_HEADER; /* size: 0x0048 */

typedef struct _MM_PAGE_ACCESS_INFO
{
  union
  {
    /* 0x0000 */ union _MM_PAGE_ACCESS_INFO_FLAGS Flags;
    /* 0x0000 */ unsigned __int64 FileOffset;
    /* 0x0000 */ void* VirtualAddress;
    /* 0x0000 */ void* PointerProtoPte;
  }; /* size: 0x0008 */
} MM_PAGE_ACCESS_INFO, *PMM_PAGE_ACCESS_INFO; /* size: 0x0008 */

typedef struct _FSRTL_ADVANCED_FCB_HEADER
{
  /* 0x0000 */ short NodeTypeCode;
  /* 0x0002 */ short NodeByteSize;
  /* 0x0004 */ unsigned char Flags;
  /* 0x0005 */ unsigned char IsFastIoPossible;
  /* 0x0006 */ unsigned char Flags2;
  struct /* bitfield */
  {
    /* 0x0007 */ unsigned char Reserved : 4; /* bit position: 0 */
    /* 0x0007 */ unsigned char Version : 4; /* bit position: 4 */
  }; /* bitfield */
  /* 0x0008 */ struct _ERESOURCE* Resource;
  /* 0x0010 */ struct _ERESOURCE* PagingIoResource;
  /* 0x0018 */ union _LARGE_INTEGER AllocationSize;
  /* 0x0020 */ union _LARGE_INTEGER FileSize;
  /* 0x0028 */ union _LARGE_INTEGER ValidDataLength;
  /* 0x0030 */ struct _FAST_MUTEX* FastMutex;
  /* 0x0038 */ struct _LIST_ENTRY FilterContexts;
  /* 0x0048 */ struct _EX_PUSH_LOCK PushLock;
  /* 0x0050 */ void** FileContextSupportPointer;
  union
  {
    /* 0x0058 */ void* Oplock;
    /* 0x0058 */ void* ReservedForRemote;
  }; /* size: 0x0008 */
  /* 0x0060 */ void* ReservedContext;
} FSRTL_ADVANCED_FCB_HEADER, *PFSRTL_ADVANCED_FCB_HEADER; /* size: 0x0068 */

typedef struct _ALPC_COMPLETION_LIST
{
  /* 0x0000 */ struct _LIST_ENTRY Entry;
  /* 0x0010 */ struct _EPROCESS* OwnerProcess;
  /* 0x0018 */ struct _EX_PUSH_LOCK CompletionListLock;
  /* 0x0020 */ struct _MDL* Mdl;
  /* 0x0028 */ void* UserVa;
  /* 0x0030 */ void* UserLimit;
  /* 0x0038 */ void* DataUserVa;
  /* 0x0040 */ void* SystemVa;
  /* 0x0048 */ unsigned __int64 TotalSize;
  /* 0x0050 */ struct _ALPC_COMPLETION_LIST_HEADER* Header;
  /* 0x0058 */ void* List;
  /* 0x0060 */ unsigned __int64 ListSize;
  /* 0x0068 */ void* Bitmap;
  /* 0x0070 */ unsigned __int64 BitmapSize;
  /* 0x0078 */ void* Data;
  /* 0x0080 */ unsigned __int64 DataSize;
  /* 0x0088 */ unsigned long BitmapLimit;
  /* 0x008c */ unsigned long BitmapNextHint;
  /* 0x0090 */ unsigned long ConcurrencyCount;
  /* 0x0094 */ unsigned long AttributeFlags;
  /* 0x0098 */ unsigned long AttributeSize;
  /* 0x009c */ long __PADDING__[1];
} ALPC_COMPLETION_LIST, *PALPC_COMPLETION_LIST; /* size: 0x00a0 */

typedef struct _iobuf
{
  /* 0x0000 */ char* _ptr;
  /* 0x0008 */ int _cnt;
  /* 0x000c */ long Padding_494;
  /* 0x0010 */ char* _base;
  /* 0x0018 */ int _flag;
  /* 0x001c */ int _file;
  /* 0x0020 */ int _charbuf;
  /* 0x0024 */ int _bufsiz;
  /* 0x0028 */ char* _tmpfname;
} iobuf, *Piobuf; /* size: 0x0030 */

typedef struct _RTL_HASH_TABLE_ITERATOR
{
  /* 0x0000 */ struct _RTL_HASH_TABLE* Hash;
  /* 0x0008 */ struct _RTL_HASH_ENTRY* HashEntry;
  /* 0x0010 */ struct _SINGLE_LIST_ENTRY* Bucket;
} RTL_HASH_TABLE_ITERATOR, *PRTL_HASH_TABLE_ITERATOR; /* size: 0x0018 */

typedef union __m64
{
  union
  {
    /* 0x0000 */ unsigned __int64 m64_u64;
    /* 0x0000 */ float m64_f32[2];
    /* 0x0000 */ char m64_i8[8];
    /* 0x0000 */ short m64_i16[4];
    /* 0x0000 */ int m64_i32[2];
    /* 0x0000 */ __int64 m64_i64;
    /* 0x0000 */ unsigned char m64_u8[8];
    /* 0x0000 */ unsigned short m64_u16[4];
    /* 0x0000 */ unsigned int m64_u32[2];
  }; /* size: 0x0008 */
} _m64, *P_m64; /* size: 0x0008 */

typedef union __m128
{
  union
  {
    /* 0x0000 */ float m128_f32[4];
    /* 0x0000 */ unsigned __int64 m128_u64[2];
    /* 0x0000 */ char m128_i8[16];
    /* 0x0000 */ short m128_i16[8];
    /* 0x0000 */ int m128_i32[4];
    /* 0x0000 */ __int64 m128_i64[2];
    /* 0x0000 */ unsigned char m128_u8[16];
    /* 0x0000 */ unsigned short m128_u16[8];
    /* 0x0000 */ unsigned int m128_u32[4];
  }; /* size: 0x0010 */
} _m128, *P_m128; /* size: 0x0010 */

struct wil_details_FeatureDescriptor
{
  /* 0x0000 */ union wil_details_FeatureStateCache* featureStateCache;
  /* 0x0008 */ struct wil_details_FeatureReportingCache* featureReportingCache;
  /* 0x0010 */ unsigned int featureId;
  /* 0x0014 */ unsigned char changeTime;
  /* 0x0015 */ unsigned char isAlwaysDisabled;
  /* 0x0016 */ unsigned char isAlwaysEnabled;
  /* 0x0017 */ unsigned char isEnabledByDefault;
  /* 0x0018 */ const struct wil_details_FeatureDescriptor* const* requiresFeatures;
}; /* size: 0x0020 */

typedef union _FILE_SEGMENT_ELEMENT
{
  union
  {
    /* 0x0000 */ void* Buffer;
    /* 0x0000 */ unsigned __int64 Alignment;
  }; /* size: 0x0008 */
} FILE_SEGMENT_ELEMENT, *PFILE_SEGMENT_ELEMENT; /* size: 0x0008 */

typedef struct _DUMMY_FILE_OBJECT
{
  /* 0x0000 */ struct _OBJECT_HEADER ObjectHeader;
  /* 0x0038 */ char FileObjectBody[216];
} DUMMY_FILE_OBJECT, *PDUMMY_FILE_OBJECT; /* size: 0x0110 */

struct Change
{
  /* 0x0000 */ enum wil_details_ServiceReportingKind kind;
  /* 0x0004 */ unsigned int count;
}; /* size: 0x0008 */

struct FEATURE_LOGGED_TRAITS
{
  /* 0x0000 */ unsigned short version;
  /* 0x0002 */ unsigned short baseVersion;
  /* 0x0004 */ unsigned char stage;
  /* 0x0005 */ char __PADDING__[1];
}; /* size: 0x0006 */

struct wil_FeatureState
{
  /* 0x0000 */ enum wil_FeatureEnabledState enabledState;
  /* 0x0004 */ unsigned char variant;
  /* 0x0005 */ char Padding_495[3];
  /* 0x0008 */ enum wil_FeatureVariantPayloadKind payloadKind;
  /* 0x000c */ unsigned int payload;
  /* 0x0010 */ int hasNotification;
  /* 0x0014 */ int isVariantConfiguration;
}; /* size: 0x0018 */

typedef struct _RTL_FEATURE_CONFIGURATION
{
  /* 0x0000 */ unsigned int FeatureId;
  struct /* bitfield */
  {
    /* 0x0004 */ unsigned int Priority : 4; /* bit position: 0 */
    /* 0x0004 */ unsigned int EnabledState : 2; /* bit position: 4 */
    /* 0x0004 */ unsigned int IsWexpConfiguration : 1; /* bit position: 6 */
    /* 0x0004 */ unsigned int HasSubscriptions : 1; /* bit position: 7 */
    /* 0x0004 */ unsigned int Variant : 6; /* bit position: 8 */
    /* 0x0004 */ unsigned int VariantPayloadKind : 2; /* bit position: 14 */
  }; /* bitfield */
  /* 0x0008 */ unsigned int VariantPayload;
} RTL_FEATURE_CONFIGURATION, *PRTL_FEATURE_CONFIGURATION; /* size: 0x000c */

typedef struct _wil_details_UsageSubscriptionData
{
  /* 0x0000 */ unsigned int featureId;
  /* 0x0004 */ unsigned short serviceReportingKind;
  /* 0x0006 */ char __PADDING__[2];
} wil_details_UsageSubscriptionData, *Pwil_details_UsageSubscriptionData; /* size: 0x0008 */

typedef struct _EX_PUSH_LOCK_AUTO_EXPAND_STATE
{
  union
  {
    struct /* bitfield */
    {
      /* 0x0000 */ unsigned long Expanded : 1; /* bit position: 0 */
      /* 0x0000 */ unsigned long Transitioning : 1; /* bit position: 1 */
      /* 0x0000 */ unsigned long Pageable : 1; /* bit position: 2 */
    }; /* bitfield */
    /* 0x0000 */ unsigned long Value;
  }; /* size: 0x0004 */
} EX_PUSH_LOCK_AUTO_EXPAND_STATE, *PEX_PUSH_LOCK_AUTO_EXPAND_STATE; /* size: 0x0004 */

typedef struct _EX_PUSH_LOCK_AUTO_EXPAND
{
  /* 0x0000 */ struct _EX_PUSH_LOCK LocalLock;
  /* 0x0008 */ struct _EX_PUSH_LOCK_AUTO_EXPAND_STATE State;
  /* 0x000c */ unsigned long Stats;
} EX_PUSH_LOCK_AUTO_EXPAND, *PEX_PUSH_LOCK_AUTO_EXPAND; /* size: 0x0010 */

typedef struct _MMCLONE_DESCRIPTOR
{
  union
  {
    /* 0x0000 */ struct _RTL_BALANCED_NODE CloneNode;
    /* 0x0000 */ struct _MMCLONE_DESCRIPTOR* Next;
  }; /* size: 0x0018 */
  /* 0x0018 */ struct _MMCLONE_BLOCK* StartingCloneBlock;
  /* 0x0020 */ struct _MMCLONE_BLOCK* EndingCloneBlock;
  /* 0x0028 */ unsigned __int64 NumberOfPtes;
  /* 0x0030 */ volatile unsigned __int64 NumberOfReferences;
  /* 0x0038 */ struct _MMCLONE_HEADER* CloneHeader;
  /* 0x0040 */ unsigned __int64 NonPagedPoolQuotaCharge;
  /* 0x0048 */ long Padding_496[2];
  /* 0x0050 */ struct _SLIST_ENTRY DeleteList;
  /* 0x0060 */ unsigned __int64 NestingLevel;
  /* 0x0068 */ long __PADDING__[2];
} MMCLONE_DESCRIPTOR, *PMMCLONE_DESCRIPTOR; /* size: 0x0070 */

typedef struct _PORT_MESSAGE32
{
  union
  {
    union
    {
      struct
      {
        /* 0x0000 */ short DataLength;
        /* 0x0002 */ short TotalLength;
      } /* size: 0x0004 */ s1;
      /* 0x0000 */ unsigned long Length;
    }; /* size: 0x0004 */
  } /* size: 0x0004 */ u1;
  union
  {
    union
    {
      struct
      {
        /* 0x0004 */ short Type;
        /* 0x0006 */ short DataInfoOffset;
      } /* size: 0x0004 */ s2;
      /* 0x0004 */ unsigned long ZeroInit;
    }; /* size: 0x0004 */
  } /* size: 0x0004 */ u2;
  union
  {
    /* 0x0008 */ struct _CLIENT_ID32 ClientId;
    /* 0x0008 */ double DoNotUseThisField;
  }; /* size: 0x0008 */
  /* 0x0010 */ unsigned long MessageId;
  union
  {
    /* 0x0014 */ unsigned long ClientViewSize;
    /* 0x0014 */ unsigned long CallbackId;
  }; /* size: 0x0004 */
} PORT_MESSAGE32, *PPORT_MESSAGE32; /* size: 0x0018 */

typedef struct _MI_REBUILD_LARGE_PAGE_TIMER
{
  /* 0x0000 */ struct _WORK_QUEUE_ITEM WorkItem;
  /* 0x0020 */ unsigned char SecondsLeft;
  /* 0x0021 */ unsigned char RebuildActive;
  /* 0x0022 */ unsigned char NextPassDelta;
  /* 0x0023 */ unsigned char LargeSubPagesActive;
  /* 0x0024 */ long __PADDING__[1];
} MI_REBUILD_LARGE_PAGE_TIMER, *PMI_REBUILD_LARGE_PAGE_TIMER; /* size: 0x0028 */

typedef struct _MI_PAGE_COLORS
{
  /* 0x0000 */ unsigned long PageSize[4];
} MI_PAGE_COLORS, *PMI_PAGE_COLORS; /* size: 0x0010 */

typedef struct _MI_NODE_INFORMATION
{
  /* 0x0000 */ struct _MI_FREE_LARGE_PAGES FreeLargePages[3];
  /* 0x0c90 */ struct _MI_REBUILD_LARGE_PAGE_TIMER LargePageRebuildTimer;
  /* 0x0cb8 */ struct _MMPFNLIST_SHORT StandbyPageList[8][4];
  /* 0x0fb8 */ long Padding_497[2];
  /* 0x0fc0 */ struct _RTL_BITMAP FreePageListHeadsBitmap[2];
  /* 0x0fe0 */ unsigned long FreePageListHeadsBitmapBuffer[16];
  /* 0x1020 */ volatile unsigned __int64 FreeCount[2];
  /* 0x1030 */ unsigned __int64 TotalPages[4];
  /* 0x1050 */ unsigned __int64 TotalPagesEntireNode;
  /* 0x1058 */ unsigned long CurrentHugeRangeColor;
  /* 0x105c */ long Padding_498;
  /* 0x1060 */ unsigned __int64 HugeIoRangeFreeCount[2];
  /* 0x1070 */ unsigned long MmShiftedColor;
  /* 0x1074 */ unsigned long Color;
  /* 0x1078 */ volatile unsigned __int64 ChannelFreeCount[2][4];
  struct
  {
    struct /* bitfield */
    {
      /* 0x10b8 */ unsigned long ChannelsHotCold : 1; /* bit position: 0 */
      /* 0x10b8 */ unsigned long Spare : 31; /* bit position: 1 */
    }; /* bitfield */
  } /* size: 0x0004 */ Flags;
  /* 0x10bc */ unsigned long LargeListMoveInProgress;
  /* 0x10c0 */ struct _MI_LARGE_PAGE_LISTS_CHANGING* LargeListWaiters;
  /* 0x10c8 */ struct _EX_PUSH_LOCK NodeLock;
  /* 0x10d0 */ unsigned __int64 ZeroThreadHugeMapLock;
  /* 0x10d8 */ unsigned char ChannelStatus;
  /* 0x10d9 */ unsigned char ChannelOrdering[4];
  /* 0x10dd */ unsigned char LockedChannelOrdering[4];
  /* 0x10e1 */ unsigned char PowerAttribute[4];
  /* 0x10e5 */ char Padding_499[3];
  /* 0x10e8 */ unsigned __int64 LargePageLock;
  /* 0x10f0 */ struct _MI_PAGE_COLORS PageColorTable;
  /* 0x1100 */ unsigned __int64 NumberOfPagesGoingBad;
  /* 0x1108 */ struct _MI_WRITE_CALIBRATION WriteCalibration;
  /* 0x1128 */ void* BootZeroContext;
  /* 0x1130 */ void* BootZeroPageTimesPerProcessor;
  /* 0x1138 */ void* ZeroingVaBase;
  /* 0x1140 */ unsigned __int64 TotalBytesToZero;
  /* 0x1148 */ unsigned __int64 PerProcessorNumberOfBytesToZero;
  /* 0x1150 */ void* ZeroingContext;
  /* 0x1158 */ volatile unsigned long ZeroingProcessorCount;
  /* 0x115c */ volatile long ZeroHand;
  /* 0x1160 */ volatile long FinishedProcessors;
  /* 0x1164 */ long Padding_500;
  /* 0x1168 */ unsigned __int64 CyclesToZeroOneLargePage;
  /* 0x1170 */ unsigned __int64* ScaledCyclesToZeroOneLargePage;
  /* 0x1178 */ struct _GROUP_AFFINITY GroupAffinity;
  /* 0x1188 */ unsigned short ProcessorCount;
  /* 0x118a */ unsigned char BackgroundZeroingActive;
  /* 0x118b */ char Padding_501[5];
  /* 0x1190 */ struct _PHYSICAL_MEMORY_DESCRIPTOR* ZeroingPhysicalMemoryBlock;
  /* 0x1198 */ long __PADDING__[10];
} MI_NODE_INFORMATION, *PMI_NODE_INFORMATION; /* size: 0x11c0 */

typedef struct _VSM_PERFORMANCE_DATA
{
  /* 0x0000 */ unsigned __int64 LaunchVsmMark[8];
} VSM_PERFORMANCE_DATA, *PVSM_PERFORMANCE_DATA; /* size: 0x0040 */

typedef struct _HEAP_LFH_BUCKET
{
  /* 0x0000 */ struct _HEAP_LFH_SUBSEGMENT_OWNER State;
  /* 0x0038 */ unsigned __int64 TotalBlockCount;
  /* 0x0040 */ unsigned __int64 TotalSubsegmentCount;
  /* 0x0048 */ unsigned long ReciprocalBlockSize;
  /* 0x004c */ unsigned char Shift;
  /* 0x004d */ unsigned char ContentionCount;
  /* 0x004e */ char Padding_502[2];
  /* 0x0050 */ unsigned __int64 AffinityMappingLock;
  /* 0x0058 */ unsigned char* ProcAffinityMapping;
  /* 0x0060 */ struct _HEAP_LFH_AFFINITY_SLOT** AffinitySlots;
} HEAP_LFH_BUCKET, *PHEAP_LFH_BUCKET; /* size: 0x0068 */

typedef struct _ARM_LOADER_BLOCK
{
  /* 0x0000 */ unsigned long PlaceHolder;
} ARM_LOADER_BLOCK, *PARM_LOADER_BLOCK; /* size: 0x0004 */

typedef struct _RTL_SRWLOCK
{
  union
  {
    struct /* bitfield */
    {
      /* 0x0000 */ unsigned __int64 Locked : 1; /* bit position: 0 */
      /* 0x0000 */ unsigned __int64 Waiting : 1; /* bit position: 1 */
      /* 0x0000 */ unsigned __int64 Waking : 1; /* bit position: 2 */
      /* 0x0000 */ unsigned __int64 MultipleShared : 1; /* bit position: 3 */
      /* 0x0000 */ unsigned __int64 Shared : 60; /* bit position: 4 */
    }; /* bitfield */
    /* 0x0000 */ unsigned __int64 Value;
    /* 0x0000 */ void* Ptr;
  }; /* size: 0x0008 */
} RTL_SRWLOCK, *PRTL_SRWLOCK; /* size: 0x0008 */

typedef struct _I386_LOADER_BLOCK
{
  /* 0x0000 */ void* CommonDataArea;
  /* 0x0008 */ unsigned long MachineType;
  /* 0x000c */ unsigned long VirtualBias;
} I386_LOADER_BLOCK, *PI386_LOADER_BLOCK; /* size: 0x0010 */

typedef struct _MI_LARGE_PAGE_LISTS_CHANGING
{
  /* 0x0000 */ struct _MI_LARGE_PAGE_LISTS_CHANGING* Next;
  /* 0x0008 */ struct _KGATE Gate;
} MI_LARGE_PAGE_LISTS_CHANGING, *PMI_LARGE_PAGE_LISTS_CHANGING; /* size: 0x0020 */

typedef struct _LOADER_PERFORMANCE_DATA
{
  /* 0x0000 */ unsigned __int64 StartTime;
  /* 0x0008 */ unsigned __int64 EndTime;
  /* 0x0010 */ unsigned __int64 PreloadEndTime;
  /* 0x0018 */ unsigned __int64 TcbLoaderStartTime;
  /* 0x0020 */ unsigned __int64 LoadHypervisorTime;
  /* 0x0028 */ unsigned __int64 LaunchHypervisorTime;
  /* 0x0030 */ unsigned __int64 LoadVsmTime;
  /* 0x0038 */ unsigned __int64 LaunchVsmTime;
  /* 0x0040 */ unsigned __int64 ExecuteTransitionStartTime;
  /* 0x0048 */ unsigned __int64 ExecuteTransitionEndTime;
  /* 0x0050 */ unsigned __int64 LoadDriversTime;
  /* 0x0058 */ unsigned __int64 CleanupVsmTime;
} LOADER_PERFORMANCE_DATA, *PLOADER_PERFORMANCE_DATA; /* size: 0x0060 */

typedef struct _MI_SECTION_IMAGE_INFORMATION
{
  /* 0x0000 */ struct _SECTION_IMAGE_INFORMATION ExportedImageInformation;
  /* 0x0040 */ struct _MI_EXTRA_IMAGE_INFORMATION InternalImageInformation;
} MI_SECTION_IMAGE_INFORMATION, *PMI_SECTION_IMAGE_INFORMATION; /* size: 0x0050 */

typedef struct _LOADER_BUGCHECK_PARAMETERS
{
  /* 0x0000 */ unsigned long BugcheckCode;
  /* 0x0004 */ long Padding_503;
  /* 0x0008 */ unsigned __int64 BugcheckParameter1;
  /* 0x0010 */ unsigned __int64 BugcheckParameter2;
  /* 0x0018 */ unsigned __int64 BugcheckParameter3;
  /* 0x0020 */ unsigned __int64 BugcheckParameter4;
} LOADER_BUGCHECK_PARAMETERS, *PLOADER_BUGCHECK_PARAMETERS; /* size: 0x0028 */

typedef struct _GDI_TEB_BATCH32
{
  struct /* bitfield */
  {
    /* 0x0000 */ unsigned long Offset : 31; /* bit position: 0 */
    /* 0x0000 */ unsigned long HasRenderingCommand : 1; /* bit position: 31 */
  }; /* bitfield */
  /* 0x0004 */ unsigned long HDC;
  /* 0x0008 */ unsigned long Buffer[310];
} GDI_TEB_BATCH32, *PGDI_TEB_BATCH32; /* size: 0x04e0 */

typedef struct _CLIENT_ID64
{
  /* 0x0000 */ unsigned __int64 UniqueProcess;
  /* 0x0008 */ unsigned __int64 UniqueThread;
} CLIENT_ID64, *PCLIENT_ID64; /* size: 0x0010 */

typedef struct _HV_X64_HYPERVISOR_FEATURES
{
  /* 0x0000 */ union _HV_PARTITION_PRIVILEGE_MASK PartitionPrivileges;
  struct /* bitfield */
  {
    /* 0x0008 */ unsigned int MaxSupportedCState : 4; /* bit position: 0 */
    /* 0x0008 */ unsigned int HpetNeededForC3PowerState_Deprecated : 1; /* bit position: 4 */
    /* 0x0008 */ unsigned int Reserved : 27; /* bit position: 5 */
  }; /* bitfield */
  struct /* bitfield */
  {
    /* 0x000c */ unsigned int MwaitAvailable_Deprecated : 1; /* bit position: 0 */
    /* 0x000c */ unsigned int GuestDebuggingAvailable : 1; /* bit position: 1 */
    /* 0x000c */ unsigned int PerformanceMonitorsAvailable : 1; /* bit position: 2 */
    /* 0x000c */ unsigned int CpuDynamicPartitioningAvailable : 1; /* bit position: 3 */
    /* 0x000c */ unsigned int XmmRegistersForFastHypercallAvailable : 1; /* bit position: 4 */
    /* 0x000c */ unsigned int GuestIdleAvailable : 1; /* bit position: 5 */
    /* 0x000c */ unsigned int HypervisorSleepStateSupportAvailable : 1; /* bit position: 6 */
    /* 0x000c */ unsigned int NumaDistanceQueryAvailable : 1; /* bit position: 7 */
    /* 0x000c */ unsigned int FrequencyRegsAvailable : 1; /* bit position: 8 */
    /* 0x000c */ unsigned int SyntheticMachineCheckAvailable : 1; /* bit position: 9 */
    /* 0x000c */ unsigned int GuestCrashRegsAvailable : 1; /* bit position: 10 */
    /* 0x000c */ unsigned int DebugRegsAvailable : 1; /* bit position: 11 */
    /* 0x000c */ unsigned int Npiep1Available : 1; /* bit position: 12 */
    /* 0x000c */ unsigned int DisableHypervisorAvailable : 1; /* bit position: 13 */
    /* 0x000c */ unsigned int ExtendedGvaRangesForFlushVirtualAddressListAvailable : 1; /* bit position: 14 */
    /* 0x000c */ unsigned int FastHypercallOutputAvailable : 1; /* bit position: 15 */
    /* 0x000c */ unsigned int SvmFeaturesAvailable : 1; /* bit position: 16 */
    /* 0x000c */ unsigned int SintPollingModeAvailable : 1; /* bit position: 17 */
    /* 0x000c */ unsigned int HypercallMsrLockAvailable : 1; /* bit position: 18 */
    /* 0x000c */ unsigned int DirectSyntheticTimers : 1; /* bit position: 19 */
    /* 0x000c */ unsigned int RegisterPatAvailable : 1; /* bit position: 20 */
    /* 0x000c */ unsigned int RegisterBndcfgsAvailable : 1; /* bit position: 21 */
    /* 0x000c */ unsigned int WatchdogTimerAvailable : 1; /* bit position: 22 */
    /* 0x000c */ unsigned int SyntheticTimeUnhaltedTimerAvailable : 1; /* bit position: 23 */
    /* 0x000c */ unsigned int DeviceDomainsAvailable : 1; /* bit position: 24 */
    /* 0x000c */ unsigned int S1DeviceDomainsAvailable : 1; /* bit position: 25 */
    /* 0x000c */ unsigned int LbrAvailable : 1; /* bit position: 26 */
    /* 0x000c */ unsigned int IptAvailable : 1; /* bit position: 27 */
    /* 0x000c */ unsigned int CrossVtlFlushAvailable : 1; /* bit position: 28 */
    /* 0x000c */ unsigned int IdleSpecCtrlAvailable : 1; /* bit position: 29 */
    /* 0x000c */ unsigned int Reserved1 : 2; /* bit position: 30 */
  }; /* bitfield */
} HV_X64_HYPERVISOR_FEATURES, *PHV_X64_HYPERVISOR_FEATURES; /* size: 0x0010 */

struct _MI_SLAB_ALLOCATOR_ENTRY;

typedef struct _MMPAGING_FILE
{
  /* 0x0000 */ unsigned __int64 Size;
  /* 0x0008 */ unsigned __int64 MaximumSize;
  /* 0x0010 */ unsigned __int64 MinimumSize;
  /* 0x0018 */ unsigned __int64 FreeSpace;
  /* 0x0020 */ unsigned __int64 PeakUsage;
  /* 0x0028 */ unsigned __int64 HighestPage;
  /* 0x0030 */ unsigned __int64 FreeReservationSpace;
  /* 0x0038 */ struct _FILE_OBJECT* File;
  /* 0x0040 */ struct _MMMOD_WRITER_MDL_ENTRY** Entry;
  /* 0x0048 */ unsigned long NumberOfModWriterEntries;
  /* 0x004c */ long Padding_504;
  /* 0x0050 */ union _SLIST_HEADER PfnsToFree;
  /* 0x0060 */ struct _UNICODE_STRING PageFileName;
  /* 0x0070 */ struct _MI_PAGING_FILE_SPACE_BITMAPS* Bitmaps;
  /* 0x0078 */ unsigned long AllocationBitmapHint;
  /* 0x007c */ unsigned long LargestAllocationCluster;
  /* 0x0080 */ unsigned long RefreshAllocationCluster;
  /* 0x0084 */ unsigned long LastRefreshAllocationCluster;
  /* 0x0088 */ unsigned long ReservedClusterSizeAggregate;
  /* 0x008c */ unsigned long MaximumRunLengthInBitmaps;
  /* 0x0090 */ struct _RTL_RB_TREE BitmapsCacheLengthTree;
  /* 0x00a0 */ struct _RTL_RB_TREE BitmapsCacheLocationTree;
  /* 0x00b0 */ struct _LIST_ENTRY BitmapsCacheFreeList;
  /* 0x00c0 */ struct _MI_PAGEFILE_BITMAPS_CACHE_ENTRY* BitmapsCacheEntries;
  union
  {
    /* 0x00c8 */ unsigned long ToBeEvictedCount;
    /* 0x00c8 */ unsigned long HybridPriority;
  }; /* size: 0x0004 */
  struct /* bitfield */
  {
    /* 0x00cc */ unsigned short PageFileNumber : 4; /* bit position: 0 */
    /* 0x00cc */ unsigned short WsSwapPagefile : 1; /* bit position: 4 */
    /* 0x00cc */ unsigned short NoReservations : 1; /* bit position: 5 */
    /* 0x00cc */ unsigned short VirtualStorePagefile : 1; /* bit position: 6 */
    /* 0x00cc */ unsigned short SwapSupported : 1; /* bit position: 7 */
    /* 0x00cc */ unsigned short NodeInserted : 1; /* bit position: 8 */
    /* 0x00cc */ unsigned short StackNotified : 1; /* bit position: 9 */
    /* 0x00cc */ unsigned short BackedBySCM : 1; /* bit position: 10 */
    /* 0x00cc */ unsigned short SpecialPurposeMemory : 1; /* bit position: 11 */
    /* 0x00cc */ unsigned short Spare0 : 3; /* bit position: 12 */
  }; /* bitfield */
  struct /* bitfield */
  {
    /* 0x00ce */ unsigned char AdriftMdls : 1; /* bit position: 0 */
    /* 0x00ce */ unsigned char Spare1 : 7; /* bit position: 1 */
  }; /* bitfield */
  struct /* bitfield */
  {
    /* 0x00cf */ unsigned char IgnoreReservations : 1; /* bit position: 0 */
    /* 0x00cf */ unsigned char Spare2 : 7; /* bit position: 1 */
  }; /* bitfield */
  /* 0x00d0 */ unsigned long PageHashPages;
  /* 0x00d4 */ unsigned long PageHashPagesPeak;
  /* 0x00d8 */ unsigned long* PageHash;
  /* 0x00e0 */ void* FileHandle;
  /* 0x00e8 */ volatile long SpinLock;
  /* 0x00ec */ long Padding_505;
  /* 0x00f0 */ struct _RTL_AVL_TREE FlowThroughReadRoot;
  /* 0x00f8 */ struct _MI_PARTITION* Partition;
  /* 0x0100 */ struct _RTL_BALANCED_NODE FileObjectNode;
  /* 0x0118 */ long __PADDING__[2];
} MMPAGING_FILE, *PMMPAGING_FILE; /* size: 0x0120 */

typedef struct _HEAP_LOCK
{
  union
  {
    union
    {
      /* 0x0000 */ struct _RTL_CRITICAL_SECTION CriticalSection;
      /* 0x0000 */ struct _ERESOURCE Resource;
    }; /* size: 0x0068 */
  } /* size: 0x0068 */ Lock;
} HEAP_LOCK, *PHEAP_LOCK; /* size: 0x0068 */

typedef struct _MODWRITER_FLAGS
{
  struct /* bitfield */
  {
    /* 0x0000 */ unsigned long KeepForever : 1; /* bit position: 0 */
    /* 0x0000 */ unsigned long Networked : 1; /* bit position: 1 */
    /* 0x0000 */ unsigned long IoPriority : 3; /* bit position: 2 */
    /* 0x0000 */ unsigned long ModifiedStoreWrite : 1; /* bit position: 5 */
  }; /* bitfield */
} MODWRITER_FLAGS, *PMODWRITER_FLAGS; /* size: 0x0004 */

typedef struct _MMMOD_WRITER_MDL_ENTRY
{
  /* 0x0000 */ struct _LIST_ENTRY Links;
  union
  {
    /* 0x0010 */ struct _IO_STATUS_BLOCK IoStatus;
  } /* size: 0x0010 */ u;
  /* 0x0020 */ struct _IRP* Irp;
  /* 0x0028 */ struct _MODWRITER_FLAGS u1;
  /* 0x002c */ unsigned long StoreWriteRefCount;
  /* 0x0030 */ struct _KAPC StoreWriteCompletionApc;
  /* 0x0088 */ unsigned long ByteCount;
  /* 0x008c */ unsigned long ChargedPages;
  /* 0x0090 */ struct _MMPAGING_FILE* PagingFile;
  /* 0x0098 */ struct _FILE_OBJECT* File;
  /* 0x00a0 */ struct _CONTROL_AREA* ControlArea;
  /* 0x00a8 */ struct _ERESOURCE* FileResource;
  /* 0x00b0 */ union _LARGE_INTEGER WriteOffset;
  /* 0x00b8 */ union _LARGE_INTEGER IssueTime;
  /* 0x00c0 */ struct _MI_PARTITION* Partition;
  /* 0x00c8 */ struct _MDL* PointerMdl;
  /* 0x00d0 */ struct _MDL Mdl;
  /* 0x0100 */ unsigned __int64 Page[1];
} MMMOD_WRITER_MDL_ENTRY, *PMMMOD_WRITER_MDL_ENTRY; /* size: 0x0108 */

typedef struct _MI_PAGING_FILE_SPACE_BITMAPS
{
  union
  {
    /* 0x0000 */ unsigned long RefCount;
    /* 0x0000 */ struct _MI_PAGING_FILE_SPACE_BITMAPS* Anchor;
  }; /* size: 0x0008 */
  /* 0x0008 */ struct _RTL_BITMAP AllocationBitmap;
  union
  {
    /* 0x0018 */ struct _RTL_BITMAP ReservationBitmap;
    /* 0x0018 */ struct _RTL_BITMAP EvictedBitmap;
  }; /* size: 0x0010 */
} MI_PAGING_FILE_SPACE_BITMAPS, *PMI_PAGING_FILE_SPACE_BITMAPS; /* size: 0x0028 */

typedef struct _LOGGED_STREAM_CALLBACK_V1
{
  /* 0x0000 */ void* LogHandle;
  /* 0x0008 */ void* FlushToLsnRoutine /* function */;
} LOGGED_STREAM_CALLBACK_V1, *PLOGGED_STREAM_CALLBACK_V1; /* size: 0x0010 */

typedef struct _LOGGED_STREAM_CALLBACK_V2
{
  /* 0x0000 */ struct _LOG_HANDLE_CONTEXT* LogHandleContext;
} LOGGED_STREAM_CALLBACK_V2, *PLOGGED_STREAM_CALLBACK_V2; /* size: 0x0008 */

typedef struct _SHARED_CACHE_MAP
{
  /* 0x0000 */ short NodeTypeCode;
  /* 0x0002 */ short NodeByteSize;
  /* 0x0004 */ unsigned long OpenCount;
  /* 0x0008 */ union _LARGE_INTEGER FileSize;
  /* 0x0010 */ struct _LIST_ENTRY BcbList;
  /* 0x0020 */ union _LARGE_INTEGER SectionSize;
  /* 0x0028 */ union _LARGE_INTEGER ValidDataLength;
  /* 0x0030 */ union _LARGE_INTEGER ValidDataGoal;
  /* 0x0038 */ struct _VACB* InitialVacbs[4];
  /* 0x0058 */ struct _VACB** Vacbs;
  /* 0x0060 */ struct _EX_FAST_REF FileObjectFastRef;
  /* 0x0068 */ struct _EX_PUSH_LOCK VacbLock;
  /* 0x0070 */ unsigned long DirtyPages;
  /* 0x0074 */ long Padding_506;
  /* 0x0078 */ struct _LIST_ENTRY LoggedStreamLinks;
  /* 0x0088 */ struct _LIST_ENTRY SharedCacheMapLinks;
  /* 0x0098 */ unsigned long Flags;
  /* 0x009c */ long Status;
  /* 0x00a0 */ struct _MBCB* Mbcb;
  /* 0x00a8 */ void* Section;
  /* 0x00b0 */ struct _KEVENT* CreateEvent;
  /* 0x00b8 */ struct _KEVENT* WaitOnActiveCount;
  /* 0x00c0 */ unsigned long PagesToWrite;
  /* 0x00c4 */ long Padding_507;
  /* 0x00c8 */ __int64 BeyondLastFlush;
  /* 0x00d0 */ struct _CACHE_MANAGER_CALLBACKS* Callbacks;
  /* 0x00d8 */ void* LazyWriteContext;
  /* 0x00e0 */ struct _LIST_ENTRY PrivateList;
  union
  {
    /* 0x00f0 */ struct _LOGGED_STREAM_CALLBACK_V1 V1;
    /* 0x00f0 */ struct _LOGGED_STREAM_CALLBACK_V2 V2;
  }; /* size: 0x0010 */
  /* 0x0100 */ union _LARGE_INTEGER LargestLSN;
  /* 0x0108 */ unsigned long DirtyPageThreshold;
  /* 0x010c */ unsigned long LazyWritePassCount;
  /* 0x0110 */ struct _CACHE_UNINITIALIZE_EVENT* UninitializeEvent;
  /* 0x0118 */ struct _FAST_MUTEX BcbLock;
  /* 0x0150 */ union _LARGE_INTEGER LastUnmapBehindOffset;
  /* 0x0158 */ struct _KEVENT Event;
  /* 0x0170 */ union _LARGE_INTEGER HighWaterMappingOffset;
  /* 0x0178 */ struct _PRIVATE_CACHE_MAP PrivateCacheMap;
  /* 0x01f0 */ void* WriteBehindWorkQueueEntry;
  /* 0x01f8 */ struct _VOLUME_CACHE_MAP* VolumeCacheMap;
  /* 0x0200 */ unsigned long ProcImagePathHash;
  /* 0x0204 */ unsigned long WritesInProgress;
  /* 0x0208 */ unsigned long AsyncReadRequestCount;
  /* 0x020c */ long Padding_508;
  /* 0x0210 */ struct _CC_PARTITION* Partition;
  /* 0x0218 */ unsigned long InternalRefCount;
  /* 0x021c */ unsigned long NumMappedVacb;
  /* 0x0220 */ unsigned long NumActiveVacb;
  /* 0x0224 */ long __PADDING__[1];
} SHARED_CACHE_MAP, *PSHARED_CACHE_MAP; /* size: 0x0228 */

typedef struct _MIPFNBLINK
{
  union
  {
    struct /* bitfield */
    {
      /* 0x0000 */ unsigned __int64 Blink : 36; /* bit position: 0 */
      /* 0x0000 */ unsigned __int64 NodeBlinkHigh : 20; /* bit position: 36 */
      /* 0x0000 */ unsigned __int64 TbFlushStamp : 4; /* bit position: 56 */
      /* 0x0000 */ unsigned __int64 Unused : 2; /* bit position: 60 */
      /* 0x0000 */ unsigned __int64 PageBlinkDeleteBit : 1; /* bit position: 62 */
      /* 0x0000 */ unsigned __int64 PageBlinkLockBit : 1; /* bit position: 63 */
    }; /* bitfield */
    struct /* bitfield */
    {
      /* 0x0000 */ unsigned __int64 ShareCount : 62; /* bit position: 0 */
      /* 0x0000 */ unsigned __int64 PageShareCountDeleteBit : 1; /* bit position: 62 */
      /* 0x0000 */ unsigned __int64 PageShareCountLockBit : 1; /* bit position: 63 */
    }; /* bitfield */
    /* 0x0000 */ unsigned __int64 EntireField;
    /* 0x0000 */ volatile __int64 Lock;
    struct /* bitfield */
    {
      /* 0x0000 */ unsigned __int64 LockNotUsed : 62; /* bit position: 0 */
      /* 0x0000 */ unsigned __int64 DeleteBit : 1; /* bit position: 62 */
      /* 0x0000 */ unsigned __int64 LockBit : 1; /* bit position: 63 */
    }; /* bitfield */
  }; /* size: 0x0008 */
} MIPFNBLINK, *PMIPFNBLINK; /* size: 0x0008 */

typedef struct _MMPFN
{
  union
  {
    /* 0x0000 */ struct _LIST_ENTRY ListEntry;
    /* 0x0000 */ struct _RTL_BALANCED_NODE TreeNode;
    struct
    {
      union
      {
        union
        {
          /* 0x0000 */ struct _SINGLE_LIST_ENTRY NextSlistPfn;
          /* 0x0000 */ void* Next;
          struct /* bitfield */
          {
            /* 0x0000 */ unsigned __int64 Flink : 36; /* bit position: 0 */
            /* 0x0000 */ unsigned __int64 NodeFlinkHigh : 28; /* bit position: 36 */
          }; /* bitfield */
          /* 0x0000 */ struct _MI_ACTIVE_PFN Active;
        }; /* size: 0x0008 */
      } /* size: 0x0008 */ u1;
      union
      {
        /* 0x0008 */ struct _MMPTE* PteAddress;
        /* 0x0008 */ unsigned __int64 PteLong;
      }; /* size: 0x0008 */
      /* 0x0010 */ struct _MMPTE OriginalPte;
    }; /* size: 0x0018 */
  }; /* size: 0x0018 */
  /* 0x0018 */ struct _MIPFNBLINK u2;
  union
  {
    union
    {
      struct
      {
        /* 0x0020 */ unsigned short ReferenceCount;
        /* 0x0022 */ struct _MMPFNENTRY1 e1;
        /* 0x0023 */ struct _MMPFNENTRY3 e3;
      }; /* size: 0x0004 */
      struct
      {
        /* 0x0020 */ unsigned short ReferenceCount;
      } /* size: 0x0002 */ e2;
      struct
      {
        /* 0x0020 */ unsigned long EntireField;
      } /* size: 0x0004 */ e4;
    }; /* size: 0x0004 */
  } /* size: 0x0004 */ u3;
  /* 0x0024 */ unsigned short NodeBlinkLow;
  struct /* bitfield */
  {
    /* 0x0026 */ unsigned char Unused : 4; /* bit position: 0 */
    /* 0x0026 */ unsigned char Unused2 : 4; /* bit position: 4 */
  }; /* bitfield */
  union
  {
    /* 0x0027 */ unsigned char ViewCount;
    /* 0x0027 */ unsigned char NodeFlinkLow;
    /* 0x0027 */ unsigned char ModifiedListBucketIndex : 4; /* bit position: 0 */
    /* 0x0027 */ unsigned char AnchorLargePageSize : 2; /* bit position: 0 */
  }; /* size: 0x0001 */
  union
  {
    union
    {
      struct /* bitfield */
      {
        /* 0x0028 */ unsigned __int64 PteFrame : 36; /* bit position: 0 */
        /* 0x0028 */ unsigned __int64 ResidentPage : 1; /* bit position: 36 */
        /* 0x0028 */ unsigned __int64 Unused1 : 1; /* bit position: 37 */
        /* 0x0028 */ unsigned __int64 Unused2 : 1; /* bit position: 38 */
        /* 0x0028 */ unsigned __int64 Partition : 10; /* bit position: 39 */
        /* 0x0028 */ unsigned __int64 FileOnly : 1; /* bit position: 49 */
        /* 0x0028 */ unsigned __int64 PfnExists : 1; /* bit position: 50 */
        /* 0x0028 */ unsigned __int64 Spare : 9; /* bit position: 51 */
        /* 0x0028 */ unsigned __int64 PageIdentity : 3; /* bit position: 60 */
        /* 0x0028 */ unsigned __int64 PrototypePte : 1; /* bit position: 63 */
      }; /* bitfield */
      /* 0x0028 */ unsigned __int64 EntireField;
    }; /* size: 0x0008 */
  } /* size: 0x0008 */ u4;
} MMPFN, *PMMPFN; /* size: 0x0030 */

typedef struct _MMVAD_SHORT
{
  union
  {
    struct
    {
      /* 0x0000 */ struct _MMVAD_SHORT* NextVad;
      /* 0x0008 */ void* ExtraCreateInfo;
    }; /* size: 0x0010 */
    /* 0x0000 */ struct _RTL_BALANCED_NODE VadNode;
  }; /* size: 0x0018 */
  /* 0x0018 */ unsigned long StartingVpn;
  /* 0x001c */ unsigned long EndingVpn;
  /* 0x0020 */ unsigned char StartingVpnHigh;
  /* 0x0021 */ unsigned char EndingVpnHigh;
  /* 0x0022 */ unsigned char CommitChargeHigh;
  /* 0x0023 */ unsigned char SpareNT64VadUChar;
  /* 0x0024 */ long ReferenceCount;
  /* 0x0028 */ struct _EX_PUSH_LOCK PushLock;
  union
  {
    union
    {
      /* 0x0030 */ unsigned long LongFlags;
      /* 0x0030 */ struct _MMVAD_FLAGS VadFlags;
      /* 0x0030 */ struct _MM_PRIVATE_VAD_FLAGS PrivateVadFlags;
      /* 0x0030 */ struct _MM_GRAPHICS_VAD_FLAGS GraphicsVadFlags;
      /* 0x0030 */ struct _MM_SHARED_VAD_FLAGS SharedVadFlags;
      /* 0x0030 */ volatile unsigned long VolatileVadLong;
    }; /* size: 0x0004 */
  } /* size: 0x0004 */ u;
  union
  {
    union
    {
      /* 0x0034 */ unsigned long LongFlags1;
      /* 0x0034 */ struct _MMVAD_FLAGS1 VadFlags1;
    }; /* size: 0x0004 */
  } /* size: 0x0004 */ u1;
  /* 0x0038 */ struct _MI_VAD_EVENT_BLOCK* EventList;
} MMVAD_SHORT, *PMMVAD_SHORT; /* size: 0x0040 */

typedef struct _MMINPAGE_SUPPORT_FLOW_THROUGH
{
  /* 0x0000 */ unsigned __int64 Page[1];
  /* 0x0008 */ struct _MMINPAGE_SUPPORT* InitialInPageSupport;
  /* 0x0010 */ struct _MMPAGING_FILE* PagingFile;
  /* 0x0018 */ unsigned __int64 PageFileOffset;
  /* 0x0020 */ struct _RTL_BALANCED_NODE Node;
} MMINPAGE_SUPPORT_FLOW_THROUGH, *PMMINPAGE_SUPPORT_FLOW_THROUGH; /* size: 0x0038 */

typedef struct _MMINPAGE_SUPPORT
{
  union
  {
    /* 0x0000 */ struct _LIST_ENTRY ListEntry;
    /* 0x0000 */ struct _SLIST_ENTRY SListEntry;
  }; /* size: 0x0010 */
  /* 0x0010 */ struct _LIST_ENTRY ListHead;
  /* 0x0020 */ struct _KEVENT Event;
  /* 0x0038 */ struct _KEVENT CollidedEvent;
  /* 0x0050 */ struct _IO_STATUS_BLOCK IoStatus;
  /* 0x0060 */ union _LARGE_INTEGER ReadOffset;
  union
  {
    union
    {
      /* 0x0068 */ struct _KAPC_STATE ApcState;
      /* 0x0068 */ struct _MI_HARD_FAULT_STATE HardFaultState;
    }; /* size: 0x0030 */
  } /* size: 0x0030 */ u2;
  /* 0x0098 */ struct _ETHREAD* Thread;
  /* 0x00a0 */ struct _MMPFN* LockedProtoPfn;
  /* 0x00a8 */ struct _MMPTE PteContents;
  /* 0x00b0 */ volatile long WaitCount;
  /* 0x00b4 */ volatile long InjectRetry;
  /* 0x00b8 */ unsigned long ByteCount;
  union
  {
    union
    {
      /* 0x00bc */ unsigned long ImagePteOffset;
      /* 0x00bc */ unsigned long TossPage;
    }; /* size: 0x0004 */
  } /* size: 0x0004 */ u3;
  union
  {
    union
    {
      /* 0x00c0 */ struct _MMINPAGE_FLAGS e1;
      /* 0x00c0 */ unsigned long LongFlags;
    }; /* size: 0x0004 */
  } /* size: 0x0004 */ u1;
  /* 0x00c4 */ long Padding_509;
  union
  {
    /* 0x00c8 */ struct _FILE_OBJECT* FilePointer;
    /* 0x00c8 */ struct _MMPAGING_FILE* PagingFile;
  }; /* size: 0x0008 */
  union
  {
    /* 0x00d0 */ struct _CONTROL_AREA* ControlArea;
    /* 0x00d0 */ struct _SUBSECTION* Subsection;
  }; /* size: 0x0008 */
  /* 0x00d8 */ void* Autoboost;
  /* 0x00e0 */ void* FaultingAddress;
  /* 0x00e8 */ struct _MMPTE* PointerPte;
  /* 0x00f0 */ struct _MMPTE* BasePte;
  /* 0x00f8 */ struct _MMPFN* Pfn;
  /* 0x0100 */ struct _MDL* PrefetchMdl;
  /* 0x0108 */ volatile __int64 ProbeCount;
  /* 0x0110 */ struct _MDL Mdl;
  union
  {
    /* 0x0140 */ unsigned __int64 Page[16];
    struct
    {
      /* 0x0140 */ struct _MMINPAGE_SUPPORT_FLOW_THROUGH FlowThrough;
      /* 0x0178 */ long __PADDING__[18];
    }; /* size: 0x0080 */
  }; /* size: 0x0080 */
} MMINPAGE_SUPPORT, *PMMINPAGE_SUPPORT; /* size: 0x01c0 */

typedef struct _VI_DEADLOCK_NODE
{
  /* 0x0000 */ struct _VI_DEADLOCK_NODE* Parent;
  /* 0x0008 */ struct _LIST_ENTRY ChildrenList;
  /* 0x0018 */ struct _LIST_ENTRY SiblingsList;
  union
  {
    /* 0x0028 */ struct _LIST_ENTRY ResourceList;
    /* 0x0028 */ struct _LIST_ENTRY FreeListEntry;
  }; /* size: 0x0010 */
  /* 0x0038 */ struct _VI_DEADLOCK_RESOURCE* Root;
  /* 0x0040 */ struct _VI_DEADLOCK_THREAD* ThreadEntry;
  union
  {
    union
    {
      struct /* bitfield */
      {
        /* 0x0048 */ unsigned long Active : 1; /* bit position: 0 */
        /* 0x0048 */ unsigned long OnlyTryAcquireUsed : 1; /* bit position: 1 */
        /* 0x0048 */ unsigned long ReleasedOutOfOrder : 1; /* bit position: 2 */
        /* 0x0048 */ unsigned long SequenceNumber : 29; /* bit position: 3 */
      }; /* bitfield */
      /* 0x0048 */ unsigned long Whole;
    }; /* size: 0x0004 */
  } /* size: 0x0004 */ u1;
  /* 0x004c */ long ChildrenCount;
  /* 0x0050 */ void* StackTrace[8];
  /* 0x0090 */ void* ParentStackTrace[8];
} VI_DEADLOCK_NODE, *PVI_DEADLOCK_NODE; /* size: 0x00d0 */

typedef struct _HHIVE
{
  /* 0x0000 */ unsigned long Signature;
  /* 0x0004 */ long Padding_510;
  /* 0x0008 */ void* GetCellRoutine /* function */;
  /* 0x0010 */ void* ReleaseCellRoutine /* function */;
  /* 0x0018 */ void* Allocate /* function */;
  /* 0x0020 */ void* Free /* function */;
  /* 0x0028 */ void* FileWrite /* function */;
  /* 0x0030 */ void* FileRead /* function */;
  /* 0x0038 */ void* HiveLoadFailure;
  /* 0x0040 */ struct _HBASE_BLOCK* BaseBlock;
  /* 0x0048 */ struct _CMSI_RW_LOCK FlusherLock;
  /* 0x0050 */ struct _CMSI_RW_LOCK WriterLock;
  /* 0x0058 */ struct _RTL_BITMAP DirtyVector;
  /* 0x0068 */ unsigned long DirtyCount;
  /* 0x006c */ unsigned long DirtyAlloc;
  /* 0x0070 */ struct _RTL_BITMAP UnreconciledVector;
  /* 0x0080 */ unsigned long UnreconciledCount;
  /* 0x0084 */ unsigned long BaseBlockAlloc;
  /* 0x0088 */ unsigned long Cluster;
  struct /* bitfield */
  {
    /* 0x008c */ unsigned char Flat : 1; /* bit position: 0 */
    /* 0x008c */ unsigned char ReadOnly : 1; /* bit position: 1 */
    /* 0x008c */ unsigned char Reserved : 6; /* bit position: 2 */
  }; /* bitfield */
  /* 0x008d */ unsigned char DirtyFlag;
  /* 0x008e */ char Padding_511[2];
  /* 0x0090 */ unsigned long HvBinHeadersUse;
  /* 0x0094 */ unsigned long HvFreeCellsUse;
  /* 0x0098 */ unsigned long HvUsedCellsUse;
  /* 0x009c */ unsigned long CmUsedCellsUse;
  /* 0x00a0 */ unsigned long HiveFlags;
  /* 0x00a4 */ unsigned long CurrentLog;
  /* 0x00a8 */ unsigned long CurrentLogSequence;
  /* 0x00ac */ unsigned long CurrentLogMinimumSequence;
  /* 0x00b0 */ unsigned long CurrentLogOffset;
  /* 0x00b4 */ unsigned long MinimumLogSequence;
  /* 0x00b8 */ unsigned long LogFileSizeCap;
  /* 0x00bc */ unsigned char LogDataPresent[2];
  /* 0x00be */ unsigned char PrimaryFileValid;
  /* 0x00bf */ unsigned char BaseBlockDirty;
  /* 0x00c0 */ union _LARGE_INTEGER LastLogSwapTime;
  union
  {
    struct /* bitfield */
    {
      /* 0x00c8 */ unsigned short FirstLogFile : 3; /* bit position: 0 */
      /* 0x00c8 */ unsigned short SecondLogFile : 3; /* bit position: 3 */
      /* 0x00c8 */ unsigned short HeaderRecovered : 1; /* bit position: 6 */
      /* 0x00c8 */ unsigned short LegacyRecoveryIndicated : 1; /* bit position: 7 */
      /* 0x00c8 */ unsigned short RecoveryInformationReserved : 8; /* bit position: 8 */
    }; /* bitfield */
    /* 0x00c8 */ unsigned short RecoveryInformation;
  }; /* size: 0x0002 */
  /* 0x00ca */ unsigned char LogEntriesRecovered[2];
  /* 0x00cc */ unsigned long RefreshCount;
  /* 0x00d0 */ unsigned long StorageTypeCount;
  /* 0x00d4 */ unsigned long Version;
  /* 0x00d8 */ struct _HVP_VIEW_MAP ViewMap;
  /* 0x0110 */ struct _DUAL Storage[2];
} HHIVE, *PHHIVE; /* size: 0x0600 */

typedef struct _CM_KEY_REFERENCE
{
  /* 0x0000 */ unsigned long KeyCell;
  /* 0x0004 */ long Padding_512;
  /* 0x0008 */ struct _HHIVE* KeyHive;
} CM_KEY_REFERENCE, *PCM_KEY_REFERENCE; /* size: 0x0010 */

typedef struct _CM_KEY_NODE
{
  /* 0x0000 */ unsigned short Signature;
  /* 0x0002 */ unsigned short Flags;
  /* 0x0004 */ union _LARGE_INTEGER LastWriteTime;
  /* 0x000c */ unsigned char AccessBits;
  struct /* bitfield */
  {
    /* 0x000d */ unsigned char LayerSemantics : 2; /* bit position: 0 */
    /* 0x000d */ unsigned char Spare1 : 5; /* bit position: 2 */
    /* 0x000d */ unsigned char InheritClass : 1; /* bit position: 7 */
  }; /* bitfield */
  /* 0x000e */ unsigned short Spare2;
  /* 0x0010 */ unsigned long Parent;
  /* 0x0014 */ unsigned long SubKeyCounts[2];
  union
  {
    struct
    {
      /* 0x001c */ unsigned long SubKeyLists[2];
      /* 0x0024 */ struct _CHILD_LIST ValueList;
    }; /* size: 0x0010 */
    /* 0x001c */ struct _CM_KEY_REFERENCE ChildHiveReference;
  }; /* size: 0x0010 */
  /* 0x002c */ unsigned long Security;
  /* 0x0030 */ unsigned long Class;
  struct /* bitfield */
  {
    /* 0x0034 */ unsigned long MaxNameLen : 16; /* bit position: 0 */
    /* 0x0034 */ unsigned long UserFlags : 4; /* bit position: 16 */
    /* 0x0034 */ unsigned long VirtControlFlags : 4; /* bit position: 20 */
    /* 0x0034 */ unsigned long Debug : 8; /* bit position: 24 */
  }; /* bitfield */
  /* 0x0038 */ unsigned long MaxClassLen;
  /* 0x003c */ unsigned long MaxValueNameLen;
  /* 0x0040 */ unsigned long MaxValueDataLen;
  /* 0x0044 */ unsigned long WorkVar;
  /* 0x0048 */ unsigned short NameLength;
  /* 0x004a */ unsigned short ClassLength;
  /* 0x004c */ wchar_t Name[1];
  /* 0x004e */ char __PADDING__[2];
} CM_KEY_NODE, *PCM_KEY_NODE; /* size: 0x0050 */

typedef struct _CM_KEY_VALUE
{
  /* 0x0000 */ unsigned short Signature;
  /* 0x0002 */ unsigned short NameLength;
  /* 0x0004 */ unsigned long DataLength;
  /* 0x0008 */ unsigned long Data;
  /* 0x000c */ unsigned long Type;
  /* 0x0010 */ unsigned short Flags;
  /* 0x0012 */ unsigned short Spare;
  /* 0x0014 */ wchar_t Name[1];
  /* 0x0016 */ char __PADDING__[2];
} CM_KEY_VALUE, *PCM_KEY_VALUE; /* size: 0x0018 */

typedef struct _CM_KEY_INDEX
{
  /* 0x0000 */ unsigned short Signature;
  /* 0x0002 */ unsigned short Count;
  /* 0x0004 */ unsigned long List[1];
} CM_KEY_INDEX, *PCM_KEY_INDEX; /* size: 0x0008 */

typedef struct _CM_BIG_DATA
{
  /* 0x0000 */ unsigned short Signature;
  /* 0x0002 */ unsigned short Count;
  /* 0x0004 */ unsigned long List;
} CM_BIG_DATA, *PCM_BIG_DATA; /* size: 0x0008 */

typedef union _u
{
  union
  {
    /* 0x0000 */ struct _CM_KEY_NODE KeyNode;
    /* 0x0000 */ struct _CM_KEY_VALUE KeyValue;
    /* 0x0000 */ struct _CM_KEY_SECURITY KeySecurity;
    /* 0x0000 */ struct _CM_KEY_INDEX KeyIndex;
    /* 0x0000 */ struct _CM_BIG_DATA ValueData;
    /* 0x0000 */ unsigned long KeyList[1];
    /* 0x0000 */ wchar_t KeyString[1];
  }; /* size: 0x0050 */
} u, *Pu; /* size: 0x0050 */

typedef struct _CELL_DATA
{
  /* 0x0000 */ union _u u;
} CELL_DATA, *PCELL_DATA; /* size: 0x0050 */

typedef struct _PROFILE_PARAMETER_BLOCK
{
  /* 0x0000 */ unsigned short Status;
  /* 0x0002 */ unsigned short Reserved;
  /* 0x0004 */ unsigned short DockingState;
  /* 0x0006 */ unsigned short Capabilities;
  /* 0x0008 */ unsigned long DockID;
  /* 0x000c */ unsigned long SerialNumber;
} PROFILE_PARAMETER_BLOCK, *PPROFILE_PARAMETER_BLOCK; /* size: 0x0010 */

struct CMP_OFFSET_ARRAY
{
  /* 0x0000 */ unsigned long FileOffset;
  /* 0x0004 */ long Padding_513;
  /* 0x0008 */ void* DataBuffer;
  /* 0x0010 */ unsigned long DataLength;
  /* 0x0014 */ long __PADDING__[1];
}; /* size: 0x0018 */

typedef struct _ACTIVATION_CONTEXT_STACK64
{
  /* 0x0000 */ unsigned __int64 ActiveFrame;
  /* 0x0008 */ struct LIST_ENTRY64 FrameListCache;
  /* 0x0018 */ unsigned long Flags;
  /* 0x001c */ unsigned long NextCookieSequenceNumber;
  /* 0x0020 */ unsigned long StackId;
  /* 0x0024 */ long __PADDING__[1];
} ACTIVATION_CONTEXT_STACK64, *PACTIVATION_CONTEXT_STACK64; /* size: 0x0028 */

typedef struct _GDI_TEB_BATCH64
{
  struct /* bitfield */
  {
    /* 0x0000 */ unsigned long Offset : 31; /* bit position: 0 */
    /* 0x0000 */ unsigned long HasRenderingCommand : 1; /* bit position: 31 */
  }; /* bitfield */
  /* 0x0004 */ long Padding_514;
  /* 0x0008 */ unsigned __int64 HDC;
  /* 0x0010 */ unsigned long Buffer[310];
} GDI_TEB_BATCH64, *PGDI_TEB_BATCH64; /* size: 0x04e8 */

typedef struct _TEB64
{
  /* 0x0000 */ struct _NT_TIB64 NtTib;
  /* 0x0038 */ unsigned __int64 EnvironmentPointer;
  /* 0x0040 */ struct _CLIENT_ID64 ClientId;
  /* 0x0050 */ unsigned __int64 ActiveRpcHandle;
  /* 0x0058 */ unsigned __int64 ThreadLocalStoragePointer;
  /* 0x0060 */ unsigned __int64 ProcessEnvironmentBlock;
  /* 0x0068 */ unsigned long LastErrorValue;
  /* 0x006c */ unsigned long CountOfOwnedCriticalSections;
  /* 0x0070 */ unsigned __int64 CsrClientThread;
  /* 0x0078 */ unsigned __int64 Win32ThreadInfo;
  /* 0x0080 */ unsigned long User32Reserved[26];
  /* 0x00e8 */ unsigned long UserReserved[5];
  /* 0x00fc */ long Padding_515;
  /* 0x0100 */ unsigned __int64 WOW32Reserved;
  /* 0x0108 */ unsigned long CurrentLocale;
  /* 0x010c */ unsigned long FpSoftwareStatusRegister;
  /* 0x0110 */ unsigned __int64 ReservedForDebuggerInstrumentation[16];
  /* 0x0190 */ unsigned __int64 SystemReserved1[30];
  /* 0x0280 */ char PlaceholderCompatibilityMode;
  /* 0x0281 */ unsigned char PlaceholderHydrationAlwaysExplicit;
  /* 0x0282 */ char PlaceholderReserved[10];
  /* 0x028c */ unsigned long ProxiedProcessId;
  /* 0x0290 */ struct _ACTIVATION_CONTEXT_STACK64 _ActivationStack;
  /* 0x02b8 */ unsigned char WorkingOnBehalfTicket[8];
  /* 0x02c0 */ long ExceptionCode;
  /* 0x02c4 */ unsigned char Padding0[4];
  /* 0x02c8 */ unsigned __int64 ActivationContextStackPointer;
  /* 0x02d0 */ unsigned __int64 InstrumentationCallbackSp;
  /* 0x02d8 */ unsigned __int64 InstrumentationCallbackPreviousPc;
  /* 0x02e0 */ unsigned __int64 InstrumentationCallbackPreviousSp;
  /* 0x02e8 */ unsigned long TxFsContext;
  /* 0x02ec */ unsigned char InstrumentationCallbackDisabled;
  /* 0x02ed */ unsigned char UnalignedLoadStoreExceptions;
  /* 0x02ee */ unsigned char Padding1[2];
  /* 0x02f0 */ struct _GDI_TEB_BATCH64 GdiTebBatch;
  /* 0x07d8 */ struct _CLIENT_ID64 RealClientId;
  /* 0x07e8 */ unsigned __int64 GdiCachedProcessHandle;
  /* 0x07f0 */ unsigned long GdiClientPID;
  /* 0x07f4 */ unsigned long GdiClientTID;
  /* 0x07f8 */ unsigned __int64 GdiThreadLocalInfo;
  /* 0x0800 */ unsigned __int64 Win32ClientInfo[62];
  /* 0x09f0 */ unsigned __int64 glDispatchTable[233];
  /* 0x1138 */ unsigned __int64 glReserved1[29];
  /* 0x1220 */ unsigned __int64 glReserved2;
  /* 0x1228 */ unsigned __int64 glSectionInfo;
  /* 0x1230 */ unsigned __int64 glSection;
  /* 0x1238 */ unsigned __int64 glTable;
  /* 0x1240 */ unsigned __int64 glCurrentRC;
  /* 0x1248 */ unsigned __int64 glContext;
  /* 0x1250 */ unsigned long LastStatusValue;
  /* 0x1254 */ unsigned char Padding2[4];
  /* 0x1258 */ struct _STRING64 StaticUnicodeString;
  /* 0x1268 */ wchar_t StaticUnicodeBuffer[261];
  /* 0x1472 */ unsigned char Padding3[6];
  /* 0x1478 */ unsigned __int64 DeallocationStack;
  /* 0x1480 */ unsigned __int64 TlsSlots[64];
  /* 0x1680 */ struct LIST_ENTRY64 TlsLinks;
  /* 0x1690 */ unsigned __int64 Vdm;
  /* 0x1698 */ unsigned __int64 ReservedForNtRpc;
  /* 0x16a0 */ unsigned __int64 DbgSsReserved[2];
  /* 0x16b0 */ unsigned long HardErrorMode;
  /* 0x16b4 */ unsigned char Padding4[4];
  /* 0x16b8 */ unsigned __int64 Instrumentation[11];
  /* 0x1710 */ struct _GUID ActivityId;
  /* 0x1720 */ unsigned __int64 SubProcessTag;
  /* 0x1728 */ unsigned __int64 PerflibData;
  /* 0x1730 */ unsigned __int64 EtwTraceData;
  /* 0x1738 */ unsigned __int64 WinSockData;
  /* 0x1740 */ unsigned long GdiBatchCount;
  union
  {
    /* 0x1744 */ struct _PROCESSOR_NUMBER CurrentIdealProcessor;
    /* 0x1744 */ unsigned long IdealProcessorValue;
    struct
    {
      /* 0x1744 */ unsigned char ReservedPad0;
      /* 0x1745 */ unsigned char ReservedPad1;
      /* 0x1746 */ unsigned char ReservedPad2;
      /* 0x1747 */ unsigned char IdealProcessor;
    }; /* size: 0x0004 */
  }; /* size: 0x0004 */
  /* 0x1748 */ unsigned long GuaranteedStackBytes;
  /* 0x174c */ unsigned char Padding5[4];
  /* 0x1750 */ unsigned __int64 ReservedForPerf;
  /* 0x1758 */ unsigned __int64 ReservedForOle;
  /* 0x1760 */ unsigned long WaitingOnLoaderLock;
  /* 0x1764 */ unsigned char Padding6[4];
  /* 0x1768 */ unsigned __int64 SavedPriorityState;
  /* 0x1770 */ unsigned __int64 ReservedForCodeCoverage;
  /* 0x1778 */ unsigned __int64 ThreadPoolData;
  /* 0x1780 */ unsigned __int64 TlsExpansionSlots;
  /* 0x1788 */ unsigned __int64 DeallocationBStore;
  /* 0x1790 */ unsigned __int64 BStoreLimit;
  /* 0x1798 */ unsigned long MuiGeneration;
  /* 0x179c */ unsigned long IsImpersonating;
  /* 0x17a0 */ unsigned __int64 NlsCache;
  /* 0x17a8 */ unsigned __int64 pShimData;
  /* 0x17b0 */ unsigned long HeapData;
  /* 0x17b4 */ unsigned char Padding7[4];
  /* 0x17b8 */ unsigned __int64 CurrentTransactionHandle;
  /* 0x17c0 */ unsigned __int64 ActiveFrame;
  /* 0x17c8 */ unsigned __int64 FlsData;
  /* 0x17d0 */ unsigned __int64 PreferredLanguages;
  /* 0x17d8 */ unsigned __int64 UserPrefLanguages;
  /* 0x17e0 */ unsigned __int64 MergedPrefLanguages;
  /* 0x17e8 */ unsigned long MuiImpersonation;
  union
  {
    /* 0x17ec */ volatile unsigned short CrossTebFlags;
    /* 0x17ec */ unsigned short SpareCrossTebBits : 16; /* bit position: 0 */
  }; /* size: 0x0002 */
  union
  {
    /* 0x17ee */ unsigned short SameTebFlags;
    struct /* bitfield */
    {
      /* 0x17ee */ unsigned short SafeThunkCall : 1; /* bit position: 0 */
      /* 0x17ee */ unsigned short InDebugPrint : 1; /* bit position: 1 */
      /* 0x17ee */ unsigned short HasFiberData : 1; /* bit position: 2 */
      /* 0x17ee */ unsigned short SkipThreadAttach : 1; /* bit position: 3 */
      /* 0x17ee */ unsigned short WerInShipAssertCode : 1; /* bit position: 4 */
      /* 0x17ee */ unsigned short RanProcessInit : 1; /* bit position: 5 */
      /* 0x17ee */ unsigned short ClonedThread : 1; /* bit position: 6 */
      /* 0x17ee */ unsigned short SuppressDebugMsg : 1; /* bit position: 7 */
      /* 0x17ee */ unsigned short DisableUserStackWalk : 1; /* bit position: 8 */
      /* 0x17ee */ unsigned short RtlExceptionAttached : 1; /* bit position: 9 */
      /* 0x17ee */ unsigned short InitialThread : 1; /* bit position: 10 */
      /* 0x17ee */ unsigned short SessionAware : 1; /* bit position: 11 */
      /* 0x17ee */ unsigned short LoadOwner : 1; /* bit position: 12 */
      /* 0x17ee */ unsigned short LoaderWorker : 1; /* bit position: 13 */
      /* 0x17ee */ unsigned short SkipLoaderInit : 1; /* bit position: 14 */
      /* 0x17ee */ unsigned short SpareSameTebBits : 1; /* bit position: 15 */
    }; /* bitfield */
  }; /* size: 0x0002 */
  /* 0x17f0 */ unsigned __int64 TxnScopeEnterCallback;
  /* 0x17f8 */ unsigned __int64 TxnScopeExitCallback;
  /* 0x1800 */ unsigned __int64 TxnScopeContext;
  /* 0x1808 */ unsigned long LockCount;
  /* 0x180c */ long WowTebOffset;
  /* 0x1810 */ unsigned __int64 ResourceRetValue;
  /* 0x1818 */ unsigned __int64 ReservedForWdf;
  /* 0x1820 */ unsigned __int64 ReservedForCrt;
  /* 0x1828 */ struct _GUID EffectiveContainerId;
} TEB64, *PTEB64; /* size: 0x1838 */

typedef struct _WHEAP_WORK_QUEUE
{
  /* 0x0000 */ struct _LIST_ENTRY ListHead;
  /* 0x0010 */ unsigned __int64 ListLock;
  /* 0x0018 */ volatile long ItemCount;
  /* 0x001c */ long Padding_516;
  /* 0x0020 */ struct _KDPC Dpc;
  /* 0x0060 */ struct _WORK_QUEUE_ITEM WorkItem;
  /* 0x0080 */ void* WorkRoutine /* function */;
} WHEAP_WORK_QUEUE, *PWHEAP_WORK_QUEUE; /* size: 0x0088 */

typedef struct _PLATFORM_IDLE_STATE_ACCOUNTING
{
  /* 0x0000 */ unsigned long CancelCount;
  /* 0x0004 */ unsigned long FailureCount;
  /* 0x0008 */ unsigned long SuccessCount;
  /* 0x000c */ long Padding_517;
  /* 0x0010 */ unsigned __int64 MaxTime;
  /* 0x0018 */ unsigned __int64 MinTime;
  /* 0x0020 */ unsigned __int64 TotalTime;
  /* 0x0028 */ unsigned long InvalidBucketIndex;
  /* 0x002c */ long Padding_518;
  /* 0x0030 */ struct _PPM_SELECTION_STATISTICS SelectionStatistics;
  /* 0x00b0 */ struct _PROC_IDLE_STATE_BUCKET IdleTimeBuckets[26];
} PLATFORM_IDLE_STATE_ACCOUNTING, *PPLATFORM_IDLE_STATE_ACCOUNTING; /* size: 0x03f0 */

typedef struct _PLATFORM_IDLE_ACCOUNTING
{
  /* 0x0000 */ unsigned long ResetCount;
  /* 0x0004 */ unsigned long StateCount;
  /* 0x0008 */ unsigned long DeepSleepCount;
  /* 0x000c */ enum PPM_IDLE_BUCKET_TIME_TYPE TimeUnit;
  /* 0x0010 */ unsigned __int64 StartTime;
  /* 0x0018 */ struct _PLATFORM_IDLE_STATE_ACCOUNTING State[1];
} PLATFORM_IDLE_ACCOUNTING, *PPLATFORM_IDLE_ACCOUNTING; /* size: 0x0408 */

typedef struct _CMSI_PROCESS_TUPLE
{
  /* 0x0000 */ void* ProcessHandle;
  /* 0x0008 */ void* ProcessReference;
} CMSI_PROCESS_TUPLE, *PCMSI_PROCESS_TUPLE; /* size: 0x0010 */

typedef struct _HMAP_DIRECTORY
{
  /* 0x0000 */ struct _HMAP_TABLE* Directory[1024];
} HMAP_DIRECTORY, *PHMAP_DIRECTORY; /* size: 0x2000 */

typedef struct _OBJECT_HEADER_QUOTA_INFO
{
  /* 0x0000 */ unsigned long PagedPoolCharge;
  /* 0x0004 */ unsigned long NonPagedPoolCharge;
  /* 0x0008 */ unsigned long SecurityDescriptorCharge;
  /* 0x000c */ unsigned long Reserved1;
  /* 0x0010 */ void* SecurityDescriptorQuotaBlock;
  /* 0x0018 */ unsigned __int64 Reserved2;
} OBJECT_HEADER_QUOTA_INFO, *POBJECT_HEADER_QUOTA_INFO; /* size: 0x0020 */

typedef struct _CM_KEY_SECURITY_CACHE
{
  /* 0x0000 */ unsigned long Cell;
  /* 0x0004 */ unsigned long ConvKey;
  /* 0x0008 */ struct _LIST_ENTRY List;
  /* 0x0018 */ unsigned long DescriptorLength;
  /* 0x001c */ unsigned long RealRefCount;
  /* 0x0020 */ struct _SECURITY_DESCRIPTOR_RELATIVE Descriptor;
  /* 0x0034 */ long __PADDING__[1];
} CM_KEY_SECURITY_CACHE, *PCM_KEY_SECURITY_CACHE; /* size: 0x0038 */

typedef union _CM_TRANS_PTR
{
  union
  {
    /* 0x0000 */ unsigned __int64 LightWeight : 1; /* bit position: 0 */
    /* 0x0000 */ void* TransPtr;
  }; /* size: 0x0008 */
} CM_TRANS_PTR, *PCM_TRANS_PTR; /* size: 0x0008 */

typedef struct _CM_KEY_BODY
{
  /* 0x0000 */ unsigned long Type;
  /* 0x0004 */ unsigned short AccessCheckedLayerHeight;
  /* 0x0006 */ char Padding_519[2];
  /* 0x0008 */ struct _CM_KEY_CONTROL_BLOCK* KeyControlBlock;
  /* 0x0010 */ struct _CM_NOTIFY_BLOCK* NotifyBlock;
  /* 0x0018 */ void* ProcessID;
  /* 0x0020 */ struct _LIST_ENTRY KeyBodyList;
  struct /* bitfield */
  {
    /* 0x0030 */ unsigned long Flags : 16; /* bit position: 0 */
    /* 0x0030 */ unsigned long HandleTags : 16; /* bit position: 16 */
  }; /* bitfield */
  /* 0x0034 */ long Padding_520;
  /* 0x0038 */ union _CM_TRANS_PTR Trans;
  /* 0x0040 */ struct _GUID* KtmUow;
  /* 0x0048 */ struct _LIST_ENTRY ContextListHead;
  /* 0x0058 */ void* EnumerationResumeContext;
  /* 0x0060 */ unsigned long RestrictedAccessMask;
  /* 0x0064 */ long __PADDING__[1];
} CM_KEY_BODY, *PCM_KEY_BODY; /* size: 0x0068 */

typedef struct _CM_NOTIFY_BLOCK
{
  /* 0x0000 */ struct _LIST_ENTRY HiveList;
  /* 0x0010 */ struct _LIST_ENTRY PostList;
  /* 0x0020 */ struct _CM_KEY_CONTROL_BLOCK* KeyControlBlock;
  /* 0x0028 */ struct _CM_KEY_BODY* KeyBody;
  struct /* bitfield */
  {
    /* 0x0030 */ unsigned long Filter : 30; /* bit position: 0 */
    /* 0x0030 */ unsigned long WatchTree : 1; /* bit position: 30 */
    /* 0x0030 */ unsigned long NotifyPending : 1; /* bit position: 31 */
  }; /* bitfield */
  /* 0x0034 */ long Padding_521;
  /* 0x0038 */ struct _SECURITY_SUBJECT_CONTEXT SubjectContext;
} CM_NOTIFY_BLOCK, *PCM_NOTIFY_BLOCK; /* size: 0x0058 */

typedef struct _OBJECT_HEADER_CREATOR_INFO
{
  /* 0x0000 */ struct _LIST_ENTRY TypeList;
  /* 0x0010 */ void* CreatorUniqueProcess;
  /* 0x0018 */ unsigned short CreatorBackTraceIndex;
  /* 0x001a */ unsigned short Reserved1;
  /* 0x001c */ unsigned long Reserved2;
} OBJECT_HEADER_CREATOR_INFO, *POBJECT_HEADER_CREATOR_INFO; /* size: 0x0020 */

typedef struct _CM_TRANS
{
  /* 0x0000 */ struct _LIST_ENTRY TransactionListEntry;
  /* 0x0010 */ struct _LIST_ENTRY KCBUoWListHead;
  /* 0x0020 */ struct _LIST_ENTRY LazyCommitListEntry;
  union
  {
    struct /* bitfield */
    {
      /* 0x0030 */ unsigned long Prepared : 1; /* bit position: 0 */
      /* 0x0030 */ unsigned long Aborted : 1; /* bit position: 1 */
      /* 0x0030 */ unsigned long Committed : 1; /* bit position: 2 */
      /* 0x0030 */ unsigned long Initializing : 1; /* bit position: 3 */
      /* 0x0030 */ unsigned long Invalid : 1; /* bit position: 4 */
      /* 0x0030 */ unsigned long UseReservation : 1; /* bit position: 5 */
      /* 0x0030 */ unsigned long TmCallbacksActive : 1; /* bit position: 6 */
      /* 0x0030 */ unsigned long LightWeight : 1; /* bit position: 7 */
      /* 0x0030 */ unsigned long Freed1 : 1; /* bit position: 8 */
      /* 0x0030 */ unsigned long Freed2 : 1; /* bit position: 9 */
      /* 0x0030 */ unsigned long Spare1 : 2; /* bit position: 10 */
      /* 0x0030 */ unsigned long Freed : 1; /* bit position: 12 */
      /* 0x0030 */ unsigned long Spare : 19; /* bit position: 13 */
    }; /* bitfield */
    /* 0x0030 */ unsigned long TransState;
  }; /* size: 0x0004 */
  /* 0x0034 */ long Padding_522;
  /* 0x0038 */ union _CM_TRANS_PTR Trans;
  /* 0x0040 */ struct _CM_RM* CmRm;
  /* 0x0048 */ struct _KENLISTMENT* KtmEnlistmentObject;
  /* 0x0050 */ void* KtmEnlistmentHandle;
  /* 0x0058 */ struct _GUID KtmUow;
  /* 0x0068 */ unsigned __int64 StartLsn;
  /* 0x0070 */ unsigned long HiveCount;
  /* 0x0074 */ long Padding_523;
  /* 0x0078 */ struct _CMHIVE* HiveArray[8];
} CM_TRANS, *PCM_TRANS; /* size: 0x00b8 */

typedef struct _CM_RM
{
  /* 0x0000 */ struct _LIST_ENTRY RmListEntry;
  /* 0x0010 */ struct _LIST_ENTRY TransactionListHead;
  /* 0x0020 */ void* TmHandle;
  /* 0x0028 */ void* Tm;
  /* 0x0030 */ void* RmHandle;
  /* 0x0038 */ void* KtmRm;
  /* 0x0040 */ unsigned long RefCount;
  /* 0x0044 */ unsigned long ContainerNum;
  /* 0x0048 */ unsigned __int64 ContainerSize;
  /* 0x0050 */ struct _CMHIVE* CmHive;
  /* 0x0058 */ void* LogFileObject;
  /* 0x0060 */ void* MarshallingContext;
  /* 0x0068 */ unsigned long RmFlags;
  /* 0x006c */ long LogStartStatus1;
  /* 0x0070 */ long LogStartStatus2;
  /* 0x0074 */ long Padding_524;
  /* 0x0078 */ unsigned __int64 BaseLsn;
  /* 0x0080 */ struct _ERESOURCE* RmLock;
} CM_RM, *PCM_RM; /* size: 0x0088 */

typedef struct _PO_DEVICE_NOTIFY_ORDER
{
  /* 0x0000 */ unsigned char Locked;
  /* 0x0001 */ char Padding_525[7];
  /* 0x0008 */ struct _DEVICE_OBJECT** WarmEjectPdoPointer;
  /* 0x0010 */ struct _PO_NOTIFY_ORDER_LEVEL OrderLevel[5];
  /* 0x0178 */ unsigned long Flags;
  /* 0x017c */ long __PADDING__[1];
} PO_DEVICE_NOTIFY_ORDER, *PPO_DEVICE_NOTIFY_ORDER; /* size: 0x0180 */

typedef struct _CMHIVE
{
  /* 0x0000 */ struct _HHIVE Hive;
  /* 0x0600 */ void* FileHandles[6];
  /* 0x0630 */ struct _LIST_ENTRY NotifyList;
  /* 0x0640 */ struct _LIST_ENTRY HiveList;
  /* 0x0650 */ struct _LIST_ENTRY PreloadedHiveList;
  /* 0x0660 */ struct _EX_RUNDOWN_REF HiveRundown;
  /* 0x0668 */ struct _CM_KEY_HASH_TABLE_ENTRY* KcbCacheTable;
  /* 0x0670 */ unsigned long KcbCacheTableSize;
  /* 0x0674 */ long Padding_526;
  /* 0x0678 */ struct _CM_KEY_HASH_TABLE_ENTRY* DeletedKcbTable;
  /* 0x0680 */ unsigned long DeletedKcbTableSize;
  /* 0x0684 */ unsigned long Identity;
  /* 0x0688 */ struct _CMSI_RW_LOCK HiveLock;
  /* 0x0690 */ struct _RTL_BITMAP FlushDirtyVector;
  /* 0x06a0 */ unsigned long FlushDirtyVectorSize;
  /* 0x06a4 */ long Padding_527;
  /* 0x06a8 */ struct CMP_OFFSET_ARRAY* FlushLogEntryOffsetArray;
  /* 0x06b0 */ unsigned long FlushLogEntryOffsetArrayCount;
  /* 0x06b4 */ unsigned long FlushLogEntrySize;
  /* 0x06b8 */ unsigned long FlushHiveTruncated;
  /* 0x06bc */ unsigned char FlushBaseBlockDirty;
  /* 0x06bd */ char Padding_528[3];
  /* 0x06c0 */ struct _RTL_BITMAP CapturedUnreconciledVector;
  /* 0x06d0 */ unsigned long CapturedUnreconciledVectorSize;
  /* 0x06d4 */ long Padding_529;
  /* 0x06d8 */ struct CMP_OFFSET_ARRAY* UnreconciledOffsetArray;
  /* 0x06e0 */ unsigned long UnreconciledOffsetArrayCount;
  /* 0x06e4 */ long Padding_530;
  /* 0x06e8 */ struct _HBASE_BLOCK* UnreconciledBaseBlock;
  /* 0x06f0 */ struct _EX_PUSH_LOCK SecurityLock;
  /* 0x06f8 */ unsigned long LastShrinkHiveSize;
  /* 0x06fc */ long Padding_531;
  /* 0x0700 */ union _LARGE_INTEGER ActualFileSize;
  /* 0x0708 */ union _LARGE_INTEGER LogFileSizes[2];
  /* 0x0718 */ struct _UNICODE_STRING FileFullPath;
  /* 0x0728 */ struct _UNICODE_STRING FileUserName;
  /* 0x0738 */ struct _UNICODE_STRING HiveRootPath;
  /* 0x0748 */ unsigned long SecurityCount;
  /* 0x074c */ unsigned long SecurityCacheSize;
  /* 0x0750 */ long SecurityHitHint;
  /* 0x0754 */ long Padding_532;
  /* 0x0758 */ struct _CM_KEY_SECURITY_CACHE_ENTRY* SecurityCache;
  /* 0x0760 */ struct _LIST_ENTRY SecurityHash[64];
  /* 0x0b60 */ unsigned long UnloadEventCount;
  /* 0x0b64 */ long Padding_533;
  /* 0x0b68 */ struct _KEVENT** UnloadEventArray;
  /* 0x0b70 */ struct _CM_KEY_CONTROL_BLOCK* RootKcb;
  /* 0x0b78 */ unsigned char Frozen;
  /* 0x0b79 */ char Padding_534[7];
  /* 0x0b80 */ struct _CM_WORKITEM* UnloadWorkItem;
  /* 0x0b88 */ struct _CM_WORKITEM UnloadWorkItemHolder;
  /* 0x0bb0 */ struct _CM_DIRTY_VECTOR_LOG DirtyVectorLog;
  /* 0x1038 */ unsigned long Flags;
  /* 0x103c */ long Padding_535;
  /* 0x1040 */ struct _LIST_ENTRY TrustClassEntry;
  /* 0x1050 */ unsigned __int64 DirtyTime;
  /* 0x1058 */ unsigned __int64 UnreconciledTime;
  /* 0x1060 */ struct _CM_RM* CmRm;
  /* 0x1068 */ unsigned long CmRmInitFailPoint;
  /* 0x106c */ long CmRmInitFailStatus;
  /* 0x1070 */ struct _KTHREAD* CreatorOwner;
  /* 0x1078 */ struct _KTHREAD* RundownThread;
  /* 0x1080 */ union _LARGE_INTEGER LastWriteTime;
  /* 0x1088 */ struct _HIVE_WRITE_WAIT_QUEUE FlushQueue;
  /* 0x1098 */ struct _HIVE_WRITE_WAIT_QUEUE ReconcileQueue;
  union
  {
    /* 0x10a8 */ unsigned long FlushFlags;
    struct /* bitfield */
    {
      /* 0x10a8 */ unsigned long PrimaryFilePurged : 1; /* bit position: 0 */
      /* 0x10a8 */ unsigned long DiskFileBad : 1; /* bit position: 1 */
    }; /* bitfield */
  }; /* size: 0x0004 */
  /* 0x10ac */ unsigned long PrimaryFileSizeBeforeLastFlush;
  /* 0x10b0 */ volatile long ReferenceCount;
  /* 0x10b4 */ long UnloadHistoryIndex;
  /* 0x10b8 */ unsigned long UnloadHistory[128];
  /* 0x12b8 */ unsigned long BootStart;
  /* 0x12bc */ unsigned long UnaccessedStart;
  /* 0x12c0 */ unsigned long UnaccessedEnd;
  /* 0x12c4 */ unsigned long LoadedKeyCount;
  /* 0x12c8 */ volatile unsigned long HandleClosePending;
  /* 0x12cc */ long Padding_536;
  /* 0x12d0 */ struct _EX_PUSH_LOCK HandleClosePendingEvent;
  /* 0x12d8 */ unsigned char FinalFlushSucceeded;
  /* 0x12d9 */ char Padding_537[7];
  /* 0x12e0 */ struct _CMP_VOLUME_CONTEXT* VolumeContext;
} CMHIVE, *PCMHIVE; /* size: 0x12e8 */

typedef struct _CM_KEY_HASH_TABLE_ENTRY
{
  /* 0x0000 */ struct _EX_PUSH_LOCK Lock;
  /* 0x0008 */ struct _KTHREAD* Owner;
  /* 0x0010 */ struct _CM_KEY_HASH* Entry;
} CM_KEY_HASH_TABLE_ENTRY, *PCM_KEY_HASH_TABLE_ENTRY; /* size: 0x0018 */

typedef struct _MCGEN_TRACE_CONTEXT
{
  /* 0x0000 */ unsigned __int64 RegistrationHandle;
  /* 0x0008 */ unsigned __int64 Logger;
  /* 0x0010 */ unsigned __int64 MatchAnyKeyword;
  /* 0x0018 */ unsigned __int64 MatchAllKeyword;
  /* 0x0020 */ unsigned long Flags;
  /* 0x0024 */ unsigned long IsEnabled;
  /* 0x0028 */ unsigned char Level;
  /* 0x0029 */ unsigned char Reserve;
  /* 0x002a */ unsigned short EnableBitsCount;
  /* 0x002c */ long Padding_538;
  /* 0x0030 */ unsigned long* EnableBitMask;
  /* 0x0038 */ const unsigned __int64* EnableKeyWords;
  /* 0x0040 */ const unsigned char* EnableLevel;
} MCGEN_TRACE_CONTEXT, *PMCGEN_TRACE_CONTEXT; /* size: 0x0048 */

typedef struct _SEP_TOKEN_PRIVILEGES
{
  /* 0x0000 */ unsigned __int64 Present;
  /* 0x0008 */ unsigned __int64 Enabled;
  /* 0x0010 */ unsigned __int64 EnabledByDefault;
} SEP_TOKEN_PRIVILEGES, *PSEP_TOKEN_PRIVILEGES; /* size: 0x0018 */

typedef struct _KRESOURCEMANAGER
{
  /* 0x0000 */ struct _KEVENT NotificationAvailable;
  /* 0x0018 */ unsigned long cookie;
  /* 0x001c */ enum _KRESOURCEMANAGER_STATE State;
  /* 0x0020 */ unsigned long Flags;
  /* 0x0024 */ long Padding_539;
  /* 0x0028 */ struct _KMUTANT Mutex;
  /* 0x0060 */ struct _KTMOBJECT_NAMESPACE_LINK NamespaceLink;
  /* 0x0088 */ struct _GUID RmId;
  /* 0x0098 */ struct _KQUEUE NotificationQueue;
  /* 0x00d8 */ struct _KMUTANT NotificationMutex;
  /* 0x0110 */ struct _LIST_ENTRY EnlistmentHead;
  /* 0x0120 */ unsigned long EnlistmentCount;
  /* 0x0124 */ long Padding_540;
  /* 0x0128 */ void* NotificationRoutine /* function */;
  /* 0x0130 */ void* Key;
  /* 0x0138 */ struct _LIST_ENTRY ProtocolListHead;
  /* 0x0148 */ struct _LIST_ENTRY PendingPropReqListHead;
  /* 0x0158 */ struct _LIST_ENTRY CRMListEntry;
  /* 0x0168 */ struct _KTM* Tm;
  /* 0x0170 */ struct _UNICODE_STRING Description;
  /* 0x0180 */ struct _KTMOBJECT_NAMESPACE Enlistments;
  /* 0x0228 */ struct _KRESOURCEMANAGER_COMPLETION_BINDING CompletionBinding;
} KRESOURCEMANAGER, *PKRESOURCEMANAGER; /* size: 0x0250 */

typedef struct _PCW_REGISTRATION_INFORMATION
{
  /* 0x0000 */ unsigned long Version;
  /* 0x0004 */ long Padding_541;
  /* 0x0008 */ const struct _UNICODE_STRING* Name;
  /* 0x0010 */ unsigned long CounterCount;
  /* 0x0014 */ long Padding_542;
  /* 0x0018 */ struct _PCW_COUNTER_DESCRIPTOR* Counters;
  /* 0x0020 */ void* Callback /* function */;
  /* 0x0028 */ void* CallbackContext;
} PCW_REGISTRATION_INFORMATION, *PPCW_REGISTRATION_INFORMATION; /* size: 0x0030 */

typedef struct _ETW_LOGGER_HANDLE
{
  /* 0x0000 */ unsigned char DereferenceAndLeave;
} ETW_LOGGER_HANDLE, *PETW_LOGGER_HANDLE; /* size: 0x0001 */

typedef struct _PCW_MASK_INFORMATION
{
  /* 0x0000 */ unsigned __int64 CounterMask;
  /* 0x0008 */ const struct _UNICODE_STRING* InstanceMask;
  /* 0x0010 */ unsigned long InstanceId;
  /* 0x0014 */ unsigned char CollectMultiple;
  /* 0x0015 */ char Padding_543[3];
  /* 0x0018 */ struct _PCW_BUFFER* Buffer;
  /* 0x0020 */ struct _KEVENT* CancelEvent;
} PCW_MASK_INFORMATION, *PPCW_MASK_INFORMATION; /* size: 0x0028 */

typedef union _PCW_CALLBACK_INFORMATION
{
  union
  {
    /* 0x0000 */ struct _PCW_COUNTER_INFORMATION AddCounter;
    /* 0x0000 */ struct _PCW_COUNTER_INFORMATION RemoveCounter;
    /* 0x0000 */ struct _PCW_MASK_INFORMATION EnumerateInstances;
    /* 0x0000 */ struct _PCW_MASK_INFORMATION CollectData;
  }; /* size: 0x0028 */
} PCW_CALLBACK_INFORMATION, *PPCW_CALLBACK_INFORMATION; /* size: 0x0028 */

typedef struct _TRIAGE_PNP_DEVICE_COMPLETION_QUEUE
{
  /* 0x0000 */ struct _LIST_ENTRY DispatchedList;
} TRIAGE_PNP_DEVICE_COMPLETION_QUEUE, *PTRIAGE_PNP_DEVICE_COMPLETION_QUEUE; /* size: 0x0010 */

typedef struct _TRIAGE_9F_PNP
{
  /* 0x0000 */ unsigned short Signature;
  /* 0x0002 */ unsigned short Revision;
  /* 0x0004 */ long Padding_544;
  /* 0x0008 */ struct _TRIAGE_PNP_DEVICE_COMPLETION_QUEUE* CompletionQueue;
  /* 0x0010 */ struct _TRIAGE_EX_WORK_QUEUE* DelayedWorkQueue;
  /* 0x0018 */ struct _TRIAGE_EX_WORK_QUEUE* DelayedIoWorkQueue;
} TRIAGE_9F_PNP, *PTRIAGE_9F_PNP; /* size: 0x0020 */

typedef struct _NON_PAGED_DEBUG_INFO
{
  /* 0x0000 */ unsigned short Signature;
  /* 0x0002 */ unsigned short Flags;
  /* 0x0004 */ unsigned long Size;
  /* 0x0008 */ unsigned short Machine;
  /* 0x000a */ unsigned short Characteristics;
  /* 0x000c */ unsigned long TimeDateStamp;
  /* 0x0010 */ unsigned long CheckSum;
  /* 0x0014 */ unsigned long SizeOfImage;
  /* 0x0018 */ unsigned __int64 ImageBase;
} NON_PAGED_DEBUG_INFO, *PNON_PAGED_DEBUG_INFO; /* size: 0x0020 */

typedef struct _KTRANSACTION
{
  /* 0x0000 */ struct _KEVENT OutcomeEvent;
  /* 0x0018 */ unsigned long cookie;
  /* 0x001c */ long Padding_545;
  /* 0x0020 */ struct _KMUTANT Mutex;
  /* 0x0058 */ struct _KTRANSACTION* TreeTx;
  /* 0x0060 */ struct _KTMOBJECT_NAMESPACE_LINK GlobalNamespaceLink;
  /* 0x0088 */ struct _KTMOBJECT_NAMESPACE_LINK TmNamespaceLink;
  /* 0x00b0 */ struct _GUID UOW;
  /* 0x00c0 */ enum _KTRANSACTION_STATE State;
  /* 0x00c4 */ unsigned long Flags;
  /* 0x00c8 */ struct _LIST_ENTRY EnlistmentHead;
  /* 0x00d8 */ unsigned long EnlistmentCount;
  /* 0x00dc */ unsigned long RecoverableEnlistmentCount;
  /* 0x00e0 */ unsigned long PrePrepareRequiredEnlistmentCount;
  /* 0x00e4 */ unsigned long PrepareRequiredEnlistmentCount;
  /* 0x00e8 */ unsigned long OutcomeRequiredEnlistmentCount;
  /* 0x00ec */ unsigned long PendingResponses;
  /* 0x00f0 */ struct _KENLISTMENT* SuperiorEnlistment;
  /* 0x00f8 */ union _CLS_LSN LastLsn;
  /* 0x0100 */ struct _LIST_ENTRY PromotedEntry;
  /* 0x0110 */ struct _KTRANSACTION* PromoterTransaction;
  /* 0x0118 */ void* PromotePropagation;
  /* 0x0120 */ unsigned long IsolationLevel;
  /* 0x0124 */ unsigned long IsolationFlags;
  /* 0x0128 */ union _LARGE_INTEGER Timeout;
  /* 0x0130 */ struct _UNICODE_STRING Description;
  /* 0x0140 */ struct _KTHREAD* RollbackThread;
  /* 0x0148 */ struct _WORK_QUEUE_ITEM RollbackWorkItem;
  /* 0x0168 */ struct _KDPC RollbackDpc;
  /* 0x01a8 */ struct _KTIMER RollbackTimer;
  /* 0x01e8 */ struct _LIST_ENTRY LsnOrderedEntry;
  /* 0x01f8 */ enum _KTRANSACTION_OUTCOME Outcome;
  /* 0x01fc */ long Padding_546;
  /* 0x0200 */ struct _KTM* Tm;
  /* 0x0208 */ __int64 CommitReservation;
  /* 0x0210 */ struct _KTRANSACTION_HISTORY TransactionHistory[10];
  /* 0x0260 */ unsigned long TransactionHistoryCount;
  /* 0x0264 */ long Padding_547;
  /* 0x0268 */ void* DTCPrivateInformation;
  /* 0x0270 */ unsigned long DTCPrivateInformationLength;
  /* 0x0274 */ long Padding_548;
  /* 0x0278 */ struct _KMUTANT DTCPrivateInformationMutex;
  /* 0x02b0 */ void* PromotedTxSelfHandle;
  /* 0x02b8 */ unsigned long PendingPromotionCount;
  /* 0x02bc */ long Padding_549;
  /* 0x02c0 */ struct _KEVENT PromotionCompletedEvent;
} KTRANSACTION, *PKTRANSACTION; /* size: 0x02d8 */

typedef struct _MM_SYSTEM_PAGE_COUNTS
{
  /* 0x0000 */ unsigned long SystemCodePage;
  /* 0x0004 */ unsigned long SystemDriverPage;
  /* 0x0008 */ long TotalSystemCodePages;
  /* 0x000c */ long TotalSystemDriverPages;
} MM_SYSTEM_PAGE_COUNTS, *PMM_SYSTEM_PAGE_COUNTS; /* size: 0x0010 */

typedef struct _MI_SYSTEM_IMAGE_STATE
{
  /* 0x0000 */ struct _LIST_ENTRY FixupList;
  /* 0x0010 */ struct _EX_PUSH_LOCK LoadLock;
  /* 0x0018 */ struct _ETHREAD* LoadLockOwner;
  /* 0x0020 */ unsigned long LoadLockCount;
  /* 0x0024 */ volatile long FixupLock;
  /* 0x0028 */ unsigned char FirstLoadEver;
  /* 0x0029 */ unsigned char LargePageAll;
  /* 0x002a */ char Padding_550[6];
  /* 0x0030 */ unsigned __int64 LastPage;
  /* 0x0038 */ struct _LIST_ENTRY LargePageList;
  /* 0x0048 */ struct _LIST_ENTRY StrongCodeLoadFailureList;
  /* 0x0058 */ struct _KLDR_DATA_TABLE_ENTRY* SystemBase[1];
  /* 0x0060 */ struct _KLDR_DATA_TABLE_ENTRY* BeingDeleted;
  /* 0x0068 */ struct _EX_PUSH_LOCK MappingRangesPushLock;
  /* 0x0070 */ struct _MI_DRIVER_VA* MappingRanges[2];
  /* 0x0080 */ unsigned __int64 PageCount;
  /* 0x0088 */ struct _MM_SYSTEM_PAGE_COUNTS PageCounts;
  /* 0x0098 */ struct _EX_PUSH_LOCK CollidedLock;
  /* 0x00a0 */ struct _RTL_AVL_TREE ImageTree;
} MI_SYSTEM_IMAGE_STATE, *PMI_SYSTEM_IMAGE_STATE; /* size: 0x00a8 */

typedef struct _CACHED_KSTACK_LIST
{
  /* 0x0000 */ union _SLIST_HEADER SListHead;
  /* 0x0010 */ long MinimumFree;
  /* 0x0014 */ unsigned long Misses;
  /* 0x0018 */ unsigned long MissesLast;
  /* 0x001c */ unsigned long AllStacksInUse;
} CACHED_KSTACK_LIST, *PCACHED_KSTACK_LIST; /* size: 0x0020 */

typedef struct _MI_DYNAMIC_BITMAP
{
  /* 0x0000 */ struct _RTL_BITMAP_EX Bitmap;
  /* 0x0010 */ unsigned __int64 MaximumSize;
  /* 0x0018 */ unsigned __int64 Hint;
  /* 0x0020 */ void* BaseVa;
  /* 0x0028 */ unsigned __int64 SizeTopDown;
  /* 0x0030 */ unsigned __int64 HintTopDown;
  /* 0x0038 */ void* BaseVaTopDown;
  /* 0x0040 */ unsigned __int64 SpinLock;
} MI_DYNAMIC_BITMAP, *PMI_DYNAMIC_BITMAP; /* size: 0x0048 */

typedef struct _MI_SYSTEM_NODE_INFORMATION
{
  /* 0x0000 */ struct _CACHED_KSTACK_LIST CachedKernelStacks[2];
  /* 0x0040 */ struct _MI_DYNAMIC_BITMAP DynamicBitMapNonPagedPool;
  /* 0x0088 */ unsigned __int64 CachedNonPagedPoolCount;
  /* 0x0090 */ unsigned __int64 NonPagedPoolSpinLock;
  /* 0x0098 */ struct _MMPFN* CachedNonPagedPool;
  /* 0x00a0 */ void* NonPagedPoolFirstVa;
  /* 0x00a8 */ void* NonPagedPoolLastVa;
} MI_SYSTEM_NODE_INFORMATION, *PMI_SYSTEM_NODE_INFORMATION; /* size: 0x00b0 */

typedef struct _VF_TARGET_VERIFIED_DRIVER_DATA
{
  /* 0x0000 */ struct _VF_SUSPECT_DRIVER_ENTRY* SuspectDriverEntry;
  /* 0x0008 */ void* WMICallback;
  /* 0x0010 */ struct _LIST_ENTRY EtwHandlesListHead;
  union
  {
    union
    {
      struct
      {
        struct /* bitfield */
        {
          /* 0x0020 */ unsigned long MissedEtwRegistration : 1; /* bit position: 0 */
          /* 0x0020 */ unsigned long IsBootDriver : 1; /* bit position: 1 */
          /* 0x0020 */ unsigned long Spare : 30; /* bit position: 2 */
        }; /* bitfield */
      } /* size: 0x0004 */ Flags;
      /* 0x0020 */ unsigned long Whole;
    }; /* size: 0x0004 */
  } /* size: 0x0004 */ u1;
  /* 0x0024 */ long Padding_551;
  /* 0x0028 */ unsigned __int64 Signature;
  /* 0x0030 */ unsigned char SeSigningLevel;
  /* 0x0031 */ char Padding_552[15];
  /* 0x0040 */ union _SLIST_HEADER PoolPageHeaders;
  /* 0x0050 */ union _SLIST_HEADER PoolTrackers;
  /* 0x0060 */ void** DifPluginData;
  /* 0x0068 */ volatile unsigned long CurrentPagedPoolAllocations;
  /* 0x006c */ volatile unsigned long CurrentNonPagedPoolAllocations;
  /* 0x0070 */ unsigned long PeakPagedPoolAllocations;
  /* 0x0074 */ unsigned long PeakNonPagedPoolAllocations;
  /* 0x0078 */ volatile unsigned __int64 PagedBytes;
  /* 0x0080 */ volatile unsigned __int64 NonPagedBytes;
  /* 0x0088 */ unsigned __int64 PeakPagedBytes;
  /* 0x0090 */ unsigned __int64 PeakNonPagedBytes;
  /* 0x0098 */ unsigned long RaiseIrqls;
  /* 0x009c */ unsigned long AcquireSpinLocks;
  /* 0x00a0 */ unsigned long SynchronizeExecutions;
  /* 0x00a4 */ unsigned long AllocationsWithNoTag;
  /* 0x00a8 */ unsigned long AllocationsFailed;
  /* 0x00ac */ unsigned long AllocationsFailedDeliberately;
  /* 0x00b0 */ unsigned __int64 LockedBytes;
  /* 0x00b8 */ unsigned __int64 PeakLockedBytes;
  /* 0x00c0 */ unsigned __int64 MappedLockedBytes;
  /* 0x00c8 */ unsigned __int64 PeakMappedLockedBytes;
  /* 0x00d0 */ unsigned __int64 MappedIoSpaceBytes;
  /* 0x00d8 */ unsigned __int64 PeakMappedIoSpaceBytes;
  /* 0x00e0 */ unsigned __int64 PagesForMdlBytes;
  /* 0x00e8 */ unsigned __int64 PeakPagesForMdlBytes;
  /* 0x00f0 */ unsigned __int64 ContiguousMemoryBytes;
  /* 0x00f8 */ unsigned __int64 PeakContiguousMemoryBytes;
  /* 0x0100 */ struct _LIST_ENTRY ContiguousMemoryListHead;
  /* 0x0110 */ volatile unsigned long ExecutePoolTypes;
  /* 0x0114 */ volatile unsigned long ExecutePageProtections;
  /* 0x0118 */ volatile unsigned long ExecutePageMappings;
  /* 0x011c */ volatile unsigned long ExecuteWriteSections;
  /* 0x0120 */ volatile unsigned long SectionAlignmentFailures;
  /* 0x0124 */ volatile unsigned long IATInExecutableSection;
  /* 0x0128 */ long __PADDING__[2];
} VF_TARGET_VERIFIED_DRIVER_DATA, *PVF_TARGET_VERIFIED_DRIVER_DATA; /* size: 0x0130 */

typedef struct _CM_UOW_KEY_STATE_MODIFICATION
{
  /* 0x0000 */ unsigned long RefCount;
  /* 0x0004 */ unsigned long SubKeyListCount[2];
  /* 0x000c */ unsigned long NewSubKeyList[2];
} CM_UOW_KEY_STATE_MODIFICATION, *PCM_UOW_KEY_STATE_MODIFICATION; /* size: 0x0014 */

struct tagSWITCH_CONTEXT_ATTRIBUTE
{
  /* 0x0000 */ unsigned __int64 ulContextUpdateCounter;
  /* 0x0008 */ int fAllowContextUpdate;
  /* 0x000c */ int fEnableTrace;
  /* 0x0010 */ unsigned __int64 EtwHandle;
}; /* size: 0x0018 */

struct tagSWITCH_CONTEXT
{
  /* 0x0000 */ struct tagSWITCH_CONTEXT_ATTRIBUTE Attribute;
  /* 0x0018 */ struct tagSWITCH_CONTEXT_DATA Data;
}; /* size: 0x0358 */

typedef struct _DELAY_ACK_FO
{
  /* 0x0000 */ struct _LIST_ENTRY Links;
  /* 0x0010 */ struct _FILE_OBJECT* OriginalFileObject;
} DELAY_ACK_FO, *PDELAY_ACK_FO; /* size: 0x0018 */

typedef struct _DEVICE_DATA_SET_RANGE
{
  /* 0x0000 */ __int64 StartingOffset;
  /* 0x0008 */ unsigned __int64 LengthInBytes;
} DEVICE_DATA_SET_RANGE, *PDEVICE_DATA_SET_RANGE; /* size: 0x0010 */

struct SYSTEM_POWER_LEVEL
{
  /* 0x0000 */ unsigned char Enable;
  /* 0x0001 */ unsigned char Spare[3];
  /* 0x0004 */ unsigned long BatteryLevel;
  /* 0x0008 */ struct POWER_ACTION_POLICY PowerPolicy;
  /* 0x0014 */ enum _SYSTEM_POWER_STATE MinSystemState;
}; /* size: 0x0018 */

typedef struct _POP_IRP_WORKER_ENTRY
{
  /* 0x0000 */ struct _LIST_ENTRY Link;
  /* 0x0010 */ struct _ETHREAD* Thread;
  /* 0x0018 */ struct _IRP* Irp;
  /* 0x0020 */ struct _DEVICE_OBJECT* Device;
  /* 0x0028 */ unsigned char Static;
  /* 0x0029 */ char __PADDING__[7];
} POP_IRP_WORKER_ENTRY, *PPOP_IRP_WORKER_ENTRY; /* size: 0x0030 */

typedef struct _PNP_RESOURCE_REQUEST
{
  /* 0x0000 */ struct _DEVICE_OBJECT* PhysicalDevice;
  /* 0x0008 */ unsigned long Flags;
  /* 0x000c */ enum _ARBITER_REQUEST_SOURCE AllocationType;
  /* 0x0010 */ unsigned long Priority;
  /* 0x0014 */ unsigned long Position;
  /* 0x0018 */ struct _IO_RESOURCE_REQUIREMENTS_LIST* ResourceRequirements;
  /* 0x0020 */ void* ReqList;
  /* 0x0028 */ struct _CM_RESOURCE_LIST* ResourceAssignment;
  /* 0x0030 */ struct _CM_RESOURCE_LIST* TranslatedResourceAssignment;
  /* 0x0038 */ long Status;
  /* 0x003c */ long __PADDING__[1];
} PNP_RESOURCE_REQUEST, *PPNP_RESOURCE_REQUEST; /* size: 0x0040 */

typedef struct _HCELL
{
  /* 0x0000 */ long Size;
  union
  {
    struct
    {
      union
      {
        union
        {
          /* 0x0004 */ unsigned long UserData;
          /* 0x0004 */ unsigned long Next;
        }; /* size: 0x0004 */
      } /* size: 0x0004 */ u;
    } /* size: 0x0004 */ NewCell;
  } /* size: 0x0004 */ u;
} HCELL, *PHCELL; /* size: 0x0008 */

typedef struct _IMAGE_ROM_OPTIONAL_HEADER
{
  /* 0x0000 */ unsigned short Magic;
  /* 0x0002 */ unsigned char MajorLinkerVersion;
  /* 0x0003 */ unsigned char MinorLinkerVersion;
  /* 0x0004 */ unsigned long SizeOfCode;
  /* 0x0008 */ unsigned long SizeOfInitializedData;
  /* 0x000c */ unsigned long SizeOfUninitializedData;
  /* 0x0010 */ unsigned long AddressOfEntryPoint;
  /* 0x0014 */ unsigned long BaseOfCode;
  /* 0x0018 */ unsigned long BaseOfData;
  /* 0x001c */ unsigned long BaseOfBss;
  /* 0x0020 */ unsigned long GprMask;
  /* 0x0024 */ unsigned long CprMask[4];
  /* 0x0034 */ unsigned long GpValue;
} IMAGE_ROM_OPTIONAL_HEADER, *PIMAGE_ROM_OPTIONAL_HEADER; /* size: 0x0038 */

typedef struct _DBGKD_LOAD_SYMBOLS32
{
  /* 0x0000 */ unsigned long PathNameLength;
  /* 0x0004 */ unsigned long BaseOfDll;
  /* 0x0008 */ unsigned long ProcessId;
  /* 0x000c */ unsigned long CheckSum;
  /* 0x0010 */ unsigned long SizeOfImage;
  /* 0x0014 */ unsigned char UnloadSymbols;
  /* 0x0015 */ char __PADDING__[3];
} DBGKD_LOAD_SYMBOLS32, *PDBGKD_LOAD_SYMBOLS32; /* size: 0x0018 */

typedef struct _PCW_COUNTER_DESCRIPTOR
{
  /* 0x0000 */ unsigned short Id;
  /* 0x0002 */ unsigned short StructIndex;
  /* 0x0004 */ unsigned short Offset;
  /* 0x0006 */ unsigned short Size;
} PCW_COUNTER_DESCRIPTOR, *PPCW_COUNTER_DESCRIPTOR; /* size: 0x0008 */

struct _PCW_BUFFER;

typedef struct _MI_SYSTEM_VA_ASSIGNMENT
{
  /* 0x0000 */ void* BaseAddress;
  /* 0x0008 */ unsigned __int64 NumberOfBytes;
} MI_SYSTEM_VA_ASSIGNMENT, *PMI_SYSTEM_VA_ASSIGNMENT; /* size: 0x0010 */

typedef struct _PCW_DATA
{
  /* 0x0000 */ const void* Data;
  /* 0x0008 */ unsigned long Size;
  /* 0x000c */ long __PADDING__[1];
} PCW_DATA, *PPCW_DATA; /* size: 0x0010 */

typedef struct _ETW_PERF_COUNTERS
{
  /* 0x0000 */ long TotalActiveSessions;
  /* 0x0004 */ long TotalBufferMemoryNonPagedPool;
  /* 0x0008 */ long TotalBufferMemoryPagedPool;
  /* 0x000c */ long TotalGuidsEnabled;
  /* 0x0010 */ long TotalGuidsNotEnabled;
  /* 0x0014 */ long TotalGuidsPreEnabled;
} ETW_PERF_COUNTERS, *PETW_PERF_COUNTERS; /* size: 0x0018 */

typedef struct _NT_TIB32
{
  /* 0x0000 */ unsigned long ExceptionList;
  /* 0x0004 */ unsigned long StackBase;
  /* 0x0008 */ unsigned long StackLimit;
  /* 0x000c */ unsigned long SubSystemTib;
  union
  {
    /* 0x0010 */ unsigned long FiberData;
    /* 0x0010 */ unsigned long Version;
  }; /* size: 0x0004 */
  /* 0x0014 */ unsigned long ArbitraryUserPointer;
  /* 0x0018 */ unsigned long Self;
} NT_TIB32, *PNT_TIB32; /* size: 0x001c */

typedef struct _TEB32
{
  /* 0x0000 */ struct _NT_TIB32 NtTib;
  /* 0x001c */ unsigned long EnvironmentPointer;
  /* 0x0020 */ struct _CLIENT_ID32 ClientId;
  /* 0x0028 */ unsigned long ActiveRpcHandle;
  /* 0x002c */ unsigned long ThreadLocalStoragePointer;
  /* 0x0030 */ unsigned long ProcessEnvironmentBlock;
  /* 0x0034 */ unsigned long LastErrorValue;
  /* 0x0038 */ unsigned long CountOfOwnedCriticalSections;
  /* 0x003c */ unsigned long CsrClientThread;
  /* 0x0040 */ unsigned long Win32ThreadInfo;
  /* 0x0044 */ unsigned long User32Reserved[26];
  /* 0x00ac */ unsigned long UserReserved[5];
  /* 0x00c0 */ unsigned long WOW32Reserved;
  /* 0x00c4 */ unsigned long CurrentLocale;
  /* 0x00c8 */ unsigned long FpSoftwareStatusRegister;
  /* 0x00cc */ unsigned long ReservedForDebuggerInstrumentation[16];
  /* 0x010c */ unsigned long SystemReserved1[26];
  /* 0x0174 */ char PlaceholderCompatibilityMode;
  /* 0x0175 */ unsigned char PlaceholderHydrationAlwaysExplicit;
  /* 0x0176 */ char PlaceholderReserved[10];
  /* 0x0180 */ unsigned long ProxiedProcessId;
  /* 0x0184 */ struct _ACTIVATION_CONTEXT_STACK32 _ActivationStack;
  /* 0x019c */ unsigned char WorkingOnBehalfTicket[8];
  /* 0x01a4 */ long ExceptionCode;
  /* 0x01a8 */ unsigned long ActivationContextStackPointer;
  /* 0x01ac */ unsigned long InstrumentationCallbackSp;
  /* 0x01b0 */ unsigned long InstrumentationCallbackPreviousPc;
  /* 0x01b4 */ unsigned long InstrumentationCallbackPreviousSp;
  /* 0x01b8 */ unsigned char InstrumentationCallbackDisabled;
  /* 0x01b9 */ unsigned char SpareBytes[23];
  /* 0x01d0 */ unsigned long TxFsContext;
  /* 0x01d4 */ struct _GDI_TEB_BATCH32 GdiTebBatch;
  /* 0x06b4 */ struct _CLIENT_ID32 RealClientId;
  /* 0x06bc */ unsigned long GdiCachedProcessHandle;
  /* 0x06c0 */ unsigned long GdiClientPID;
  /* 0x06c4 */ unsigned long GdiClientTID;
  /* 0x06c8 */ unsigned long GdiThreadLocalInfo;
  /* 0x06cc */ unsigned long Win32ClientInfo[62];
  /* 0x07c4 */ unsigned long glDispatchTable[233];
  /* 0x0b68 */ unsigned long glReserved1[29];
  /* 0x0bdc */ unsigned long glReserved2;
  /* 0x0be0 */ unsigned long glSectionInfo;
  /* 0x0be4 */ unsigned long glSection;
  /* 0x0be8 */ unsigned long glTable;
  /* 0x0bec */ unsigned long glCurrentRC;
  /* 0x0bf0 */ unsigned long glContext;
  /* 0x0bf4 */ unsigned long LastStatusValue;
  /* 0x0bf8 */ struct _STRING32 StaticUnicodeString;
  /* 0x0c00 */ wchar_t StaticUnicodeBuffer[261];
  /* 0x0e0a */ char Padding_553[2];
  /* 0x0e0c */ unsigned long DeallocationStack;
  /* 0x0e10 */ unsigned long TlsSlots[64];
  /* 0x0f10 */ struct LIST_ENTRY32 TlsLinks;
  /* 0x0f18 */ unsigned long Vdm;
  /* 0x0f1c */ unsigned long ReservedForNtRpc;
  /* 0x0f20 */ unsigned long DbgSsReserved[2];
  /* 0x0f28 */ unsigned long HardErrorMode;
  /* 0x0f2c */ unsigned long Instrumentation[9];
  /* 0x0f50 */ struct _GUID ActivityId;
  /* 0x0f60 */ unsigned long SubProcessTag;
  /* 0x0f64 */ unsigned long PerflibData;
  /* 0x0f68 */ unsigned long EtwTraceData;
  /* 0x0f6c */ unsigned long WinSockData;
  /* 0x0f70 */ unsigned long GdiBatchCount;
  union
  {
    /* 0x0f74 */ struct _PROCESSOR_NUMBER CurrentIdealProcessor;
    /* 0x0f74 */ unsigned long IdealProcessorValue;
    struct
    {
      /* 0x0f74 */ unsigned char ReservedPad0;
      /* 0x0f75 */ unsigned char ReservedPad1;
      /* 0x0f76 */ unsigned char ReservedPad2;
      /* 0x0f77 */ unsigned char IdealProcessor;
    }; /* size: 0x0004 */
  }; /* size: 0x0004 */
  /* 0x0f78 */ unsigned long GuaranteedStackBytes;
  /* 0x0f7c */ unsigned long ReservedForPerf;
  /* 0x0f80 */ unsigned long ReservedForOle;
  /* 0x0f84 */ unsigned long WaitingOnLoaderLock;
  /* 0x0f88 */ unsigned long SavedPriorityState;
  /* 0x0f8c */ unsigned long ReservedForCodeCoverage;
  /* 0x0f90 */ unsigned long ThreadPoolData;
  /* 0x0f94 */ unsigned long TlsExpansionSlots;
  /* 0x0f98 */ unsigned long MuiGeneration;
  /* 0x0f9c */ unsigned long IsImpersonating;
  /* 0x0fa0 */ unsigned long NlsCache;
  /* 0x0fa4 */ unsigned long pShimData;
  /* 0x0fa8 */ unsigned long HeapData;
  /* 0x0fac */ unsigned long CurrentTransactionHandle;
  /* 0x0fb0 */ unsigned long ActiveFrame;
  /* 0x0fb4 */ unsigned long FlsData;
  /* 0x0fb8 */ unsigned long PreferredLanguages;
  /* 0x0fbc */ unsigned long UserPrefLanguages;
  /* 0x0fc0 */ unsigned long MergedPrefLanguages;
  /* 0x0fc4 */ unsigned long MuiImpersonation;
  union
  {
    /* 0x0fc8 */ volatile unsigned short CrossTebFlags;
    /* 0x0fc8 */ unsigned short SpareCrossTebBits : 16; /* bit position: 0 */
  }; /* size: 0x0002 */
  union
  {
    /* 0x0fca */ unsigned short SameTebFlags;
    struct /* bitfield */
    {
      /* 0x0fca */ unsigned short SafeThunkCall : 1; /* bit position: 0 */
      /* 0x0fca */ unsigned short InDebugPrint : 1; /* bit position: 1 */
      /* 0x0fca */ unsigned short HasFiberData : 1; /* bit position: 2 */
      /* 0x0fca */ unsigned short SkipThreadAttach : 1; /* bit position: 3 */
      /* 0x0fca */ unsigned short WerInShipAssertCode : 1; /* bit position: 4 */
      /* 0x0fca */ unsigned short RanProcessInit : 1; /* bit position: 5 */
      /* 0x0fca */ unsigned short ClonedThread : 1; /* bit position: 6 */
      /* 0x0fca */ unsigned short SuppressDebugMsg : 1; /* bit position: 7 */
      /* 0x0fca */ unsigned short DisableUserStackWalk : 1; /* bit position: 8 */
      /* 0x0fca */ unsigned short RtlExceptionAttached : 1; /* bit position: 9 */
      /* 0x0fca */ unsigned short InitialThread : 1; /* bit position: 10 */
      /* 0x0fca */ unsigned short SessionAware : 1; /* bit position: 11 */
      /* 0x0fca */ unsigned short LoadOwner : 1; /* bit position: 12 */
      /* 0x0fca */ unsigned short LoaderWorker : 1; /* bit position: 13 */
      /* 0x0fca */ unsigned short SkipLoaderInit : 1; /* bit position: 14 */
      /* 0x0fca */ unsigned short SpareSameTebBits : 1; /* bit position: 15 */
    }; /* bitfield */
  }; /* size: 0x0002 */
  /* 0x0fcc */ unsigned long TxnScopeEnterCallback;
  /* 0x0fd0 */ unsigned long TxnScopeExitCallback;
  /* 0x0fd4 */ unsigned long TxnScopeContext;
  /* 0x0fd8 */ unsigned long LockCount;
  /* 0x0fdc */ long WowTebOffset;
  /* 0x0fe0 */ unsigned long ResourceRetValue;
  /* 0x0fe4 */ unsigned long ReservedForWdf;
  /* 0x0fe8 */ unsigned __int64 ReservedForCrt;
  /* 0x0ff0 */ struct _GUID EffectiveContainerId;
} TEB32, *PTEB32; /* size: 0x1000 */

typedef struct _PO_HIBER_PERF
{
  /* 0x0000 */ unsigned __int64 HiberIoTicks;
  /* 0x0008 */ unsigned __int64 HiberIoCpuTicks;
  /* 0x0010 */ unsigned __int64 HiberInitTicks;
  /* 0x0018 */ unsigned __int64 HiberHiberFileTicks;
  /* 0x0020 */ unsigned __int64 HiberCompressTicks;
  /* 0x0028 */ unsigned __int64 HiberSharedBufferTicks;
  /* 0x0030 */ unsigned __int64 HiberChecksumTicks;
  /* 0x0038 */ unsigned __int64 HiberChecksumIoTicks;
  /* 0x0040 */ union _LARGE_INTEGER TotalHibernateTime;
  /* 0x0048 */ union _LARGE_INTEGER HibernateCompleteTimestamp;
  /* 0x0050 */ unsigned long POSTTime;
  /* 0x0054 */ unsigned long ResumeBootMgrTime;
  /* 0x0058 */ unsigned long BootmgrUserInputTime;
  /* 0x005c */ long Padding_554;
  /* 0x0060 */ unsigned __int64 ResumeAppTicks;
  /* 0x0068 */ unsigned __int64 ResumeAppStartTimestamp;
  /* 0x0070 */ unsigned __int64 ResumeLibraryInitTicks;
  /* 0x0078 */ unsigned __int64 ResumeInitTicks;
  /* 0x0080 */ unsigned __int64 ResumeRestoreImageStartTimestamp;
  /* 0x0088 */ unsigned __int64 ResumeHiberFileTicks;
  /* 0x0090 */ unsigned __int64 ResumeIoTicks;
  /* 0x0098 */ unsigned __int64 ResumeDecompressTicks;
  /* 0x00a0 */ unsigned __int64 ResumeAllocateTicks;
  /* 0x00a8 */ unsigned __int64 ResumeUserInOutTicks;
  /* 0x00b0 */ unsigned __int64 ResumeMapTicks;
  /* 0x00b8 */ unsigned __int64 ResumeUnmapTicks;
  /* 0x00c0 */ unsigned __int64 ResumeChecksumTicks;
  /* 0x00c8 */ unsigned __int64 ResumeChecksumIoTicks;
  /* 0x00d0 */ unsigned __int64 ResumeKernelSwitchTimestamp;
  /* 0x00d8 */ unsigned __int64 CyclesPerMs;
  /* 0x00e0 */ unsigned __int64 WriteLogDataTimestamp;
  /* 0x00e8 */ unsigned __int64 KernelReturnFromHandler;
  /* 0x00f0 */ unsigned __int64 TimeStampCounterAtSwitchTime;
  /* 0x00f8 */ unsigned __int64 HalTscOffset;
  /* 0x0100 */ unsigned __int64 HvlTscOffset;
  /* 0x0108 */ unsigned __int64 SleeperThreadEnd;
  /* 0x0110 */ unsigned __int64 PostCmosUpdateTimestamp;
  /* 0x0118 */ unsigned __int64 KernelReturnSystemPowerStateTimestamp;
  /* 0x0120 */ unsigned __int64 IoBoundedness;
  /* 0x0128 */ unsigned __int64 KernelDecompressTicks;
  /* 0x0130 */ unsigned __int64 KernelIoTicks;
  /* 0x0138 */ unsigned __int64 KernelCopyTicks;
  /* 0x0140 */ unsigned __int64 ReadCheckCount;
  /* 0x0148 */ unsigned __int64 KernelInitTicks;
  /* 0x0150 */ unsigned __int64 KernelResumeHiberFileTicks;
  /* 0x0158 */ unsigned __int64 KernelIoCpuTicks;
  /* 0x0160 */ unsigned __int64 KernelSharedBufferTicks;
  /* 0x0168 */ unsigned __int64 KernelAnimationTicks;
  /* 0x0170 */ unsigned __int64 KernelChecksumTicks;
  /* 0x0178 */ unsigned __int64 KernelChecksumIoTicks;
  /* 0x0180 */ union _LARGE_INTEGER AnimationStart;
  /* 0x0188 */ union _LARGE_INTEGER AnimationStop;
  /* 0x0190 */ unsigned long DeviceResumeTime;
  /* 0x0194 */ long Padding_555;
  /* 0x0198 */ unsigned __int64 SecurePagesProcessed;
  /* 0x01a0 */ unsigned __int64 BootPagesProcessed;
  /* 0x01a8 */ unsigned __int64 KernelPagesProcessed;
  /* 0x01b0 */ unsigned __int64 BootBytesWritten;
  /* 0x01b8 */ unsigned __int64 KernelBytesWritten;
  /* 0x01c0 */ unsigned __int64 BootPagesWritten;
  /* 0x01c8 */ unsigned __int64 KernelPagesWritten;
  /* 0x01d0 */ unsigned __int64 BytesWritten;
  /* 0x01d8 */ unsigned long PagesWritten;
  /* 0x01dc */ unsigned long FileRuns;
  /* 0x01e0 */ unsigned long NoMultiStageResumeReason;
  /* 0x01e4 */ unsigned long MaxHuffRatio;
  /* 0x01e8 */ unsigned __int64 AdjustedTotalResumeTime;
  /* 0x01f0 */ unsigned __int64 ResumeCompleteTimestamp;
} PO_HIBER_PERF, *PPO_HIBER_PERF; /* size: 0x01f8 */

typedef struct _ARBITER_QUERY_ALLOCATED_RESOURCES_PARAMETERS
{
  /* 0x0000 */ struct _CM_PARTIAL_RESOURCE_LIST** AllocatedResources;
} ARBITER_QUERY_ALLOCATED_RESOURCES_PARAMETERS, *PARBITER_QUERY_ALLOCATED_RESOURCES_PARAMETERS; /* size: 0x0008 */

typedef struct _PNP_DEVICE_COMPLETION_QUEUE
{
  /* 0x0000 */ struct _LIST_ENTRY DispatchedList;
  /* 0x0010 */ unsigned long DispatchedCount;
  /* 0x0014 */ long Padding_556;
  /* 0x0018 */ struct _LIST_ENTRY CompletedList;
  /* 0x0028 */ struct _KSEMAPHORE CompletedSemaphore;
  /* 0x0048 */ unsigned __int64 SpinLock;
} PNP_DEVICE_COMPLETION_QUEUE, *PPNP_DEVICE_COMPLETION_QUEUE; /* size: 0x0050 */

typedef struct _X86_KTRAP_FRAME_BLUE
{
  /* 0x0000 */ unsigned long DbgEbp;
  /* 0x0004 */ unsigned long DbgEip;
  /* 0x0008 */ unsigned long DbgArgMark;
  /* 0x000c */ unsigned short TempSegCs;
  /* 0x000e */ unsigned char Logging;
  /* 0x000f */ unsigned char FrameType;
  /* 0x0010 */ unsigned long TempEsp;
  /* 0x0014 */ unsigned long Dr0;
  /* 0x0018 */ unsigned long Dr1;
  /* 0x001c */ unsigned long Dr2;
  /* 0x0020 */ unsigned long Dr3;
  /* 0x0024 */ unsigned long Dr6;
  /* 0x0028 */ unsigned long Dr7;
  /* 0x002c */ unsigned long SegGs;
  /* 0x0030 */ unsigned long SegEs;
  /* 0x0034 */ unsigned long SegDs;
  /* 0x0038 */ unsigned long Edx;
  /* 0x003c */ unsigned long Ecx;
  /* 0x0040 */ unsigned long Eax;
  /* 0x0044 */ unsigned char PreviousPreviousMode;
  /* 0x0045 */ unsigned char EntropyQueueDpc;
  /* 0x0046 */ unsigned char Reserved[2];
  /* 0x0048 */ unsigned long MxCsr;
  /* 0x004c */ unsigned long ExceptionList;
  /* 0x0050 */ unsigned long SegFs;
  /* 0x0054 */ unsigned long Edi;
  /* 0x0058 */ unsigned long Esi;
  /* 0x005c */ unsigned long Ebx;
  /* 0x0060 */ unsigned long Ebp;
  /* 0x0064 */ unsigned long ErrCode;
  /* 0x0068 */ unsigned long Eip;
  /* 0x006c */ unsigned long SegCs;
  /* 0x0070 */ unsigned long EFlags;
  /* 0x0074 */ unsigned long HardwareEsp;
  /* 0x0078 */ unsigned long HardwareSegSs;
  /* 0x007c */ unsigned long V86Es;
  /* 0x0080 */ unsigned long V86Ds;
  /* 0x0084 */ unsigned long V86Fs;
  /* 0x0088 */ unsigned long V86Gs;
} X86_KTRAP_FRAME_BLUE, *PX86_KTRAP_FRAME_BLUE; /* size: 0x008c */

typedef struct _DBGKD_LOAD_SYMBOLS64
{
  /* 0x0000 */ unsigned long PathNameLength;
  /* 0x0004 */ long Padding_557;
  /* 0x0008 */ unsigned __int64 BaseOfDll;
  /* 0x0010 */ unsigned __int64 ProcessId;
  /* 0x0018 */ unsigned long CheckSum;
  /* 0x001c */ unsigned long SizeOfImage;
  /* 0x0020 */ unsigned char UnloadSymbols;
  /* 0x0021 */ char __PADDING__[7];
} DBGKD_LOAD_SYMBOLS64, *PDBGKD_LOAD_SYMBOLS64; /* size: 0x0028 */

typedef struct _EFI_FIRMWARE_INFORMATION
{
  /* 0x0000 */ unsigned long FirmwareVersion;
  /* 0x0004 */ long Padding_558;
  /* 0x0008 */ struct _VIRTUAL_EFI_RUNTIME_SERVICES* VirtualEfiRuntimeServices;
  /* 0x0010 */ long SetVirtualAddressMapStatus;
  /* 0x0014 */ unsigned long MissedMappingsCount;
  /* 0x0018 */ struct _LIST_ENTRY FirmwareResourceList;
  /* 0x0028 */ void* EfiMemoryMap;
  /* 0x0030 */ unsigned long EfiMemoryMapSize;
  /* 0x0034 */ unsigned long EfiMemoryMapDescriptorSize;
} EFI_FIRMWARE_INFORMATION, *PEFI_FIRMWARE_INFORMATION; /* size: 0x0038 */

typedef struct _HAL_LOG_REGISTER_CONTEXT
{
  /* 0x0000 */ void* LogRoutine /* function */;
  /* 0x0008 */ unsigned long Flag;
  /* 0x000c */ long __PADDING__[1];
} HAL_LOG_REGISTER_CONTEXT, *PHAL_LOG_REGISTER_CONTEXT; /* size: 0x0010 */

typedef union _HAL_UNMASKED_INTERRUPT_FLAGS
{
  union
  {
    struct /* bitfield */
    {
      /* 0x0000 */ unsigned short SecondaryInterrupt : 1; /* bit position: 0 */
      /* 0x0000 */ unsigned short Reserved : 15; /* bit position: 1 */
    }; /* bitfield */
    /* 0x0000 */ unsigned short AsUSHORT;
  }; /* size: 0x0002 */
} HAL_UNMASKED_INTERRUPT_FLAGS, *PHAL_UNMASKED_INTERRUPT_FLAGS; /* size: 0x0002 */

typedef struct _HAL_UNMASKED_INTERRUPT_INFORMATION
{
  /* 0x0000 */ unsigned short Version;
  /* 0x0002 */ unsigned short Size;
  /* 0x0004 */ union _HAL_UNMASKED_INTERRUPT_FLAGS Flags;
  /* 0x0006 */ char Padding_559[2];
  /* 0x0008 */ enum _KINTERRUPT_MODE Mode;
  /* 0x000c */ enum _KINTERRUPT_POLARITY Polarity;
  /* 0x0010 */ unsigned long Gsiv;
  /* 0x0014 */ unsigned short PinNumber;
  /* 0x0016 */ char Padding_560[2];
  /* 0x0018 */ void* DeviceHandle;
} HAL_UNMASKED_INTERRUPT_INFORMATION, *PHAL_UNMASKED_INTERRUPT_INFORMATION; /* size: 0x0020 */

typedef struct _DBGKD_MANIPULATE_STATE32
{
  /* 0x0000 */ unsigned long ApiNumber;
  /* 0x0004 */ unsigned short ProcessorLevel;
  /* 0x0006 */ unsigned short Processor;
  /* 0x0008 */ long ReturnStatus;
  union
  {
    union
    {
      /* 0x000c */ struct _DBGKD_READ_MEMORY32 ReadMemory;
      /* 0x000c */ struct _DBGKD_WRITE_MEMORY32 WriteMemory;
      /* 0x000c */ struct _DBGKD_READ_MEMORY64 ReadMemory64;
      /* 0x000c */ struct _DBGKD_WRITE_MEMORY64 WriteMemory64;
      /* 0x000c */ struct _DBGKD_GET_CONTEXT GetContext;
      /* 0x000c */ struct _DBGKD_SET_CONTEXT SetContext;
      /* 0x000c */ struct _DBGKD_WRITE_BREAKPOINT32 WriteBreakPoint;
      /* 0x000c */ struct _DBGKD_RESTORE_BREAKPOINT RestoreBreakPoint;
      /* 0x000c */ struct _DBGKD_CONTINUE Continue;
      /* 0x000c */ struct _DBGKD_CONTINUE2 Continue2;
      /* 0x000c */ struct _DBGKD_READ_WRITE_IO32 ReadWriteIo;
      /* 0x000c */ struct _DBGKD_READ_WRITE_IO_EXTENDED32 ReadWriteIoExtended;
      /* 0x000c */ struct _DBGKD_QUERY_SPECIAL_CALLS QuerySpecialCalls;
      /* 0x000c */ struct _DBGKD_SET_SPECIAL_CALL32 SetSpecialCall;
      /* 0x000c */ struct _DBGKD_SET_INTERNAL_BREAKPOINT32 SetInternalBreakpoint;
      /* 0x000c */ struct _DBGKD_GET_INTERNAL_BREAKPOINT32 GetInternalBreakpoint;
      /* 0x000c */ struct _DBGKD_GET_VERSION32 GetVersion32;
      /* 0x000c */ struct _DBGKD_BREAKPOINTEX BreakPointEx;
      /* 0x000c */ struct _DBGKD_READ_WRITE_MSR ReadWriteMsr;
      /* 0x000c */ struct _DBGKD_SEARCH_MEMORY SearchMemory;
      /* 0x000c */ struct _DBGKD_CONTEXT_EX GetContextEx;
      /* 0x000c */ struct _DBGKD_CONTEXT_EX SetContextEx;
    }; /* size: 0x0028 */
  } /* size: 0x0028 */ u;
} DBGKD_MANIPULATE_STATE32, *PDBGKD_MANIPULATE_STATE32; /* size: 0x0034 */

typedef struct _DEVICE_MANAGE_DATA_SET_ATTRIBUTES
{
  /* 0x0000 */ unsigned long Size;
  /* 0x0004 */ unsigned long Action;
  /* 0x0008 */ unsigned long Flags;
  /* 0x000c */ unsigned long ParameterBlockOffset;
  /* 0x0010 */ unsigned long ParameterBlockLength;
  /* 0x0014 */ unsigned long DataSetRangesOffset;
  /* 0x0018 */ unsigned long DataSetRangesLength;
} DEVICE_MANAGE_DATA_SET_ATTRIBUTES, *PDEVICE_MANAGE_DATA_SET_ATTRIBUTES; /* size: 0x001c */

typedef struct _DEVICE_MANAGE_DATA_SET_ATTRIBUTES_OUTPUT
{
  /* 0x0000 */ unsigned long Size;
  /* 0x0004 */ unsigned long Action;
  /* 0x0008 */ unsigned long Flags;
  /* 0x000c */ unsigned long OperationStatus;
  /* 0x0010 */ unsigned long ExtendedError;
  /* 0x0014 */ unsigned long TargetDetailedError;
  /* 0x0018 */ unsigned long ReservedStatus;
  /* 0x001c */ unsigned long OutputBlockOffset;
  /* 0x0020 */ unsigned long OutputBlockLength;
} DEVICE_MANAGE_DATA_SET_ATTRIBUTES_OUTPUT, *PDEVICE_MANAGE_DATA_SET_ATTRIBUTES_OUTPUT; /* size: 0x0024 */

typedef struct _PPM_PLATFORM_STATES
{
  /* 0x0000 */ unsigned long StateCount;
  /* 0x0004 */ unsigned long InterfaceVersion;
  /* 0x0008 */ unsigned long ProcessorCount;
  /* 0x000c */ unsigned char CoordinatedInterface;
  /* 0x000d */ char Padding_561[3];
  /* 0x0010 */ void* IdleTest /* function */;
  /* 0x0018 */ void* IdlePreExecute /* function */;
  /* 0x0020 */ void* IdleComplete /* function */;
  /* 0x0028 */ void* QueryPlatformStateResidency /* function */;
  /* 0x0030 */ struct _PLATFORM_IDLE_ACCOUNTING* Accounting;
  /* 0x0038 */ unsigned char DeepSleepEnabled;
  /* 0x0039 */ char Padding_562[7];
  /* 0x0040 */ struct _PPM_PLATFORM_STATE State[1];
} PPM_PLATFORM_STATES, *PPPM_PLATFORM_STATES; /* size: 0x01c0 */

typedef struct _LOADER_FEATURE_CONFIGURATION_DIAGNOSTIC_INFORMATION
{
  /* 0x0000 */ unsigned char OriginalBootStatus;
  /* 0x0001 */ unsigned char NewBootStatus;
  /* 0x0002 */ unsigned char ConfigurationLoaded;
  /* 0x0003 */ unsigned char Spare;
  union
  {
    union
    {
      /* 0x0004 */ unsigned long AllFlags;
      struct /* bitfield */
      {
        /* 0x0004 */ unsigned long LkgSupported : 1; /* bit position: 0 */
        /* 0x0004 */ unsigned long FinalBootBeforeRecovery : 1; /* bit position: 1 */
        /* 0x0004 */ unsigned long ConfigurationComparisonAttempted : 1; /* bit position: 2 */
        /* 0x0004 */ unsigned long CurrentConfigurationLoadAttempted : 1; /* bit position: 3 */
        /* 0x0004 */ unsigned long LkgConfigurationLoadAttempted : 1; /* bit position: 4 */
        /* 0x0004 */ unsigned long UsageSubscriptionLoadAttempted : 1; /* bit position: 5 */
        /* 0x0004 */ unsigned long Spare : 26; /* bit position: 6 */
      }; /* bitfield */
    }; /* size: 0x0004 */
  } /* size: 0x0004 */ Flags;
  /* 0x0008 */ long ConfigurationComparisonStatus;
  /* 0x000c */ long CurrentConfigurationLoadStatus;
  /* 0x0010 */ long LkgConfigurationLoadStatus;
  /* 0x0014 */ long UsageSubscriptionLoadStatus;
} LOADER_FEATURE_CONFIGURATION_DIAGNOSTIC_INFORMATION, *PLOADER_FEATURE_CONFIGURATION_DIAGNOSTIC_INFORMATION; /* size: 0x0018 */

typedef struct _LOADER_FEATURE_CONFIGURATION_INFORMATION
{
  /* 0x0000 */ void* FeatureConfigurationBuffer;
  /* 0x0008 */ unsigned __int64 FeatureConfigurationBufferSize;
  /* 0x0010 */ void* UsageSubscriptionBuffer;
  /* 0x0018 */ unsigned __int64 UsageSubscriptionBufferSize;
  /* 0x0020 */ void* DelayedUsageReportBuffer;
  /* 0x0028 */ unsigned __int64 DelayedUsageReportBufferSize;
  /* 0x0030 */ struct _LOADER_FEATURE_CONFIGURATION_DIAGNOSTIC_INFORMATION DiagnosticInformation;
} LOADER_FEATURE_CONFIGURATION_INFORMATION, *PLOADER_FEATURE_CONFIGURATION_INFORMATION; /* size: 0x0048 */

typedef struct _PROCESSOR_PLATFORM_STATE_RESIDENCIES
{
  /* 0x0000 */ unsigned long Count;
  /* 0x0004 */ long Padding_563;
  /* 0x0008 */ struct _PROCESSOR_PLATFORM_STATE_RESIDENCY States[1];
} PROCESSOR_PLATFORM_STATE_RESIDENCIES, *PPROCESSOR_PLATFORM_STATE_RESIDENCIES; /* size: 0x0018 */

typedef union _CPU_INFO
{
  union
  {
    /* 0x0000 */ unsigned int AsUINT32[4];
    struct
    {
      /* 0x0000 */ unsigned long Eax;
      /* 0x0004 */ unsigned long Ebx;
      /* 0x0008 */ unsigned long Ecx;
      /* 0x000c */ unsigned long Edx;
    }; /* size: 0x0010 */
  }; /* size: 0x0010 */
} CPU_INFO, *PCPU_INFO; /* size: 0x0010 */

typedef struct _HEADLESS_LOADER_BLOCK
{
  /* 0x0000 */ unsigned char UsedBiosSettings;
  /* 0x0001 */ unsigned char DataBits;
  /* 0x0002 */ unsigned char StopBits;
  /* 0x0003 */ unsigned char Parity;
  /* 0x0004 */ unsigned long BaudRate;
  /* 0x0008 */ unsigned long PortNumber;
  /* 0x000c */ long Padding_564;
  /* 0x0010 */ unsigned char* PortAddress;
  /* 0x0018 */ unsigned short PciDeviceId;
  /* 0x001a */ unsigned short PciVendorId;
  /* 0x001c */ unsigned char PciBusNumber;
  /* 0x001d */ char Padding_565;
  /* 0x001e */ unsigned short PciBusSegment;
  /* 0x0020 */ unsigned char PciSlotNumber;
  /* 0x0021 */ unsigned char PciFunctionNumber;
  /* 0x0022 */ char Padding_566[2];
  /* 0x0024 */ unsigned long PciFlags;
  /* 0x0028 */ struct _GUID SystemGUID;
  /* 0x0038 */ unsigned char IsMMIODevice;
  /* 0x0039 */ unsigned char TerminalType;
  /* 0x003a */ unsigned char InterfaceType;
  /* 0x003b */ unsigned char RegisterBitWidth;
  /* 0x003c */ unsigned char RegisterAccessSize;
  /* 0x003d */ char __PADDING__[3];
} HEADLESS_LOADER_BLOCK, *PHEADLESS_LOADER_BLOCK; /* size: 0x0040 */

typedef struct _NETWORK_LOADER_BLOCK
{
  /* 0x0000 */ unsigned char* DHCPServerACK;
  /* 0x0008 */ unsigned long DHCPServerACKLength;
  /* 0x000c */ long Padding_567;
  /* 0x0010 */ unsigned char* BootServerReplyPacket;
  /* 0x0018 */ unsigned long BootServerReplyPacketLength;
  /* 0x001c */ long __PADDING__[1];
} NETWORK_LOADER_BLOCK, *PNETWORK_LOADER_BLOCK; /* size: 0x0020 */

typedef struct _VACB
{
  /* 0x0000 */ void* BaseAddress;
  /* 0x0008 */ struct _SHARED_CACHE_MAP* SharedCacheMap;
  union
  {
    union
    {
      /* 0x0010 */ union _LARGE_INTEGER FileOffset;
      /* 0x0010 */ unsigned short ActiveCount;
      /* 0x0010 */ struct _LIST_ENTRY Links;
    }; /* size: 0x0010 */
  } /* size: 0x0010 */ Overlay;
  /* 0x0020 */ struct _VACB_ARRAY_HEADER* ArrayHead;
} VACB, *PVACB; /* size: 0x0028 */

typedef struct _MBCB
{
  /* 0x0000 */ short NodeTypeCode;
  /* 0x0002 */ short NodeIsInZone;
  /* 0x0004 */ unsigned long PagesToWrite;
  /* 0x0008 */ unsigned long DirtyPages;
  /* 0x000c */ unsigned long Reserved;
  /* 0x0010 */ struct _LIST_ENTRY BitmapRanges;
  /* 0x0020 */ __int64 ResumeWritePage;
  /* 0x0028 */ __int64 MostRecentlyDirtiedPage;
  /* 0x0030 */ struct _BITMAP_RANGE BitmapRange1;
  /* 0x0060 */ struct _BITMAP_RANGE BitmapRange2;
  /* 0x0090 */ struct _BITMAP_RANGE BitmapRange3;
} MBCB, *PMBCB; /* size: 0x00c0 */

typedef struct _OFFLINE_CRASHDUMP_CONFIGURATION_TABLE_V2
{
  /* 0x0000 */ unsigned long Version;
  /* 0x0004 */ unsigned long AbnormalResetOccurred;
  /* 0x0008 */ unsigned long OfflineMemoryDumpCapable;
  /* 0x000c */ long Padding_568;
  /* 0x0010 */ union _LARGE_INTEGER ResetDataAddress;
  /* 0x0018 */ unsigned long ResetDataSize;
  /* 0x001c */ long __PADDING__[1];
} OFFLINE_CRASHDUMP_CONFIGURATION_TABLE_V2, *POFFLINE_CRASHDUMP_CONFIGURATION_TABLE_V2; /* size: 0x0020 */

typedef struct _TRIAGE_POP_IRP_DATA
{
  /* 0x0000 */ struct _LIST_ENTRY Link;
  /* 0x0010 */ struct _IRP* Irp;
  /* 0x0018 */ struct _DEVICE_OBJECT* Pdo;
} TRIAGE_POP_IRP_DATA, *PTRIAGE_POP_IRP_DATA; /* size: 0x0020 */

typedef struct _MI_WSLE
{
  union
  {
    union
    {
      struct
      {
        struct /* bitfield */
        {
          /* 0x0000 */ unsigned char Age : 4; /* bit position: 0 */
          /* 0x0000 */ unsigned char Protection : 3; /* bit position: 4 */
          /* 0x0000 */ unsigned char Reserved : 1; /* bit position: 7 */
        }; /* bitfield */
      } /* size: 0x0001 */ e1;
      struct
      {
        /* 0x0000 */ unsigned char EntireWsle;
      } /* size: 0x0001 */ e2;
    }; /* size: 0x0001 */
  } /* size: 0x0001 */ u1;
} MI_WSLE, *PMI_WSLE; /* size: 0x0001 */

typedef struct _CC_EXTERNAL_CACHE_INFO
{
  /* 0x0000 */ void* Callback /* function */;
  /* 0x0008 */ struct _DIRTY_PAGE_STATISTICS DirtyPageStatistics;
  /* 0x0020 */ struct _LIST_ENTRY Links;
} CC_EXTERNAL_CACHE_INFO, *PCC_EXTERNAL_CACHE_INFO; /* size: 0x0030 */

typedef struct _MI_ALIGNED_SLIST
{
  /* 0x0000 */ union _SLIST_HEADER SList;
  /* 0x0010 */ long __PADDING__[12];
} MI_ALIGNED_SLIST, *PMI_ALIGNED_SLIST; /* size: 0x0040 */

struct VACB_LEVEL_ALLOCATION_LIST
{
  /* 0x0000 */ struct _LIST_ENTRY VacbLevelList;
  /* 0x0010 */ void* VacbLevelWithBcbListHeads;
  /* 0x0018 */ unsigned long VacbLevelsAllocated;
  /* 0x001c */ long __PADDING__[1];
}; /* size: 0x0020 */

typedef struct _VACB_LEVEL_REFERENCE
{
  /* 0x0000 */ long Reference;
  /* 0x0004 */ long SpecialReference;
} VACB_LEVEL_REFERENCE, *PVACB_LEVEL_REFERENCE; /* size: 0x0008 */

typedef struct _HEAP_VAMGR_RANGE
{
  union
  {
    /* 0x0000 */ struct _RTL_BALANCED_NODE RbNode;
    /* 0x0000 */ struct _SINGLE_LIST_ENTRY Next;
    struct
    {
      struct /* bitfield */
      {
        /* 0x0000 */ unsigned char Allocated : 1; /* bit position: 0 */
        /* 0x0000 */ unsigned char Internal : 1; /* bit position: 1 */
        /* 0x0000 */ unsigned char Standalone : 1; /* bit position: 2 */
        /* 0x0000 */ unsigned char Spare0 : 5; /* bit position: 3 */
      }; /* bitfield */
      /* 0x0001 */ unsigned char AllocatorIndex;
      /* 0x0002 */ char Padding_569[6];
      /* 0x0008 */ unsigned __int64 OwnerCtx[2];
    }; /* size: 0x0012 */
  }; /* size: 0x0018 */
  union
  {
    /* 0x0018 */ unsigned __int64 SizeInChunks;
    struct
    {
      /* 0x0018 */ unsigned short ChunkCount;
      /* 0x001a */ unsigned short PrevChunkCount;
    }; /* size: 0x0004 */
    /* 0x0018 */ unsigned __int64 Signature;
  }; /* size: 0x0008 */
} HEAP_VAMGR_RANGE, *PHEAP_VAMGR_RANGE; /* size: 0x0020 */

typedef struct _FAKE_HEAP_ENTRY
{
  /* 0x0000 */ unsigned __int64 Size;
  /* 0x0008 */ unsigned __int64 PreviousSize;
} FAKE_HEAP_ENTRY, *PFAKE_HEAP_ENTRY; /* size: 0x0010 */

typedef struct _HEAP_FAILURE_INFORMATION
{
  /* 0x0000 */ unsigned long Version;
  /* 0x0004 */ unsigned long StructureSize;
  /* 0x0008 */ enum _HEAP_FAILURE_TYPE FailureType;
  /* 0x000c */ long Padding_570;
  /* 0x0010 */ void* HeapAddress;
  /* 0x0018 */ void* Address;
  /* 0x0020 */ void* Param1;
  /* 0x0028 */ void* Param2;
  /* 0x0030 */ void* Param3;
  /* 0x0038 */ void* PreviousBlock;
  /* 0x0040 */ void* NextBlock;
  /* 0x0048 */ struct _FAKE_HEAP_ENTRY ExpectedDecodedEntry;
  /* 0x0058 */ void* StackTrace[32];
  /* 0x0158 */ unsigned char HeapMajorVersion;
  /* 0x0159 */ unsigned char HeapMinorVersion;
  /* 0x015a */ char Padding_571[6];
  /* 0x0160 */ struct _EXCEPTION_RECORD ExceptionRecord;
  /* 0x01f8 */ long Padding_572[2];
  /* 0x0200 */ struct _CONTEXT ContextRecord;
} HEAP_FAILURE_INFORMATION, *PHEAP_FAILURE_INFORMATION; /* size: 0x06d0 */

typedef struct _INTERRUPT_REMAPPING_INFO
{
  struct /* bitfield */
  {
    /* 0x0000 */ unsigned long IrtIndex : 30; /* bit position: 0 */
    /* 0x0000 */ unsigned long FlagHalInternal : 1; /* bit position: 30 */
    /* 0x0000 */ unsigned long FlagTranslated : 1; /* bit position: 31 */
  }; /* bitfield */
  union
  {
    struct
    {
      /* 0x0004 */ unsigned long MessageAddressHigh;
      /* 0x0008 */ unsigned long MessageAddressLow;
      /* 0x000c */ unsigned short MessageData;
      /* 0x000e */ unsigned short Reserved;
    } /* size: 0x000c */ Msi;
  } /* size: 0x000c */ u;
} INTERRUPT_REMAPPING_INFO, *PINTERRUPT_REMAPPING_INFO; /* size: 0x0010 */

typedef struct _MI_ENCLAVE_STATE
{
  /* 0x0000 */ struct _RTL_AVL_TREE EnclaveRegions;
  /* 0x0008 */ void* EnclaveMetadataPage;
  /* 0x0010 */ struct _RTL_BITMAP* EnclaveMetadataBitMap;
  /* 0x0018 */ struct _EX_PUSH_LOCK EnclaveMetadataEntryLock;
  /* 0x0020 */ volatile long EnclaveMetadataPageLock;
  /* 0x0024 */ long Padding_573;
  /* 0x0028 */ struct _LIST_ENTRY EnclaveList;
  /* 0x0038 */ struct _EX_PUSH_LOCK EnclaveListLock;
  /* 0x0040 */ struct _EX_RUNDOWN_REF ShutdownRundown;
} MI_ENCLAVE_STATE, *PMI_ENCLAVE_STATE; /* size: 0x0048 */

struct HAL_PRIVATE_DISPATCH
{
  /* 0x0000 */ unsigned long Version;
  /* 0x0004 */ long Padding_574;
  /* 0x0008 */ void* HalHandlerForBus /* function */;
  /* 0x0010 */ void* HalHandlerForConfigSpace /* function */;
  /* 0x0018 */ void* HalLocateHiberRanges /* function */;
  /* 0x0020 */ void* HalRegisterBusHandler /* function */;
  /* 0x0028 */ void* HalSetWakeEnable /* function */;
  /* 0x0030 */ void* HalSetWakeAlarm /* function */;
  /* 0x0038 */ void* HalPciTranslateBusAddress /* function */;
  /* 0x0040 */ void* HalPciAssignSlotResources /* function */;
  /* 0x0048 */ void* HalHaltSystem /* function */;
  /* 0x0050 */ void* HalFindBusAddressTranslation /* function */;
  /* 0x0058 */ void* HalResetDisplay /* function */;
  /* 0x0060 */ void* HalAllocateMapRegisters /* function */;
  /* 0x0068 */ void* KdSetupPciDeviceForDebugging /* function */;
  /* 0x0070 */ void* KdReleasePciDeviceForDebugging /* function */;
  /* 0x0078 */ void* KdGetAcpiTablePhase0 /* function */;
  /* 0x0080 */ void* KdCheckPowerButton /* function */;
  /* 0x0088 */ void* HalVectorToIDTEntry /* function */;
  /* 0x0090 */ void* KdMapPhysicalMemory64 /* function */;
  /* 0x0098 */ void* KdUnmapVirtualAddress /* function */;
  /* 0x00a0 */ void* KdGetPciDataByOffset /* function */;
  /* 0x00a8 */ void* KdSetPciDataByOffset /* function */;
  /* 0x00b0 */ void* HalGetInterruptVectorOverride /* function */;
  /* 0x00b8 */ void* HalGetVectorInputOverride /* function */;
  /* 0x00c0 */ void* HalLoadMicrocode /* function */;
  /* 0x00c8 */ void* HalUnloadMicrocode /* function */;
  /* 0x00d0 */ void* HalPostMicrocodeUpdate /* function */;
  /* 0x00d8 */ void* HalAllocateMessageTargetOverride /* function */;
  /* 0x00e0 */ void* HalFreeMessageTargetOverride /* function */;
  /* 0x00e8 */ void* HalDpReplaceBegin /* function */;
  /* 0x00f0 */ void* HalDpReplaceTarget /* function */;
  /* 0x00f8 */ void* HalDpReplaceControl /* function */;
  /* 0x0100 */ void* HalDpReplaceEnd /* function */;
  /* 0x0108 */ void* HalPrepareForBugcheck /* function */;
  /* 0x0110 */ void* HalQueryWakeTime /* function */;
  /* 0x0118 */ void* HalReportIdleStateUsage /* function */;
  /* 0x0120 */ void* HalTscSynchronization /* function */;
  /* 0x0128 */ void* HalWheaInitProcessorGenericSection /* function */;
  /* 0x0130 */ void* HalStopLegacyUsbInterrupts /* function */;
  /* 0x0138 */ void* HalReadWheaPhysicalMemory /* function */;
  /* 0x0140 */ void* HalWriteWheaPhysicalMemory /* function */;
  /* 0x0148 */ void* HalDpMaskLevelTriggeredInterrupts /* function */;
  /* 0x0150 */ void* HalDpUnmaskLevelTriggeredInterrupts /* function */;
  /* 0x0158 */ void* HalDpGetInterruptReplayState /* function */;
  /* 0x0160 */ void* HalDpReplayInterrupts /* function */;
  /* 0x0168 */ void* HalQueryIoPortAccessSupported /* function */;
  /* 0x0170 */ void* KdSetupIntegratedDeviceForDebugging /* function */;
  /* 0x0178 */ void* KdReleaseIntegratedDeviceForDebugging /* function */;
  /* 0x0180 */ void* HalGetEnlightenmentInformation /* function */;
  /* 0x0188 */ void* HalAllocateEarlyPages /* function */;
  /* 0x0190 */ void* HalMapEarlyPages /* function */;
  /* 0x0198 */ void* Dummy1;
  /* 0x01a0 */ void* Dummy2;
  /* 0x01a8 */ void* HalNotifyProcessorFreeze /* function */;
  /* 0x01b0 */ void* HalPrepareProcessorForIdle /* function */;
  /* 0x01b8 */ void* HalRegisterLogRoutine /* function */;
  /* 0x01c0 */ void* HalResumeProcessorFromIdle /* function */;
  /* 0x01c8 */ void* Dummy;
  /* 0x01d0 */ void* HalVectorToIDTEntryEx /* function */;
  /* 0x01d8 */ void* HalSecondaryInterruptQueryPrimaryInformation /* function */;
  /* 0x01e0 */ void* HalMaskInterrupt /* function */;
  /* 0x01e8 */ void* HalUnmaskInterrupt /* function */;
  /* 0x01f0 */ void* HalIsInterruptTypeSecondary /* function */;
  /* 0x01f8 */ void* HalAllocateGsivForSecondaryInterrupt /* function */;
  /* 0x0200 */ void* HalAddInterruptRemapping /* function */;
  /* 0x0208 */ void* HalRemoveInterruptRemapping /* function */;
  /* 0x0210 */ void* HalSaveAndDisableHvEnlightenment /* function */;
  /* 0x0218 */ void* HalRestoreHvEnlightenment /* function */;
  /* 0x0220 */ void* HalFlushIoBuffersExternalCache /* function */;
  /* 0x0228 */ void* HalFlushExternalCache /* function */;
  /* 0x0230 */ void* HalPciEarlyRestore /* function */;
  /* 0x0238 */ void* HalGetProcessorId /* function */;
  /* 0x0240 */ void* HalAllocatePmcCounterSet /* function */;
  /* 0x0248 */ void* HalCollectPmcCounters /* function */;
  /* 0x0250 */ void* HalFreePmcCounterSet /* function */;
  /* 0x0258 */ void* HalProcessorHalt /* function */;
  /* 0x0260 */ void* HalTimerQueryCycleCounter /* function */;
  /* 0x0268 */ void* Dummy3;
  /* 0x0270 */ void* HalPciMarkHiberPhase /* function */;
  /* 0x0278 */ void* HalQueryProcessorRestartEntryPoint /* function */;
  /* 0x0280 */ void* HalRequestInterrupt /* function */;
  /* 0x0288 */ void* HalEnumerateUnmaskedInterrupts /* function */;
  /* 0x0290 */ void* HalFlushAndInvalidatePageExternalCache /* function */;
  /* 0x0298 */ void* KdEnumerateDebuggingDevices /* function */;
  /* 0x02a0 */ void* HalFlushIoRectangleExternalCache /* function */;
  /* 0x02a8 */ void* HalPowerEarlyRestore /* function */;
  /* 0x02b0 */ void* HalQueryCapsuleCapabilities /* function */;
  /* 0x02b8 */ void* HalUpdateCapsule /* function */;
  /* 0x02c0 */ void* HalPciMultiStageResumeCapable /* function */;
  /* 0x02c8 */ void* HalDmaFreeCrashDumpRegisters /* function */;
  /* 0x02d0 */ void* HalAcpiAoacCapable /* function */;
  /* 0x02d8 */ void* HalInterruptSetDestination /* function */;
  /* 0x02e0 */ void* HalGetClockConfiguration /* function */;
  /* 0x02e8 */ void* HalClockTimerActivate /* function */;
  /* 0x02f0 */ void* HalClockTimerInitialize /* function */;
  /* 0x02f8 */ void* HalClockTimerStop /* function */;
  /* 0x0300 */ void* HalClockTimerArm /* function */;
  /* 0x0308 */ void* HalTimerOnlyClockInterruptPending /* function */;
  /* 0x0310 */ void* HalAcpiGetMultiNode /* function */;
  /* 0x0318 */ void* HalPowerSetRebootHandler /* function */;
  /* 0x0320 */ void* HalIommuRegisterDispatchTable /* function */;
  /* 0x0328 */ void* HalTimerWatchdogStart /* function */;
  /* 0x0330 */ void* HalTimerWatchdogResetCountdown /* function */;
  /* 0x0338 */ void* HalTimerWatchdogStop /* function */;
  /* 0x0340 */ void* HalTimerWatchdogGeneratedLastReset /* function */;
  /* 0x0348 */ void* HalTimerWatchdogTriggerSystemReset /* function */;
  /* 0x0350 */ void* HalInterruptVectorDataToGsiv /* function */;
  /* 0x0358 */ void* HalInterruptGetHighestPriorityInterrupt /* function */;
  /* 0x0360 */ void* HalProcessorOn /* function */;
  /* 0x0368 */ void* HalProcessorOff /* function */;
  /* 0x0370 */ void* HalProcessorFreeze /* function */;
  /* 0x0378 */ void* HalDmaLinkDeviceObjectByToken /* function */;
  /* 0x0380 */ void* HalDmaCheckAdapterToken /* function */;
  /* 0x0388 */ void* Dummy4;
  /* 0x0390 */ void* HalTimerConvertPerformanceCounterToAuxiliaryCounter /* function */;
  /* 0x0398 */ void* HalTimerConvertAuxiliaryCounterToPerformanceCounter /* function */;
  /* 0x03a0 */ void* HalTimerQueryAuxiliaryCounterFrequency /* function */;
  /* 0x03a8 */ void* HalConnectThermalInterrupt /* function */;
  /* 0x03b0 */ void* HalIsEFIRuntimeActive /* function */;
  /* 0x03b8 */ void* HalTimerQueryAndResetRtcErrors /* function */;
  /* 0x03c0 */ void* HalAcpiLateRestore /* function */;
  /* 0x03c8 */ void* KdWatchdogDelayExpiration /* function */;
  /* 0x03d0 */ void* HalGetProcessorStats /* function */;
  /* 0x03d8 */ void* HalTimerWatchdogQueryDueTime /* function */;
  /* 0x03e0 */ void* HalConnectSyntheticInterrupt /* function */;
  /* 0x03e8 */ void* HalPreprocessNmi /* function */;
  /* 0x03f0 */ void* HalEnumerateEnvironmentVariablesWithFilter /* function */;
  /* 0x03f8 */ void* HalCaptureLastBranchRecordStack /* function */;
  /* 0x0400 */ void* HalClearLastBranchRecordStack /* function */;
  /* 0x0408 */ void* HalConfigureLastBranchRecord /* function */;
  /* 0x0410 */ void* HalGetLastBranchInformation /* function */;
  /* 0x0418 */ void* HalResumeLastBranchRecord /* function */;
  /* 0x0420 */ void* HalStartLastBranchRecord /* function */;
  /* 0x0428 */ void* HalStopLastBranchRecord /* function */;
  /* 0x0430 */ void* HalIommuBlockDevice /* function */;
  /* 0x0438 */ void* HalIommuUnblockDevice /* function */;
  /* 0x0440 */ void* HalGetIommuInterface /* function */;
  /* 0x0448 */ void* HalRequestGenericErrorRecovery /* function */;
  /* 0x0450 */ void* HalTimerQueryHostPerformanceCounter /* function */;
  /* 0x0458 */ void* HalTopologyQueryProcessorRelationships /* function */;
  /* 0x0460 */ void* HalInitPlatformDebugTriggers /* function */;
  /* 0x0468 */ void* HalRunPlatformDebugTriggers /* function */;
  /* 0x0470 */ void* HalTimerGetReferencePage /* function */;
  /* 0x0478 */ void* HalGetHiddenProcessorPowerInterface /* function */;
  /* 0x0480 */ void* HalGetHiddenProcessorPackageId /* function */;
  /* 0x0488 */ void* HalGetHiddenPackageProcessorCount /* function */;
  /* 0x0490 */ void* HalGetHiddenProcessorApicIdByIndex /* function */;
  /* 0x0498 */ void* HalRegisterHiddenProcessorIdleState /* function */;
  /* 0x04a0 */ void* HalIommuReportIommuFault /* function */;
  /* 0x04a8 */ void* HalIommuDmaRemappingCapable /* function */;
}; /* size: 0x04b0 */

typedef struct _BUS_HANDLER
{
  /* 0x0000 */ unsigned long Version;
  /* 0x0004 */ enum _INTERFACE_TYPE InterfaceType;
  /* 0x0008 */ enum _BUS_DATA_TYPE ConfigurationType;
  /* 0x000c */ unsigned long BusNumber;
  /* 0x0010 */ struct _DEVICE_OBJECT* DeviceObject;
  /* 0x0018 */ struct _BUS_HANDLER* ParentHandler;
  /* 0x0020 */ void* BusData;
  /* 0x0028 */ unsigned long DeviceControlExtensionSize;
  /* 0x002c */ long Padding_575;
  /* 0x0030 */ struct _SUPPORTED_RANGES* BusAddresses;
  /* 0x0038 */ unsigned long Reserved[4];
  /* 0x0048 */ void* GetBusData /* function */;
  /* 0x0050 */ void* SetBusData /* function */;
  /* 0x0058 */ void* AdjustResourceList /* function */;
  /* 0x0060 */ void* AssignSlotResources /* function */;
  /* 0x0068 */ void* TranslateBusAddress /* function */;
  /* 0x0070 */ void* Spare1;
  /* 0x0078 */ void* Spare2;
  /* 0x0080 */ void* Spare3;
  /* 0x0088 */ void* Spare4;
  /* 0x0090 */ void* Spare5;
  /* 0x0098 */ void* Spare6;
  /* 0x00a0 */ void* Spare7;
  /* 0x00a8 */ void* Spare8;
} BUS_HANDLER, *PBUS_HANDLER; /* size: 0x00b0 */

typedef struct _RTL_STACKDB_CONTEXT
{
  /* 0x0000 */ struct _RTL_HASH_TABLE StackSegmentTable;
  /* 0x0010 */ struct _RTL_HASH_TABLE StackEntryTable;
  /* 0x0020 */ struct _RTL_SRWLOCK StackEntryTableLock;
  /* 0x0028 */ struct _RTL_SRWLOCK SegmentTableLock;
  /* 0x0030 */ void* Allocate /* function */;
  /* 0x0038 */ void* Free /* function */;
  /* 0x0040 */ void* AllocatorContext;
} RTL_STACKDB_CONTEXT, *PRTL_STACKDB_CONTEXT; /* size: 0x0048 */

typedef struct _LPCP_PORT_QUEUE
{
  /* 0x0000 */ struct _LPCP_NONPAGED_PORT_QUEUE* NonPagedPortQueue;
  /* 0x0008 */ struct _KSEMAPHORE* Semaphore;
  /* 0x0010 */ struct _LIST_ENTRY ReceiveHead;
} LPCP_PORT_QUEUE, *PLPCP_PORT_QUEUE; /* size: 0x0020 */

typedef struct _HEAP_LFH_SUBSEGMENT_ENCODED_OFFSETS
{
  union
  {
    struct
    {
      /* 0x0000 */ unsigned short BlockSize;
      /* 0x0002 */ unsigned short FirstBlockOffset;
    }; /* size: 0x0004 */
    /* 0x0000 */ unsigned long EncodedData;
  }; /* size: 0x0004 */
} HEAP_LFH_SUBSEGMENT_ENCODED_OFFSETS, *PHEAP_LFH_SUBSEGMENT_ENCODED_OFFSETS; /* size: 0x0004 */

typedef struct _HEAP_LFH_SUBSEGMENT
{
  /* 0x0000 */ struct _LIST_ENTRY ListEntry;
  union
  {
    /* 0x0010 */ struct _HEAP_LFH_SUBSEGMENT_OWNER* Owner;
    /* 0x0010 */ union _HEAP_LFH_SUBSEGMENT_DELAY_FREE DelayFree;
  }; /* size: 0x0008 */
  /* 0x0018 */ unsigned __int64 CommitLock;
  union
  {
    struct
    {
      /* 0x0020 */ unsigned short FreeCount;
      /* 0x0022 */ unsigned short BlockCount;
    }; /* size: 0x0004 */
    /* 0x0020 */ volatile short InterlockedShort;
    /* 0x0020 */ volatile long InterlockedLong;
  }; /* size: 0x0004 */
  /* 0x0024 */ unsigned short FreeHint;
  /* 0x0026 */ unsigned char Location;
  /* 0x0027 */ unsigned char WitheldBlockCount;
  /* 0x0028 */ struct _HEAP_LFH_SUBSEGMENT_ENCODED_OFFSETS BlockOffsets;
  /* 0x002c */ unsigned char CommitUnitShift;
  /* 0x002d */ unsigned char CommitUnitCount;
  /* 0x002e */ unsigned short CommitStateOffset;
  /* 0x0030 */ unsigned __int64 BlockBitmap[1];
} HEAP_LFH_SUBSEGMENT, *PHEAP_LFH_SUBSEGMENT; /* size: 0x0038 */

typedef struct _RTL_DYNAMIC_LOOKASIDE
{
  /* 0x0000 */ unsigned __int64 EnabledBucketBitmap;
  /* 0x0008 */ unsigned long BucketCount;
  /* 0x000c */ unsigned long ActiveBucketCount;
  /* 0x0010 */ long Padding_576[12];
  /* 0x0040 */ struct _RTL_LOOKASIDE Buckets[64];
} RTL_DYNAMIC_LOOKASIDE, *PRTL_DYNAMIC_LOOKASIDE; /* size: 0x1040 */

typedef struct _HEAP_PSEUDO_TAG_ENTRY
{
  /* 0x0000 */ unsigned long Allocs;
  /* 0x0004 */ unsigned long Frees;
  /* 0x0008 */ unsigned __int64 Size;
} HEAP_PSEUDO_TAG_ENTRY, *PHEAP_PSEUDO_TAG_ENTRY; /* size: 0x0010 */

typedef struct _FIRMWARE_INFORMATION_LOADER_BLOCK
{
  struct /* bitfield */
  {
    /* 0x0000 */ unsigned long FirmwareTypeUefi : 1; /* bit position: 0 */
    /* 0x0000 */ unsigned long EfiRuntimeUseIum : 1; /* bit position: 1 */
    /* 0x0000 */ unsigned long EfiRuntimePageProtectionSupported : 1; /* bit position: 2 */
    /* 0x0000 */ unsigned long Reserved : 29; /* bit position: 3 */
  }; /* bitfield */
  /* 0x0004 */ long Padding_577;
  union
  {
    union
    {
      /* 0x0008 */ struct _EFI_FIRMWARE_INFORMATION EfiInformation;
      /* 0x0008 */ struct _PCAT_FIRMWARE_INFORMATION PcatInformation;
    }; /* size: 0x0038 */
  } /* size: 0x0038 */ u;
} FIRMWARE_INFORMATION_LOADER_BLOCK, *PFIRMWARE_INFORMATION_LOADER_BLOCK; /* size: 0x0040 */

typedef struct _LOADER_PARAMETER_BLOCK
{
  /* 0x0000 */ unsigned long OsMajorVersion;
  /* 0x0004 */ unsigned long OsMinorVersion;
  /* 0x0008 */ unsigned long Size;
  /* 0x000c */ unsigned long OsLoaderSecurityVersion;
  /* 0x0010 */ struct _LIST_ENTRY LoadOrderListHead;
  /* 0x0020 */ struct _LIST_ENTRY MemoryDescriptorListHead;
  /* 0x0030 */ struct _LIST_ENTRY BootDriverListHead;
  /* 0x0040 */ struct _LIST_ENTRY EarlyLaunchListHead;
  /* 0x0050 */ struct _LIST_ENTRY CoreDriverListHead;
  /* 0x0060 */ struct _LIST_ENTRY CoreExtensionsDriverListHead;
  /* 0x0070 */ struct _LIST_ENTRY TpmCoreDriverListHead;
  /* 0x0080 */ unsigned __int64 KernelStack;
  /* 0x0088 */ unsigned __int64 Prcb;
  /* 0x0090 */ unsigned __int64 Process;
  /* 0x0098 */ unsigned __int64 Thread;
  /* 0x00a0 */ unsigned long KernelStackSize;
  /* 0x00a4 */ unsigned long RegistryLength;
  /* 0x00a8 */ void* RegistryBase;
  /* 0x00b0 */ struct _CONFIGURATION_COMPONENT_DATA* ConfigurationRoot;
  /* 0x00b8 */ char* ArcBootDeviceName;
  /* 0x00c0 */ char* ArcHalDeviceName;
  /* 0x00c8 */ char* NtBootPathName;
  /* 0x00d0 */ char* NtHalPathName;
  /* 0x00d8 */ char* LoadOptions;
  /* 0x00e0 */ struct _NLS_DATA_BLOCK* NlsData;
  /* 0x00e8 */ struct _ARC_DISK_INFORMATION* ArcDiskInformation;
  /* 0x00f0 */ struct _LOADER_PARAMETER_EXTENSION* Extension;
  union
  {
    union
    {
      /* 0x00f8 */ struct _I386_LOADER_BLOCK I386;
      /* 0x00f8 */ struct _ARM_LOADER_BLOCK Arm;
    }; /* size: 0x0010 */
  } /* size: 0x0010 */ u;
  /* 0x0108 */ struct _FIRMWARE_INFORMATION_LOADER_BLOCK FirmwareInformation;
  /* 0x0148 */ char* OsBootstatPathName;
  /* 0x0150 */ char* ArcOSDataDeviceName;
  /* 0x0158 */ char* ArcWindowsSysPartName;
} LOADER_PARAMETER_BLOCK, *PLOADER_PARAMETER_BLOCK; /* size: 0x0160 */

typedef struct _HEAP_VIRTUAL_ALLOC_ENTRY
{
  /* 0x0000 */ struct _LIST_ENTRY Entry;
  /* 0x0010 */ struct _HEAP_ENTRY_EXTRA ExtraStuff;
  /* 0x0020 */ unsigned __int64 CommitSize;
  /* 0x0028 */ unsigned __int64 ReserveSize;
  /* 0x0030 */ struct _HEAP_ENTRY BusyBlock;
} HEAP_VIRTUAL_ALLOC_ENTRY, *PHEAP_VIRTUAL_ALLOC_ENTRY; /* size: 0x0040 */

typedef struct _ARC_DISK_INFORMATION
{
  /* 0x0000 */ struct _LIST_ENTRY DiskSignatures;
} ARC_DISK_INFORMATION, *PARC_DISK_INFORMATION; /* size: 0x0010 */

typedef struct _HEAP_FREE_ENTRY
{
  union
  {
    /* 0x0000 */ struct _HEAP_ENTRY HeapEntry;
    /* 0x0000 */ struct _HEAP_UNPACKED_ENTRY UnpackedEntry;
    struct
    {
      /* 0x0000 */ void* PreviousBlockPrivateData;
      union
      {
        struct
        {
          /* 0x0008 */ unsigned short Size;
          /* 0x000a */ unsigned char Flags;
          /* 0x000b */ unsigned char SmallTagIndex;
        }; /* size: 0x0004 */
        struct
        {
          /* 0x0008 */ unsigned long SubSegmentCode;
          /* 0x000c */ unsigned short PreviousSize;
          union
          {
            /* 0x000e */ unsigned char SegmentOffset;
            struct
            {
              /* 0x000e */ unsigned char LFHFlags;
              /* 0x000f */ unsigned char UnusedBytes;
            }; /* size: 0x0002 */
          }; /* size: 0x0002 */
        }; /* size: 0x0008 */
        /* 0x0008 */ unsigned __int64 CompactHeader;
      }; /* size: 0x0008 */
    }; /* size: 0x0010 */
    /* 0x0000 */ struct _HEAP_EXTENDED_ENTRY ExtendedEntry;
    struct
    {
      /* 0x0000 */ void* Reserved;
      union
      {
        struct
        {
          /* 0x0008 */ unsigned short FunctionIndex;
          /* 0x000a */ unsigned short ContextValue;
        }; /* size: 0x0004 */
        struct
        {
          /* 0x0008 */ unsigned long InterceptorValue;
          /* 0x000c */ unsigned short UnusedBytesLength;
          /* 0x000e */ unsigned char EntryOffset;
          /* 0x000f */ unsigned char ExtendedBlockSignature;
        }; /* size: 0x0008 */
      }; /* size: 0x0008 */
    }; /* size: 0x0010 */
    struct
    {
      /* 0x0000 */ void* ReservedForAlignment;
      union
      {
        struct
        {
          /* 0x0008 */ unsigned long Code1;
          union
          {
            struct
            {
              /* 0x000c */ unsigned short Code2;
              /* 0x000e */ unsigned char Code3;
              /* 0x000f */ unsigned char Code4;
            }; /* size: 0x0004 */
            /* 0x000c */ unsigned long Code234;
          }; /* size: 0x0004 */
        }; /* size: 0x0008 */
        /* 0x0008 */ unsigned __int64 AgregateCode;
      }; /* size: 0x0008 */
    }; /* size: 0x0010 */
  }; /* size: 0x0010 */
  /* 0x0010 */ struct _LIST_ENTRY FreeList;
} HEAP_FREE_ENTRY, *PHEAP_FREE_ENTRY; /* size: 0x0020 */

typedef struct _RTLP_HP_PADDING_HEADER
{
  /* 0x0000 */ unsigned __int64 PaddingSize;
  /* 0x0008 */ unsigned __int64 Spare;
} RTLP_HP_PADDING_HEADER, *PRTLP_HP_PADDING_HEADER; /* size: 0x0010 */

typedef struct _KALPC_SECTION
{
  /* 0x0000 */ void* SectionObject;
  /* 0x0008 */ unsigned __int64 Size;
  /* 0x0010 */ struct _ALPC_HANDLE_TABLE* HandleTable;
  /* 0x0018 */ void* SectionHandle;
  /* 0x0020 */ struct _EPROCESS* OwnerProcess;
  /* 0x0028 */ struct _ALPC_PORT* OwnerPort;
  union
  {
    struct
    {
      struct /* bitfield */
      {
        /* 0x0030 */ unsigned long Internal : 1; /* bit position: 0 */
        /* 0x0030 */ unsigned long Secure : 1; /* bit position: 1 */
      }; /* bitfield */
    } /* size: 0x0004 */ s1;
  } /* size: 0x0004 */ u1;
  /* 0x0034 */ unsigned long NumberOfRegions;
  /* 0x0038 */ struct _LIST_ENTRY RegionListHead;
} KALPC_SECTION, *PKALPC_SECTION; /* size: 0x0048 */

typedef union _KALPC_DIRECT_EVENT
{
  union
  {
    /* 0x0000 */ unsigned __int64 Value;
    struct /* bitfield */
    {
      /* 0x0000 */ unsigned __int64 DirectType : 1; /* bit position: 0 */
      /* 0x0000 */ unsigned __int64 EventReferenced : 1; /* bit position: 1 */
      /* 0x0000 */ unsigned __int64 EventObjectBits : 62; /* bit position: 2 */
    }; /* bitfield */
  }; /* size: 0x0008 */
} KALPC_DIRECT_EVENT, *PKALPC_DIRECT_EVENT; /* size: 0x0008 */

typedef struct _KALPC_MESSAGE_ATTRIBUTES
{
  /* 0x0000 */ void* ClientContext;
  /* 0x0008 */ void* ServerContext;
  /* 0x0010 */ void* PortContext;
  /* 0x0018 */ void* CancelPortContext;
  /* 0x0020 */ struct _KALPC_SECURITY_DATA* SecurityData;
  /* 0x0028 */ struct _KALPC_VIEW* View;
  /* 0x0030 */ struct _KALPC_HANDLE_DATA* HandleData;
  /* 0x0038 */ union _KALPC_DIRECT_EVENT DirectEvent;
  /* 0x0040 */ struct _KALPC_WORK_ON_BEHALF_DATA WorkOnBehalfData;
} KALPC_MESSAGE_ATTRIBUTES, *PKALPC_MESSAGE_ATTRIBUTES; /* size: 0x0048 */

typedef struct _KALPC_MESSAGE
{
  /* 0x0000 */ struct _LIST_ENTRY Entry;
  /* 0x0010 */ struct _ALPC_PORT* PortQueue;
  /* 0x0018 */ struct _ALPC_PORT* OwnerPort;
  /* 0x0020 */ struct _ETHREAD* WaitingThread;
  union
  {
    union
    {
      struct
      {
        struct /* bitfield */
        {
          /* 0x0028 */ unsigned long QueueType : 3; /* bit position: 0 */
          /* 0x0028 */ unsigned long QueuePortType : 4; /* bit position: 3 */
          /* 0x0028 */ unsigned long Canceled : 1; /* bit position: 7 */
          /* 0x0028 */ unsigned long Ready : 1; /* bit position: 8 */
          /* 0x0028 */ unsigned long ReleaseMessage : 1; /* bit position: 9 */
          /* 0x0028 */ unsigned long SharedQuota : 1; /* bit position: 10 */
          /* 0x0028 */ unsigned long ReplyWaitReply : 1; /* bit position: 11 */
          /* 0x0028 */ unsigned long OwnerPortReference : 1; /* bit position: 12 */
          /* 0x0028 */ unsigned long ReceiverReference : 1; /* bit position: 13 */
          /* 0x0028 */ unsigned long ViewAttributeRetrieved : 1; /* bit position: 14 */
          /* 0x0028 */ unsigned long InDispatch : 1; /* bit position: 15 */
          /* 0x0028 */ unsigned long InCanceledQueue : 1; /* bit position: 16 */
        }; /* bitfield */
      } /* size: 0x0004 */ s1;
      /* 0x0028 */ unsigned long State;
    }; /* size: 0x0004 */
  } /* size: 0x0004 */ u1;
  /* 0x002c */ long SequenceNo;
  union
  {
    /* 0x0030 */ struct _EPROCESS* QuotaProcess;
    /* 0x0030 */ void* QuotaBlock;
  }; /* size: 0x0008 */
  /* 0x0038 */ struct _ALPC_PORT* CancelSequencePort;
  /* 0x0040 */ struct _ALPC_PORT* CancelQueuePort;
  /* 0x0048 */ long CancelSequenceNo;
  /* 0x004c */ long Padding_578;
  /* 0x0050 */ struct _LIST_ENTRY CancelListEntry;
  /* 0x0060 */ struct _KALPC_RESERVE* Reserve;
  /* 0x0068 */ struct _KALPC_MESSAGE_ATTRIBUTES MessageAttributes;
  /* 0x00b0 */ void* DataUserVa;
  /* 0x00b8 */ struct _ALPC_COMMUNICATION_INFO* CommunicationInfo;
  /* 0x00c0 */ struct _ALPC_PORT* ConnectionPort;
  /* 0x00c8 */ struct _ETHREAD* ServerThread;
  /* 0x00d0 */ void* WakeReference;
  /* 0x00d8 */ void* WakeReference2;
  /* 0x00e0 */ void* ExtensionBuffer;
  /* 0x00e8 */ unsigned __int64 ExtensionBufferSize;
  /* 0x00f0 */ struct _PORT_MESSAGE PortMessage;
} KALPC_MESSAGE, *PKALPC_MESSAGE; /* size: 0x0118 */

typedef struct _KALPC_SECURITY_DATA
{
  /* 0x0000 */ struct _ALPC_HANDLE_TABLE* HandleTable;
  /* 0x0008 */ void* ContextHandle;
  /* 0x0010 */ struct _EPROCESS* OwningProcess;
  /* 0x0018 */ struct _ALPC_PORT* OwnerPort;
  /* 0x0020 */ struct _SECURITY_CLIENT_CONTEXT DynamicSecurity;
  union
  {
    struct
    {
      struct /* bitfield */
      {
        /* 0x0068 */ unsigned long Revoked : 1; /* bit position: 0 */
        /* 0x0068 */ unsigned long Impersonated : 1; /* bit position: 1 */
      }; /* bitfield */
    } /* size: 0x0004 */ s1;
  } /* size: 0x0004 */ u1;
  /* 0x006c */ long __PADDING__[1];
} KALPC_SECURITY_DATA, *PKALPC_SECURITY_DATA; /* size: 0x0070 */

typedef struct _KALPC_VIEW
{
  /* 0x0000 */ struct _LIST_ENTRY ViewListEntry;
  /* 0x0010 */ struct _KALPC_REGION* Region;
  /* 0x0018 */ struct _ALPC_PORT* OwnerPort;
  /* 0x0020 */ struct _EPROCESS* OwnerProcess;
  /* 0x0028 */ void* Address;
  /* 0x0030 */ unsigned __int64 Size;
  /* 0x0038 */ void* SecureViewHandle;
  /* 0x0040 */ void* WriteAccessHandle;
  union
  {
    struct
    {
      struct /* bitfield */
      {
        /* 0x0048 */ unsigned long WriteAccess : 1; /* bit position: 0 */
        /* 0x0048 */ unsigned long AutoRelease : 1; /* bit position: 1 */
        /* 0x0048 */ unsigned long ForceUnlink : 1; /* bit position: 2 */
        /* 0x0048 */ unsigned long SystemSpace : 1; /* bit position: 3 */
      }; /* bitfield */
    } /* size: 0x0004 */ s1;
  } /* size: 0x0004 */ u1;
  /* 0x004c */ unsigned long NumberOfOwnerMessages;
  /* 0x0050 */ struct _LIST_ENTRY ProcessViewListEntry;
} KALPC_VIEW, *PKALPC_VIEW; /* size: 0x0060 */

typedef struct _DEBUG_TRANSPORT_DATA
{
  /* 0x0000 */ unsigned long HwContextSize;
  /* 0x0004 */ unsigned char UseSerialFraming;
  /* 0x0005 */ unsigned char ValidUSBCoreId;
  /* 0x0006 */ unsigned char USBCoreId;
  /* 0x0007 */ char __PADDING__[1];
} DEBUG_TRANSPORT_DATA, *PDEBUG_TRANSPORT_DATA; /* size: 0x0008 */

typedef struct _DEBUG_DEVICE_DESCRIPTOR
{
  /* 0x0000 */ unsigned long Bus;
  /* 0x0004 */ unsigned long Slot;
  /* 0x0008 */ unsigned short Segment;
  /* 0x000a */ unsigned short VendorID;
  /* 0x000c */ unsigned short DeviceID;
  /* 0x000e */ unsigned char BaseClass;
  /* 0x000f */ unsigned char SubClass;
  /* 0x0010 */ unsigned char ProgIf;
  union
  {
    /* 0x0011 */ unsigned char Flags;
    struct /* bitfield */
    {
      /* 0x0011 */ unsigned char DbgHalScratchAllocated : 1; /* bit position: 0 */
      /* 0x0011 */ unsigned char DbgBarsMapped : 1; /* bit position: 1 */
      /* 0x0011 */ unsigned char DbgScratchAllocated : 1; /* bit position: 2 */
    }; /* bitfield */
  }; /* size: 0x0001 */
  /* 0x0012 */ unsigned char Initialized;
  /* 0x0013 */ unsigned char Configured;
  /* 0x0014 */ long Padding_579;
  /* 0x0018 */ struct DEBUG_DEVICE_ADDRESS BaseAddress[6];
  /* 0x00a8 */ struct DEBUG_MEMORY_REQUIREMENTS Memory;
  /* 0x00c8 */ unsigned long Dbg2TableIndex;
  /* 0x00cc */ unsigned short PortType;
  /* 0x00ce */ unsigned short PortSubtype;
  /* 0x00d0 */ void* OemData;
  /* 0x00d8 */ unsigned long OemDataLength;
  /* 0x00dc */ enum KD_NAMESPACE_ENUM NameSpace;
  /* 0x00e0 */ wchar_t* NameSpacePath;
  /* 0x00e8 */ unsigned long NameSpacePathLength;
  /* 0x00ec */ unsigned long TransportType;
  /* 0x00f0 */ struct _DEBUG_TRANSPORT_DATA TransportData;
} DEBUG_DEVICE_DESCRIPTOR, *PDEBUG_DEVICE_DESCRIPTOR; /* size: 0x00f8 */

typedef struct _HIDDEN_PROCESSOR_POWER_INTERFACE
{
  /* 0x0000 */ unsigned long Version;
  /* 0x0004 */ long Padding_580;
  /* 0x0008 */ void* ReadPerfMsr /* function */;
  /* 0x0010 */ void* WritePerfMsr /* function */;
  /* 0x0018 */ void* ReadPerfIoPort /* function */;
  /* 0x0020 */ void* WritePerfIoPort /* function */;
} HIDDEN_PROCESSOR_POWER_INTERFACE, *PHIDDEN_PROCESSOR_POWER_INTERFACE; /* size: 0x0028 */

typedef struct _LDR_SERVICE_TAG_RECORD
{
  /* 0x0000 */ struct _LDR_SERVICE_TAG_RECORD* Next;
  /* 0x0008 */ unsigned long ServiceTag;
  /* 0x000c */ long __PADDING__[1];
} LDR_SERVICE_TAG_RECORD, *PLDR_SERVICE_TAG_RECORD; /* size: 0x0010 */

typedef struct _ALPC_COMPLETION_PACKET_LOOKASIDE
{
  /* 0x0000 */ unsigned __int64 Lock;
  /* 0x0008 */ unsigned long Size;
  /* 0x000c */ unsigned long ActiveCount;
  /* 0x0010 */ unsigned long PendingNullCount;
  /* 0x0014 */ unsigned long PendingCheckCompletionListCount;
  /* 0x0018 */ unsigned long PendingDelete;
  /* 0x001c */ long Padding_581;
  /* 0x0020 */ struct _SINGLE_LIST_ENTRY FreeListHead;
  /* 0x0028 */ void* CompletionPort;
  /* 0x0030 */ void* CompletionKey;
  /* 0x0038 */ struct _ALPC_COMPLETION_PACKET_LOOKASIDE_ENTRY Entry[1];
} ALPC_COMPLETION_PACKET_LOOKASIDE, *PALPC_COMPLETION_PACKET_LOOKASIDE; /* size: 0x0050 */

typedef struct _SEP_TOKEN_DIAG_TRACK_ENTRY
{
  /* 0x0000 */ void* ProcessCid;
  /* 0x0008 */ void* ThreadCid;
  /* 0x0010 */ unsigned char ImageFileName[16];
  /* 0x0020 */ unsigned long CreateMethod;
  /* 0x0024 */ long Padding_582;
  /* 0x0028 */ unsigned __int64 CreateTrace[30];
  /* 0x0118 */ long Count;
  /* 0x011c */ long CaptureCount;
} SEP_TOKEN_DIAG_TRACK_ENTRY, *PSEP_TOKEN_DIAG_TRACK_ENTRY; /* size: 0x0120 */

typedef struct _ALPC_COMPLETION_LIST_HEADER
{
  /* 0x0000 */ unsigned __int64 StartMagic;
  /* 0x0008 */ unsigned long TotalSize;
  /* 0x000c */ unsigned long ListOffset;
  /* 0x0010 */ unsigned long ListSize;
  /* 0x0014 */ unsigned long BitmapOffset;
  /* 0x0018 */ unsigned long BitmapSize;
  /* 0x001c */ unsigned long DataOffset;
  /* 0x0020 */ unsigned long DataSize;
  /* 0x0024 */ unsigned long AttributeFlags;
  /* 0x0028 */ unsigned long AttributeSize;
  /* 0x002c */ long Padding_583[5];
  /* 0x0040 */ volatile struct _ALPC_COMPLETION_LIST_STATE State;
  /* 0x0048 */ volatile unsigned long LastMessageId;
  /* 0x004c */ volatile unsigned long LastCallbackId;
  /* 0x0050 */ long Padding_584[12];
  /* 0x0080 */ volatile unsigned long PostCount;
  /* 0x0084 */ long Padding_585[15];
  /* 0x00c0 */ volatile unsigned long ReturnCount;
  /* 0x00c4 */ long Padding_586[15];
  /* 0x0100 */ volatile unsigned long LogSequenceNumber;
  /* 0x0104 */ long Padding_587[15];
  /* 0x0140 */ struct _RTL_SRWLOCK UserLock;
  /* 0x0148 */ unsigned __int64 EndMagic;
  /* 0x0150 */ long __PADDING__[12];
} ALPC_COMPLETION_LIST_HEADER, *PALPC_COMPLETION_LIST_HEADER; /* size: 0x0180 */

typedef struct _OBJECT_HEADER_NAME_INFO
{
  /* 0x0000 */ struct _OBJECT_DIRECTORY* Directory;
  /* 0x0008 */ struct _UNICODE_STRING Name;
  /* 0x0018 */ long ReferenceCount;
  /* 0x001c */ unsigned long Reserved;
} OBJECT_HEADER_NAME_INFO, *POBJECT_HEADER_NAME_INFO; /* size: 0x0020 */

typedef struct _TRIAGE_POP_FX_DEVICE
{
  /* 0x0000 */ struct _LIST_ENTRY Link;
  /* 0x0010 */ struct _IRP* Irp;
  /* 0x0018 */ struct _TRIAGE_POP_IRP_DATA* IrpData;
  /* 0x0020 */ long Status;
  /* 0x0024 */ long PowerReqCall;
  /* 0x0028 */ long PowerNotReqCall;
  /* 0x002c */ long Padding_588;
  /* 0x0030 */ struct _TRIAGE_DEVICE_NODE* DeviceNode;
} TRIAGE_POP_FX_DEVICE, *PTRIAGE_POP_FX_DEVICE; /* size: 0x0038 */

typedef struct _KPRIQUEUE
{
  /* 0x0000 */ struct _DISPATCHER_HEADER Header;
  /* 0x0018 */ struct _LIST_ENTRY EntryListHead[32];
  /* 0x0218 */ volatile long CurrentCount[32];
  /* 0x0298 */ unsigned long MaximumCount;
  /* 0x029c */ long Padding_589;
  /* 0x02a0 */ struct _LIST_ENTRY ThreadListHead;
} KPRIQUEUE, *PKPRIQUEUE; /* size: 0x02b0 */

typedef struct _PALPC_PORT_REFERENCE_WAIT_BLOCK
{
  /* 0x0000 */ struct _KEVENT DesiredReferenceNoEvent;
  /* 0x0018 */ long DesiredReferenceNo;
  /* 0x001c */ long __PADDING__[1];
} PALPC_PORT_REFERENCE_WAIT_BLOCK, *PPALPC_PORT_REFERENCE_WAIT_BLOCK; /* size: 0x0020 */

typedef struct _POP_DEVICE_SYS_STATE
{
  /* 0x0000 */ unsigned char IrpMinor;
  /* 0x0001 */ char Padding_590[3];
  /* 0x0004 */ enum _SYSTEM_POWER_STATE SystemState;
  /* 0x0008 */ unsigned __int64 SpinLock;
  /* 0x0010 */ struct _KTHREAD* Thread;
  /* 0x0018 */ struct _KEVENT* AbortEvent;
  /* 0x0020 */ struct _KSEMAPHORE* ReadySemaphore;
  /* 0x0028 */ struct _KSEMAPHORE* FinishedSemaphore;
  /* 0x0030 */ struct _PO_DEVICE_NOTIFY_ORDER Order;
  /* 0x01b0 */ struct _LIST_ENTRY Pending;
  /* 0x01c0 */ long Status;
  /* 0x01c4 */ long Padding_591;
  /* 0x01c8 */ struct _DEVICE_OBJECT* FailedDevice;
  /* 0x01d0 */ unsigned char Waking;
  /* 0x01d1 */ unsigned char Cancelled;
  /* 0x01d2 */ unsigned char IgnoreErrors;
  /* 0x01d3 */ unsigned char IgnoreNotImplemented;
  /* 0x01d4 */ unsigned char TimeRefreshLockAcquired;
  /* 0x01d5 */ char __PADDING__[3];
} POP_DEVICE_SYS_STATE, *PPOP_DEVICE_SYS_STATE; /* size: 0x01d8 */

typedef struct _OBJECT_DUMP_CONTROL
{
  /* 0x0000 */ void* Stream;
  /* 0x0008 */ unsigned long Detail;
  /* 0x000c */ long __PADDING__[1];
} OBJECT_DUMP_CONTROL, *POBJECT_DUMP_CONTROL; /* size: 0x0010 */

typedef struct _WHEAP_ERROR_SOURCE
{
  /* 0x0000 */ struct _LIST_ENTRY ListEntry;
  /* 0x0010 */ unsigned long FailedAllocations;
  /* 0x0014 */ unsigned long PlatformErrorSourceId;
  /* 0x0018 */ long ErrorCount;
  /* 0x001c */ unsigned long RecordCount;
  /* 0x0020 */ unsigned long RecordLength;
  /* 0x0024 */ unsigned long PoolTag;
  /* 0x0028 */ enum _WHEA_ERROR_SOURCE_TYPE Type;
  /* 0x002c */ long Padding_592;
  /* 0x0030 */ struct _WHEAP_ERROR_RECORD_WRAPPER* Records;
  /* 0x0038 */ void* Context;
  /* 0x0040 */ unsigned long SectionCount;
  /* 0x0044 */ unsigned long SectionLength;
  /* 0x0048 */ union _LARGE_INTEGER TickCountAtLastError;
  /* 0x0050 */ unsigned long AccumulatedErrors;
  /* 0x0054 */ unsigned long TotalErrors;
  /* 0x0058 */ unsigned char Deferred;
  /* 0x0059 */ char Padding_593[3];
  /* 0x005c */ volatile long Busy;
  /* 0x0060 */ struct _WHEA_ERROR_SOURCE_DESCRIPTOR Descriptor;
  /* 0x042c */ long __PADDING__[1];
} WHEAP_ERROR_SOURCE, *PWHEAP_ERROR_SOURCE; /* size: 0x0430 */

typedef struct _TRACE_LOGFILE_HEADER
{
  /* 0x0000 */ unsigned long BufferSize;
  union
  {
    /* 0x0004 */ unsigned long Version;
    struct
    {
      /* 0x0004 */ unsigned char MajorVersion;
      /* 0x0005 */ unsigned char MinorVersion;
      /* 0x0006 */ unsigned char SubVersion;
      /* 0x0007 */ unsigned char SubMinorVersion;
    } /* size: 0x0004 */ VersionDetail;
  }; /* size: 0x0004 */
  /* 0x0008 */ unsigned long ProviderVersion;
  /* 0x000c */ unsigned long NumberOfProcessors;
  /* 0x0010 */ union _LARGE_INTEGER EndTime;
  /* 0x0018 */ unsigned long TimerResolution;
  /* 0x001c */ unsigned long MaximumFileSize;
  /* 0x0020 */ unsigned long LogFileMode;
  /* 0x0024 */ unsigned long BuffersWritten;
  union
  {
    /* 0x0028 */ struct _GUID LogInstanceGuid;
    struct
    {
      /* 0x0028 */ unsigned long StartBuffers;
      /* 0x002c */ unsigned long PointerSize;
      /* 0x0030 */ unsigned long EventsLost;
      /* 0x0034 */ unsigned long CpuSpeedInMHz;
    }; /* size: 0x0010 */
  }; /* size: 0x0010 */
  /* 0x0038 */ wchar_t* LoggerName;
  /* 0x0040 */ wchar_t* LogFileName;
  /* 0x0048 */ struct _RTL_TIME_ZONE_INFORMATION TimeZone;
  /* 0x00f4 */ long Padding_594;
  /* 0x00f8 */ union _LARGE_INTEGER BootTime;
  /* 0x0100 */ union _LARGE_INTEGER PerfFreq;
  /* 0x0108 */ union _LARGE_INTEGER StartTime;
  /* 0x0110 */ unsigned long ReservedFlags;
  /* 0x0114 */ unsigned long BuffersLost;
} TRACE_LOGFILE_HEADER, *PTRACE_LOGFILE_HEADER; /* size: 0x0118 */

typedef struct _TOKEN
{
  /* 0x0000 */ struct _TOKEN_SOURCE TokenSource;
  /* 0x0010 */ struct _LUID TokenId;
  /* 0x0018 */ struct _LUID AuthenticationId;
  /* 0x0020 */ struct _LUID ParentTokenId;
  /* 0x0028 */ union _LARGE_INTEGER ExpirationTime;
  /* 0x0030 */ struct _ERESOURCE* TokenLock;
  /* 0x0038 */ struct _LUID ModifiedId;
  /* 0x0040 */ struct _SEP_TOKEN_PRIVILEGES Privileges;
  /* 0x0058 */ struct _SEP_AUDIT_POLICY AuditPolicy;
  /* 0x0077 */ char Padding_595;
  /* 0x0078 */ unsigned long SessionId;
  /* 0x007c */ unsigned long UserAndGroupCount;
  /* 0x0080 */ unsigned long RestrictedSidCount;
  /* 0x0084 */ unsigned long VariableLength;
  /* 0x0088 */ unsigned long DynamicCharged;
  /* 0x008c */ unsigned long DynamicAvailable;
  /* 0x0090 */ unsigned long DefaultOwnerIndex;
  /* 0x0094 */ long Padding_596;
  /* 0x0098 */ struct _SID_AND_ATTRIBUTES* UserAndGroups;
  /* 0x00a0 */ struct _SID_AND_ATTRIBUTES* RestrictedSids;
  /* 0x00a8 */ void* PrimaryGroup;
  /* 0x00b0 */ unsigned long* DynamicPart;
  /* 0x00b8 */ struct _ACL* DefaultDacl;
  /* 0x00c0 */ enum _TOKEN_TYPE TokenType;
  /* 0x00c4 */ enum _SECURITY_IMPERSONATION_LEVEL ImpersonationLevel;
  /* 0x00c8 */ unsigned long TokenFlags;
  /* 0x00cc */ unsigned char TokenInUse;
  /* 0x00cd */ char Padding_597[3];
  /* 0x00d0 */ unsigned long IntegrityLevelIndex;
  /* 0x00d4 */ unsigned long MandatoryPolicy;
  /* 0x00d8 */ struct _SEP_LOGON_SESSION_REFERENCES* LogonSession;
  /* 0x00e0 */ struct _LUID OriginatingLogonSession;
  /* 0x00e8 */ struct _SID_AND_ATTRIBUTES_HASH SidHash;
  /* 0x01f8 */ struct _SID_AND_ATTRIBUTES_HASH RestrictedSidHash;
  /* 0x0308 */ struct _AUTHZBASEP_SECURITY_ATTRIBUTES_INFORMATION* pSecurityAttributes;
  /* 0x0310 */ void* Package;
  /* 0x0318 */ struct _SID_AND_ATTRIBUTES* Capabilities;
  /* 0x0320 */ unsigned long CapabilityCount;
  /* 0x0324 */ long Padding_598;
  /* 0x0328 */ struct _SID_AND_ATTRIBUTES_HASH CapabilitiesHash;
  /* 0x0438 */ struct _SEP_LOWBOX_NUMBER_ENTRY* LowboxNumberEntry;
  /* 0x0440 */ struct _SEP_CACHED_HANDLES_ENTRY* LowboxHandlesEntry;
  /* 0x0448 */ struct _AUTHZBASEP_CLAIM_ATTRIBUTES_COLLECTION* pClaimAttributes;
  /* 0x0450 */ void* TrustLevelSid;
  /* 0x0458 */ struct _TOKEN* TrustLinkedToken;
  /* 0x0460 */ void* IntegrityLevelSidValue;
  /* 0x0468 */ struct _SEP_SID_VALUES_BLOCK* TokenSidValues;
  /* 0x0470 */ struct _SEP_LUID_TO_INDEX_MAP_ENTRY* IndexEntry;
  /* 0x0478 */ struct _SEP_TOKEN_DIAG_TRACK_ENTRY* DiagnosticInfo;
  /* 0x0480 */ struct _SEP_CACHED_HANDLES_ENTRY* BnoIsolationHandlesEntry;
  /* 0x0488 */ void* SessionObject;
  /* 0x0490 */ unsigned __int64 VariablePart;
} TOKEN, *PTOKEN; /* size: 0x0498 */

typedef struct _SEP_LOWBOX_NUMBER_ENTRY
{
  /* 0x0000 */ struct _RTL_DYNAMIC_HASH_TABLE_ENTRY HashEntry;
  /* 0x0018 */ __int64 ReferenceCount;
  /* 0x0020 */ void* PackageSid;
  /* 0x0028 */ unsigned long LowboxNumber;
  /* 0x002c */ long Padding_599;
  /* 0x0030 */ void* AtomTable;
} SEP_LOWBOX_NUMBER_ENTRY, *PSEP_LOWBOX_NUMBER_ENTRY; /* size: 0x0038 */

typedef struct _LOCK_HEADER
{
  /* 0x0000 */ struct _RTL_AVL_TREE LockTree;
  /* 0x0008 */ struct _RTL_AVL_TREE LockMdlSwitchedTree;
  /* 0x0010 */ unsigned __int64 Count;
  /* 0x0018 */ unsigned __int64 Lock;
  /* 0x0020 */ unsigned long Valid;
  /* 0x0024 */ long __PADDING__[1];
} LOCK_HEADER, *PLOCK_HEADER; /* size: 0x0028 */

typedef struct _HEAP_STOP_ON_VALUES
{
  /* 0x0000 */ unsigned __int64 AllocAddress;
  /* 0x0008 */ struct _HEAP_STOP_ON_TAG AllocTag;
  /* 0x000c */ long Padding_600;
  /* 0x0010 */ unsigned __int64 ReAllocAddress;
  /* 0x0018 */ struct _HEAP_STOP_ON_TAG ReAllocTag;
  /* 0x001c */ long Padding_601;
  /* 0x0020 */ unsigned __int64 FreeAddress;
  /* 0x0028 */ struct _HEAP_STOP_ON_TAG FreeTag;
  /* 0x002c */ long __PADDING__[1];
} HEAP_STOP_ON_VALUES, *PHEAP_STOP_ON_VALUES; /* size: 0x0030 */

typedef struct _ALPC_DISPATCH_CONTEXT
{
  /* 0x0000 */ struct _ALPC_PORT* PortObject;
  /* 0x0008 */ struct _KALPC_MESSAGE* Message;
  /* 0x0010 */ struct _ALPC_COMMUNICATION_INFO* CommunicationInfo;
  /* 0x0018 */ struct _ETHREAD* TargetThread;
  /* 0x0020 */ struct _ALPC_PORT* TargetPort;
  /* 0x0028 */ union _KALPC_DIRECT_EVENT DirectEvent;
  /* 0x0030 */ unsigned long Flags;
  /* 0x0034 */ unsigned short TotalLength;
  /* 0x0036 */ unsigned short Type;
  /* 0x0038 */ unsigned short DataInfoOffset;
  /* 0x003a */ unsigned char SignalCompletion;
  /* 0x003b */ unsigned char PostedToCompletionList;
  /* 0x003c */ long __PADDING__[1];
} ALPC_DISPATCH_CONTEXT, *PALPC_DISPATCH_CONTEXT; /* size: 0x0040 */

typedef struct _REMOTE_PORT_VIEW
{
  /* 0x0000 */ unsigned long Length;
  /* 0x0004 */ long Padding_602;
  /* 0x0008 */ unsigned __int64 ViewSize;
  /* 0x0010 */ void* ViewBase;
} REMOTE_PORT_VIEW, *PREMOTE_PORT_VIEW; /* size: 0x0018 */

typedef struct _IO_IRP_EXT_TRACK_OFFSET_HEADER
{
  /* 0x0000 */ unsigned short Validation;
  /* 0x0002 */ unsigned short Flags;
  /* 0x0004 */ long Padding_603;
  /* 0x0008 */ void* TrackedOffsetCallback /* function */;
} IO_IRP_EXT_TRACK_OFFSET_HEADER, *PIO_IRP_EXT_TRACK_OFFSET_HEADER; /* size: 0x0010 */

typedef struct _MEMORY_ALLOCATION_DESCRIPTOR
{
  /* 0x0000 */ struct _LIST_ENTRY ListEntry;
  /* 0x0010 */ enum _TYPE_OF_MEMORY MemoryType;
  /* 0x0014 */ long Padding_604;
  /* 0x0018 */ unsigned __int64 BasePage;
  /* 0x0020 */ unsigned __int64 PageCount;
} MEMORY_ALLOCATION_DESCRIPTOR, *PMEMORY_ALLOCATION_DESCRIPTOR; /* size: 0x0028 */

typedef struct _PS_TRUSTLET_TKSESSION_ID
{
  /* 0x0000 */ unsigned __int64 SessionId[4];
} PS_TRUSTLET_TKSESSION_ID, *PPS_TRUSTLET_TKSESSION_ID; /* size: 0x0020 */

typedef struct _IO_ADAPTER_CRYPTO_KEY_DESCRIPTOR
{
  /* 0x0000 */ unsigned long Version;
  /* 0x0004 */ unsigned long Size;
  /* 0x0008 */ unsigned long CryptoIndex;
  /* 0x000c */ unsigned long AlgorithmId;
  /* 0x0010 */ unsigned long DataUnitSize;
  /* 0x0014 */ unsigned long KeySize;
  /* 0x0018 */ unsigned char KeyHash[32];
  /* 0x0038 */ void* KeyVirtualAddress;
  /* 0x0040 */ union _LARGE_INTEGER KeyPhysicalAddress;
} IO_ADAPTER_CRYPTO_KEY_DESCRIPTOR, *PIO_ADAPTER_CRYPTO_KEY_DESCRIPTOR; /* size: 0x0048 */

typedef struct _WNF_DISPATCHER
{
  /* 0x0000 */ struct _WNF_NODE_HEADER Header;
  /* 0x0004 */ long Padding_605;
  /* 0x0008 */ struct _WORK_QUEUE_ITEM WorkItem;
  /* 0x0028 */ long State;
  /* 0x002c */ long __PADDING__[1];
} WNF_DISPATCHER, *PWNF_DISPATCHER; /* size: 0x0030 */

typedef struct _RELATIVE_SYMLINK_INFO
{
  /* 0x0000 */ unsigned short ExposedNamespaceLength;
  /* 0x0002 */ unsigned short Flags;
  /* 0x0004 */ unsigned short DeviceNameLength;
  /* 0x0006 */ unsigned short Reserved;
  /* 0x0008 */ struct _RELATIVE_SYMLINK_INFO* InteriorMountPoint;
  /* 0x0010 */ struct _UNICODE_STRING OpenedName;
} RELATIVE_SYMLINK_INFO, *PRELATIVE_SYMLINK_INFO; /* size: 0x0020 */

typedef struct _IOP_FILE_OBJECT_EXTENSION
{
  /* 0x0000 */ unsigned long FoExtFlags;
  /* 0x0004 */ long Padding_606;
  /* 0x0008 */ void* FoExtPerTypeExtension[9];
  /* 0x0050 */ enum _IOP_PRIORITY_HINT FoIoPriorityHint;
  /* 0x0054 */ long __PADDING__[1];
} IOP_FILE_OBJECT_EXTENSION, *PIOP_FILE_OBJECT_EXTENSION; /* size: 0x0058 */

typedef struct _VI_DEADLOCK_RESOURCE
{
  /* 0x0000 */ enum _VI_DEADLOCK_RESOURCE_TYPE Type;
  struct /* bitfield */
  {
    /* 0x0004 */ unsigned long NodeCount : 16; /* bit position: 0 */
    /* 0x0004 */ unsigned long RecursionCount : 16; /* bit position: 16 */
  }; /* bitfield */
  /* 0x0008 */ void* ResourceAddress;
  /* 0x0010 */ struct _VI_DEADLOCK_THREAD* ThreadOwner;
  /* 0x0018 */ struct _LIST_ENTRY ResourceList;
  union
  {
    /* 0x0028 */ struct _LIST_ENTRY HashChainList;
    /* 0x0028 */ struct _LIST_ENTRY FreeListEntry;
  }; /* size: 0x0010 */
  /* 0x0038 */ void* StackTrace[8];
  /* 0x0078 */ void* LastAcquireTrace[8];
  /* 0x00b8 */ void* LastReleaseTrace[8];
} VI_DEADLOCK_RESOURCE, *PVI_DEADLOCK_RESOURCE; /* size: 0x00f8 */

typedef struct _SEP_CACHED_HANDLES_ENTRY_DESCRIPTOR
{
  /* 0x0000 */ enum _SEP_CACHED_HANDLES_ENTRY_TYPE DescriptorType;
  /* 0x0004 */ long Padding_607;
  union
  {
    /* 0x0008 */ void* PackageSid;
    /* 0x0008 */ struct _UNICODE_STRING IsolationPrefix;
  }; /* size: 0x0010 */
} SEP_CACHED_HANDLES_ENTRY_DESCRIPTOR, *PSEP_CACHED_HANDLES_ENTRY_DESCRIPTOR; /* size: 0x0018 */

typedef struct _SEP_CACHED_HANDLES_ENTRY
{
  /* 0x0000 */ struct _RTL_DYNAMIC_HASH_TABLE_ENTRY HashEntry;
  /* 0x0018 */ __int64 ReferenceCount;
  /* 0x0020 */ struct _SEP_CACHED_HANDLES_ENTRY_DESCRIPTOR EntryDescriptor;
  /* 0x0038 */ unsigned long HandleCount;
  /* 0x003c */ long Padding_608;
  /* 0x0040 */ void** Handles;
} SEP_CACHED_HANDLES_ENTRY, *PSEP_CACHED_HANDLES_ENTRY; /* size: 0x0048 */

typedef struct _OBJECT_HANDLE_COUNT_DATABASE
{
  /* 0x0000 */ unsigned long CountEntries;
  /* 0x0004 */ long Padding_609;
  /* 0x0008 */ struct _OBJECT_HANDLE_COUNT_ENTRY HandleCountEntries[1];
} OBJECT_HANDLE_COUNT_DATABASE, *POBJECT_HANDLE_COUNT_DATABASE; /* size: 0x0018 */

typedef struct _EXCEPTION_POINTERS
{
  /* 0x0000 */ struct _EXCEPTION_RECORD* ExceptionRecord;
  /* 0x0008 */ struct _CONTEXT* ContextRecord;
} EXCEPTION_POINTERS, *PEXCEPTION_POINTERS; /* size: 0x0010 */

typedef struct _OBJECT_HEADER_AUDIT_INFO
{
  /* 0x0000 */ void* SecurityDescriptor;
  /* 0x0008 */ unsigned __int64 Reserved;
} OBJECT_HEADER_AUDIT_INFO, *POBJECT_HEADER_AUDIT_INFO; /* size: 0x0010 */

typedef struct _OBJECT_HEADER_EXTENDED_INFO
{
  /* 0x0000 */ struct _OBJECT_FOOTER* Footer;
  /* 0x0008 */ unsigned __int64 Reserved;
} OBJECT_HEADER_EXTENDED_INFO, *POBJECT_HEADER_EXTENDED_INFO; /* size: 0x0010 */

typedef struct _WHEAP_ERROR_SOURCE_TABLE
{
  /* 0x0000 */ unsigned long Signature;
  /* 0x0004 */ long Count;
  /* 0x0008 */ unsigned long NextId;
  /* 0x000c */ long Padding_610;
  /* 0x0010 */ struct _LIST_ENTRY Items;
  /* 0x0020 */ struct _KEVENT InsertLock;
} WHEAP_ERROR_SOURCE_TABLE, *PWHEAP_ERROR_SOURCE_TABLE; /* size: 0x0038 */

typedef struct _WNF_PROCESS_CONTEXT
{
  /* 0x0000 */ struct _WNF_NODE_HEADER Header;
  /* 0x0004 */ long Padding_611;
  /* 0x0008 */ struct _EPROCESS* Process;
  /* 0x0010 */ struct _LIST_ENTRY WnfProcessesListEntry;
  /* 0x0020 */ void* ImplicitScopeInstances[3];
  /* 0x0038 */ struct _WNF_LOCK TemporaryNamesListLock;
  /* 0x0040 */ struct _LIST_ENTRY TemporaryNamesListHead;
  /* 0x0050 */ struct _WNF_LOCK ProcessSubscriptionListLock;
  /* 0x0058 */ struct _LIST_ENTRY ProcessSubscriptionListHead;
  /* 0x0068 */ struct _WNF_LOCK DeliveryPendingListLock;
  /* 0x0070 */ struct _LIST_ENTRY DeliveryPendingListHead;
  /* 0x0080 */ struct _KEVENT* NotificationEvent;
} WNF_PROCESS_CONTEXT, *PWNF_PROCESS_CONTEXT; /* size: 0x0088 */

typedef struct _VI_DEADLOCK_THREAD
{
  /* 0x0000 */ struct _KTHREAD* Thread;
  /* 0x0008 */ struct _VI_DEADLOCK_NODE* CurrentSpinNode;
  /* 0x0010 */ struct _VI_DEADLOCK_NODE* CurrentOtherNode;
  union
  {
    /* 0x0018 */ struct _LIST_ENTRY ListEntry;
    /* 0x0018 */ struct _LIST_ENTRY FreeListEntry;
  }; /* size: 0x0010 */
  /* 0x0028 */ unsigned long NodeCount;
  /* 0x002c */ volatile unsigned long PagingCount;
  /* 0x0030 */ unsigned char ThreadUsesEresources;
  /* 0x0031 */ char __PADDING__[7];
} VI_DEADLOCK_THREAD, *PVI_DEADLOCK_THREAD; /* size: 0x0038 */

typedef struct _TRIAGE_EX_WORK_QUEUE
{
  /* 0x0000 */ struct _KPRIQUEUE WorkPriQueue;
} TRIAGE_EX_WORK_QUEUE, *PTRIAGE_EX_WORK_QUEUE; /* size: 0x02b0 */

typedef struct _LPCP_MESSAGE
{
  union
  {
    /* 0x0000 */ struct _LIST_ENTRY Entry;
    struct
    {
      /* 0x0000 */ struct _SINGLE_LIST_ENTRY FreeEntry;
      /* 0x0008 */ unsigned long Reserved0;
    }; /* size: 0x000c */
  }; /* size: 0x0010 */
  /* 0x0010 */ void* SenderPort;
  /* 0x0018 */ struct _ETHREAD* RepliedToThread;
  /* 0x0020 */ void* PortContext;
  /* 0x0028 */ struct _PORT_MESSAGE Request;
} LPCP_MESSAGE, *PLPCP_MESSAGE; /* size: 0x0050 */

typedef struct _PNP_DEVICE_EVENT_LIST
{
  /* 0x0000 */ long Status;
  /* 0x0004 */ long Padding_612;
  /* 0x0008 */ struct _KMUTANT EventQueueMutex;
  /* 0x0040 */ struct _FAST_MUTEX Lock;
  /* 0x0078 */ struct _LIST_ENTRY List;
} PNP_DEVICE_EVENT_LIST, *PPNP_DEVICE_EVENT_LIST; /* size: 0x0088 */

typedef struct _FAST_ERESOURCE
{
  /* 0x0000 */ void* Reserved1[3];
  /* 0x0018 */ unsigned long Reserved2;
  /* 0x001c */ long Padding_613;
  /* 0x0020 */ void* Reserved3[4];
  /* 0x0040 */ unsigned long Reserved4[4];
  /* 0x0050 */ void* Reserved5;
  /* 0x0058 */ void* Reserved6[2];
} FAST_ERESOURCE, *PFAST_ERESOURCE; /* size: 0x0068 */

typedef struct _SYSTEM_POWER_POLICY
{
  /* 0x0000 */ unsigned long Revision;
  /* 0x0004 */ struct POWER_ACTION_POLICY PowerButton;
  /* 0x0010 */ struct POWER_ACTION_POLICY SleepButton;
  /* 0x001c */ struct POWER_ACTION_POLICY LidClose;
  /* 0x0028 */ enum _SYSTEM_POWER_STATE LidOpenWake;
  /* 0x002c */ unsigned long Reserved;
  /* 0x0030 */ struct POWER_ACTION_POLICY Idle;
  /* 0x003c */ unsigned long IdleTimeout;
  /* 0x0040 */ unsigned char IdleSensitivity;
  /* 0x0041 */ unsigned char DynamicThrottle;
  /* 0x0042 */ unsigned char Spare2[2];
  /* 0x0044 */ enum _SYSTEM_POWER_STATE MinSleep;
  /* 0x0048 */ enum _SYSTEM_POWER_STATE MaxSleep;
  /* 0x004c */ enum _SYSTEM_POWER_STATE ReducedLatencySleep;
  /* 0x0050 */ unsigned long WinLogonFlags;
  /* 0x0054 */ unsigned long Spare3;
  /* 0x0058 */ unsigned long DozeS4Timeout;
  /* 0x005c */ unsigned long BroadcastCapacityResolution;
  /* 0x0060 */ struct SYSTEM_POWER_LEVEL DischargePolicy[4];
  /* 0x00c0 */ unsigned long VideoTimeout;
  /* 0x00c4 */ unsigned char VideoDimDisplay;
  /* 0x00c5 */ char Padding_614[3];
  /* 0x00c8 */ unsigned long VideoReserved[3];
  /* 0x00d4 */ unsigned long SpindownTimeout;
  /* 0x00d8 */ unsigned char OptimizeForPower;
  /* 0x00d9 */ unsigned char FanThrottleTolerance;
  /* 0x00da */ unsigned char ForcedThrottle;
  /* 0x00db */ unsigned char MinThrottle;
  /* 0x00dc */ struct POWER_ACTION_POLICY OverThrottled;
} SYSTEM_POWER_POLICY, *PSYSTEM_POWER_POLICY; /* size: 0x00e8 */

typedef struct _LOCK_TRACKER
{
  /* 0x0000 */ struct _RTL_BALANCED_NODE LockTrackerNode;
  /* 0x0018 */ struct _MDL* Mdl;
  /* 0x0020 */ void* StartVa;
  /* 0x0028 */ unsigned __int64 Count;
  /* 0x0030 */ unsigned long Offset;
  /* 0x0034 */ unsigned long Length;
  /* 0x0038 */ unsigned long Who;
  /* 0x003c */ unsigned long Hash;
  /* 0x0040 */ unsigned __int64 Page;
  /* 0x0048 */ void* StackTrace[8];
  /* 0x0088 */ struct _EPROCESS* Process;
} LOCK_TRACKER, *PLOCK_TRACKER; /* size: 0x0090 */

typedef struct _OBJECT_HEADER_PADDING_INFO
{
  /* 0x0000 */ unsigned long PaddingAmount;
} OBJECT_HEADER_PADDING_INFO, *POBJECT_HEADER_PADDING_INFO; /* size: 0x0004 */

typedef struct _MSUBSECTION
{
  /* 0x0000 */ struct _SUBSECTION Core;
  /* 0x0038 */ struct _RTL_BALANCED_NODE SubsectionNode;
  /* 0x0050 */ struct _LIST_ENTRY DereferenceList;
  /* 0x0060 */ unsigned __int64 NumberOfMappedViews;
  /* 0x0068 */ unsigned long NumberOfPfnReferences;
  /* 0x006c */ unsigned long LargeViews;
  /* 0x0070 */ struct _MI_PROTOTYPE_PTES_NODE ProtosNode;
} MSUBSECTION, *PMSUBSECTION; /* size: 0x0090 */

typedef struct _MI_EXTENT_DELETION_WAIT_BLOCK
{
  /* 0x0000 */ struct _MI_EXTENT_DELETION_WAIT_BLOCK* Next;
  /* 0x0008 */ struct _KGATE Gate;
} MI_EXTENT_DELETION_WAIT_BLOCK, *PMI_EXTENT_DELETION_WAIT_BLOCK; /* size: 0x0020 */

typedef struct _MI_DLL_OVERFLOW_AREA
{
  /* 0x0000 */ void* RangeStart;
  /* 0x0008 */ void* NextVa;
  /* 0x0010 */ void* RangeStartAbove2gb;
  /* 0x0018 */ void* NextVaAbove2gb;
} MI_DLL_OVERFLOW_AREA, *PMI_DLL_OVERFLOW_AREA; /* size: 0x0020 */

typedef struct _MI_SECTION_WOW_STATE
{
  /* 0x0000 */ struct _RTL_BITMAP_EX ImageBitMap;
  /* 0x0010 */ struct _MI_DLL_OVERFLOW_AREA OverflowArea;
  /* 0x0030 */ struct _SECTION* CfgBitMapSection;
  /* 0x0038 */ struct _CONTROL_AREA* CfgBitMapControlArea;
} MI_SECTION_WOW_STATE, *PMI_SECTION_WOW_STATE; /* size: 0x0040 */

typedef struct _MI_SECTION_STATE
{
  /* 0x0000 */ volatile long SectionObjectPointersLock;
  /* 0x0004 */ long Padding_615;
  /* 0x0008 */ struct _RTL_AVL_TREE SectionBasedRoot;
  /* 0x0010 */ struct _EX_PUSH_LOCK SectionBasedLock;
  /* 0x0018 */ volatile unsigned __int64 UnusedSegmentPagedPool;
  /* 0x0020 */ unsigned long DataSectionProtectionMask;
  /* 0x0024 */ long Padding_616;
  /* 0x0028 */ void* HighSectionBase;
  /* 0x0030 */ struct _MSUBSECTION PhysicalSubsection;
  /* 0x00c0 */ struct _CONTROL_AREA PhysicalControlArea;
  /* 0x0140 */ struct _MMPFNLIST PurgingExtentPages;
  /* 0x0168 */ struct _MMPFN* DanglingExtentPages;
  /* 0x0170 */ struct _WORK_QUEUE_ITEM DanglingExtentsWorkItem;
  /* 0x0190 */ struct _MI_EXTENT_DELETION_WAIT_BLOCK DanglingExtentsDeletionWaitList;
  /* 0x01b0 */ unsigned char FileOnlyMemoryPfnsCreated;
  /* 0x01b1 */ unsigned char DanglingExtentsWorkerActive;
  /* 0x01b2 */ unsigned char PurgingExtentsNeedWatchdog;
  /* 0x01b3 */ char Padding_617[5];
  /* 0x01b8 */ struct _RTL_AVL_TREE PrototypePtesTree;
  /* 0x01c0 */ volatile long PrototypePtesTreeSpinLock;
  /* 0x01c4 */ long Padding_618;
  /* 0x01c8 */ struct _EX_PUSH_LOCK RelocateBitmapsLock;
  /* 0x01d0 */ struct _RTL_BITMAP_EX ImageBitMapNative;
  /* 0x01e0 */ unsigned __int64 ImageBiasNative;
  /* 0x01e8 */ struct _MI_DLL_OVERFLOW_AREA OverflowArea;
  /* 0x0208 */ struct _MI_SECTION_WOW_STATE Wow[1];
  /* 0x0248 */ unsigned __int64 ImageBiasWow;
  /* 0x0250 */ struct _RTL_BITMAP_EX ImageBitMapWowScratch;
  /* 0x0260 */ struct _RTL_BITMAP_EX ImageBitMap64Low;
  /* 0x0270 */ unsigned __int64 ImageBias64Low;
  /* 0x0278 */ void* ApiSetSection;
  /* 0x0280 */ void* ApiSetSchema;
  /* 0x0288 */ unsigned __int64 ApiSetSchemaSize;
  /* 0x0290 */ unsigned long LostDataFiles;
  /* 0x0294 */ unsigned long LostDataPages;
  /* 0x0298 */ unsigned long ImageFailureReason;
  /* 0x029c */ long Padding_619;
  /* 0x02a0 */ struct _SECTION* CfgBitMapSection;
  /* 0x02a8 */ struct _CONTROL_AREA* CfgBitMapControlArea;
  /* 0x02b0 */ struct _RTL_BITMAP_EX KernelCfgBitMap;
  /* 0x02c0 */ struct _EX_PUSH_LOCK KernelCfgBitMapLock;
  /* 0x02c8 */ unsigned long ImageCfgFailure;
  /* 0x02cc */ unsigned long RetpolineReservePages;
  /* 0x02d0 */ struct _MDL* RetpolineStubMdl;
  /* 0x02d8 */ struct _RTL_BITMAP_EX KernelRetpolineBitMap;
  /* 0x02e8 */ struct _RTL_RETPOLINE_ROUTINES* RetpolineRoutines;
  /* 0x02f0 */ struct _MMPTE* RetpolineRevertPte;
  /* 0x02f8 */ struct _LIST_ENTRY NonRetpolineImageLoadList;
  /* 0x0308 */ unsigned long RetpolineStubPages;
  /* 0x030c */ long RetpolineBootStatus;
  /* 0x0310 */ unsigned long ImageBreakpointEnabled;
  /* 0x0314 */ unsigned long ImageBreakpointChecksum;
  /* 0x0318 */ unsigned long ImageBreakpointSize;
  /* 0x031c */ volatile long ImageValidationFailed;
  /* 0x0320 */ struct _RTL_AVL_TREE ImageExtentTree;
  /* 0x0328 */ struct _EX_PUSH_LOCK ImageExtentTreeLock;
  /* 0x0330 */ unsigned long HotPatchReserveSize;
  /* 0x0334 */ long __PADDING__[3];
} MI_SECTION_STATE, *PMI_SECTION_STATE; /* size: 0x0340 */

typedef struct _HAL_IOMMU_DISPATCH
{
  /* 0x0000 */ void* HalIommuSupportEnabled /* function */;
  /* 0x0008 */ void* HalIommuGetConfiguration /* function */;
  /* 0x0010 */ void* HalIommuGetLibraryContext /* function */;
  /* 0x0018 */ void* HalIommuMapDevice /* function */;
  /* 0x0020 */ void* HalIommuEnableDevicePasid /* function */;
  /* 0x0028 */ void* HalIommuSetAddressSpace /* function */;
  /* 0x0030 */ void* HalIommuDisableDevicePasid /* function */;
  /* 0x0038 */ void* HalIommuUnmapDevice /* function */;
  /* 0x0040 */ void* HalIommuFreeLibraryContext /* function */;
  /* 0x0048 */ void* HalIommuFlushTb /* function */;
  /* 0x0050 */ void* HalIommuFlushAllPasid /* function */;
  /* 0x0058 */ void* HalIommuProcessPageRequestQueue /* function */;
  /* 0x0060 */ void* HalIommuFaultRoutine /* function */;
  /* 0x0068 */ void* HalIommuReferenceAsid /* function */;
  /* 0x0070 */ void* HalIommuDereferenceAsid /* function */;
  /* 0x0078 */ void* HalIommuServicePageFault /* function */;
  /* 0x0080 */ void* HalIommuDevicePowerChange /* function */;
  /* 0x0088 */ void* HalIommuBeginDeviceReset /* function */;
  /* 0x0090 */ void* HalIommuFinalizeDeviceReset /* function */;
} HAL_IOMMU_DISPATCH, *PHAL_IOMMU_DISPATCH; /* size: 0x0098 */

typedef struct _MI_RESUME_WORKITEM
{
  /* 0x0000 */ struct _KEVENT ResumeCompleteEvent;
  /* 0x0018 */ struct _WORK_QUEUE_ITEM WorkItem;
} MI_RESUME_WORKITEM, *PMI_RESUME_WORKITEM; /* size: 0x0038 */

typedef struct _MI_SHUTDOWN_STATE
{
  /* 0x0000 */ unsigned char CrashDumpInitialized;
  /* 0x0001 */ unsigned char ConnectedStandbyActive;
  /* 0x0002 */ unsigned char ZeroPageFileAtShutdown;
  /* 0x0003 */ char Padding_620;
  /* 0x0004 */ unsigned long SystemShutdown;
  /* 0x0008 */ long ShutdownFlushInProgress;
  /* 0x000c */ unsigned long MirroringActive;
  /* 0x0010 */ struct _MI_RESUME_WORKITEM ResumeItem;
  /* 0x0048 */ struct _ETHREAD* MirrorHoldsPfn;
  /* 0x0050 */ struct _RTL_BITMAP_EX MirrorBitMaps[2];
  /* 0x0070 */ struct _MMPTE* CrashDumpPte;
} MI_SHUTDOWN_STATE, *PMI_SHUTDOWN_STATE; /* size: 0x0078 */

typedef struct _LOADER_HIVE_RECOVERY_INFO
{
  struct /* bitfield */
  {
    /* 0x0000 */ unsigned long Recovered : 1; /* bit position: 0 */
    /* 0x0000 */ unsigned long LegacyRecovery : 1; /* bit position: 1 */
    /* 0x0000 */ unsigned long SoftRebootConflict : 1; /* bit position: 2 */
    /* 0x0000 */ unsigned long MostRecentLog : 3; /* bit position: 3 */
  }; /* bitfield */
  /* 0x0004 */ unsigned long Spare : 27; /* bit position: 0 */
  /* 0x0008 */ unsigned long LogNextSequence;
  /* 0x000c */ unsigned long LogMinimumSequence;
  /* 0x0010 */ unsigned long LogCurrentOffset;
} LOADER_HIVE_RECOVERY_INFO, *PLOADER_HIVE_RECOVERY_INFO; /* size: 0x0014 */

typedef struct _LOADER_PARAMETER_EXTENSION
{
  /* 0x0000 */ unsigned long Size;
  /* 0x0004 */ struct _PROFILE_PARAMETER_BLOCK Profile;
  /* 0x0014 */ long Padding_621;
  /* 0x0018 */ void* EmInfFileImage;
  /* 0x0020 */ unsigned long EmInfFileSize;
  /* 0x0024 */ long Padding_622;
  /* 0x0028 */ void* TriageDumpBlock;
  /* 0x0030 */ struct _HEADLESS_LOADER_BLOCK* HeadlessLoaderBlock;
  /* 0x0038 */ struct _SMBIOS3_TABLE_HEADER* SMBiosEPSHeader;
  /* 0x0040 */ void* DrvDBImage;
  /* 0x0048 */ unsigned long DrvDBSize;
  /* 0x004c */ long Padding_623;
  /* 0x0050 */ void* DrvDBPatchImage;
  /* 0x0058 */ unsigned long DrvDBPatchSize;
  /* 0x005c */ long Padding_624;
  /* 0x0060 */ struct _NETWORK_LOADER_BLOCK* NetworkLoaderBlock;
  /* 0x0068 */ struct _LIST_ENTRY FirmwareDescriptorListHead;
  /* 0x0078 */ void* AcpiTable;
  /* 0x0080 */ unsigned long AcpiTableSize;
  struct /* bitfield */
  {
    /* 0x0084 */ unsigned long LastBootSucceeded : 1; /* bit position: 0 */
    /* 0x0084 */ unsigned long LastBootShutdown : 1; /* bit position: 1 */
    /* 0x0084 */ unsigned long IoPortAccessSupported : 1; /* bit position: 2 */
    /* 0x0084 */ unsigned long BootDebuggerActive : 1; /* bit position: 3 */
    /* 0x0084 */ unsigned long StrongCodeGuarantees : 1; /* bit position: 4 */
    /* 0x0084 */ unsigned long HardStrongCodeGuarantees : 1; /* bit position: 5 */
    /* 0x0084 */ unsigned long SidSharingDisabled : 1; /* bit position: 6 */
    /* 0x0084 */ unsigned long TpmInitialized : 1; /* bit position: 7 */
    /* 0x0084 */ unsigned long VsmConfigured : 1; /* bit position: 8 */
    /* 0x0084 */ unsigned long IumEnabled : 1; /* bit position: 9 */
    /* 0x0084 */ unsigned long IsSmbboot : 1; /* bit position: 10 */
    /* 0x0084 */ unsigned long BootLogEnabled : 1; /* bit position: 11 */
    /* 0x0084 */ unsigned long DriverVerifierEnabled : 1; /* bit position: 12 */
    /* 0x0084 */ unsigned long SuppressMonitorX : 1; /* bit position: 13 */
    /* 0x0084 */ unsigned long KernelCetEnabled : 1; /* bit position: 14 */
    /* 0x0084 */ unsigned long SuppressSmap : 1; /* bit position: 15 */
    /* 0x0084 */ unsigned long Unused : 5; /* bit position: 16 */
    /* 0x0084 */ unsigned long FeatureSimulations : 6; /* bit position: 21 */
    /* 0x0084 */ unsigned long MicrocodeSelfHosting : 1; /* bit position: 27 */
    /* 0x0084 */ unsigned long XhciLegacyHandoffSkip : 1; /* bit position: 28 */
    /* 0x0084 */ unsigned long DisableInsiderOptInHVCI : 1; /* bit position: 29 */
    /* 0x0084 */ unsigned long MicrocodeMinVerSupported : 1; /* bit position: 30 */
    /* 0x0084 */ unsigned long GpuIommuEnabled : 1; /* bit position: 31 */
  }; /* bitfield */
  /* 0x0088 */ struct _LOADER_PERFORMANCE_DATA LoaderPerformanceData;
  /* 0x00e8 */ struct _LIST_ENTRY BootApplicationPersistentData;
  /* 0x00f8 */ void* WmdTestResult;
  /* 0x0100 */ struct _GUID BootIdentifier;
  /* 0x0110 */ unsigned long ResumePages;
  /* 0x0114 */ long Padding_625;
  /* 0x0118 */ void* DumpHeader;
  /* 0x0120 */ void* BgContext;
  /* 0x0128 */ void* NumaLocalityInfo;
  /* 0x0130 */ void* NumaGroupAssignment;
  /* 0x0138 */ struct _LIST_ENTRY AttachedHives;
  /* 0x0148 */ unsigned long MemoryCachingRequirementsCount;
  /* 0x014c */ long Padding_626;
  /* 0x0150 */ void* MemoryCachingRequirements;
  /* 0x0158 */ struct _BOOT_ENTROPY_LDR_RESULT BootEntropyResult;
  /* 0x09c0 */ unsigned __int64 ProcessorCounterFrequency;
  /* 0x09c8 */ struct _LOADER_PARAMETER_HYPERVISOR_EXTENSION HypervisorExtension;
  /* 0x0a08 */ struct _GUID HardwareConfigurationId;
  /* 0x0a18 */ struct _LIST_ENTRY HalExtensionModuleList;
  /* 0x0a28 */ union _LARGE_INTEGER SystemTime;
  /* 0x0a30 */ unsigned __int64 TimeStampAtSystemTimeRead;
  union
  {
    /* 0x0a38 */ unsigned __int64 BootFlags;
    struct /* bitfield */
    {
      /* 0x0a38 */ unsigned __int64 DbgMenuOsSelection : 1; /* bit position: 0 */
      /* 0x0a38 */ unsigned __int64 DbgHiberBoot : 1; /* bit position: 1 */
      /* 0x0a38 */ unsigned __int64 DbgSoftRestart : 1; /* bit position: 2 */
      /* 0x0a38 */ unsigned __int64 DbgMeasuredLaunch : 1; /* bit position: 3 */
    }; /* bitfield */
  }; /* size: 0x0008 */
  union
  {
    /* 0x0a40 */ unsigned __int64 InternalBootFlags;
    struct /* bitfield */
    {
      /* 0x0a40 */ unsigned __int64 DbgUtcBootTime : 1; /* bit position: 0 */
      /* 0x0a40 */ unsigned __int64 DbgRtcBootTime : 1; /* bit position: 1 */
      /* 0x0a40 */ unsigned __int64 DbgNoLegacyServices : 1; /* bit position: 2 */
    }; /* bitfield */
  }; /* size: 0x0008 */
  /* 0x0a48 */ void* WfsFPData;
  /* 0x0a50 */ unsigned long WfsFPDataSize;
  /* 0x0a54 */ long Padding_627;
  /* 0x0a58 */ struct _LOADER_BUGCHECK_PARAMETERS BugcheckParameters;
  /* 0x0a80 */ void* ApiSetSchema;
  /* 0x0a88 */ unsigned long ApiSetSchemaSize;
  /* 0x0a8c */ long Padding_628;
  /* 0x0a90 */ struct _LIST_ENTRY ApiSetSchemaExtensions;
  /* 0x0aa0 */ struct _UNICODE_STRING AcpiBiosVersion;
  /* 0x0ab0 */ struct _UNICODE_STRING SmbiosVersion;
  /* 0x0ac0 */ struct _UNICODE_STRING EfiVersion;
  /* 0x0ad0 */ struct _DEBUG_DEVICE_DESCRIPTOR* KdDebugDevice;
  /* 0x0ad8 */ struct _OFFLINE_CRASHDUMP_CONFIGURATION_TABLE_V2 OfflineCrashdumpConfigurationTable;
  /* 0x0af8 */ struct _UNICODE_STRING ManufacturingProfile;
  /* 0x0b08 */ void* BbtBuffer;
  /* 0x0b10 */ unsigned __int64 XsaveAllowedFeatures;
  /* 0x0b18 */ unsigned long XsaveFlags;
  /* 0x0b1c */ long Padding_629;
  /* 0x0b20 */ void* BootOptions;
  /* 0x0b28 */ unsigned long IumEnablement;
  /* 0x0b2c */ unsigned long IumPolicy;
  /* 0x0b30 */ long IumStatus;
  /* 0x0b34 */ unsigned long BootId;
  /* 0x0b38 */ struct _LOADER_PARAMETER_CI_EXTENSION* CodeIntegrityData;
  /* 0x0b40 */ unsigned long CodeIntegrityDataSize;
  /* 0x0b44 */ struct _LOADER_HIVE_RECOVERY_INFO SystemHiveRecoveryInfo;
  /* 0x0b58 */ unsigned long SoftRestartCount;
  /* 0x0b5c */ long Padding_630;
  /* 0x0b60 */ __int64 SoftRestartTime;
  /* 0x0b68 */ void* HypercallCodeVa;
  /* 0x0b70 */ void* HalVirtualAddress;
  /* 0x0b78 */ unsigned __int64 HalNumberOfBytes;
  /* 0x0b80 */ struct _LEAP_SECOND_DATA* LeapSecondData;
  /* 0x0b88 */ unsigned long MajorRelease;
  /* 0x0b8c */ unsigned long Reserved1;
  /* 0x0b90 */ char NtBuildLab[224];
  /* 0x0c70 */ char NtBuildLabEx[224];
  /* 0x0d50 */ struct _LOADER_RESET_REASON ResetReason;
  /* 0x0d80 */ unsigned long MaxPciBusNumber;
  /* 0x0d84 */ unsigned long FeatureSettings;
  /* 0x0d88 */ unsigned long HotPatchReserveSize;
  /* 0x0d8c */ unsigned long RetpolineReserveSize;
  struct
  {
    /* 0x0d90 */ void* CodeBase;
    /* 0x0d98 */ unsigned __int64 CodeSize;
  } /* size: 0x0010 */ MiniExecutive;
  /* 0x0da0 */ struct _VSM_PERFORMANCE_DATA VsmPerformanceData;
  /* 0x0de0 */ struct _NUMA_MEMORY_RANGE* NumaMemoryRanges;
  /* 0x0de8 */ unsigned long NumaMemoryRangeCount;
  /* 0x0dec */ unsigned long IommuFaultPolicy;
  /* 0x0df0 */ struct _LOADER_FEATURE_CONFIGURATION_INFORMATION FeatureConfigurationInformation;
} LOADER_PARAMETER_EXTENSION, *PLOADER_PARAMETER_EXTENSION; /* size: 0x0e38 */

typedef struct _LOADER_PARAMETER_CI_EXTENSION
{
  /* 0x0000 */ unsigned long CodeIntegrityOptions;
  struct /* bitfield */
  {
    /* 0x0004 */ unsigned long UpgradeInProgress : 1; /* bit position: 0 */
    /* 0x0004 */ unsigned long IsWinPE : 1; /* bit position: 1 */
    /* 0x0004 */ unsigned long CustomKernelSignersAllowed : 1; /* bit position: 2 */
    /* 0x0004 */ unsigned long StateSeparationEnabled : 1; /* bit position: 3 */
    /* 0x0004 */ unsigned long Reserved : 28; /* bit position: 4 */
  }; /* bitfield */
  /* 0x0008 */ union _LARGE_INTEGER WhqlEnforcementDate;
  /* 0x0010 */ unsigned long RevocationListOffset;
  /* 0x0014 */ unsigned long RevocationListSize;
  /* 0x0018 */ unsigned long CodeIntegrityPolicyOffset;
  /* 0x001c */ unsigned long CodeIntegrityPolicySize;
  /* 0x0020 */ unsigned long CodeIntegrityPolicyHashOffset;
  /* 0x0024 */ unsigned long CodeIntegrityPolicyHashSize;
  /* 0x0028 */ unsigned long CodeIntegrityPolicyOriginalHashOffset;
  /* 0x002c */ unsigned long CodeIntegrityPolicyOriginalHashSize;
  /* 0x0030 */ long WeakCryptoPolicyLoadStatus;
  /* 0x0034 */ unsigned long WeakCryptoPolicyOffset;
  /* 0x0038 */ unsigned long WeakCryptoPolicySize;
  /* 0x003c */ unsigned long SecureBootPolicyOffset;
  /* 0x0040 */ unsigned long SecureBootPolicySize;
  /* 0x0044 */ unsigned long Reserved2;
  /* 0x0048 */ unsigned char SerializedData[1];
  /* 0x0049 */ char __PADDING__[7];
} LOADER_PARAMETER_CI_EXTENSION, *PLOADER_PARAMETER_CI_EXTENSION; /* size: 0x0050 */

typedef struct _ETIMER
{
  /* 0x0000 */ struct _KTIMER KeTimer;
  /* 0x0040 */ unsigned __int64 Lock;
  /* 0x0048 */ struct _KAPC TimerApc;
  /* 0x00a0 */ struct _KDPC TimerDpc;
  /* 0x00e0 */ struct _LIST_ENTRY ActiveTimerListEntry;
  /* 0x00f0 */ unsigned long Period;
  union
  {
    /* 0x00f4 */ char TimerFlags;
    struct /* bitfield */
    {
      /* 0x00f4 */ unsigned char ApcAssociated : 1; /* bit position: 0 */
      /* 0x00f4 */ unsigned char FlushDpcs : 1; /* bit position: 1 */
      /* 0x00f4 */ unsigned char Paused : 1; /* bit position: 2 */
      /* 0x00f4 */ unsigned char Spare1 : 5; /* bit position: 3 */
    }; /* bitfield */
  }; /* size: 0x0001 */
  /* 0x00f5 */ unsigned char DueTimeType;
  /* 0x00f6 */ unsigned short Spare2;
  /* 0x00f8 */ struct _DIAGNOSTIC_CONTEXT* volatile WakeReason;
  /* 0x0100 */ struct _LIST_ENTRY WakeTimerListEntry;
  /* 0x0110 */ void* VirtualizedTimerCookie;
  /* 0x0118 */ struct _LIST_ENTRY VirtualizedTimerLinks;
  /* 0x0128 */ unsigned __int64 DueTime;
  /* 0x0130 */ unsigned long CoalescingWindow;
  /* 0x0134 */ long __PADDING__[1];
} ETIMER, *PETIMER; /* size: 0x0138 */

struct PROCESSOR_PERFSTATE_POLICY
{
  /* 0x0000 */ unsigned long Revision;
  /* 0x0004 */ unsigned char MaxThrottle;
  /* 0x0005 */ unsigned char MinThrottle;
  /* 0x0006 */ unsigned char BusyAdjThreshold;
  union
  {
    /* 0x0007 */ unsigned char Spare;
    union
    {
      union
      {
        /* 0x0007 */ unsigned char AsUCHAR;
        struct /* bitfield */
        {
          /* 0x0007 */ unsigned char NoDomainAccounting : 1; /* bit position: 0 */
          /* 0x0007 */ unsigned char IncreasePolicy : 2; /* bit position: 1 */
          /* 0x0007 */ unsigned char DecreasePolicy : 2; /* bit position: 3 */
          /* 0x0007 */ unsigned char Reserved : 3; /* bit position: 5 */
        }; /* bitfield */
      }; /* size: 0x0001 */
    } /* size: 0x0001 */ Flags;
  }; /* size: 0x0001 */
  /* 0x0008 */ unsigned long TimeCheck;
  /* 0x000c */ unsigned long IncreaseTime;
  /* 0x0010 */ unsigned long DecreaseTime;
  /* 0x0014 */ unsigned long IncreasePercent;
  /* 0x0018 */ unsigned long DecreasePercent;
}; /* size: 0x001c */

typedef struct _THERMAL_POLICY
{
  /* 0x0000 */ unsigned long Version;
  /* 0x0004 */ unsigned char WaitForUpdate;
  /* 0x0005 */ unsigned char Hibernate;
  /* 0x0006 */ unsigned char Critical;
  /* 0x0007 */ unsigned char ThermalStandby;
  /* 0x0008 */ unsigned long ActivationReasons;
  /* 0x000c */ unsigned long PassiveLimit;
  /* 0x0010 */ unsigned long ActiveLevel;
  /* 0x0014 */ unsigned char OverThrottled;
  /* 0x0015 */ char __PADDING__[3];
} THERMAL_POLICY, *PTHERMAL_POLICY; /* size: 0x0018 */

typedef struct _INTERRUPT_VECTOR_DATA
{
  /* 0x0000 */ enum INTERRUPT_CONNECTION_TYPE Type;
  /* 0x0004 */ unsigned long Vector;
  /* 0x0008 */ unsigned char Irql;
  /* 0x0009 */ char Padding_631[3];
  /* 0x000c */ enum _KINTERRUPT_POLARITY Polarity;
  /* 0x0010 */ enum _KINTERRUPT_MODE Mode;
  /* 0x0014 */ long Padding_632;
  /* 0x0018 */ struct _GROUP_AFFINITY TargetProcessors;
  /* 0x0028 */ struct _INTERRUPT_REMAPPING_INFO IntRemapInfo;
  struct
  {
    /* 0x0038 */ unsigned long Gsiv;
    struct /* bitfield */
    {
      /* 0x003c */ unsigned long WakeInterrupt : 1; /* bit position: 0 */
      /* 0x003c */ unsigned long ReservedFlags : 31; /* bit position: 1 */
    }; /* bitfield */
  } /* size: 0x0008 */ ControllerInput;
  /* 0x0040 */ unsigned __int64 HvDeviceId;
  union
  {
    struct
    {
      /* 0x0048 */ union _LARGE_INTEGER Address;
      /* 0x0050 */ unsigned long DataPayload;
      /* 0x0054 */ long __PADDING__[1];
    } /* size: 0x0010 */ XapicMessage;
    struct
    {
      /* 0x0048 */ struct _INTERRUPT_HT_INTR_INFO IntrInfo;
    } /* size: 0x0008 */ Hypertransport;
    struct
    {
      /* 0x0048 */ union _LARGE_INTEGER Address;
      /* 0x0050 */ unsigned long DataPayload;
      /* 0x0054 */ long __PADDING__[1];
    } /* size: 0x0010 */ GenericMessage;
    struct
    {
      struct
      {
        /* 0x0048 */ enum HAL_APIC_DESTINATION_MODE DestinationMode;
      } /* size: 0x0004 */ MessageRequest;
      /* 0x004c */ long __PADDING__[3];
    }; /* size: 0x0010 */
  }; /* size: 0x0010 */
} INTERRUPT_VECTOR_DATA, *PINTERRUPT_VECTOR_DATA; /* size: 0x0058 */

typedef struct _PI_RESOURCE_ARBITER_ENTRY
{
  /* 0x0000 */ struct _LIST_ENTRY DeviceArbiterList;
  /* 0x0010 */ unsigned char ResourceType;
  /* 0x0011 */ char Padding_633[7];
  /* 0x0018 */ struct _ARBITER_INTERFACE* ArbiterInterface;
  /* 0x0020 */ struct _DEVICE_NODE* DeviceNode;
  /* 0x0028 */ struct _LIST_ENTRY ResourceList;
  /* 0x0038 */ struct _LIST_ENTRY BestResourceList;
  /* 0x0048 */ struct _LIST_ENTRY BestConfig;
  /* 0x0058 */ struct _LIST_ENTRY ActiveArbiterList;
  /* 0x0068 */ unsigned char State;
  /* 0x0069 */ unsigned char ResourcesChanged;
  /* 0x006a */ char __PADDING__[6];
} PI_RESOURCE_ARBITER_ENTRY, *PPI_RESOURCE_ARBITER_ENTRY; /* size: 0x0070 */

typedef struct _EX_HEAP_POOL_NODE
{
  /* 0x0000 */ struct _SEGMENT_HEAP* Heaps[4];
  /* 0x0020 */ long Padding_634[8];
  /* 0x0040 */ struct _RTL_DYNAMIC_LOOKASIDE Lookasides[2];
} EX_HEAP_POOL_NODE, *PEX_HEAP_POOL_NODE; /* size: 0x20c0 */

typedef struct _ETW_REG_ENTRY
{
  /* 0x0000 */ struct _LIST_ENTRY RegList;
  /* 0x0010 */ struct _LIST_ENTRY GroupRegList;
  /* 0x0020 */ struct _ETW_GUID_ENTRY* GuidEntry;
  /* 0x0028 */ struct _ETW_GUID_ENTRY* GroupEntry;
  union
  {
    /* 0x0030 */ struct _ETW_REPLY_QUEUE* ReplyQueue;
    /* 0x0030 */ struct _ETW_QUEUE_ENTRY* ReplySlot[4];
    struct
    {
      /* 0x0030 */ void* Caller;
      /* 0x0038 */ unsigned long SessionId;
    }; /* size: 0x000c */
  }; /* size: 0x0020 */
  union
  {
    /* 0x0050 */ struct _EPROCESS* Process;
    /* 0x0050 */ void* CallbackContext;
  }; /* size: 0x0008 */
  /* 0x0058 */ void* Callback;
  /* 0x0060 */ unsigned short Index;
  union
  {
    /* 0x0062 */ unsigned short Flags;
    struct /* bitfield */
    {
      /* 0x0062 */ unsigned short DbgKernelRegistration : 1; /* bit position: 0 */
      /* 0x0062 */ unsigned short DbgUserRegistration : 1; /* bit position: 1 */
      /* 0x0062 */ unsigned short DbgReplyRegistration : 1; /* bit position: 2 */
      /* 0x0062 */ unsigned short DbgClassicRegistration : 1; /* bit position: 3 */
      /* 0x0062 */ unsigned short DbgSessionSpaceRegistration : 1; /* bit position: 4 */
      /* 0x0062 */ unsigned short DbgModernRegistration : 1; /* bit position: 5 */
      /* 0x0062 */ unsigned short DbgClosed : 1; /* bit position: 6 */
      /* 0x0062 */ unsigned short DbgInserted : 1; /* bit position: 7 */
      /* 0x0062 */ unsigned short DbgWow64 : 1; /* bit position: 8 */
      /* 0x0062 */ unsigned short DbgUseDescriptorType : 1; /* bit position: 9 */
      /* 0x0062 */ unsigned short DbgDropProviderTraits : 1; /* bit position: 10 */
    }; /* bitfield */
  }; /* size: 0x0002 */
  /* 0x0064 */ unsigned char EnableMask;
  /* 0x0065 */ unsigned char GroupEnableMask;
  /* 0x0066 */ unsigned char HostEnableMask;
  /* 0x0067 */ unsigned char HostGroupEnableMask;
  /* 0x0068 */ struct _ETW_PROVIDER_TRAITS* Traits;
} ETW_REG_ENTRY, *PETW_REG_ENTRY; /* size: 0x0070 */

typedef struct _ETW_PROVIDER_TRAITS
{
  /* 0x0000 */ struct _RTL_BALANCED_NODE Node;
  /* 0x0018 */ unsigned long ReferenceCount;
  /* 0x001c */ unsigned char Traits[1];
  /* 0x001d */ char __PADDING__[3];
} ETW_PROVIDER_TRAITS, *PETW_PROVIDER_TRAITS; /* size: 0x0020 */

typedef struct _HAL_CLOCK_TIMER_CONFIGURATION
{
  union
  {
    /* 0x0000 */ unsigned char Flags;
    struct /* bitfield */
    {
      /* 0x0000 */ unsigned char AlwaysOnTimer : 1; /* bit position: 0 */
      /* 0x0000 */ unsigned char HighLatency : 1; /* bit position: 1 */
      /* 0x0000 */ unsigned char PerCpuTimer : 1; /* bit position: 2 */
      /* 0x0000 */ unsigned char DynamicTickSupported : 1; /* bit position: 3 */
    }; /* bitfield */
  }; /* size: 0x0001 */
  /* 0x0001 */ char Padding_635[3];
  /* 0x0004 */ unsigned long KnownType;
  /* 0x0008 */ unsigned long Capabilities;
  /* 0x000c */ long Padding_636;
  /* 0x0010 */ unsigned __int64 MaxIncrement;
  /* 0x0018 */ unsigned long MinIncrement;
  /* 0x001c */ long __PADDING__[1];
} HAL_CLOCK_TIMER_CONFIGURATION, *PHAL_CLOCK_TIMER_CONFIGURATION; /* size: 0x0020 */

typedef union _IOMMU_SVM_CAPABILITIES
{
  union
  {
    struct
    {
      struct /* bitfield */
      {
        /* 0x0000 */ unsigned long AtsCapability : 1; /* bit position: 0 */
        /* 0x0000 */ unsigned long PriCapability : 1; /* bit position: 1 */
        /* 0x0000 */ unsigned long PasidCapability : 1; /* bit position: 2 */
      }; /* bitfield */
      struct
      {
        struct /* bitfield */
        {
          /* 0x0004 */ unsigned long PasidMaxWidth : 5; /* bit position: 0 */
          /* 0x0004 */ unsigned long PasidExePerm : 1; /* bit position: 5 */
          /* 0x0004 */ unsigned long PasidPrivMode : 1; /* bit position: 6 */
          /* 0x0004 */ unsigned long AtsPageAlignedRequest : 1; /* bit position: 7 */
          /* 0x0004 */ unsigned long AtsGlobalInvalidate : 1; /* bit position: 8 */
          /* 0x0004 */ unsigned long AtsInvalidateQueueDepth : 5; /* bit position: 9 */
        }; /* bitfield */
      } /* size: 0x0004 */ CapReg;
      /* 0x0008 */ unsigned long Rsvd : 15; /* bit position: 0 */
    }; /* size: 0x000c */
    /* 0x0000 */ unsigned long AsULONG;
  }; /* size: 0x000c */
} IOMMU_SVM_CAPABILITIES, *PIOMMU_SVM_CAPABILITIES; /* size: 0x000c */

typedef struct _ISRDPCSTATS_SEQUENCE
{
  /* 0x0000 */ unsigned long SequenceNumber;
  /* 0x0004 */ long Padding_637;
  /* 0x0008 */ unsigned __int64 IsrTime;
  /* 0x0010 */ unsigned __int64 IsrCount;
  /* 0x0018 */ unsigned __int64 DpcTime;
  /* 0x0020 */ unsigned __int64 DpcCount;
} ISRDPCSTATS_SEQUENCE, *PISRDPCSTATS_SEQUENCE; /* size: 0x0028 */

typedef struct _ISRDPCSTATS
{
  /* 0x0000 */ unsigned __int64 IsrTime;
  /* 0x0008 */ unsigned __int64 IsrTimeStart;
  /* 0x0010 */ unsigned __int64 IsrCount;
  /* 0x0018 */ unsigned __int64 DpcTime;
  /* 0x0020 */ unsigned __int64 DpcTimeStart;
  /* 0x0028 */ unsigned __int64 DpcCount;
  /* 0x0030 */ unsigned char IsrActive;
  /* 0x0031 */ unsigned char Reserved[7];
  /* 0x0038 */ struct _ISRDPCSTATS_SEQUENCE DpcWatchdog;
} ISRDPCSTATS, *PISRDPCSTATS; /* size: 0x0060 */

typedef struct _KINTERRUPT
{
  /* 0x0000 */ short Type;
  /* 0x0002 */ short Size;
  /* 0x0004 */ long Padding_638;
  /* 0x0008 */ struct _LIST_ENTRY InterruptListEntry;
  /* 0x0018 */ void* ServiceRoutine /* function */;
  /* 0x0020 */ void* MessageServiceRoutine /* function */;
  /* 0x0028 */ unsigned long MessageIndex;
  /* 0x002c */ long Padding_639;
  /* 0x0030 */ void* ServiceContext;
  /* 0x0038 */ unsigned __int64 SpinLock;
  /* 0x0040 */ unsigned long TickCount;
  /* 0x0044 */ long Padding_640;
  /* 0x0048 */ unsigned __int64* ActualLock;
  /* 0x0050 */ void* DispatchAddress /* function */;
  /* 0x0058 */ unsigned long Vector;
  /* 0x005c */ unsigned char Irql;
  /* 0x005d */ unsigned char SynchronizeIrql;
  /* 0x005e */ unsigned char FloatingSave;
  /* 0x005f */ unsigned char Connected;
  /* 0x0060 */ unsigned long Number;
  /* 0x0064 */ unsigned char ShareVector;
  /* 0x0065 */ unsigned char EmulateActiveBoth;
  /* 0x0066 */ unsigned short ActiveCount;
  /* 0x0068 */ long InternalState;
  /* 0x006c */ enum _KINTERRUPT_MODE Mode;
  /* 0x0070 */ enum _KINTERRUPT_POLARITY Polarity;
  /* 0x0074 */ unsigned long ServiceCount;
  /* 0x0078 */ unsigned long DispatchCount;
  /* 0x007c */ long Padding_641;
  /* 0x0080 */ struct _KEVENT* PassiveEvent;
  /* 0x0088 */ struct _KTRAP_FRAME* TrapFrame;
  /* 0x0090 */ void* DisconnectData;
  /* 0x0098 */ struct _KTHREAD* volatile ServiceThread;
  /* 0x00a0 */ struct _INTERRUPT_CONNECTION_DATA* ConnectionData;
  /* 0x00a8 */ void* IntTrackEntry;
  /* 0x00b0 */ struct _ISRDPCSTATS IsrDpcStats;
  /* 0x0110 */ void* RedirectObject;
  /* 0x0118 */ void* PhysicalDeviceObject;
} KINTERRUPT, *PKINTERRUPT; /* size: 0x0120 */

typedef struct _INTERRUPT_CONNECTION_DATA
{
  /* 0x0000 */ unsigned long Count;
  /* 0x0004 */ long Padding_642;
  /* 0x0008 */ struct _INTERRUPT_VECTOR_DATA Vectors[1];
} INTERRUPT_CONNECTION_DATA, *PINTERRUPT_CONNECTION_DATA; /* size: 0x0060 */

typedef struct _PF_KERNEL_GLOBALS
{
  /* 0x0000 */ unsigned __int64 AccessBufferAgeThreshold;
  /* 0x0008 */ struct _EX_RUNDOWN_REF AccessBufferRef;
  /* 0x0010 */ struct _KEVENT AccessBufferExistsEvent;
  /* 0x0028 */ unsigned long AccessBufferMax;
  /* 0x002c */ long Padding_643[5];
  /* 0x0040 */ union _SLIST_HEADER AccessBufferList;
  /* 0x0050 */ long StreamSequenceNumber;
  /* 0x0054 */ unsigned long Flags;
  /* 0x0058 */ long ScenarioPrefetchCount;
  /* 0x005c */ long __PADDING__[1];
} PF_KERNEL_GLOBALS, *PPF_KERNEL_GLOBALS; /* size: 0x0060 */

typedef struct _HAL_LBR_ENTRY
{
  /* 0x0000 */ void* FromAddress;
  /* 0x0008 */ void* ToAddress;
  /* 0x0010 */ void* Reserved;
} HAL_LBR_ENTRY, *PHAL_LBR_ENTRY; /* size: 0x0018 */

typedef struct _DMA_IOMMU_INTERFACE
{
  /* 0x0000 */ unsigned long Version;
  /* 0x0004 */ long Padding_644;
  /* 0x0008 */ void* CreateDomain /* function */;
  /* 0x0010 */ void* DeleteDomain /* function */;
  /* 0x0018 */ void* AttachDevice /* function */;
  /* 0x0020 */ void* DetachDevice /* function */;
  /* 0x0028 */ void* FlushDomain /* function */;
  /* 0x0030 */ void* FlushDomainByVaList /* function */;
  /* 0x0038 */ void* QueryInputMappings /* function */;
  /* 0x0040 */ void* MapLogicalRange /* function */;
  /* 0x0048 */ void* UnmapLogicalRange /* function */;
  /* 0x0050 */ void* MapIdentityRange /* function */;
  /* 0x0058 */ void* UnmapIdentityRange /* function */;
  /* 0x0060 */ void* SetDeviceFaultReporting /* function */;
  /* 0x0068 */ void* ConfigureDomain /* function */;
} DMA_IOMMU_INTERFACE, *PDMA_IOMMU_INTERFACE; /* size: 0x0070 */

struct _IOMMU_DMA_DOMAIN;

typedef struct _PEB32
{
  /* 0x0000 */ unsigned char InheritedAddressSpace;
  /* 0x0001 */ unsigned char ReadImageFileExecOptions;
  /* 0x0002 */ unsigned char BeingDebugged;
  union
  {
    /* 0x0003 */ unsigned char BitField;
    struct /* bitfield */
    {
      /* 0x0003 */ unsigned char ImageUsesLargePages : 1; /* bit position: 0 */
      /* 0x0003 */ unsigned char IsProtectedProcess : 1; /* bit position: 1 */
      /* 0x0003 */ unsigned char IsImageDynamicallyRelocated : 1; /* bit position: 2 */
      /* 0x0003 */ unsigned char SkipPatchingUser32Forwarders : 1; /* bit position: 3 */
      /* 0x0003 */ unsigned char IsPackagedProcess : 1; /* bit position: 4 */
      /* 0x0003 */ unsigned char IsAppContainer : 1; /* bit position: 5 */
      /* 0x0003 */ unsigned char IsProtectedProcessLight : 1; /* bit position: 6 */
      /* 0x0003 */ unsigned char IsLongPathAwareProcess : 1; /* bit position: 7 */
    }; /* bitfield */
  }; /* size: 0x0001 */
  /* 0x0004 */ unsigned long Mutant;
  /* 0x0008 */ unsigned long ImageBaseAddress;
  /* 0x000c */ unsigned long Ldr;
  /* 0x0010 */ unsigned long ProcessParameters;
  /* 0x0014 */ unsigned long SubSystemData;
  /* 0x0018 */ unsigned long ProcessHeap;
  /* 0x001c */ unsigned long FastPebLock;
  /* 0x0020 */ unsigned long AtlThunkSListPtr;
  /* 0x0024 */ unsigned long IFEOKey;
  union
  {
    /* 0x0028 */ unsigned long CrossProcessFlags;
    struct /* bitfield */
    {
      /* 0x0028 */ unsigned long ProcessInJob : 1; /* bit position: 0 */
      /* 0x0028 */ unsigned long ProcessInitializing : 1; /* bit position: 1 */
      /* 0x0028 */ unsigned long ProcessUsingVEH : 1; /* bit position: 2 */
      /* 0x0028 */ unsigned long ProcessUsingVCH : 1; /* bit position: 3 */
      /* 0x0028 */ unsigned long ProcessUsingFTH : 1; /* bit position: 4 */
      /* 0x0028 */ unsigned long ProcessPreviouslyThrottled : 1; /* bit position: 5 */
      /* 0x0028 */ unsigned long ProcessCurrentlyThrottled : 1; /* bit position: 6 */
      /* 0x0028 */ unsigned long ProcessImagesHotPatched : 1; /* bit position: 7 */
      /* 0x0028 */ unsigned long ReservedBits0 : 24; /* bit position: 8 */
    }; /* bitfield */
  }; /* size: 0x0004 */
  union
  {
    /* 0x002c */ unsigned long KernelCallbackTable;
    /* 0x002c */ unsigned long UserSharedInfoPtr;
  }; /* size: 0x0004 */
  /* 0x0030 */ unsigned long SystemReserved;
  /* 0x0034 */ unsigned long AtlThunkSListPtr32;
  /* 0x0038 */ unsigned long ApiSetMap;
  /* 0x003c */ unsigned long TlsExpansionCounter;
  /* 0x0040 */ unsigned long TlsBitmap;
  /* 0x0044 */ unsigned long TlsBitmapBits[2];
  /* 0x004c */ unsigned long ReadOnlySharedMemoryBase;
  /* 0x0050 */ unsigned long SharedData;
  /* 0x0054 */ unsigned long ReadOnlyStaticServerData;
  /* 0x0058 */ unsigned long AnsiCodePageData;
  /* 0x005c */ unsigned long OemCodePageData;
  /* 0x0060 */ unsigned long UnicodeCaseTableData;
  /* 0x0064 */ unsigned long NumberOfProcessors;
  /* 0x0068 */ unsigned long NtGlobalFlag;
  /* 0x006c */ long Padding_645;
  /* 0x0070 */ union _LARGE_INTEGER CriticalSectionTimeout;
  /* 0x0078 */ unsigned long HeapSegmentReserve;
  /* 0x007c */ unsigned long HeapSegmentCommit;
  /* 0x0080 */ unsigned long HeapDeCommitTotalFreeThreshold;
  /* 0x0084 */ unsigned long HeapDeCommitFreeBlockThreshold;
  /* 0x0088 */ unsigned long NumberOfHeaps;
  /* 0x008c */ unsigned long MaximumNumberOfHeaps;
  /* 0x0090 */ unsigned long ProcessHeaps;
  /* 0x0094 */ unsigned long GdiSharedHandleTable;
  /* 0x0098 */ unsigned long ProcessStarterHelper;
  /* 0x009c */ unsigned long GdiDCAttributeList;
  /* 0x00a0 */ unsigned long LoaderLock;
  /* 0x00a4 */ unsigned long OSMajorVersion;
  /* 0x00a8 */ unsigned long OSMinorVersion;
  /* 0x00ac */ unsigned short OSBuildNumber;
  /* 0x00ae */ unsigned short OSCSDVersion;
  /* 0x00b0 */ unsigned long OSPlatformId;
  /* 0x00b4 */ unsigned long ImageSubsystem;
  /* 0x00b8 */ unsigned long ImageSubsystemMajorVersion;
  /* 0x00bc */ unsigned long ImageSubsystemMinorVersion;
  /* 0x00c0 */ unsigned long ActiveProcessAffinityMask;
  /* 0x00c4 */ unsigned long GdiHandleBuffer[34];
  /* 0x014c */ unsigned long PostProcessInitRoutine;
  /* 0x0150 */ unsigned long TlsExpansionBitmap;
  /* 0x0154 */ unsigned long TlsExpansionBitmapBits[32];
  /* 0x01d4 */ unsigned long SessionId;
  /* 0x01d8 */ union _ULARGE_INTEGER AppCompatFlags;
  /* 0x01e0 */ union _ULARGE_INTEGER AppCompatFlagsUser;
  /* 0x01e8 */ unsigned long pShimData;
  /* 0x01ec */ unsigned long AppCompatInfo;
  /* 0x01f0 */ struct _STRING32 CSDVersion;
  /* 0x01f8 */ unsigned long ActivationContextData;
  /* 0x01fc */ unsigned long ProcessAssemblyStorageMap;
  /* 0x0200 */ unsigned long SystemDefaultActivationContextData;
  /* 0x0204 */ unsigned long SystemAssemblyStorageMap;
  /* 0x0208 */ unsigned long MinimumStackCommit;
  /* 0x020c */ unsigned long SparePointers[4];
  /* 0x021c */ unsigned long SpareUlongs[5];
  /* 0x0230 */ unsigned long WerRegistrationData;
  /* 0x0234 */ unsigned long WerShipAssertPtr;
  /* 0x0238 */ unsigned long pUnused;
  /* 0x023c */ unsigned long pImageHeaderHash;
  union
  {
    /* 0x0240 */ unsigned long TracingFlags;
    struct /* bitfield */
    {
      /* 0x0240 */ unsigned long HeapTracingEnabled : 1; /* bit position: 0 */
      /* 0x0240 */ unsigned long CritSecTracingEnabled : 1; /* bit position: 1 */
      /* 0x0240 */ unsigned long LibLoaderTracingEnabled : 1; /* bit position: 2 */
      /* 0x0240 */ unsigned long SpareTracingBits : 29; /* bit position: 3 */
    }; /* bitfield */
  }; /* size: 0x0004 */
  /* 0x0244 */ long Padding_646;
  /* 0x0248 */ unsigned __int64 CsrServerReadOnlySharedMemoryBase;
  /* 0x0250 */ unsigned long TppWorkerpListLock;
  /* 0x0254 */ struct LIST_ENTRY32 TppWorkerpList;
  /* 0x025c */ unsigned long WaitOnAddressHashTable[128];
  /* 0x045c */ unsigned long TelemetryCoverageHeader;
  /* 0x0460 */ unsigned long CloudFileFlags;
  /* 0x0464 */ unsigned long CloudFileDiagFlags;
  /* 0x0468 */ char PlaceholderCompatibilityMode;
  /* 0x0469 */ char PlaceholderCompatibilityModeReserved[7];
  /* 0x0470 */ unsigned long LeapSecondData;
  union
  {
    /* 0x0474 */ unsigned long LeapSecondFlags;
    struct /* bitfield */
    {
      /* 0x0474 */ unsigned long SixtySecondEnabled : 1; /* bit position: 0 */
      /* 0x0474 */ unsigned long Reserved : 31; /* bit position: 1 */
    }; /* bitfield */
  }; /* size: 0x0004 */
  /* 0x0478 */ unsigned long NtGlobalFlag2;
  /* 0x047c */ long __PADDING__[1];
} PEB32, *PPEB32; /* size: 0x0480 */

typedef struct _INPUT_MAPPING_ELEMENT
{
  /* 0x0000 */ unsigned long InputMappingId;
} INPUT_MAPPING_ELEMENT, *PINPUT_MAPPING_ELEMENT; /* size: 0x0004 */

typedef struct _RSDS
{
  /* 0x0000 */ unsigned long Signature;
  /* 0x0004 */ struct _GUID Guid;
  /* 0x0014 */ unsigned long Age;
  /* 0x0018 */ char PdbName[1];
  /* 0x0019 */ char __PADDING__[3];
} RSDS, *PRSDS; /* size: 0x001c */

typedef struct _DEVICE_FAULT_CONFIGURATION
{
  /* 0x0000 */ void* FaultHandler /* function */;
  /* 0x0008 */ void* FaultContext;
} DEVICE_FAULT_CONFIGURATION, *PDEVICE_FAULT_CONFIGURATION; /* size: 0x0010 */

typedef struct _FAULT_INFORMATION_ARM64_FLAGS
{
  struct /* bitfield */
  {
    /* 0x0000 */ unsigned long WriteNotRead : 1; /* bit position: 0 */
    /* 0x0000 */ unsigned long InstructionNotData : 1; /* bit position: 1 */
    /* 0x0000 */ unsigned long Privileged : 1; /* bit position: 2 */
    /* 0x0000 */ unsigned long FaultAddressValid : 1; /* bit position: 3 */
    /* 0x0000 */ unsigned long Reserved : 28; /* bit position: 4 */
  }; /* bitfield */
} FAULT_INFORMATION_ARM64_FLAGS, *PFAULT_INFORMATION_ARM64_FLAGS; /* size: 0x0004 */

typedef struct _FAULT_INFORMATION_ARM64
{
  /* 0x0000 */ void* DomainHandle;
  /* 0x0008 */ void* FaultAddress;
  /* 0x0010 */ struct _DEVICE_OBJECT* PhysicalDeviceObject;
  /* 0x0018 */ unsigned long InputMappingId;
  /* 0x001c */ struct _FAULT_INFORMATION_ARM64_FLAGS Flags;
  /* 0x0020 */ enum _FAULT_INFORMATION_ARM64_TYPE Type;
  /* 0x0024 */ long Padding_647;
  /* 0x0028 */ unsigned __int64 IommuBaseAddress;
} FAULT_INFORMATION_ARM64, *PFAULT_INFORMATION_ARM64; /* size: 0x0030 */

typedef struct _FAULT_INFORMATION_X64_FLAGS
{
  struct /* bitfield */
  {
    /* 0x0000 */ unsigned long FaultAddressValid : 1; /* bit position: 0 */
    /* 0x0000 */ unsigned long Reserved : 31; /* bit position: 1 */
  }; /* bitfield */
} FAULT_INFORMATION_X64_FLAGS, *PFAULT_INFORMATION_X64_FLAGS; /* size: 0x0004 */

typedef struct _FAULT_INFORMATION_X64
{
  /* 0x0000 */ void* DomainHandle;
  /* 0x0008 */ void* FaultAddress;
  /* 0x0010 */ struct _FAULT_INFORMATION_X64_FLAGS Flags;
  /* 0x0014 */ enum _FAULT_INFORMATION_ARM64_TYPE Type;
  /* 0x0018 */ unsigned __int64 IommuBaseAddress;
  /* 0x0020 */ unsigned long PciSegment;
  /* 0x0024 */ long __PADDING__[1];
} FAULT_INFORMATION_X64, *PFAULT_INFORMATION_X64; /* size: 0x0028 */

typedef struct _FAULT_INFORMATION
{
  /* 0x0000 */ enum _FAULT_INFORMATION_ARCH Type;
  /* 0x0004 */ unsigned char IsStage1;
  /* 0x0005 */ char Padding_648[3];
  union
  {
    /* 0x0008 */ struct _FAULT_INFORMATION_ARM64 Arm64;
    struct
    {
      /* 0x0008 */ struct _FAULT_INFORMATION_X64 X64;
      /* 0x0030 */ long __PADDING__[2];
    }; /* size: 0x0030 */
  }; /* size: 0x0030 */
} FAULT_INFORMATION, *PFAULT_INFORMATION; /* size: 0x0038 */

typedef struct _DOMAIN_CONFIGURATION_ARM64
{
  /* 0x0000 */ union _LARGE_INTEGER Ttbr0;
  /* 0x0008 */ union _LARGE_INTEGER Ttbr1;
  /* 0x0010 */ unsigned long Mair0;
  /* 0x0014 */ unsigned long Mair1;
  /* 0x0018 */ unsigned char InputSize0;
  /* 0x0019 */ unsigned char InputSize1;
  /* 0x001a */ unsigned char CoherentTableWalks;
  /* 0x001b */ unsigned char TranslationEnabled;
  /* 0x001c */ long __PADDING__[1];
} DOMAIN_CONFIGURATION_ARM64, *PDOMAIN_CONFIGURATION_ARM64; /* size: 0x0020 */

typedef struct _DOMAIN_CONFIGURATION
{
  /* 0x0000 */ enum _DOMAIN_CONFIGURATION_ARCH Type;
  /* 0x0004 */ long Padding_649;
  /* 0x0008 */ struct _DOMAIN_CONFIGURATION_ARM64 Arm64;
} DOMAIN_CONFIGURATION, *PDOMAIN_CONFIGURATION; /* size: 0x0028 */

typedef struct _HEAP_FREE_ENTRY_EXTRA
{
  /* 0x0000 */ unsigned short TagIndex;
  /* 0x0002 */ unsigned short FreeBackTraceIndex;
} HEAP_FREE_ENTRY_EXTRA, *PHEAP_FREE_ENTRY_EXTRA; /* size: 0x0004 */

typedef struct _MI_ACCESS_VIOLATION_RANGE
{
  /* 0x0000 */ struct _RTL_BALANCED_NODE Node;
  /* 0x0018 */ void* Va;
  /* 0x0020 */ void* EndVaInclusive;
} MI_ACCESS_VIOLATION_RANGE, *PMI_ACCESS_VIOLATION_RANGE; /* size: 0x0028 */

typedef struct _MI_POOL_STATE
{
  /* 0x0000 */ unsigned __int64 MaximumNonPagedPoolThreshold;
  /* 0x0008 */ volatile unsigned __int64 AllocatedNonPagedPool;
  /* 0x0010 */ volatile unsigned __int64 AllocatedSecureNonPagedPool;
  /* 0x0018 */ struct _SINGLE_LIST_ENTRY BadPoolHead;
  /* 0x0020 */ unsigned long HighEventSets;
  /* 0x0024 */ unsigned char HighEventSetsValid;
  /* 0x0025 */ char Padding_650[3];
  /* 0x0028 */ unsigned __int64 LowPagedPoolThreshold;
  /* 0x0030 */ unsigned __int64 HighPagedPoolThreshold;
  /* 0x0038 */ volatile long PermittedFaultsLock;
  /* 0x003c */ long Padding_651;
  /* 0x0040 */ struct _RTL_AVL_TREE PermittedFaultsTree;
  /* 0x0048 */ struct _MI_ACCESS_VIOLATION_RANGE PermittedFaultsInitialNode[2];
  /* 0x0098 */ unsigned __int64 TotalPagedPoolQuota;
  /* 0x00a0 */ unsigned __int64 TotalNonPagedPoolQuota;
} MI_POOL_STATE, *PMI_POOL_STATE; /* size: 0x00a8 */

typedef struct _MI_HUGE_SYSTEM_VIEW_HEAD
{
  /* 0x0000 */ struct _RTL_AVL_TREE ViewRoot;
  /* 0x0008 */ unsigned long ViewCount;
  /* 0x000c */ volatile long Lock;
} MI_HUGE_SYSTEM_VIEW_HEAD, *PMI_HUGE_SYSTEM_VIEW_HEAD; /* size: 0x0010 */

typedef struct _MI_SESSION_STATE
{
  /* 0x0000 */ struct _MMSESSION SystemSession;
  /* 0x0020 */ unsigned char CodePageEdited;
  /* 0x0021 */ char Padding_652[7];
  /* 0x0028 */ unsigned __int64* DynamicVaBitBuffer;
  /* 0x0030 */ unsigned __int64 DynamicVaBitBufferPages;
  /* 0x0038 */ void* DynamicVaStart;
  /* 0x0040 */ void* ImageVaStart;
  /* 0x0048 */ struct _MI_HUGE_SYSTEM_VIEW_HEAD SystemViewBuckets[256];
  /* 0x1048 */ unsigned long* DynamicPtesBitBuffer;
  /* 0x1050 */ struct _EX_PUSH_LOCK IdLock;
  /* 0x1058 */ struct _EPROCESS* LeaderProcess;
  /* 0x1060 */ struct _EX_PUSH_LOCK InitializeLock;
  /* 0x1068 */ struct _MMWSL_INSTANCE* WorkingSetList;
  /* 0x1070 */ void* SessionBase;
  /* 0x1078 */ void* SessionCore;
  /* 0x1080 */ struct _RTL_AVL_TREE SessionIdNodes;
  /* 0x1088 */ struct _KEVENT DeleteInProgressEvent;
  /* 0x10a0 */ unsigned long DeleteInProgressCount;
  /* 0x10a4 */ long __PADDING__[1];
} MI_SESSION_STATE, *PMI_SESSION_STATE; /* size: 0x10a8 */

typedef struct _MI_PROCESS_STATE
{
  /* 0x0000 */ void* SystemDllBase;
  /* 0x0008 */ unsigned long ColorSeed;
  /* 0x000c */ long RotatingUniprocessorNumber;
  /* 0x0010 */ union _LARGE_INTEGER CriticalSectionTimeout;
  /* 0x0018 */ struct _LIST_ENTRY ProcessList;
  /* 0x0028 */ struct _MMPTE* SharedUserDataPte[2];
  /* 0x0038 */ void* HypervisorSharedVa;
  /* 0x0040 */ unsigned __int64 VadSecureCookie;
} MI_PROCESS_STATE, *PMI_PROCESS_STATE; /* size: 0x0048 */

typedef struct _HAL_NODE_RANGE
{
  /* 0x0000 */ unsigned __int64 PageFrameIndex;
  /* 0x0008 */ unsigned long Node;
  /* 0x000c */ long __PADDING__[1];
} HAL_NODE_RANGE, *PHAL_NODE_RANGE; /* size: 0x0010 */

typedef struct _MI_ZERO_COST_COUNTS
{
  /* 0x0000 */ unsigned __int64 NativeSum;
  /* 0x0008 */ unsigned __int64 CachedSum;
} MI_ZERO_COST_COUNTS, *PMI_ZERO_COST_COUNTS; /* size: 0x0010 */

typedef struct _MI_HARDWARE_STATE
{
  /* 0x0000 */ unsigned long NodeMask;
  /* 0x0004 */ unsigned long NumaHintIndex;
  /* 0x0008 */ unsigned long NumaLastRangeIndexInclusive;
  /* 0x000c */ unsigned char NodeShift;
  /* 0x000d */ unsigned char ChannelShift;
  /* 0x000e */ char Padding_653[2];
  /* 0x0010 */ unsigned long ChannelHintIndex;
  /* 0x0014 */ unsigned long ChannelLastRangeIndexInclusive;
  /* 0x0018 */ struct _MI_NODE_NUMBER_ZERO_BASED* NodeGraph;
  /* 0x0020 */ struct _MI_SYSTEM_NODE_INFORMATION* SystemNodeInformation;
  /* 0x0028 */ struct _HAL_NODE_RANGE TemporaryNumaRanges[2];
  /* 0x0048 */ struct _HAL_NODE_RANGE* NumaMemoryRanges;
  /* 0x0050 */ struct _HAL_CHANNEL_MEMORY_RANGES* ChannelMemoryRanges;
  /* 0x0058 */ unsigned long SecondLevelCacheSize;
  /* 0x005c */ unsigned long FirstLevelCacheSize;
  /* 0x0060 */ unsigned long PhysicalAddressBits;
  /* 0x0064 */ unsigned long LogicalProcessorsPerCore;
  /* 0x0068 */ unsigned char ProcessorCachesFlushedOnPowerLoss;
  /* 0x0069 */ char Padding_654[7];
  /* 0x0070 */ unsigned __int64 TotalPagesAllowed;
  /* 0x0078 */ unsigned long SecondaryColorMask;
  /* 0x007c */ unsigned long SecondaryColors;
  /* 0x0080 */ unsigned long FlushTbForAttributeChange;
  /* 0x0084 */ unsigned long FlushCacheForAttributeChange;
  /* 0x0088 */ unsigned long FlushCacheForPageAttributeChange;
  /* 0x008c */ unsigned long CacheFlushPromoteThreshold;
  /* 0x0090 */ union _LARGE_INTEGER PerformanceCounterFrequency;
  /* 0x0098 */ long Padding_655[10];
  /* 0x00c0 */ unsigned __int64 InvalidPteMask;
  /* 0x00c8 */ long Padding_656[14];
  /* 0x0100 */ unsigned long LargePageColors[3];
  /* 0x010c */ long Padding_657;
  /* 0x0110 */ unsigned __int64 FlushTbThreshold;
  /* 0x0118 */ enum _MI_PFN_CACHE_ATTRIBUTE OptimalZeroingAttribute[4][4];
  /* 0x0158 */ unsigned char AttributeChangeRequiresReZero;
  /* 0x0159 */ char Padding_658[7];
  /* 0x0160 */ struct _MI_ZERO_COST_COUNTS ZeroCostCounts[2];
  /* 0x0180 */ unsigned __int64 VsmKernelPageCount;
  /* 0x0188 */ long __PADDING__[14];
} MI_HARDWARE_STATE, *PMI_HARDWARE_STATE; /* size: 0x01c0 */

typedef struct _MI_SYSTEM_VA_STATE
{
  /* 0x0000 */ unsigned __int64 SystemTablesLock;
  /* 0x0008 */ unsigned __int64 AvailableSystemCacheVa;
  /* 0x0010 */ struct _MI_DYNAMIC_BITMAP DynamicBitMapKernelStacks;
  /* 0x0058 */ struct _MI_DYNAMIC_BITMAP DynamicBitMapSystemPtes;
  /* 0x00a0 */ struct _MI_DYNAMIC_BITMAP DynamicBitMapDriverImages[2];
  /* 0x0130 */ struct _MI_DYNAMIC_BITMAP DynamicBitMapPagedPool;
  /* 0x0178 */ struct _MI_DYNAMIC_BITMAP DynamicBitMapSystemCache;
  /* 0x01c0 */ struct _MI_DYNAMIC_BITMAP DynamicBitMapSecureNonPagedPool;
  /* 0x0208 */ void* HalPrivateVaStart;
  /* 0x0210 */ unsigned __int64 HalPrivateVaSize;
  /* 0x0218 */ unsigned long SystemVaAssignment[8];
  /* 0x0238 */ unsigned long SystemVaAssignmentHint;
  /* 0x023c */ unsigned long TopLevelPteLockBits[32];
  /* 0x02bc */ volatile long DeleteKvaLock;
  /* 0x02c0 */ struct _MI_WSLE* WsleArrays[8];
  /* 0x0300 */ void* PagableHyperSpace;
  /* 0x0308 */ void* HyperSpaceEnd;
  /* 0x0310 */ unsigned __int64 PagableHyperSpaceBytes;
  /* 0x0318 */ unsigned __int64 PageTableCommitmentOffset[2];
  /* 0x0328 */ struct _KEVENT FreeSystemCacheVa;
  /* 0x0340 */ unsigned __int64 SystemVaLock;
  /* 0x0348 */ unsigned __int64 SystemCacheViewLock;
  /* 0x0350 */ struct _MMWSL_INSTANCE SystemWorkingSetList[8];
  /* 0x0490 */ unsigned __int64 SelfmapLock[4];
  /* 0x04b0 */ long __PADDING__[4];
} MI_SYSTEM_VA_STATE, *PMI_SYSTEM_VA_STATE; /* size: 0x04c0 */

typedef struct _MI_COMBINE_STATE
{
  /* 0x0000 */ volatile long ActiveSpinLock;
  /* 0x0004 */ unsigned long CombiningThreadCount;
  /* 0x0008 */ struct _RTL_AVL_TREE ActiveThreadTree;
  /* 0x0010 */ unsigned __int64 CommonPageCombineDomain;
  /* 0x0018 */ unsigned long CommonCombineDomainAssigned;
  /* 0x001c */ long __PADDING__[1];
} MI_COMBINE_STATE, *PMI_COMBINE_STATE; /* size: 0x0020 */

typedef struct _MI_PAGELIST_STATE
{
  /* 0x0000 */ volatile long ActiveSpinLock;
  /* 0x0004 */ long Padding_659;
  /* 0x0008 */ struct _RTL_AVL_TREE ActiveThreadTree;
  /* 0x0010 */ volatile long ActiveZeroSpinLock;
  /* 0x0014 */ long Padding_660;
  /* 0x0018 */ struct _RTL_AVL_TREE ActiveZeroThreadTree;
  /* 0x0020 */ struct _MMPFN LargePfnTemplate;
  /* 0x0050 */ struct _MMPFN LargePfnBasePageTemplate;
  /* 0x0080 */ unsigned long NumberOfLargePageListHeads;
  /* 0x0084 */ long __PADDING__[1];
} MI_PAGELIST_STATE, *PMI_PAGELIST_STATE; /* size: 0x0088 */

typedef struct _MI_PARTITION_STATE
{
  /* 0x0000 */ unsigned __int64 PartitionLock;
  /* 0x0008 */ struct _EX_PUSH_LOCK PartitionIdLock;
  /* 0x0010 */ unsigned __int64 InitialPartitionIdBits;
  /* 0x0018 */ struct _LIST_ENTRY PartitionList;
  /* 0x0028 */ struct _RTL_BITMAP* PartitionIdBitmap;
  /* 0x0030 */ struct _RTL_BITMAP InitialPartitionIdBitmap;
  /* 0x0040 */ struct _MI_PARTITION* TempPartitionPointers[1];
  /* 0x0048 */ struct _MI_PARTITION** Partition;
  /* 0x0050 */ unsigned __int64 TotalPagesInChildPartitions;
  /* 0x0058 */ unsigned long CrossPartitionDenials;
  /* 0x005c */ unsigned char MultiplePartitionsExist;
  /* 0x005d */ char Padding_661[3];
  /* 0x0060 */ struct _RTL_BITMAP_EX HugeIoPfnBitMap;
  /* 0x0070 */ struct _MI_HUGE_PFN* HugePfnDatabase;
  /* 0x0078 */ long Padding_662[2];
  /* 0x0080 */ unsigned __int64 HugeRangesLock;
  /* 0x0088 */ long __PADDING__[14];
} MI_PARTITION_STATE, *PMI_PARTITION_STATE; /* size: 0x00c0 */

typedef struct _MI_BAD_MEMORY_EVENT_ENTRY
{
  /* 0x0000 */ unsigned long BugCheckCode;
  /* 0x0004 */ long Active;
  /* 0x0008 */ unsigned long Data;
  /* 0x000c */ long Padding_663;
  /* 0x0010 */ union _LARGE_INTEGER PhysicalAddress;
  /* 0x0018 */ struct _WORK_QUEUE_ITEM WorkItem;
} MI_BAD_MEMORY_EVENT_ENTRY, *PMI_BAD_MEMORY_EVENT_ENTRY; /* size: 0x0038 */

typedef struct _MI_PROBE_RAISE_TRACKER
{
  /* 0x0000 */ unsigned long UserRangeInKernel;
  /* 0x0004 */ unsigned long FaultFailed;
  /* 0x0008 */ unsigned long WriteFaultFailed;
  /* 0x000c */ unsigned long LargePageFailed;
  /* 0x0010 */ unsigned long UserAccessToKernelPte;
  /* 0x0014 */ unsigned long BadPageLocation;
  /* 0x0018 */ unsigned long InsufficientCharge;
  /* 0x001c */ unsigned long PageTableCharge;
  /* 0x0020 */ unsigned long NoPhysicalMapping;
  /* 0x0024 */ unsigned long NoIoReference;
  /* 0x0028 */ unsigned long ProbeFailed;
  /* 0x002c */ unsigned long PteIsZero;
  /* 0x0030 */ unsigned long StrongCodeWrite;
  /* 0x0034 */ unsigned long ReducedCloneCommitChargeFailed;
  /* 0x0038 */ unsigned long CopyOnWriteAtDispatchNoPages;
  /* 0x003c */ unsigned long NoPageTablesAllowed;
  /* 0x0040 */ unsigned long EnclavePageFailed;
} MI_PROBE_RAISE_TRACKER, *PMI_PROBE_RAISE_TRACKER; /* size: 0x0044 */

typedef struct _MI_FORCED_COMMITS
{
  /* 0x0000 */ unsigned long Regular;
  /* 0x0004 */ unsigned long Wrap;
} MI_FORCED_COMMITS, *PMI_FORCED_COMMITS; /* size: 0x0008 */

typedef struct _MI_RESAVAIL_FAILURES
{
  /* 0x0000 */ unsigned long Wrap;
  /* 0x0004 */ unsigned long NoCharge;
} MI_RESAVAIL_FAILURES, *PMI_RESAVAIL_FAILURES; /* size: 0x0008 */

typedef struct _MI_ERROR_STATE
{
  /* 0x0000 */ struct _MI_BAD_MEMORY_EVENT_ENTRY BadMemoryEventEntry;
  /* 0x0038 */ unsigned __int64 PageOfInterest;
  /* 0x0040 */ struct _MI_PROBE_RAISE_TRACKER ProbeRaises;
  /* 0x0084 */ struct _MI_FORCED_COMMITS ForcedCommits;
  /* 0x008c */ unsigned long WsleFailures[1];
  /* 0x0090 */ unsigned long PageHashErrors;
  /* 0x0094 */ unsigned long CheckZeroCount;
  /* 0x0098 */ volatile long ZeroedPageSingleBitErrorsDetected;
  /* 0x009c */ volatile long BadPagesDetected;
  /* 0x00a0 */ long ScrubPasses;
  /* 0x00a4 */ long ScrubBadPagesFound;
  /* 0x00a8 */ unsigned long UserViewFailures;
  /* 0x00ac */ unsigned long UserViewCollisionFailures;
  /* 0x00b0 */ unsigned long UserAllocateFailures;
  /* 0x00b4 */ unsigned long UserAllocateCollisionFailures;
  /* 0x00b8 */ struct _MI_RESAVAIL_FAILURES ResavailFailures;
  /* 0x00c0 */ unsigned char PendingBadPages;
  /* 0x00c1 */ unsigned char FatalGraphicsFailures;
  /* 0x00c2 */ unsigned char InitFailure;
  /* 0x00c3 */ unsigned char StopBadMaps;
  /* 0x00c4 */ long __PADDING__[1];
} MI_ERROR_STATE, *PMI_ERROR_STATE; /* size: 0x00c8 */

typedef struct _MI_ACCESS_LOG_STATE
{
  /* 0x0000 */ struct _MM_PAGE_ACCESS_INFO_HEADER* volatile CcAccessLog;
  /* 0x0008 */ struct _WORK_QUEUE_ITEM DisableAccessLogging;
  /* 0x0028 */ unsigned long Enabled;
  /* 0x002c */ unsigned long MinLoggingPriority;
  /* 0x0030 */ long Padding_664[4];
  /* 0x0040 */ unsigned __int64 AccessLoggingLock;
  /* 0x0048 */ long __PADDING__[14];
} MI_ACCESS_LOG_STATE, *PMI_ACCESS_LOG_STATE; /* size: 0x0080 */

typedef struct _MI_DEBUGGER_STATE
{
  /* 0x0000 */ unsigned char TransientWrite;
  /* 0x0001 */ unsigned char CodePageEdited;
  /* 0x0002 */ char Padding_665[6];
  /* 0x0008 */ struct _MMPTE* DebugPte;
  /* 0x0010 */ unsigned long PoisonedTb;
  /* 0x0014 */ volatile long InDebugger;
  /* 0x0018 */ void* volatile Pfns[32];
} MI_DEBUGGER_STATE, *PMI_DEBUGGER_STATE; /* size: 0x0118 */

typedef struct _MI_STANDBY_STATE
{
  /* 0x0000 */ unsigned __int64 FirstDecayPage;
  /* 0x0008 */ long Padding_666[2];
  /* 0x0010 */ union _SLIST_HEADER PfnDecayFreeSList;
  /* 0x0020 */ struct _MM_PAGE_ACCESS_INFO_HEADER* PfnRepurposeLog;
  /* 0x0028 */ struct _KDPC AllocatePfnRepurposeDpc;
  /* 0x0068 */ long Padding_667[2];
  /* 0x0070 */ union _SLIST_HEADER PageHeatListSlist;
  /* 0x0080 */ volatile long PageHeatListDisableAllocation;
  /* 0x0084 */ long __PADDING__[3];
} MI_STANDBY_STATE, *PMI_STANDBY_STATE; /* size: 0x0090 */

typedef struct _MI_ULTRA_VA_CONTEXT
{
  /* 0x0000 */ unsigned __int64 Lock;
  /* 0x0008 */ void* ZeroMapping;
  /* 0x0010 */ unsigned __int64 AllocationHintBit;
  /* 0x0018 */ struct _RTL_BITMAP_EX Bitmap[2];
  /* 0x0038 */ volatile long ConcurrencyMaximum;
  /* 0x003c */ volatile long ConcurrencyCount;
} MI_ULTRA_VA_CONTEXT, *PMI_ULTRA_VA_CONTEXT; /* size: 0x0040 */

typedef struct _MI_SYSTEM_PTE_STATE
{
  /* 0x0000 */ struct _NPAGED_LOOKASIDE_LIST MdlTrackerLookaside;
  /* 0x0080 */ union _SLIST_HEADER DeadPteTrackerSListHead;
  /* 0x0090 */ unsigned __int64 PteTrackerLock;
  /* 0x0098 */ struct _RTL_BITMAP_EX PteTrackingBitmap;
  /* 0x00a8 */ volatile struct _MI_CACHED_PTES* CachedPteHeads;
  /* 0x00b0 */ volatile struct _MI_CACHED_PTES* CachedKernelStackPteHeads;
  /* 0x00b8 */ struct _MI_SYSTEM_PTE_TYPE SystemViewPteInfo;
  /* 0x0118 */ struct _MI_SYSTEM_PTE_TYPE KernelStackPteInfo;
  /* 0x0178 */ unsigned long StackGrowthFailures;
  /* 0x017c */ unsigned char KernelStackPages;
  /* 0x017d */ unsigned char TrackPtesAborted;
  /* 0x017e */ unsigned char AdjustCounter;
  /* 0x017f */ char Padding_668;
  /* 0x0180 */ volatile long ReservedMappingLock;
  /* 0x0184 */ long Padding_669;
  /* 0x0188 */ struct _RTL_AVL_TREE ReservedMappingTree;
  /* 0x0190 */ struct _MMPFN* ReservedMappingPageTablePfns;
  /* 0x0198 */ struct _RTL_AVL_TREE OutswappedKernelStackRoot;
  /* 0x01a0 */ volatile long OutswappedKernelStackLock;
  /* 0x01a4 */ long Padding_670;
  /* 0x01a8 */ struct _MMPTE* BreakMakePte;
  /* 0x01b0 */ struct _MI_ULTRA_VA_CONTEXT UltraSpaceContext;
  /* 0x01f0 */ unsigned long NumberOfUltraMdlMaps;
  /* 0x01f4 */ long Padding_671;
  /* 0x01f8 */ struct _MI_ULTRA_MDL_NODE* UltraMdlNodeMappings;
} MI_SYSTEM_PTE_STATE, *PMI_SYSTEM_PTE_STATE; /* size: 0x0200 */

typedef struct _MI_IO_CACHE_STATS
{
  /* 0x0000 */ unsigned __int64 UnusedBlocks;
  /* 0x0008 */ unsigned long ActiveCacheMatch;
  /* 0x000c */ unsigned long ActiveCacheOverride;
  /* 0x0010 */ unsigned long UnmappedCacheFlush;
  /* 0x0014 */ unsigned long UnmappedCacheMatch;
  /* 0x0018 */ unsigned long UnmappedCacheConflict;
  /* 0x001c */ unsigned long PermanentIoAttributeConflict;
  /* 0x0020 */ unsigned long PermanentIoNodeConflict;
  /* 0x0024 */ long __PADDING__[1];
} MI_IO_CACHE_STATS, *PMI_IO_CACHE_STATS; /* size: 0x0028 */

typedef struct _MI_IO_PAGE_STATE
{
  /* 0x0000 */ volatile long IoPfnLock;
  /* 0x0004 */ long Padding_672;
  /* 0x0008 */ struct _RTL_AVL_TREE IoPfnRoot[3];
  /* 0x0020 */ struct _LIST_ENTRY UnusedCachedMaps;
  /* 0x0030 */ unsigned long OldestCacheFlushTimeStamp;
  /* 0x0034 */ long Padding_673;
  /* 0x0038 */ struct _MI_IO_CACHE_STATS IoCacheStats;
  /* 0x0060 */ struct _RTL_AVL_TREE InvariantIoSpace;
} MI_IO_PAGE_STATE, *PMI_IO_PAGE_STATE; /* size: 0x0068 */

typedef struct _MI_PAGING_IO_STATE
{
  /* 0x0000 */ struct _RTL_AVL_TREE PageFileHead;
  /* 0x0008 */ volatile long PageFileHeadSpinLock;
  /* 0x000c */ long PrefetchSeekThreshold;
  /* 0x0010 */ unsigned long InPageSinglePages;
  /* 0x0014 */ long Padding_674[3];
  /* 0x0020 */ union _SLIST_HEADER InPageSupportSListHead[2];
  /* 0x0040 */ union _SLIST_HEADER ReservedInPageSupportSListHead[2];
  /* 0x0060 */ unsigned char InPageSupportSListMinimum[2];
  /* 0x0062 */ char Padding_675[6];
  /* 0x0068 */ struct _MMINPAGE_SUPPORT* FirstReservedInPageBlock[2];
  /* 0x0078 */ struct _MMINPAGE_SUPPORT* LastReservedInPageBlock[2];
  /* 0x0088 */ struct _MMPTE* ReservedPtes;
  /* 0x0090 */ unsigned __int64 ReservedPtesLock;
  /* 0x0098 */ unsigned long ReservedPtesBitBuffer;
  /* 0x009c */ volatile long DelayPageFaults;
  /* 0x00a0 */ unsigned long FileCompressionBoundary;
  /* 0x00a4 */ unsigned char MdlsAdjusted;
  /* 0x00a5 */ char __PADDING__[11];
} MI_PAGING_IO_STATE, *PMI_PAGING_IO_STATE; /* size: 0x00b0 */

typedef struct _MI_COMMON_PAGE_STATE
{
  /* 0x0000 */ struct _MMPFN* PageOfOnesPfn;
  /* 0x0008 */ unsigned __int64 PageOfOnes;
  /* 0x0010 */ struct _MMPFN* DummyPagePfn;
  /* 0x0018 */ unsigned __int64 DummyPage;
  /* 0x0020 */ unsigned __int64 PageOfZeroes;
  /* 0x0028 */ void* ZeroMapping;
  /* 0x0030 */ void* OnesMapping;
  /* 0x0038 */ unsigned __int64 ZeroCrc;
  /* 0x0040 */ unsigned __int64 OnesCrc;
  /* 0x0048 */ unsigned __int64 BitmapGapFrames[4];
  /* 0x0068 */ unsigned __int64 PfnGapFrames[4];
  /* 0x0088 */ unsigned __int64 PageTableOfZeroes;
  /* 0x0090 */ struct _MMPTE PdeOfZeroes;
  /* 0x0098 */ unsigned __int64 PageTableOfOnes;
  /* 0x00a0 */ struct _MMPTE PdeOfOnes;
} MI_COMMON_PAGE_STATE, *PMI_COMMON_PAGE_STATE; /* size: 0x00a8 */

typedef struct _MI_SYSTEM_TRIM_STATE
{
  /* 0x0000 */ unsigned __int64 ExpansionLock;
  /* 0x0008 */ volatile long TrimInProgressCount;
  /* 0x000c */ long Padding_676;
  /* 0x0010 */ struct _KEVENT PeriodicWorkingSetEvent;
  /* 0x0028 */ unsigned long TrimAllPageFaultCount[3];
  /* 0x0034 */ long __PADDING__[3];
} MI_SYSTEM_TRIM_STATE, *PMI_SYSTEM_TRIM_STATE; /* size: 0x0040 */

typedef struct _SYSPTES_HEADER
{
  /* 0x0000 */ struct _LIST_ENTRY ListHead[16];
  /* 0x0100 */ unsigned __int64 Count;
  /* 0x0108 */ unsigned __int64 NumberOfEntries;
  /* 0x0110 */ unsigned __int64 NumberOfEntriesPeak;
} SYSPTES_HEADER, *PSYSPTES_HEADER; /* size: 0x0118 */

typedef struct _MI_VISIBLE_STATE
{
  /* 0x0000 */ struct _LIST_ENTRY SessionWsList;
  /* 0x0010 */ struct _RTL_BITMAP* SessionIdBitmap;
  /* 0x0018 */ struct _MM_PAGED_POOL_INFO PagedPoolInfo;
  /* 0x0030 */ unsigned __int64 MaximumNonPagedPoolInPages;
  /* 0x0038 */ unsigned __int64 SizeOfPagedPoolInPages;
  /* 0x0040 */ struct _MI_SYSTEM_PTE_TYPE SystemPteInfo;
  /* 0x00a0 */ volatile unsigned __int64 NonPagedPoolCommit;
  /* 0x00a8 */ volatile unsigned __int64 SmallNonPagedPtesCommit;
  /* 0x00b0 */ volatile unsigned __int64 BootCommit;
  /* 0x00b8 */ volatile unsigned __int64 MdlPagesAllocated;
  /* 0x00c0 */ volatile unsigned __int64 SystemPageTableCommit;
  /* 0x00c8 */ volatile unsigned __int64 ProcessCommit;
  /* 0x00d0 */ volatile long DriverCommit;
  /* 0x00d4 */ unsigned char PagingLevels;
  /* 0x00d5 */ char Padding_677[3];
  /* 0x00d8 */ volatile unsigned __int64 PfnDatabaseCommit;
  /* 0x00e0 */ long Padding_678[8];
  /* 0x0100 */ struct _MMSUPPORT_FULL SystemWs[6];
  /* 0x0880 */ struct _MMSUPPORT_SHARED SystemCacheShared;
  /* 0x0900 */ struct _MMSUPPORT_AGGREGATION AggregateSystemWs[1];
  /* 0x0920 */ unsigned long MapCacheFailures;
  /* 0x0924 */ long Padding_679;
  /* 0x0928 */ unsigned __int64 PagefileHashPages;
  /* 0x0930 */ struct _SYSPTES_HEADER PteHeader;
  /* 0x0a48 */ unsigned __int64 SystemVaTypeCount[16];
  /* 0x0ac8 */ unsigned char SystemVaType[256];
  /* 0x0bc8 */ struct _MI_SYSTEM_VA_ASSIGNMENT SystemVaRegions[13];
  /* 0x0c98 */ long __PADDING__[10];
} MI_VISIBLE_STATE, *PMI_VISIBLE_STATE; /* size: 0x0cc0 */

typedef struct _MI_SYSTEM_INFORMATION
{
  /* 0x0000 */ struct _MI_POOL_STATE Pools;
  /* 0x00a8 */ long Padding_680[6];
  /* 0x00c0 */ struct _MI_SECTION_STATE Sections;
  /* 0x0400 */ struct _MI_SYSTEM_IMAGE_STATE SystemImages;
  /* 0x04a8 */ struct _MI_SESSION_STATE Sessions;
  /* 0x1550 */ struct _MI_PROCESS_STATE Processes;
  /* 0x1598 */ long Padding_681[10];
  /* 0x15c0 */ struct _MI_HARDWARE_STATE Hardware;
  /* 0x1780 */ struct _MI_SYSTEM_VA_STATE SystemVa;
  /* 0x1c40 */ struct _MI_COMBINE_STATE PageCombines;
  /* 0x1c60 */ struct _MI_PAGELIST_STATE PageLists;
  /* 0x1ce8 */ long Padding_682[6];
  /* 0x1d00 */ struct _MI_PARTITION_STATE Partitions;
  /* 0x1dc0 */ struct _MI_SHUTDOWN_STATE Shutdowns;
  /* 0x1e38 */ struct _MI_ERROR_STATE Errors;
  /* 0x1f00 */ struct _MI_ACCESS_LOG_STATE AccessLog;
  /* 0x1f80 */ struct _MI_DEBUGGER_STATE Debugger;
  /* 0x2098 */ long Padding_683[2];
  /* 0x20a0 */ struct _MI_STANDBY_STATE Standby;
  /* 0x2130 */ long Padding_684[4];
  /* 0x2140 */ struct _MI_SYSTEM_PTE_STATE SystemPtes;
  /* 0x2340 */ struct _MI_IO_PAGE_STATE IoPages;
  /* 0x23a8 */ long Padding_685[2];
  /* 0x23b0 */ struct _MI_PAGING_IO_STATE PagingIo;
  /* 0x2460 */ struct _MI_COMMON_PAGE_STATE CommonPages;
  /* 0x2508 */ long Padding_686[14];
  /* 0x2540 */ struct _MI_SYSTEM_TRIM_STATE Trims;
  /* 0x2580 */ struct _MI_ENCLAVE_STATE Enclaves;
  /* 0x25c8 */ unsigned __int64 Cookie;
  /* 0x25d0 */ void* volatile* BootRegistryRuns;
  /* 0x25d8 */ volatile long ZeroingDisabled;
  /* 0x25dc */ unsigned char FullyInitialized;
  /* 0x25dd */ unsigned char SafeBooted;
  /* 0x25de */ char Padding_687[2];
  /* 0x25e0 */ const struct _tlgProvider_t* TraceLogging;
  /* 0x25e8 */ long Padding_688[6];
  /* 0x2600 */ struct _MI_VISIBLE_STATE Vs;
} MI_SYSTEM_INFORMATION, *PMI_SYSTEM_INFORMATION; /* size: 0x32c0 */

typedef struct _LPCP_PORT_OBJECT
{
  /* 0x0000 */ struct _LPCP_PORT_OBJECT* ConnectionPort;
  /* 0x0008 */ struct _LPCP_PORT_OBJECT* ConnectedPort;
  /* 0x0010 */ struct _LPCP_PORT_QUEUE MsgQueue;
  /* 0x0030 */ struct _CLIENT_ID Creator;
  /* 0x0040 */ void* ClientSectionBase;
  /* 0x0048 */ void* ServerSectionBase;
  /* 0x0050 */ void* PortContext;
  /* 0x0058 */ struct _ETHREAD* ClientThread;
  /* 0x0060 */ struct _SECURITY_QUALITY_OF_SERVICE SecurityQos;
  /* 0x006c */ long Padding_689;
  /* 0x0070 */ struct _SECURITY_CLIENT_CONTEXT StaticSecurity;
  /* 0x00b8 */ struct _LIST_ENTRY LpcReplyChainHead;
  /* 0x00c8 */ struct _LIST_ENTRY LpcDataInfoChainHead;
  union
  {
    /* 0x00d8 */ struct _EPROCESS* ServerProcess;
    /* 0x00d8 */ struct _EPROCESS* MappingProcess;
  }; /* size: 0x0008 */
  /* 0x00e0 */ unsigned short MaxMessageLength;
  /* 0x00e2 */ unsigned short MaxConnectionInfoLength;
  /* 0x00e4 */ unsigned long Flags;
  /* 0x00e8 */ struct _KEVENT WaitEvent;
} LPCP_PORT_OBJECT, *PLPCP_PORT_OBJECT; /* size: 0x0100 */

typedef struct _EX_WORK_QUEUE
{
  /* 0x0000 */ struct _KPRIQUEUE WorkPriQueue;
  /* 0x02b0 */ struct _EX_PARTITION* Partition;
  /* 0x02b8 */ struct _ENODE* Node;
  /* 0x02c0 */ volatile unsigned long WorkItemsProcessed;
  /* 0x02c4 */ unsigned long WorkItemsProcessedLastPass;
  /* 0x02c8 */ volatile long ThreadCount;
  struct /* bitfield */
  {
    /* 0x02cc */ long MinThreads : 31; /* bit position: 0 */
    /* 0x02cc */ volatile unsigned long TryFailed : 1; /* bit position: 31 */
  }; /* bitfield */
  /* 0x02d0 */ long MaxThreads;
  /* 0x02d4 */ enum _EXQUEUEINDEX QueueIndex;
  /* 0x02d8 */ struct _KEVENT* AllThreadsExitedEvent;
} EX_WORK_QUEUE, *PEX_WORK_QUEUE; /* size: 0x02e0 */

typedef struct _SECTION
{
  /* 0x0000 */ struct _RTL_BALANCED_NODE SectionNode;
  /* 0x0018 */ unsigned __int64 StartingVpn;
  /* 0x0020 */ unsigned __int64 EndingVpn;
  union
  {
    union
    {
      /* 0x0028 */ struct _CONTROL_AREA* ControlArea;
      /* 0x0028 */ struct _FILE_OBJECT* FileObject;
      struct /* bitfield */
      {
        /* 0x0028 */ unsigned __int64 RemoteImageFileObject : 1; /* bit position: 0 */
        /* 0x0028 */ unsigned __int64 RemoteDataFileObject : 1; /* bit position: 1 */
      }; /* bitfield */
    }; /* size: 0x0008 */
  } /* size: 0x0008 */ u1;
  /* 0x0030 */ unsigned __int64 SizeOfSection;
  union
  {
    union
    {
      /* 0x0038 */ unsigned long LongFlags;
      /* 0x0038 */ struct _MMSECTION_FLAGS Flags;
    }; /* size: 0x0004 */
  } /* size: 0x0004 */ u;
  struct /* bitfield */
  {
    /* 0x003c */ unsigned long InitialPageProtection : 12; /* bit position: 0 */
    /* 0x003c */ unsigned long SessionId : 19; /* bit position: 12 */
    /* 0x003c */ unsigned long NoValidationNeeded : 1; /* bit position: 31 */
  }; /* bitfield */
} SECTION, *PSECTION; /* size: 0x0040 */

typedef struct _RTL_RETPOLINE_ROUTINES
{
  /* 0x0000 */ unsigned long UnwindDataOffset;
  /* 0x0004 */ unsigned long SwitchtableJump[16];
  /* 0x0044 */ unsigned long CfgIndirectRax;
  /* 0x0048 */ unsigned long NonCfgIndirectRax;
  /* 0x004c */ unsigned long ImportR10;
} RTL_RETPOLINE_ROUTINES, *PRTL_RETPOLINE_ROUTINES; /* size: 0x0050 */

typedef struct _KTIMER2
{
  /* 0x0000 */ struct _DISPATCHER_HEADER Header;
  union
  {
    /* 0x0018 */ struct _RTL_BALANCED_NODE RbNodes[2];
    /* 0x0018 */ struct _LIST_ENTRY ListEntry;
  }; /* size: 0x0030 */
  /* 0x0048 */ unsigned __int64 DueTime[2];
  /* 0x0058 */ __int64 Period;
  /* 0x0060 */ void* Callback /* function */;
  /* 0x0068 */ void* CallbackContext;
  /* 0x0070 */ void* DisableCallback /* function */;
  /* 0x0078 */ void* DisableContext;
  /* 0x0080 */ unsigned char AbsoluteSystemTime;
  union
  {
    /* 0x0081 */ unsigned char TypeFlags;
    struct /* bitfield */
    {
      /* 0x0081 */ unsigned char Unused : 1; /* bit position: 0 */
      /* 0x0081 */ unsigned char IdleResilient : 1; /* bit position: 1 */
      /* 0x0081 */ unsigned char HighResolution : 1; /* bit position: 2 */
      /* 0x0081 */ unsigned char NoWake : 1; /* bit position: 3 */
      /* 0x0081 */ unsigned char PseudoHighRes : 1; /* bit position: 4 */
      /* 0x0081 */ unsigned char Unused1 : 3; /* bit position: 5 */
    }; /* bitfield */
  }; /* size: 0x0001 */
  /* 0x0082 */ unsigned char CollectionIndex[2];
  /* 0x0084 */ long __PADDING__[1];
} KTIMER2, *PKTIMER2; /* size: 0x0088 */

typedef struct _EX_WORK_QUEUE_MANAGER
{
  /* 0x0000 */ struct _EX_PARTITION* Partition;
  /* 0x0008 */ struct _ENODE* Node;
  /* 0x0010 */ struct _KEVENT Event;
  /* 0x0028 */ struct _KTIMER DeadlockTimer;
  /* 0x0068 */ struct _KEVENT ReaperEvent;
  /* 0x0080 */ struct _KTIMER2 ReaperTimer;
  /* 0x0108 */ void* ThreadHandle;
  /* 0x0110 */ volatile unsigned long ExitThread;
  /* 0x0114 */ unsigned short ThreadSeed;
  /* 0x0116 */ char __PADDING__[2];
} EX_WORK_QUEUE_MANAGER, *PEX_WORK_QUEUE_MANAGER; /* size: 0x0118 */

typedef struct _KLDR_DATA_TABLE_ENTRY
{
  /* 0x0000 */ struct _LIST_ENTRY InLoadOrderLinks;
  /* 0x0010 */ void* ExceptionTable;
  /* 0x0018 */ unsigned long ExceptionTableSize;
  /* 0x001c */ long Padding_690;
  /* 0x0020 */ void* GpValue;
  /* 0x0028 */ struct _NON_PAGED_DEBUG_INFO* NonPagedDebugInfo;
  /* 0x0030 */ void* DllBase;
  /* 0x0038 */ void* EntryPoint;
  /* 0x0040 */ unsigned long SizeOfImage;
  /* 0x0044 */ long Padding_691;
  /* 0x0048 */ struct _UNICODE_STRING FullDllName;
  /* 0x0058 */ struct _UNICODE_STRING BaseDllName;
  /* 0x0068 */ unsigned long Flags;
  /* 0x006c */ unsigned short LoadCount;
  union
  {
    union
    {
      struct /* bitfield */
      {
        /* 0x006e */ unsigned short SignatureLevel : 4; /* bit position: 0 */
        /* 0x006e */ unsigned short SignatureType : 3; /* bit position: 4 */
        /* 0x006e */ unsigned short Unused : 9; /* bit position: 7 */
      }; /* bitfield */
      /* 0x006e */ unsigned short EntireField;
    }; /* size: 0x0002 */
  } /* size: 0x0002 */ u1;
  /* 0x0070 */ void* SectionPointer;
  /* 0x0078 */ unsigned long CheckSum;
  /* 0x007c */ unsigned long CoverageSectionSize;
  /* 0x0080 */ void* CoverageSection;
  /* 0x0088 */ void* LoadedImports;
  /* 0x0090 */ void* Spare;
  /* 0x0098 */ unsigned long SizeOfImageNotRounded;
  /* 0x009c */ unsigned long TimeDateStamp;
} KLDR_DATA_TABLE_ENTRY, *PKLDR_DATA_TABLE_ENTRY; /* size: 0x00a0 */

typedef struct _MI_DRIVER_VA
{
  /* 0x0000 */ struct _MI_DRIVER_VA* Next;
  /* 0x0008 */ struct _MMPTE* PointerPte;
  /* 0x0010 */ struct _RTL_BITMAP BitMap;
  /* 0x0020 */ unsigned long Hint;
  /* 0x0024 */ unsigned long Flags;
} MI_DRIVER_VA, *PMI_DRIVER_VA; /* size: 0x0028 */

typedef struct _MI_NODE_NUMBER_ZERO_BASED
{
  /* 0x0000 */ unsigned long ZeroBased;
} MI_NODE_NUMBER_ZERO_BASED, *PMI_NODE_NUMBER_ZERO_BASED; /* size: 0x0004 */

typedef struct _DEVICE_DESCRIPTION
{
  /* 0x0000 */ unsigned long Version;
  /* 0x0004 */ unsigned char Master;
  /* 0x0005 */ unsigned char ScatterGather;
  /* 0x0006 */ unsigned char DemandMode;
  /* 0x0007 */ unsigned char AutoInitialize;
  /* 0x0008 */ unsigned char Dma32BitAddresses;
  /* 0x0009 */ unsigned char IgnoreCount;
  /* 0x000a */ unsigned char Reserved1;
  /* 0x000b */ unsigned char Dma64BitAddresses;
  /* 0x000c */ unsigned long BusNumber;
  /* 0x0010 */ unsigned long DmaChannel;
  /* 0x0014 */ enum _INTERFACE_TYPE InterfaceType;
  /* 0x0018 */ enum _DMA_WIDTH DmaWidth;
  /* 0x001c */ enum _DMA_SPEED DmaSpeed;
  /* 0x0020 */ unsigned long MaximumLength;
  /* 0x0024 */ unsigned long DmaPort;
  /* 0x0028 */ unsigned long DmaAddressWidth;
  /* 0x002c */ unsigned long DmaControllerInstance;
  /* 0x0030 */ unsigned long DmaRequestLine;
  /* 0x0034 */ long Padding_692;
  /* 0x0038 */ union _LARGE_INTEGER DeviceAddress;
} DEVICE_DESCRIPTION, *PDEVICE_DESCRIPTION; /* size: 0x0040 */

typedef struct _HAL_CHANNEL_MEMORY_RANGES
{
  /* 0x0000 */ unsigned __int64 PageFrameIndex;
  /* 0x0008 */ unsigned short MpnId;
  /* 0x000a */ unsigned short Node;
  /* 0x000c */ unsigned short Channel;
  /* 0x000e */ unsigned char IsPowerManageable;
  /* 0x000f */ unsigned char DeepPowerState;
} HAL_CHANNEL_MEMORY_RANGES, *PHAL_CHANNEL_MEMORY_RANGES; /* size: 0x0010 */

typedef struct _KSECONDARY_IDT_ENTRY
{
  /* 0x0000 */ unsigned __int64 SpinLock;
  /* 0x0008 */ struct _KEVENT ConnectLock;
  /* 0x0020 */ unsigned char LineMasked;
  /* 0x0021 */ char Padding_693[7];
  /* 0x0028 */ struct _KINTERRUPT* InterruptList;
} KSECONDARY_IDT_ENTRY, *PKSECONDARY_IDT_ENTRY; /* size: 0x0030 */

typedef struct _MAPPED_FILE_SEGMENT
{
  /* 0x0000 */ struct _CONTROL_AREA* ControlArea;
  /* 0x0008 */ unsigned long TotalNumberOfPtes;
  /* 0x000c */ struct _SEGMENT_FLAGS SegmentFlags;
  /* 0x0010 */ unsigned __int64 NumberOfCommittedPages;
  /* 0x0018 */ unsigned __int64 SizeOfSegment;
  union
  {
    /* 0x0020 */ struct _MMEXTEND_INFO* ExtendInfo;
    /* 0x0020 */ void* BasedAddress;
  }; /* size: 0x0008 */
  /* 0x0028 */ struct _EX_PUSH_LOCK SegmentLock;
} MAPPED_FILE_SEGMENT, *PMAPPED_FILE_SEGMENT; /* size: 0x0030 */

typedef struct _VF_TRACKER_STAMP
{
  /* 0x0000 */ void* Thread;
  /* 0x0008 */ unsigned char Flags : 8; /* bit position: 0 */
  /* 0x0009 */ unsigned char OldIrql : 8; /* bit position: 0 */
  /* 0x000a */ unsigned char NewIrql : 8; /* bit position: 0 */
  /* 0x000b */ unsigned char Processor : 8; /* bit position: 0 */
  /* 0x000c */ long __PADDING__[1];
} VF_TRACKER_STAMP, *PVF_TRACKER_STAMP; /* size: 0x0010 */

typedef struct _ISR_THUNK
{
  /* 0x0000 */ unsigned char PushImm;
  /* 0x0001 */ unsigned char Vector;
  /* 0x0002 */ unsigned char PushRbp;
  /* 0x0003 */ unsigned char JmpOp;
  /* 0x0004 */ long JmpOffset;
} ISR_THUNK, *PISR_THUNK; /* size: 0x0008 */

typedef struct _MI_HUGE_PFN
{
  union
  {
    union
    {
      struct
      {
        /* 0x0000 */ unsigned __int64 EntireField;
      } /* size: 0x0008 */ e1;
      struct
      {
        struct /* bitfield */
        {
          /* 0x0000 */ unsigned __int64 Flink : 18; /* bit position: 0 */
          /* 0x0000 */ unsigned __int64 PageState : 3; /* bit position: 18 */
          /* 0x0000 */ unsigned __int64 Blink : 18; /* bit position: 21 */
          /* 0x0000 */ unsigned __int64 WriteInProgress : 1; /* bit position: 39 */
          /* 0x0000 */ unsigned __int64 HasError : 1; /* bit position: 40 */
          /* 0x0000 */ unsigned __int64 Partition : 11; /* bit position: 41 */
          /* 0x0000 */ unsigned __int64 Reserved : 12; /* bit position: 52 */
        }; /* bitfield */
      } /* size: 0x0008 */ e2;
    }; /* size: 0x0008 */
  } /* size: 0x0008 */ u1;
} MI_HUGE_PFN, *PMI_HUGE_PFN; /* size: 0x0008 */

typedef struct _LPCP_NONPAGED_PORT_QUEUE
{
  /* 0x0000 */ struct _KSEMAPHORE Semaphore;
  /* 0x0020 */ struct _LPCP_PORT_OBJECT* BackPointer;
} LPCP_NONPAGED_PORT_QUEUE, *PLPCP_NONPAGED_PORT_QUEUE; /* size: 0x0028 */

typedef struct _MI_ULTRA_MDL_NODE
{
  /* 0x0000 */ struct _MI_ALIGNED_SLIST UltraMdlMaps[8];
} MI_ULTRA_MDL_NODE, *PMI_ULTRA_MDL_NODE; /* size: 0x0200 */

typedef struct _SEP_LOWBOX_NUMBER_MAPPING
{
  /* 0x0000 */ struct _EX_PUSH_LOCK Lock;
  /* 0x0008 */ struct _RTL_BITMAP Bitmap;
  /* 0x0018 */ struct _RTL_DYNAMIC_HASH_TABLE* HashTable;
  /* 0x0020 */ unsigned char Active;
  /* 0x0021 */ char __PADDING__[7];
} SEP_LOWBOX_NUMBER_MAPPING, *PSEP_LOWBOX_NUMBER_MAPPING; /* size: 0x0028 */

typedef struct _MMVAD_FLAGS2
{
  struct /* bitfield */
  {
    /* 0x0000 */ unsigned long FileOffset : 24; /* bit position: 0 */
    /* 0x0000 */ unsigned long Large : 1; /* bit position: 24 */
    /* 0x0000 */ unsigned long TrimBehind : 1; /* bit position: 25 */
    /* 0x0000 */ unsigned long Inherit : 1; /* bit position: 26 */
    /* 0x0000 */ unsigned long NoValidationNeeded : 1; /* bit position: 27 */
    /* 0x0000 */ unsigned long PrivateDemandZero : 1; /* bit position: 28 */
    /* 0x0000 */ unsigned long Spare : 3; /* bit position: 29 */
  }; /* bitfield */
} MMVAD_FLAGS2, *PMMVAD_FLAGS2; /* size: 0x0004 */

typedef struct _MI_VAD_SEQUENTIAL_INFO
{
  struct /* bitfield */
  {
    /* 0x0000 */ unsigned __int64 Length : 12; /* bit position: 0 */
    /* 0x0000 */ unsigned __int64 Vpn : 52; /* bit position: 12 */
  }; /* bitfield */
} MI_VAD_SEQUENTIAL_INFO, *PMI_VAD_SEQUENTIAL_INFO; /* size: 0x0008 */

typedef struct _MMVAD
{
  /* 0x0000 */ struct _MMVAD_SHORT Core;
  union
  {
    union
    {
      /* 0x0040 */ unsigned long LongFlags2;
      /* 0x0040 */ volatile struct _MMVAD_FLAGS2 VadFlags2;
    }; /* size: 0x0004 */
  } /* size: 0x0004 */ u2;
  /* 0x0044 */ long Padding_694;
  /* 0x0048 */ struct _SUBSECTION* Subsection;
  /* 0x0050 */ struct _MMPTE* FirstPrototypePte;
  /* 0x0058 */ struct _MMPTE* LastContiguousPte;
  /* 0x0060 */ struct _LIST_ENTRY ViewLinks;
  /* 0x0070 */ struct _EPROCESS* VadsProcess;
  union
  {
    union
    {
      /* 0x0078 */ struct _MI_VAD_SEQUENTIAL_INFO SequentialVa;
      /* 0x0078 */ struct _MMEXTEND_INFO* ExtendedInfo;
    }; /* size: 0x0008 */
  } /* size: 0x0008 */ u4;
  /* 0x0080 */ struct _FILE_OBJECT* FileObject;
} MMVAD, *PMMVAD; /* size: 0x0088 */

typedef struct _LDRP_CSLIST
{
  /* 0x0000 */ struct _SINGLE_LIST_ENTRY* Tail;
} LDRP_CSLIST, *PLDRP_CSLIST; /* size: 0x0008 */

typedef struct _LDR_DDAG_NODE
{
  /* 0x0000 */ struct _LIST_ENTRY Modules;
  /* 0x0010 */ struct _LDR_SERVICE_TAG_RECORD* ServiceTagList;
  /* 0x0018 */ unsigned long LoadCount;
  /* 0x001c */ unsigned long LoadWhileUnloadingCount;
  /* 0x0020 */ unsigned long LowestLink;
  /* 0x0024 */ long Padding_695;
  /* 0x0028 */ struct _LDRP_CSLIST Dependencies;
  /* 0x0030 */ struct _LDRP_CSLIST IncomingDependencies;
  /* 0x0038 */ enum _LDR_DDAG_STATE State;
  /* 0x003c */ long Padding_696;
  /* 0x0040 */ struct _SINGLE_LIST_ENTRY CondenseLink;
  /* 0x0048 */ unsigned long PreorderNumber;
  /* 0x004c */ long __PADDING__[1];
} LDR_DDAG_NODE, *PLDR_DDAG_NODE; /* size: 0x0050 */

struct PROCESSOR_IDLESTATE_INFO
{
  /* 0x0000 */ unsigned long TimeCheck;
  /* 0x0004 */ unsigned char DemotePercent;
  /* 0x0005 */ unsigned char PromotePercent;
  /* 0x0006 */ unsigned char Spare[2];
}; /* size: 0x0008 */

struct PROCESSOR_IDLESTATE_POLICY
{
  /* 0x0000 */ unsigned short Revision;
  union
  {
    union
    {
      /* 0x0002 */ unsigned short AsUSHORT;
      struct /* bitfield */
      {
        /* 0x0002 */ unsigned short AllowScaling : 1; /* bit position: 0 */
        /* 0x0002 */ unsigned short Disabled : 1; /* bit position: 1 */
        /* 0x0002 */ unsigned short Reserved : 14; /* bit position: 2 */
      }; /* bitfield */
    }; /* size: 0x0002 */
  } /* size: 0x0002 */ Flags;
  /* 0x0004 */ unsigned long PolicyCount;
  /* 0x0008 */ struct PROCESSOR_IDLESTATE_INFO Policy[3];
}; /* size: 0x0020 */

typedef struct _VF_AVL_TREE
{
  /* 0x0000 */ unsigned __int64 NodeRangeSize;
  /* 0x0008 */ volatile unsigned __int64 NodeCount;
  /* 0x0010 */ struct _VF_AVL_TABLE* Tables;
  /* 0x0018 */ unsigned long TablesNo;
  /* 0x001c */ unsigned char UseSessionId;
  /* 0x001d */ char Padding_697[3];
  union
  {
    union
    {
      /* 0x0020 */ unsigned long NodeSize;
      /* 0x0020 */ unsigned long UseLookaside;
    }; /* size: 0x0004 */
  } /* size: 0x0004 */ u1;
  /* 0x0024 */ long __PADDING__[1];
} VF_AVL_TREE, *PVF_AVL_TREE; /* size: 0x0028 */

typedef struct _VF_AVL_TABLE
{
  /* 0x0000 */ struct _RTL_AVL_TABLE RtlTable;
  /* 0x0068 */ struct _VF_AVL_TREE_NODE* ReservedNode;
  /* 0x0070 */ void* NodeToFree;
  /* 0x0078 */ long Padding_698[2];
  /* 0x0080 */ volatile long Lock;
  /* 0x0084 */ long __PADDING__[15];
} VF_AVL_TABLE, *PVF_AVL_TABLE; /* size: 0x00c0 */

typedef struct _TRIAGE_DEVICE_NODE
{
  /* 0x0000 */ struct _TRIAGE_DEVICE_NODE* Sibling;
  /* 0x0008 */ struct _TRIAGE_DEVICE_NODE* Child;
  /* 0x0010 */ struct _TRIAGE_DEVICE_NODE* Parent;
  /* 0x0018 */ struct _TRIAGE_DEVICE_NODE* LastChild;
  /* 0x0020 */ struct _DEVICE_OBJECT* PhysicalDeviceObject;
  /* 0x0028 */ struct _UNICODE_STRING InstancePath;
  /* 0x0038 */ struct _UNICODE_STRING ServiceName;
  /* 0x0048 */ struct _IRP* PendingIrp;
  /* 0x0050 */ struct _TRIAGE_POP_FX_DEVICE* FxDevice;
} TRIAGE_DEVICE_NODE, *PTRIAGE_DEVICE_NODE; /* size: 0x0058 */

typedef struct _VF_AVL_TREE_NODE
{
  /* 0x0000 */ void* p;
  /* 0x0008 */ unsigned __int64 RangeSize;
} VF_AVL_TREE_NODE, *PVF_AVL_TREE_NODE; /* size: 0x0010 */

typedef struct _ARBITER_ORDERING_LIST
{
  /* 0x0000 */ unsigned short Count;
  /* 0x0002 */ unsigned short Maximum;
  /* 0x0004 */ long Padding_699;
  /* 0x0008 */ struct _ARBITER_ORDERING* Orderings;
} ARBITER_ORDERING_LIST, *PARBITER_ORDERING_LIST; /* size: 0x0010 */

typedef struct _ARBITER_INSTANCE
{
  /* 0x0000 */ unsigned long Signature;
  /* 0x0004 */ long Padding_700;
  /* 0x0008 */ struct _KEVENT* MutexEvent;
  /* 0x0010 */ wchar_t* Name;
  /* 0x0018 */ wchar_t* OrderingName;
  /* 0x0020 */ int ResourceType;
  /* 0x0024 */ long Padding_701;
  /* 0x0028 */ struct _RTL_RANGE_LIST* Allocation;
  /* 0x0030 */ struct _RTL_RANGE_LIST* PossibleAllocation;
  /* 0x0038 */ struct _ARBITER_ORDERING_LIST OrderingList;
  /* 0x0048 */ struct _ARBITER_ORDERING_LIST ReservedList;
  /* 0x0058 */ long ReferenceCount;
  /* 0x005c */ long Padding_702;
  /* 0x0060 */ struct _ARBITER_INTERFACE* Interface;
  /* 0x0068 */ unsigned long AllocationStackMaxSize;
  /* 0x006c */ long Padding_703;
  /* 0x0070 */ struct _ARBITER_ALLOCATION_STATE* AllocationStack;
  /* 0x0078 */ void* UnpackRequirement /* function */;
  /* 0x0080 */ void* PackResource /* function */;
  /* 0x0088 */ void* UnpackResource /* function */;
  /* 0x0090 */ void* ScoreRequirement /* function */;
  /* 0x0098 */ void* TestAllocation /* function */;
  /* 0x00a0 */ void* RetestAllocation /* function */;
  /* 0x00a8 */ void* CommitAllocation /* function */;
  /* 0x00b0 */ void* RollbackAllocation /* function */;
  /* 0x00b8 */ void* BootAllocation /* function */;
  /* 0x00c0 */ void* QueryArbitrate /* function */;
  /* 0x00c8 */ void* QueryConflict /* function */;
  /* 0x00d0 */ void* AddReserved /* function */;
  /* 0x00d8 */ void* StartArbiter /* function */;
  /* 0x00e0 */ void* PreprocessEntry /* function */;
  /* 0x00e8 */ void* AllocateEntry /* function */;
  /* 0x00f0 */ void* GetNextAllocationRange /* function */;
  /* 0x00f8 */ void* FindSuitableRange /* function */;
  /* 0x0100 */ void* AddAllocation /* function */;
  /* 0x0108 */ void* BacktrackAllocation /* function */;
  /* 0x0110 */ void* OverrideConflict /* function */;
  /* 0x0118 */ void* InitializeRangeList /* function */;
  /* 0x0120 */ void* DeleteOwnerRanges /* function */;
  /* 0x0128 */ unsigned char TransactionInProgress;
  /* 0x0129 */ char Padding_704[7];
  /* 0x0130 */ struct _KEVENT* TransactionEvent;
  /* 0x0138 */ void* Extension;
  /* 0x0140 */ struct _DEVICE_OBJECT* BusDeviceObject;
  /* 0x0148 */ void* ConflictCallbackContext;
  /* 0x0150 */ void* ConflictCallback /* function */;
} ARBITER_INSTANCE, *PARBITER_INSTANCE; /* size: 0x0158 */

typedef struct _VF_TARGET_ALL_SHARED_EXPORT_THUNKS
{
  /* 0x0000 */ struct _VERIFIER_SHARED_EXPORT_THUNK* SharedExportThunks;
  /* 0x0008 */ struct _VERIFIER_SHARED_EXPORT_THUNK* PoolSharedExportThunks;
  /* 0x0010 */ struct _VERIFIER_SHARED_EXPORT_THUNK* OrderDependentSharedExportThunks;
  /* 0x0018 */ struct _VERIFIER_SHARED_EXPORT_THUNK* XdvSharedExportThunks;
} VF_TARGET_ALL_SHARED_EXPORT_THUNKS, *PVF_TARGET_ALL_SHARED_EXPORT_THUNKS; /* size: 0x0020 */

typedef struct _RTL_RANGE_LIST
{
  /* 0x0000 */ struct _LIST_ENTRY ListHead;
  /* 0x0010 */ unsigned long Flags;
  /* 0x0014 */ unsigned long Count;
  /* 0x0018 */ unsigned long Stamp;
  /* 0x001c */ long __PADDING__[1];
} RTL_RANGE_LIST, *PRTL_RANGE_LIST; /* size: 0x0020 */

typedef struct _VF_AVL_TREE_NODE_EX
{
  /* 0x0000 */ struct _VF_AVL_TREE_NODE Base;
  /* 0x0010 */ unsigned long SessionId;
  /* 0x0014 */ long __PADDING__[1];
} VF_AVL_TREE_NODE_EX, *PVF_AVL_TREE_NODE_EX; /* size: 0x0018 */

typedef struct _ARBITER_ORDERING
{
  /* 0x0000 */ unsigned __int64 Start;
  /* 0x0008 */ unsigned __int64 End;
} ARBITER_ORDERING, *PARBITER_ORDERING; /* size: 0x0010 */

typedef struct _ARBITER_INTERFACE
{
  /* 0x0000 */ unsigned short Size;
  /* 0x0002 */ unsigned short Version;
  /* 0x0004 */ long Padding_705;
  /* 0x0008 */ void* Context;
  /* 0x0010 */ void* InterfaceReference /* function */;
  /* 0x0018 */ void* InterfaceDereference /* function */;
  /* 0x0020 */ void* ArbiterHandler /* function */;
  /* 0x0028 */ unsigned long Flags;
  /* 0x002c */ long __PADDING__[1];
} ARBITER_INTERFACE, *PARBITER_INTERFACE; /* size: 0x0030 */

typedef struct _VI_POOL_PAGE_HEADER
{
  /* 0x0000 */ struct _SLIST_ENTRY* NextPage;
  /* 0x0008 */ void* VerifierEntry;
  /* 0x0010 */ unsigned __int64 Signature;
} VI_POOL_PAGE_HEADER, *PVI_POOL_PAGE_HEADER; /* size: 0x0018 */

typedef struct _VI_POOL_ENTRY_INUSE
{
  /* 0x0000 */ void* VirtualAddress;
  /* 0x0008 */ void* CallingAddress;
  /* 0x0010 */ unsigned __int64 NumberOfBytes;
  /* 0x0018 */ unsigned __int64 Tag;
} VI_POOL_ENTRY_INUSE, *PVI_POOL_ENTRY_INUSE; /* size: 0x0020 */

typedef struct _VI_POOL_ENTRY
{
  union
  {
    /* 0x0000 */ struct _VI_POOL_PAGE_HEADER PageHeader;
    /* 0x0000 */ struct _VI_POOL_ENTRY_INUSE InUse;
    struct
    {
      /* 0x0000 */ struct _SLIST_ENTRY* NextFree;
      /* 0x0008 */ long __PADDING__[6];
    }; /* size: 0x0020 */
  }; /* size: 0x0020 */
} VI_POOL_ENTRY, *PVI_POOL_ENTRY; /* size: 0x0020 */

typedef struct _MI_SYSTEM_CACHE_VIEW_ATTRIBUTES
{
  struct /* bitfield */
  {
    /* 0x0000 */ unsigned __int64 NumberOfPtes : 6; /* bit position: 0 */
    /* 0x0000 */ unsigned __int64 PartitionId : 10; /* bit position: 6 */
    /* 0x0000 */ unsigned __int64 SectionOffset : 48; /* bit position: 16 */
  }; /* bitfield */
} MI_SYSTEM_CACHE_VIEW_ATTRIBUTES, *PMI_SYSTEM_CACHE_VIEW_ATTRIBUTES; /* size: 0x0008 */

typedef struct _ARBITER_TEST_ALLOCATION_PARAMETERS
{
  /* 0x0000 */ struct _LIST_ENTRY* ArbitrationList;
  /* 0x0008 */ unsigned long AllocateFromCount;
  /* 0x000c */ long Padding_706;
  /* 0x0010 */ struct _CM_PARTIAL_RESOURCE_DESCRIPTOR* AllocateFrom;
} ARBITER_TEST_ALLOCATION_PARAMETERS, *PARBITER_TEST_ALLOCATION_PARAMETERS; /* size: 0x0018 */

typedef struct _ARBITER_RETEST_ALLOCATION_PARAMETERS
{
  /* 0x0000 */ struct _LIST_ENTRY* ArbitrationList;
  /* 0x0008 */ unsigned long AllocateFromCount;
  /* 0x000c */ long Padding_707;
  /* 0x0010 */ struct _CM_PARTIAL_RESOURCE_DESCRIPTOR* AllocateFrom;
} ARBITER_RETEST_ALLOCATION_PARAMETERS, *PARBITER_RETEST_ALLOCATION_PARAMETERS; /* size: 0x0018 */

typedef struct _ARBITER_BOOT_ALLOCATION_PARAMETERS
{
  /* 0x0000 */ struct _LIST_ENTRY* ArbitrationList;
} ARBITER_BOOT_ALLOCATION_PARAMETERS, *PARBITER_BOOT_ALLOCATION_PARAMETERS; /* size: 0x0008 */

typedef struct _ARBITER_QUERY_CONFLICT_PARAMETERS
{
  /* 0x0000 */ struct _DEVICE_OBJECT* PhysicalDeviceObject;
  /* 0x0008 */ struct _IO_RESOURCE_DESCRIPTOR* ConflictingResource;
  /* 0x0010 */ unsigned long* ConflictCount;
  /* 0x0018 */ struct _ARBITER_CONFLICT_INFO** Conflicts;
} ARBITER_QUERY_CONFLICT_PARAMETERS, *PARBITER_QUERY_CONFLICT_PARAMETERS; /* size: 0x0020 */

typedef struct _ARBITER_QUERY_ARBITRATE_PARAMETERS
{
  /* 0x0000 */ struct _LIST_ENTRY* ArbitrationList;
} ARBITER_QUERY_ARBITRATE_PARAMETERS, *PARBITER_QUERY_ARBITRATE_PARAMETERS; /* size: 0x0008 */

typedef struct _ARBITER_ADD_RESERVED_PARAMETERS
{
  /* 0x0000 */ struct _DEVICE_OBJECT* ReserveDevice;
} ARBITER_ADD_RESERVED_PARAMETERS, *PARBITER_ADD_RESERVED_PARAMETERS; /* size: 0x0008 */

typedef struct _ARBITER_PARAMETERS
{
  union
  {
    union
    {
      /* 0x0000 */ struct _ARBITER_TEST_ALLOCATION_PARAMETERS TestAllocation;
      /* 0x0000 */ struct _ARBITER_RETEST_ALLOCATION_PARAMETERS RetestAllocation;
      /* 0x0000 */ struct _ARBITER_BOOT_ALLOCATION_PARAMETERS BootAllocation;
      /* 0x0000 */ struct _ARBITER_QUERY_ALLOCATED_RESOURCES_PARAMETERS QueryAllocatedResources;
      /* 0x0000 */ struct _ARBITER_QUERY_CONFLICT_PARAMETERS QueryConflict;
      /* 0x0000 */ struct _ARBITER_QUERY_ARBITRATE_PARAMETERS QueryArbitrate;
      /* 0x0000 */ struct _ARBITER_ADD_RESERVED_PARAMETERS AddReserved;
    }; /* size: 0x0020 */
  } /* size: 0x0020 */ Parameters;
} ARBITER_PARAMETERS, *PARBITER_PARAMETERS; /* size: 0x0020 */

struct __WIL__WNF_USER_SUBSCRIPTION;

typedef struct _LEARNING_MODE_DATA
{
  /* 0x0000 */ unsigned long Settings;
  /* 0x0004 */ unsigned char Enabled;
  /* 0x0005 */ unsigned char PermissiveModeEnabled;
  /* 0x0006 */ char __PADDING__[2];
} LEARNING_MODE_DATA, *PLEARNING_MODE_DATA; /* size: 0x0008 */

typedef struct _PTE_TRACKER
{
  /* 0x0000 */ struct _LIST_ENTRY ListEntry;
  /* 0x0010 */ struct _MDL* Mdl;
  /* 0x0018 */ unsigned __int64 Count;
  /* 0x0020 */ void* SystemVa;
  /* 0x0028 */ void* StartVa;
  /* 0x0030 */ unsigned long Offset;
  /* 0x0034 */ unsigned long Length;
  /* 0x0038 */ unsigned __int64 Page;
  struct /* bitfield */
  {
    /* 0x0040 */ unsigned long IoMapping : 1; /* bit position: 0 */
    /* 0x0040 */ unsigned long Matched : 1; /* bit position: 1 */
    /* 0x0040 */ unsigned long CacheAttribute : 2; /* bit position: 2 */
    /* 0x0040 */ unsigned long GuardPte : 1; /* bit position: 4 */
    /* 0x0040 */ unsigned long Spare : 27; /* bit position: 5 */
  }; /* bitfield */
  /* 0x0044 */ long Padding_708;
  /* 0x0048 */ void* StackTrace[7];
} PTE_TRACKER, *PPTE_TRACKER; /* size: 0x0080 */

typedef struct _ARBITER_CONFLICT_INFO
{
  /* 0x0000 */ struct _DEVICE_OBJECT* OwningObject;
  /* 0x0008 */ unsigned __int64 Start;
  /* 0x0010 */ unsigned __int64 End;
} ARBITER_CONFLICT_INFO, *PARBITER_CONFLICT_INFO; /* size: 0x0018 */

typedef struct _VI_VERIFIER_ISSUE
{
  /* 0x0000 */ unsigned __int64 IssueType;
  /* 0x0008 */ void* Address;
  /* 0x0010 */ unsigned __int64 Parameters[2];
} VI_VERIFIER_ISSUE, *PVI_VERIFIER_ISSUE; /* size: 0x0020 */

typedef struct _CRITICAL_PROCESS_EXCEPTION_DATA
{
  /* 0x0000 */ struct _GUID ReportId;
  /* 0x0010 */ struct _UNICODE_STRING ModuleName;
  /* 0x0020 */ unsigned long ModuleTimestamp;
  /* 0x0024 */ unsigned long ModuleSize;
  /* 0x0028 */ unsigned __int64 Offset;
} CRITICAL_PROCESS_EXCEPTION_DATA, *PCRITICAL_PROCESS_EXCEPTION_DATA; /* size: 0x0030 */

typedef struct _ARBITER_ALLOCATION_STATE
{
  /* 0x0000 */ unsigned __int64 Start;
  /* 0x0008 */ unsigned __int64 End;
  /* 0x0010 */ unsigned __int64 CurrentMinimum;
  /* 0x0018 */ unsigned __int64 CurrentMaximum;
  /* 0x0020 */ struct _ARBITER_LIST_ENTRY* Entry;
  /* 0x0028 */ struct _ARBITER_ALTERNATIVE* CurrentAlternative;
  /* 0x0030 */ unsigned long AlternativeCount;
  /* 0x0034 */ long Padding_709;
  /* 0x0038 */ struct _ARBITER_ALTERNATIVE* Alternatives;
  /* 0x0040 */ unsigned short Flags;
  /* 0x0042 */ unsigned char RangeAttributes;
  /* 0x0043 */ unsigned char RangeAvailableAttributes;
  /* 0x0044 */ long Padding_710;
  /* 0x0048 */ unsigned __int64 WorkSpace;
} ARBITER_ALLOCATION_STATE, *PARBITER_ALLOCATION_STATE; /* size: 0x0050 */

typedef struct _ARBITER_LIST_ENTRY
{
  /* 0x0000 */ struct _LIST_ENTRY ListEntry;
  /* 0x0010 */ unsigned long AlternativeCount;
  /* 0x0014 */ long Padding_711;
  /* 0x0018 */ struct _IO_RESOURCE_DESCRIPTOR* Alternatives;
  /* 0x0020 */ struct _DEVICE_OBJECT* PhysicalDeviceObject;
  /* 0x0028 */ enum _ARBITER_REQUEST_SOURCE RequestSource;
  /* 0x002c */ unsigned long Flags;
  /* 0x0030 */ __int64 WorkSpace;
  /* 0x0038 */ enum _INTERFACE_TYPE InterfaceType;
  /* 0x003c */ unsigned long SlotNumber;
  /* 0x0040 */ unsigned long BusNumber;
  /* 0x0044 */ long Padding_712;
  /* 0x0048 */ struct _CM_PARTIAL_RESOURCE_DESCRIPTOR* Assignment;
  /* 0x0050 */ struct _IO_RESOURCE_DESCRIPTOR* SelectedAlternative;
  /* 0x0058 */ enum _ARBITER_RESULT Result;
  /* 0x005c */ long __PADDING__[1];
} ARBITER_LIST_ENTRY, *PARBITER_LIST_ENTRY; /* size: 0x0060 */

typedef struct _ARBITER_ALTERNATIVE
{
  /* 0x0000 */ unsigned __int64 Minimum;
  /* 0x0008 */ unsigned __int64 Maximum;
  /* 0x0010 */ unsigned __int64 Length;
  /* 0x0018 */ unsigned __int64 Alignment;
  /* 0x0020 */ long Priority;
  /* 0x0024 */ unsigned long Flags;
  /* 0x0028 */ struct _IO_RESOURCE_DESCRIPTOR* Descriptor;
  /* 0x0030 */ unsigned long Reserved[3];
  /* 0x003c */ long __PADDING__[1];
} ARBITER_ALTERNATIVE, *PARBITER_ALTERNATIVE; /* size: 0x0040 */

struct BATTERY_REPORTING_SCALE
{
  /* 0x0000 */ unsigned long Granularity;
  /* 0x0004 */ unsigned long Capacity;
}; /* size: 0x0008 */

typedef struct _POP_POLICY_DEVICE
{
  /* 0x0000 */ struct _LIST_ENTRY Link;
  /* 0x0010 */ enum POWER_POLICY_DEVICE_TYPE DeviceType;
  /* 0x0014 */ long Padding_713;
  /* 0x0018 */ void* Notification;
  /* 0x0020 */ struct _UNICODE_STRING Name;
  /* 0x0030 */ struct _DEVICE_OBJECT* Device;
  /* 0x0038 */ struct _IRP* Irp;
} POP_POLICY_DEVICE, *PPOP_POLICY_DEVICE; /* size: 0x0040 */

typedef struct _THERMAL_INFORMATION_EX
{
  /* 0x0000 */ unsigned long ThermalStamp;
  /* 0x0004 */ unsigned long ThermalConstant1;
  /* 0x0008 */ unsigned long ThermalConstant2;
  /* 0x000c */ unsigned long SamplingPeriod;
  /* 0x0010 */ unsigned long CurrentTemperature;
  /* 0x0014 */ unsigned long PassiveTripPoint;
  /* 0x0018 */ unsigned long ThermalStandbyTripPoint;
  /* 0x001c */ unsigned long CriticalTripPoint;
  /* 0x0020 */ unsigned char ActiveTripPointCount;
  /* 0x0021 */ unsigned char PassiveCoolingDevicesPresent;
  /* 0x0022 */ char Padding_714[2];
  /* 0x0024 */ unsigned long ActiveTripPoint[10];
  /* 0x004c */ unsigned long S4TransitionTripPoint;
  /* 0x0050 */ unsigned long MinimumThrottle;
  /* 0x0054 */ unsigned long OverThrottleThreshold;
  /* 0x0058 */ unsigned long PollingPeriod;
} THERMAL_INFORMATION_EX, *PTHERMAL_INFORMATION_EX; /* size: 0x005c */

typedef struct _POP_THERMAL_TELEMETRY_TRACKER
{
  /* 0x0000 */ unsigned char AccountingDisabled;
  /* 0x0001 */ unsigned char ActiveLevels;
  /* 0x0002 */ char Padding_715[6];
  /* 0x0008 */ unsigned __int64 LastPassiveUpdateTime;
  /* 0x0010 */ unsigned __int64 LastActiveUpdateTime;
  /* 0x0018 */ unsigned __int64 TotalPassiveTime[21];
  /* 0x00c0 */ unsigned __int64 PassiveTimeSnap[21];
  /* 0x0168 */ unsigned __int64 TotalActiveTime[10];
  /* 0x01b8 */ unsigned __int64 ActiveTimeSnap[10];
  /* 0x0208 */ unsigned __int64 TotalTime;
  /* 0x0210 */ unsigned __int64 TotalTimeSnap;
} POP_THERMAL_TELEMETRY_TRACKER, *PPOP_THERMAL_TELEMETRY_TRACKER; /* size: 0x0218 */

typedef struct _POP_THERMAL_ZONE
{
  union
  {
    /* 0x0000 */ struct _POP_POLICY_DEVICE PolicyDevice;
    struct
    {
      /* 0x0000 */ struct _LIST_ENTRY Link;
      /* 0x0010 */ enum POWER_POLICY_DEVICE_TYPE DeviceType;
      /* 0x0014 */ long Padding_716;
      /* 0x0018 */ void* Notification;
      /* 0x0020 */ struct _UNICODE_STRING Name;
      /* 0x0030 */ struct _DEVICE_OBJECT* Device;
      /* 0x0038 */ struct _IRP* Irp;
    }; /* size: 0x003c */
  }; /* size: 0x0040 */
  /* 0x0040 */ unsigned char State;
  /* 0x0041 */ unsigned char Flags;
  /* 0x0042 */ unsigned char Removing;
  /* 0x0043 */ unsigned char Mode;
  /* 0x0044 */ unsigned char PendingMode;
  /* 0x0045 */ unsigned char ActivePoint;
  /* 0x0046 */ unsigned char PendingActivePoint;
  /* 0x0047 */ unsigned char Critical;
  /* 0x0048 */ unsigned char ThermalStandby;
  /* 0x0049 */ unsigned char OverThrottled;
  /* 0x004a */ char Padding_717[2];
  /* 0x004c */ long HighPrecisionThrottle;
  /* 0x0050 */ long Throttle;
  /* 0x0054 */ long PendingThrottle;
  /* 0x0058 */ unsigned long ThrottleReasons;
  /* 0x005c */ long Padding_718;
  /* 0x0060 */ unsigned __int64 LastPassiveTime;
  /* 0x0068 */ unsigned long SampleRate;
  /* 0x006c */ unsigned long LastTemp;
  /* 0x0070 */ struct _THERMAL_INFORMATION_EX Info;
  /* 0x00cc */ struct _THERMAL_POLICY Policy;
  /* 0x00e4 */ unsigned char PolicyDriver;
  /* 0x00e5 */ char Padding_719[3];
  /* 0x00e8 */ unsigned long PollingRate;
  /* 0x00ec */ long Padding_720;
  /* 0x00f0 */ unsigned __int64 LastTemperatureTime;
  /* 0x00f8 */ unsigned __int64 LastActiveStartTime;
  /* 0x0100 */ unsigned __int64 LastPassiveStartTime;
  /* 0x0108 */ struct _WORK_QUEUE_ITEM WorkItem;
  /* 0x0128 */ struct _KTIMER2 ZoneUpdateTimer;
  /* 0x01b0 */ struct _POP_RW_LOCK Lock;
  /* 0x01c0 */ struct _KEVENT ZoneStopped;
  /* 0x01d8 */ struct _KEVENT TemperatureUpdated;
  /* 0x01f0 */ unsigned long InstanceId;
  /* 0x01f4 */ long Padding_721;
  /* 0x01f8 */ struct _POP_THERMAL_TELEMETRY_TRACKER TelemetryTracker;
  /* 0x0410 */ struct _UNICODE_STRING Description;
} POP_THERMAL_ZONE, *PPOP_THERMAL_ZONE; /* size: 0x0420 */

typedef struct _ETW_QUEUE_ENTRY
{
  /* 0x0000 */ struct _LIST_ENTRY ListEntry;
  /* 0x0010 */ struct _ETWP_NOTIFICATION_HEADER* DataBlock;
  /* 0x0018 */ struct _ETW_REG_ENTRY* RegEntry;
  /* 0x0020 */ struct _ETW_REG_ENTRY* ReplyObject;
  /* 0x0028 */ void* WakeReference;
  /* 0x0030 */ unsigned short RegIndex;
  /* 0x0032 */ unsigned short ReplyIndex;
  /* 0x0034 */ unsigned long Flags;
} ETW_QUEUE_ENTRY, *PETW_QUEUE_ENTRY; /* size: 0x0038 */

struct FEATURE_STATE_CHANGE_SUBSCRIPTION__
{
  /* 0x0000 */ int unused;
}; /* size: 0x0004 */

typedef struct _WNF_DELIVERY_DESCRIPTOR
{
  /* 0x0000 */ unsigned __int64 SubscriptionId;
  /* 0x0008 */ struct _WNF_STATE_NAME StateName;
  /* 0x0010 */ unsigned long ChangeStamp;
  /* 0x0014 */ unsigned long StateDataSize;
  /* 0x0018 */ unsigned long EventMask;
  /* 0x001c */ struct _WNF_TYPE_ID TypeId;
  /* 0x002c */ unsigned long StateDataOffset;
} WNF_DELIVERY_DESCRIPTOR, *PWNF_DELIVERY_DESCRIPTOR; /* size: 0x0030 */

typedef union _WHEA_ERROR_STATUS
{
  union
  {
    /* 0x0000 */ unsigned __int64 ErrorStatus;
    struct /* bitfield */
    {
      /* 0x0000 */ unsigned __int64 Reserved1 : 8; /* bit position: 0 */
      /* 0x0000 */ unsigned __int64 ErrorType : 8; /* bit position: 8 */
      /* 0x0000 */ unsigned __int64 Address : 1; /* bit position: 16 */
      /* 0x0000 */ unsigned __int64 Control : 1; /* bit position: 17 */
      /* 0x0000 */ unsigned __int64 Data : 1; /* bit position: 18 */
      /* 0x0000 */ unsigned __int64 Responder : 1; /* bit position: 19 */
      /* 0x0000 */ unsigned __int64 Requester : 1; /* bit position: 20 */
      /* 0x0000 */ unsigned __int64 FirstError : 1; /* bit position: 21 */
      /* 0x0000 */ unsigned __int64 Overflow : 1; /* bit position: 22 */
      /* 0x0000 */ unsigned __int64 Reserved2 : 41; /* bit position: 23 */
    }; /* bitfield */
  }; /* size: 0x0008 */
} WHEA_ERROR_STATUS, *PWHEA_ERROR_STATUS; /* size: 0x0008 */

typedef struct _RTL_RANGE
{
  /* 0x0000 */ unsigned __int64 Start;
  /* 0x0008 */ unsigned __int64 End;
  /* 0x0010 */ void* UserData;
  /* 0x0018 */ void* Owner;
  /* 0x0020 */ unsigned char Attributes;
  /* 0x0021 */ unsigned char Flags;
  /* 0x0022 */ char __PADDING__[6];
} RTL_RANGE, *PRTL_RANGE; /* size: 0x0028 */

typedef struct _VF_POOL_TRACE
{
  /* 0x0000 */ void* Address;
  /* 0x0008 */ unsigned __int64 Size;
  /* 0x0010 */ struct _ETHREAD* Thread;
  /* 0x0018 */ void* StackTrace[13];
} VF_POOL_TRACE, *PVF_POOL_TRACE; /* size: 0x0080 */

typedef struct _VI_FAULT_TRACE
{
  /* 0x0000 */ struct _ETHREAD* Thread;
  /* 0x0008 */ void* StackTrace[8];
} VI_FAULT_TRACE, *PVI_FAULT_TRACE; /* size: 0x0048 */

typedef union _MI_FLAGS
{
  union
  {
    /* 0x0000 */ long EntireFlags;
    struct /* bitfield */
    {
      /* 0x0000 */ unsigned long VerifierEnabled : 1; /* bit position: 0 */
      /* 0x0000 */ unsigned long KernelVerifierEnabled : 1; /* bit position: 1 */
      /* 0x0000 */ unsigned long LargePageKernel : 1; /* bit position: 2 */
      /* 0x0000 */ unsigned long StopOn4d : 1; /* bit position: 3 */
      /* 0x0000 */ unsigned long InitializationPhase : 2; /* bit position: 4 */
      /* 0x0000 */ unsigned long PageKernelStacks : 1; /* bit position: 6 */
      /* 0x0000 */ unsigned long CheckZeroPages : 1; /* bit position: 7 */
      /* 0x0000 */ unsigned long ProcessorPrewalks : 1; /* bit position: 8 */
      /* 0x0000 */ unsigned long ProcessorPostwalks : 1; /* bit position: 9 */
      /* 0x0000 */ unsigned long CoverageBuild : 1; /* bit position: 10 */
      /* 0x0000 */ unsigned long AccessBitReplacementDisabled : 1; /* bit position: 11 */
      /* 0x0000 */ unsigned long CheckExecute : 1; /* bit position: 12 */
      /* 0x0000 */ unsigned long ProtectedPagesEnabled : 1; /* bit position: 13 */
      /* 0x0000 */ unsigned long SecureRelocations : 1; /* bit position: 14 */
      /* 0x0000 */ unsigned long StrongPageIdentity : 1; /* bit position: 15 */
      /* 0x0000 */ unsigned long StrongCodeGuarantees : 1; /* bit position: 16 */
      /* 0x0000 */ unsigned long HardCodeGuarantees : 1; /* bit position: 17 */
      /* 0x0000 */ unsigned long ExecutePagePrivilegeRequired : 1; /* bit position: 18 */
      /* 0x0000 */ unsigned long SecureKernelCfgEnabled : 1; /* bit position: 19 */
      /* 0x0000 */ unsigned long FullHvci : 1; /* bit position: 20 */
      /* 0x0000 */ unsigned long BootDebuggerActive : 1; /* bit position: 21 */
      /* 0x0000 */ unsigned long ExceptionHandlingReady : 1; /* bit position: 22 */
      /* 0x0000 */ unsigned long ShadowStacksSupported : 1; /* bit position: 23 */
      /* 0x0000 */ unsigned long AccessBitFenceRequired : 1; /* bit position: 24 */
      /* 0x0000 */ unsigned long PfnDatabaseExists : 1; /* bit position: 25 */
      /* 0x0000 */ unsigned long DeferredHotAddsCompleted : 1; /* bit position: 26 */
      /* 0x0000 */ unsigned long SystemPtesReady : 1; /* bit position: 27 */
    }; /* bitfield */
  }; /* size: 0x0004 */
} MI_FLAGS, *PMI_FLAGS; /* size: 0x0004 */

struct SYSTEM_POWER_CAPABILITIES
{
  /* 0x0000 */ unsigned char PowerButtonPresent;
  /* 0x0001 */ unsigned char SleepButtonPresent;
  /* 0x0002 */ unsigned char LidPresent;
  /* 0x0003 */ unsigned char SystemS1;
  /* 0x0004 */ unsigned char SystemS2;
  /* 0x0005 */ unsigned char SystemS3;
  /* 0x0006 */ unsigned char SystemS4;
  /* 0x0007 */ unsigned char SystemS5;
  /* 0x0008 */ unsigned char HiberFilePresent;
  /* 0x0009 */ unsigned char FullWake;
  /* 0x000a */ unsigned char VideoDimPresent;
  /* 0x000b */ unsigned char ApmPresent;
  /* 0x000c */ unsigned char UpsPresent;
  /* 0x000d */ unsigned char ThermalControl;
  /* 0x000e */ unsigned char ProcessorThrottle;
  /* 0x000f */ unsigned char ProcessorMinThrottle;
  /* 0x0010 */ unsigned char ProcessorMaxThrottle;
  /* 0x0011 */ unsigned char FastSystemS4;
  /* 0x0012 */ unsigned char Hiberboot;
  /* 0x0013 */ unsigned char WakeAlarmPresent;
  /* 0x0014 */ unsigned char AoAc;
  /* 0x0015 */ unsigned char DiskSpinDown;
  /* 0x0016 */ unsigned char HiberFileType;
  /* 0x0017 */ unsigned char AoAcConnectivitySupported;
  /* 0x0018 */ unsigned char spare3[6];
  /* 0x001e */ unsigned char SystemBatteriesPresent;
  /* 0x001f */ unsigned char BatteriesAreShortTerm;
  /* 0x0020 */ struct BATTERY_REPORTING_SCALE BatteryScale[3];
  /* 0x0038 */ enum _SYSTEM_POWER_STATE AcOnLineWake;
  /* 0x003c */ enum _SYSTEM_POWER_STATE SoftLidWake;
  /* 0x0040 */ enum _SYSTEM_POWER_STATE RtcWake;
  /* 0x0044 */ enum _SYSTEM_POWER_STATE MinDeviceWakeState;
  /* 0x0048 */ enum _SYSTEM_POWER_STATE DefaultLowLatencyWake;
}; /* size: 0x004c */

typedef struct _KWAIT_CHAIN
{
  /* 0x0000 */ void* Head;
} KWAIT_CHAIN, *PKWAIT_CHAIN; /* size: 0x0008 */

typedef struct _VF_DRIVER_IO_CALLBACKS
{
  /* 0x0000 */ void* DriverInit /* function */;
  /* 0x0008 */ void* DriverStartIo /* function */;
  /* 0x0010 */ void* DriverUnload /* function */;
  /* 0x0018 */ void* AddDevice /* function */;
  /* 0x0020 */ void* MajorFunction[28] /* function */;
} VF_DRIVER_IO_CALLBACKS, *PVF_DRIVER_IO_CALLBACKS; /* size: 0x0100 */

typedef struct _TRIAGE_PNP_DEVICE_COMPLETION_REQUEST
{
  /* 0x0000 */ struct _LIST_ENTRY ListEntry;
  /* 0x0010 */ struct _TRIAGE_DEVICE_NODE* DeviceNode;
} TRIAGE_PNP_DEVICE_COMPLETION_REQUEST, *PTRIAGE_PNP_DEVICE_COMPLETION_REQUEST; /* size: 0x0018 */

typedef struct _BUS_EXTENSION_LIST
{
  /* 0x0000 */ void* Next;
  /* 0x0008 */ struct _PI_BUS_EXTENSION* BusExtension;
} BUS_EXTENSION_LIST, *PBUS_EXTENSION_LIST; /* size: 0x0010 */

typedef struct _PI_BUS_EXTENSION
{
  /* 0x0000 */ unsigned long Flags;
  /* 0x0004 */ unsigned char NumberCSNs;
  /* 0x0005 */ char Padding_722[3];
  /* 0x0008 */ unsigned char* ReadDataPort;
  /* 0x0010 */ unsigned char DataPortMapped;
  /* 0x0011 */ char Padding_723[7];
  /* 0x0018 */ unsigned char* AddressPort;
  /* 0x0020 */ unsigned char AddrPortMapped;
  /* 0x0021 */ char Padding_724[7];
  /* 0x0028 */ unsigned char* CommandPort;
  /* 0x0030 */ unsigned char CmdPortMapped;
  /* 0x0031 */ char Padding_725[3];
  /* 0x0034 */ unsigned long NextSlotNumber;
  /* 0x0038 */ struct _SINGLE_LIST_ENTRY DeviceList;
  /* 0x0040 */ struct _SINGLE_LIST_ENTRY CardList;
  /* 0x0048 */ struct _DEVICE_OBJECT* PhysicalBusDevice;
  /* 0x0050 */ struct _DEVICE_OBJECT* FunctionalBusDevice;
  /* 0x0058 */ struct _DEVICE_OBJECT* AttachedDevice;
  /* 0x0060 */ unsigned long BusNumber;
  /* 0x0064 */ enum _SYSTEM_POWER_STATE SystemPowerState;
  /* 0x0068 */ enum _DEVICE_POWER_STATE DevicePowerState;
  /* 0x006c */ long __PADDING__[1];
} PI_BUS_EXTENSION, *PPI_BUS_EXTENSION; /* size: 0x0070 */

typedef struct _POP_ACTION_TRIGGER
{
  /* 0x0000 */ enum POWER_POLICY_DEVICE_TYPE Type;
  /* 0x0004 */ unsigned long Flags;
  /* 0x0008 */ struct _POP_TRIGGER_WAIT* Wait;
  union
  {
    struct
    {
      /* 0x0010 */ unsigned long PercentLevel;
    } /* size: 0x0004 */ Battery;
    struct
    {
      /* 0x0010 */ unsigned long Type;
    } /* size: 0x0004 */ Button;
  }; /* size: 0x0004 */
  /* 0x0014 */ long __PADDING__[1];
} POP_ACTION_TRIGGER, *PPOP_ACTION_TRIGGER; /* size: 0x0018 */

typedef struct _POP_TRIGGER_WAIT
{
  /* 0x0000 */ struct _KEVENT Event;
  /* 0x0018 */ long Status;
  /* 0x001c */ long Padding_726;
  /* 0x0020 */ struct _LIST_ENTRY Link;
  /* 0x0030 */ struct _POP_ACTION_TRIGGER* Trigger;
} POP_TRIGGER_WAIT, *PPOP_TRIGGER_WAIT; /* size: 0x0038 */

typedef struct _RTL_ATOM_TABLE_ENTRY
{
  /* 0x0000 */ struct _RTL_ATOM_TABLE_ENTRY* HashLink;
  /* 0x0008 */ unsigned short HandleIndex;
  /* 0x000a */ unsigned short Atom;
  /* 0x000c */ long Padding_727;
  /* 0x0010 */ struct _RTL_ATOM_TABLE_REFERENCE Reference;
  /* 0x0028 */ unsigned char NameLength;
  /* 0x0029 */ char Padding_728;
  /* 0x002a */ wchar_t Name[1];
  /* 0x002c */ long __PADDING__[1];
} RTL_ATOM_TABLE_ENTRY, *PRTL_ATOM_TABLE_ENTRY; /* size: 0x0030 */

typedef struct _OBJECT_SYMBOLIC_LINK
{
  /* 0x0000 */ union _LARGE_INTEGER CreationTime;
  union
  {
    /* 0x0008 */ struct _UNICODE_STRING LinkTarget;
    struct
    {
      /* 0x0008 */ void* Callback /* function */;
      /* 0x0010 */ void* CallbackContext;
    }; /* size: 0x0010 */
  }; /* size: 0x0010 */
  /* 0x0018 */ unsigned long DosDeviceDriveIndex;
  /* 0x001c */ unsigned long Flags;
  /* 0x0020 */ unsigned long AccessMask;
  /* 0x0024 */ long __PADDING__[1];
} OBJECT_SYMBOLIC_LINK, *POBJECT_SYMBOLIC_LINK; /* size: 0x0028 */

typedef struct _MM_DRIVER_VERIFIER_DATA
{
  /* 0x0000 */ unsigned long Level;
  /* 0x0004 */ volatile unsigned long RaiseIrqls;
  /* 0x0008 */ volatile unsigned long AcquireSpinLocks;
  /* 0x000c */ volatile unsigned long SynchronizeExecutions;
  /* 0x0010 */ volatile unsigned long AllocationsAttempted;
  /* 0x0014 */ volatile unsigned long AllocationsSucceeded;
  /* 0x0018 */ volatile unsigned long AllocationsSucceededSpecialPool;
  /* 0x001c */ unsigned long AllocationsWithNoTag;
  /* 0x0020 */ unsigned long TrimRequests;
  /* 0x0024 */ unsigned long Trims;
  /* 0x0028 */ unsigned long AllocationsFailed;
  /* 0x002c */ volatile unsigned long AllocationsFailedDeliberately;
  /* 0x0030 */ volatile unsigned long Loads;
  /* 0x0034 */ volatile unsigned long Unloads;
  /* 0x0038 */ unsigned long UnTrackedPool;
  /* 0x003c */ unsigned long UserTrims;
  /* 0x0040 */ volatile unsigned long CurrentPagedPoolAllocations;
  /* 0x0044 */ volatile unsigned long CurrentNonPagedPoolAllocations;
  /* 0x0048 */ unsigned long PeakPagedPoolAllocations;
  /* 0x004c */ unsigned long PeakNonPagedPoolAllocations;
  /* 0x0050 */ volatile unsigned __int64 PagedBytes;
  /* 0x0058 */ volatile unsigned __int64 NonPagedBytes;
  /* 0x0060 */ unsigned __int64 PeakPagedBytes;
  /* 0x0068 */ unsigned __int64 PeakNonPagedBytes;
  /* 0x0070 */ volatile unsigned long BurstAllocationsFailedDeliberately;
  /* 0x0074 */ unsigned long SessionTrims;
  /* 0x0078 */ volatile unsigned long OptionChanges;
  /* 0x007c */ volatile unsigned long VerifyMode;
  /* 0x0080 */ struct _UNICODE_STRING PreviousBucketName;
  /* 0x0090 */ volatile unsigned long ExecutePoolTypes;
  /* 0x0094 */ volatile unsigned long ExecutePageProtections;
  /* 0x0098 */ volatile unsigned long ExecutePageMappings;
  /* 0x009c */ volatile unsigned long ExecuteWriteSections;
  /* 0x00a0 */ volatile unsigned long SectionAlignmentFailures;
  /* 0x00a4 */ volatile unsigned long IATInExecutableSection;
} MM_DRIVER_VERIFIER_DATA, *PMM_DRIVER_VERIFIER_DATA; /* size: 0x00a8 */

typedef struct __WIL__WNF_TYPE_ID
{
  /* 0x0000 */ struct _GUID TypeId;
} _WIL__WNF_TYPE_ID, *P_WIL__WNF_TYPE_ID; /* size: 0x0010 */

typedef struct _TraceLoggingMetadata_t
{
  /* 0x0000 */ unsigned int Signature;
  /* 0x0004 */ unsigned short Size;
  /* 0x0006 */ unsigned char Version;
  /* 0x0007 */ unsigned char Flags;
  /* 0x0008 */ unsigned __int64 Magic;
} TraceLoggingMetadata_t, *PTraceLoggingMetadata_t; /* size: 0x0010 */

typedef struct _IO_WORKITEM
{
  /* 0x0000 */ struct _WORK_QUEUE_ITEM WorkItem;
  /* 0x0020 */ void* Routine /* function */;
  /* 0x0028 */ void* IoObject;
  /* 0x0030 */ void* Context;
  /* 0x0038 */ struct _ETHREAD* WorkOnBehalfThread;
  /* 0x0040 */ unsigned long Type;
  /* 0x0044 */ struct _GUID ActivityId;
  /* 0x0054 */ long __PADDING__[1];
} IO_WORKITEM, *PIO_WORKITEM; /* size: 0x0058 */

typedef union _WHEA_MEMORY_ERROR_SECTION_VALIDBITS
{
  union
  {
    struct /* bitfield */
    {
      /* 0x0000 */ unsigned __int64 ErrorStatus : 1; /* bit position: 0 */
      /* 0x0000 */ unsigned __int64 PhysicalAddress : 1; /* bit position: 1 */
      /* 0x0000 */ unsigned __int64 PhysicalAddressMask : 1; /* bit position: 2 */
      /* 0x0000 */ unsigned __int64 Node : 1; /* bit position: 3 */
      /* 0x0000 */ unsigned __int64 Card : 1; /* bit position: 4 */
      /* 0x0000 */ unsigned __int64 Module : 1; /* bit position: 5 */
      /* 0x0000 */ unsigned __int64 Bank : 1; /* bit position: 6 */
      /* 0x0000 */ unsigned __int64 Device : 1; /* bit position: 7 */
      /* 0x0000 */ unsigned __int64 Row : 1; /* bit position: 8 */
      /* 0x0000 */ unsigned __int64 Column : 1; /* bit position: 9 */
      /* 0x0000 */ unsigned __int64 BitPosition : 1; /* bit position: 10 */
      /* 0x0000 */ unsigned __int64 RequesterId : 1; /* bit position: 11 */
      /* 0x0000 */ unsigned __int64 ResponderId : 1; /* bit position: 12 */
      /* 0x0000 */ unsigned __int64 TargetId : 1; /* bit position: 13 */
      /* 0x0000 */ unsigned __int64 ErrorType : 1; /* bit position: 14 */
      /* 0x0000 */ unsigned __int64 RankNumber : 1; /* bit position: 15 */
      /* 0x0000 */ unsigned __int64 CardHandle : 1; /* bit position: 16 */
      /* 0x0000 */ unsigned __int64 ModuleHandle : 1; /* bit position: 17 */
      /* 0x0000 */ unsigned __int64 ExtendedRow : 1; /* bit position: 18 */
      /* 0x0000 */ unsigned __int64 BankGroup : 1; /* bit position: 19 */
      /* 0x0000 */ unsigned __int64 BankAddress : 1; /* bit position: 20 */
      /* 0x0000 */ unsigned __int64 ChipIdentification : 1; /* bit position: 21 */
      /* 0x0000 */ unsigned __int64 Reserved : 42; /* bit position: 22 */
    }; /* bitfield */
    /* 0x0000 */ unsigned __int64 ValidBits;
  }; /* size: 0x0008 */
} WHEA_MEMORY_ERROR_SECTION_VALIDBITS, *PWHEA_MEMORY_ERROR_SECTION_VALIDBITS; /* size: 0x0008 */

typedef struct _WHEA_MEMORY_ERROR_SECTION
{
  /* 0x0000 */ union _WHEA_MEMORY_ERROR_SECTION_VALIDBITS ValidBits;
  /* 0x0008 */ union _WHEA_ERROR_STATUS ErrorStatus;
  /* 0x0010 */ unsigned __int64 PhysicalAddress;
  /* 0x0018 */ unsigned __int64 PhysicalAddressMask;
  /* 0x0020 */ unsigned short Node;
  /* 0x0022 */ unsigned short Card;
  /* 0x0024 */ unsigned short Module;
  /* 0x0026 */ unsigned short Bank;
  /* 0x0028 */ unsigned short Device;
  /* 0x002a */ unsigned short Row;
  /* 0x002c */ unsigned short Column;
  /* 0x002e */ unsigned short BitPosition;
  /* 0x0030 */ unsigned __int64 RequesterId;
  /* 0x0038 */ unsigned __int64 ResponderId;
  /* 0x0040 */ unsigned __int64 TargetId;
  /* 0x0048 */ unsigned char ErrorType;
  /* 0x0049 */ unsigned char Extended;
  /* 0x004a */ unsigned short RankNumber;
  /* 0x004c */ unsigned short CardHandle;
  /* 0x004e */ unsigned short ModuleHandle;
} WHEA_MEMORY_ERROR_SECTION, *PWHEA_MEMORY_ERROR_SECTION; /* size: 0x0050 */

typedef struct _EX_POOL_HEAP_MANAGER_STATE
{
  /* 0x0000 */ struct _RTLP_HP_HEAP_MANAGER HeapManager;
  /* 0x38d0 */ unsigned long NumberOfPools;
  /* 0x38d4 */ long Padding_729[11];
  /* 0x3900 */ struct _EX_HEAP_POOL_NODE PoolNode[64];
  /* 0x86900 */ struct _SEGMENT_HEAP* SpecialHeaps[4];
  /* 0x86920 */ long __PADDING__[8];
} EX_POOL_HEAP_MANAGER_STATE, *PEX_POOL_HEAP_MANAGER_STATE; /* size: 0x86940 */

typedef struct _IOP_IRP_EXTENSION_STATUS
{
  /* 0x0000 */ unsigned long Flags;
  /* 0x0004 */ unsigned long ActivityId;
  /* 0x0008 */ unsigned long IoTracking;
} IOP_IRP_EXTENSION_STATUS, *PIOP_IRP_EXTENSION_STATUS; /* size: 0x000c */

typedef struct _EX_PARTITION
{
  /* 0x0000 */ struct _EPARTITION* PartitionObject;
  /* 0x0008 */ struct _EX_WORK_QUEUE** volatile* WorkQueues;
  /* 0x0010 */ struct _EX_WORK_QUEUE_MANAGER** WorkQueueManagers;
  /* 0x0018 */ volatile long QueueAllocationMask;
  /* 0x001c */ long __PADDING__[1];
} EX_PARTITION, *PEX_PARTITION; /* size: 0x0020 */

typedef struct _VF_TRACKER
{
  /* 0x0000 */ unsigned long TrackerFlags;
  /* 0x0004 */ unsigned long TrackerSize;
  /* 0x0008 */ unsigned long TrackerIndex;
  /* 0x000c */ unsigned long TraceDepth;
} VF_TRACKER, *PVF_TRACKER; /* size: 0x0010 */

struct _VERIFIER_SHARED_EXPORT_THUNK;

typedef struct _VF_TARGET_DRIVER
{
  /* 0x0000 */ struct _VF_AVL_TREE_NODE_EX TreeNode;
  union
  {
    union
    {
      /* 0x0018 */ struct _VF_TARGET_ALL_SHARED_EXPORT_THUNKS AllSharedExportThunks;
      struct
      {
        struct /* bitfield */
        {
          /* 0x0018 */ unsigned long SnapSharedExportsFailed : 1; /* bit position: 0 */
          /* 0x0018 */ unsigned long Spare : 31; /* bit position: 1 */
        }; /* bitfield */
      } /* size: 0x0004 */ Flags;
    }; /* size: 0x0020 */
  } /* size: 0x0020 */ u1;
  /* 0x0038 */ struct _VF_TARGET_VERIFIED_DRIVER_DATA* VerifiedData;
} VF_TARGET_DRIVER, *PVF_TARGET_DRIVER; /* size: 0x0040 */

typedef struct _VI_VERIFIER_POOL_HEADER
{
  /* 0x0000 */ struct _VI_POOL_ENTRY* VerifierPoolEntry;
} VI_VERIFIER_POOL_HEADER, *PVI_VERIFIER_POOL_HEADER; /* size: 0x0008 */

typedef struct _MI_REVERSE_VIEW_MAP
{
  /* 0x0000 */ struct _LIST_ENTRY ViewLinks;
  union
  {
    /* 0x0010 */ void* SystemCacheVa;
    /* 0x0010 */ void* SessionViewVa;
    /* 0x0010 */ struct _EPROCESS* VadsProcess;
    /* 0x0010 */ unsigned __int64 Type : 2; /* bit position: 0 */
  }; /* size: 0x0008 */
  union
  {
    /* 0x0018 */ struct _SUBSECTION* Subsection;
    /* 0x0018 */ unsigned __int64 SubsectionType : 1; /* bit position: 0 */
  }; /* size: 0x0008 */
  union
  {
    /* 0x0020 */ struct _MI_SYSTEM_CACHE_VIEW_ATTRIBUTES SystemCacheAttributes;
    /* 0x0020 */ unsigned __int64 SectionOffset;
  }; /* size: 0x0008 */
} MI_REVERSE_VIEW_MAP, *PMI_REVERSE_VIEW_MAP; /* size: 0x0028 */

typedef union _LFH_RANDOM_DATA
{
  union
  {
    /* 0x0000 */ unsigned char Bytes[256];
    /* 0x0000 */ unsigned short Words[128];
    /* 0x0000 */ unsigned __int64 Quadwords[32];
  }; /* size: 0x0100 */
} LFH_RANDOM_DATA, *PLFH_RANDOM_DATA; /* size: 0x0100 */

typedef struct _ETW_REPLY_QUEUE
{
  /* 0x0000 */ struct _KQUEUE Queue;
  /* 0x0040 */ long EventsLost;
  /* 0x0044 */ long __PADDING__[1];
} ETW_REPLY_QUEUE, *PETW_REPLY_QUEUE; /* size: 0x0048 */

typedef struct _ETWP_NOTIFICATION_HEADER
{
  /* 0x0000 */ enum _ETW_NOTIFICATION_TYPE NotificationType;
  /* 0x0004 */ unsigned long NotificationSize;
  /* 0x0008 */ long RefCount;
  /* 0x000c */ unsigned char ReplyRequested;
  /* 0x000d */ char Padding_730[3];
  union
  {
    /* 0x0010 */ unsigned long ReplyIndex;
    /* 0x0010 */ unsigned long Timeout;
  }; /* size: 0x0004 */
  union
  {
    /* 0x0014 */ unsigned long ReplyCount;
    /* 0x0014 */ unsigned long NotifyeeCount;
  }; /* size: 0x0004 */
  union
  {
    /* 0x0018 */ unsigned __int64 ReplyHandle;
    /* 0x0018 */ void* ReplyObject;
    /* 0x0018 */ unsigned long RegIndex;
  }; /* size: 0x0008 */
  /* 0x0020 */ unsigned long TargetPID;
  /* 0x0024 */ unsigned long SourcePID;
  /* 0x0028 */ struct _GUID DestinationGuid;
  /* 0x0038 */ struct _GUID SourceGuid;
} ETWP_NOTIFICATION_HEADER, *PETWP_NOTIFICATION_HEADER; /* size: 0x0048 */

typedef struct _FAST_OWNER_ENTRY
{
  /* 0x0000 */ void* Reserved[9];
} FAST_OWNER_ENTRY, *PFAST_OWNER_ENTRY; /* size: 0x0048 */

typedef struct _HEAP_GLOBAL_APPCOMPAT_FLAGS
{
  struct /* bitfield */
  {
    /* 0x0000 */ unsigned long SafeInputValidation : 1; /* bit position: 0 */
    /* 0x0000 */ unsigned long Padding : 1; /* bit position: 1 */
    /* 0x0000 */ unsigned long CommitLFHSubsegments : 1; /* bit position: 2 */
    /* 0x0000 */ unsigned long AllocateHeapFromEnv : 1; /* bit position: 3 */
  }; /* bitfield */
} HEAP_GLOBAL_APPCOMPAT_FLAGS, *PHEAP_GLOBAL_APPCOMPAT_FLAGS; /* size: 0x0004 */

typedef struct _DIAGNOSTIC_CONTEXT
{
  /* 0x0000 */ enum _REQUESTER_TYPE CallerType;
  /* 0x0004 */ long Padding_731;
  union
  {
    struct
    {
      /* 0x0008 */ struct _EPROCESS* Process;
      /* 0x0010 */ unsigned long ServiceTag;
    }; /* size: 0x000c */
    /* 0x0008 */ struct _DEVICE_OBJECT* DeviceObject;
  }; /* size: 0x000c */
  /* 0x0014 */ long Padding_732;
  /* 0x0018 */ unsigned __int64 ReasonSize;
} DIAGNOSTIC_CONTEXT, *PDIAGNOSTIC_CONTEXT; /* size: 0x0020 */

typedef struct _VI_TRACK_IRQL
{
  /* 0x0000 */ void* Thread;
  /* 0x0008 */ unsigned char OldIrql;
  /* 0x0009 */ unsigned char NewIrql;
  /* 0x000a */ unsigned short Processor;
  /* 0x000c */ unsigned long TickCount;
  /* 0x0010 */ void* StackTrace[5];
} VI_TRACK_IRQL, *PVI_TRACK_IRQL; /* size: 0x0038 */

typedef struct _IOV_IRP_TRACE
{
  /* 0x0000 */ struct _IRP* Irp;
  /* 0x0008 */ struct _KTHREAD* Thread;
  union
  {
    struct
    {
      /* 0x0010 */ short KernelApcDisable;
      /* 0x0012 */ short SpecialApcDisable;
    }; /* size: 0x0004 */
    /* 0x0010 */ unsigned long CombinedApcDisable;
  }; /* size: 0x0004 */
  /* 0x0014 */ unsigned char Irql;
  /* 0x0015 */ char Padding_733[3];
  /* 0x0018 */ void* StackTrace[13];
} IOV_IRP_TRACE, *PIOV_IRP_TRACE; /* size: 0x0080 */

typedef struct _PNP_DEVICE_COMPLETION_REQUEST
{
  /* 0x0000 */ struct _LIST_ENTRY ListEntry;
  /* 0x0010 */ struct _DEVICE_NODE* DeviceNode;
  /* 0x0018 */ void* Context;
  /* 0x0020 */ enum _PNP_DEVNODE_STATE CompletionState;
  /* 0x0024 */ unsigned long IrpPended;
  /* 0x0028 */ long Status;
  /* 0x002c */ long Padding_734;
  /* 0x0030 */ void* Information;
  /* 0x0038 */ long ReferenceCount;
  /* 0x003c */ long Padding_735;
  /* 0x0040 */ struct _PNP_WATCHDOG* Watchdog;
} PNP_DEVICE_COMPLETION_REQUEST, *PPNP_DEVICE_COMPLETION_REQUEST; /* size: 0x0048 */

typedef struct _IOV_FORCED_PENDING_TRACE
{
  /* 0x0000 */ struct _IRP* Irp;
  /* 0x0008 */ struct _ETHREAD* Thread;
  /* 0x0010 */ void* StackTrace[62];
} IOV_FORCED_PENDING_TRACE, *PIOV_FORCED_PENDING_TRACE; /* size: 0x0200 */

union RTLP_HP_LFH_PERF_FLAGS
{
  union
  {
    struct /* bitfield */
    {
      /* 0x0000 */ unsigned long HotspotDetection : 1; /* bit position: 0 */
      /* 0x0000 */ unsigned long HotspotFullCommit : 1; /* bit position: 1 */
      /* 0x0000 */ unsigned long ActiveSubsegment : 1; /* bit position: 2 */
      /* 0x0000 */ unsigned long SmallerSubsegment : 1; /* bit position: 3 */
      /* 0x0000 */ unsigned long SingleAffinitySlot : 1; /* bit position: 4 */
      /* 0x0000 */ unsigned long ApplyLfhDecommitPolicy : 1; /* bit position: 5 */
      /* 0x0000 */ unsigned long EnableGarbageCollection : 1; /* bit position: 6 */
      /* 0x0000 */ unsigned long LargePagePreCommit : 1; /* bit position: 7 */
      /* 0x0000 */ unsigned long OpportunisticLargePreCommit : 1; /* bit position: 8 */
      /* 0x0000 */ unsigned long LfhForcedAffinity : 1; /* bit position: 9 */
      /* 0x0000 */ unsigned long LfhCachelinePadding : 1; /* bit position: 10 */
    }; /* bitfield */
    /* 0x0000 */ unsigned long AllFlags;
  }; /* size: 0x0004 */
}; /* size: 0x0004 */

typedef struct _DIAGNOSTIC_BUFFER
{
  /* 0x0000 */ unsigned __int64 Size;
  /* 0x0008 */ enum _REQUESTER_TYPE CallerType;
  /* 0x000c */ long Padding_736;
  union
  {
    struct
    {
      /* 0x0010 */ unsigned __int64 ProcessImageNameOffset;
      /* 0x0018 */ unsigned long ProcessId;
      /* 0x001c */ unsigned long ServiceTag;
    }; /* size: 0x0010 */
    struct
    {
      /* 0x0010 */ unsigned __int64 DeviceDescriptionOffset;
      /* 0x0018 */ unsigned __int64 DevicePathOffset;
    }; /* size: 0x0010 */
  }; /* size: 0x0010 */
  /* 0x0020 */ unsigned __int64 ReasonOffset;
} DIAGNOSTIC_BUFFER, *PDIAGNOSTIC_BUFFER; /* size: 0x0028 */

typedef struct _POP_POWER_ACTION
{
  /* 0x0000 */ unsigned char Updates;
  /* 0x0001 */ unsigned char State;
  /* 0x0002 */ unsigned char Shutdown;
  /* 0x0003 */ char Padding_737;
  /* 0x0004 */ enum POWER_ACTION Action;
  /* 0x0008 */ enum _SYSTEM_POWER_STATE LightestState;
  /* 0x000c */ unsigned long Flags;
  /* 0x0010 */ long Status;
  /* 0x0014 */ enum POWER_POLICY_DEVICE_TYPE DeviceType;
  /* 0x0018 */ unsigned long DeviceTypeFlags;
  /* 0x001c */ unsigned char IrpMinor;
  /* 0x001d */ unsigned char Waking;
  /* 0x001e */ char Padding_738[2];
  /* 0x0020 */ enum _SYSTEM_POWER_STATE SystemState;
  /* 0x0024 */ enum _SYSTEM_POWER_STATE NextSystemState;
  /* 0x0028 */ enum _SYSTEM_POWER_STATE EffectiveSystemState;
  /* 0x002c */ enum _SYSTEM_POWER_STATE CurrentSystemState;
  /* 0x0030 */ struct _POP_SHUTDOWN_BUG_CHECK* ShutdownBugCode;
  /* 0x0038 */ struct _POP_DEVICE_SYS_STATE* DevState;
  /* 0x0040 */ struct _POP_HIBER_CONTEXT* HiberContext;
  /* 0x0048 */ unsigned __int64 WakeTime;
  /* 0x0050 */ unsigned __int64 SleepTime;
  /* 0x0058 */ unsigned __int64 WakeFirstUnattendedTime;
  /* 0x0060 */ enum SYSTEM_POWER_CONDITION WakeAlarmSignaled;
  /* 0x0064 */ long Padding_739;
  /* 0x0068 */ struct
  {
    /* 0x0068 */ unsigned __int64 RequestedTime;
    /* 0x0070 */ unsigned __int64 ProgrammedTime;
    /* 0x0078 */ struct _DIAGNOSTIC_BUFFER* TimerInfo;
  } /* size: 0x0018 */ WakeAlarm[3];
  /* 0x00b0 */ unsigned char WakeAlarmPaused;
  /* 0x00b1 */ char Padding_740[7];
  /* 0x00b8 */ unsigned __int64 WakeAlarmLastTime;
  /* 0x00c0 */ unsigned __int64 DozeDeferralStartTime;
  /* 0x00c8 */ struct SYSTEM_POWER_CAPABILITIES FilteredCapabilities;
  /* 0x0114 */ long Padding_741;
  /* 0x0118 */ unsigned __int64 WatchdogLock;
  /* 0x0120 */ struct _KDPC WatchdogDpc;
  /* 0x0160 */ struct _KTIMER WatchdogTimer;
  /* 0x01a0 */ unsigned char WatchdogInitialized;
  /* 0x01a1 */ char Padding_742[3];
  /* 0x01a4 */ enum _POP_POWER_ACTION_WATCHDOG_STATE WatchdogState;
  /* 0x01a8 */ unsigned __int64 WatchdogStartTime;
  /* 0x01b0 */ struct _KTHREAD* ActionWorkerThread;
  /* 0x01b8 */ struct _KTHREAD* PromoteActionWorkerThread;
  /* 0x01c0 */ struct _KTHREAD* UnlockAfterSleepWorkerThread;
} POP_POWER_ACTION, *PPOP_POWER_ACTION; /* size: 0x01c8 */

typedef struct _POP_SHUTDOWN_BUG_CHECK
{
  /* 0x0000 */ struct _ETHREAD* InitiatingThread;
  /* 0x0008 */ struct _EPROCESS* InitiatingProcess;
  /* 0x0010 */ void* ThreadId;
  /* 0x0018 */ void* ProcessId;
  /* 0x0020 */ unsigned long Code;
  /* 0x0024 */ long Padding_743;
  /* 0x0028 */ unsigned __int64 Parameter1;
  /* 0x0030 */ unsigned __int64 Parameter2;
  /* 0x0038 */ unsigned __int64 Parameter3;
  /* 0x0040 */ unsigned __int64 Parameter4;
} POP_SHUTDOWN_BUG_CHECK, *PPOP_SHUTDOWN_BUG_CHECK; /* size: 0x0048 */

typedef struct _POP_IO_INFO
{
  /* 0x0000 */ struct _MDL* DumpMdl;
  /* 0x0008 */ enum _POP_IO_STATUS IoStatus;
  /* 0x000c */ long Padding_744;
  /* 0x0010 */ unsigned __int64 IoStartCount;
  /* 0x0018 */ unsigned __int64 IoBytesCompleted;
  /* 0x0020 */ unsigned __int64 IoBytesInProgress;
  /* 0x0028 */ unsigned __int64 RequestSize;
  /* 0x0030 */ union _LARGE_INTEGER IoLocation;
  /* 0x0038 */ unsigned __int64 FileOffset;
  /* 0x0040 */ void* Buffer;
  /* 0x0048 */ unsigned char AsyncCapable;
  /* 0x0049 */ char Padding_745[7];
  /* 0x0050 */ unsigned __int64 BytesToRead;
  /* 0x0058 */ unsigned long Pages;
  /* 0x005c */ long Padding_746;
  /* 0x0060 */ unsigned __int64 HighestChecksumIndex;
  /* 0x0068 */ unsigned short PreviousChecksum;
  /* 0x006a */ char __PADDING__[6];
} POP_IO_INFO, *PPOP_IO_INFO; /* size: 0x0070 */

typedef struct _POP_HIBER_CONTEXT
{
  /* 0x0000 */ unsigned char Reset;
  /* 0x0001 */ unsigned char HiberFlags;
  /* 0x0002 */ unsigned char WroteHiberFile;
  /* 0x0003 */ unsigned char KernelPhaseVerificationActive;
  /* 0x0004 */ volatile unsigned char InitializationFinished;
  /* 0x0005 */ char Padding_747[3];
  /* 0x0008 */ volatile long NextTableLockHeld;
  /* 0x000c */ volatile long BootPhaseFinishedBarrier;
  /* 0x0010 */ volatile long KernelResumeFinishedBarrier;
  /* 0x0014 */ volatile long HvCaptureReadyBarrier;
  /* 0x0018 */ volatile long HvCaptureCompletedBarrier;
  /* 0x001c */ unsigned char MapFrozen;
  /* 0x001d */ char Padding_748[3];
  union
  {
    /* 0x0020 */ struct _RTL_BITMAP DiscardMap;
    /* 0x0020 */ struct _RTL_BITMAP KernelPhaseMap;
  }; /* size: 0x0010 */
  /* 0x0030 */ struct _RTL_BITMAP BootPhaseMap;
  /* 0x0040 */ struct _LIST_ENTRY ClonedRanges;
  /* 0x0050 */ unsigned long ClonedRangeCount;
  /* 0x0054 */ long Padding_749;
  /* 0x0058 */ unsigned __int64 ClonedPageCount;
  /* 0x0060 */ struct _RTL_BITMAP* CurrentMap;
  /* 0x0068 */ struct _LIST_ENTRY* NextCloneRange;
  /* 0x0070 */ unsigned __int64 NextPreserve;
  /* 0x0078 */ struct _MDL* LoaderMdl;
  /* 0x0080 */ struct _MDL* AllocatedMdl;
  /* 0x0088 */ unsigned __int64 PagesOut;
  /* 0x0090 */ void* IoPages;
  /* 0x0098 */ unsigned long IoPagesCount;
  /* 0x009c */ long Padding_750;
  /* 0x00a0 */ void* CurrentMcb;
  /* 0x00a8 */ struct _DUMP_STACK_CONTEXT* DumpStack;
  /* 0x00b0 */ struct _KPROCESSOR_STATE* WakeState;
  /* 0x00b8 */ unsigned long IoProgress;
  /* 0x00bc */ long Status;
  /* 0x00c0 */ unsigned long GraphicsProc;
  /* 0x00c4 */ long Padding_751;
  /* 0x00c8 */ struct PO_MEMORY_IMAGE* MemoryImage;
  /* 0x00d0 */ unsigned long* PerformanceStats;
  /* 0x00d8 */ struct _MDL* BootLoaderLogMdl;
  /* 0x00e0 */ struct _MDL* FirmwareRuntimeInformationMdl;
  /* 0x00e8 */ void* FirmwareRuntimeInformationVa;
  /* 0x00f0 */ void* ResumeContext;
  /* 0x00f8 */ unsigned long ResumeContextPages;
  /* 0x00fc */ unsigned long SecurePages;
  /* 0x0100 */ unsigned long ProcessorCount;
  /* 0x0104 */ long Padding_752;
  /* 0x0108 */ struct _POP_PER_PROCESSOR_CONTEXT* ProcessorContext;
  /* 0x0110 */ char* ProdConsBuffer;
  /* 0x0118 */ unsigned long ProdConsSize;
  /* 0x011c */ unsigned long MaxDataPages;
  /* 0x0120 */ void* ExtraBuffer;
  /* 0x0128 */ unsigned __int64 ExtraBufferSize;
  /* 0x0130 */ void* ExtraMapVa;
  /* 0x0138 */ unsigned __int64 BitlockerKeyPFN;
  /* 0x0140 */ struct _POP_IO_INFO IoInfo;
  /* 0x01b0 */ wchar_t* IoChecksums;
  /* 0x01b8 */ unsigned __int64 IoChecksumsSize;
  /* 0x01c0 */ unsigned long HardwareConfigurationSignature;
  /* 0x01c4 */ unsigned char IumEnabled;
  /* 0x01c5 */ unsigned char SecureBoot;
  /* 0x01c6 */ char __PADDING__[2];
} POP_HIBER_CONTEXT, *PPOP_HIBER_CONTEXT; /* size: 0x01c8 */

typedef struct _DUMP_INITIALIZATION_CONTEXT
{
  /* 0x0000 */ unsigned long Length;
  /* 0x0004 */ unsigned long Reserved;
  /* 0x0008 */ void* MemoryBlock;
  /* 0x0010 */ void* CommonBuffer[2];
  /* 0x0020 */ union _LARGE_INTEGER PhysicalAddress[2];
  /* 0x0030 */ void* StallRoutine /* function */;
  /* 0x0038 */ void* OpenRoutine /* function */;
  /* 0x0040 */ void* WriteRoutine /* function */;
  /* 0x0048 */ void* FinishRoutine /* function */;
  /* 0x0050 */ struct _ADAPTER_OBJECT* AdapterObject;
  /* 0x0058 */ void* MappedRegisterBase;
  /* 0x0060 */ void* PortConfiguration;
  /* 0x0068 */ unsigned char CrashDump;
  /* 0x0069 */ unsigned char MarkMemoryOnly;
  /* 0x006a */ unsigned char HiberResume;
  /* 0x006b */ unsigned char Reserved1;
  /* 0x006c */ unsigned long MaximumTransferSize;
  /* 0x0070 */ unsigned long CommonBufferSize;
  /* 0x0074 */ long Padding_753;
  /* 0x0078 */ void* TargetAddress;
  /* 0x0080 */ void* WritePendingRoutine /* function */;
  /* 0x0088 */ unsigned long PartitionStyle;
  union
  {
    union
    {
      struct
      {
        /* 0x008c */ unsigned long Signature;
        /* 0x0090 */ unsigned long CheckSum;
      } /* size: 0x0008 */ Mbr;
      struct
      {
        /* 0x008c */ struct _GUID DiskId;
      } /* size: 0x0010 */ Gpt;
    }; /* size: 0x0010 */
  } /* size: 0x0010 */ DiskInfo;
  /* 0x009c */ long Padding_754;
  /* 0x00a0 */ void* ReadRoutine /* function */;
  /* 0x00a8 */ void* GetDriveTelemetryRoutine /* function */;
  /* 0x00b0 */ unsigned long LogSectionTruncateSize;
  /* 0x00b4 */ unsigned long Parameters[16];
  /* 0x00f4 */ long Padding_755;
  /* 0x00f8 */ void* GetTransferSizesRoutine /* function */;
  /* 0x0100 */ void* DumpNotifyRoutine /* function */;
} DUMP_INITIALIZATION_CONTEXT, *PDUMP_INITIALIZATION_CONTEXT; /* size: 0x0108 */

typedef struct _DUMP_STACK_CONTEXT
{
  /* 0x0000 */ struct _DUMP_INITIALIZATION_CONTEXT Init;
  /* 0x0108 */ union _LARGE_INTEGER PartitionOffset;
  union
  {
    /* 0x0110 */ void* DumpPointers;
    /* 0x0110 */ void* StorageInfo;
  }; /* size: 0x0008 */
  /* 0x0118 */ unsigned char UseStorageInfo;
  /* 0x0119 */ char Padding_756[3];
  /* 0x011c */ unsigned long PointersLength;
  /* 0x0120 */ wchar_t* ModulePrefix;
  /* 0x0128 */ struct _LIST_ENTRY DriverList;
  /* 0x0138 */ struct _STRING InitMsg;
  /* 0x0148 */ struct _STRING ProgMsg;
  /* 0x0158 */ struct _STRING DoneMsg;
  /* 0x0168 */ void* FileObject;
  /* 0x0170 */ enum _DEVICE_USAGE_NOTIFICATION_TYPE UsageType;
  /* 0x0174 */ long __PADDING__[1];
} DUMP_STACK_CONTEXT, *PDUMP_STACK_CONTEXT; /* size: 0x0178 */

struct PO_MEMORY_IMAGE
{
  /* 0x0000 */ unsigned long Signature;
  /* 0x0004 */ unsigned long ImageType;
  /* 0x0008 */ unsigned long CheckSum;
  /* 0x000c */ unsigned long LengthSelf;
  /* 0x0010 */ unsigned __int64 PageSelf;
  /* 0x0018 */ unsigned long PageSize;
  /* 0x001c */ long Padding_757;
  /* 0x0020 */ union _LARGE_INTEGER SystemTime;
  /* 0x0028 */ unsigned __int64 InterruptTime;
  /* 0x0030 */ unsigned __int64 FeatureFlags;
  /* 0x0038 */ unsigned char HiberFlags;
  /* 0x0039 */ unsigned char HiberSimulateFlags;
  /* 0x003a */ unsigned char spare[2];
  /* 0x003c */ unsigned long NoHiberPtes;
  /* 0x0040 */ unsigned __int64 HiberVa;
  /* 0x0048 */ unsigned long NoFreePages;
  /* 0x004c */ unsigned long FreeMapCheck;
  /* 0x0050 */ unsigned long WakeCheck;
  /* 0x0054 */ long Padding_758;
  /* 0x0058 */ unsigned __int64 NumPagesForLoader;
  /* 0x0060 */ unsigned __int64 FirstSecureRestorePage;
  /* 0x0068 */ unsigned __int64 FirstBootRestorePage;
  /* 0x0070 */ unsigned __int64 FirstKernelRestorePage;
  /* 0x0078 */ unsigned __int64 FirstChecksumRestorePage;
  /* 0x0080 */ unsigned __int64 NoChecksumEntries;
  /* 0x0088 */ struct _PO_HIBER_PERF PerfInfo;
  /* 0x0280 */ unsigned long FirmwareRuntimeInformationPages;
  /* 0x0284 */ long Padding_759;
  /* 0x0288 */ unsigned __int64 FirmwareRuntimeInformation[1];
  /* 0x0290 */ unsigned long SpareUlong;
  /* 0x0294 */ unsigned long NoBootLoaderLogPages;
  /* 0x0298 */ unsigned __int64 BootLoaderLogPages[24];
  /* 0x0358 */ unsigned long NotUsed;
  /* 0x035c */ unsigned long ResumeContextCheck;
  /* 0x0360 */ unsigned long ResumeContextPages;
  /* 0x0364 */ unsigned char Hiberboot;
  /* 0x0365 */ unsigned char SecureLaunched;
  /* 0x0366 */ unsigned char SecureBoot;
  /* 0x0367 */ char Padding_760;
  /* 0x0368 */ unsigned __int64 HvPageTableRoot;
  /* 0x0370 */ unsigned __int64 HvEntryPoint;
  /* 0x0378 */ unsigned __int64 HvReservedTransitionAddress;
  /* 0x0380 */ unsigned __int64 HvReservedTransitionAddressSize;
  /* 0x0388 */ unsigned __int64 BootFlags;
  /* 0x0390 */ unsigned __int64 RestoreProcessorStateRoutine;
  /* 0x0398 */ unsigned __int64 HighestPhysicalPage;
  /* 0x03a0 */ unsigned __int64 BitlockerKeyPfns[4];
  /* 0x03c0 */ unsigned long HardwareSignature;
  /* 0x03c4 */ long Padding_761;
  /* 0x03c8 */ union _LARGE_INTEGER SMBiosTablePhysicalAddress;
  /* 0x03d0 */ unsigned long SMBiosTableLength;
  /* 0x03d4 */ unsigned char SMBiosMajorVersion;
  /* 0x03d5 */ unsigned char SMBiosMinorVersion;
  /* 0x03d6 */ unsigned char HiberResumeXhciHandoffSkip;
  /* 0x03d7 */ unsigned char InitializeUSBCore;
  /* 0x03d8 */ unsigned char ValidUSBCoreId;
  /* 0x03d9 */ unsigned char USBCoreId;
  /* 0x03da */ unsigned char SkipMemoryMapValidation;
  /* 0x03db */ char __PADDING__[5];
}; /* size: 0x03e0 */

typedef struct _POP_PER_PROCESSOR_CONTEXT
{
  /* 0x0000 */ unsigned char* UncompressedData;
  /* 0x0008 */ void* MappingVa;
  /* 0x0010 */ void* XpressEncodeWorkspace;
  /* 0x0018 */ unsigned char* CompressedDataBuffer;
  /* 0x0020 */ unsigned __int64 CopyTicks;
  /* 0x0028 */ unsigned __int64 CompressTicks;
  /* 0x0030 */ unsigned __int64 BytesCopied;
  /* 0x0038 */ unsigned __int64 PagesProcessed;
  /* 0x0040 */ unsigned __int64 DecompressTicks;
  /* 0x0048 */ unsigned __int64 ResumeCopyTicks;
  /* 0x0050 */ unsigned __int64 SharedBufferTicks;
  /* 0x0058 */ unsigned __int64 DecompressTicksByMethod[2];
  /* 0x0068 */ unsigned __int64 DecompressSizeByMethod[2];
  /* 0x0078 */ unsigned long CompressCount;
  /* 0x007c */ unsigned long HuffCompressCount;
} POP_PER_PROCESSOR_CONTEXT, *PPOP_PER_PROCESSOR_CONTEXT; /* size: 0x0080 */

typedef struct _FAST_ERESOURCE_INTERNAL
{
  /* 0x0000 */ struct _LIST_ENTRY SystemResourcesList;
  /* 0x0010 */ void* ReservedPointer;
  /* 0x0018 */ short ActiveCount;
  /* 0x001a */ unsigned short Flag;
  /* 0x001c */ long Padding_762;
  /* 0x0020 */ struct _KWAIT_CHAIN SharedWaiters;
  /* 0x0028 */ struct _KWAIT_CHAIN ExclusiveWaiters;
  /* 0x0030 */ struct _LIST_ENTRY OwnerEntryListHead;
  /* 0x0040 */ unsigned long ActiveEntries;
  /* 0x0044 */ unsigned long ContentionCount;
  /* 0x0048 */ unsigned long NumberOfSharedWaiters;
  /* 0x004c */ unsigned long NumberOfExclusiveWaiters;
  /* 0x0050 */ void* ReservedWin64OnlyPointer;
  union
  {
    /* 0x0058 */ void* Address;
    /* 0x0058 */ unsigned __int64 CreatorBackTraceIndex;
  }; /* size: 0x0008 */
  /* 0x0060 */ unsigned __int64 SpinLock;
} FAST_ERESOURCE_INTERNAL, *PFAST_ERESOURCE_INTERNAL; /* size: 0x0068 */

typedef struct _WAITING_IRP
{
  /* 0x0000 */ struct _LIST_ENTRY Links;
  /* 0x0010 */ struct _IRP* Irp;
  /* 0x0018 */ void* CompletionRoutine /* function */;
  /* 0x0020 */ void* Context;
  /* 0x0028 */ struct _KEVENT* Event;
  /* 0x0030 */ unsigned long Information;
  /* 0x0034 */ unsigned char BreakAllRH;
  /* 0x0035 */ unsigned char OplockBreakNotify;
  /* 0x0036 */ char Padding_763[2];
  /* 0x0038 */ struct _FILE_OBJECT* FileObject;
} WAITING_IRP, *PWAITING_IRP; /* size: 0x0040 */

typedef struct _UNEXPECTED_INTERRUPT
{
  /* 0x0000 */ unsigned char PushImm;
  /* 0x0001 */ unsigned char Vector;
  /* 0x0002 */ unsigned char PushRbp;
  /* 0x0003 */ unsigned char JmpOp;
  /* 0x0004 */ long JmpOffset;
} UNEXPECTED_INTERRUPT, *PUNEXPECTED_INTERRUPT; /* size: 0x0008 */

typedef struct _PEB64
{
  /* 0x0000 */ unsigned char InheritedAddressSpace;
  /* 0x0001 */ unsigned char ReadImageFileExecOptions;
  /* 0x0002 */ unsigned char BeingDebugged;
  union
  {
    /* 0x0003 */ unsigned char BitField;
    struct /* bitfield */
    {
      /* 0x0003 */ unsigned char ImageUsesLargePages : 1; /* bit position: 0 */
      /* 0x0003 */ unsigned char IsProtectedProcess : 1; /* bit position: 1 */
      /* 0x0003 */ unsigned char IsImageDynamicallyRelocated : 1; /* bit position: 2 */
      /* 0x0003 */ unsigned char SkipPatchingUser32Forwarders : 1; /* bit position: 3 */
      /* 0x0003 */ unsigned char IsPackagedProcess : 1; /* bit position: 4 */
      /* 0x0003 */ unsigned char IsAppContainer : 1; /* bit position: 5 */
      /* 0x0003 */ unsigned char IsProtectedProcessLight : 1; /* bit position: 6 */
      /* 0x0003 */ unsigned char IsLongPathAwareProcess : 1; /* bit position: 7 */
    }; /* bitfield */
  }; /* size: 0x0001 */
  /* 0x0004 */ unsigned char Padding0[4];
  /* 0x0008 */ unsigned __int64 Mutant;
  /* 0x0010 */ unsigned __int64 ImageBaseAddress;
  /* 0x0018 */ unsigned __int64 Ldr;
  /* 0x0020 */ unsigned __int64 ProcessParameters;
  /* 0x0028 */ unsigned __int64 SubSystemData;
  /* 0x0030 */ unsigned __int64 ProcessHeap;
  /* 0x0038 */ unsigned __int64 FastPebLock;
  /* 0x0040 */ unsigned __int64 AtlThunkSListPtr;
  /* 0x0048 */ unsigned __int64 IFEOKey;
  union
  {
    /* 0x0050 */ unsigned long CrossProcessFlags;
    struct /* bitfield */
    {
      /* 0x0050 */ unsigned long ProcessInJob : 1; /* bit position: 0 */
      /* 0x0050 */ unsigned long ProcessInitializing : 1; /* bit position: 1 */
      /* 0x0050 */ unsigned long ProcessUsingVEH : 1; /* bit position: 2 */
      /* 0x0050 */ unsigned long ProcessUsingVCH : 1; /* bit position: 3 */
      /* 0x0050 */ unsigned long ProcessUsingFTH : 1; /* bit position: 4 */
      /* 0x0050 */ unsigned long ProcessPreviouslyThrottled : 1; /* bit position: 5 */
      /* 0x0050 */ unsigned long ProcessCurrentlyThrottled : 1; /* bit position: 6 */
      /* 0x0050 */ unsigned long ProcessImagesHotPatched : 1; /* bit position: 7 */
      /* 0x0050 */ unsigned long ReservedBits0 : 24; /* bit position: 8 */
    }; /* bitfield */
  }; /* size: 0x0004 */
  /* 0x0054 */ unsigned char Padding1[4];
  union
  {
    /* 0x0058 */ unsigned __int64 KernelCallbackTable;
    /* 0x0058 */ unsigned __int64 UserSharedInfoPtr;
  }; /* size: 0x0008 */
  /* 0x0060 */ unsigned long SystemReserved;
  /* 0x0064 */ unsigned long AtlThunkSListPtr32;
  /* 0x0068 */ unsigned __int64 ApiSetMap;
  /* 0x0070 */ unsigned long TlsExpansionCounter;
  /* 0x0074 */ unsigned char Padding2[4];
  /* 0x0078 */ unsigned __int64 TlsBitmap;
  /* 0x0080 */ unsigned long TlsBitmapBits[2];
  /* 0x0088 */ unsigned __int64 ReadOnlySharedMemoryBase;
  /* 0x0090 */ unsigned __int64 SharedData;
  /* 0x0098 */ unsigned __int64 ReadOnlyStaticServerData;
  /* 0x00a0 */ unsigned __int64 AnsiCodePageData;
  /* 0x00a8 */ unsigned __int64 OemCodePageData;
  /* 0x00b0 */ unsigned __int64 UnicodeCaseTableData;
  /* 0x00b8 */ unsigned long NumberOfProcessors;
  /* 0x00bc */ unsigned long NtGlobalFlag;
  /* 0x00c0 */ union _LARGE_INTEGER CriticalSectionTimeout;
  /* 0x00c8 */ unsigned __int64 HeapSegmentReserve;
  /* 0x00d0 */ unsigned __int64 HeapSegmentCommit;
  /* 0x00d8 */ unsigned __int64 HeapDeCommitTotalFreeThreshold;
  /* 0x00e0 */ unsigned __int64 HeapDeCommitFreeBlockThreshold;
  /* 0x00e8 */ unsigned long NumberOfHeaps;
  /* 0x00ec */ unsigned long MaximumNumberOfHeaps;
  /* 0x00f0 */ unsigned __int64 ProcessHeaps;
  /* 0x00f8 */ unsigned __int64 GdiSharedHandleTable;
  /* 0x0100 */ unsigned __int64 ProcessStarterHelper;
  /* 0x0108 */ unsigned long GdiDCAttributeList;
  /* 0x010c */ unsigned char Padding3[4];
  /* 0x0110 */ unsigned __int64 LoaderLock;
  /* 0x0118 */ unsigned long OSMajorVersion;
  /* 0x011c */ unsigned long OSMinorVersion;
  /* 0x0120 */ unsigned short OSBuildNumber;
  /* 0x0122 */ unsigned short OSCSDVersion;
  /* 0x0124 */ unsigned long OSPlatformId;
  /* 0x0128 */ unsigned long ImageSubsystem;
  /* 0x012c */ unsigned long ImageSubsystemMajorVersion;
  /* 0x0130 */ unsigned long ImageSubsystemMinorVersion;
  /* 0x0134 */ unsigned char Padding4[4];
  /* 0x0138 */ unsigned __int64 ActiveProcessAffinityMask;
  /* 0x0140 */ unsigned long GdiHandleBuffer[60];
  /* 0x0230 */ unsigned __int64 PostProcessInitRoutine;
  /* 0x0238 */ unsigned __int64 TlsExpansionBitmap;
  /* 0x0240 */ unsigned long TlsExpansionBitmapBits[32];
  /* 0x02c0 */ unsigned long SessionId;
  /* 0x02c4 */ unsigned char Padding5[4];
  /* 0x02c8 */ union _ULARGE_INTEGER AppCompatFlags;
  /* 0x02d0 */ union _ULARGE_INTEGER AppCompatFlagsUser;
  /* 0x02d8 */ unsigned __int64 pShimData;
  /* 0x02e0 */ unsigned __int64 AppCompatInfo;
  /* 0x02e8 */ struct _STRING64 CSDVersion;
  /* 0x02f8 */ unsigned __int64 ActivationContextData;
  /* 0x0300 */ unsigned __int64 ProcessAssemblyStorageMap;
  /* 0x0308 */ unsigned __int64 SystemDefaultActivationContextData;
  /* 0x0310 */ unsigned __int64 SystemAssemblyStorageMap;
  /* 0x0318 */ unsigned __int64 MinimumStackCommit;
  /* 0x0320 */ unsigned __int64 SparePointers[4];
  /* 0x0340 */ unsigned long SpareUlongs[5];
  /* 0x0354 */ long Padding_764;
  /* 0x0358 */ unsigned __int64 WerRegistrationData;
  /* 0x0360 */ unsigned __int64 WerShipAssertPtr;
  /* 0x0368 */ unsigned __int64 pUnused;
  /* 0x0370 */ unsigned __int64 pImageHeaderHash;
  union
  {
    /* 0x0378 */ unsigned long TracingFlags;
    struct /* bitfield */
    {
      /* 0x0378 */ unsigned long HeapTracingEnabled : 1; /* bit position: 0 */
      /* 0x0378 */ unsigned long CritSecTracingEnabled : 1; /* bit position: 1 */
      /* 0x0378 */ unsigned long LibLoaderTracingEnabled : 1; /* bit position: 2 */
      /* 0x0378 */ unsigned long SpareTracingBits : 29; /* bit position: 3 */
    }; /* bitfield */
  }; /* size: 0x0004 */
  /* 0x037c */ unsigned char Padding6[4];
  /* 0x0380 */ unsigned __int64 CsrServerReadOnlySharedMemoryBase;
  /* 0x0388 */ unsigned __int64 TppWorkerpListLock;
  /* 0x0390 */ struct LIST_ENTRY64 TppWorkerpList;
  /* 0x03a0 */ unsigned __int64 WaitOnAddressHashTable[128];
  /* 0x07a0 */ unsigned __int64 TelemetryCoverageHeader;
  /* 0x07a8 */ unsigned long CloudFileFlags;
  /* 0x07ac */ unsigned long CloudFileDiagFlags;
  /* 0x07b0 */ char PlaceholderCompatibilityMode;
  /* 0x07b1 */ char PlaceholderCompatibilityModeReserved[7];
  /* 0x07b8 */ unsigned __int64 LeapSecondData;
  union
  {
    /* 0x07c0 */ unsigned long LeapSecondFlags;
    struct /* bitfield */
    {
      /* 0x07c0 */ unsigned long SixtySecondEnabled : 1; /* bit position: 0 */
      /* 0x07c0 */ unsigned long Reserved : 31; /* bit position: 1 */
    }; /* bitfield */
  }; /* size: 0x0004 */
  /* 0x07c4 */ unsigned long NtGlobalFlag2;
} PEB64, *PPEB64; /* size: 0x07c8 */

typedef struct _VI_DEADLOCK_GLOBALS
{
  /* 0x0000 */ __int64 TimeAcquire;
  /* 0x0008 */ __int64 TimeRelease;
  /* 0x0010 */ struct _LIST_ENTRY* ResourceDatabase;
  /* 0x0018 */ unsigned __int64 ResourceDatabaseCount;
  /* 0x0020 */ struct _VF_ADDRESS_RANGE ResourceAddressRange[1023];
  /* 0x4010 */ struct _LIST_ENTRY* ThreadDatabase;
  /* 0x4018 */ unsigned __int64 ThreadDatabaseCount;
  /* 0x4020 */ struct _VF_ADDRESS_RANGE ThreadAddressRange[1023];
  /* 0x8010 */ volatile unsigned long AllocationFailures;
  /* 0x8014 */ unsigned long NodesTrimmedBasedOnAge;
  /* 0x8018 */ unsigned long NodesTrimmedBasedOnCount;
  /* 0x801c */ unsigned long NodesSearched;
  /* 0x8020 */ unsigned long MaxNodesSearched;
  /* 0x8024 */ unsigned long SequenceNumber;
  /* 0x8028 */ unsigned long RecursionDepthLimit;
  /* 0x802c */ unsigned long SearchedNodesLimit;
  /* 0x8030 */ unsigned long DepthLimitHits;
  /* 0x8034 */ unsigned long SearchLimitHits;
  /* 0x8038 */ unsigned long StackLimitHits;
  /* 0x803c */ unsigned long ABC_ACB_Skipped;
  /* 0x8040 */ unsigned long OutOfOrderReleases;
  /* 0x8044 */ unsigned long NodesReleasedOutOfOrder;
  /* 0x8048 */ unsigned long TotalReleases;
  /* 0x804c */ unsigned long RootNodesDeleted;
  /* 0x8050 */ unsigned long ForgetHistoryCounter;
  /* 0x8054 */ long Padding_765;
  /* 0x8058 */ void* Instigator;
  /* 0x8060 */ unsigned long NumberOfParticipants;
  /* 0x8064 */ long Padding_766;
  /* 0x8068 */ struct _VI_DEADLOCK_NODE* Participant[32];
  /* 0x8168 */ long ChildrenCountWatermark;
  /* 0x816c */ enum _KERNEL_STACK_LIMITS StackType;
  /* 0x8170 */ unsigned __int64 StackLowLimit;
  /* 0x8178 */ unsigned __int64 StackHighLimit;
} VI_DEADLOCK_GLOBALS, *PVI_DEADLOCK_GLOBALS; /* size: 0x8180 */

typedef struct _TRIAGE_9F_POWER
{
  /* 0x0000 */ unsigned short Signature;
  /* 0x0002 */ unsigned short Revision;
  /* 0x0004 */ long Padding_767;
  /* 0x0008 */ struct _LIST_ENTRY* IrpList;
  /* 0x0010 */ struct _LIST_ENTRY* ThreadList;
  /* 0x0018 */ struct _TRIAGE_EX_WORK_QUEUE* DelayedWorkQueue;
  /* 0x0020 */ struct _TRIAGE_EX_WORK_QUEUE* DelayedIoWorkQueue;
} TRIAGE_9F_POWER, *PTRIAGE_9F_POWER; /* size: 0x0028 */

typedef struct _CALL_PERFORMANCE_DATA
{
  /* 0x0000 */ unsigned __int64 SpinLock;
  /* 0x0008 */ struct _LIST_ENTRY HashTable[64];
} CALL_PERFORMANCE_DATA, *PCALL_PERFORMANCE_DATA; /* size: 0x0408 */

typedef struct _SESSION_LOWBOX_MAP
{
  /* 0x0000 */ struct _LIST_ENTRY ListEntry;
  /* 0x0010 */ unsigned long SessionId;
  /* 0x0014 */ long Padding_768;
  /* 0x0018 */ struct _SEP_LOWBOX_NUMBER_MAPPING LowboxMap;
} SESSION_LOWBOX_MAP, *PSESSION_LOWBOX_MAP; /* size: 0x0040 */

typedef struct _POOL_TRACKER_BIG_PAGES
{
  /* 0x0000 */ volatile unsigned __int64 Va;
  /* 0x0008 */ unsigned long Key;
  struct /* bitfield */
  {
    /* 0x000c */ unsigned long Pattern : 8; /* bit position: 0 */
    /* 0x000c */ unsigned long PoolType : 12; /* bit position: 8 */
    /* 0x000c */ unsigned long SlushSize : 12; /* bit position: 20 */
  }; /* bitfield */
  /* 0x0010 */ unsigned __int64 NumberOfBytes;
} POOL_TRACKER_BIG_PAGES, *PPOOL_TRACKER_BIG_PAGES; /* size: 0x0018 */

struct _LDRP_LOAD_CONTEXT;

typedef struct _LDR_DATA_TABLE_ENTRY
{
  /* 0x0000 */ struct _LIST_ENTRY InLoadOrderLinks;
  /* 0x0010 */ struct _LIST_ENTRY InMemoryOrderLinks;
  /* 0x0020 */ struct _LIST_ENTRY InInitializationOrderLinks;
  /* 0x0030 */ void* DllBase;
  /* 0x0038 */ void* EntryPoint;
  /* 0x0040 */ unsigned long SizeOfImage;
  /* 0x0044 */ long Padding_769;
  /* 0x0048 */ struct _UNICODE_STRING FullDllName;
  /* 0x0058 */ struct _UNICODE_STRING BaseDllName;
  union
  {
    /* 0x0068 */ unsigned char FlagGroup[4];
    /* 0x0068 */ unsigned long Flags;
    struct /* bitfield */
    {
      /* 0x0068 */ unsigned long PackagedBinary : 1; /* bit position: 0 */
      /* 0x0068 */ unsigned long MarkedForRemoval : 1; /* bit position: 1 */
      /* 0x0068 */ unsigned long ImageDll : 1; /* bit position: 2 */
      /* 0x0068 */ unsigned long LoadNotificationsSent : 1; /* bit position: 3 */
      /* 0x0068 */ unsigned long TelemetryEntryProcessed : 1; /* bit position: 4 */
      /* 0x0068 */ unsigned long ProcessStaticImport : 1; /* bit position: 5 */
      /* 0x0068 */ unsigned long InLegacyLists : 1; /* bit position: 6 */
      /* 0x0068 */ unsigned long InIndexes : 1; /* bit position: 7 */
      /* 0x0068 */ unsigned long ShimDll : 1; /* bit position: 8 */
      /* 0x0068 */ unsigned long InExceptionTable : 1; /* bit position: 9 */
      /* 0x0068 */ unsigned long ReservedFlags1 : 2; /* bit position: 10 */
      /* 0x0068 */ unsigned long LoadInProgress : 1; /* bit position: 12 */
      /* 0x0068 */ unsigned long LoadConfigProcessed : 1; /* bit position: 13 */
      /* 0x0068 */ unsigned long EntryProcessed : 1; /* bit position: 14 */
      /* 0x0068 */ unsigned long ProtectDelayLoad : 1; /* bit position: 15 */
      /* 0x0068 */ unsigned long ReservedFlags3 : 2; /* bit position: 16 */
      /* 0x0068 */ unsigned long DontCallForThreads : 1; /* bit position: 18 */
      /* 0x0068 */ unsigned long ProcessAttachCalled : 1; /* bit position: 19 */
      /* 0x0068 */ unsigned long ProcessAttachFailed : 1; /* bit position: 20 */
      /* 0x0068 */ unsigned long CorDeferredValidate : 1; /* bit position: 21 */
      /* 0x0068 */ unsigned long CorImage : 1; /* bit position: 22 */
      /* 0x0068 */ unsigned long DontRelocate : 1; /* bit position: 23 */
      /* 0x0068 */ unsigned long CorILOnly : 1; /* bit position: 24 */
      /* 0x0068 */ unsigned long ChpeImage : 1; /* bit position: 25 */
      /* 0x0068 */ unsigned long ReservedFlags5 : 2; /* bit position: 26 */
      /* 0x0068 */ unsigned long Redirected : 1; /* bit position: 28 */
      /* 0x0068 */ unsigned long ReservedFlags6 : 2; /* bit position: 29 */
      /* 0x0068 */ unsigned long CompatDatabaseProcessed : 1; /* bit position: 31 */
    }; /* bitfield */
  }; /* size: 0x0004 */
  /* 0x006c */ unsigned short ObsoleteLoadCount;
  /* 0x006e */ unsigned short TlsIndex;
  /* 0x0070 */ struct _LIST_ENTRY HashLinks;
  /* 0x0080 */ unsigned long TimeDateStamp;
  /* 0x0084 */ long Padding_770;
  /* 0x0088 */ struct _ACTIVATION_CONTEXT* EntryPointActivationContext;
  /* 0x0090 */ void* Lock;
  /* 0x0098 */ struct _LDR_DDAG_NODE* DdagNode;
  /* 0x00a0 */ struct _LIST_ENTRY NodeModuleLink;
  /* 0x00b0 */ struct _LDRP_LOAD_CONTEXT* LoadContext;
  /* 0x00b8 */ void* ParentDllBase;
  /* 0x00c0 */ void* SwitchBackContext;
  /* 0x00c8 */ struct _RTL_BALANCED_NODE BaseAddressIndexNode;
  /* 0x00e0 */ struct _RTL_BALANCED_NODE MappingInfoIndexNode;
  /* 0x00f8 */ unsigned __int64 OriginalBase;
  /* 0x0100 */ union _LARGE_INTEGER LoadTime;
  /* 0x0108 */ unsigned long BaseNameHashValue;
  /* 0x010c */ enum _LDR_DLL_LOAD_REASON LoadReason;
  /* 0x0110 */ unsigned long ImplicitPathOptions;
  /* 0x0114 */ unsigned long ReferenceCount;
  /* 0x0118 */ unsigned long DependentLoadFlags;
  /* 0x011c */ unsigned char SigningLevel;
  /* 0x011d */ char __PADDING__[3];
} LDR_DATA_TABLE_ENTRY, *PLDR_DATA_TABLE_ENTRY; /* size: 0x0120 */

typedef struct _KTIMER2_COLLECTION
{
  /* 0x0000 */ struct _RTL_RB_TREE Tree;
  /* 0x0010 */ unsigned __int64 NextDueTime;
} KTIMER2_COLLECTION, *PKTIMER2_COLLECTION; /* size: 0x0018 */

typedef struct _VF_WATCHDOG_IRP
{
  /* 0x0000 */ struct _LIST_ENTRY ListEntry;
  /* 0x0010 */ struct _IRP* Irp;
  /* 0x0018 */ unsigned long DueTickCount;
  /* 0x001c */ volatile unsigned char Inserted;
  /* 0x001d */ char TrackedStackLocation;
  /* 0x001e */ unsigned short CancelTimeoutTicks;
} VF_WATCHDOG_IRP, *PVF_WATCHDOG_IRP; /* size: 0x0020 */

typedef struct _IMAGE_SECTION_HEADER
{
  /* 0x0000 */ unsigned char Name[8];
  union
  {
    union
    {
      /* 0x0008 */ unsigned long PhysicalAddress;
      /* 0x0008 */ unsigned long VirtualSize;
    }; /* size: 0x0004 */
  } /* size: 0x0004 */ Misc;
  /* 0x000c */ unsigned long VirtualAddress;
  /* 0x0010 */ unsigned long SizeOfRawData;
  /* 0x0014 */ unsigned long PointerToRawData;
  /* 0x0018 */ unsigned long PointerToRelocations;
  /* 0x001c */ unsigned long PointerToLinenumbers;
  /* 0x0020 */ unsigned short NumberOfRelocations;
  /* 0x0022 */ unsigned short NumberOfLinenumbers;
  /* 0x0024 */ unsigned long Characteristics;
} IMAGE_SECTION_HEADER, *PIMAGE_SECTION_HEADER; /* size: 0x0028 */

typedef struct _FAST_OWNER_ENTRY_INTERNAL
{
  /* 0x0000 */ struct _LIST_ENTRY ListEntry;
  /* 0x0010 */ unsigned char AbLockHandle;
  struct /* bitfield */
  {
    /* 0x0011 */ unsigned char Disowned : 1; /* bit position: 0 */
    /* 0x0011 */ unsigned char DynamicallyAllocated : 1; /* bit position: 1 */
    /* 0x0011 */ unsigned char CallerExclusive : 1; /* bit position: 2 */
  }; /* bitfield */
  /* 0x0012 */ unsigned char IsSublistHead;
  /* 0x0013 */ unsigned char IsWaiting;
  /* 0x0014 */ long Padding_771;
  /* 0x0018 */ void* LockAddress;
  /* 0x0020 */ void* ThreadAddress;
  /* 0x0028 */ struct _LIST_ENTRY SublistHead;
  /* 0x0038 */ struct _LIST_ENTRY LockListEntry;
} FAST_OWNER_ENTRY_INTERNAL, *PFAST_OWNER_ENTRY_INTERNAL; /* size: 0x0048 */

typedef struct _ETW_WMITRACE_WORK
{
  /* 0x0000 */ unsigned long LoggerId;
  /* 0x0004 */ unsigned long SiloSessionId;
  union
  {
    struct
    {
      /* 0x0008 */ char LoggerName[65];
      /* 0x0049 */ char FileName[129];
      /* 0x00ca */ char Padding_772[2];
      /* 0x00cc */ unsigned long MaximumFileSize;
      /* 0x00d0 */ unsigned long MinBuffers;
      /* 0x00d4 */ unsigned long MaxBuffers;
      /* 0x00d8 */ unsigned long BufferSize;
      /* 0x00dc */ unsigned long Mode;
      /* 0x00e0 */ unsigned long FlushTimer;
    }; /* size: 0x00da */
    struct
    {
      /* 0x0008 */ unsigned __int64 MatchAny;
      /* 0x0010 */ unsigned __int64 MatchAll;
      /* 0x0018 */ unsigned long EnableProperty;
      /* 0x001c */ struct _GUID Guid;
      /* 0x002c */ unsigned char Level;
      /* 0x002d */ char Padding_773[187];
      /* 0x00e8 */ long Status;
      /* 0x00ec */ long __PADDING__[1];
    }; /* size: 0x002d */
  }; /* size: 0x00da */
} ETW_WMITRACE_WORK, *PETW_WMITRACE_WORK; /* size: 0x00f0 */

typedef struct _POOL_HEADER
{
  union
  {
    struct
    {
      struct /* bitfield */
      {
        /* 0x0000 */ unsigned short PreviousSize : 8; /* bit position: 0 */
        /* 0x0000 */ unsigned short PoolIndex : 8; /* bit position: 8 */
      }; /* bitfield */
      struct /* bitfield */
      {
        /* 0x0002 */ unsigned short BlockSize : 8; /* bit position: 0 */
        /* 0x0002 */ unsigned short PoolType : 8; /* bit position: 8 */
      }; /* bitfield */
    }; /* size: 0x0004 */
    /* 0x0000 */ unsigned long Ulong1;
  }; /* size: 0x0004 */
  /* 0x0004 */ unsigned long PoolTag;
  union
  {
    /* 0x0008 */ struct _EPROCESS* ProcessBilled;
    struct
    {
      /* 0x0008 */ unsigned short AllocatorBackTraceIndex;
      /* 0x000a */ unsigned short PoolTagHash;
      /* 0x000c */ long __PADDING__[1];
    }; /* size: 0x0008 */
  }; /* size: 0x0008 */
} POOL_HEADER, *PPOOL_HEADER; /* size: 0x0010 */

typedef struct _POP_POWER_SETTING_VALUES
{
  /* 0x0000 */ unsigned long StructureSize;
  /* 0x0004 */ struct _SYSTEM_POWER_POLICY PopPolicy;
  /* 0x00ec */ enum SYSTEM_POWER_CONDITION CurrentAcDcPowerState;
  /* 0x00f0 */ unsigned char AwayModeEnabled;
  /* 0x00f1 */ unsigned char AwayModeEngaged;
  /* 0x00f2 */ unsigned char AwayModePolicyAllowed;
  /* 0x00f3 */ char Padding_774;
  /* 0x00f4 */ volatile long AwayModeIgnoreUserPresent;
  /* 0x00f8 */ volatile long AwayModeIgnoreAction;
  /* 0x00fc */ unsigned char DisableFastS4;
  /* 0x00fd */ unsigned char DisableStandbyStates;
  /* 0x00fe */ char Padding_775[2];
  /* 0x0100 */ unsigned long UnattendSleepTimeout;
  /* 0x0104 */ volatile unsigned long DiskIgnoreTime;
  /* 0x0108 */ volatile unsigned long DeviceIdlePolicy;
  /* 0x010c */ unsigned long VideoDimTimeout;
  /* 0x0110 */ unsigned long VideoNormalBrightness;
  /* 0x0114 */ unsigned long VideoDimBrightness;
  /* 0x0118 */ unsigned long AlsOffset;
  /* 0x011c */ unsigned long AlsEnabled;
  /* 0x0120 */ unsigned long EsBrightness;
  /* 0x0124 */ unsigned char SwitchShutdownForced;
  /* 0x0125 */ char Padding_776[3];
  /* 0x0128 */ unsigned long SystemCoolingPolicy;
  /* 0x012c */ unsigned char MediaBufferingEngaged;
  /* 0x012d */ unsigned char AudioActivity;
  /* 0x012e */ unsigned char FullscreenVideoPlayback;
  /* 0x012f */ char Padding_777;
  /* 0x0130 */ unsigned long EsBatteryThreshold;
  /* 0x0134 */ unsigned char EsAggressive;
  /* 0x0135 */ unsigned char EsUserAwaySetting;
  /* 0x0136 */ char Padding_778[2];
  /* 0x0138 */ unsigned long ConnectivityInStandby;
  /* 0x013c */ unsigned long DisconnectedStandbyMode;
  /* 0x0140 */ unsigned long UserPresencePredictionEnabled;
  /* 0x0144 */ unsigned char AirplaneModeEnabled;
  /* 0x0145 */ unsigned char BluetoothDeviceCharging;
  /* 0x0146 */ char __PADDING__[2];
} POP_POWER_SETTING_VALUES, *PPOP_POWER_SETTING_VALUES; /* size: 0x0148 */

typedef struct _HEAP_UCR_DESCRIPTOR
{
  /* 0x0000 */ struct _LIST_ENTRY ListEntry;
  /* 0x0010 */ struct _LIST_ENTRY SegmentEntry;
  /* 0x0020 */ void* Address;
  /* 0x0028 */ unsigned __int64 Size;
} HEAP_UCR_DESCRIPTOR, *PHEAP_UCR_DESCRIPTOR; /* size: 0x0030 */

typedef struct _NONOPAQUE_OPLOCK
{
  /* 0x0000 */ struct _IRP* IrpExclusiveOplock;
  /* 0x0008 */ struct _FILE_OBJECT* FileObject;
  /* 0x0010 */ struct _EPROCESS* ExclusiveOplockOwner;
  /* 0x0018 */ struct _ETHREAD* ExclusiveOplockOwnerThread;
  /* 0x0020 */ unsigned char WaiterPriority;
  /* 0x0021 */ char Padding_779[7];
  /* 0x0028 */ struct _LIST_ENTRY IrpOplocksR;
  /* 0x0038 */ struct _LIST_ENTRY IrpOplocksRH;
  /* 0x0048 */ struct _LIST_ENTRY RHBreakQueue;
  /* 0x0058 */ struct _LIST_ENTRY WaitingIrps;
  /* 0x0068 */ struct _LIST_ENTRY DelayAckFileObjectQueue;
  /* 0x0078 */ struct _LIST_ENTRY AtomicQueue;
  /* 0x0088 */ struct _GUID* DeleterParentKey;
  /* 0x0090 */ unsigned long OplockState;
  /* 0x0094 */ long Padding_780;
  /* 0x0098 */ struct _FAST_MUTEX* FastMutex;
} NONOPAQUE_OPLOCK, *PNONOPAQUE_OPLOCK; /* size: 0x00a0 */

typedef struct _RTLP_RANGE_LIST_ENTRY
{
  /* 0x0000 */ unsigned __int64 Start;
  /* 0x0008 */ unsigned __int64 End;
  union
  {
    struct
    {
      /* 0x0010 */ void* UserData;
      /* 0x0018 */ void* Owner;
    } /* size: 0x0010 */ Allocated;
    struct
    {
      /* 0x0010 */ struct _LIST_ENTRY ListHead;
    } /* size: 0x0010 */ Merged;
  }; /* size: 0x0010 */
  /* 0x0020 */ unsigned char Attributes;
  /* 0x0021 */ unsigned char PublicFlags;
  /* 0x0022 */ unsigned short PrivateFlags;
  /* 0x0024 */ long Padding_781;
  /* 0x0028 */ struct _LIST_ENTRY ListEntry;
} RTLP_RANGE_LIST_ENTRY, *PRTLP_RANGE_LIST_ENTRY; /* size: 0x0038 */

typedef struct _RH_OP_CONTEXT
{
  /* 0x0000 */ struct _LIST_ENTRY Links;
  /* 0x0010 */ struct _IRP* OplockRequestIrp;
  /* 0x0018 */ struct _FILE_OBJECT* OplockRequestFileObject;
  /* 0x0020 */ struct _EPROCESS* OplockRequestProcess;
  /* 0x0028 */ struct _ETHREAD* OplockOwnerThread;
  /* 0x0030 */ unsigned long Flags;
  /* 0x0034 */ long Padding_782;
  /* 0x0038 */ struct _LIST_ENTRY AtomicLinks;
} RH_OP_CONTEXT, *PRH_OP_CONTEXT; /* size: 0x0048 */

typedef struct _THERMAL_INFORMATION
{
  /* 0x0000 */ unsigned long ThermalStamp;
  /* 0x0004 */ unsigned long ThermalConstant1;
  /* 0x0008 */ unsigned long ThermalConstant2;
  /* 0x000c */ long Padding_783;
  /* 0x0010 */ unsigned __int64 Processors;
  /* 0x0018 */ unsigned long SamplingPeriod;
  /* 0x001c */ unsigned long CurrentTemperature;
  /* 0x0020 */ unsigned long PassiveTripPoint;
  /* 0x0024 */ unsigned long CriticalTripPoint;
  /* 0x0028 */ unsigned char ActiveTripPointCount;
  /* 0x0029 */ char Padding_784[3];
  /* 0x002c */ unsigned long ActiveTripPoint[10];
  /* 0x0054 */ long __PADDING__[1];
} THERMAL_INFORMATION, *PTHERMAL_INFORMATION; /* size: 0x0058 */

typedef struct _HIVE_LIST_ENTRY
{
  /* 0x0000 */ wchar_t* FileName;
  /* 0x0008 */ wchar_t* BaseName;
  /* 0x0010 */ wchar_t* RegRootName;
  /* 0x0018 */ struct _CMHIVE* CmHive;
  /* 0x0020 */ unsigned long HHiveFlags;
  /* 0x0024 */ unsigned long CmHiveFlags;
  /* 0x0028 */ unsigned long CmKcbCacheSize;
  /* 0x002c */ long Padding_785;
  /* 0x0030 */ struct _CMHIVE* CmHive2;
  /* 0x0038 */ unsigned char HiveMounted;
  /* 0x0039 */ unsigned char ThreadFinished;
  /* 0x003a */ unsigned char ThreadStarted;
  /* 0x003b */ unsigned char Allocate;
  /* 0x003c */ unsigned char WinPERequired;
  /* 0x003d */ char Padding_786[3];
  /* 0x0040 */ struct _KEVENT StartEvent;
  /* 0x0058 */ struct _KEVENT FinishedEvent;
  /* 0x0070 */ struct _KEVENT MountLock;
  /* 0x0088 */ struct _EX_PUSH_LOCK MountCallbackLock;
  /* 0x0090 */ struct _EX_PUSH_LOCK CallbackListLock;
  /* 0x0098 */ struct _LIST_ENTRY CallbackListHead;
  /* 0x00a8 */ struct _WORK_QUEUE_ITEM* CallbackWorkItem;
  /* 0x00b0 */ volatile long CallbackWorkItemBusy;
  /* 0x00b4 */ long Padding_787;
  /* 0x00b8 */ struct _UNICODE_STRING FilePath;
} HIVE_LIST_ENTRY, *PHIVE_LIST_ENTRY; /* size: 0x00c8 */

typedef struct _NB10
{
  /* 0x0000 */ unsigned long Signature;
  /* 0x0004 */ unsigned long Offset;
  /* 0x0008 */ unsigned long TimeStamp;
  /* 0x000c */ unsigned long Age;
  /* 0x0010 */ char PdbName[1];
  /* 0x0011 */ char __PADDING__[3];
} NB10, *PNB10; /* size: 0x0014 */

typedef union _CVDD
{
  union
  {
    /* 0x0000 */ unsigned long Signature;
    /* 0x0000 */ struct _NB10 NB10;
    /* 0x0000 */ struct _RSDS RsDs;
  }; /* size: 0x001c */
} CVDD, *PCVDD; /* size: 0x001c */

typedef struct _ETW_DEBUGID_TRACKING_ENTRY
{
  /* 0x0000 */ struct _LIST_ENTRY ListEntry;
  /* 0x0010 */ unsigned char ConsumersNotified;
  /* 0x0011 */ unsigned char Spare[3];
  /* 0x0014 */ unsigned long DebugIdSize;
  /* 0x0018 */ union _CVDD DebugId;
  /* 0x0034 */ long __PADDING__[1];
} ETW_DEBUGID_TRACKING_ENTRY, *PETW_DEBUGID_TRACKING_ENTRY; /* size: 0x0038 */

typedef struct _KWAIT_CHAIN_ENTRY
{
  /* 0x0000 */ struct _LIST_ENTRY ListEntry;
  /* 0x0010 */ struct _KTHREAD* Thread;
  /* 0x0018 */ struct _KEVENT Event;
} KWAIT_CHAIN_ENTRY, *PKWAIT_CHAIN_ENTRY; /* size: 0x0030 */

typedef struct _IMAGE_DEBUG_DIRECTORY
{
  /* 0x0000 */ unsigned long Characteristics;
  /* 0x0004 */ unsigned long TimeDateStamp;
  /* 0x0008 */ unsigned short MajorVersion;
  /* 0x000a */ unsigned short MinorVersion;
  /* 0x000c */ unsigned long Type;
  /* 0x0010 */ unsigned long SizeOfData;
  /* 0x0014 */ unsigned long AddressOfRawData;
  /* 0x0018 */ unsigned long PointerToRawData;
} IMAGE_DEBUG_DIRECTORY, *PIMAGE_DEBUG_DIRECTORY; /* size: 0x001c */

typedef struct _CALL_HASH_ENTRY
{
  /* 0x0000 */ struct _LIST_ENTRY ListEntry;
  /* 0x0010 */ void* CallersAddress;
  /* 0x0018 */ void* CallersCaller;
  /* 0x0020 */ unsigned long CallCount;
  /* 0x0024 */ long __PADDING__[1];
} CALL_HASH_ENTRY, *PCALL_HASH_ENTRY; /* size: 0x0028 */

typedef struct _MI_TRIAGE_DUMP_DATA
{
  /* 0x0000 */ unsigned __int64 BadPageCount;
  /* 0x0008 */ long BadPagesDetected;
  /* 0x000c */ long ZeroedPageSingleBitErrorsDetected;
  /* 0x0010 */ long ScrubPasses;
  /* 0x0014 */ long ScrubBadPagesFound;
  /* 0x0018 */ unsigned long PageHashErrors;
  /* 0x001c */ long Padding_788;
  /* 0x0020 */ unsigned __int64 FeatureBits;
  /* 0x0028 */ unsigned long TimeZoneId;
  /* 0x002c */ union _MI_FLAGS Flags;
  /* 0x0030 */ void* VsmConnection;
} MI_TRIAGE_DUMP_DATA, *PMI_TRIAGE_DUMP_DATA; /* size: 0x0038 */
