# Version: 6.3
# Architecture: amd64
# CompanyName: Microsoft Corporation
# FileDescription: NT Kernel & System
# FileVersion: 6.3.9600.17031 (winblue_gdr.140221-1952)
# InternalName: ntkrnlmp.exe
# LegalCopyright:  Microsoft Corporation. All rights reserved.
# OriginalFilename: ntkrnlmp.exe
# ProductName: Microsoft Windows Operating System
# ProductVersion: 6.3.9600.17031
# Translation: 78644233
import vstruct
from vstruct.primitives import *

EXQUEUEINDEX = v_enum()
EXQUEUEINDEX.ExPoolUntrusted = 0
EXQUEUEINDEX.ExPoolTrusted = 1
EXQUEUEINDEX.ExPoolMax = 8


KPROCESS_STATE = v_enum()
KPROCESS_STATE.ProcessInMemory = 0
KPROCESS_STATE.ProcessOutOfMemory = 1
KPROCESS_STATE.ProcessInTransition = 2
KPROCESS_STATE.ProcessOutTransition = 3
KPROCESS_STATE.ProcessInSwap = 4
KPROCESS_STATE.ProcessOutSwap = 5
KPROCESS_STATE.ProcessAllSwapStates = 6


MI_STORE_BIT_TYPE = v_enum()
MI_STORE_BIT_TYPE.MiStoreBitTypeInStore = 0
MI_STORE_BIT_TYPE.MiStoreBitTypeEvicted = 1
MI_STORE_BIT_TYPE.MiStoreBitTypeMax = 2


IO_ALLOCATION_ACTION = v_enum()
IO_ALLOCATION_ACTION.KeepObject = 1
IO_ALLOCATION_ACTION.DeallocateObject = 2
IO_ALLOCATION_ACTION.DeallocateObjectKeepRegisters = 3


EX_GEN_RANDOM_DOMAIN = v_enum()
EX_GEN_RANDOM_DOMAIN.ExGenRandomDomainKernel = 0
EX_GEN_RANDOM_DOMAIN.ExGenRandomDomainFirst = 0
EX_GEN_RANDOM_DOMAIN.ExGenRandomDomainUserVisible = 1
EX_GEN_RANDOM_DOMAIN.ExGenRandomDomainMax = 2


LOCK_OPERATION = v_enum()
LOCK_OPERATION.IoReadAccess = 0
LOCK_OPERATION.IoWriteAccess = 1
LOCK_OPERATION.IoModifyAccess = 2


CM_SHARE_DISPOSITION = v_enum()
CM_SHARE_DISPOSITION.CmResourceShareUndetermined = 0
CM_SHARE_DISPOSITION.CmResourceShareDeviceExclusive = 1
CM_SHARE_DISPOSITION.CmResourceShareDriverExclusive = 2
CM_SHARE_DISPOSITION.CmResourceShareShared = 3


KWAIT_BLOCK_STATE = v_enum()
KWAIT_BLOCK_STATE.WaitBlockBypassStart = 0
KWAIT_BLOCK_STATE.WaitBlockBypassComplete = 1
KWAIT_BLOCK_STATE.WaitBlockSuspendBypassStart = 2
KWAIT_BLOCK_STATE.WaitBlockSuspendBypassComplete = 3
KWAIT_BLOCK_STATE.WaitBlockActive = 4
KWAIT_BLOCK_STATE.WaitBlockInactive = 5
KWAIT_BLOCK_STATE.WaitBlockSuspended = 6
KWAIT_BLOCK_STATE.WaitBlockAllStates = 7


PROCESSOR_CACHE_TYPE = v_enum()
PROCESSOR_CACHE_TYPE.CacheUnified = 0
PROCESSOR_CACHE_TYPE.CacheInstruction = 1
PROCESSOR_CACHE_TYPE.CacheData = 2
PROCESSOR_CACHE_TYPE.CacheTrace = 3


EVENT_TYPE = v_enum()
EVENT_TYPE.NotificationEvent = 0
EVENT_TYPE.SynchronizationEvent = 1


PROFILE_DEPARTURE_STYLE = v_enum()
PROFILE_DEPARTURE_STYLE.PDS_UPDATE_DEFAULT = 1
PROFILE_DEPARTURE_STYLE.PDS_UPDATE_ON_REMOVE = 2
PROFILE_DEPARTURE_STYLE.PDS_UPDATE_ON_INTERFACE = 3
PROFILE_DEPARTURE_STYLE.PDS_UPDATE_ON_EJECT = 4


HV_HYPERVISOR_INTERFACE = v_enum()
HV_HYPERVISOR_INTERFACE.HvMicrosoftHypervisorInterface = 824407624


PS_PROTECTED_TYPE = v_enum()
PS_PROTECTED_TYPE.PsProtectedTypeNone = 0
PS_PROTECTED_TYPE.PsProtectedTypeProtectedLight = 1
PS_PROTECTED_TYPE.PsProtectedTypeProtected = 2
PS_PROTECTED_TYPE.PsProtectedTypeMax = 3


OB_OPEN_REASON = v_enum()
OB_OPEN_REASON.ObCreateHandle = 0
OB_OPEN_REASON.ObOpenHandle = 1
OB_OPEN_REASON.ObDuplicateHandle = 2
OB_OPEN_REASON.ObInheritHandle = 3
OB_OPEN_REASON.ObMaxOpenReason = 4


PNP_DEVNODE_STATE = v_enum()
PNP_DEVNODE_STATE.DeviceNodeUnspecified = 768
PNP_DEVNODE_STATE.DeviceNodeUninitialized = 769
PNP_DEVNODE_STATE.DeviceNodeInitialized = 770
PNP_DEVNODE_STATE.DeviceNodeDriversAdded = 771
PNP_DEVNODE_STATE.DeviceNodeResourcesAssigned = 772
PNP_DEVNODE_STATE.DeviceNodeStartPending = 773
PNP_DEVNODE_STATE.DeviceNodeStartCompletion = 774
PNP_DEVNODE_STATE.DeviceNodeStartPostWork = 775
PNP_DEVNODE_STATE.DeviceNodeStarted = 776
PNP_DEVNODE_STATE.DeviceNodeQueryStopped = 777
PNP_DEVNODE_STATE.DeviceNodeStopped = 778
PNP_DEVNODE_STATE.DeviceNodeRestartCompletion = 779
PNP_DEVNODE_STATE.DeviceNodeEnumeratePending = 780
PNP_DEVNODE_STATE.DeviceNodeEnumerateCompletion = 781
PNP_DEVNODE_STATE.DeviceNodeAwaitingQueuedDeletion = 782
PNP_DEVNODE_STATE.DeviceNodeAwaitingQueuedRemoval = 783
PNP_DEVNODE_STATE.DeviceNodeQueryRemoved = 784
PNP_DEVNODE_STATE.DeviceNodeRemovePendingCloses = 785
PNP_DEVNODE_STATE.DeviceNodeRemoved = 786
PNP_DEVNODE_STATE.DeviceNodeDeletePendingCloses = 787
PNP_DEVNODE_STATE.DeviceNodeDeleted = 788
PNP_DEVNODE_STATE.MaxDeviceNodeState = 789


ETW_STRING_TOKEN_TYPE = v_enum()
ETW_STRING_TOKEN_TYPE.ETW_STRING_TOKEN_EXE = 0
ETW_STRING_TOKEN_TYPE.ETW_STRING_TOKEN_PACKAGE_ID = 1
ETW_STRING_TOKEN_TYPE.ETW_STRING_TOKEN_PKG_APP_ID = 2
ETW_STRING_TOKEN_TYPE.ETW_STRING_TOKEN_MAX_COUNT = 3


POWER_STATE_TYPE = v_enum()
POWER_STATE_TYPE.SystemPowerState = 0
POWER_STATE_TYPE.DevicePowerState = 1


PS_PROTECTED_SIGNER = v_enum()
PS_PROTECTED_SIGNER.PsProtectedSignerNone = 0
PS_PROTECTED_SIGNER.PsProtectedSignerAuthenticode = 1
PS_PROTECTED_SIGNER.PsProtectedSignerCodeGen = 2
PS_PROTECTED_SIGNER.PsProtectedSignerAntimalware = 3
PS_PROTECTED_SIGNER.PsProtectedSignerLsa = 4
PS_PROTECTED_SIGNER.PsProtectedSignerWindows = 5
PS_PROTECTED_SIGNER.PsProtectedSignerWinTcb = 6
PS_PROTECTED_SIGNER.PsProtectedSignerMax = 7


TYPE_OF_MEMORY = v_enum()
TYPE_OF_MEMORY.LoaderExceptionBlock = 0
TYPE_OF_MEMORY.LoaderSystemBlock = 1
TYPE_OF_MEMORY.LoaderFree = 2
TYPE_OF_MEMORY.LoaderBad = 3
TYPE_OF_MEMORY.LoaderLoadedProgram = 4
TYPE_OF_MEMORY.LoaderFirmwareTemporary = 5
TYPE_OF_MEMORY.LoaderFirmwarePermanent = 6
TYPE_OF_MEMORY.LoaderOsloaderHeap = 7
TYPE_OF_MEMORY.LoaderOsloaderStack = 8
TYPE_OF_MEMORY.LoaderSystemCode = 9
TYPE_OF_MEMORY.LoaderHalCode = 10
TYPE_OF_MEMORY.LoaderBootDriver = 11
TYPE_OF_MEMORY.LoaderConsoleInDriver = 12
TYPE_OF_MEMORY.LoaderConsoleOutDriver = 13
TYPE_OF_MEMORY.LoaderStartupDpcStack = 14
TYPE_OF_MEMORY.LoaderStartupKernelStack = 15
TYPE_OF_MEMORY.LoaderStartupPanicStack = 16
TYPE_OF_MEMORY.LoaderStartupPcrPage = 17
TYPE_OF_MEMORY.LoaderStartupPdrPage = 18
TYPE_OF_MEMORY.LoaderRegistryData = 19
TYPE_OF_MEMORY.LoaderMemoryData = 20
TYPE_OF_MEMORY.LoaderNlsData = 21
TYPE_OF_MEMORY.LoaderSpecialMemory = 22
TYPE_OF_MEMORY.LoaderBBTMemory = 23
TYPE_OF_MEMORY.LoaderReserve = 24
TYPE_OF_MEMORY.LoaderXIPRom = 25
TYPE_OF_MEMORY.LoaderHALCachedMemory = 26
TYPE_OF_MEMORY.LoaderLargePageFiller = 27
TYPE_OF_MEMORY.LoaderErrorLogMemory = 28
TYPE_OF_MEMORY.LoaderMaximum = 29


ETW_NOTIFICATION_TYPE = v_enum()
ETW_NOTIFICATION_TYPE.EtwNotificationTypeNoReply = 1
ETW_NOTIFICATION_TYPE.EtwNotificationTypeLegacyEnable = 2
ETW_NOTIFICATION_TYPE.EtwNotificationTypeEnable = 3
ETW_NOTIFICATION_TYPE.EtwNotificationTypePrivateLogger = 4
ETW_NOTIFICATION_TYPE.EtwNotificationTypePerflib = 5
ETW_NOTIFICATION_TYPE.EtwNotificationTypeAudio = 6
ETW_NOTIFICATION_TYPE.EtwNotificationTypeSession = 7
ETW_NOTIFICATION_TYPE.EtwNotificationTypeReserved = 8
ETW_NOTIFICATION_TYPE.EtwNotificationTypeCredentialUI = 9
ETW_NOTIFICATION_TYPE.EtwNotificationTypeInProcSession = 10
ETW_NOTIFICATION_TYPE.EtwNotificationTypeMax = 11


KTM_STATE = v_enum()
KTM_STATE.KKtmUninitialized = 0
KTM_STATE.KKtmInitialized = 1
KTM_STATE.KKtmRecovering = 2
KTM_STATE.KKtmOnline = 3
KTM_STATE.KKtmRecoveryFailed = 4
KTM_STATE.KKtmOffline = 5


PP_NPAGED_LOOKASIDE_NUMBER = v_enum()
PP_NPAGED_LOOKASIDE_NUMBER.LookasideSmallIrpList = 0
PP_NPAGED_LOOKASIDE_NUMBER.LookasideMediumIrpList = 1
PP_NPAGED_LOOKASIDE_NUMBER.LookasideLargeIrpList = 2
PP_NPAGED_LOOKASIDE_NUMBER.LookasideMdlList = 3
PP_NPAGED_LOOKASIDE_NUMBER.LookasideCreateInfoList = 4
PP_NPAGED_LOOKASIDE_NUMBER.LookasideNameBufferList = 5
PP_NPAGED_LOOKASIDE_NUMBER.LookasideTwilightList = 6
PP_NPAGED_LOOKASIDE_NUMBER.LookasideCompletionList = 7
PP_NPAGED_LOOKASIDE_NUMBER.LookasideScratchBufferList = 8
PP_NPAGED_LOOKASIDE_NUMBER.LookasideMaximumList = 9


PPM_IDLE_BUCKET_TIME_TYPE = v_enum()
PPM_IDLE_BUCKET_TIME_TYPE.PpmIdleBucketTimeInQpc = 0
PPM_IDLE_BUCKET_TIME_TYPE.PpmIdleBucketTimeIn100ns = 1
PPM_IDLE_BUCKET_TIME_TYPE.PpmIdleBucketTimeMaximum = 2


PLUGPLAY_EVENT_CATEGORY = v_enum()
PLUGPLAY_EVENT_CATEGORY.HardwareProfileChangeEvent = 0
PLUGPLAY_EVENT_CATEGORY.TargetDeviceChangeEvent = 1
PLUGPLAY_EVENT_CATEGORY.DeviceClassChangeEvent = 2
PLUGPLAY_EVENT_CATEGORY.CustomDeviceEvent = 3
PLUGPLAY_EVENT_CATEGORY.DeviceInstallEvent = 4
PLUGPLAY_EVENT_CATEGORY.DeviceArrivalEvent = 5
PLUGPLAY_EVENT_CATEGORY.VetoEvent = 6
PLUGPLAY_EVENT_CATEGORY.BlockedDriverEvent = 7
PLUGPLAY_EVENT_CATEGORY.InvalidIDEvent = 8
PLUGPLAY_EVENT_CATEGORY.DevicePropertyChangeEvent = 9
PLUGPLAY_EVENT_CATEGORY.DeviceInstanceRemovalEvent = 10
PLUGPLAY_EVENT_CATEGORY.DeviceInstanceStartedEvent = 11
PLUGPLAY_EVENT_CATEGORY.MaxPlugEventCategory = 12


IO_SESSION_STATE = v_enum()
IO_SESSION_STATE.IoSessionStateCreated = 1
IO_SESSION_STATE.IoSessionStateInitialized = 2
IO_SESSION_STATE.IoSessionStateConnected = 3
IO_SESSION_STATE.IoSessionStateDisconnected = 4
IO_SESSION_STATE.IoSessionStateDisconnectedLoggedOn = 5
IO_SESSION_STATE.IoSessionStateLoggedOn = 6
IO_SESSION_STATE.IoSessionStateLoggedOff = 7
IO_SESSION_STATE.IoSessionStateTerminated = 8
IO_SESSION_STATE.IoSessionStateMax = 9


PF_FILE_ACCESS_TYPE = v_enum()
PF_FILE_ACCESS_TYPE.PfFileAccessTypeRead = 0
PF_FILE_ACCESS_TYPE.PfFileAccessTypeWrite = 1
PF_FILE_ACCESS_TYPE.PfFileAccessTypeMax = 2


ARBITER_RESULT = v_enum()
ARBITER_RESULT.ArbiterResultUndefined = -1
ARBITER_RESULT.ArbiterResultSuccess = 0
ARBITER_RESULT.ArbiterResultExternalConflict = 1
ARBITER_RESULT.ArbiterResultNullRequest = 2


MI_CFG_BITMAP_TYPE = v_enum()
MI_CFG_BITMAP_TYPE.CfgBitMapNative = 0
MI_CFG_BITMAP_TYPE.CfgBitMapWow64 = 1
MI_CFG_BITMAP_TYPE.CfgBitMapWow64NativeLow = 2
MI_CFG_BITMAP_TYPE.CfgBitMapMax = 3


POWER_REQUEST_TYPE_INTERNAL = v_enum()
POWER_REQUEST_TYPE_INTERNAL.PowerRequestDisplayRequiredInternal = 0
POWER_REQUEST_TYPE_INTERNAL.PowerRequestSystemRequiredInternal = 1
POWER_REQUEST_TYPE_INTERNAL.PowerRequestAwayModeRequiredInternal = 2
POWER_REQUEST_TYPE_INTERNAL.PowerRequestExecutionRequiredInternal = 3
POWER_REQUEST_TYPE_INTERNAL.PowerRequestPerfBoostRequiredInternal = 4
POWER_REQUEST_TYPE_INTERNAL.PowerRequestInternalInvalid = 5


POWER_ACTION = v_enum()
POWER_ACTION.PowerActionNone = 0
POWER_ACTION.PowerActionReserved = 1
POWER_ACTION.PowerActionSleep = 2
POWER_ACTION.PowerActionHibernate = 3
POWER_ACTION.PowerActionShutdown = 4
POWER_ACTION.PowerActionShutdownReset = 5
POWER_ACTION.PowerActionShutdownOff = 6
POWER_ACTION.PowerActionWarmEject = 7


ARBITER_REQUEST_SOURCE = v_enum()
ARBITER_REQUEST_SOURCE.ArbiterRequestUndefined = -1
ARBITER_REQUEST_SOURCE.ArbiterRequestLegacyReported = 0
ARBITER_REQUEST_SOURCE.ArbiterRequestHalReported = 1
ARBITER_REQUEST_SOURCE.ArbiterRequestLegacyAssigned = 2
ARBITER_REQUEST_SOURCE.ArbiterRequestPnpDetected = 3
ARBITER_REQUEST_SOURCE.ArbiterRequestPnpEnumerated = 4


PS_STD_HANDLE_STATE = v_enum()
PS_STD_HANDLE_STATE.PsNeverDuplicate = 0
PS_STD_HANDLE_STATE.PsRequestDuplicate = 1
PS_STD_HANDLE_STATE.PsAlwaysDuplicate = 2
PS_STD_HANDLE_STATE.PsMaxStdHandleStates = 3


MI_NODE_NONPAGED_POOL_BITMAP = v_enum()
MI_NODE_NONPAGED_POOL_BITMAP.NonPagedPoolLargePdeNx = 0
MI_NODE_NONPAGED_POOL_BITMAP.NonPagedPoolSmallPde = 1
MI_NODE_NONPAGED_POOL_BITMAP.NonPagedPoolPerPage = 2


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


CM_LOAD_FAILURE_TYPE = v_enum()
CM_LOAD_FAILURE_TYPE._None = 0
CM_LOAD_FAILURE_TYPE.CmInitializeHive = 1
CM_LOAD_FAILURE_TYPE.HvInitializeHive = 2
CM_LOAD_FAILURE_TYPE.HvpBuildMap = 3
CM_LOAD_FAILURE_TYPE.HvpBuildMapForLoaderHive = 4
CM_LOAD_FAILURE_TYPE.HvpInitMap = 5
CM_LOAD_FAILURE_TYPE.HvLoadHive = 6
CM_LOAD_FAILURE_TYPE.HvpMapHiveImage = 7
CM_LOAD_FAILURE_TYPE.HvpRecoverData = 8
CM_LOAD_FAILURE_TYPE.CmpValidateHiveSecurityDescriptors = 9
CM_LOAD_FAILURE_TYPE.HvpEnlistBinInMap = 10
CM_LOAD_FAILURE_TYPE.CmCheckRegistry = 11
CM_LOAD_FAILURE_TYPE.CmRegistryIO = 12
CM_LOAD_FAILURE_TYPE.CmCheckRegistry2 = 13
CM_LOAD_FAILURE_TYPE.CmpCheckKey = 14
CM_LOAD_FAILURE_TYPE.CmpCheckValueList = 15
CM_LOAD_FAILURE_TYPE.HvCheckHive = 16
CM_LOAD_FAILURE_TYPE.HvCheckBin = 17
CM_LOAD_FAILURE_TYPE.HvpGetLogEntryDirtyVector = 18
CM_LOAD_FAILURE_TYPE.HvpReadLogEntryHeader = 19
CM_LOAD_FAILURE_TYPE.HvpReadLogEntry = 20


ETW_BUFFER_STATE = v_enum()
ETW_BUFFER_STATE.EtwBufferStateFree = 0
ETW_BUFFER_STATE.EtwBufferStateGeneralLogging = 1
ETW_BUFFER_STATE.EtwBufferStateCSwitch = 2
ETW_BUFFER_STATE.EtwBufferStateFlush = 3
ETW_BUFFER_STATE.EtwBufferStateMaximum = 4


PS_ATTRIBUTE_NUM = v_enum()
PS_ATTRIBUTE_NUM.PsAttributeParentProcess = 0
PS_ATTRIBUTE_NUM.PsAttributeDebugObject = 1
PS_ATTRIBUTE_NUM.PsAttributeToken = 2
PS_ATTRIBUTE_NUM.PsAttributeClientId = 3
PS_ATTRIBUTE_NUM.PsAttributeTebAddress = 4
PS_ATTRIBUTE_NUM.PsAttributeImageName = 5
PS_ATTRIBUTE_NUM.PsAttributeImageInfo = 6
PS_ATTRIBUTE_NUM.PsAttributeMemoryReserve = 7
PS_ATTRIBUTE_NUM.PsAttributePriorityClass = 8
PS_ATTRIBUTE_NUM.PsAttributeErrorMode = 9
PS_ATTRIBUTE_NUM.PsAttributeStdHandleInfo = 10
PS_ATTRIBUTE_NUM.PsAttributeHandleList = 11
PS_ATTRIBUTE_NUM.PsAttributeGroupAffinity = 12
PS_ATTRIBUTE_NUM.PsAttributePreferredNode = 13
PS_ATTRIBUTE_NUM.PsAttributeIdealProcessor = 14
PS_ATTRIBUTE_NUM.PsAttributeUmsThread = 15
PS_ATTRIBUTE_NUM.PsAttributeMitigationOptions = 16
PS_ATTRIBUTE_NUM.PsAttributeProtectionLevel = 17
PS_ATTRIBUTE_NUM.PsAttributeMax = 18


KTIMER2_TYPE = v_enum()
KTIMER2_TYPE.KTimer2TypeMin = 0
KTIMER2_TYPE.KTimer2Plain = 0
KTIMER2_TYPE.KTimer2IdleResilient = 1
KTIMER2_TYPE.KTimer2HighResolution = 2
KTIMER2_TYPE.KTimer2NoWake = 3
KTIMER2_TYPE.KTimer2NoWakeFinite = 4
KTIMER2_TYPE.KTimer2TypeMax = 5


POWER_POLICY_DEVICE_TYPE = v_enum()
POWER_POLICY_DEVICE_TYPE.PolicyDeviceSystemButton = 0
POWER_POLICY_DEVICE_TYPE.PolicyDeviceThermalZone = 1
POWER_POLICY_DEVICE_TYPE.PolicyDeviceBattery = 2
POWER_POLICY_DEVICE_TYPE.PolicyDeviceMemory = 3
POWER_POLICY_DEVICE_TYPE.PolicyInitiatePowerActionAPI = 4
POWER_POLICY_DEVICE_TYPE.PolicySetPowerStateAPI = 5
POWER_POLICY_DEVICE_TYPE.PolicyImmediateDozeS4 = 6
POWER_POLICY_DEVICE_TYPE.PolicySystemIdle = 7
POWER_POLICY_DEVICE_TYPE.PolicyDeviceWakeAlarm = 8
POWER_POLICY_DEVICE_TYPE.PolicyDeviceFan = 9
POWER_POLICY_DEVICE_TYPE.PolicyCsBatterySaver = 10
POWER_POLICY_DEVICE_TYPE.PolicyDeviceMax = 11


WHEA_ERROR_TYPE = v_enum()
WHEA_ERROR_TYPE.WheaErrTypeProcessor = 0
WHEA_ERROR_TYPE.WheaErrTypeMemory = 1
WHEA_ERROR_TYPE.WheaErrTypePCIExpress = 2
WHEA_ERROR_TYPE.WheaErrTypeNMI = 3
WHEA_ERROR_TYPE.WheaErrTypePCIXBus = 4
WHEA_ERROR_TYPE.WheaErrTypePCIXDevice = 5
WHEA_ERROR_TYPE.WheaErrTypeGeneric = 6


PERFINFO_MM_STAT = v_enum()
PERFINFO_MM_STAT.PerfInfoMMStatNotUsed = 0
PERFINFO_MM_STAT.PerfInfoMMStatAggregatePageCombine = 1
PERFINFO_MM_STAT.PerfInfoMMStatIterationPageCombine = 2
PERFINFO_MM_STAT.PerfInfoMMStatMax = 3


WHEA_ERROR_PACKET_DATA_FORMAT = v_enum()
WHEA_ERROR_PACKET_DATA_FORMAT.WheaDataFormatIPFSalRecord = 0
WHEA_ERROR_PACKET_DATA_FORMAT.WheaDataFormatXPFMCA = 1
WHEA_ERROR_PACKET_DATA_FORMAT.WheaDataFormatMemory = 2
WHEA_ERROR_PACKET_DATA_FORMAT.WheaDataFormatPCIExpress = 3
WHEA_ERROR_PACKET_DATA_FORMAT.WheaDataFormatNMIPort = 4
WHEA_ERROR_PACKET_DATA_FORMAT.WheaDataFormatPCIXBus = 5
WHEA_ERROR_PACKET_DATA_FORMAT.WheaDataFormatPCIXDevice = 6
WHEA_ERROR_PACKET_DATA_FORMAT.WheaDataFormatGeneric = 7
WHEA_ERROR_PACKET_DATA_FORMAT.WheaDataFormatMax = 8


INTERLOCKED_RESULT = v_enum()
INTERLOCKED_RESULT.ResultNegative = 1
INTERLOCKED_RESULT.ResultZero = 0
INTERLOCKED_RESULT.ResultPositive = 2


DMA_SPEED = v_enum()
DMA_SPEED.Compatible = 0
DMA_SPEED.TypeA = 1
DMA_SPEED.TypeB = 2
DMA_SPEED.TypeC = 3
DMA_SPEED.TypeF = 4
DMA_SPEED.MaximumDmaSpeed = 5


IO_PRIORITY_HINT = v_enum()
IO_PRIORITY_HINT.IoPriorityVeryLow = 0
IO_PRIORITY_HINT.IoPriorityLow = 1
IO_PRIORITY_HINT.IoPriorityNormal = 2
IO_PRIORITY_HINT.IoPriorityHigh = 3
IO_PRIORITY_HINT.IoPriorityCritical = 4
IO_PRIORITY_HINT.MaxIoPriorityTypes = 5


SYSTEM_POWER_CONDITION = v_enum()
SYSTEM_POWER_CONDITION.PoAc = 0
SYSTEM_POWER_CONDITION.PoDc = 1
SYSTEM_POWER_CONDITION.PoHot = 2
SYSTEM_POWER_CONDITION.PoConditionMaximum = 3


KTRANSACTION_OUTCOME = v_enum()
KTRANSACTION_OUTCOME.KTxOutcomeUninitialized = 0
KTRANSACTION_OUTCOME.KTxOutcomeUndetermined = 1
KTRANSACTION_OUTCOME.KTxOutcomeCommitted = 2
KTRANSACTION_OUTCOME.KTxOutcomeAborted = 3
KTRANSACTION_OUTCOME.KTxOutcomeUnavailable = 4


KENLISTMENT_STATE = v_enum()
KENLISTMENT_STATE.KEnlistmentUninitialized = 0
KENLISTMENT_STATE.KEnlistmentActive = 256
KENLISTMENT_STATE.KEnlistmentPreparing = 257
KENLISTMENT_STATE.KEnlistmentPrepared = 258
KENLISTMENT_STATE.KEnlistmentInDoubt = 259
KENLISTMENT_STATE.KEnlistmentCommitted = 260
KENLISTMENT_STATE.KEnlistmentCommittedNotify = 261
KENLISTMENT_STATE.KEnlistmentCommitRequested = 262
KENLISTMENT_STATE.KEnlistmentAborted = 263
KENLISTMENT_STATE.KEnlistmentDelegated = 264
KENLISTMENT_STATE.KEnlistmentDelegatedDisconnected = 265
KENLISTMENT_STATE.KEnlistmentPrePreparing = 266
KENLISTMENT_STATE.KEnlistmentForgotten = 267
KENLISTMENT_STATE.KEnlistmentRecovering = 268
KENLISTMENT_STATE.KEnlistmentAborting = 269
KENLISTMENT_STATE.KEnlistmentReadOnly = 270
KENLISTMENT_STATE.KEnlistmentOutcomeUnavailable = 271
KENLISTMENT_STATE.KEnlistmentOffline = 272
KENLISTMENT_STATE.KEnlistmentPrePrepared = 273
KENLISTMENT_STATE.KEnlistmentInitialized = 274


SE_WS_APPX_SIGNATURE_ORIGIN = v_enum()
SE_WS_APPX_SIGNATURE_ORIGIN.SE_WS_APPX_SIGNATURE_ORIGIN_NOT_VALIDATED = 0
SE_WS_APPX_SIGNATURE_ORIGIN.SE_WS_APPX_SIGNATURE_ORIGIN_UNKNOWN = 1
SE_WS_APPX_SIGNATURE_ORIGIN.SE_WS_APPX_SIGNATURE_ORIGIN_APPSTORE = 2
SE_WS_APPX_SIGNATURE_ORIGIN.SE_WS_APPX_SIGNATURE_ORIGIN_WINDOWS = 3


DMA_WIDTH = v_enum()
DMA_WIDTH.Width8Bits = 0
DMA_WIDTH.Width16Bits = 1
DMA_WIDTH.Width32Bits = 2
DMA_WIDTH.Width64Bits = 3
DMA_WIDTH.WidthNoWrap = 4
DMA_WIDTH.MaximumDmaWidth = 5


EX_POOL_PRIORITY = v_enum()
EX_POOL_PRIORITY.LowPoolPriority = 0
EX_POOL_PRIORITY.LowPoolPrioritySpecialPoolOverrun = 8
EX_POOL_PRIORITY.LowPoolPrioritySpecialPoolUnderrun = 9
EX_POOL_PRIORITY.NormalPoolPriority = 16
EX_POOL_PRIORITY.NormalPoolPrioritySpecialPoolOverrun = 24
EX_POOL_PRIORITY.NormalPoolPrioritySpecialPoolUnderrun = 25
EX_POOL_PRIORITY.HighPoolPriority = 32
EX_POOL_PRIORITY.HighPoolPrioritySpecialPoolOverrun = 40
EX_POOL_PRIORITY.HighPoolPrioritySpecialPoolUnderrun = 41


DUMP_EVENTS = v_enum()
DUMP_EVENTS.DUMP_EVENT_NONE = 0
DUMP_EVENTS.DUMP_EVENT_HIBER_RESUME = 1
DUMP_EVENTS.DUMP_EVENT_HIBER_RESUME_END = 2


KINTERRUPT_POLARITY = v_enum()
KINTERRUPT_POLARITY.InterruptPolarityUnknown = 0
KINTERRUPT_POLARITY.InterruptActiveHigh = 1
KINTERRUPT_POLARITY.InterruptRisingEdge = 1
KINTERRUPT_POLARITY.InterruptActiveLow = 2
KINTERRUPT_POLARITY.InterruptFallingEdge = 2
KINTERRUPT_POLARITY.InterruptActiveBoth = 3
KINTERRUPT_POLARITY.InterruptActiveBothTriggerLow = 3
KINTERRUPT_POLARITY.InterruptActiveBothTriggerHigh = 4


PNP_VETO_TYPE = v_enum()
PNP_VETO_TYPE.PNP_VetoTypeUnknown = 0
PNP_VETO_TYPE.PNP_VetoLegacyDevice = 1
PNP_VETO_TYPE.PNP_VetoPendingClose = 2
PNP_VETO_TYPE.PNP_VetoWindowsApp = 3
PNP_VETO_TYPE.PNP_VetoWindowsService = 4
PNP_VETO_TYPE.PNP_VetoOutstandingOpen = 5
PNP_VETO_TYPE.PNP_VetoDevice = 6
PNP_VETO_TYPE.PNP_VetoDriver = 7
PNP_VETO_TYPE.PNP_VetoIllegalDeviceRequest = 8
PNP_VETO_TYPE.PNP_VetoInsufficientPower = 9
PNP_VETO_TYPE.PNP_VetoNonDisableable = 10
PNP_VETO_TYPE.PNP_VetoLegacyDriver = 11
PNP_VETO_TYPE.PNP_VetoInsufficientRights = 12


LDR_DLL_LOAD_REASON = v_enum()
LDR_DLL_LOAD_REASON.LoadReasonStaticDependency = 0
LDR_DLL_LOAD_REASON.LoadReasonStaticForwarderDependency = 1
LDR_DLL_LOAD_REASON.LoadReasonDynamicForwarderDependency = 2
LDR_DLL_LOAD_REASON.LoadReasonDelayloadDependency = 3
LDR_DLL_LOAD_REASON.LoadReasonDynamicLoad = 4
LDR_DLL_LOAD_REASON.LoadReasonAsImageLoad = 5
LDR_DLL_LOAD_REASON.LoadReasonAsDataLoad = 6
LDR_DLL_LOAD_REASON.LoadReasonUnknown = -1


KTHREAD_STATE = v_enum()
KTHREAD_STATE.Initialized = 0
KTHREAD_STATE.Ready = 1
KTHREAD_STATE.Running = 2
KTHREAD_STATE.Standby = 3
KTHREAD_STATE.Terminated = 4
KTHREAD_STATE.Waiting = 5
KTHREAD_STATE.Transition = 6
KTHREAD_STATE.DeferredReady = 7
KTHREAD_STATE.GateWaitObsolete = 8


POWER_REQUEST_TYPE = v_enum()
POWER_REQUEST_TYPE.PowerRequestDisplayRequired = 0
POWER_REQUEST_TYPE.PowerRequestSystemRequired = 1
POWER_REQUEST_TYPE.PowerRequestAwayModeRequired = 2
POWER_REQUEST_TYPE.PowerRequestExecutionRequired = 3


DEVPROP_OPERATOR = v_enum()
DEVPROP_OPERATOR.DEVPROP_OPERATOR_MODIFIER_NOT = 65536
DEVPROP_OPERATOR.DEVPROP_OPERATOR_MODIFIER_IGNORE_CASE = 131072
DEVPROP_OPERATOR.DEVPROP_OPERATOR_NONE = 0
DEVPROP_OPERATOR.DEVPROP_OPERATOR_EXISTS = 1
DEVPROP_OPERATOR.DEVPROP_OPERATOR_EQUALS = 2
DEVPROP_OPERATOR.DEVPROP_OPERATOR_NOT_EQUALS = 65538
DEVPROP_OPERATOR.DEVPROP_OPERATOR_GREATER_THAN = 3
DEVPROP_OPERATOR.DEVPROP_OPERATOR_LESS_THAN = 4
DEVPROP_OPERATOR.DEVPROP_OPERATOR_GREATER_THAN_EQUALS = 5
DEVPROP_OPERATOR.DEVPROP_OPERATOR_LESS_THAN_EQUALS = 6
DEVPROP_OPERATOR.DEVPROP_OPERATOR_EQUALS_IGNORE_CASE = 131074
DEVPROP_OPERATOR.DEVPROP_OPERATOR_NOT_EQUALS_IGNORE_CASE = 196610
DEVPROP_OPERATOR.DEVPROP_OPERATOR_BITWISE_AND = 7
DEVPROP_OPERATOR.DEVPROP_OPERATOR_BITWISE_OR = 8
DEVPROP_OPERATOR.DEVPROP_OPERATOR_BEGINS_WITH = 9
DEVPROP_OPERATOR.DEVPROP_OPERATOR_ENDS_WITH = 10
DEVPROP_OPERATOR.DEVPROP_OPERATOR_CONTAINS = 11
DEVPROP_OPERATOR.DEVPROP_OPERATOR_BEGINS_WITH_IGNORE_CASE = 131081
DEVPROP_OPERATOR.DEVPROP_OPERATOR_ENDS_WITH_IGNORE_CASE = 131082
DEVPROP_OPERATOR.DEVPROP_OPERATOR_CONTAINS_IGNORE_CASE = 131083
DEVPROP_OPERATOR.DEVPROP_OPERATOR_LIST_CONTAINS = 4096
DEVPROP_OPERATOR.DEVPROP_OPERATOR_LIST_ELEMENT_BEGINS_WITH = 8192
DEVPROP_OPERATOR.DEVPROP_OPERATOR_LIST_ELEMENT_ENDS_WITH = 12288
DEVPROP_OPERATOR.DEVPROP_OPERATOR_LIST_ELEMENT_CONTAINS = 16384
DEVPROP_OPERATOR.DEVPROP_OPERATOR_LIST_CONTAINS_IGNORE_CASE = 135168
DEVPROP_OPERATOR.DEVPROP_OPERATOR_LIST_ELEMENT_BEGINS_WITH_IGNORE_CASE = 139264
DEVPROP_OPERATOR.DEVPROP_OPERATOR_LIST_ELEMENT_ENDS_WITH_IGNORE_CASE = 143360
DEVPROP_OPERATOR.DEVPROP_OPERATOR_LIST_ELEMENT_CONTAINS_IGNORE_CASE = 147456
DEVPROP_OPERATOR.DEVPROP_OPERATOR_AND_OPEN = 1048576
DEVPROP_OPERATOR.DEVPROP_OPERATOR_AND_CLOSE = 2097152
DEVPROP_OPERATOR.DEVPROP_OPERATOR_OR_OPEN = 3145728
DEVPROP_OPERATOR.DEVPROP_OPERATOR_OR_CLOSE = 4194304
DEVPROP_OPERATOR.DEVPROP_OPERATOR_NOT_OPEN = 5242880
DEVPROP_OPERATOR.DEVPROP_OPERATOR_NOT_CLOSE = 6291456
DEVPROP_OPERATOR.DEVPROP_OPERATOR_MASK_EVAL = 4095
DEVPROP_OPERATOR.DEVPROP_OPERATOR_MASK_LIST = 61440
DEVPROP_OPERATOR.DEVPROP_OPERATOR_MASK_MODIFIER = 983040
DEVPROP_OPERATOR.DEVPROP_OPERATOR_MASK_NOT_LOGICAL = 1048575
DEVPROP_OPERATOR.DEVPROP_OPERATOR_MASK_LOGICAL = -1048576


SECURITY_IMPERSONATION_LEVEL = v_enum()
SECURITY_IMPERSONATION_LEVEL.SecurityAnonymous = 0
SECURITY_IMPERSONATION_LEVEL.SecurityIdentification = 1
SECURITY_IMPERSONATION_LEVEL.SecurityImpersonation = 2
SECURITY_IMPERSONATION_LEVEL.SecurityDelegation = 3


TOKEN_INFORMATION_CLASS = v_enum()
TOKEN_INFORMATION_CLASS.TokenUser = 1
TOKEN_INFORMATION_CLASS.TokenGroups = 2
TOKEN_INFORMATION_CLASS.TokenPrivileges = 3
TOKEN_INFORMATION_CLASS.TokenOwner = 4
TOKEN_INFORMATION_CLASS.TokenPrimaryGroup = 5
TOKEN_INFORMATION_CLASS.TokenDefaultDacl = 6
TOKEN_INFORMATION_CLASS.TokenSource = 7
TOKEN_INFORMATION_CLASS.TokenType = 8
TOKEN_INFORMATION_CLASS.TokenImpersonationLevel = 9
TOKEN_INFORMATION_CLASS.TokenStatistics = 10
TOKEN_INFORMATION_CLASS.TokenRestrictedSids = 11
TOKEN_INFORMATION_CLASS.TokenSessionId = 12
TOKEN_INFORMATION_CLASS.TokenGroupsAndPrivileges = 13
TOKEN_INFORMATION_CLASS.TokenSessionReference = 14
TOKEN_INFORMATION_CLASS.TokenSandBoxInert = 15
TOKEN_INFORMATION_CLASS.TokenAuditPolicy = 16
TOKEN_INFORMATION_CLASS.TokenOrigin = 17
TOKEN_INFORMATION_CLASS.TokenElevationType = 18
TOKEN_INFORMATION_CLASS.TokenLinkedToken = 19
TOKEN_INFORMATION_CLASS.TokenElevation = 20
TOKEN_INFORMATION_CLASS.TokenHasRestrictions = 21
TOKEN_INFORMATION_CLASS.TokenAccessInformation = 22
TOKEN_INFORMATION_CLASS.TokenVirtualizationAllowed = 23
TOKEN_INFORMATION_CLASS.TokenVirtualizationEnabled = 24
TOKEN_INFORMATION_CLASS.TokenIntegrityLevel = 25
TOKEN_INFORMATION_CLASS.TokenUIAccess = 26
TOKEN_INFORMATION_CLASS.TokenMandatoryPolicy = 27
TOKEN_INFORMATION_CLASS.TokenLogonSid = 28
TOKEN_INFORMATION_CLASS.TokenIsAppContainer = 29
TOKEN_INFORMATION_CLASS.TokenCapabilities = 30
TOKEN_INFORMATION_CLASS.TokenAppContainerSid = 31
TOKEN_INFORMATION_CLASS.TokenAppContainerNumber = 32
TOKEN_INFORMATION_CLASS.TokenUserClaimAttributes = 33
TOKEN_INFORMATION_CLASS.TokenDeviceClaimAttributes = 34
TOKEN_INFORMATION_CLASS.TokenRestrictedUserClaimAttributes = 35
TOKEN_INFORMATION_CLASS.TokenRestrictedDeviceClaimAttributes = 36
TOKEN_INFORMATION_CLASS.TokenDeviceGroups = 37
TOKEN_INFORMATION_CLASS.TokenRestrictedDeviceGroups = 38
TOKEN_INFORMATION_CLASS.TokenSecurityAttributes = 39
TOKEN_INFORMATION_CLASS.TokenIsRestricted = 40
TOKEN_INFORMATION_CLASS.TokenProcessTrustLevel = 41
TOKEN_INFORMATION_CLASS.MaxTokenInfoClass = 42


KRESOURCEMANAGER_STATE = v_enum()
KRESOURCEMANAGER_STATE.KResourceManagerUninitialized = 0
KRESOURCEMANAGER_STATE.KResourceManagerOffline = 1
KRESOURCEMANAGER_STATE.KResourceManagerOnline = 2


ALTERNATIVE_ARCHITECTURE_TYPE = v_enum()
ALTERNATIVE_ARCHITECTURE_TYPE.StandardDesign = 0
ALTERNATIVE_ARCHITECTURE_TYPE.NEC98x86 = 1
ALTERNATIVE_ARCHITECTURE_TYPE.EndAlternatives = 2


PCW_CALLBACK_TYPE = v_enum()
PCW_CALLBACK_TYPE.PcwCallbackAddCounter = 0
PCW_CALLBACK_TYPE.PcwCallbackRemoveCounter = 1
PCW_CALLBACK_TYPE.PcwCallbackEnumerateInstances = 2
PCW_CALLBACK_TYPE.PcwCallbackCollectData = 3


REQUESTER_TYPE = v_enum()
REQUESTER_TYPE.KernelRequester = 0
REQUESTER_TYPE.UserProcessRequester = 1
REQUESTER_TYPE.UserSharedServiceRequester = 2


JOBOBJECTINFOCLASS = v_enum()
JOBOBJECTINFOCLASS.JobObjectBasicAccountingInformation = 1
JOBOBJECTINFOCLASS.JobObjectBasicLimitInformation = 2
JOBOBJECTINFOCLASS.JobObjectBasicProcessIdList = 3
JOBOBJECTINFOCLASS.JobObjectBasicUIRestrictions = 4
JOBOBJECTINFOCLASS.JobObjectSecurityLimitInformation = 5
JOBOBJECTINFOCLASS.JobObjectEndOfJobTimeInformation = 6
JOBOBJECTINFOCLASS.JobObjectAssociateCompletionPortInformation = 7
JOBOBJECTINFOCLASS.JobObjectBasicAndIoAccountingInformation = 8
JOBOBJECTINFOCLASS.JobObjectExtendedLimitInformation = 9
JOBOBJECTINFOCLASS.JobObjectJobSetInformation = 10
JOBOBJECTINFOCLASS.JobObjectGroupInformation = 11
JOBOBJECTINFOCLASS.JobObjectNotificationLimitInformation = 12
JOBOBJECTINFOCLASS.JobObjectLimitViolationInformation = 13
JOBOBJECTINFOCLASS.JobObjectGroupInformationEx = 14
JOBOBJECTINFOCLASS.JobObjectCpuRateControlInformation = 15
JOBOBJECTINFOCLASS.JobObjectCompletionFilter = 16
JOBOBJECTINFOCLASS.JobObjectCompletionCounter = 17
JOBOBJECTINFOCLASS.JobObjectFreezeInformation = 18
JOBOBJECTINFOCLASS.JobObjectExtendedAccountingInformation = 19
JOBOBJECTINFOCLASS.JobObjectWakeInformation = 20
JOBOBJECTINFOCLASS.JobObjectBackgroundInformation = 21
JOBOBJECTINFOCLASS.JobObjectSchedulingRankBiasInformation = 22
JOBOBJECTINFOCLASS.JobObjectTimerVirtualizationInformation = 23
JOBOBJECTINFOCLASS.JobObjectCycleTimeNotification = 24
JOBOBJECTINFOCLASS.JobObjectClearEvent = 25
JOBOBJECTINFOCLASS.JobObjectInterferenceInformation = 26
JOBOBJECTINFOCLASS.JobObjectReserved1Information = 18
JOBOBJECTINFOCLASS.JobObjectReserved2Information = 19
JOBOBJECTINFOCLASS.JobObjectReserved3Information = 20
JOBOBJECTINFOCLASS.JobObjectReserved4Information = 21
JOBOBJECTINFOCLASS.JobObjectReserved5Information = 22
JOBOBJECTINFOCLASS.JobObjectReserved6Information = 23
JOBOBJECTINFOCLASS.JobObjectReserved7Information = 24
JOBOBJECTINFOCLASS.JobObjectReserved8Information = 25
JOBOBJECTINFOCLASS.JobObjectReserved9Information = 26
JOBOBJECTINFOCLASS.MaxJobObjectInfoClass = 27


PROC_PERF_UTILITY_TYPE = v_enum()
PROC_PERF_UTILITY_TYPE.ProcPerfUtilityTypeIncrease = 0
PROC_PERF_UTILITY_TYPE.ProcPerfUtilityTypeDecrease = 1
PROC_PERF_UTILITY_TYPE.ProcPerfUtilityTypeCoreParking = 2
PROC_PERF_UTILITY_TYPE.ProcPerfUtilityTypeMax = 3


SYSTEM_POWER_STATE = v_enum()
SYSTEM_POWER_STATE.PowerSystemUnspecified = 0
SYSTEM_POWER_STATE.PowerSystemWorking = 1
SYSTEM_POWER_STATE.PowerSystemSleeping1 = 2
SYSTEM_POWER_STATE.PowerSystemSleeping2 = 3
SYSTEM_POWER_STATE.PowerSystemSleeping3 = 4
SYSTEM_POWER_STATE.PowerSystemHibernate = 5
SYSTEM_POWER_STATE.PowerSystemShutdown = 6
SYSTEM_POWER_STATE.PowerSystemMaximum = 7


MEMORY_CACHING_TYPE_ORIG = v_enum()
MEMORY_CACHING_TYPE_ORIG.MmFrameBufferCached = 2


HAL_APIC_DESTINATION_MODE = v_enum()
HAL_APIC_DESTINATION_MODE.ApicDestinationModePhysical = 1
HAL_APIC_DESTINATION_MODE.ApicDestinationModeLogicalFlat = 2
HAL_APIC_DESTINATION_MODE.ApicDestinationModeLogicalClustered = 3
HAL_APIC_DESTINATION_MODE.ApicDestinationModeUnknown = 4


PROFILE_STATUS = v_enum()
PROFILE_STATUS.DOCK_NOTDOCKDEVICE = 0
PROFILE_STATUS.DOCK_QUIESCENT = 1
PROFILE_STATUS.DOCK_ARRIVING = 2
PROFILE_STATUS.DOCK_DEPARTING = 3
PROFILE_STATUS.DOCK_EJECTIRP_COMPLETED = 4


MM_POOL_PRIORITIES = v_enum()
MM_POOL_PRIORITIES.MmHighPriority = 0
MM_POOL_PRIORITIES.MmNormalPriority = 1
MM_POOL_PRIORITIES.MmLowPriority = 2
MM_POOL_PRIORITIES.MmMaximumPoolPriority = 3


BLOB_ID = v_enum()
BLOB_ID.BLOB_TYPE_UNKNOWN = 0
BLOB_ID.BLOB_TYPE_CONNECTION_INFO = 1
BLOB_ID.BLOB_TYPE_MESSAGE = 2
BLOB_ID.BLOB_TYPE_SECURITY_CONTEXT = 3
BLOB_ID.BLOB_TYPE_SECTION = 4
BLOB_ID.BLOB_TYPE_REGION = 5
BLOB_ID.BLOB_TYPE_VIEW = 6
BLOB_ID.BLOB_TYPE_RESERVE = 7
BLOB_ID.BLOB_TYPE_DIRECT_TRANSFER = 8
BLOB_ID.BLOB_TYPE_HANDLE_DATA = 9
BLOB_ID.BLOB_TYPE_MAX_ID = 10


WHEA_ERROR_SOURCE_STATE = v_enum()
WHEA_ERROR_SOURCE_STATE.WheaErrSrcStateStopped = 1
WHEA_ERROR_SOURCE_STATE.WheaErrSrcStateStarted = 2


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


MM_POOL_FAILURE_REASONS = v_enum()
MM_POOL_FAILURE_REASONS.MmNonPagedNoPtes = 0
MM_POOL_FAILURE_REASONS.MmPriorityTooLow = 1
MM_POOL_FAILURE_REASONS.MmNonPagedNoPagesAvailable = 2
MM_POOL_FAILURE_REASONS.MmPagedNoPtes = 3
MM_POOL_FAILURE_REASONS.MmSessionPagedNoPtes = 4
MM_POOL_FAILURE_REASONS.MmPagedNoPagesAvailable = 5
MM_POOL_FAILURE_REASONS.MmSessionPagedNoPagesAvailable = 6
MM_POOL_FAILURE_REASONS.MmPagedNoCommit = 7
MM_POOL_FAILURE_REASONS.MmSessionPagedNoCommit = 8
MM_POOL_FAILURE_REASONS.MmNonPagedNoResidentAvailable = 9
MM_POOL_FAILURE_REASONS.MmNonPagedNoCommit = 10
MM_POOL_FAILURE_REASONS.MmMaximumFailureReason = 11


BUS_QUERY_ID_TYPE = v_enum()
BUS_QUERY_ID_TYPE.BusQueryDeviceID = 0
BUS_QUERY_ID_TYPE.BusQueryHardwareIDs = 1
BUS_QUERY_ID_TYPE.BusQueryCompatibleIDs = 2
BUS_QUERY_ID_TYPE.BusQueryInstanceID = 3
BUS_QUERY_ID_TYPE.BusQueryDeviceSerialNumber = 4
BUS_QUERY_ID_TYPE.BusQueryContainerID = 5


PROC_HYPERVISOR_STATE = v_enum()
PROC_HYPERVISOR_STATE.ProcHypervisorNone = 0
PROC_HYPERVISOR_STATE.ProcHypervisorPresent = 1
PROC_HYPERVISOR_STATE.ProcHypervisorPower = 2


MM_PREEMPTIVE_TRIMS = v_enum()
MM_PREEMPTIVE_TRIMS.MmPreemptForNonPaged = 0
MM_PREEMPTIVE_TRIMS.MmPreemptForPaged = 1
MM_PREEMPTIVE_TRIMS.MmPreemptForNonPagedPriority = 2
MM_PREEMPTIVE_TRIMS.MmPreemptForPagedPriority = 3
MM_PREEMPTIVE_TRIMS.MmMaximumPreempt = 4


TRACE_INFORMATION_CLASS = v_enum()
TRACE_INFORMATION_CLASS.TraceIdClass = 0
TRACE_INFORMATION_CLASS.TraceHandleClass = 1
TRACE_INFORMATION_CLASS.TraceEnableFlagsClass = 2
TRACE_INFORMATION_CLASS.TraceEnableLevelClass = 3
TRACE_INFORMATION_CLASS.GlobalLoggerHandleClass = 4
TRACE_INFORMATION_CLASS.EventLoggerHandleClass = 5
TRACE_INFORMATION_CLASS.AllLoggerHandlesClass = 6
TRACE_INFORMATION_CLASS.TraceHandleByNameClass = 7
TRACE_INFORMATION_CLASS.LoggerEventsLostClass = 8
TRACE_INFORMATION_CLASS.TraceSessionSettingsClass = 9
TRACE_INFORMATION_CLASS.LoggerEventsLoggedClass = 10
TRACE_INFORMATION_CLASS.DiskIoNotifyRoutinesClass = 11
TRACE_INFORMATION_CLASS.TraceInformationClassReserved1 = 12
TRACE_INFORMATION_CLASS.AllPossibleNotifyRoutinesClass = 12
TRACE_INFORMATION_CLASS.FltIoNotifyRoutinesClass = 13
TRACE_INFORMATION_CLASS.TraceInformationClassReserved2 = 14
TRACE_INFORMATION_CLASS.WdfNotifyRoutinesClass = 15
TRACE_INFORMATION_CLASS.MaxTraceInformationClass = 16


WHEA_ERROR_SEVERITY = v_enum()
WHEA_ERROR_SEVERITY.WheaErrSevRecoverable = 0
WHEA_ERROR_SEVERITY.WheaErrSevFatal = 1
WHEA_ERROR_SEVERITY.WheaErrSevCorrected = 2
WHEA_ERROR_SEVERITY.WheaErrSevInformational = 3


VI_DEADLOCK_RESOURCE_TYPE = v_enum()
VI_DEADLOCK_RESOURCE_TYPE.VfDeadlockUnknown = 0
VI_DEADLOCK_RESOURCE_TYPE.VfDeadlockMutex = 1
VI_DEADLOCK_RESOURCE_TYPE.VfDeadlockMutexAbandoned = 2
VI_DEADLOCK_RESOURCE_TYPE.VfDeadlockFastMutex = 3
VI_DEADLOCK_RESOURCE_TYPE.VfDeadlockFastMutexUnsafe = 4
VI_DEADLOCK_RESOURCE_TYPE.VfDeadlockSpinLock = 5
VI_DEADLOCK_RESOURCE_TYPE.VfDeadlockInStackQueuedSpinLock = 6
VI_DEADLOCK_RESOURCE_TYPE.VfDeadlockUnusedSpinLock = 7
VI_DEADLOCK_RESOURCE_TYPE.VfDeadlockEresource = 8
VI_DEADLOCK_RESOURCE_TYPE.VfDeadlockTypeMaximum = 9


PNP_DEVICE_DELETE_TYPE = v_enum()
PNP_DEVICE_DELETE_TYPE.QueryRemoveDevice = 0
PNP_DEVICE_DELETE_TYPE.CancelRemoveDevice = 1
PNP_DEVICE_DELETE_TYPE.RemoveDevice = 2
PNP_DEVICE_DELETE_TYPE.SurpriseRemoveDevice = 3
PNP_DEVICE_DELETE_TYPE.EjectDevice = 4
PNP_DEVICE_DELETE_TYPE.RemoveFailedDevice = 5
PNP_DEVICE_DELETE_TYPE.RemoveUnstartedFailedDevice = 6
PNP_DEVICE_DELETE_TYPE.MaxDeviceDeleteType = 7


KWAIT_STATE = v_enum()
KWAIT_STATE.WaitInProgress = 0
KWAIT_STATE.WaitCommitted = 1
KWAIT_STATE.WaitAborted = 2
KWAIT_STATE.WaitSuspendInProgress = 3
KWAIT_STATE.WaitSuspended = 4
KWAIT_STATE.WaitResumeInProgress = 5
KWAIT_STATE.WaitFirstSuspendState = 3
KWAIT_STATE.WaitLastSuspendState = 5
KWAIT_STATE.MaximumWaitState = 6


OBJECT_INFORMATION_CLASS = v_enum()
OBJECT_INFORMATION_CLASS.ObjectBasicInformation = 0
OBJECT_INFORMATION_CLASS.ObjectNameInformation = 1
OBJECT_INFORMATION_CLASS.ObjectTypeInformation = 2
OBJECT_INFORMATION_CLASS.ObjectTypesInformation = 3
OBJECT_INFORMATION_CLASS.ObjectHandleFlagInformation = 4
OBJECT_INFORMATION_CLASS.ObjectSessionInformation = 5
OBJECT_INFORMATION_CLASS.MaxObjectInfoClass = 6


ARBITER_ACTION = v_enum()
ARBITER_ACTION.ArbiterActionTestAllocation = 0
ARBITER_ACTION.ArbiterActionRetestAllocation = 1
ARBITER_ACTION.ArbiterActionCommitAllocation = 2
ARBITER_ACTION.ArbiterActionRollbackAllocation = 3
ARBITER_ACTION.ArbiterActionQueryAllocatedResources = 4
ARBITER_ACTION.ArbiterActionWriteReservedResources = 5
ARBITER_ACTION.ArbiterActionQueryConflict = 6
ARBITER_ACTION.ArbiterActionQueryArbitrate = 7
ARBITER_ACTION.ArbiterActionAddReserved = 8
ARBITER_ACTION.ArbiterActionBootAllocation = 9


PROCESS_VA_TYPE = v_enum()
PROCESS_VA_TYPE.ProcessVAImage = 0
PROCESS_VA_TYPE.ProcessVASection = 1
PROCESS_VA_TYPE.ProcessVAPrivate = 2
PROCESS_VA_TYPE.ProcessVAMax = 3


HEAP_FAILURE_TYPE = v_enum()
HEAP_FAILURE_TYPE.heap_failure_internal = 0
HEAP_FAILURE_TYPE.heap_failure_unknown = 1
HEAP_FAILURE_TYPE.heap_failure_generic = 2
HEAP_FAILURE_TYPE.heap_failure_entry_corruption = 3
HEAP_FAILURE_TYPE.heap_failure_multiple_entries_corruption = 4
HEAP_FAILURE_TYPE.heap_failure_virtual_block_corruption = 5
HEAP_FAILURE_TYPE.heap_failure_buffer_overrun = 6
HEAP_FAILURE_TYPE.heap_failure_buffer_underrun = 7
HEAP_FAILURE_TYPE.heap_failure_block_not_busy = 8
HEAP_FAILURE_TYPE.heap_failure_invalid_argument = 9
HEAP_FAILURE_TYPE.heap_failure_usage_after_free = 10
HEAP_FAILURE_TYPE.heap_failure_cross_heap_operation = 11
HEAP_FAILURE_TYPE.heap_failure_freelists_corruption = 12
HEAP_FAILURE_TYPE.heap_failure_listentry_corruption = 13
HEAP_FAILURE_TYPE.heap_failure_lfh_bitmap_mismatch = 14
HEAP_FAILURE_TYPE.heap_failure_segment_lfh_bitmap_corruption = 15
HEAP_FAILURE_TYPE.heap_failure_segment_lfh_double_free = 16


MM_POOL_TYPES = v_enum()
MM_POOL_TYPES.MmNonPagedPool = 0
MM_POOL_TYPES.MmPagedPool = 1
MM_POOL_TYPES.MmSessionPagedPool = 2
MM_POOL_TYPES.MmMaximumPoolType = 3


POP_DEVICE_IDLE_TYPE = v_enum()
POP_DEVICE_IDLE_TYPE.DeviceIdleNormal = 0
POP_DEVICE_IDLE_TYPE.DeviceIdleDisk = 1


PS_WAKE_REASON = v_enum()
PS_WAKE_REASON.PsWakeReasonUser = 0
PS_WAKE_REASON.PsWakeReasonExecutionRequired = 1
PS_WAKE_REASON.PsWakeReasonKernel = 2
PS_WAKE_REASON.PsWakeReasonInstrumentation = 3
PS_WAKE_REASON.PsWakeReasonPreserveProcess = 4
PS_WAKE_REASON.PsMaxWakeReasons = 5


KTRANSACTION_STATE = v_enum()
KTRANSACTION_STATE.KTransactionUninitialized = 0
KTRANSACTION_STATE.KTransactionActive = 1
KTRANSACTION_STATE.KTransactionPreparing = 2
KTRANSACTION_STATE.KTransactionPrepared = 3
KTRANSACTION_STATE.KTransactionInDoubt = 4
KTRANSACTION_STATE.KTransactionCommitted = 5
KTRANSACTION_STATE.KTransactionAborted = 6
KTRANSACTION_STATE.KTransactionDelegated = 7
KTRANSACTION_STATE.KTransactionPrePreparing = 8
KTRANSACTION_STATE.KTransactionForgotten = 9
KTRANSACTION_STATE.KTransactionRecovering = 10
KTRANSACTION_STATE.KTransactionPrePrepared = 11


EXCEPTION_DISPOSITION = v_enum()
EXCEPTION_DISPOSITION.ExceptionContinueExecution = 0
EXCEPTION_DISPOSITION.ExceptionContinueSearch = 1
EXCEPTION_DISPOSITION.ExceptionNestedException = 2
EXCEPTION_DISPOSITION.ExceptionCollidedUnwind = 3


UoWActionType = v_enum()
UoWActionType.UoWAddThisKey = 0
UoWActionType.UoWAddChildKey = 1
UoWActionType.UoWDeleteThisKey = 2
UoWActionType.UoWDeleteChildKey = 3
UoWActionType.UoWSetValueNew = 4
UoWActionType.UoWSetValueExisting = 5
UoWActionType.UoWDeleteValue = 6
UoWActionType.UoWSetKeyUserFlags = 7
UoWActionType.UoWSetLastWriteTime = 8
UoWActionType.UoWSetSecurityDescriptor = 9
UoWActionType.UoWRenameSubKey = 10
UoWActionType.UoWRenameOldSubKey = 11
UoWActionType.UoWRenameNewSubKey = 12
UoWActionType.UoWIsolation = 13
UoWActionType.UoWInvalid = 14


SECURITY_OPERATION_CODE = v_enum()
SECURITY_OPERATION_CODE.SetSecurityDescriptor = 0
SECURITY_OPERATION_CODE.QuerySecurityDescriptor = 1
SECURITY_OPERATION_CODE.DeleteSecurityDescriptor = 2
SECURITY_OPERATION_CODE.AssignSecurityDescriptor = 3


IRPLOCK = v_enum()
IRPLOCK.IRPLOCK_CANCELABLE = 0
IRPLOCK.IRPLOCK_CANCEL_STARTED = 1
IRPLOCK.IRPLOCK_CANCEL_COMPLETE = 2
IRPLOCK.IRPLOCK_COMPLETED = 3


FS_FILTER_STREAM_FO_NOTIFICATION_TYPE = v_enum()
FS_FILTER_STREAM_FO_NOTIFICATION_TYPE.NotifyTypeCreate = 0
FS_FILTER_STREAM_FO_NOTIFICATION_TYPE.NotifyTypeRetired = 1


FUNCTION_TABLE_TYPE = v_enum()
FUNCTION_TABLE_TYPE.RF_SORTED = 0
FUNCTION_TABLE_TYPE.RF_UNSORTED = 1
FUNCTION_TABLE_TYPE.RF_CALLBACK = 2
FUNCTION_TABLE_TYPE.RF_KERNEL_DYNAMIC = 3


DEVICE_USAGE_NOTIFICATION_TYPE = v_enum()
DEVICE_USAGE_NOTIFICATION_TYPE.DeviceUsageTypeUndefined = 0
DEVICE_USAGE_NOTIFICATION_TYPE.DeviceUsageTypePaging = 1
DEVICE_USAGE_NOTIFICATION_TYPE.DeviceUsageTypeHibernation = 2
DEVICE_USAGE_NOTIFICATION_TYPE.DeviceUsageTypeDumpFile = 3
DEVICE_USAGE_NOTIFICATION_TYPE.DeviceUsageTypeBoot = 4
DEVICE_USAGE_NOTIFICATION_TYPE.DeviceUsageTypePostDisplay = 5


ETW_HEADER_TYPE = v_enum()
ETW_HEADER_TYPE.EtwHeaderTypeNative = 0
ETW_HEADER_TYPE.EtwHeaderTypeWow = 1
ETW_HEADER_TYPE.EtwHeaderTypeMax = 2


INTERFACE_TYPE = v_enum()
INTERFACE_TYPE.InterfaceTypeUndefined = -1
INTERFACE_TYPE.Internal = 0
INTERFACE_TYPE.Isa = 1
INTERFACE_TYPE.Eisa = 2
INTERFACE_TYPE.MicroChannel = 3
INTERFACE_TYPE.TurboChannel = 4
INTERFACE_TYPE.PCIBus = 5
INTERFACE_TYPE.VMEBus = 6
INTERFACE_TYPE.NuBus = 7
INTERFACE_TYPE.PCMCIABus = 8
INTERFACE_TYPE.CBus = 9
INTERFACE_TYPE.MPIBus = 10
INTERFACE_TYPE.MPSABus = 11
INTERFACE_TYPE.ProcessorInternal = 12
INTERFACE_TYPE.InternalPowerBus = 13
INTERFACE_TYPE.PNPISABus = 14
INTERFACE_TYPE.PNPBus = 15
INTERFACE_TYPE.Vmcs = 16
INTERFACE_TYPE.ACPIBus = 17
INTERFACE_TYPE.MaximumInterfaceType = 18


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


PS_RESOURCE_TYPE = v_enum()
PS_RESOURCE_TYPE.PsResourceNonPagedPool = 0
PS_RESOURCE_TYPE.PsResourcePagedPool = 1
PS_RESOURCE_TYPE.PsResourcePageFile = 2
PS_RESOURCE_TYPE.PsResourceWorkingSet = 3
PS_RESOURCE_TYPE.PsResourceMax = 4


MM_PAGE_ACCESS_TYPE = v_enum()
MM_PAGE_ACCESS_TYPE.MmPteAccessType = 0
MM_PAGE_ACCESS_TYPE.MmCcReadAheadType = 1
MM_PAGE_ACCESS_TYPE.MmPfnRepurposeType = 2
MM_PAGE_ACCESS_TYPE.MmMaximumPageAccessType = 3


ReplacesCorHdrNumericDefines = v_enum()
ReplacesCorHdrNumericDefines.COMIMAGE_FLAGS_ILONLY = 1
ReplacesCorHdrNumericDefines.COMIMAGE_FLAGS_32BITREQUIRED = 2
ReplacesCorHdrNumericDefines.COMIMAGE_FLAGS_IL_LIBRARY = 4
ReplacesCorHdrNumericDefines.COMIMAGE_FLAGS_STRONGNAMESIGNED = 8
ReplacesCorHdrNumericDefines.COMIMAGE_FLAGS_NATIVE_ENTRYPOINT = 16
ReplacesCorHdrNumericDefines.COMIMAGE_FLAGS_TRACKDEBUGDATA = 65536
ReplacesCorHdrNumericDefines.COR_VERSION_MAJOR_V2 = 2
ReplacesCorHdrNumericDefines.COR_VERSION_MAJOR = 2
ReplacesCorHdrNumericDefines.COR_VERSION_MINOR = 5
ReplacesCorHdrNumericDefines.COR_DELETED_NAME_LENGTH = 8
ReplacesCorHdrNumericDefines.COR_VTABLEGAP_NAME_LENGTH = 8
ReplacesCorHdrNumericDefines.NATIVE_TYPE_MAX_CB = 1
ReplacesCorHdrNumericDefines.COR_ILMETHOD_SECT_SMALL_MAX_DATASIZE = 255
ReplacesCorHdrNumericDefines.IMAGE_COR_MIH_METHODRVA = 1
ReplacesCorHdrNumericDefines.IMAGE_COR_MIH_EHRVA = 2
ReplacesCorHdrNumericDefines.IMAGE_COR_MIH_BASICBLOCK = 8
ReplacesCorHdrNumericDefines.COR_VTABLE_32BIT = 1
ReplacesCorHdrNumericDefines.COR_VTABLE_64BIT = 2
ReplacesCorHdrNumericDefines.COR_VTABLE_FROM_UNMANAGED = 4
ReplacesCorHdrNumericDefines.COR_VTABLE_FROM_UNMANAGED_RETAIN_APPDOMAIN = 8
ReplacesCorHdrNumericDefines.COR_VTABLE_CALL_MOST_DERIVED = 16
ReplacesCorHdrNumericDefines.IMAGE_COR_EATJ_THUNK_SIZE = 32
ReplacesCorHdrNumericDefines.MAX_CLASS_NAME = 1024
ReplacesCorHdrNumericDefines.MAX_PACKAGE_NAME = 1024


MI_DYNAMICBASE_BITMAP = v_enum()
MI_DYNAMICBASE_BITMAP.DynamicBaseBitMap32 = 0
MI_DYNAMICBASE_BITMAP.DynamicBaseBitMap64Low = 1
MI_DYNAMICBASE_BITMAP.DynamicBaseBitMap64High = 2
MI_DYNAMICBASE_BITMAP.LastDynamicBaseBitMap = 3


HSTORAGE_TYPE = v_enum()
HSTORAGE_TYPE.Stable = 0
HSTORAGE_TYPE.Volatile = 1
HSTORAGE_TYPE.InvalidStorage = 2


MI_PFN_CACHE_ATTRIBUTE = v_enum()
MI_PFN_CACHE_ATTRIBUTE.MiNonCached = 0
MI_PFN_CACHE_ATTRIBUTE.MiCached = 1
MI_PFN_CACHE_ATTRIBUTE.MiWriteCombined = 2
MI_PFN_CACHE_ATTRIBUTE.MiNotMapped = 3


CREATE_FILE_TYPE = v_enum()
CREATE_FILE_TYPE.CreateFileTypeNone = 0
CREATE_FILE_TYPE.CreateFileTypeNamedPipe = 1
CREATE_FILE_TYPE.CreateFileTypeMailslot = 2


POLICY_AUDIT_EVENT_TYPE = v_enum()
POLICY_AUDIT_EVENT_TYPE.AuditCategorySystem = 0
POLICY_AUDIT_EVENT_TYPE.AuditCategoryLogon = 1
POLICY_AUDIT_EVENT_TYPE.AuditCategoryObjectAccess = 2
POLICY_AUDIT_EVENT_TYPE.AuditCategoryPrivilegeUse = 3
POLICY_AUDIT_EVENT_TYPE.AuditCategoryDetailedTracking = 4
POLICY_AUDIT_EVENT_TYPE.AuditCategoryPolicyChange = 5
POLICY_AUDIT_EVENT_TYPE.AuditCategoryAccountManagement = 6
POLICY_AUDIT_EVENT_TYPE.AuditCategoryDirectoryServiceAccess = 7
POLICY_AUDIT_EVENT_TYPE.AuditCategoryAccountLogon = 8


CM_DIRTY_VECTOR_OPERATION = v_enum()
CM_DIRTY_VECTOR_OPERATION.DirtyVectorModified = 0
CM_DIRTY_VECTOR_OPERATION.DirtyDataCaptureStart = 1
CM_DIRTY_VECTOR_OPERATION.DirtyDataCaptureEnd = 2


ETW_RT_EVENT_LOSS = v_enum()
ETW_RT_EVENT_LOSS.EtwRtEventNoLoss = 0
ETW_RT_EVENT_LOSS.EtwRtEventLost = 1
ETW_RT_EVENT_LOSS.EtwRtBufferLost = 2
ETW_RT_EVENT_LOSS.EtwRtBackupLost = 3
ETW_RT_EVENT_LOSS.EtwRtEventLossMax = 4


DEVICE_WAKE_DEPTH = v_enum()
DEVICE_WAKE_DEPTH.DeviceWakeDepthNotWakeable = 0
DEVICE_WAKE_DEPTH.DeviceWakeDepthD0 = 1
DEVICE_WAKE_DEPTH.DeviceWakeDepthD1 = 2
DEVICE_WAKE_DEPTH.DeviceWakeDepthD2 = 3
DEVICE_WAKE_DEPTH.DeviceWakeDepthD3hot = 4
DEVICE_WAKE_DEPTH.DeviceWakeDepthD3cold = 5
DEVICE_WAKE_DEPTH.DeviceWakeDepthMaximum = 6


POP_IO_STATUS = v_enum()
POP_IO_STATUS.IoReady = 0
POP_IO_STATUS.IoPending = 1
POP_IO_STATUS.IoDone = 2


WOW64_SHARED_INFORMATION = v_enum()
WOW64_SHARED_INFORMATION.SharedNtdll32LdrInitializeThunk = 0
WOW64_SHARED_INFORMATION.SharedNtdll32KiUserExceptionDispatcher = 1
WOW64_SHARED_INFORMATION.SharedNtdll32KiUserApcDispatcher = 2
WOW64_SHARED_INFORMATION.SharedNtdll32KiUserCallbackDispatcher = 3
WOW64_SHARED_INFORMATION.SharedNtdll32ExpInterlockedPopEntrySListFault = 4
WOW64_SHARED_INFORMATION.SharedNtdll32ExpInterlockedPopEntrySListResume = 5
WOW64_SHARED_INFORMATION.SharedNtdll32ExpInterlockedPopEntrySListEnd = 6
WOW64_SHARED_INFORMATION.SharedNtdll32RtlUserThreadStart = 7
WOW64_SHARED_INFORMATION.SharedNtdll32pQueryProcessDebugInformationRemote = 8
WOW64_SHARED_INFORMATION.SharedNtdll32BaseAddress = 9
WOW64_SHARED_INFORMATION.SharedNtdll32LdrSystemDllInitBlock = 10
WOW64_SHARED_INFORMATION.Wow64SharedPageEntriesCount = 11


PNP_DEVICE_ACTION_REQUEST = v_enum()
PNP_DEVICE_ACTION_REQUEST.AssignResources = 0
PNP_DEVICE_ACTION_REQUEST.ClearDeviceProblem = 1
PNP_DEVICE_ACTION_REQUEST.ClearProblem = 2
PNP_DEVICE_ACTION_REQUEST.ClearEjectProblem = 3
PNP_DEVICE_ACTION_REQUEST.HaltDevice = 4
PNP_DEVICE_ACTION_REQUEST.QueryPowerRelations = 5
PNP_DEVICE_ACTION_REQUEST.Rebalance = 6
PNP_DEVICE_ACTION_REQUEST.ReenumerateBootDevices = 7
PNP_DEVICE_ACTION_REQUEST.ReenumerateDeviceOnly = 8
PNP_DEVICE_ACTION_REQUEST.ReenumerateDeviceTree = 9
PNP_DEVICE_ACTION_REQUEST.ReenumerateRootDevices = 10
PNP_DEVICE_ACTION_REQUEST.RequeryDeviceState = 11
PNP_DEVICE_ACTION_REQUEST.ResetDevice = 12
PNP_DEVICE_ACTION_REQUEST.ResourceRequirementsChanged = 13
PNP_DEVICE_ACTION_REQUEST.RestartEnumeration = 14
PNP_DEVICE_ACTION_REQUEST.SetDeviceProblem = 15
PNP_DEVICE_ACTION_REQUEST.StartDevice = 16
PNP_DEVICE_ACTION_REQUEST.StartSystemDevicesPass0 = 17
PNP_DEVICE_ACTION_REQUEST.StartSystemDevicesPass1 = 18
PNP_DEVICE_ACTION_REQUEST.NotifyTransportRelationsChange = 19
PNP_DEVICE_ACTION_REQUEST.NotifyEjectionRelationsChange = 20
PNP_DEVICE_ACTION_REQUEST.ConfigureDevice = 21
PNP_DEVICE_ACTION_REQUEST.ConfigureDeviceClass = 22
PNP_DEVICE_ACTION_REQUEST.ConfigureDeviceExtensions = 23


DEVICE_RELATION_TYPE = v_enum()
DEVICE_RELATION_TYPE.BusRelations = 0
DEVICE_RELATION_TYPE.EjectionRelations = 1
DEVICE_RELATION_TYPE.PowerRelations = 2
DEVICE_RELATION_TYPE.RemovalRelations = 3
DEVICE_RELATION_TYPE.TargetDeviceRelation = 4
DEVICE_RELATION_TYPE.SingleBusRelations = 5
DEVICE_RELATION_TYPE.TransportRelations = 6


FILE_INFORMATION_CLASS = v_enum()
FILE_INFORMATION_CLASS.FileDirectoryInformation = 1
FILE_INFORMATION_CLASS.FileFullDirectoryInformation = 2
FILE_INFORMATION_CLASS.FileBothDirectoryInformation = 3
FILE_INFORMATION_CLASS.FileBasicInformation = 4
FILE_INFORMATION_CLASS.FileStandardInformation = 5
FILE_INFORMATION_CLASS.FileInternalInformation = 6
FILE_INFORMATION_CLASS.FileEaInformation = 7
FILE_INFORMATION_CLASS.FileAccessInformation = 8
FILE_INFORMATION_CLASS.FileNameInformation = 9
FILE_INFORMATION_CLASS.FileRenameInformation = 10
FILE_INFORMATION_CLASS.FileLinkInformation = 11
FILE_INFORMATION_CLASS.FileNamesInformation = 12
FILE_INFORMATION_CLASS.FileDispositionInformation = 13
FILE_INFORMATION_CLASS.FilePositionInformation = 14
FILE_INFORMATION_CLASS.FileFullEaInformation = 15
FILE_INFORMATION_CLASS.FileModeInformation = 16
FILE_INFORMATION_CLASS.FileAlignmentInformation = 17
FILE_INFORMATION_CLASS.FileAllInformation = 18
FILE_INFORMATION_CLASS.FileAllocationInformation = 19
FILE_INFORMATION_CLASS.FileEndOfFileInformation = 20
FILE_INFORMATION_CLASS.FileAlternateNameInformation = 21
FILE_INFORMATION_CLASS.FileStreamInformation = 22
FILE_INFORMATION_CLASS.FilePipeInformation = 23
FILE_INFORMATION_CLASS.FilePipeLocalInformation = 24
FILE_INFORMATION_CLASS.FilePipeRemoteInformation = 25
FILE_INFORMATION_CLASS.FileMailslotQueryInformation = 26
FILE_INFORMATION_CLASS.FileMailslotSetInformation = 27
FILE_INFORMATION_CLASS.FileCompressionInformation = 28
FILE_INFORMATION_CLASS.FileObjectIdInformation = 29
FILE_INFORMATION_CLASS.FileCompletionInformation = 30
FILE_INFORMATION_CLASS.FileMoveClusterInformation = 31
FILE_INFORMATION_CLASS.FileQuotaInformation = 32
FILE_INFORMATION_CLASS.FileReparsePointInformation = 33
FILE_INFORMATION_CLASS.FileNetworkOpenInformation = 34
FILE_INFORMATION_CLASS.FileAttributeTagInformation = 35
FILE_INFORMATION_CLASS.FileTrackingInformation = 36
FILE_INFORMATION_CLASS.FileIdBothDirectoryInformation = 37
FILE_INFORMATION_CLASS.FileIdFullDirectoryInformation = 38
FILE_INFORMATION_CLASS.FileValidDataLengthInformation = 39
FILE_INFORMATION_CLASS.FileShortNameInformation = 40
FILE_INFORMATION_CLASS.FileIoCompletionNotificationInformation = 41
FILE_INFORMATION_CLASS.FileIoStatusBlockRangeInformation = 42
FILE_INFORMATION_CLASS.FileIoPriorityHintInformation = 43
FILE_INFORMATION_CLASS.FileSfioReserveInformation = 44
FILE_INFORMATION_CLASS.FileSfioVolumeInformation = 45
FILE_INFORMATION_CLASS.FileHardLinkInformation = 46
FILE_INFORMATION_CLASS.FileProcessIdsUsingFileInformation = 47
FILE_INFORMATION_CLASS.FileNormalizedNameInformation = 48
FILE_INFORMATION_CLASS.FileNetworkPhysicalNameInformation = 49
FILE_INFORMATION_CLASS.FileIdGlobalTxDirectoryInformation = 50
FILE_INFORMATION_CLASS.FileIsRemoteDeviceInformation = 51
FILE_INFORMATION_CLASS.FileUnusedInformation = 52
FILE_INFORMATION_CLASS.FileNumaNodeInformation = 53
FILE_INFORMATION_CLASS.FileStandardLinkInformation = 54
FILE_INFORMATION_CLASS.FileRemoteProtocolInformation = 55
FILE_INFORMATION_CLASS.FileRenameInformationBypassAccessCheck = 56
FILE_INFORMATION_CLASS.FileLinkInformationBypassAccessCheck = 57
FILE_INFORMATION_CLASS.FileVolumeNameInformation = 58
FILE_INFORMATION_CLASS.FileIdInformation = 59
FILE_INFORMATION_CLASS.FileIdExtdDirectoryInformation = 60
FILE_INFORMATION_CLASS.FileReplaceCompletionInformation = 61
FILE_INFORMATION_CLASS.FileHardLinkFullIdInformation = 62
FILE_INFORMATION_CLASS.FileIdExtdBothDirectoryInformation = 63
FILE_INFORMATION_CLASS.FileMaximumInformation = 64


DEVICE_POWER_STATE = v_enum()
DEVICE_POWER_STATE.PowerDeviceUnspecified = 0
DEVICE_POWER_STATE.PowerDeviceD0 = 1
DEVICE_POWER_STATE.PowerDeviceD1 = 2
DEVICE_POWER_STATE.PowerDeviceD2 = 3
DEVICE_POWER_STATE.PowerDeviceD3 = 4
DEVICE_POWER_STATE.PowerDeviceMaximum = 5


MEMORY_CACHING_TYPE = v_enum()
MEMORY_CACHING_TYPE.MmNonCached = 0
MEMORY_CACHING_TYPE.MmCached = 1
MEMORY_CACHING_TYPE.MmWriteCombined = 2
MEMORY_CACHING_TYPE.MmHardwareCoherentCached = 3
MEMORY_CACHING_TYPE.MmNonCachedUnordered = 4
MEMORY_CACHING_TYPE.MmUSWCCached = 5
MEMORY_CACHING_TYPE.MmMaximumCacheType = 6


NT_PRODUCT_TYPE = v_enum()
NT_PRODUCT_TYPE.NtProductWinNt = 1
NT_PRODUCT_TYPE.NtProductLanManNt = 2
NT_PRODUCT_TYPE.NtProductServer = 3


IOP_PRIORITY_HINT = v_enum()
IOP_PRIORITY_HINT.IopIoPriorityNotSet = 0
IOP_PRIORITY_HINT.IopIoPriorityVeryLow = 1
IOP_PRIORITY_HINT.IopIoPriorityLow = 2
IOP_PRIORITY_HINT.IopIoPriorityNormal = 3
IOP_PRIORITY_HINT.IopIoPriorityHigh = 4
IOP_PRIORITY_HINT.IopIoPriorityCritical = 5
IOP_PRIORITY_HINT.MaxIopIoPriorityTypes = 6


WHEA_ERROR_SOURCE_TYPE = v_enum()
WHEA_ERROR_SOURCE_TYPE.WheaErrSrcTypeMCE = 0
WHEA_ERROR_SOURCE_TYPE.WheaErrSrcTypeCMC = 1
WHEA_ERROR_SOURCE_TYPE.WheaErrSrcTypeCPE = 2
WHEA_ERROR_SOURCE_TYPE.WheaErrSrcTypeNMI = 3
WHEA_ERROR_SOURCE_TYPE.WheaErrSrcTypePCIe = 4
WHEA_ERROR_SOURCE_TYPE.WheaErrSrcTypeGeneric = 5
WHEA_ERROR_SOURCE_TYPE.WheaErrSrcTypeINIT = 6
WHEA_ERROR_SOURCE_TYPE.WheaErrSrcTypeBOOT = 7
WHEA_ERROR_SOURCE_TYPE.WheaErrSrcTypeSCIGeneric = 8
WHEA_ERROR_SOURCE_TYPE.WheaErrSrcTypeIPFMCA = 9
WHEA_ERROR_SOURCE_TYPE.WheaErrSrcTypeIPFCMC = 10
WHEA_ERROR_SOURCE_TYPE.WheaErrSrcTypeIPFCPE = 11
WHEA_ERROR_SOURCE_TYPE.WheaErrSrcTypeMax = 12


PS_CREATE_STATE = v_enum()
PS_CREATE_STATE.PsCreateInitialState = 0
PS_CREATE_STATE.PsCreateFailOnFileOpen = 1
PS_CREATE_STATE.PsCreateFailOnSectionCreate = 2
PS_CREATE_STATE.PsCreateFailExeFormat = 3
PS_CREATE_STATE.PsCreateFailMachineMismatch = 4
PS_CREATE_STATE.PsCreateFailExeName = 5
PS_CREATE_STATE.PsCreateSuccess = 6
PS_CREATE_STATE.PsCreateMaximumStates = 7


RTL_GENERIC_COMPARE_RESULTS = v_enum()
RTL_GENERIC_COMPARE_RESULTS.GenericLessThan = 0
RTL_GENERIC_COMPARE_RESULTS.GenericGreaterThan = 1
RTL_GENERIC_COMPARE_RESULTS.GenericEqual = 2


USER_ACTIVITY_PRESENCE = v_enum()
USER_ACTIVITY_PRESENCE.PowerUserPresent = 0
USER_ACTIVITY_PRESENCE.PowerUserNotPresent = 1
USER_ACTIVITY_PRESENCE.PowerUserInactive = 2
USER_ACTIVITY_PRESENCE.PowerUserMaximum = 3
USER_ACTIVITY_PRESENCE.PowerUserInvalid = 3


TP_CALLBACK_PRIORITY = v_enum()
TP_CALLBACK_PRIORITY.TP_CALLBACK_PRIORITY_HIGH = 0
TP_CALLBACK_PRIORITY.TP_CALLBACK_PRIORITY_NORMAL = 1
TP_CALLBACK_PRIORITY.TP_CALLBACK_PRIORITY_LOW = 2
TP_CALLBACK_PRIORITY.TP_CALLBACK_PRIORITY_INVALID = 3
TP_CALLBACK_PRIORITY.TP_CALLBACK_PRIORITY_COUNT = 3


FSINFOCLASS = v_enum()
FSINFOCLASS.FileFsVolumeInformation = 1
FSINFOCLASS.FileFsLabelInformation = 2
FSINFOCLASS.FileFsSizeInformation = 3
FSINFOCLASS.FileFsDeviceInformation = 4
FSINFOCLASS.FileFsAttributeInformation = 5
FSINFOCLASS.FileFsControlInformation = 6
FSINFOCLASS.FileFsFullSizeInformation = 7
FSINFOCLASS.FileFsObjectIdInformation = 8
FSINFOCLASS.FileFsDriverPathInformation = 9
FSINFOCLASS.FileFsVolumeFlagsInformation = 10
FSINFOCLASS.FileFsSectorSizeInformation = 11
FSINFOCLASS.FileFsDataCopyInformation = 12
FSINFOCLASS.FileFsMaximumInformation = 13


INTERRUPT_CONNECTION_TYPE = v_enum()
INTERRUPT_CONNECTION_TYPE.InterruptTypeControllerInput = 0
INTERRUPT_CONNECTION_TYPE.InterruptTypeXapicMessage = 1
INTERRUPT_CONNECTION_TYPE.InterruptTypeHypertransport = 2
INTERRUPT_CONNECTION_TYPE.InterruptTypeMessageRequest = 3


WORKING_SET_TYPE = v_enum()
WORKING_SET_TYPE.WorkingSetTypeUser = 0
WORKING_SET_TYPE.WorkingSetTypeSession = 1
WORKING_SET_TYPE.WorkingSetTypeSystemTypes = 2
WORKING_SET_TYPE.WorkingSetTypeSystemCache = 2
WORKING_SET_TYPE.WorkingSetTypePagedPool = 3
WORKING_SET_TYPE.WorkingSetTypeSystemPtes = 4
WORKING_SET_TYPE.WorkingSetTypeMaximum = 5


POOL_TYPE = v_enum()
POOL_TYPE.NonPagedPool = 0
POOL_TYPE.NonPagedPoolExecute = 0
POOL_TYPE.PagedPool = 1
POOL_TYPE.NonPagedPoolMustSucceed = 2
POOL_TYPE.DontUseThisType = 3
POOL_TYPE.NonPagedPoolCacheAligned = 4
POOL_TYPE.PagedPoolCacheAligned = 5
POOL_TYPE.NonPagedPoolCacheAlignedMustS = 6
POOL_TYPE.MaxPoolType = 7
POOL_TYPE.NonPagedPoolBase = 0
POOL_TYPE.NonPagedPoolBaseMustSucceed = 2
POOL_TYPE.NonPagedPoolBaseCacheAligned = 4
POOL_TYPE.NonPagedPoolBaseCacheAlignedMustS = 6
POOL_TYPE.NonPagedPoolSession = 32
POOL_TYPE.PagedPoolSession = 33
POOL_TYPE.NonPagedPoolMustSucceedSession = 34
POOL_TYPE.DontUseThisTypeSession = 35
POOL_TYPE.NonPagedPoolCacheAlignedSession = 36
POOL_TYPE.PagedPoolCacheAlignedSession = 37
POOL_TYPE.NonPagedPoolCacheAlignedMustSSession = 38
POOL_TYPE.NonPagedPoolNx = 512
POOL_TYPE.NonPagedPoolNxCacheAligned = 516
POOL_TYPE.NonPagedPoolSessionNx = 544


MODE = v_enum()
MODE.KernelMode = 0
MODE.UserMode = 1
MODE.MaximumMode = 2


DEVICE_RELATION_LEVEL = v_enum()
DEVICE_RELATION_LEVEL.DeviceRelation = 0
DEVICE_RELATION_LEVEL.Dependent = 1
DEVICE_RELATION_LEVEL.DirectDescendant = 2


FS_FILTER_SECTION_SYNC_TYPE = v_enum()
FS_FILTER_SECTION_SYNC_TYPE.SyncTypeOther = 0
FS_FILTER_SECTION_SYNC_TYPE.SyncTypeCreateSection = 1


PERFINFO_KERNELMEMORY_USAGE_TYPE = v_enum()
PERFINFO_KERNELMEMORY_USAGE_TYPE.PerfInfoMemUsagePfnMetadata = 0
PERFINFO_KERNELMEMORY_USAGE_TYPE.PerfInfoMemUsageMax = 1


FILE_OBJECT_EXTENSION_TYPE = v_enum()
FILE_OBJECT_EXTENSION_TYPE.FoExtTypeTransactionParams = 0
FILE_OBJECT_EXTENSION_TYPE.FoExtTypeInternal = 1
FILE_OBJECT_EXTENSION_TYPE.FoExtTypeIosbRange = 2
FILE_OBJECT_EXTENSION_TYPE.FoExtTypeGeneric = 3
FILE_OBJECT_EXTENSION_TYPE.FoExtTypeSfio = 4
FILE_OBJECT_EXTENSION_TYPE.FoExtTypeSymlink = 5
FILE_OBJECT_EXTENSION_TYPE.FoExtTypeOplockKey = 6
FILE_OBJECT_EXTENSION_TYPE.MaxFoExtTypes = 7


IRQ_PRIORITY = v_enum()
IRQ_PRIORITY.IrqPriorityUndefined = 0
IRQ_PRIORITY.IrqPriorityLow = 1
IRQ_PRIORITY.IrqPriorityNormal = 2
IRQ_PRIORITY.IrqPriorityHigh = 3


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


MI_SYSTEM_VA_TYPE = v_enum()
MI_SYSTEM_VA_TYPE.MiVaUnused = 0
MI_SYSTEM_VA_TYPE.MiVaSessionSpace = 1
MI_SYSTEM_VA_TYPE.MiVaProcessSpace = 2
MI_SYSTEM_VA_TYPE.MiVaBootLoaded = 3
MI_SYSTEM_VA_TYPE.MiVaPfnDatabase = 4
MI_SYSTEM_VA_TYPE.MiVaNonPagedPool = 5
MI_SYSTEM_VA_TYPE.MiVaPagedPool = 6
MI_SYSTEM_VA_TYPE.MiVaSpecialPoolPaged = 7
MI_SYSTEM_VA_TYPE.MiVaSystemCache = 8
MI_SYSTEM_VA_TYPE.MiVaSystemPtes = 9
MI_SYSTEM_VA_TYPE.MiVaHal = 10
MI_SYSTEM_VA_TYPE.MiVaSessionGlobalSpace = 11
MI_SYSTEM_VA_TYPE.MiVaDriverImages = 12
MI_SYSTEM_VA_TYPE.MiVaSpecialPoolNonPaged = 13
MI_SYSTEM_VA_TYPE.MiVaMaximumType = 14
MI_SYSTEM_VA_TYPE.MiVaSystemPtesLarge = 15


EX_BALANCE_OBJECT = v_enum()
EX_BALANCE_OBJECT.ExTimerExpiration = 0
EX_BALANCE_OBJECT.ExThreadSetManagerEvent = 1
EX_BALANCE_OBJECT.ExThreadReaperEvent = 2
EX_BALANCE_OBJECT.ExMaximumBalanceObject = 3


PROCESS_SECTION_TYPE = v_enum()
PROCESS_SECTION_TYPE.ProcessSectionData = 0
PROCESS_SECTION_TYPE.ProcessSectionImage = 1
PROCESS_SECTION_TYPE.ProcessSectionImageNx = 2
PROCESS_SECTION_TYPE.ProcessSectionPagefileBacked = 3
PROCESS_SECTION_TYPE.ProcessSectionMax = 4


LSA_FOREST_TRUST_RECORD_TYPE = v_enum()
LSA_FOREST_TRUST_RECORD_TYPE.ForestTrustTopLevelName = 0
LSA_FOREST_TRUST_RECORD_TYPE.ForestTrustTopLevelNameEx = 1
LSA_FOREST_TRUST_RECORD_TYPE.ForestTrustDomainInfo = 2
LSA_FOREST_TRUST_RECORD_TYPE.ForestTrustRecordTypeLast = 2


LDR_DDAG_STATE = v_enum()
LDR_DDAG_STATE.LdrModulesMerged = -5
LDR_DDAG_STATE.LdrModulesInitError = -4
LDR_DDAG_STATE.LdrModulesSnapError = -3
LDR_DDAG_STATE.LdrModulesUnloaded = -2
LDR_DDAG_STATE.LdrModulesUnloading = -1
LDR_DDAG_STATE.LdrModulesPlaceHolder = 0
LDR_DDAG_STATE.LdrModulesMapping = 1
LDR_DDAG_STATE.LdrModulesMapped = 2
LDR_DDAG_STATE.LdrModulesWaitingForDependencies = 3
LDR_DDAG_STATE.LdrModulesSnapping = 4
LDR_DDAG_STATE.LdrModulesSnapped = 5
LDR_DDAG_STATE.LdrModulesCondensed = 6
LDR_DDAG_STATE.LdrModulesReadyToInit = 7
LDR_DDAG_STATE.LdrModulesInitializing = 8
LDR_DDAG_STATE.LdrModulesReadyToRun = 9


KERNEL_STACK_LIMITS = v_enum()
KERNEL_STACK_LIMITS.BugcheckStackLimits = 0
KERNEL_STACK_LIMITS.DPCStackLimits = 1
KERNEL_STACK_LIMITS.ExpandedStackLimits = 2
KERNEL_STACK_LIMITS.NormalStackLimits = 3
KERNEL_STACK_LIMITS.Win32kStackLimits = 4
KERNEL_STACK_LIMITS.SwapBusyStackLimits = 5
KERNEL_STACK_LIMITS.IsrStackLimits = 6
KERNEL_STACK_LIMITS.MaximumStackLimits = 7


MI_MEMORY_HIGHLOW = v_enum()
MI_MEMORY_HIGHLOW.MiMemoryHigh = 0
MI_MEMORY_HIGHLOW.MiMemoryLow = 1
MI_MEMORY_HIGHLOW.MiMemoryHighLow = 2


DEVICE_TEXT_TYPE = v_enum()
DEVICE_TEXT_TYPE.DeviceTextDescription = 0
DEVICE_TEXT_TYPE.DeviceTextLocationInformation = 1


_unnamed_36983 = v_enum()
_unnamed_36983.KTMOH_CommitTransaction_Result = 1
_unnamed_36983.KTMOH_RollbackTransaction_Result = 2


MMLISTS = v_enum()
MMLISTS.ZeroedPageList = 0
MMLISTS.FreePageList = 1
MMLISTS.StandbyPageList = 2
MMLISTS.ModifiedPageList = 3
MMLISTS.ModifiedNoWritePageList = 4
MMLISTS.BadPageList = 5
MMLISTS.ActiveAndValid = 6
MMLISTS.TransitionPage = 7


POP_SPM_STATUS = v_enum()
POP_SPM_STATUS.PopSpmStatusUninitialized = 0
POP_SPM_STATUS.PopSpmStatusFailedNoMemory = 1
POP_SPM_STATUS.PopSpmStatusFailedNoPoliciesFound = 2
POP_SPM_STATUS.PopSpmStatusFailedToOpenExtHandle = 3
POP_SPM_STATUS.PopSpmStatusFailedToOpenIntHandle = 4
POP_SPM_STATUS.PopSpmStatusWaitingForRegistration = 5
POP_SPM_STATUS.PopSpmStatusInitialized = 6
POP_SPM_STATUS.PopSpmStatusInvalid = 7


TOKEN_TYPE = v_enum()
TOKEN_TYPE.TokenPrimary = 1
TOKEN_TYPE.TokenImpersonation = 2


HARDWARE_COUNTER_TYPE = v_enum()
HARDWARE_COUNTER_TYPE.PMCCounter = 0
HARDWARE_COUNTER_TYPE.MaxHardwareCounterType = 1


HV_CPUID_FUNCTION = v_enum()
HV_CPUID_FUNCTION.HvCpuIdFunctionVersionAndFeatures = 1
HV_CPUID_FUNCTION.HvCpuIdFunctionHvVendorAndMaxFunction = 1073741824
HV_CPUID_FUNCTION.HvCpuIdFunctionHvInterface = 1073741825
HV_CPUID_FUNCTION.HvCpuIdFunctionMsHvVersion = 1073741826
HV_CPUID_FUNCTION.HvCpuIdFunctionMsHvFeatures = 1073741827
HV_CPUID_FUNCTION.HvCpuIdFunctionMsHvEnlightenmentInformation = 1073741828
HV_CPUID_FUNCTION.HvCpuIdFunctionMsHvImplementationLimits = 1073741829
HV_CPUID_FUNCTION.HvCpuIdFunctionMsHvHardwareFeatures = 1073741830
HV_CPUID_FUNCTION.HvCpuIdFunctionMaxReserved = 1073741830


TRANSFER_TYPE = v_enum()
TRANSFER_TYPE.ReadTransfer = 0
TRANSFER_TYPE.WriteTransfer = 1
TRANSFER_TYPE.OtherTransfer = 2


KINTERRUPT_MODE = v_enum()
KINTERRUPT_MODE.LevelSensitive = 0
KINTERRUPT_MODE.Latched = 1


ETW_PERFECT_HASH_FUNCTION_TYPE = v_enum()
ETW_PERFECT_HASH_FUNCTION_TYPE.ETW_PHF_EVENT_ID = 0
ETW_PERFECT_HASH_FUNCTION_TYPE.ETW_PHF_STACK_WALK = 1
ETW_PERFECT_HASH_FUNCTION_TYPE.ETW_PHF_MAX_COUNT = 2


class KEXECUTE_OPTIONS(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.ExecuteDisable = v_uint8()


class _unnamed_28980(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.PteFrame = v_uint64()


class IO_PRIORITY_INFO(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Size = v_uint32()
        self.ThreadPriority = v_uint32()
        self.PagePriority = v_uint32()
        self.IoPriority = v_uint32()


class IOV_FORCED_PENDING_TRACE(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Irp = v_ptr64()
        self.Thread = v_ptr64()
        self.StackTrace = vstruct.VArray([ v_ptr64() for i in xrange(62) ])


class SEGMENT_OBJECT(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.BaseAddress = v_ptr64()
        self.TotalNumberOfPtes = v_uint32()
        self._pad0010 = v_bytes(size=4)
        self.SizeOfSegment = LARGE_INTEGER()
        self.NonExtendedPtes = v_uint32()
        self.ImageCommitment = v_uint32()
        self.ControlArea = v_ptr64()
        self.Subsection = v_ptr64()
        self.MmSectionFlags = v_ptr64()
        self.MmSubSectionFlags = v_ptr64()


class DUAL(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Length = v_uint32()
        self._pad0008 = v_bytes(size=4)
        self.Map = v_ptr64()
        self.SmallDir = v_ptr64()
        self.Guard = v_uint32()
        self._pad0020 = v_bytes(size=4)
        self.FreeDisplay = vstruct.VArray([ FREE_DISPLAY() for i in xrange(24) ])
        self.FreeBins = LIST_ENTRY()
        self.FreeSummary = v_uint32()
        self._pad0278 = v_bytes(size=4)


class SID(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Revision = v_uint8()
        self.SubAuthorityCount = v_uint8()
        self.IdentifierAuthority = SID_IDENTIFIER_AUTHORITY()
        self.SubAuthority = vstruct.VArray([ v_uint32() for i in xrange(1) ])


class MMPTE_HARDWARE(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Valid = v_uint64()


class _unnamed_26574(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Depth = v_uint64()
        self.Reserved = v_uint64()


class WHEA_ERROR_PACKET_V2(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Signature = v_uint32()
        self.Version = v_uint32()
        self.Length = v_uint32()
        self.Flags = WHEA_ERROR_PACKET_FLAGS()
        self.ErrorType = v_uint32()
        self.ErrorSeverity = v_uint32()
        self.ErrorSourceId = v_uint32()
        self.ErrorSourceType = v_uint32()
        self.NotifyType = GUID()
        self.Context = v_uint64()
        self.DataFormat = v_uint32()
        self.Reserved1 = v_uint32()
        self.DataOffset = v_uint32()
        self.DataLength = v_uint32()
        self.PshedDataOffset = v_uint32()
        self.PshedDataLength = v_uint32()


class CC_EXTERNAL_CACHE_INFO(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Callback = v_ptr64()
        self.DirtyPageStatistics = DIRTY_PAGE_STATISTICS()
        self.Links = LIST_ENTRY()


class GROUP_AFFINITY(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Mask = v_uint64()
        self.Group = v_uint16()
        self.Reserved = vstruct.VArray([ v_uint16() for i in xrange(3) ])


class UMS_CONTROL_BLOCK(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.UmsContext = v_ptr64()
        self.CompletionListEntry = v_ptr64()
        self.CompletionListEvent = v_ptr64()
        self.ServiceSequenceNumber = v_uint32()
        self._pad0020 = v_bytes(size=4)
        self.UmsQueue = KQUEUE()
        self.QueueEntry = LIST_ENTRY()
        self.YieldingUmsContext = v_ptr64()
        self.YieldingParam = v_ptr64()
        self.UmsTeb = v_ptr64()
        self.TebSelector = v_uint16()
        self._pad0090 = v_bytes(size=6)


class VI_VERIFIER_ISSUE(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.IssueType = v_uint64()
        self.Address = v_ptr64()
        self.Parameters = vstruct.VArray([ v_uint64() for i in xrange(2) ])


class _unnamed_31156(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.s1 = _unnamed_31214()


class DBGKD_LOAD_SYMBOLS32(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.PathNameLength = v_uint32()
        self.BaseOfDll = v_uint32()
        self.ProcessId = v_uint32()
        self.CheckSum = v_uint32()
        self.SizeOfImage = v_uint32()
        self.UnloadSymbols = v_uint8()
        self._pad0018 = v_bytes(size=3)


class WHEA_XPF_MC_BANK_DESCRIPTOR(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.BankNumber = v_uint8()
        self.ClearOnInitialization = v_uint8()
        self.StatusDataFormat = v_uint8()
        self.Flags = XPF_MC_BANK_FLAGS()
        self.ControlMsr = v_uint32()
        self.StatusMsr = v_uint32()
        self.AddressMsr = v_uint32()
        self.MiscMsr = v_uint32()
        self.ControlData = v_uint64()


class CURDIR(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.DosPath = UNICODE_STRING()
        self.Handle = v_ptr64()


class DBGKD_GET_INTERNAL_BREAKPOINT32(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.BreakpointAddress = v_uint32()
        self.Flags = v_uint32()
        self.Calls = v_uint32()
        self.MaxCallsPerPeriod = v_uint32()
        self.MinInstructions = v_uint32()
        self.MaxInstructions = v_uint32()
        self.TotalInstructions = v_uint32()


class PO_IRP_MANAGER(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.DeviceIrpQueue = PO_IRP_QUEUE()
        self.SystemIrpQueue = PO_IRP_QUEUE()


class DBGKD_MANIPULATE_STATE32(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.ApiNumber = v_uint32()
        self.ProcessorLevel = v_uint16()
        self.Processor = v_uint16()
        self.ReturnStatus = v_uint32()
        self.u = _unnamed_30376()


class ETW_BUFFER_QUEUE(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.QueueHead = v_ptr64()
        self.QueueTail = v_ptr64()
        self.QueueEntry = SINGLE_LIST_ENTRY()


class SEP_TOKEN_PRIVILEGES(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Present = v_uint64()
        self.Enabled = v_uint64()
        self.EnabledByDefault = v_uint64()


class KALPC_SECTION(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.SectionObject = v_ptr64()
        self.Size = v_uint64()
        self.HandleTable = v_ptr64()
        self.SectionHandle = v_ptr64()
        self.OwnerProcess = v_ptr64()
        self.OwnerPort = v_ptr64()
        self.u1 = _unnamed_31156()
        self.NumberOfRegions = v_uint32()
        self.RegionListHead = LIST_ENTRY()


class _unnamed_37626(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Signature = v_uint32()
        self.CheckSum = v_uint32()


class PERFINFO_GROUPMASK(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Masks = vstruct.VArray([ v_uint32() for i in xrange(8) ])


class HARDWARE_PTE(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Valid = v_uint64()


class ETW_PERF_COUNTERS(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.TotalActiveSessions = v_uint32()
        self.TotalBufferMemoryNonPagedPool = v_uint32()
        self.TotalBufferMemoryPagedPool = v_uint32()
        self.TotalGuidsEnabled = v_uint32()
        self.TotalGuidsNotEnabled = v_uint32()
        self.TotalGuidsPreEnabled = v_uint32()


class HANDLE_TABLE_ENTRY_INFO(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.AuditMask = v_uint32()


class DBGKD_WRITE_MEMORY32(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.TargetBaseAddress = v_uint32()
        self.TransferCount = v_uint32()
        self.ActualBytesWritten = v_uint32()


class POP_FX_WORK_ORDER(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.WorkItem = WORK_QUEUE_ITEM()
        self.WorkCount = v_uint32()
        self._pad0028 = v_bytes(size=4)
        self.Context = v_ptr64()
        self.WatchdogTimerInfo = v_ptr64()


class WHEA_ERROR_RECORD_SECTION_DESCRIPTOR(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.SectionOffset = v_uint32()
        self.SectionLength = v_uint32()
        self.Revision = WHEA_REVISION()
        self.ValidBits = WHEA_ERROR_RECORD_SECTION_DESCRIPTOR_VALIDBITS()
        self.Reserved = v_uint8()
        self.Flags = WHEA_ERROR_RECORD_SECTION_DESCRIPTOR_FLAGS()
        self.SectionType = GUID()
        self.FRUId = GUID()
        self.SectionSeverity = v_uint32()
        self.FRUText = vstruct.VArray([ v_uint8() for i in xrange(20) ])


class _unnamed_34547(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.ClassGuid = GUID()
        self.SymbolicLinkName = vstruct.VArray([ v_uint16() for i in xrange(1) ])
        self._pad0014 = v_bytes(size=2)


class EX_WORK_QUEUE(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.WorkPriQueue = KPRIQUEUE()
        self.Node = v_ptr64()
        self.WorkItemsProcessed = v_uint32()
        self.WorkItemsProcessedLastPass = v_uint32()
        self.ThreadCount = v_uint32()
        self.MinThreads = v_uint32()
        self.MaxThreads = v_uint32()
        self.QueueIndex = v_uint32()


class PROC_IDLE_POLICY(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.PromotePercent = v_uint8()
        self.DemotePercent = v_uint8()
        self.PromotePercentBase = v_uint8()
        self.DemotePercentBase = v_uint8()
        self.AllowScaling = v_uint8()


class PNP_DEVICE_COMPLETION_REQUEST(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.ListEntry = LIST_ENTRY()
        self.DeviceNode = v_ptr64()
        self.Context = v_ptr64()
        self.CompletionState = v_uint32()
        self.IrpPended = v_uint32()
        self.Status = v_uint32()
        self._pad0030 = v_bytes(size=4)
        self.Information = v_ptr64()
        self.ReferenceCount = v_uint32()
        self._pad0040 = v_bytes(size=4)


class CHILD_LIST(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Count = v_uint32()
        self.List = v_uint32()


class PROC_FEEDBACK_COUNTER(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.InstantaneousRead = v_ptr64()
        self.LastActualCount = v_uint64()
        self.LastReferenceCount = v_uint64()
        self.CachedValue = v_uint32()
        self._pad0020 = v_bytes(size=4)
        self.Affinitized = v_uint8()
        self.Differential = v_uint8()
        self.DisableInterrupts = v_uint8()
        self._pad0028 = v_bytes(size=5)
        self.Context = v_uint64()


class POP_FX_ACCOUNTING(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Lock = v_uint64()
        self.Active = v_uint8()
        self._pad000c = v_bytes(size=3)
        self.DripsRequiredState = v_uint32()
        self.Level = v_uint32()
        self._pad0018 = v_bytes(size=4)
        self.ActiveStamp = v_uint64()
        self.CsActiveTime = v_uint64()
        self.CriticalActiveTime = v_uint64()


class CM_PARTIAL_RESOURCE_LIST(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Version = v_uint16()
        self.Revision = v_uint16()
        self.Count = v_uint32()
        self.PartialDescriptors = vstruct.VArray([ CM_PARTIAL_RESOURCE_DESCRIPTOR() for i in xrange(1) ])


class _unnamed_31082(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.s1 = _unnamed_31084()


class DBGKD_RESTORE_BREAKPOINT(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.BreakPointHandle = v_uint32()


class PEPHANDLE(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.unused = v_uint32()


class IMAGE_SECURITY_CONTEXT(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.PageHashes = v_ptr64()


class DEVICE_CAPABILITIES(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Size = v_uint16()
        self.Version = v_uint16()
        self.DeviceD1 = v_uint32()
        self.Address = v_uint32()
        self.UINumber = v_uint32()
        self.DeviceState = vstruct.VArray([ DEVICE_POWER_STATE() for i in xrange(7) ])
        self.SystemWake = v_uint32()
        self.DeviceWake = v_uint32()
        self.D1Latency = v_uint32()
        self.D2Latency = v_uint32()
        self.D3Latency = v_uint32()


class HV_HYPERVISOR_FEATURES(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.PartitionPrivileges = HV_PARTITION_PRIVILEGE_MASK()
        self.MaxSupportedCState = v_uint32()
        self.MwaitAvailable = v_uint32()


class IOP_IRP_EXTENSION(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.ExtensionFlags = v_uint16()
        self.TypesAllocated = v_uint16()
        self.GenericExtension = vstruct.VArray([ v_uint8() for i in xrange(4) ])
        self.VerifierContext = v_ptr64()
        self.ActivityId = GUID()
        self.Timestamp = LARGE_INTEGER()


class _unnamed_34306(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Length40 = v_uint32()
        self.Alignment40 = v_uint32()
        self.MinimumAddress = LARGE_INTEGER()
        self.MaximumAddress = LARGE_INTEGER()


class TOKEN_AUDIT_POLICY(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.PerUserPolicy = vstruct.VArray([ v_uint8() for i in xrange(29) ])


class PCW_INSTANCE(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)


class VOLUME_CACHE_MAP(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.NodeTypeCode = v_uint16()
        self.NodeByteCode = v_uint16()
        self.UseCount = v_uint32()
        self.DeviceObject = v_ptr64()
        self.VolumeCacheMapLinks = LIST_ENTRY()
        self.DirtyPages = v_uint64()
        self.LogHandleContext = LOG_HANDLE_CONTEXT()
        self.Flags = v_uint32()
        self.PagesQueuedToDisk = v_uint32()
        self.LoggedPagesQueuedToDisk = v_uint32()
        self._pad00d0 = v_bytes(size=4)


class CALLBACK_OBJECT(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)


class RTL_RANGE(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Start = v_uint64()
        self.End = v_uint64()
        self.UserData = v_ptr64()
        self.Owner = v_ptr64()
        self.Attributes = v_uint8()
        self.Flags = v_uint8()
        self._pad0028 = v_bytes(size=6)


class _unnamed_35622(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.NotificationType = v_uint32()
        self._pad0008 = v_bytes(size=4)
        self.SafeToRecurse = v_uint8()
        self._pad0010 = v_bytes(size=7)


class _unnamed_35623(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Argument1 = v_ptr64()
        self.Argument2 = v_ptr64()
        self.Argument3 = v_ptr64()
        self.Argument4 = v_ptr64()
        self.Argument5 = v_ptr64()


class _unnamed_35620(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.ResourceToRelease = v_ptr64()


class _unnamed_35621(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.SyncType = v_uint32()
        self.PageProtection = v_uint32()


class EXCEPTION_RECORD64(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.ExceptionCode = v_uint32()
        self.ExceptionFlags = v_uint32()
        self.ExceptionRecord = v_uint64()
        self.ExceptionAddress = v_uint64()
        self.NumberParameters = v_uint32()
        self.unusedAlignment = v_uint32()
        self.ExceptionInformation = vstruct.VArray([ v_uint64() for i in xrange(15) ])


class SEP_LOWBOX_NUMBER_ENTRY(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.HashEntry = RTL_DYNAMIC_HASH_TABLE_ENTRY()
        self.ReferenceCount = v_uint64()
        self.PackageSid = v_ptr64()
        self.LowboxNumber = v_uint32()
        self._pad0030 = v_bytes(size=4)
        self.AtomTable = v_ptr64()


class tagSWITCH_CONTEXT_DATA(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.ullOsMaxVersionTested = v_uint64()
        self.ullContextMinimum = v_uint64()
        self.guPlatform = GUID()
        self.guMinPlatform = GUID()
        self.ulContextSource = v_uint32()
        self.ulElementCount = v_uint32()
        self.guElements = vstruct.VArray([ GUID() for i in xrange(1) ])


class KPROCESS(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Header = DISPATCHER_HEADER()
        self.ProfileListHead = LIST_ENTRY()
        self.DirectoryTableBase = v_uint64()
        self.ThreadListHead = LIST_ENTRY()
        self.ProcessLock = v_uint32()
        self.Spare0 = v_uint32()
        self.Affinity = KAFFINITY_EX()
        self.ReadyListHead = LIST_ENTRY()
        self.SwapListEntry = SINGLE_LIST_ENTRY()
        self.ActiveProcessors = KAFFINITY_EX()
        self.AutoAlignment = v_uint32()
        self.BasePriority = v_uint8()
        self.QuantumReset = v_uint8()
        self.Visited = v_uint8()
        self.Flags = KEXECUTE_OPTIONS()
        self.ThreadSeed = vstruct.VArray([ v_uint32() for i in xrange(20) ])
        self.IdealNode = vstruct.VArray([ v_uint16() for i in xrange(20) ])
        self.IdealGlobalNode = v_uint16()
        self.Spare1 = v_uint16()
        self.StackCount = KSTACK_COUNT()
        self.ProcessListEntry = LIST_ENTRY()
        self.CycleTime = v_uint64()
        self.ContextSwitches = v_uint64()
        self.SchedulingGroup = v_ptr64()
        self.FreezeCount = v_uint32()
        self.KernelTime = v_uint32()
        self.UserTime = v_uint32()
        self.LdtFreeSelectorHint = v_uint16()
        self.LdtTableLength = v_uint16()
        self.LdtSystemDescriptor = KGDTENTRY64()
        self.LdtBaseAddress = v_ptr64()
        self.LdtProcessLock = FAST_MUTEX()
        self.InstrumentationCallback = v_ptr64()


class _unnamed_29358(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.List = v_ptr64()
        self.Index = v_uint32()
        self.Cell = v_uint32()
        self.CellPoint = v_ptr64()


class DEVICE_OBJECT_POWER_EXTENSION(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.IdleCount = v_uint32()
        self.BusyCount = v_uint32()
        self.BusyReference = v_uint32()
        self.TotalBusyCount = v_uint32()
        self.ConservationIdleTime = v_uint32()
        self.PerformanceIdleTime = v_uint32()
        self.DeviceObject = v_ptr64()
        self.IdleList = LIST_ENTRY()
        self.IdleType = v_uint32()
        self.IdleState = v_uint32()
        self.CurrentState = v_uint32()
        self._pad0040 = v_bytes(size=4)
        self.Volume = LIST_ENTRY()
        self.Specific = _unnamed_29823()


class _unnamed_34241(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.CallerCompletion = v_ptr64()
        self.CallerContext = v_ptr64()
        self.CallerDevice = v_ptr64()
        self.SystemWake = v_uint8()
        self._pad0020 = v_bytes(size=7)


class THERMAL_ZONE_COUNTERS(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Temperature = v_uint32()
        self.ThrottleLimit = v_uint32()
        self.ThrottleReasons = v_uint32()


class MMPTE_LIST(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Valid = v_uint64()


class _unnamed_29356(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.CheckStack = v_ptr64()


class _unnamed_29355(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Action = v_uint32()
        self._pad0008 = v_bytes(size=4)
        self.Handle = v_ptr64()
        self.Status = v_uint32()
        self._pad0018 = v_bytes(size=4)


class _unnamed_29354(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Failure = v_uint32()
        self.Status = v_uint32()
        self.Point = v_uint32()


class HEAP_TAG_ENTRY(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Allocs = v_uint32()
        self.Frees = v_uint32()
        self.Size = v_uint64()
        self.TagIndex = v_uint16()
        self.CreatorBackTraceIndex = v_uint16()
        self.TagName = vstruct.VArray([ v_uint16() for i in xrange(24) ])
        self._pad0048 = v_bytes(size=4)


class VI_DEADLOCK_RESOURCE(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Type = v_uint32()
        self.NodeCount = v_uint32()
        self.ResourceAddress = v_ptr64()
        self.ThreadOwner = v_ptr64()
        self.ResourceList = LIST_ENTRY()
        self.HashChainList = LIST_ENTRY()
        self.StackTrace = vstruct.VArray([ v_ptr64() for i in xrange(8) ])
        self.LastAcquireTrace = vstruct.VArray([ v_ptr64() for i in xrange(8) ])
        self.LastReleaseTrace = vstruct.VArray([ v_ptr64() for i in xrange(8) ])


class PROCESSOR_IDLE_PREPARE_INFO(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Context = v_ptr64()
        self.Constraints = PROCESSOR_IDLE_CONSTRAINTS()
        self.DependencyCount = v_uint32()
        self.DependencyUsed = v_uint32()
        self.DependencyArray = v_ptr64()
        self.PlatformIdleStateIndex = v_uint32()
        self.ProcessorIdleStateIndex = v_uint32()
        self.IdleSelectFailureMask = v_uint32()
        self._pad0068 = v_bytes(size=4)


class ALPC_COMPLETION_LIST_STATE(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.u1 = _unnamed_35210()


class WHEA_ERROR_RECORD_SECTION_DESCRIPTOR_FLAGS(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Primary = v_uint32()


class TP_CALLBACK_ENVIRON_V3(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Version = v_uint32()
        self._pad0008 = v_bytes(size=4)
        self.Pool = v_ptr64()
        self.CleanupGroup = v_ptr64()
        self.CleanupGroupCancelCallback = v_ptr64()
        self.RaceDll = v_ptr64()
        self.ActivationContext = v_ptr64()
        self.FinalizationCallback = v_ptr64()
        self.u = _unnamed_25394()
        self.CallbackPriority = v_uint32()
        self.Size = v_uint32()
        self._pad0048 = v_bytes(size=4)


class WHEAP_INFO_BLOCK(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.ErrorSourceCount = v_uint32()
        self._pad0008 = v_bytes(size=4)
        self.ErrorSourceTable = v_ptr64()
        self.WorkQueue = v_ptr64()


class HEAP_PSEUDO_TAG_ENTRY(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Allocs = v_uint32()
        self.Frees = v_uint32()
        self.Size = v_uint64()


class MEMORY_ALLOCATION_DESCRIPTOR(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.ListEntry = LIST_ENTRY()
        self.MemoryType = v_uint32()
        self._pad0018 = v_bytes(size=4)
        self.BasePage = v_uint64()
        self.PageCount = v_uint64()


class MMPTE_TRANSITION(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Valid = v_uint64()


class WHEA_ERROR_PACKET_FLAGS(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.PreviousError = v_uint32()


class ARM_DBGKD_CONTROL_SET(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Continue = v_uint32()
        self.CurrentSymbolStart = v_uint32()
        self.CurrentSymbolEnd = v_uint32()


class ALPC_PROCESS_CONTEXT(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Lock = EX_PUSH_LOCK()
        self.ViewListHead = LIST_ENTRY()
        self.PagedPoolQuotaCache = v_uint64()


class DIAGNOSTIC_CONTEXT(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.CallerType = v_uint32()
        self._pad0008 = v_bytes(size=4)
        self.Process = v_ptr64()
        self.ServiceTag = v_uint32()
        self._pad0018 = v_bytes(size=4)
        self.ReasonSize = v_uint64()


class OBJECT_HANDLE_INFORMATION(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.HandleAttributes = v_uint32()
        self.GrantedAccess = v_uint32()


class PO_NOTIFY_ORDER_LEVEL(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.DeviceCount = v_uint32()
        self.ActiveCount = v_uint32()
        self.WaitSleep = LIST_ENTRY()
        self.ReadySleep = LIST_ENTRY()
        self.ReadyS0 = LIST_ENTRY()
        self.WaitS0 = LIST_ENTRY()


class MMSUPPORT_FLAGS(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.WorkingSetType = v_uint8()
        self.SessionMaster = v_uint8()
        self.MemoryPriority = v_uint8()
        self.WsleDeleted = v_uint8()


class KSPIN_LOCK_QUEUE(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Next = v_ptr64()
        self.Lock = v_ptr64()


class _unnamed_35305(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.LongFlags1 = v_uint32()


class _unnamed_35304(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.LongFlags = v_uint32()


class PROC_PERF_DOMAIN(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Link = LIST_ENTRY()
        self.Master = v_ptr64()
        self.Members = KAFFINITY_EX()
        self.ProcessorCount = v_uint32()
        self._pad00c8 = v_bytes(size=4)
        self.Processors = v_ptr64()
        self.GetFFHThrottleState = v_ptr64()
        self.BoostPolicyHandler = v_ptr64()
        self.BoostModeHandler = v_ptr64()
        self.PerfSelectionHandler = v_ptr64()
        self.PerfControlHandler = v_ptr64()
        self.MaxFrequency = v_uint32()
        self.NominalFrequency = v_uint32()
        self.MaxPercent = v_uint32()
        self.MinPerfPercent = v_uint32()
        self.MinThrottlePercent = v_uint32()
        self.Coordination = v_uint8()
        self.HardPlatformCap = v_uint8()
        self.AffinitizeControl = v_uint8()
        self._pad0110 = v_bytes(size=1)
        self.SelectedPercent = v_uint32()
        self.SelectedFrequency = v_uint32()
        self.DesiredPercent = v_uint32()
        self.MaxPolicyPercent = v_uint32()
        self.MinPolicyPercent = v_uint32()
        self.ConstrainedMaxPercent = v_uint32()
        self.ConstrainedMinPercent = v_uint32()
        self.GuaranteedPercent = v_uint32()
        self.TolerancePercent = v_uint32()
        self._pad0138 = v_bytes(size=4)
        self.SelectedState = v_uint64()
        self.Force = v_uint8()
        self._pad0148 = v_bytes(size=7)
        self.PerfChangeTime = v_uint64()
        self.PerfChangeIntervalCount = v_uint32()
        self._pad0158 = v_bytes(size=4)


class XSTATE_CONFIGURATION(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.EnabledFeatures = v_uint64()
        self.EnabledVolatileFeatures = v_uint64()
        self.Size = v_uint32()
        self.OptimizedSave = v_uint32()
        self.Features = vstruct.VArray([ XSTATE_FEATURE() for i in xrange(64) ])


class PS_CLIENT_SECURITY_CONTEXT(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.ImpersonationData = v_uint64()


class RTL_AVL_TABLE(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.BalancedRoot = RTL_BALANCED_LINKS()
        self.OrderedPointer = v_ptr64()
        self.WhichOrderedElement = v_uint32()
        self.NumberGenericTableElements = v_uint32()
        self.DepthOfTree = v_uint32()
        self._pad0038 = v_bytes(size=4)
        self.RestartKey = v_ptr64()
        self.DeleteCount = v_uint32()
        self._pad0048 = v_bytes(size=4)
        self.CompareRoutine = v_ptr64()
        self.AllocateRoutine = v_ptr64()
        self.FreeRoutine = v_ptr64()
        self.TableContext = v_ptr64()


class POP_FX_DEPENDENT(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Index = v_uint32()
        self.ProviderIndex = v_uint32()


class PROC_PERF_UTILITY(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Affinitized = v_uint32()
        self.Performance = v_uint32()
        self.Total = v_uint32()


class RTL_SPLAY_LINKS(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Parent = v_ptr64()
        self.LeftChild = v_ptr64()
        self.RightChild = v_ptr64()


class MI_LARGEPAGE_MEMORY_INFO(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.ListHead = LIST_ENTRY()
        self.ColoredPageInfoBase = v_ptr64()
        self.PagesNeedZeroing = v_uint32()
        self._pad0020 = v_bytes(size=4)


class MMSECTION_FLAGS(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.BeingDeleted = v_uint32()


class _unnamed_37412(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Mbr = _unnamed_37626()
        self._pad0010 = v_bytes(size=8)


class _unnamed_31282(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.s1 = _unnamed_31440()


class _unnamed_35280(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.RangeCount = v_uint32()
        self.SetBitCount = v_uint32()


class AUTHZBASEP_CLAIM_ATTRIBUTES_COLLECTION(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.DeviceGroupsCount = v_uint32()
        self._pad0008 = v_bytes(size=4)
        self.pDeviceGroups = v_ptr64()
        self.RestrictedDeviceGroupsCount = v_uint32()
        self._pad0018 = v_bytes(size=4)
        self.pRestrictedDeviceGroups = v_ptr64()
        self.DeviceGroupsHash = SID_AND_ATTRIBUTES_HASH()
        self.RestrictedDeviceGroupsHash = SID_AND_ATTRIBUTES_HASH()
        self.pUserSecurityAttributes = v_ptr64()
        self.pDeviceSecurityAttributes = v_ptr64()
        self.pRestrictedUserSecurityAttributes = v_ptr64()
        self.pRestrictedDeviceSecurityAttributes = v_ptr64()


class _unnamed_35283(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Context1 = v_uint32()
        self.Context2 = v_uint32()


class OWNER_ENTRY(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.OwnerThread = v_uint64()
        self.IoPriorityBoosted = v_uint32()
        self._pad0010 = v_bytes(size=4)


class _unnamed_28286(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.WhichSpace = v_uint32()
        self._pad0008 = v_bytes(size=4)
        self.Buffer = v_ptr64()
        self.Offset = v_uint32()
        self._pad0018 = v_bytes(size=4)
        self.Length = v_uint32()
        self._pad0020 = v_bytes(size=4)


class EX_PUSH_LOCK(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Locked = v_uint64()


class DEVOBJ_EXTENSION(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Type = v_uint16()
        self.Size = v_uint16()
        self._pad0008 = v_bytes(size=4)
        self.DeviceObject = v_ptr64()
        self.PowerFlags = v_uint32()
        self._pad0018 = v_bytes(size=4)
        self.Dope = v_ptr64()
        self.ExtensionFlags = v_uint32()
        self._pad0028 = v_bytes(size=4)
        self.DeviceNode = v_ptr64()
        self.AttachedTo = v_ptr64()
        self.StartIoCount = v_uint32()
        self.StartIoKey = v_uint32()
        self.StartIoFlags = v_uint32()
        self._pad0048 = v_bytes(size=4)
        self.Vpb = v_ptr64()
        self.DependencyNode = v_ptr64()
        self.VerifierContext = v_ptr64()


class _unnamed_25353(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.LowPart = v_uint32()
        self.HighPart = v_uint32()


class _unnamed_28283(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.IoResourceRequirementList = v_ptr64()


class _unnamed_31440(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.QueueType = v_uint32()


class _unnamed_27913(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.AsynchronousParameters = _unnamed_27930()


class _unnamed_27911(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.MasterIrp = v_ptr64()


class _unnamed_27916(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Overlay = _unnamed_27991()


class PNP_DEVICE_ACTION_ENTRY(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.ListEntry = LIST_ENTRY()
        self.DeviceObject = v_ptr64()
        self.RequestType = v_uint32()
        self.ReorderingBarrier = v_uint8()
        self._pad0020 = v_bytes(size=3)
        self.RequestArgument = v_uint64()
        self.CompletionEvent = v_ptr64()
        self.CompletionStatus = v_ptr64()


class _unnamed_28180(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.SecurityInformation = v_uint32()
        self._pad0008 = v_bytes(size=4)
        self.SecurityDescriptor = v_ptr64()


class OPEN_PACKET(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Type = v_uint16()
        self.Size = v_uint16()
        self._pad0008 = v_bytes(size=4)
        self.FileObject = v_ptr64()
        self.FinalStatus = v_uint32()
        self._pad0018 = v_bytes(size=4)
        self.Information = v_uint64()
        self.ParseCheck = v_uint32()
        self._pad0028 = v_bytes(size=4)
        self.RelatedFileObject = v_ptr64()
        self.OriginalAttributes = v_ptr64()
        self.AllocationSize = LARGE_INTEGER()
        self.CreateOptions = v_uint32()
        self.FileAttributes = v_uint16()
        self.ShareAccess = v_uint16()
        self.EaBuffer = v_ptr64()
        self.EaLength = v_uint32()
        self.Options = v_uint32()
        self.Disposition = v_uint32()
        self._pad0060 = v_bytes(size=4)
        self.BasicInformation = v_ptr64()
        self.NetworkInformation = v_ptr64()
        self.CreateFileType = v_uint32()
        self._pad0078 = v_bytes(size=4)
        self.MailslotOrPipeParameters = v_ptr64()
        self.Override = v_uint8()
        self.QueryOnly = v_uint8()
        self.DeleteOnly = v_uint8()
        self.FullAttributes = v_uint8()
        self._pad0088 = v_bytes(size=4)
        self.LocalFileObject = v_ptr64()
        self.InternalFlags = v_uint32()
        self.AccessMode = v_uint8()
        self._pad0098 = v_bytes(size=3)
        self.DriverCreateContext = IO_DRIVER_CREATE_CONTEXT()


class _unnamed_28360(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.SystemContext = v_uint32()
        self._pad0008 = v_bytes(size=4)
        self.Type = v_uint32()
        self._pad0010 = v_bytes(size=4)
        self.State = POWER_STATE()
        self._pad0018 = v_bytes(size=4)
        self.ShutdownType = v_uint32()
        self._pad0020 = v_bytes(size=4)


class HEAP_COUNTERS(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.TotalMemoryReserved = v_uint64()
        self.TotalMemoryCommitted = v_uint64()
        self.TotalMemoryLargeUCR = v_uint64()
        self.TotalSizeInVirtualBlocks = v_uint64()
        self.TotalSegments = v_uint32()
        self.TotalUCRs = v_uint32()
        self.CommittOps = v_uint32()
        self.DeCommitOps = v_uint32()
        self.LockAcquires = v_uint32()
        self.LockCollisions = v_uint32()
        self.CommitRate = v_uint32()
        self.DecommittRate = v_uint32()
        self.CommitFailures = v_uint32()
        self.InBlockCommitFailures = v_uint32()
        self.PollIntervalCounter = v_uint32()
        self.DecommitsSinceLastCheck = v_uint32()
        self.HeapPollInterval = v_uint32()
        self.AllocAndFreeOps = v_uint32()
        self.AllocationIndicesActive = v_uint32()
        self.InBlockDeccommits = v_uint32()
        self.InBlockDeccomitSize = v_uint64()
        self.HighWatermarkSize = v_uint64()
        self.LastPolledSize = v_uint64()


class WHEA_MEMORY_ERROR_SECTION_VALIDBITS(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.ErrorStatus = v_uint64()


class BLOB(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.ResourceList = LIST_ENTRY()
        self.u1 = _unnamed_31134()
        self.ResourceId = v_uint8()
        self.CachedReferences = v_uint16()
        self._pad0018 = v_bytes(size=4)
        self.ReferenceCount = v_uint64()
        self.Lock = EX_PUSH_LOCK()
        self._pad0030 = v_bytes(size=8)


class WORK_QUEUE_ENTRY(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.WorkQueueLinks = LIST_ENTRY()
        self.Parameters = _unnamed_30801()
        self.Function = v_uint8()
        self._pad0048 = v_bytes(size=7)


class PI_BUS_EXTENSION(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Flags = v_uint32()
        self.NumberCSNs = v_uint8()
        self._pad0008 = v_bytes(size=3)
        self.ReadDataPort = v_ptr64()
        self.DataPortMapped = v_uint8()
        self._pad0018 = v_bytes(size=7)
        self.AddressPort = v_ptr64()
        self.AddrPortMapped = v_uint8()
        self._pad0028 = v_bytes(size=7)
        self.CommandPort = v_ptr64()
        self.CmdPortMapped = v_uint8()
        self._pad0034 = v_bytes(size=3)
        self.NextSlotNumber = v_uint32()
        self.DeviceList = SINGLE_LIST_ENTRY()
        self.CardList = SINGLE_LIST_ENTRY()
        self.PhysicalBusDevice = v_ptr64()
        self.FunctionalBusDevice = v_ptr64()
        self.AttachedDevice = v_ptr64()
        self.BusNumber = v_uint32()
        self.SystemPowerState = v_uint32()
        self.DevicePowerState = v_uint32()
        self._pad0070 = v_bytes(size=4)


class MAILSLOT_CREATE_PARAMETERS(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.MailslotQuota = v_uint32()
        self.MaximumMessageSize = v_uint32()
        self.ReadTimeout = LARGE_INTEGER()
        self.TimeoutSpecified = v_uint8()
        self._pad0018 = v_bytes(size=7)


class _unnamed_28042(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.SecurityContext = v_ptr64()
        self.Options = v_uint32()
        self._pad0010 = v_bytes(size=4)
        self.Reserved = v_uint16()
        self.ShareAccess = v_uint16()
        self._pad0018 = v_bytes(size=4)
        self.Parameters = v_ptr64()


class FS_FILTER_CALLBACK_DATA(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.SizeOfFsFilterCallbackData = v_uint32()
        self.Operation = v_uint8()
        self.Reserved = v_uint8()
        self._pad0008 = v_bytes(size=2)
        self.DeviceObject = v_ptr64()
        self.FileObject = v_ptr64()
        self.Parameters = FS_FILTER_PARAMETERS()


class _unnamed_35484(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.ProgrammedTime = v_uint64()
        self.TimerInfo = v_ptr64()


class PPM_IDLE_STATE(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.DomainMembers = KAFFINITY_EX()
        self.Latency = v_uint32()
        self.BreakEvenDuration = v_uint32()
        self.Power = v_uint32()
        self.StateFlags = v_uint32()
        self.VetoAccounting = PPM_VETO_ACCOUNTING()
        self.StateType = v_uint8()
        self.InterruptsEnabled = v_uint8()
        self.Interruptible = v_uint8()
        self.ContextRetained = v_uint8()
        self.CacheCoherent = v_uint8()
        self.WakesSpuriously = v_uint8()
        self.PlatformOnly = v_uint8()
        self.NoCState = v_uint8()


class XSTATE_CONTEXT(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Mask = v_uint64()
        self.Length = v_uint32()
        self.Reserved1 = v_uint32()
        self.Area = v_ptr64()
        self.Buffer = v_ptr64()


class _unnamed_34242(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.NotifyDevice = v_ptr64()
        self.FxDeviceActivated = v_uint8()
        self._pad0010 = v_bytes(size=7)


class POP_FX_WORK_ORDER_WATCHDOG_INFO(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Timer = KTIMER()
        self.Dpc = KDPC()
        self.WorkOrder = v_ptr64()


class PROC_FEEDBACK(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Lock = v_uint64()
        self.CyclesLast = v_uint64()
        self.CyclesActive = v_uint64()
        self.Counters = vstruct.VArray([ v_ptr64() for i in xrange(2) ])
        self.LastUpdateTime = v_uint64()
        self.UnscaledTime = v_uint64()
        self.UnaccountedTime = v_uint64()
        self.ScaledTime = vstruct.VArray([ v_uint64() for i in xrange(2) ])
        self.UnaccountedKernelTime = v_uint64()
        self.PerformanceScaledKernelTime = v_uint64()
        self.UserTimeLast = v_uint32()
        self.KernelTimeLast = v_uint32()
        self.KernelTimesIndex = v_uint8()
        self._pad0070 = v_bytes(size=7)


class ACCESS_STATE(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.OperationID = LUID()
        self.SecurityEvaluated = v_uint8()
        self.GenerateAudit = v_uint8()
        self.GenerateOnClose = v_uint8()
        self.PrivilegesAllocated = v_uint8()
        self.Flags = v_uint32()
        self.RemainingDesiredAccess = v_uint32()
        self.PreviouslyGrantedAccess = v_uint32()
        self.OriginalDesiredAccess = v_uint32()
        self._pad0020 = v_bytes(size=4)
        self.SubjectSecurityContext = SECURITY_SUBJECT_CONTEXT()
        self.SecurityDescriptor = v_ptr64()
        self.AuxData = v_ptr64()
        self.Privileges = _unnamed_27604()
        self.AuditPrivileges = v_uint8()
        self._pad0080 = v_bytes(size=3)
        self.ObjectName = UNICODE_STRING()
        self.ObjectTypeName = UNICODE_STRING()


class RTL_ATOM_TABLE_REFERENCE(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.LowBoxList = LIST_ENTRY()
        self.LowBoxID = v_uint32()
        self.ReferenceCount = v_uint16()
        self.Flags = v_uint16()


class DBGKD_SWITCH_PARTITION(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Partition = v_uint32()


class TP_CALLBACK_INSTANCE(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)


class AMD64_DBGKD_CONTROL_SET(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.TraceFlag = v_uint32()
        self.Dr7 = v_uint64()
        self.CurrentSymbolStart = v_uint64()
        self.CurrentSymbolEnd = v_uint64()


class PROC_IDLE_ACCOUNTING(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.StateCount = v_uint32()
        self.TotalTransitions = v_uint32()
        self.ResetCount = v_uint32()
        self.AbortCount = v_uint32()
        self.StartTime = v_uint64()
        self.PriorIdleTime = v_uint64()
        self.TimeUnit = v_uint32()
        self._pad0028 = v_bytes(size=4)
        self.State = vstruct.VArray([ PROC_IDLE_STATE_ACCOUNTING() for i in xrange(1) ])


class MODWRITER_FLAGS(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.KeepForever = v_uint32()


class GDI_TEB_BATCH(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Offset = v_uint32()
        self._pad0008 = v_bytes(size=4)
        self.HDC = v_uint64()
        self.Buffer = vstruct.VArray([ v_uint32() for i in xrange(310) ])


class DBGKD_SET_SPECIAL_CALL32(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.SpecialCall = v_uint32()


class STRING32(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Length = v_uint16()
        self.MaximumLength = v_uint16()
        self.Buffer = v_uint32()


class DBGKD_SET_SPECIAL_CALL64(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.SpecialCall = v_uint64()


class tagSWITCH_CONTEXT_ATTRIBUTE(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.ulContextUpdateCounter = v_uint64()
        self.fAllowContextUpdate = v_uint32()
        self.fEnableTrace = v_uint32()
        self.EtwHandle = v_uint64()


class ALPC_COMMUNICATION_INFO(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.ConnectionPort = v_ptr64()
        self.ServerCommunicationPort = v_ptr64()
        self.ClientCommunicationPort = v_ptr64()
        self.CommunicationList = LIST_ENTRY()
        self.HandleTable = ALPC_HANDLE_TABLE()
        self.CloseMessage = v_ptr64()


class DBGKM_EXCEPTION32(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.ExceptionRecord = EXCEPTION_RECORD32()
        self.FirstChance = v_uint32()


class PAGEFAULT_HISTORY(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)


class ARBITER_ALLOCATION_STATE(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Start = v_uint64()
        self.End = v_uint64()
        self.CurrentMinimum = v_uint64()
        self.CurrentMaximum = v_uint64()
        self.Entry = v_ptr64()
        self.CurrentAlternative = v_ptr64()
        self.AlternativeCount = v_uint32()
        self._pad0038 = v_bytes(size=4)
        self.Alternatives = v_ptr64()
        self.Flags = v_uint16()
        self.RangeAttributes = v_uint8()
        self.RangeAvailableAttributes = v_uint8()
        self._pad0048 = v_bytes(size=4)
        self.WorkSpace = v_uint64()


class ECP_LIST(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Signature = v_uint32()
        self.Flags = v_uint32()
        self.EcpList = LIST_ENTRY()


class _unnamed_29065(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.VirtualAddress = v_ptr64()


class PEB32(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.InheritedAddressSpace = v_uint8()
        self.ReadImageFileExecOptions = v_uint8()
        self.BeingDebugged = v_uint8()
        self.BitField = v_uint8()
        self.Mutant = v_uint32()
        self.ImageBaseAddress = v_uint32()
        self.Ldr = v_uint32()
        self.ProcessParameters = v_uint32()
        self.SubSystemData = v_uint32()
        self.ProcessHeap = v_uint32()
        self.FastPebLock = v_uint32()
        self.AtlThunkSListPtr = v_uint32()
        self.IFEOKey = v_uint32()
        self.CrossProcessFlags = v_uint32()
        self.KernelCallbackTable = v_uint32()
        self.SystemReserved = vstruct.VArray([ v_uint32() for i in xrange(1) ])
        self.AtlThunkSListPtr32 = v_uint32()
        self.ApiSetMap = v_uint32()
        self.TlsExpansionCounter = v_uint32()
        self.TlsBitmap = v_uint32()
        self.TlsBitmapBits = vstruct.VArray([ v_uint32() for i in xrange(2) ])
        self.ReadOnlySharedMemoryBase = v_uint32()
        self.SparePvoid0 = v_uint32()
        self.ReadOnlyStaticServerData = v_uint32()
        self.AnsiCodePageData = v_uint32()
        self.OemCodePageData = v_uint32()
        self.UnicodeCaseTableData = v_uint32()
        self.NumberOfProcessors = v_uint32()
        self.NtGlobalFlag = v_uint32()
        self._pad0070 = v_bytes(size=4)
        self.CriticalSectionTimeout = LARGE_INTEGER()
        self.HeapSegmentReserve = v_uint32()
        self.HeapSegmentCommit = v_uint32()
        self.HeapDeCommitTotalFreeThreshold = v_uint32()
        self.HeapDeCommitFreeBlockThreshold = v_uint32()
        self.NumberOfHeaps = v_uint32()
        self.MaximumNumberOfHeaps = v_uint32()
        self.ProcessHeaps = v_uint32()
        self.GdiSharedHandleTable = v_uint32()
        self.ProcessStarterHelper = v_uint32()
        self.GdiDCAttributeList = v_uint32()
        self.LoaderLock = v_uint32()
        self.OSMajorVersion = v_uint32()
        self.OSMinorVersion = v_uint32()
        self.OSBuildNumber = v_uint16()
        self.OSCSDVersion = v_uint16()
        self.OSPlatformId = v_uint32()
        self.ImageSubsystem = v_uint32()
        self.ImageSubsystemMajorVersion = v_uint32()
        self.ImageSubsystemMinorVersion = v_uint32()
        self.ActiveProcessAffinityMask = v_uint32()
        self.GdiHandleBuffer = vstruct.VArray([ v_uint32() for i in xrange(34) ])
        self.PostProcessInitRoutine = v_uint32()
        self.TlsExpansionBitmap = v_uint32()
        self.TlsExpansionBitmapBits = vstruct.VArray([ v_uint32() for i in xrange(32) ])
        self.SessionId = v_uint32()
        self.AppCompatFlags = ULARGE_INTEGER()
        self.AppCompatFlagsUser = ULARGE_INTEGER()
        self.pShimData = v_uint32()
        self.AppCompatInfo = v_uint32()
        self.CSDVersion = STRING32()
        self.ActivationContextData = v_uint32()
        self.ProcessAssemblyStorageMap = v_uint32()
        self.SystemDefaultActivationContextData = v_uint32()
        self.SystemAssemblyStorageMap = v_uint32()
        self.MinimumStackCommit = v_uint32()
        self.FlsCallback = v_uint32()
        self.FlsListHead = LIST_ENTRY32()
        self.FlsBitmap = v_uint32()
        self.FlsBitmapBits = vstruct.VArray([ v_uint32() for i in xrange(4) ])
        self.FlsHighIndex = v_uint32()
        self.WerRegistrationData = v_uint32()
        self.WerShipAssertPtr = v_uint32()
        self.pUnused = v_uint32()
        self.pImageHeaderHash = v_uint32()
        self.TracingFlags = v_uint32()
        self._pad0248 = v_bytes(size=4)
        self.CsrServerReadOnlySharedMemoryBase = v_uint64()


class NT_TIB64(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.ExceptionList = v_uint64()
        self.StackBase = v_uint64()
        self.StackLimit = v_uint64()
        self.SubSystemTib = v_uint64()
        self.FiberData = v_uint64()
        self.ArbitraryUserPointer = v_uint64()
        self.Self = v_uint64()


class SECTION_OBJECT_POINTERS(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.DataSectionObject = v_ptr64()
        self.SharedCacheMap = v_ptr64()
        self.ImageSectionObject = v_ptr64()


class MDL(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Next = v_ptr64()
        self.Size = v_uint16()
        self.MdlFlags = v_uint16()
        self.AllocationProcessorNumber = v_uint16()
        self.Reserved = v_uint16()
        self.Process = v_ptr64()
        self.MappedSystemVa = v_ptr64()
        self.StartVa = v_ptr64()
        self.ByteCount = v_uint32()
        self.ByteOffset = v_uint32()


class _unnamed_34935(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Start = LARGE_INTEGER()
        self.Length40 = v_uint32()


class _unnamed_31211(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.s1 = _unnamed_31340()


class KTRAP_FRAME(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.P1Home = v_uint64()
        self.P2Home = v_uint64()
        self.P3Home = v_uint64()
        self.P4Home = v_uint64()
        self.P5 = v_uint64()
        self.PreviousMode = v_uint8()
        self.PreviousIrql = v_uint8()
        self.FaultIndicator = v_uint8()
        self.ExceptionActive = v_uint8()
        self.MxCsr = v_uint32()
        self.Rax = v_uint64()
        self.Rcx = v_uint64()
        self.Rdx = v_uint64()
        self.R8 = v_uint64()
        self.R9 = v_uint64()
        self.R10 = v_uint64()
        self.R11 = v_uint64()
        self.GsBase = v_uint64()
        self.Xmm0 = M128A()
        self.Xmm1 = M128A()
        self.Xmm2 = M128A()
        self.Xmm3 = M128A()
        self.Xmm4 = M128A()
        self.Xmm5 = M128A()
        self.FaultAddress = v_uint64()
        self.Dr0 = v_uint64()
        self.Dr1 = v_uint64()
        self.Dr2 = v_uint64()
        self.Dr3 = v_uint64()
        self.Dr6 = v_uint64()
        self.Dr7 = v_uint64()
        self.DebugControl = v_uint64()
        self.LastBranchToRip = v_uint64()
        self.LastBranchFromRip = v_uint64()
        self.LastExceptionToRip = v_uint64()
        self.LastExceptionFromRip = v_uint64()
        self.SegDs = v_uint16()
        self.SegEs = v_uint16()
        self.SegFs = v_uint16()
        self.SegGs = v_uint16()
        self.TrapFrame = v_uint64()
        self.Rbx = v_uint64()
        self.Rdi = v_uint64()
        self.Rsi = v_uint64()
        self.Rbp = v_uint64()
        self.ErrorCode = v_uint64()
        self.Rip = v_uint64()
        self.SegCs = v_uint16()
        self.Fill0 = v_uint8()
        self.Logging = v_uint8()
        self.Fill1 = vstruct.VArray([ v_uint16() for i in xrange(2) ])
        self.EFlags = v_uint32()
        self.Fill2 = v_uint32()
        self.Rsp = v_uint64()
        self.SegSs = v_uint16()
        self.Fill3 = v_uint16()
        self.Fill4 = v_uint32()


class _unnamed_34931(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.DataSize = v_uint32()
        self.Reserved1 = v_uint32()
        self.Reserved2 = v_uint32()


class CM_INDEX_HINT_BLOCK(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Count = v_uint32()
        self.HashKey = vstruct.VArray([ v_uint32() for i in xrange(1) ])


class _unnamed_31214(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Internal = v_uint32()


class THERMAL_POLICY(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Version = v_uint32()
        self.WaitForUpdate = v_uint8()
        self.Hibernate = v_uint8()
        self.Critical = v_uint8()
        self._pad0008 = v_bytes(size=1)
        self.ActivationReasons = v_uint32()
        self.PassiveLimit = v_uint32()
        self.ActiveLevel = v_uint32()


class PRIVATE_CACHE_MAP(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.NodeTypeCode = v_uint16()
        self._pad0004 = v_bytes(size=2)
        self.ReadAheadMask = v_uint32()
        self.FileObject = v_ptr64()
        self.FileOffset1 = LARGE_INTEGER()
        self.BeyondLastByte1 = LARGE_INTEGER()
        self.FileOffset2 = LARGE_INTEGER()
        self.BeyondLastByte2 = LARGE_INTEGER()
        self.SequentialReadCount = v_uint32()
        self.ReadAheadLength = v_uint32()
        self.ReadAheadOffset = LARGE_INTEGER()
        self.ReadAheadBeyondLastByte = LARGE_INTEGER()
        self.PrevReadAheadBeyondLastByte = v_uint64()
        self.ReadAheadSpinLock = v_uint64()
        self.PipelinedReadAheadRequestSize = v_uint32()
        self.ReadAheadGrowth = v_uint32()
        self.PrivateLinks = LIST_ENTRY()
        self.ReadAheadWorkItem = v_ptr64()


class MMPTE_SOFTWARE(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Valid = v_uint64()


class _unnamed_28219(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Type = v_uint32()


class IO_TIMER(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Type = v_uint16()
        self.TimerFlag = v_uint16()
        self._pad0008 = v_bytes(size=4)
        self.TimerList = LIST_ENTRY()
        self.TimerRoutine = v_ptr64()
        self.Context = v_ptr64()
        self.DeviceObject = v_ptr64()


class MM_STORE_KEY(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.KeyLow = v_uint64()


class OBJECT_CREATE_INFORMATION(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Attributes = v_uint32()
        self._pad0008 = v_bytes(size=4)
        self.RootDirectory = v_ptr64()
        self.ProbeMode = v_uint8()
        self._pad0014 = v_bytes(size=3)
        self.PagedPoolCharge = v_uint32()
        self.NonPagedPoolCharge = v_uint32()
        self.SecurityDescriptorCharge = v_uint32()
        self.SecurityDescriptor = v_ptr64()
        self.SecurityQos = v_ptr64()
        self.SecurityQualityOfService = SECURITY_QUALITY_OF_SERVICE()
        self._pad0040 = v_bytes(size=4)


class WHEA_REVISION(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.MinorRevision = v_uint8()
        self.MajorRevision = v_uint8()


class KSECONDARY_IDT_ENTRY(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.SpinLock = v_uint64()
        self.ConnectLock = KEVENT()
        self.LineMasked = v_uint8()
        self._pad0028 = v_bytes(size=7)
        self.InterruptList = v_ptr64()


class TP_CLEANUP_GROUP(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)


class MM_SESSION_SPACE_FLAGS(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Initialized = v_uint32()


class CVDD(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Signature = v_uint32()
        self._pad001c = v_bytes(size=24)


class EVENT_FILTER_HEADER(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Id = v_uint16()
        self.Version = v_uint8()
        self.Reserved = vstruct.VArray([ v_uint8() for i in xrange(5) ])
        self.InstanceId = v_uint64()
        self.Size = v_uint32()
        self.NextOffset = v_uint32()


class PROC_IDLE_SNAP(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Time = v_uint64()
        self.Idle = v_uint64()


class POP_TRIGGER_WAIT(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Event = KEVENT()
        self.Status = v_uint32()
        self._pad0020 = v_bytes(size=4)
        self.Link = LIST_ENTRY()
        self.Trigger = v_ptr64()


class POP_FX_DRIVER_CALLBACKS(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.ComponentActive = v_ptr64()
        self.ComponentIdle = v_ptr64()
        self.ComponentIdleState = v_ptr64()
        self.DevicePowerRequired = v_ptr64()
        self.DevicePowerNotRequired = v_ptr64()
        self.PowerControl = v_ptr64()
        self.ComponentCriticalTransition = v_ptr64()


class INVERTED_FUNCTION_TABLE_ENTRY(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.FunctionTable = v_ptr64()
        self.ImageBase = v_ptr64()
        self.SizeOfImage = v_uint32()
        self.SizeOfTable = v_uint32()


class RTL_DYNAMIC_HASH_TABLE_ENUMERATOR(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.HashEntry = RTL_DYNAMIC_HASH_TABLE_ENTRY()
        self.ChainHead = v_ptr64()
        self.BucketIndex = v_uint32()
        self._pad0028 = v_bytes(size=4)


class ETW_PAYLOAD_FILTER(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.RefCount = v_uint32()
        self._pad0008 = v_bytes(size=4)
        self.PayloadFilter = AGGREGATED_PAYLOAD_FILTER()


class SECURITY_DESCRIPTOR(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Revision = v_uint8()
        self.Sbz1 = v_uint8()
        self.Control = v_uint16()
        self._pad0008 = v_bytes(size=4)
        self.Owner = v_ptr64()
        self.Group = v_ptr64()
        self.Sacl = v_ptr64()
        self.Dacl = v_ptr64()


class PCW_PROCESSOR_INFO(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.IdleTime = v_uint64()
        self.AvailableTime = v_uint64()
        self.UserTime = v_uint64()
        self.KernelTime = v_uint64()
        self.Interrupts = v_uint32()
        self._pad0028 = v_bytes(size=4)
        self.DpcTime = v_uint64()
        self.InterruptTime = v_uint64()
        self.ClockInterrupts = v_uint32()
        self.DpcCount = v_uint32()
        self.DpcRate = v_uint32()
        self._pad0048 = v_bytes(size=4)
        self.C1Time = v_uint64()
        self.C2Time = v_uint64()
        self.C3Time = v_uint64()
        self.C1Transitions = v_uint64()
        self.C2Transitions = v_uint64()
        self.C3Transitions = v_uint64()
        self.ParkingStatus = v_uint32()
        self.CurrentFrequency = v_uint32()
        self.PercentMaxFrequency = v_uint32()
        self.StateFlags = v_uint32()
        self.NominalThroughput = v_uint32()
        self.ActiveThroughput = v_uint32()
        self.ScaledThroughput = v_uint64()
        self.ScaledKernelThroughput = v_uint64()
        self.AverageIdleTime = v_uint64()
        self.IdleBreakEvents = v_uint64()
        self.PerformanceLimit = v_uint32()
        self.PerformanceLimitFlags = v_uint32()


class OBJECT_TYPE_INITIALIZER(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Length = v_uint16()
        self.ObjectTypeFlags = v_uint8()
        self._pad0004 = v_bytes(size=1)
        self.ObjectTypeCode = v_uint32()
        self.InvalidAttributes = v_uint32()
        self.GenericMapping = GENERIC_MAPPING()
        self.ValidAccessMask = v_uint32()
        self.RetainAccess = v_uint32()
        self.PoolType = v_uint32()
        self.DefaultPagedPoolCharge = v_uint32()
        self.DefaultNonPagedPoolCharge = v_uint32()
        self.DumpProcedure = v_ptr64()
        self.OpenProcedure = v_ptr64()
        self.CloseProcedure = v_ptr64()
        self.DeleteProcedure = v_ptr64()
        self.ParseProcedure = v_ptr64()
        self.SecurityProcedure = v_ptr64()
        self.QueryNameProcedure = v_ptr64()
        self.OkayToCloseProcedure = v_ptr64()
        self.WaitObjectFlagMask = v_uint32()
        self.WaitObjectFlagOffset = v_uint16()
        self.WaitObjectPointerOffset = v_uint16()


class VACB_LEVEL_REFERENCE(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Reference = v_uint32()
        self.SpecialReference = v_uint32()


class XSTATE_SAVE(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Prev = v_ptr64()
        self.Thread = v_ptr64()
        self.Level = v_uint8()
        self._pad0018 = v_bytes(size=7)
        self.XStateContext = XSTATE_CONTEXT()


class PTE_TRACKER(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.ListEntry = LIST_ENTRY()
        self.Mdl = v_ptr64()
        self.Count = v_uint64()
        self.SystemVa = v_ptr64()
        self.StartVa = v_ptr64()
        self.Offset = v_uint32()
        self.Length = v_uint32()
        self.Page = v_uint64()
        self.IoMapping = v_uint32()
        self._pad0048 = v_bytes(size=4)
        self.StackTrace = vstruct.VArray([ v_ptr64() for i in xrange(7) ])


class HEAP_ENTRY_EXTRA(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.AllocatorBackTraceIndex = v_uint16()
        self.TagIndex = v_uint16()
        self._pad0008 = v_bytes(size=4)
        self.Settable = v_uint64()


class POP_DEVICE_SYS_STATE(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.IrpMinor = v_uint8()
        self._pad0004 = v_bytes(size=3)
        self.SystemState = v_uint32()
        self.SpinLock = v_uint64()
        self.Thread = v_ptr64()
        self.AbortEvent = v_ptr64()
        self.ReadySemaphore = v_ptr64()
        self.FinishedSemaphore = v_ptr64()
        self.Order = PO_DEVICE_NOTIFY_ORDER()
        self.Pending = LIST_ENTRY()
        self.Status = v_uint32()
        self._pad01c0 = v_bytes(size=4)
        self.FailedDevice = v_ptr64()
        self.Waking = v_uint8()
        self.Cancelled = v_uint8()
        self.IgnoreErrors = v_uint8()
        self.IgnoreNotImplemented = v_uint8()
        self.TimeRefreshLockAcquired = v_uint8()
        self._pad01d0 = v_bytes(size=3)


class X86_KTRAP_FRAME(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.DbgEbp = v_uint32()
        self.DbgEip = v_uint32()
        self.DbgArgMark = v_uint32()
        self.DbgArgPointer = v_uint32()
        self.TempSegCs = v_uint32()
        self.TempEsp = v_uint32()
        self.Dr0 = v_uint32()
        self.Dr1 = v_uint32()
        self.Dr2 = v_uint32()
        self.Dr3 = v_uint32()
        self.Dr6 = v_uint32()
        self.Dr7 = v_uint32()
        self.SegGs = v_uint32()
        self.SegEs = v_uint32()
        self.SegDs = v_uint32()
        self.Edx = v_uint32()
        self.Ecx = v_uint32()
        self.Eax = v_uint32()
        self.PreviousPreviousMode = v_uint8()
        self.EntropyQueueDpc = v_uint8()
        self.Reserved = vstruct.VArray([ v_uint8() for i in xrange(2) ])
        self.ExceptionList = v_uint32()
        self.SegFs = v_uint32()
        self.Edi = v_uint32()
        self.Esi = v_uint32()
        self.Ebx = v_uint32()
        self.Ebp = v_uint32()
        self.ErrCode = v_uint32()
        self.Eip = v_uint32()
        self.SegCs = v_uint32()
        self.EFlags = v_uint32()
        self.HardwareEsp = v_uint32()
        self.HardwareSegSs = v_uint32()
        self.V86Es = v_uint32()
        self.V86Ds = v_uint32()
        self.V86Fs = v_uint32()
        self.V86Gs = v_uint32()


class UNEXPECTED_INTERRUPT(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.PushImm = v_uint8()
        self.Vector = v_uint8()
        self.PushRbp = v_uint8()
        self.JmpOp = v_uint8()
        self.JmpOffset = v_uint32()


class HV_HYPERVISOR_HARDWARE_FEATURES(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.ApicOverlayAssistInUse = v_uint32()
        self.ReservedEbx = v_uint32()
        self.ReservedEcx = v_uint32()
        self.ReservedEdx = v_uint32()


class _unnamed_29194(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.ImageInformation = v_ptr64()


class CM_KEY_REFERENCE(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.KeyCell = v_uint32()
        self._pad0008 = v_bytes(size=4)
        self.KeyHive = v_ptr64()


class PNP_ASSIGN_RESOURCES_CONTEXT(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.IncludeFailedDevices = v_uint32()
        self.DeviceCount = v_uint32()
        self.DeviceList = vstruct.VArray([ v_ptr64() for i in xrange(1) ])


class MI_SPECIAL_POOL(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Lock = v_uint64()
        self.Paged = MI_PTE_CHAIN_HEAD()
        self.NonPaged = MI_PTE_CHAIN_HEAD()
        self.PagesInUse = v_uint64()
        self.SpecialPoolPdes = RTL_BITMAP()


class DBGKD_GET_INTERNAL_BREAKPOINT64(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.BreakpointAddress = v_uint64()
        self.Flags = v_uint32()
        self.Calls = v_uint32()
        self.MaxCallsPerPeriod = v_uint32()
        self.MinInstructions = v_uint32()
        self.MaxInstructions = v_uint32()
        self.TotalInstructions = v_uint32()


class ETW_FILTER_PID(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Count = v_uint32()
        self.Pids = vstruct.VArray([ v_uint32() for i in xrange(8) ])


class CONTROL_AREA(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Segment = v_ptr64()
        self.ListHead = LIST_ENTRY()
        self.NumberOfSectionReferences = v_uint64()
        self.NumberOfPfnReferences = v_uint64()
        self.NumberOfMappedViews = v_uint64()
        self.NumberOfUserReferences = v_uint64()
        self.u = _unnamed_29174()
        self._pad0040 = v_bytes(size=4)
        self.FilePointer = EX_FAST_REF()
        self.ControlAreaLock = v_uint32()
        self.ModifiedWriteCount = v_uint32()
        self.WaitList = v_ptr64()
        self.u2 = _unnamed_29177()
        self.LockedPages = v_uint64()
        self.FileObjectLock = EX_PUSH_LOCK()


class LOCK_TRACKER(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.LockTrackerNode = RTL_BALANCED_NODE()
        self.Mdl = v_ptr64()
        self.StartVa = v_ptr64()
        self.Count = v_uint64()
        self.Offset = v_uint32()
        self.Length = v_uint32()
        self.Page = v_uint64()
        self.StackTrace = vstruct.VArray([ v_ptr64() for i in xrange(8) ])
        self.Who = v_uint32()
        self._pad0088 = v_bytes(size=4)
        self.Process = v_ptr64()


class _unnamed_34209(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.UserData = v_uint32()


class SECURITY_QUALITY_OF_SERVICE(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Length = v_uint32()
        self.ImpersonationLevel = v_uint32()
        self.ContextTrackingMode = v_uint8()
        self.EffectiveOnly = v_uint8()
        self._pad000c = v_bytes(size=2)


class HIVE_LOAD_FAILURE(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Hive = v_ptr64()
        self.Index = v_uint32()
        self.RecoverableIndex = v_uint32()
        self.Locations = vstruct.VArray([ _unnamed_29354() for i in xrange(8) ])
        self.RecoverableLocations = vstruct.VArray([ _unnamed_29354() for i in xrange(8) ])
        self.RegistryIO = _unnamed_29355()
        self.CheckRegistry2 = _unnamed_29356()
        self.CheckKey = _unnamed_29357()
        self.CheckValueList = _unnamed_29358()
        self.CheckHive = _unnamed_29359()
        self.CheckHive1 = _unnamed_29359()
        self.CheckBin = _unnamed_29360()
        self.RecoverData = _unnamed_29361()
        self._pad0160 = v_bytes(size=4)


class CM_TRANS(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.TransactionListEntry = LIST_ENTRY()
        self.KCBUoWListHead = LIST_ENTRY()
        self.LazyCommitListEntry = LIST_ENTRY()
        self.KtmTrans = v_ptr64()
        self.CmRm = v_ptr64()
        self.KtmEnlistmentObject = v_ptr64()
        self.KtmEnlistmentHandle = v_ptr64()
        self.KtmUow = GUID()
        self.StartLsn = v_uint64()
        self.TransState = v_uint32()
        self.HiveCount = v_uint32()
        self.HiveArray = vstruct.VArray([ v_ptr64() for i in xrange(7) ])


class POP_POWER_ACTION(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Updates = v_uint8()
        self.State = v_uint8()
        self.Shutdown = v_uint8()
        self._pad0004 = v_bytes(size=1)
        self.Action = v_uint32()
        self.LightestState = v_uint32()
        self.Flags = v_uint32()
        self.Status = v_uint32()
        self.DeviceType = v_uint32()
        self.DeviceTypeFlags = v_uint32()
        self.IrpMinor = v_uint8()
        self.Waking = v_uint8()
        self._pad0020 = v_bytes(size=2)
        self.SystemState = v_uint32()
        self.NextSystemState = v_uint32()
        self.EffectiveSystemState = v_uint32()
        self.CurrentSystemState = v_uint32()
        self.ShutdownBugCode = v_ptr64()
        self.DevState = v_ptr64()
        self.HiberContext = v_ptr64()
        self.WakeTime = v_uint64()
        self.SleepTime = v_uint64()
        self.WakeAlarmSignaled = v_uint32()
        self._pad0060 = v_bytes(size=4)
        self.WakeAlarm = vstruct.VArray([ _unnamed_35484() for i in xrange(3) ])
        self.FilteredCapabilities = SYSTEM_POWER_CAPABILITIES()
        self._pad00e0 = v_bytes(size=4)


class _unnamed_28030(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.SecurityContext = v_ptr64()
        self.Options = v_uint32()
        self._pad0010 = v_bytes(size=4)
        self.Reserved = v_uint16()
        self.ShareAccess = v_uint16()
        self._pad0018 = v_bytes(size=4)
        self.Parameters = v_ptr64()


class EPROCESS_VALUES(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.KernelTime = v_uint64()
        self.UserTime = v_uint64()
        self.CycleTime = v_uint64()
        self.ContextSwitches = v_uint64()
        self.ReadOperationCount = v_uint64()
        self.WriteOperationCount = v_uint64()
        self.OtherOperationCount = v_uint64()
        self.ReadTransferCount = v_uint64()
        self.WriteTransferCount = v_uint64()
        self.OtherTransferCount = v_uint64()


class OBJECT_HEADER_CREATOR_INFO(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.TypeList = LIST_ENTRY()
        self.CreatorUniqueProcess = v_ptr64()
        self.CreatorBackTraceIndex = v_uint16()
        self.Reserved = v_uint16()
        self._pad0020 = v_bytes(size=4)


class PAGED_LOOKASIDE_LIST(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.L = GENERAL_LOOKASIDE()


class KREQUEST_PACKET(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.CurrentPacket = vstruct.VArray([ v_ptr64() for i in xrange(3) ])
        self.WorkerRoutine = v_ptr64()


class PROCESS_DISK_COUNTERS(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.BytesRead = v_uint64()
        self.BytesWritten = v_uint64()
        self.ReadOperationCount = v_uint64()
        self.WriteOperationCount = v_uint64()
        self.FlushOperationCount = v_uint64()


class _unnamed_37670(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Mask = v_uint32()


class RTL_BITMAP(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.SizeOfBitMap = v_uint32()
        self._pad0008 = v_bytes(size=4)
        self.Buffer = v_ptr64()


class LARGE_INTEGER(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.LowPart = v_uint32()
        self.HighPart = v_uint32()


class IA64_DBGKD_CONTROL_SET(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Continue = v_uint32()
        self.CurrentSymbolStart = v_uint64()
        self.CurrentSymbolEnd = v_uint64()


class _unnamed_30804(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.SharedCacheMap = v_ptr64()


class _unnamed_36271(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.AsUSHORT = v_uint16()


class NPAGED_LOOKASIDE_LIST(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.L = GENERAL_LOOKASIDE()


class _unnamed_25894(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.BaseMiddle = v_uint8()
        self.Flags1 = v_uint8()
        self.Flags2 = v_uint8()
        self.BaseHigh = v_uint8()


class _unnamed_25895(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.BaseMiddle = v_uint32()


class HBIN(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Signature = v_uint32()
        self.FileOffset = v_uint32()
        self.Size = v_uint32()
        self.Reserved1 = vstruct.VArray([ v_uint32() for i in xrange(2) ])
        self.TimeStamp = LARGE_INTEGER()
        self.Spare = v_uint32()


class _unnamed_28130(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Length = v_uint32()
        self._pad0008 = v_bytes(size=4)
        self.FileInformationClass = v_uint32()
        self._pad0010 = v_bytes(size=4)
        self.FileObject = v_ptr64()
        self.ReplaceIfExists = v_uint8()
        self.AdvanceOnly = v_uint8()
        self._pad0020 = v_bytes(size=6)


class WHEA_AER_ENDPOINT_DESCRIPTOR(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Type = v_uint16()
        self.Enabled = v_uint8()
        self.Reserved = v_uint8()
        self.BusNumber = v_uint32()
        self.Slot = WHEA_PCI_SLOT_NUMBER()
        self.DeviceControl = v_uint16()
        self.Flags = AER_ENDPOINT_DESCRIPTOR_FLAGS()
        self.UncorrectableErrorMask = v_uint32()
        self.UncorrectableErrorSeverity = v_uint32()
        self.CorrectableErrorMask = v_uint32()
        self.AdvancedCapsAndControl = v_uint32()


class GUID(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Data1 = v_uint32()
        self.Data2 = v_uint16()
        self.Data3 = v_uint16()
        self.Data4 = vstruct.VArray([ v_uint8() for i in xrange(8) ])


class LEARNING_MODE_DATA(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Settings = v_uint32()
        self.Enabled = v_uint8()
        self.PermissiveModeEnabled = v_uint8()
        self._pad0008 = v_bytes(size=2)


class _unnamed_28138(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Length = v_uint32()
        self._pad0008 = v_bytes(size=4)
        self.EaList = v_ptr64()
        self.EaListLength = v_uint32()
        self._pad0018 = v_bytes(size=4)
        self.EaIndex = v_uint32()
        self._pad0020 = v_bytes(size=4)


class _unnamed_30801(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Read = _unnamed_30802()
        self._pad0030 = v_bytes(size=40)


class BITMAP_RANGE(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Links = LIST_ENTRY()
        self.BasePage = v_uint64()
        self.FirstDirtyPage = v_uint32()
        self.LastDirtyPage = v_uint32()
        self.DirtyPages = v_uint32()
        self._pad0028 = v_bytes(size=4)
        self.Bitmap = v_ptr64()


class ETW_REG_ENTRY(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.RegList = LIST_ENTRY()
        self.GuidEntry = v_ptr64()
        self.ReplyQueue = v_ptr64()
        self.SessionId = v_uint32()
        self._pad0038 = v_bytes(size=20)
        self.Process = v_ptr64()
        self.Callback = v_ptr64()
        self.Index = v_uint16()
        self.Flags = v_uint8()
        self.EnableMask = v_uint8()
        self._pad0050 = v_bytes(size=4)


class HIVE_WRITE_WAIT_QUEUE(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.ActiveThread = v_ptr64()
        self.WaitList = v_ptr64()
        self.OwnerBoosted = v_uint32()
        self._pad0018 = v_bytes(size=4)


class KLOCK_QUEUE_HANDLE(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.LockQueue = KSPIN_LOCK_QUEUE()
        self.OldIrql = v_uint8()
        self._pad0018 = v_bytes(size=7)


class TRACE_LOGFILE_HEADER(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.BufferSize = v_uint32()
        self.Version = v_uint32()
        self.ProviderVersion = v_uint32()
        self.NumberOfProcessors = v_uint32()
        self.EndTime = LARGE_INTEGER()
        self.TimerResolution = v_uint32()
        self.MaximumFileSize = v_uint32()
        self.LogFileMode = v_uint32()
        self.BuffersWritten = v_uint32()
        self.LogInstanceGuid = GUID()
        self.LoggerName = v_ptr64()
        self.LogFileName = v_ptr64()
        self.TimeZone = RTL_TIME_ZONE_INFORMATION()
        self._pad00f8 = v_bytes(size=4)
        self.BootTime = LARGE_INTEGER()
        self.PerfFreq = LARGE_INTEGER()
        self.StartTime = LARGE_INTEGER()
        self.ReservedFlags = v_uint32()
        self.BuffersLost = v_uint32()


class POP_IRP_DATA(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Link = LIST_ENTRY()
        self.Irp = v_ptr64()
        self.Pdo = v_ptr64()
        self.TargetDevice = v_ptr64()
        self.CurrentDevice = v_ptr64()
        self.WatchdogStart = v_uint64()
        self.WatchdogTimer = KTIMER()
        self.WatchdogDpc = KDPC()
        self.MinorFunction = v_uint8()
        self._pad00bc = v_bytes(size=3)
        self.PowerStateType = v_uint32()
        self.PowerState = POWER_STATE()
        self.WatchdogEnabled = v_uint8()
        self._pad00c8 = v_bytes(size=3)
        self.FxDevice = v_ptr64()
        self.SystemTransition = v_uint8()
        self.NotifyPEP = v_uint8()
        self._pad00d8 = v_bytes(size=6)
        self.Device = _unnamed_34241()


class _unnamed_34290(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.RequestLine = v_uint32()
        self.Reserved = v_uint32()
        self.Channel = v_uint32()
        self.TransferWidth = v_uint32()


class CLS_LSN(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.offset = _unnamed_36963()


class VPB(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Type = v_uint16()
        self.Size = v_uint16()
        self.Flags = v_uint16()
        self.VolumeLabelLength = v_uint16()
        self.DeviceObject = v_ptr64()
        self.RealDevice = v_ptr64()
        self.SerialNumber = v_uint32()
        self.ReferenceCount = v_uint32()
        self.VolumeLabel = vstruct.VArray([ v_uint16() for i in xrange(32) ])


class WHEAP_ERROR_SOURCE_TABLE(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Signature = v_uint32()
        self.Count = v_uint32()
        self.Items = LIST_ENTRY()
        self.InsertLock = KEVENT()


class OBP_LOOKUP_CONTEXT(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Directory = v_ptr64()
        self.Object = v_ptr64()
        self.EntryLink = v_ptr64()
        self.HashValue = v_uint32()
        self.HashIndex = v_uint16()
        self.DirectoryLocked = v_uint8()
        self.LockedExclusive = v_uint8()
        self.LockStateSignature = v_uint32()
        self._pad0028 = v_bytes(size=4)


class OB_DUPLICATE_OBJECT_STATE(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.SourceProcess = v_ptr64()
        self.SourceHandle = v_ptr64()
        self.Object = v_ptr64()
        self.TargetAccess = v_uint32()
        self.ObjectInfo = HANDLE_TABLE_ENTRY_INFO()
        self.HandleAttributes = v_uint32()
        self._pad0028 = v_bytes(size=4)


class PP_LOOKASIDE_LIST(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.P = v_ptr64()
        self.L = v_ptr64()


class SEP_LOGON_SESSION_REFERENCES(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Next = v_ptr64()
        self.LogonId = LUID()
        self.BuddyLogonId = LUID()
        self.ReferenceCount = v_uint64()
        self.Flags = v_uint32()
        self._pad0028 = v_bytes(size=4)
        self.pDeviceMap = v_ptr64()
        self.Token = v_ptr64()
        self.AccountName = UNICODE_STRING()
        self.AuthorityName = UNICODE_STRING()
        self.LowBoxHandlesTable = SEP_LOWBOX_HANDLES_TABLE()
        self.SharedDataLock = EX_PUSH_LOCK()
        self.SharedClaimAttributes = v_ptr64()
        self.SharedSidValues = v_ptr64()


class JOBOBJECT_WAKE_FILTER(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.HighEdgeFilter = v_uint32()
        self.LowEdgeFilter = v_uint32()


class MMPTE_TIMESTAMP(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.MustBeZero = v_uint64()


class OBJECT_NAME_INFORMATION(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Name = UNICODE_STRING()


class IO_RESOURCE_LIST(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Version = v_uint16()
        self.Revision = v_uint16()
        self.Count = v_uint32()
        self.Descriptors = vstruct.VArray([ IO_RESOURCE_DESCRIPTOR() for i in xrange(1) ])


class KUSER_SHARED_DATA(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.TickCountLowDeprecated = v_uint32()
        self.TickCountMultiplier = v_uint32()
        self.InterruptTime = KSYSTEM_TIME()
        self.SystemTime = KSYSTEM_TIME()
        self.TimeZoneBias = KSYSTEM_TIME()
        self.ImageNumberLow = v_uint16()
        self.ImageNumberHigh = v_uint16()
        self.NtSystemRoot = vstruct.VArray([ v_uint16() for i in xrange(260) ])
        self.MaxStackTraceDepth = v_uint32()
        self.CryptoExponent = v_uint32()
        self.TimeZoneId = v_uint32()
        self.LargePageMinimum = v_uint32()
        self.AitSamplingValue = v_uint32()
        self.AppCompatFlag = v_uint32()
        self.RNGSeedVersion = v_uint64()
        self.GlobalValidationRunlevel = v_uint32()
        self.TimeZoneBiasStamp = v_uint32()
        self.Reserved2 = v_uint32()
        self.NtProductType = v_uint32()
        self.ProductTypeIsValid = v_uint8()
        self.Reserved0 = vstruct.VArray([ v_uint8() for i in xrange(1) ])
        self.NativeProcessorArchitecture = v_uint16()
        self.NtMajorVersion = v_uint32()
        self.NtMinorVersion = v_uint32()
        self.ProcessorFeatures = vstruct.VArray([ v_uint8() for i in xrange(64) ])
        self.Reserved1 = v_uint32()
        self.Reserved3 = v_uint32()
        self.TimeSlip = v_uint32()
        self.AlternativeArchitecture = v_uint32()
        self.AltArchitecturePad = vstruct.VArray([ v_uint32() for i in xrange(1) ])
        self.SystemExpirationDate = LARGE_INTEGER()
        self.SuiteMask = v_uint32()
        self.KdDebuggerEnabled = v_uint8()
        self.MitigationPolicies = v_uint8()
        self.Reserved6 = vstruct.VArray([ v_uint8() for i in xrange(2) ])
        self.ActiveConsoleId = v_uint32()
        self.DismountCount = v_uint32()
        self.ComPlusPackage = v_uint32()
        self.LastSystemRITEventTickCount = v_uint32()
        self.NumberOfPhysicalPages = v_uint32()
        self.SafeBootMode = v_uint8()
        self.Reserved12 = vstruct.VArray([ v_uint8() for i in xrange(3) ])
        self.SharedDataFlags = v_uint32()
        self.DataFlagsPad = vstruct.VArray([ v_uint32() for i in xrange(1) ])
        self.TestRetInstruction = v_uint64()
        self.QpcFrequency = v_uint64()
        self.SystemCallPad = vstruct.VArray([ v_uint64() for i in xrange(3) ])
        self.TickCount = KSYSTEM_TIME()
        self.TickCountPad = vstruct.VArray([ v_uint32() for i in xrange(1) ])
        self.Cookie = v_uint32()
        self.CookiePad = vstruct.VArray([ v_uint32() for i in xrange(1) ])
        self.ConsoleSessionForegroundProcessId = v_uint64()
        self.TimeUpdateLock = v_uint64()
        self.BaselineSystemTimeQpc = v_uint64()
        self.BaselineInterruptTimeQpc = v_uint64()
        self.QpcSystemTimeIncrement = v_uint64()
        self.QpcInterruptTimeIncrement = v_uint64()
        self.QpcSystemTimeIncrement32 = v_uint32()
        self.QpcInterruptTimeIncrement32 = v_uint32()
        self.QpcSystemTimeIncrementShift = v_uint8()
        self.QpcInterruptTimeIncrementShift = v_uint8()
        self.UnparkedProcessorCount = v_uint16()
        self.Reserved8 = vstruct.VArray([ v_uint8() for i in xrange(12) ])
        self.UserModeGlobalLogger = vstruct.VArray([ v_uint16() for i in xrange(16) ])
        self.ImageFileExecutionOptions = v_uint32()
        self.LangGenerationCount = v_uint32()
        self.Reserved4 = v_uint64()
        self.InterruptTimeBias = v_uint64()
        self.QpcBias = v_uint64()
        self.ActiveProcessorCount = v_uint32()
        self.ActiveGroupCount = v_uint8()
        self.Reserved9 = v_uint8()
        self.QpcData = v_uint16()
        self.TimeZoneBiasEffectiveStart = LARGE_INTEGER()
        self.TimeZoneBiasEffectiveEnd = LARGE_INTEGER()
        self.XState = XSTATE_CONFIGURATION()


class SYSTEM_POWER_STATE_CONTEXT(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Reserved1 = v_uint32()


class _unnamed_37629(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.DiskId = GUID()


class HEAP_FREE_ENTRY(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.PreviousBlockPrivateData = v_ptr64()
        self.Size = v_uint16()
        self.Flags = v_uint8()
        self.SmallTagIndex = v_uint8()
        self.PreviousSize = v_uint16()
        self.SegmentOffset = v_uint8()
        self.UnusedBytes = v_uint8()
        self.FreeList = LIST_ENTRY()


class KTM(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.cookie = v_uint32()
        self._pad0008 = v_bytes(size=4)
        self.Mutex = KMUTANT()
        self.State = v_uint32()
        self._pad0048 = v_bytes(size=4)
        self.NamespaceLink = KTMOBJECT_NAMESPACE_LINK()
        self.TmIdentity = GUID()
        self.Flags = v_uint32()
        self.VolatileFlags = v_uint32()
        self.LogFileName = UNICODE_STRING()
        self.LogFileObject = v_ptr64()
        self.MarshallingContext = v_ptr64()
        self.LogManagementContext = v_ptr64()
        self.Transactions = KTMOBJECT_NAMESPACE()
        self.ResourceManagers = KTMOBJECT_NAMESPACE()
        self.LsnOrderedMutex = KMUTANT()
        self.LsnOrderedList = LIST_ENTRY()
        self.CommitVirtualClock = LARGE_INTEGER()
        self.CommitVirtualClockMutex = FAST_MUTEX()
        self.BaseLsn = CLS_LSN()
        self.CurrentReadLsn = CLS_LSN()
        self.LastRecoveredLsn = CLS_LSN()
        self.TmRmHandle = v_ptr64()
        self.TmRm = v_ptr64()
        self.LogFullNotifyEvent = KEVENT()
        self.CheckpointWorkItem = WORK_QUEUE_ITEM()
        self.CheckpointTargetLsn = CLS_LSN()
        self.LogFullCompletedWorkItem = WORK_QUEUE_ITEM()
        self.LogWriteResource = ERESOURCE()
        self.LogFlags = v_uint32()
        self.LogFullStatus = v_uint32()
        self.RecoveryStatus = v_uint32()
        self._pad0388 = v_bytes(size=4)
        self.LastCheckBaseLsn = CLS_LSN()
        self.RestartOrderedList = LIST_ENTRY()
        self.OfflineWorkItem = WORK_QUEUE_ITEM()


class PRIVATE_CACHE_MAP_FLAGS(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.DontUse = v_uint32()


class SINGLE_LIST_ENTRY32(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Next = v_uint32()


class HEAP(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Entry = HEAP_ENTRY()
        self.SegmentSignature = v_uint32()
        self.SegmentFlags = v_uint32()
        self.SegmentListEntry = LIST_ENTRY()
        self.Heap = v_ptr64()
        self.BaseAddress = v_ptr64()
        self.NumberOfPages = v_uint32()
        self._pad0040 = v_bytes(size=4)
        self.FirstEntry = v_ptr64()
        self.LastValidEntry = v_ptr64()
        self.NumberOfUnCommittedPages = v_uint32()
        self.NumberOfUnCommittedRanges = v_uint32()
        self.SegmentAllocatorBackTraceIndex = v_uint16()
        self.Reserved = v_uint16()
        self._pad0060 = v_bytes(size=4)
        self.UCRSegmentList = LIST_ENTRY()
        self.Flags = v_uint32()
        self.ForceFlags = v_uint32()
        self.CompatibilityFlags = v_uint32()
        self.EncodeFlagMask = v_uint32()
        self.Encoding = HEAP_ENTRY()
        self.Interceptor = v_uint32()
        self.VirtualMemoryThreshold = v_uint32()
        self.Signature = v_uint32()
        self._pad00a0 = v_bytes(size=4)
        self.SegmentReserve = v_uint64()
        self.SegmentCommit = v_uint64()
        self.DeCommitFreeBlockThreshold = v_uint64()
        self.DeCommitTotalFreeThreshold = v_uint64()
        self.TotalFreeSize = v_uint64()
        self.MaximumAllocationSize = v_uint64()
        self.ProcessHeapsListIndex = v_uint16()
        self.HeaderValidateLength = v_uint16()
        self._pad00d8 = v_bytes(size=4)
        self.HeaderValidateCopy = v_ptr64()
        self.NextAvailableTagIndex = v_uint16()
        self.MaximumTagIndex = v_uint16()
        self._pad00e8 = v_bytes(size=4)
        self.TagEntries = v_ptr64()
        self.UCRList = LIST_ENTRY()
        self.AlignRound = v_uint64()
        self.AlignMask = v_uint64()
        self.VirtualAllocdBlocks = LIST_ENTRY()
        self.SegmentList = LIST_ENTRY()
        self.AllocatorBackTraceIndex = v_uint16()
        self._pad0134 = v_bytes(size=2)
        self.NonDedicatedListLength = v_uint32()
        self.BlocksIndex = v_ptr64()
        self.UCRIndex = v_ptr64()
        self.PseudoTagEntries = v_ptr64()
        self.FreeLists = LIST_ENTRY()
        self.LockVariable = v_ptr64()
        self.CommitRoutine = v_ptr64()
        self.FrontEndHeap = v_ptr64()
        self.FrontHeapLockCount = v_uint16()
        self.FrontEndHeapType = v_uint8()
        self.RequestedFrontEndHeapType = v_uint8()
        self._pad0180 = v_bytes(size=4)
        self.FrontEndHeapUsageData = v_ptr64()
        self.FrontEndHeapMaximumIndex = v_uint16()
        self.FrontEndHeapStatusBitmap = vstruct.VArray([ v_uint8() for i in xrange(129) ])
        self._pad0210 = v_bytes(size=5)
        self.Counters = HEAP_COUNTERS()
        self.TuningParameters = HEAP_TUNING_PARAMETERS()


class HANDLE_TABLE_FREE_LIST(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.FreeListLock = EX_PUSH_LOCK()
        self.FirstFreeHandleEntry = v_ptr64()
        self.LastFreeHandleEntry = v_ptr64()
        self.HandleCount = v_uint32()
        self.HighWaterMark = v_uint32()
        self.Reserved = vstruct.VArray([ v_uint32() for i in xrange(8) ])


class HANDLE_TRACE_DEBUG_INFO(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.RefCount = v_uint32()
        self.TableSize = v_uint32()
        self.BitMaskFlags = v_uint32()
        self._pad0010 = v_bytes(size=4)
        self.CloseCompactionLock = FAST_MUTEX()
        self.CurrentStackIndex = v_uint32()
        self._pad0050 = v_bytes(size=4)
        self.TraceDb = vstruct.VArray([ HANDLE_TRACE_DB_ENTRY() for i in xrange(1) ])


class HCELL(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Size = v_uint32()
        self.u = _unnamed_29474()


class CM_RESOURCE_LIST(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Count = v_uint32()
        self.List = vstruct.VArray([ CM_FULL_RESOURCE_DESCRIPTOR() for i in xrange(1) ])


class WNF_STATE_NAME(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Data = vstruct.VArray([ v_uint32() for i in xrange(2) ])


class EPROCESS(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Pcb = KPROCESS()
        self.ProcessLock = EX_PUSH_LOCK()
        self.CreateTime = LARGE_INTEGER()
        self.RundownProtect = EX_RUNDOWN_REF()
        self.UniqueProcessId = v_ptr64()
        self.ActiveProcessLinks = LIST_ENTRY()
        self.Flags2 = v_uint32()
        self.Flags = v_uint32()
        self.ProcessQuotaUsage = vstruct.VArray([ v_uint64() for i in xrange(2) ])
        self.ProcessQuotaPeak = vstruct.VArray([ v_uint64() for i in xrange(2) ])
        self.PeakVirtualSize = v_uint64()
        self.VirtualSize = v_uint64()
        self.SessionProcessLinks = LIST_ENTRY()
        self.ExceptionPortData = v_ptr64()
        self.Token = EX_FAST_REF()
        self.WorkingSetPage = v_uint64()
        self.AddressCreationLock = EX_PUSH_LOCK()
        self.PageTableCommitmentLock = EX_PUSH_LOCK()
        self.RotateInProgress = v_ptr64()
        self.ForkInProgress = v_ptr64()
        self.CommitChargeJob = v_ptr64()
        self.CloneRoot = RTL_AVL_TREE()
        self.NumberOfPrivatePages = v_uint64()
        self.NumberOfLockedPages = v_uint64()
        self.Win32Process = v_ptr64()
        self.Job = v_ptr64()
        self.SectionObject = v_ptr64()
        self.SectionBaseAddress = v_ptr64()
        self.Cookie = v_uint32()
        self._pad03c0 = v_bytes(size=4)
        self.WorkingSetWatch = v_ptr64()
        self.Win32WindowStation = v_ptr64()
        self.InheritedFromUniqueProcessId = v_ptr64()
        self.LdtInformation = v_ptr64()
        self.OwnerProcessId = v_uint64()
        self.Peb = v_ptr64()
        self.Session = v_ptr64()
        self.AweInfo = v_ptr64()
        self.QuotaBlock = v_ptr64()
        self.ObjectTable = v_ptr64()
        self.DebugPort = v_ptr64()
        self.Wow64Process = v_ptr64()
        self.DeviceMap = v_ptr64()
        self.EtwDataSource = v_ptr64()
        self.PageDirectoryPte = v_uint64()
        self.ImageFileName = vstruct.VArray([ v_uint8() for i in xrange(15) ])
        self.PriorityClass = v_uint8()
        self.SecurityPort = v_ptr64()
        self.SeAuditProcessCreationInfo = SE_AUDIT_PROCESS_CREATION_INFO()
        self.JobLinks = LIST_ENTRY()
        self.HighestUserAddress = v_ptr64()
        self.ThreadListHead = LIST_ENTRY()
        self.ActiveThreads = v_uint32()
        self.ImagePathHash = v_uint32()
        self.DefaultHardErrorProcessing = v_uint32()
        self.LastThreadExitStatus = v_uint32()
        self.PrefetchTrace = EX_FAST_REF()
        self.LockedPagesList = v_ptr64()
        self.ReadOperationCount = LARGE_INTEGER()
        self.WriteOperationCount = LARGE_INTEGER()
        self.OtherOperationCount = LARGE_INTEGER()
        self.ReadTransferCount = LARGE_INTEGER()
        self.WriteTransferCount = LARGE_INTEGER()
        self.OtherTransferCount = LARGE_INTEGER()
        self.CommitCharge = v_uint64()
        self.Vm = MMSUPPORT()
        self.MmProcessLinks = LIST_ENTRY()
        self.ModifiedPageCount = v_uint32()
        self.ExitStatus = v_uint32()
        self.VadRoot = RTL_AVL_TREE()
        self.VadHint = v_ptr64()
        self.VadCount = v_uint64()
        self.VadPhysicalPages = v_uint64()
        self.VadPhysicalPagesLimit = v_uint64()
        self.AlpcContext = ALPC_PROCESS_CONTEXT()
        self.TimerResolutionLink = LIST_ENTRY()
        self.TimerResolutionStackRecord = v_ptr64()
        self.RequestedTimerResolution = v_uint32()
        self.SmallestTimerResolution = v_uint32()
        self.ExitTime = LARGE_INTEGER()
        self.InvertedFunctionTable = v_ptr64()
        self.InvertedFunctionTableLock = EX_PUSH_LOCK()
        self.ActiveThreadsHighWatermark = v_uint32()
        self.LargePrivateVadCount = v_uint32()
        self.ThreadListLock = EX_PUSH_LOCK()
        self.WnfContext = v_ptr64()
        self.Spare0 = v_uint64()
        self.SignatureLevel = v_uint8()
        self.SectionSignatureLevel = v_uint8()
        self.Protection = PS_PROTECTION()
        self.SpareByte20 = vstruct.VArray([ v_uint8() for i in xrange(1) ])
        self.Flags3 = v_uint32()
        self.SvmReserved = v_uint32()
        self._pad0688 = v_bytes(size=4)
        self.SvmReserved1 = v_ptr64()
        self.SvmReserved2 = v_uint64()
        self.LastFreezeInterruptTime = v_uint64()
        self.DiskCounters = v_ptr64()
        self.PicoContext = v_ptr64()
        self.KeepAliveCounter = v_uint32()
        self.NoWakeKeepAliveCounter = v_uint32()
        self.DeepFreezeStartTime = v_uint64()
        self.CommitChargeLimit = v_uint64()
        self.CommitChargePeak = v_uint64()
        self.HighPriorityFaultsAllowed = v_uint32()
        self._pad06d8 = v_bytes(size=4)


class _unnamed_34270(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Length = v_uint32()
        self.Alignment = v_uint32()
        self.MinimumAddress = LARGE_INTEGER()
        self.MaximumAddress = LARGE_INTEGER()


class _unnamed_37682(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.ExtendedDestination = v_uint32()


class _unnamed_29360(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Bin = v_ptr64()
        self.CellPoint = v_ptr64()


class _unnamed_29361(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.FileOffset = v_uint32()


class KSCHEDULING_GROUP(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Value = v_uint16()
        self.Type = v_uint8()
        self.HardCap = v_uint8()
        self.RelativeWeight = v_uint32()
        self.QueryHistoryTimeStamp = v_uint64()
        self.NotificationCycles = v_uint64()
        self.SchedulingGroupList = LIST_ENTRY()
        self.NotificationDpc = v_ptr64()
        self._pad0040 = v_bytes(size=16)
        self.PerProcessor = vstruct.VArray([ KSCB() for i in xrange(1) ])
        self._pad01c0 = v_bytes(size=16)


class KMUTANT(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Header = DISPATCHER_HEADER()
        self.MutantListEntry = LIST_ENTRY()
        self.OwnerThread = v_ptr64()
        self.Abandoned = v_uint8()
        self.ApcDisable = v_uint8()
        self._pad0038 = v_bytes(size=6)


class POWER_SEQUENCE(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.SequenceD1 = v_uint32()
        self.SequenceD2 = v_uint32()
        self.SequenceD3 = v_uint32()


class EVENT_RECORD(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.EventHeader = EVENT_HEADER()
        self.BufferContext = ETW_BUFFER_CONTEXT()
        self.ExtendedDataCount = v_uint16()
        self.UserDataLength = v_uint16()
        self.ExtendedData = v_ptr64()
        self.UserData = v_ptr64()
        self.UserContext = v_ptr64()


class IO_DRIVER_CREATE_CONTEXT(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Size = v_uint16()
        self._pad0008 = v_bytes(size=6)
        self.ExtraCreateParameter = v_ptr64()
        self.DeviceObjectHint = v_ptr64()
        self.TxnParameters = v_ptr64()


class CM_DIRTY_VECTOR_LOG_ENTRY(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Thread = v_ptr64()
        self.Operation = v_uint32()
        self.Data = _unnamed_34049()
        self._pad0018 = v_bytes(size=4)
        self.Stack = vstruct.VArray([ v_ptr64() for i in xrange(7) ])


class KTIMER(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Header = DISPATCHER_HEADER()
        self.DueTime = ULARGE_INTEGER()
        self.TimerListEntry = LIST_ENTRY()
        self.Dpc = v_ptr64()
        self.Processor = v_uint32()
        self.Period = v_uint32()


class RTL_UMS_CONTEXT(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Link = SINGLE_LIST_ENTRY()
        self._pad0010 = v_bytes(size=8)
        self.Context = CONTEXT()
        self.Teb = v_ptr64()
        self.UserContext = v_ptr64()
        self.ScheduledThread = v_uint32()
        self._pad04f8 = v_bytes(size=4)
        self.KernelUpdateLock = v_uint64()
        self.PrimaryUmsContext = v_ptr64()
        self.SwitchCount = v_uint32()
        self.KernelYieldCount = v_uint32()
        self.MixedYieldCount = v_uint32()
        self.YieldCount = v_uint32()
        self._pad0520 = v_bytes(size=8)


class MM_PAGED_POOL_INFO(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Mutex = FAST_MUTEX()
        self.PagedPoolAllocationMap = RTL_BITMAP_EX()
        self.FirstPteForPagedPool = v_ptr64()
        self.MaximumSize = v_uint64()
        self.PagedPoolHint = v_uint64()
        self.AllocatedPagedPool = v_uint64()


class HIVE_LIST_ENTRY(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.FileName = v_ptr64()
        self.BaseName = v_ptr64()
        self.RegRootName = v_ptr64()
        self.CmHive = v_ptr64()
        self.HHiveFlags = v_uint32()
        self.CmHiveFlags = v_uint32()
        self.CmKcbCacheSize = v_uint32()
        self._pad0030 = v_bytes(size=4)
        self.CmHive2 = v_ptr64()
        self.HiveMounted = v_uint8()
        self.ThreadFinished = v_uint8()
        self.ThreadStarted = v_uint8()
        self.Allocate = v_uint8()
        self.WinPERequired = v_uint8()
        self._pad0040 = v_bytes(size=3)
        self.StartEvent = KEVENT()
        self.FinishedEvent = KEVENT()
        self.MountLock = KEVENT()


class WHEA_ERROR_STATUS(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.ErrorStatus = v_uint64()


class CM_DIRTY_VECTOR_LOG(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Next = v_uint32()
        self.Size = v_uint32()
        self.Log = vstruct.VArray([ CM_DIRTY_VECTOR_LOG_ENTRY() for i in xrange(16) ])


class _unnamed_35277(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Start = v_uint32()
        self.Length = v_uint32()


class RTLP_RANGE_LIST_ENTRY(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Start = v_uint64()
        self.End = v_uint64()
        self.Allocated = _unnamed_36257()
        self.Attributes = v_uint8()
        self.PublicFlags = v_uint8()
        self.PrivateFlags = v_uint16()
        self._pad0028 = v_bytes(size=4)
        self.ListEntry = LIST_ENTRY()


class WHEAP_ERROR_SOURCE(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.ListEntry = LIST_ENTRY()
        self.FailedAllocations = v_uint32()
        self.PlatformErrorSourceId = v_uint32()
        self.ErrorCount = v_uint32()
        self.RecordCount = v_uint32()
        self.RecordLength = v_uint32()
        self.PoolTag = v_uint32()
        self.Type = v_uint32()
        self._pad0030 = v_bytes(size=4)
        self.Records = v_ptr64()
        self.Context = v_ptr64()
        self.SectionCount = v_uint32()
        self.SectionLength = v_uint32()
        self.TickCountAtLastError = LARGE_INTEGER()
        self.AccumulatedErrors = v_uint32()
        self.TotalErrors = v_uint32()
        self.Deferred = v_uint8()
        self.Descriptor = WHEA_ERROR_SOURCE_DESCRIPTOR()
        self._pad0428 = v_bytes(size=3)


class OBJECT_ATTRIBUTES(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Length = v_uint32()
        self._pad0008 = v_bytes(size=4)
        self.RootDirectory = v_ptr64()
        self.ObjectName = v_ptr64()
        self.Attributes = v_uint32()
        self._pad0020 = v_bytes(size=4)
        self.SecurityDescriptor = v_ptr64()
        self.SecurityQualityOfService = v_ptr64()


class OBJECT_HEADER_AUDIT_INFO(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.SecurityDescriptor = v_ptr64()
        self.Reserved = v_uint64()


class EVENT_HEADER_EXTENDED_DATA_ITEM(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Reserved1 = v_uint16()
        self.ExtType = v_uint16()
        self.Linkage = v_uint16()
        self.DataSize = v_uint16()
        self.DataPtr = v_uint64()


class CM_FULL_RESOURCE_DESCRIPTOR(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.InterfaceType = v_uint32()
        self.BusNumber = v_uint32()
        self.PartialResourceList = CM_PARTIAL_RESOURCE_LIST()


class DBGKD_CONTEXT_EX(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Offset = v_uint32()
        self.ByteCount = v_uint32()
        self.BytesCopied = v_uint32()


class DBGKD_GET_VERSION64(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.MajorVersion = v_uint16()
        self.MinorVersion = v_uint16()
        self.ProtocolVersion = v_uint8()
        self.KdSecondaryVersion = v_uint8()
        self.Flags = v_uint16()
        self.MachineType = v_uint16()
        self.MaxPacketType = v_uint8()
        self.MaxStateChange = v_uint8()
        self.MaxManipulate = v_uint8()
        self.Simulation = v_uint8()
        self.Unused = vstruct.VArray([ v_uint16() for i in xrange(1) ])
        self.KernBase = v_uint64()
        self.PsLoadedModuleList = v_uint64()
        self.DebuggerDataList = v_uint64()


class POP_RW_LOCK(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Lock = EX_PUSH_LOCK()
        self.Thread = v_ptr64()


class KTIMER_TABLE(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.TimerExpiry = vstruct.VArray([ v_ptr64() for i in xrange(64) ])
        self.TimerEntries = vstruct.VArray([ KTIMER_TABLE_ENTRY() for i in xrange(256) ])


class _unnamed_28143(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Length = v_uint32()


class _unnamed_34971(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.PhysicalAddress = v_uint32()


class FAST_IO_DISPATCH(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.SizeOfFastIoDispatch = v_uint32()
        self._pad0008 = v_bytes(size=4)
        self.FastIoCheckIfPossible = v_ptr64()
        self.FastIoRead = v_ptr64()
        self.FastIoWrite = v_ptr64()
        self.FastIoQueryBasicInfo = v_ptr64()
        self.FastIoQueryStandardInfo = v_ptr64()
        self.FastIoLock = v_ptr64()
        self.FastIoUnlockSingle = v_ptr64()
        self.FastIoUnlockAll = v_ptr64()
        self.FastIoUnlockAllByKey = v_ptr64()
        self.FastIoDeviceControl = v_ptr64()
        self.AcquireFileForNtCreateSection = v_ptr64()
        self.ReleaseFileForNtCreateSection = v_ptr64()
        self.FastIoDetachDevice = v_ptr64()
        self.FastIoQueryNetworkOpenInfo = v_ptr64()
        self.AcquireForModWrite = v_ptr64()
        self.MdlRead = v_ptr64()
        self.MdlReadComplete = v_ptr64()
        self.PrepareMdlWrite = v_ptr64()
        self.MdlWriteComplete = v_ptr64()
        self.FastIoReadCompressed = v_ptr64()
        self.FastIoWriteCompressed = v_ptr64()
        self.MdlReadCompleteCompressed = v_ptr64()
        self.MdlWriteCompleteCompressed = v_ptr64()
        self.FastIoQueryOpen = v_ptr64()
        self.ReleaseForModWrite = v_ptr64()
        self.AcquireForCcFlush = v_ptr64()
        self.ReleaseForCcFlush = v_ptr64()


class IMAGE_RUNTIME_FUNCTION_ENTRY(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.BeginAddress = v_uint32()
        self.EndAddress = v_uint32()
        self.UnwindInfoAddress = v_uint32()


class _unnamed_36508(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Address = LARGE_INTEGER()
        self.DataPayload = v_uint32()
        self._pad0010 = v_bytes(size=4)


class _unnamed_34295(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Data = vstruct.VArray([ v_uint32() for i in xrange(3) ])


class _unnamed_25366(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.LowPart = v_uint32()
        self.HighPart = v_uint32()


class KFLOATING_SAVE(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Dummy = v_uint32()


class ETW_PERFECT_HASH_FUNCTION(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)


class NB10(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Signature = v_uint32()
        self.Offset = v_uint32()
        self.TimeStamp = v_uint32()
        self.Age = v_uint32()
        self.PdbName = vstruct.VArray([ v_uint8() for i in xrange(1) ])
        self._pad0014 = v_bytes(size=3)


class RTL_DYNAMIC_HASH_TABLE_CONTEXT(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.ChainHead = v_ptr64()
        self.PrevLinkage = v_ptr64()
        self.Signature = v_uint64()


class MMWSL(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.FirstFree = v_uint64()
        self.FirstDynamic = v_uint64()
        self.LastEntry = v_uint64()
        self.NextSlot = v_uint64()
        self.LastInitializedWsle = v_uint64()
        self.NextAgingSlot = v_uint64()
        self.NextAccessClearingSlot = v_uint64()
        self.LastAccessClearingRemainder = v_uint32()
        self.LastAgingRemainder = v_uint32()
        self.WsleSize = v_uint32()
        self._pad0048 = v_bytes(size=4)
        self.NonDirectCount = v_uint64()
        self.LowestPagableAddress = v_ptr64()
        self.NonDirectHash = v_ptr64()
        self.HashTableStart = v_ptr64()
        self.HighestPermittedHashAddress = v_ptr64()
        self.ActiveWsleCounts = vstruct.VArray([ v_uint64() for i in xrange(16) ])
        self.ActiveWsles = vstruct.VArray([ MI_ACTIVE_WSLE_LISTHEAD() for i in xrange(16) ])
        self.Wsle = v_ptr64()
        self.UserVaInfo = MI_USER_VA_INFO()


class KTMOBJECT_NAMESPACE_LINK(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Links = RTL_BALANCED_LINKS()
        self.Expired = v_uint8()
        self._pad0028 = v_bytes(size=7)


class _unnamed_34297(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Length = v_uint32()
        self.MinBusNumber = v_uint32()
        self.MaxBusNumber = v_uint32()
        self.Reserved = v_uint32()


class MI_IMAGE_SECURITY_REFERENCE(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.SecurityContext = IMAGE_SECURITY_CONTEXT()
        self.DynamicRelocations = v_ptr64()


class PPM_SELECTION_STATISTICS(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.PlatformOnlyCount = v_uint64()
        self.PreVetoCount = v_uint64()
        self.VetoCount = v_uint64()
        self.IdleDurationCount = v_uint64()
        self.LatencyCount = v_uint64()
        self.InterruptibleCount = v_uint64()
        self.DeviceDependencyCount = v_uint64()
        self.ProcessorDependencyCount = v_uint64()
        self.WrongProcessorCount = v_uint64()
        self.LegacyOverrideCount = v_uint64()
        self.CstateCheckCount = v_uint64()
        self.NoCStateCount = v_uint64()
        self.SelectedCount = v_uint64()


class WHEA_MEMORY_ERROR_SECTION(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.ValidBits = WHEA_MEMORY_ERROR_SECTION_VALIDBITS()
        self.ErrorStatus = WHEA_ERROR_STATUS()
        self.PhysicalAddress = v_uint64()
        self.PhysicalAddressMask = v_uint64()
        self.Node = v_uint16()
        self.Card = v_uint16()
        self.Module = v_uint16()
        self.Bank = v_uint16()
        self.Device = v_uint16()
        self.Row = v_uint16()
        self.Column = v_uint16()
        self.BitPosition = v_uint16()
        self.RequesterId = v_uint64()
        self.ResponderId = v_uint64()
        self.TargetId = v_uint64()
        self.ErrorType = v_uint8()


class DBGKD_CONTINUE(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.ContinueStatus = v_uint32()


class PROC_IDLE_STATE_ACCOUNTING(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.TotalTime = v_uint64()
        self.CancelCount = v_uint32()
        self.FailureCount = v_uint32()
        self.SuccessCount = v_uint32()
        self.InvalidBucketIndex = v_uint32()
        self.MinTime = v_uint64()
        self.MaxTime = v_uint64()
        self.SelectionStatistics = PPM_SELECTION_STATISTICS()
        self.IdleTimeBuckets = vstruct.VArray([ PROC_IDLE_STATE_BUCKET() for i in xrange(26) ])


class _unnamed_28315(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.InPath = v_uint8()
        self.Reserved = vstruct.VArray([ v_uint8() for i in xrange(3) ])
        self._pad0008 = v_bytes(size=4)
        self.Type = v_uint32()
        self._pad0010 = v_bytes(size=4)


class CPU_INFO(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.AsUINT32 = vstruct.VArray([ v_uint32() for i in xrange(4) ])


class POP_ACTION_TRIGGER(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Type = v_uint32()
        self.Flags = v_uint32()
        self.Wait = v_ptr64()
        self.Battery = _unnamed_36237()
        self._pad0018 = v_bytes(size=4)


class PPM_VETO_ACCOUNTING(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.VetoPresent = v_uint32()
        self._pad0008 = v_bytes(size=4)
        self.VetoListHead = LIST_ENTRY()


class WORK_QUEUE_ITEM(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.List = LIST_ENTRY()
        self.WorkerRoutine = v_ptr64()
        self.Parameter = v_ptr64()


class KGDTENTRY64(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.LimitLow = v_uint16()
        self.BaseLow = v_uint16()
        self.Bytes = _unnamed_25894()
        self.BaseUpper = v_uint32()
        self.MustBeZero = v_uint32()


class KSPECIAL_REGISTERS(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Cr0 = v_uint64()
        self.Cr2 = v_uint64()
        self.Cr3 = v_uint64()
        self.Cr4 = v_uint64()
        self.KernelDr0 = v_uint64()
        self.KernelDr1 = v_uint64()
        self.KernelDr2 = v_uint64()
        self.KernelDr3 = v_uint64()
        self.KernelDr6 = v_uint64()
        self.KernelDr7 = v_uint64()
        self.Gdtr = KDESCRIPTOR()
        self.Idtr = KDESCRIPTOR()
        self.Tr = v_uint16()
        self.Ldtr = v_uint16()
        self.MxCsr = v_uint32()
        self.DebugControl = v_uint64()
        self.LastBranchToRip = v_uint64()
        self.LastBranchFromRip = v_uint64()
        self.LastExceptionToRip = v_uint64()
        self.LastExceptionFromRip = v_uint64()
        self.Cr8 = v_uint64()
        self.MsrGsBase = v_uint64()
        self.MsrGsSwap = v_uint64()
        self.MsrStar = v_uint64()
        self.MsrLStar = v_uint64()
        self.MsrCStar = v_uint64()
        self.MsrSyscallMask = v_uint64()
        self.Xcr0 = v_uint64()


class KINTERRUPT(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Type = v_uint16()
        self.Size = v_uint16()
        self._pad0008 = v_bytes(size=4)
        self.InterruptListEntry = LIST_ENTRY()
        self.ServiceRoutine = v_ptr64()
        self.MessageServiceRoutine = v_ptr64()
        self.MessageIndex = v_uint32()
        self._pad0030 = v_bytes(size=4)
        self.ServiceContext = v_ptr64()
        self.SpinLock = v_uint64()
        self.TickCount = v_uint32()
        self._pad0048 = v_bytes(size=4)
        self.ActualLock = v_ptr64()
        self.DispatchAddress = v_ptr64()
        self.Vector = v_uint32()
        self.Irql = v_uint8()
        self.SynchronizeIrql = v_uint8()
        self.FloatingSave = v_uint8()
        self.Connected = v_uint8()
        self.Number = v_uint32()
        self.ShareVector = v_uint8()
        self.EmulateActiveBoth = v_uint8()
        self.ActiveCount = v_uint16()
        self.InternalState = v_uint32()
        self.Mode = v_uint32()
        self.Polarity = v_uint32()
        self.ServiceCount = v_uint32()
        self.DispatchCount = v_uint32()
        self._pad0080 = v_bytes(size=4)
        self.PassiveEvent = v_ptr64()
        self.TrapFrame = v_ptr64()
        self.DispatchCode = vstruct.VArray([ v_uint32() for i in xrange(4) ])
        self.DisconnectData = v_ptr64()
        self.ServiceThread = v_ptr64()
        self.IsrDpcStats = ISRDPCSTATS()
        self.ConnectionData = v_ptr64()
        self.Padding = vstruct.VArray([ v_uint8() for i in xrange(8) ])


class IMAGE_SECTION_HEADER(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Name = vstruct.VArray([ v_uint8() for i in xrange(8) ])
        self.Misc = _unnamed_34971()
        self.VirtualAddress = v_uint32()
        self.SizeOfRawData = v_uint32()
        self.PointerToRawData = v_uint32()
        self.PointerToRelocations = v_uint32()
        self.PointerToLinenumbers = v_uint32()
        self.NumberOfRelocations = v_uint16()
        self.NumberOfLinenumbers = v_uint16()
        self.Characteristics = v_uint32()


class RTL_CRITICAL_SECTION(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.DebugInfo = v_ptr64()
        self.LockCount = v_uint32()
        self.RecursionCount = v_uint32()
        self.OwningThread = v_ptr64()
        self.LockSemaphore = v_ptr64()
        self.SpinCount = v_uint64()


class DBGKM_EXCEPTION64(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.ExceptionRecord = EXCEPTION_RECORD64()
        self.FirstChance = v_uint32()
        self._pad00a0 = v_bytes(size=4)


class MI_VAD_SEQUENTIAL_INFO(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Length = v_uint64()


class ALPC_COMPLETION_PACKET_LOOKASIDE(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Lock = v_uint64()
        self.Size = v_uint32()
        self.ActiveCount = v_uint32()
        self.PendingNullCount = v_uint32()
        self.PendingCheckCompletionListCount = v_uint32()
        self.PendingDelete = v_uint32()
        self._pad0020 = v_bytes(size=4)
        self.FreeListHead = SINGLE_LIST_ENTRY()
        self.CompletionPort = v_ptr64()
        self.CompletionKey = v_ptr64()
        self.Entry = vstruct.VArray([ ALPC_COMPLETION_PACKET_LOOKASIDE_ENTRY() for i in xrange(1) ])


class XSAVE_FORMAT(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.ControlWord = v_uint16()
        self.StatusWord = v_uint16()
        self.TagWord = v_uint8()
        self.Reserved1 = v_uint8()
        self.ErrorOpcode = v_uint16()
        self.ErrorOffset = v_uint32()
        self.ErrorSelector = v_uint16()
        self.Reserved2 = v_uint16()
        self.DataOffset = v_uint32()
        self.DataSelector = v_uint16()
        self.Reserved3 = v_uint16()
        self.MxCsr = v_uint32()
        self.MxCsr_Mask = v_uint32()
        self.FloatRegisters = vstruct.VArray([ M128A() for i in xrange(8) ])
        self.XmmRegisters = vstruct.VArray([ M128A() for i in xrange(16) ])
        self.Reserved4 = vstruct.VArray([ v_uint8() for i in xrange(96) ])


class KSYSTEM_TIME(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.LowPart = v_uint32()
        self.High1Time = v_uint32()
        self.High2Time = v_uint32()


class SEGMENT_FLAGS(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.TotalNumberOfPtes4132 = v_uint16()
        self.FloppyMedia = v_uint8()
        self.ILOnly = v_uint8()


class PO_DEVICE_NOTIFY_ORDER(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Locked = v_uint8()
        self._pad0008 = v_bytes(size=7)
        self.WarmEjectPdoPointer = v_ptr64()
        self.OrderLevel = vstruct.VArray([ PO_NOTIFY_ORDER_LEVEL() for i in xrange(5) ])


class AER_BRIDGE_DESCRIPTOR_FLAGS(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.UncorrectableErrorMaskRW = v_uint16()


class PROCESSOR_IDLE_CONSTRAINTS(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.TotalTime = v_uint64()
        self.IdleTime = v_uint64()
        self.ExpectedIdleDuration = v_uint64()
        self.MaxIdleDuration = v_uint64()
        self.OverrideState = v_uint32()
        self.TimeCheck = v_uint32()
        self.PromotePercent = v_uint8()
        self.DemotePercent = v_uint8()
        self.Parked = v_uint8()
        self.Interruptible = v_uint8()
        self.PlatformIdle = v_uint8()
        self._pad0030 = v_bytes(size=3)
        self.IRHints = v_uint32()
        self.IRTruncatedHints = v_uint32()
        self.ExpectedWakeReason = v_uint8()
        self._pad0040 = v_bytes(size=7)


class _unnamed_28269(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Capabilities = v_ptr64()


class _unnamed_37228(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.DeviceNumber = v_uint32()


class POP_FX_PROVIDER(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Index = v_uint32()
        self.Activating = v_uint8()
        self._pad0008 = v_bytes(size=3)


class KQUEUE(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Header = DISPATCHER_HEADER()
        self.EntryListHead = LIST_ENTRY()
        self.CurrentCount = v_uint32()
        self.MaximumCount = v_uint32()
        self.ThreadListHead = LIST_ENTRY()


class DEVICE_DESCRIPTION(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Version = v_uint32()
        self.Master = v_uint8()
        self.ScatterGather = v_uint8()
        self.DemandMode = v_uint8()
        self.AutoInitialize = v_uint8()
        self.Dma32BitAddresses = v_uint8()
        self.IgnoreCount = v_uint8()
        self.Reserved1 = v_uint8()
        self.Dma64BitAddresses = v_uint8()
        self.BusNumber = v_uint32()
        self.DmaChannel = v_uint32()
        self.InterfaceType = v_uint32()
        self.DmaWidth = v_uint32()
        self.DmaSpeed = v_uint32()
        self.MaximumLength = v_uint32()
        self.DmaPort = v_uint32()
        self.DmaAddressWidth = v_uint32()
        self.DmaControllerInstance = v_uint32()
        self.DmaRequestLine = v_uint32()
        self._pad0038 = v_bytes(size=4)
        self.DeviceAddress = LARGE_INTEGER()


class POOL_TRACKER_TABLE(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Key = v_uint32()
        self.NonPagedAllocs = v_uint32()
        self.NonPagedFrees = v_uint32()
        self._pad0010 = v_bytes(size=4)
        self.NonPagedBytes = v_uint64()
        self.PagedAllocs = v_uint32()
        self.PagedFrees = v_uint32()
        self.PagedBytes = v_uint64()


class VF_TRACKER_STAMP(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Thread = v_ptr64()
        self.Flags = v_uint8()
        self.OldIrql = v_uint8()
        self.NewIrql = v_uint8()
        self.Processor = v_uint8()
        self._pad0010 = v_bytes(size=4)


class MI_CFG_BITMAP_INFO(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.BaseAddress = v_ptr64()
        self.RegionSize = v_uint64()
        self.VadBaseAddress = v_ptr64()
        self.BitmapVad = v_ptr64()


class SEGMENT(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.ControlArea = v_ptr64()
        self.TotalNumberOfPtes = v_uint32()
        self.SegmentFlags = SEGMENT_FLAGS()
        self.NumberOfCommittedPages = v_uint64()
        self.SizeOfSegment = v_uint64()
        self.ExtendInfo = v_ptr64()
        self.SegmentLock = EX_PUSH_LOCK()
        self.u1 = _unnamed_29193()
        self.u2 = _unnamed_29194()
        self.PrototypePte = v_ptr64()


class LUID_AND_ATTRIBUTES(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Luid = LUID()
        self.Attributes = v_uint32()


class _unnamed_33369(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.DeviceClass = _unnamed_34547()
        self._pad0020 = v_bytes(size=12)


class _unnamed_29823(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Disk = _unnamed_35059()


class iobuf(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.ptr = v_ptr64()
        self.cnt = v_uint32()
        self._pad0010 = v_bytes(size=4)
        self.base = v_ptr64()
        self.flag = v_uint32()
        self.file = v_uint32()
        self.charbuf = v_uint32()
        self.bufsiz = v_uint32()
        self.tmpfname = v_ptr64()


class IMAGE_NT_HEADERS64(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Signature = v_uint32()
        self.FileHeader = IMAGE_FILE_HEADER()
        self.OptionalHeader = IMAGE_OPTIONAL_HEADER64()


class PCW_COUNTER_DESCRIPTOR(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Id = v_uint16()
        self.StructIndex = v_uint16()
        self.Offset = v_uint16()
        self.Size = v_uint16()


class MMMOD_WRITER_MDL_ENTRY(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Links = LIST_ENTRY()
        self.u = _unnamed_29310()
        self.Irp = v_ptr64()
        self.u1 = MODWRITER_FLAGS()
        self.StoreWriteRefCount = v_uint32()
        self.StoreWriteCompletionApc = KAPC()
        self.ByteCount = v_uint32()
        self._pad0090 = v_bytes(size=4)
        self.PagingFile = v_ptr64()
        self.File = v_ptr64()
        self.ControlArea = v_ptr64()
        self.FileResource = v_ptr64()
        self.WriteOffset = LARGE_INTEGER()
        self.IssueTime = LARGE_INTEGER()
        self.PointerMdl = v_ptr64()
        self.Mdl = MDL()
        self.Page = vstruct.VArray([ v_uint64() for i in xrange(1) ])


class MI_ACTIVE_WSLE_LISTHEAD(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Flink = v_uint64()
        self.Blink = v_uint64()


class PCW_MASK_INFORMATION(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.CounterMask = v_uint64()
        self.InstanceMask = v_ptr64()
        self.InstanceId = v_uint32()
        self.CollectMultiple = v_uint8()
        self._pad0018 = v_bytes(size=3)
        self.Buffer = v_ptr64()
        self.CancelEvent = v_ptr64()


class KTHREAD(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Header = DISPATCHER_HEADER()
        self.SListFaultAddress = v_ptr64()
        self.QuantumTarget = v_uint64()
        self.InitialStack = v_ptr64()
        self.StackLimit = v_ptr64()
        self.StackBase = v_ptr64()
        self.ThreadLock = v_uint64()
        self.CycleTime = v_uint64()
        self.CurrentRunTime = v_uint32()
        self.ExpectedRunTime = v_uint32()
        self.KernelStack = v_ptr64()
        self.StateSaveArea = v_ptr64()
        self.SchedulingGroup = v_ptr64()
        self.WaitRegister = KWAIT_STATUS_REGISTER()
        self.Running = v_uint8()
        self.Alerted = vstruct.VArray([ v_uint8() for i in xrange(2) ])
        self.SpareMiscFlag0 = v_uint32()
        self.AutoAlignment = v_uint32()
        self.Spare0 = v_uint32()
        self.SystemCallNumber = v_uint32()
        self.Spare1 = v_uint32()
        self.FirstArgument = v_ptr64()
        self.TrapFrame = v_ptr64()
        self.ApcState = KAPC_STATE()
        self.WaitStatus = v_uint64()
        self.WaitBlockList = v_ptr64()
        self.WaitListEntry = LIST_ENTRY()
        self.Queue = v_ptr64()
        self.Teb = v_ptr64()
        self.RelativeTimerBias = v_uint64()
        self.Timer = KTIMER()
        self.WaitBlock = vstruct.VArray([ KWAIT_BLOCK() for i in xrange(4) ])
        self.TebMappedLowVa = v_ptr64()
        self.QueueListEntry = LIST_ENTRY()
        self.NextProcessor = v_uint32()
        self.QueuePriority = v_uint32()
        self.Process = v_ptr64()
        self.UserAffinity = GROUP_AFFINITY()
        self.Affinity = GROUP_AFFINITY()
        self.ApcStatePointer = vstruct.VArray([ v_ptr64() for i in xrange(2) ])
        self.SavedApcState = KAPC_STATE()
        self.SchedulerApc = KAPC()
        self.SuspendEvent = KEVENT()
        self.ThreadListEntry = LIST_ENTRY()
        self.MutantListHead = LIST_ENTRY()
        self.LockEntriesFreeList = SINGLE_LIST_ENTRY()
        self.LockEntries = vstruct.VArray([ KLOCK_ENTRY() for i in xrange(6) ])
        self.PropagateBoostsEntry = SINGLE_LIST_ENTRY()
        self.IoSelfBoostsEntry = SINGLE_LIST_ENTRY()
        self.PriorityFloorCounts = vstruct.VArray([ v_uint8() for i in xrange(16) ])
        self.PriorityFloorSummary = v_uint32()
        self.AbCompletedIoBoostCount = v_uint32()
        self.AbReferenceCount = v_uint16()
        self.AbFreeEntryCount = v_uint8()
        self.AbWaitEntryCount = v_uint8()
        self.ForegroundLossTime = v_uint32()
        self.GlobalForegroundListEntry = LIST_ENTRY()
        self.ReadOperationCount = v_uint64()
        self.WriteOperationCount = v_uint64()
        self.OtherOperationCount = v_uint64()
        self.ReadTransferCount = v_uint64()
        self.WriteTransferCount = v_uint64()
        self.OtherTransferCount = v_uint64()


class CM_INTENT_LOCK(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.OwnerCount = v_uint32()
        self._pad0008 = v_bytes(size=4)
        self.OwnerTable = v_ptr64()


class _unnamed_36238(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Type = v_uint32()


class ALPC_PORT(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.PortListEntry = LIST_ENTRY()
        self.CommunicationInfo = v_ptr64()
        self.OwnerProcess = v_ptr64()
        self.CompletionPort = v_ptr64()
        self.CompletionKey = v_ptr64()
        self.CompletionPacketLookaside = v_ptr64()
        self.PortContext = v_ptr64()
        self.StaticSecurity = SECURITY_CLIENT_CONTEXT()
        self.IncomingQueueLock = EX_PUSH_LOCK()
        self.MainQueue = LIST_ENTRY()
        self.LargeMessageQueue = LIST_ENTRY()
        self.PendingQueueLock = EX_PUSH_LOCK()
        self.PendingQueue = LIST_ENTRY()
        self.WaitQueueLock = EX_PUSH_LOCK()
        self.WaitQueue = LIST_ENTRY()
        self.Semaphore = v_ptr64()
        self.PortAttributes = ALPC_PORT_ATTRIBUTES()
        self.ResourceListLock = EX_PUSH_LOCK()
        self.ResourceListHead = LIST_ENTRY()
        self.PortObjectLock = EX_PUSH_LOCK()
        self.CompletionList = v_ptr64()
        self.CallbackObject = v_ptr64()
        self.CallbackContext = v_ptr64()
        self.CanceledQueue = LIST_ENTRY()
        self.SequenceNo = v_uint32()
        self.ReferenceNo = v_uint32()
        self.ReferenceNoWait = v_ptr64()
        self.u1 = _unnamed_31211()
        self._pad0190 = v_bytes(size=4)
        self.TargetQueuePort = v_ptr64()
        self.TargetSequencePort = v_ptr64()
        self.CachedMessage = v_ptr64()
        self.MainQueueLength = v_uint32()
        self.LargeMessageQueueLength = v_uint32()
        self.PendingQueueLength = v_uint32()
        self.CanceledQueueLength = v_uint32()
        self.WaitQueueLength = v_uint32()
        self._pad01c0 = v_bytes(size=4)


class _unnamed_34557(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.NotificationCode = v_uint32()
        self.NotificationData = v_uint32()


class _unnamed_34555(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Notification = v_ptr64()


class _unnamed_36237(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Level = v_uint32()


class _unnamed_34552(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.NotificationStructure = v_ptr64()
        self.DeviceId = vstruct.VArray([ v_uint16() for i in xrange(1) ])
        self._pad0010 = v_bytes(size=6)


class _unnamed_34550(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.DeviceId = vstruct.VArray([ v_uint16() for i in xrange(1) ])


class RTL_TIME_ZONE_INFORMATION(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Bias = v_uint32()
        self.StandardName = vstruct.VArray([ v_uint16() for i in xrange(32) ])
        self.StandardStart = TIME_FIELDS()
        self.StandardBias = v_uint32()
        self.DaylightName = vstruct.VArray([ v_uint16() for i in xrange(32) ])
        self.DaylightStart = TIME_FIELDS()
        self.DaylightBias = v_uint32()


class _unnamed_28177(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.SecurityInformation = v_uint32()
        self._pad0008 = v_bytes(size=4)
        self.Length = v_uint32()
        self._pad0010 = v_bytes(size=4)


class CONTEXT(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.P1Home = v_uint64()
        self.P2Home = v_uint64()
        self.P3Home = v_uint64()
        self.P4Home = v_uint64()
        self.P5Home = v_uint64()
        self.P6Home = v_uint64()
        self.ContextFlags = v_uint32()
        self.MxCsr = v_uint32()
        self.SegCs = v_uint16()
        self.SegDs = v_uint16()
        self.SegEs = v_uint16()
        self.SegFs = v_uint16()
        self.SegGs = v_uint16()
        self.SegSs = v_uint16()
        self.EFlags = v_uint32()
        self.Dr0 = v_uint64()
        self.Dr1 = v_uint64()
        self.Dr2 = v_uint64()
        self.Dr3 = v_uint64()
        self.Dr6 = v_uint64()
        self.Dr7 = v_uint64()
        self.Rax = v_uint64()
        self.Rcx = v_uint64()
        self.Rdx = v_uint64()
        self.Rbx = v_uint64()
        self.Rsp = v_uint64()
        self.Rbp = v_uint64()
        self.Rsi = v_uint64()
        self.Rdi = v_uint64()
        self.R8 = v_uint64()
        self.R9 = v_uint64()
        self.R10 = v_uint64()
        self.R11 = v_uint64()
        self.R12 = v_uint64()
        self.R13 = v_uint64()
        self.R14 = v_uint64()
        self.R15 = v_uint64()
        self.Rip = v_uint64()
        self.FltSave = XSAVE_FORMAT()
        self.VectorRegister = vstruct.VArray([ M128A() for i in xrange(26) ])
        self.VectorControl = v_uint64()
        self.DebugControl = v_uint64()
        self.LastBranchToRip = v_uint64()
        self.LastBranchFromRip = v_uint64()
        self.LastExceptionToRip = v_uint64()
        self.LastExceptionFromRip = v_uint64()


class VF_TARGET_DRIVER(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.TreeNode = VF_AVL_TREE_NODE()
        self.u1 = _unnamed_34482()
        self.VerifiedData = v_ptr64()


class DBGKD_GET_CONTEXT(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Unused = v_uint32()


class VACB_LEVEL_ALLOCATION_LIST(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.VacbLevelList = LIST_ENTRY()
        self.VacbLevelWithBcbListHeads = v_ptr64()
        self.VacbLevelsAllocated = v_uint32()
        self._pad0020 = v_bytes(size=4)


class PS_PROTECTION(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Level = v_uint8()


class KTRANSACTION(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.OutcomeEvent = KEVENT()
        self.cookie = v_uint32()
        self._pad0020 = v_bytes(size=4)
        self.Mutex = KMUTANT()
        self.TreeTx = v_ptr64()
        self.GlobalNamespaceLink = KTMOBJECT_NAMESPACE_LINK()
        self.TmNamespaceLink = KTMOBJECT_NAMESPACE_LINK()
        self.UOW = GUID()
        self.State = v_uint32()
        self.Flags = v_uint32()
        self.EnlistmentHead = LIST_ENTRY()
        self.EnlistmentCount = v_uint32()
        self.RecoverableEnlistmentCount = v_uint32()
        self.PrePrepareRequiredEnlistmentCount = v_uint32()
        self.PrepareRequiredEnlistmentCount = v_uint32()
        self.OutcomeRequiredEnlistmentCount = v_uint32()
        self.PendingResponses = v_uint32()
        self.SuperiorEnlistment = v_ptr64()
        self.LastLsn = CLS_LSN()
        self.PromotedEntry = LIST_ENTRY()
        self.PromoterTransaction = v_ptr64()
        self.PromotePropagation = v_ptr64()
        self.IsolationLevel = v_uint32()
        self.IsolationFlags = v_uint32()
        self.Timeout = LARGE_INTEGER()
        self.Description = UNICODE_STRING()
        self.RollbackThread = v_ptr64()
        self.RollbackWorkItem = WORK_QUEUE_ITEM()
        self.RollbackDpc = KDPC()
        self.RollbackTimer = KTIMER()
        self.LsnOrderedEntry = LIST_ENTRY()
        self.Outcome = v_uint32()
        self._pad0200 = v_bytes(size=4)
        self.Tm = v_ptr64()
        self.CommitReservation = v_uint64()
        self.TransactionHistory = vstruct.VArray([ KTRANSACTION_HISTORY() for i in xrange(10) ])
        self.TransactionHistoryCount = v_uint32()
        self._pad0268 = v_bytes(size=4)
        self.DTCPrivateInformation = v_ptr64()
        self.DTCPrivateInformationLength = v_uint32()
        self._pad0278 = v_bytes(size=4)
        self.DTCPrivateInformationMutex = KMUTANT()
        self.PromotedTxSelfHandle = v_ptr64()
        self.PendingPromotionCount = v_uint32()
        self._pad02c0 = v_bytes(size=4)
        self.PromotionCompletedEvent = KEVENT()


class GENERIC_MAPPING(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.GenericRead = v_uint32()
        self.GenericWrite = v_uint32()
        self.GenericExecute = v_uint32()
        self.GenericAll = v_uint32()


class DEVICE_NODE(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Sibling = v_ptr64()
        self.Child = v_ptr64()
        self.Parent = v_ptr64()
        self.LastChild = v_ptr64()
        self.PhysicalDeviceObject = v_ptr64()
        self.InstancePath = UNICODE_STRING()
        self.ServiceName = UNICODE_STRING()
        self.PendingIrp = v_ptr64()
        self.FxDevice = v_ptr64()
        self.FxDeviceLock = v_uint32()
        self._pad0060 = v_bytes(size=4)
        self.FxRemoveEvent = KEVENT()
        self.FxActivationCount = v_uint32()
        self.FxSleepCount = v_uint32()
        self.Plugin = v_ptr64()
        self.Level = v_uint32()
        self.CurrentPowerState = POWER_STATE()
        self.Notify = PO_DEVICE_NOTIFY()
        self.PoIrpManager = PO_IRP_MANAGER()
        self.UniqueId = UNICODE_STRING()
        self.PowerFlags = v_uint32()
        self.State = v_uint32()
        self.PreviousState = v_uint32()
        self.StateHistory = vstruct.VArray([ PNP_DEVNODE_STATE() for i in xrange(20) ])
        self.StateHistoryEntry = v_uint32()
        self.CompletionStatus = v_uint32()
        self.Flags = v_uint32()
        self.UserFlags = v_uint32()
        self.Problem = v_uint32()
        self.ProblemStatus = v_uint32()
        self._pad01a0 = v_bytes(size=4)
        self.ResourceList = v_ptr64()
        self.ResourceListTranslated = v_ptr64()
        self.DuplicatePDO = v_ptr64()
        self.ResourceRequirements = v_ptr64()
        self.InterfaceType = v_uint32()
        self.BusNumber = v_uint32()
        self.ChildInterfaceType = v_uint32()
        self.ChildBusNumber = v_uint32()
        self.ChildBusTypeIndex = v_uint16()
        self.RemovalPolicy = v_uint8()
        self.HardwareRemovalPolicy = v_uint8()
        self._pad01d8 = v_bytes(size=4)
        self.TargetDeviceNotify = LIST_ENTRY()
        self.DeviceArbiterList = LIST_ENTRY()
        self.DeviceTranslatorList = LIST_ENTRY()
        self.NoTranslatorMask = v_uint16()
        self.QueryTranslatorMask = v_uint16()
        self.NoArbiterMask = v_uint16()
        self.QueryArbiterMask = v_uint16()
        self.OverUsed1 = _unnamed_29900()
        self.OverUsed2 = _unnamed_29901()
        self.BootResources = v_ptr64()
        self.BootResourcesTranslated = v_ptr64()
        self.CapabilityFlags = v_uint32()
        self._pad0238 = v_bytes(size=4)
        self.DockInfo = _unnamed_29902()
        self.DisableableDepends = v_uint32()
        self._pad0260 = v_bytes(size=4)
        self.PendedSetInterfaceState = LIST_ENTRY()
        self.LegacyBusListEntry = LIST_ENTRY()
        self.DriverUnloadRetryCount = v_uint32()
        self._pad0288 = v_bytes(size=4)
        self.PreviousParent = v_ptr64()
        self.DeletedChildren = v_uint32()
        self.NumaNodeIndex = v_uint32()
        self.ContainerID = GUID()
        self.OverrideFlags = v_uint8()
        self._pad02ac = v_bytes(size=3)
        self.DeviceIdsHash = v_uint32()
        self.RequiresUnloadedDriver = v_uint8()
        self._pad02b8 = v_bytes(size=7)
        self.PendingEjectRelations = v_ptr64()
        self.StateFlags = v_uint32()
        self._pad02c8 = v_bytes(size=4)


class KALPC_MESSAGE_ATTRIBUTES(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.ClientContext = v_ptr64()
        self.ServerContext = v_ptr64()
        self.PortContext = v_ptr64()
        self.CancelPortContext = v_ptr64()
        self.SecurityData = v_ptr64()
        self.View = v_ptr64()
        self.HandleData = v_ptr64()


class PPC_DBGKD_CONTROL_SET(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Continue = v_uint32()
        self.CurrentSymbolStart = v_uint32()
        self.CurrentSymbolEnd = v_uint32()


class PROC_PERF_LOAD(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.BusyPercentage = v_uint8()
        self.FrequencyPercentage = v_uint8()


class PROCESSOR_PERFSTATE_POLICY(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Revision = v_uint32()
        self.MaxThrottle = v_uint8()
        self.MinThrottle = v_uint8()
        self.BusyAdjThreshold = v_uint8()
        self.Spare = v_uint8()
        self.TimeCheck = v_uint32()
        self.IncreaseTime = v_uint32()
        self.DecreaseTime = v_uint32()
        self.IncreasePercent = v_uint32()
        self.DecreasePercent = v_uint32()


class _unnamed_31134(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.s1 = _unnamed_31135()


class _unnamed_31135(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.ReferenceCache = v_uint8()


class OBJECT_HEADER_PROCESS_INFO(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.ExclusiveProcess = v_ptr64()
        self.Reserved = v_uint64()


class STACK_TABLE(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.NumStackTraces = v_uint16()
        self.TraceCapacity = v_uint16()
        self._pad0008 = v_bytes(size=4)
        self.StackTrace = vstruct.VArray([ v_ptr64() for i in xrange(16) ])
        self.StackTableHash = vstruct.VArray([ v_uint16() for i in xrange(16381) ])
        self._pad8088 = v_bytes(size=6)


class IOP_FILE_OBJECT_EXTENSION(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.FoExtFlags = v_uint32()
        self._pad0008 = v_bytes(size=4)
        self.FoExtPerTypeExtension = vstruct.VArray([ v_ptr64() for i in xrange(7) ])
        self.FoIoPriorityHint = v_uint32()
        self._pad0048 = v_bytes(size=4)


class OBJECT_HEADER_HANDLE_INFO(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.HandleCountDataBase = v_ptr64()
        self._pad0010 = v_bytes(size=8)


class ETW_LOGGER_HANDLE(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.DereferenceAndLeave = v_uint8()


class IMAGE_ROM_OPTIONAL_HEADER(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Magic = v_uint16()
        self.MajorLinkerVersion = v_uint8()
        self.MinorLinkerVersion = v_uint8()
        self.SizeOfCode = v_uint32()
        self.SizeOfInitializedData = v_uint32()
        self.SizeOfUninitializedData = v_uint32()
        self.AddressOfEntryPoint = v_uint32()
        self.BaseOfCode = v_uint32()
        self.BaseOfData = v_uint32()
        self.BaseOfBss = v_uint32()
        self.GprMask = v_uint32()
        self.CprMask = vstruct.VArray([ v_uint32() for i in xrange(4) ])
        self.GpValue = v_uint32()


class _unnamed_34941(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Start = LARGE_INTEGER()
        self.Length64 = v_uint32()


class POP_FX_PLUGIN(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Link = LIST_ENTRY()
        self.Version = v_uint32()
        self._pad0018 = v_bytes(size=4)
        self.Flags = v_uint64()
        self.WorkQueue = KQUEUE()
        self.AcceptDeviceNotification = v_ptr64()
        self.AcceptProcessorNotification = v_ptr64()
        self.WorkOrderCount = v_uint32()
        self._pad0078 = v_bytes(size=4)
        self.WorkOrders = vstruct.VArray([ POP_FX_WORK_ORDER() for i in xrange(1) ])


class _unnamed_30967(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.CriticalSection = RTL_CRITICAL_SECTION()
        self._pad0068 = v_bytes(size=64)


class _unnamed_27991(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.DeviceQueueEntry = KDEVICE_QUEUE_ENTRY()
        self._pad0020 = v_bytes(size=8)
        self.Thread = v_ptr64()
        self.AuxiliaryBuffer = v_ptr64()
        self.ListEntry = LIST_ENTRY()
        self.CurrentStackLocation = v_ptr64()
        self.OriginalFileObject = v_ptr64()
        self.IrpExtension = v_ptr64()


class LOGGED_STREAM_CALLBACK_V1(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.LogHandle = v_ptr64()
        self.FlushToLsnRoutine = v_ptr64()


class MI_PTE_CHAIN_HEAD(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Flink = MMPTE()
        self.Blink = MMPTE()
        self.PteBase = v_ptr64()


class POOL_DESCRIPTOR(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.PoolType = v_uint32()
        self._pad0008 = v_bytes(size=4)
        self.PagedLock = FAST_MUTEX()
        self.RunningAllocs = v_uint32()
        self.RunningDeAllocs = v_uint32()
        self.TotalBigPages = v_uint32()
        self.ThreadsProcessingDeferrals = v_uint32()
        self.TotalBytes = v_uint64()
        self._pad0080 = v_bytes(size=40)
        self.PoolIndex = v_uint32()
        self._pad00c0 = v_bytes(size=60)
        self.TotalPages = v_uint32()
        self._pad0100 = v_bytes(size=60)
        self.PendingFrees = SINGLE_LIST_ENTRY()
        self.PendingFreeDepth = v_uint32()
        self._pad0140 = v_bytes(size=52)
        self.ListHeads = vstruct.VArray([ LIST_ENTRY() for i in xrange(256) ])


class OBJECT_REF_STACK_INFO(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Sequence = v_uint32()
        self.Index = v_uint16()
        self.NumTraces = v_uint16()
        self.Tag = v_uint32()


class _unnamed_28291(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Lock = v_uint8()


class PF_KERNEL_GLOBALS(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.AccessBufferAgeThreshold = v_uint64()
        self.AccessBufferRef = EX_RUNDOWN_REF()
        self.AccessBufferExistsEvent = KEVENT()
        self.AccessBufferMax = v_uint32()
        self._pad0040 = v_bytes(size=20)
        self.AccessBufferList = SLIST_HEADER()
        self.StreamSequenceNumber = v_uint32()
        self.Flags = v_uint32()
        self.ScenarioPrefetchCount = v_uint32()
        self._pad0060 = v_bytes(size=4)


class SYNCH_COUNTERS(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.SpinLockAcquireCount = v_uint32()
        self.SpinLockContentionCount = v_uint32()
        self.SpinLockSpinCount = v_uint32()
        self.IpiSendRequestBroadcastCount = v_uint32()
        self.IpiSendRequestRoutineCount = v_uint32()
        self.IpiSendSoftwareInterruptCount = v_uint32()
        self.ExInitializeResourceCount = v_uint32()
        self.ExReInitializeResourceCount = v_uint32()
        self.ExDeleteResourceCount = v_uint32()
        self.ExecutiveResourceAcquiresCount = v_uint32()
        self.ExecutiveResourceContentionsCount = v_uint32()
        self.ExecutiveResourceReleaseExclusiveCount = v_uint32()
        self.ExecutiveResourceReleaseSharedCount = v_uint32()
        self.ExecutiveResourceConvertsCount = v_uint32()
        self.ExAcqResExclusiveAttempts = v_uint32()
        self.ExAcqResExclusiveAcquiresExclusive = v_uint32()
        self.ExAcqResExclusiveAcquiresExclusiveRecursive = v_uint32()
        self.ExAcqResExclusiveWaits = v_uint32()
        self.ExAcqResExclusiveNotAcquires = v_uint32()
        self.ExAcqResSharedAttempts = v_uint32()
        self.ExAcqResSharedAcquiresExclusive = v_uint32()
        self.ExAcqResSharedAcquiresShared = v_uint32()
        self.ExAcqResSharedAcquiresSharedRecursive = v_uint32()
        self.ExAcqResSharedWaits = v_uint32()
        self.ExAcqResSharedNotAcquires = v_uint32()
        self.ExAcqResSharedStarveExclusiveAttempts = v_uint32()
        self.ExAcqResSharedStarveExclusiveAcquiresExclusive = v_uint32()
        self.ExAcqResSharedStarveExclusiveAcquiresShared = v_uint32()
        self.ExAcqResSharedStarveExclusiveAcquiresSharedRecursive = v_uint32()
        self.ExAcqResSharedStarveExclusiveWaits = v_uint32()
        self.ExAcqResSharedStarveExclusiveNotAcquires = v_uint32()
        self.ExAcqResSharedWaitForExclusiveAttempts = v_uint32()
        self.ExAcqResSharedWaitForExclusiveAcquiresExclusive = v_uint32()
        self.ExAcqResSharedWaitForExclusiveAcquiresShared = v_uint32()
        self.ExAcqResSharedWaitForExclusiveAcquiresSharedRecursive = v_uint32()
        self.ExAcqResSharedWaitForExclusiveWaits = v_uint32()
        self.ExAcqResSharedWaitForExclusiveNotAcquires = v_uint32()
        self.ExSetResOwnerPointerExclusive = v_uint32()
        self.ExSetResOwnerPointerSharedNew = v_uint32()
        self.ExSetResOwnerPointerSharedOld = v_uint32()
        self.ExTryToAcqExclusiveAttempts = v_uint32()
        self.ExTryToAcqExclusiveAcquires = v_uint32()
        self.ExBoostExclusiveOwner = v_uint32()
        self.ExBoostSharedOwners = v_uint32()
        self.ExEtwSynchTrackingNotificationsCount = v_uint32()
        self.ExEtwSynchTrackingNotificationsAccountedCount = v_uint32()


class DBGKD_QUERY_SPECIAL_CALLS(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.NumberOfSpecialCalls = v_uint32()


class _unnamed_36306(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.MissedEtwRegistration = v_uint32()


class DBGKD_READ_MEMORY64(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.TargetBaseAddress = v_uint64()
        self.TransferCount = v_uint32()
        self.ActualBytesRead = v_uint32()


class MI_SYSTEM_PTE_TYPE(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Bitmap = RTL_BITMAP_EX()
        self.BasePte = v_ptr64()
        self.Flags = v_uint32()
        self.VaType = v_uint32()
        self.FailureCount = v_ptr64()
        self.PteFailures = v_uint32()
        self._pad0030 = v_bytes(size=4)
        self.SpinLock = v_uint64()
        self.Vm = v_ptr64()
        self.TotalSystemPtes = v_uint64()
        self.Hint = v_uint64()
        self.CachedPtes = v_ptr64()
        self.TotalFreeSystemPtes = v_uint64()
        self.CachedPteCount = v_uint32()
        self._pad0068 = v_bytes(size=4)


class KEXCEPTION_FRAME(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.P1Home = v_uint64()
        self.P2Home = v_uint64()
        self.P3Home = v_uint64()
        self.P4Home = v_uint64()
        self.P5 = v_uint64()
        self.Spare1 = v_uint64()
        self.Xmm6 = M128A()
        self.Xmm7 = M128A()
        self.Xmm8 = M128A()
        self.Xmm9 = M128A()
        self.Xmm10 = M128A()
        self.Xmm11 = M128A()
        self.Xmm12 = M128A()
        self.Xmm13 = M128A()
        self.Xmm14 = M128A()
        self.Xmm15 = M128A()
        self.TrapFrame = v_uint64()
        self.OutputBuffer = v_uint64()
        self.OutputLength = v_uint64()
        self.Spare2 = v_uint64()
        self.MxCsr = v_uint64()
        self.Rbp = v_uint64()
        self.Rbx = v_uint64()
        self.Rdi = v_uint64()
        self.Rsi = v_uint64()
        self.R12 = v_uint64()
        self.R13 = v_uint64()
        self.R14 = v_uint64()
        self.R15 = v_uint64()
        self.Return = v_uint64()


class RTL_DYNAMIC_HASH_TABLE(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Flags = v_uint32()
        self.Shift = v_uint32()
        self.TableSize = v_uint32()
        self.Pivot = v_uint32()
        self.DivisorMask = v_uint32()
        self.NumEntries = v_uint32()
        self.NonEmptyBuckets = v_uint32()
        self.NumEnumerators = v_uint32()
        self.Directory = v_ptr64()


class PO_MEMORY_IMAGE(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Signature = v_uint32()
        self.ImageType = v_uint32()
        self.CheckSum = v_uint32()
        self.LengthSelf = v_uint32()
        self.PageSelf = v_uint64()
        self.PageSize = v_uint32()
        self._pad0020 = v_bytes(size=4)
        self.SystemTime = LARGE_INTEGER()
        self.InterruptTime = v_uint64()
        self.FeatureFlags = v_uint64()
        self.HiberFlags = v_uint8()
        self.spare = vstruct.VArray([ v_uint8() for i in xrange(3) ])
        self.NoHiberPtes = v_uint32()
        self.HiberVa = v_uint64()
        self.NoFreePages = v_uint32()
        self.FreeMapCheck = v_uint32()
        self.WakeCheck = v_uint32()
        self._pad0058 = v_bytes(size=4)
        self.NumPagesForLoader = v_uint64()
        self.FirstBootRestorePage = v_uint64()
        self.FirstKernelRestorePage = v_uint64()
        self.PerfInfo = PO_HIBER_PERF()
        self.FirmwareRuntimeInformationPages = v_uint32()
        self._pad0220 = v_bytes(size=4)
        self.FirmwareRuntimeInformation = vstruct.VArray([ v_uint64() for i in xrange(1) ])
        self.SiLogOffset = v_uint32()
        self.NoBootLoaderLogPages = v_uint32()
        self.BootLoaderLogPages = vstruct.VArray([ v_uint64() for i in xrange(24) ])
        self.NotUsed = v_uint32()
        self.ResumeContextCheck = v_uint32()
        self.ResumeContextPages = v_uint32()
        self.Hiberboot = v_uint8()
        self._pad0300 = v_bytes(size=3)
        self.HvCr3 = v_uint64()
        self.HvEntryPoint = v_uint64()
        self.HvReservedTransitionAddress = v_uint64()
        self.HvReservedTransitionAddressSize = v_uint64()
        self.BootFlags = v_uint64()
        self.HalEntryPointPhysical = v_uint64()
        self.HighestPhysicalPage = v_uint64()
        self.BitlockerKeyPfns = vstruct.VArray([ v_uint64() for i in xrange(4) ])
        self.HardwareSignature = v_uint32()
        self._pad0360 = v_bytes(size=4)


class LOOKASIDE_LIST_EX(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.L = GENERAL_LOOKASIDE_POOL()


class ETHREAD(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Tcb = KTHREAD()
        self.CreateTime = LARGE_INTEGER()
        self.ExitTime = LARGE_INTEGER()
        self._pad05e8 = v_bytes(size=8)
        self.ChargeOnlySession = v_ptr64()
        self.PostBlockList = LIST_ENTRY()
        self.TerminationPort = v_ptr64()
        self.ActiveTimerListLock = v_uint64()
        self.ActiveTimerListHead = LIST_ENTRY()
        self.Cid = CLIENT_ID()
        self.KeyedWaitSemaphore = KSEMAPHORE()
        self.ClientSecurity = PS_CLIENT_SECURITY_CONTEXT()
        self.IrpList = LIST_ENTRY()
        self.TopLevelIrp = v_uint64()
        self.DeviceToVerify = v_ptr64()
        self.Win32StartAddress = v_ptr64()
        self.LegacyPowerObject = v_ptr64()
        self.ThreadListEntry = LIST_ENTRY()
        self.RundownProtect = EX_RUNDOWN_REF()
        self.ThreadLock = EX_PUSH_LOCK()
        self.ReadClusterSize = v_uint32()
        self.MmLockOrdering = v_uint32()
        self.CmLockOrdering = v_uint32()
        self.CrossThreadFlags = v_uint32()
        self.SameThreadPassiveFlags = v_uint32()
        self.SameThreadApcFlags = v_uint32()
        self.CacheManagerActive = v_uint8()
        self.DisablePageFaultClustering = v_uint8()
        self.ActiveFaultCount = v_uint8()
        self.LockOrderState = v_uint8()
        self._pad06c8 = v_bytes(size=4)
        self.AlpcMessageId = v_uint64()
        self.AlpcMessage = v_ptr64()
        self.ExitStatus = v_uint32()
        self._pad06e0 = v_bytes(size=4)
        self.AlpcWaitListEntry = LIST_ENTRY()
        self.CacheManagerCount = v_uint32()
        self.IoBoostCount = v_uint32()
        self.BoostList = LIST_ENTRY()
        self.DeboostList = LIST_ENTRY()
        self.BoostListLock = v_uint64()
        self.IrpListLock = v_uint64()
        self.ReservedForSynchTracking = v_ptr64()
        self.CmCallbackListHead = SINGLE_LIST_ENTRY()
        self.ActivityId = v_ptr64()
        self.SeLearningModeListHead = SINGLE_LIST_ENTRY()
        self.VerifierContext = v_ptr64()
        self.KernelStackReference = v_uint32()
        self._pad0758 = v_bytes(size=4)
        self.AdjustedClientToken = v_ptr64()
        self.UserFsBase = v_uint32()
        self._pad0768 = v_bytes(size=4)
        self.UserGsBase = v_uint64()
        self.PicoContext = v_ptr64()


class EVENT_DATA_DESCRIPTOR(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Ptr = v_uint64()
        self.Size = v_uint32()
        self.Reserved = v_uint32()


class _unnamed_29474(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.NewCell = _unnamed_34212()


class HHIVE(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Signature = v_uint32()
        self._pad0008 = v_bytes(size=4)
        self.GetCellRoutine = v_ptr64()
        self.Allocate = v_ptr64()
        self.Free = v_ptr64()
        self.FileWrite = v_ptr64()
        self.FileRead = v_ptr64()
        self.HiveLoadFailure = v_ptr64()
        self.BaseBlock = v_ptr64()
        self.DirtyVector = RTL_BITMAP()
        self.DirtyCount = v_uint32()
        self.DirtyAlloc = v_uint32()
        self.UnreconciledVector = RTL_BITMAP()
        self.UnreconciledCount = v_uint32()
        self.BaseBlockAlloc = v_uint32()
        self.Cluster = v_uint32()
        self.Flat = v_uint8()
        self.DirtyFlag = v_uint8()
        self._pad0078 = v_bytes(size=2)
        self.HvBinHeadersUse = v_uint32()
        self.HvFreeCellsUse = v_uint32()
        self.HvUsedCellsUse = v_uint32()
        self.CmUsedCellsUse = v_uint32()
        self.HiveFlags = v_uint32()
        self.CurrentLog = v_uint32()
        self.CurrentLogSequence = v_uint32()
        self.CurrentLogOffset = v_uint32()
        self.MinimumLogSequence = v_uint32()
        self.LogFileSizeCap = v_uint32()
        self.LogDataPresent = vstruct.VArray([ v_uint8() for i in xrange(2) ])
        self.PrimaryFileValid = v_uint8()
        self.BaseBlockDirty = v_uint8()
        self.FirstLogFile = v_uint16()
        self.LogEntriesRecovered = vstruct.VArray([ v_uint8() for i in xrange(2) ])
        self.RefreshCount = v_uint32()
        self.StorageTypeCount = v_uint32()
        self.Version = v_uint32()
        self._pad00b8 = v_bytes(size=4)
        self.Storage = vstruct.VArray([ DUAL() for i in xrange(2) ])


class VF_AVL_TREE_NODE(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.p = v_ptr64()
        self.RangeSize = v_uint64()


class TEB_ACTIVE_FRAME_CONTEXT(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Flags = v_uint32()
        self._pad0008 = v_bytes(size=4)
        self.FrameName = v_ptr64()


class CLIENT_ID64(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.UniqueProcess = v_uint64()
        self.UniqueThread = v_uint64()


class VF_TARGET_VERIFIED_DRIVER_DATA(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.SuspectDriverEntry = v_ptr64()
        self.WMICallback = v_ptr64()
        self.EtwHandlesListHead = LIST_ENTRY()
        self.u1 = _unnamed_34533()
        self._pad0028 = v_bytes(size=4)
        self.Signature = v_uint64()
        self.PoolPageHeaders = SLIST_HEADER()
        self.PoolTrackers = SLIST_HEADER()
        self.CurrentPagedPoolAllocations = v_uint32()
        self.CurrentNonPagedPoolAllocations = v_uint32()
        self.PeakPagedPoolAllocations = v_uint32()
        self.PeakNonPagedPoolAllocations = v_uint32()
        self.PagedBytes = v_uint64()
        self.NonPagedBytes = v_uint64()
        self.PeakPagedBytes = v_uint64()
        self.PeakNonPagedBytes = v_uint64()
        self.RaiseIrqls = v_uint32()
        self.AcquireSpinLocks = v_uint32()
        self.SynchronizeExecutions = v_uint32()
        self.AllocationsWithNoTag = v_uint32()
        self.AllocationsFailed = v_uint32()
        self.AllocationsFailedDeliberately = v_uint32()
        self.LockedBytes = v_uint64()
        self.PeakLockedBytes = v_uint64()
        self.MappedLockedBytes = v_uint64()
        self.PeakMappedLockedBytes = v_uint64()
        self.MappedIoSpaceBytes = v_uint64()
        self.PeakMappedIoSpaceBytes = v_uint64()
        self.PagesForMdlBytes = v_uint64()
        self.PeakPagesForMdlBytes = v_uint64()
        self.ContiguousMemoryBytes = v_uint64()
        self.PeakContiguousMemoryBytes = v_uint64()
        self.ContiguousMemoryListHead = LIST_ENTRY()
        self._pad0100 = v_bytes(size=8)


class OBJECT_SYMBOLIC_LINK(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.CreationTime = LARGE_INTEGER()
        self.LinkTarget = UNICODE_STRING()
        self.DosDeviceDriveIndex = v_uint32()
        self._pad0020 = v_bytes(size=4)


class TEB64(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.NtTib = NT_TIB64()
        self.EnvironmentPointer = v_uint64()
        self.ClientId = CLIENT_ID64()
        self.ActiveRpcHandle = v_uint64()
        self.ThreadLocalStoragePointer = v_uint64()
        self.ProcessEnvironmentBlock = v_uint64()
        self.LastErrorValue = v_uint32()
        self.CountOfOwnedCriticalSections = v_uint32()
        self.CsrClientThread = v_uint64()
        self.Win32ThreadInfo = v_uint64()
        self.User32Reserved = vstruct.VArray([ v_uint32() for i in xrange(26) ])
        self.UserReserved = vstruct.VArray([ v_uint32() for i in xrange(5) ])
        self._pad0100 = v_bytes(size=4)
        self.WOW32Reserved = v_uint64()
        self.CurrentLocale = v_uint32()
        self.FpSoftwareStatusRegister = v_uint32()
        self.SystemReserved1 = vstruct.VArray([ v_uint64() for i in xrange(54) ])
        self.ExceptionCode = v_uint32()
        self.Padding0 = vstruct.VArray([ v_uint8() for i in xrange(4) ])
        self.ActivationContextStackPointer = v_uint64()
        self.SpareBytes = vstruct.VArray([ v_uint8() for i in xrange(24) ])
        self.TxFsContext = v_uint32()
        self.Padding1 = vstruct.VArray([ v_uint8() for i in xrange(4) ])
        self.GdiTebBatch = GDI_TEB_BATCH64()
        self.RealClientId = CLIENT_ID64()
        self.GdiCachedProcessHandle = v_uint64()
        self.GdiClientPID = v_uint32()
        self.GdiClientTID = v_uint32()
        self.GdiThreadLocalInfo = v_uint64()
        self.Win32ClientInfo = vstruct.VArray([ v_uint64() for i in xrange(62) ])
        self.glDispatchTable = vstruct.VArray([ v_uint64() for i in xrange(233) ])
        self.glReserved1 = vstruct.VArray([ v_uint64() for i in xrange(29) ])
        self.glReserved2 = v_uint64()
        self.glSectionInfo = v_uint64()
        self.glSection = v_uint64()
        self.glTable = v_uint64()
        self.glCurrentRC = v_uint64()
        self.glContext = v_uint64()
        self.LastStatusValue = v_uint32()
        self.Padding2 = vstruct.VArray([ v_uint8() for i in xrange(4) ])
        self.StaticUnicodeString = STRING64()
        self.StaticUnicodeBuffer = vstruct.VArray([ v_uint16() for i in xrange(261) ])
        self.Padding3 = vstruct.VArray([ v_uint8() for i in xrange(6) ])
        self.DeallocationStack = v_uint64()
        self.TlsSlots = vstruct.VArray([ v_uint64() for i in xrange(64) ])
        self.TlsLinks = LIST_ENTRY64()
        self.Vdm = v_uint64()
        self.ReservedForNtRpc = v_uint64()
        self.DbgSsReserved = vstruct.VArray([ v_uint64() for i in xrange(2) ])
        self.HardErrorMode = v_uint32()
        self.Padding4 = vstruct.VArray([ v_uint8() for i in xrange(4) ])
        self.Instrumentation = vstruct.VArray([ v_uint64() for i in xrange(11) ])
        self.ActivityId = GUID()
        self.SubProcessTag = v_uint64()
        self.PerflibData = v_uint64()
        self.EtwTraceData = v_uint64()
        self.WinSockData = v_uint64()
        self.GdiBatchCount = v_uint32()
        self.CurrentIdealProcessor = PROCESSOR_NUMBER()
        self.GuaranteedStackBytes = v_uint32()
        self.Padding5 = vstruct.VArray([ v_uint8() for i in xrange(4) ])
        self.ReservedForPerf = v_uint64()
        self.ReservedForOle = v_uint64()
        self.WaitingOnLoaderLock = v_uint32()
        self.Padding6 = vstruct.VArray([ v_uint8() for i in xrange(4) ])
        self.SavedPriorityState = v_uint64()
        self.ReservedForCodeCoverage = v_uint64()
        self.ThreadPoolData = v_uint64()
        self.TlsExpansionSlots = v_uint64()
        self.DeallocationBStore = v_uint64()
        self.BStoreLimit = v_uint64()
        self.MuiGeneration = v_uint32()
        self.IsImpersonating = v_uint32()
        self.NlsCache = v_uint64()
        self.pShimData = v_uint64()
        self.HeapVirtualAffinity = v_uint16()
        self.LowFragHeapDataSlot = v_uint16()
        self.Padding7 = vstruct.VArray([ v_uint8() for i in xrange(4) ])
        self.CurrentTransactionHandle = v_uint64()
        self.ActiveFrame = v_uint64()
        self.FlsData = v_uint64()
        self.PreferredLanguages = v_uint64()
        self.UserPrefLanguages = v_uint64()
        self.MergedPrefLanguages = v_uint64()
        self.MuiImpersonation = v_uint32()
        self.CrossTebFlags = v_uint16()
        self.SameTebFlags = v_uint16()
        self.TxnScopeEnterCallback = v_uint64()
        self.TxnScopeExitCallback = v_uint64()
        self.TxnScopeContext = v_uint64()
        self.LockCount = v_uint32()
        self.SpareUlong0 = v_uint32()
        self.ResourceRetValue = v_uint64()
        self.ReservedForWdf = v_uint64()


class EJOB(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Event = KEVENT()
        self.JobLinks = LIST_ENTRY()
        self.ProcessListHead = LIST_ENTRY()
        self.JobLock = ERESOURCE()
        self.TotalUserTime = LARGE_INTEGER()
        self.TotalKernelTime = LARGE_INTEGER()
        self.TotalCycleTime = LARGE_INTEGER()
        self.ThisPeriodTotalUserTime = LARGE_INTEGER()
        self.ThisPeriodTotalKernelTime = LARGE_INTEGER()
        self.TotalContextSwitches = v_uint64()
        self.TotalPageFaultCount = v_uint32()
        self.TotalProcesses = v_uint32()
        self.ActiveProcesses = v_uint32()
        self.TotalTerminatedProcesses = v_uint32()
        self.PerProcessUserTimeLimit = LARGE_INTEGER()
        self.PerJobUserTimeLimit = LARGE_INTEGER()
        self.MinimumWorkingSetSize = v_uint64()
        self.MaximumWorkingSetSize = v_uint64()
        self.LimitFlags = v_uint32()
        self.ActiveProcessLimit = v_uint32()
        self.Affinity = KAFFINITY_EX()
        self.AccessState = v_ptr64()
        self.AccessStateQuotaReference = v_ptr64()
        self.UIRestrictionsClass = v_uint32()
        self.EndOfJobTimeAction = v_uint32()
        self.CompletionPort = v_ptr64()
        self.CompletionKey = v_ptr64()
        self.CompletionCount = v_uint64()
        self.SessionId = v_uint32()
        self.SchedulingClass = v_uint32()
        self.ReadOperationCount = v_uint64()
        self.WriteOperationCount = v_uint64()
        self.OtherOperationCount = v_uint64()
        self.ReadTransferCount = v_uint64()
        self.WriteTransferCount = v_uint64()
        self.OtherTransferCount = v_uint64()
        self.DiskIoInfo = PROCESS_DISK_COUNTERS()
        self.ProcessMemoryLimit = v_uint64()
        self.JobMemoryLimit = v_uint64()
        self.PeakProcessMemoryUsed = v_uint64()
        self.PeakJobMemoryUsed = v_uint64()
        self.EffectiveAffinity = KAFFINITY_EX()
        self.EffectivePerProcessUserTimeLimit = LARGE_INTEGER()
        self.EffectiveMinimumWorkingSetSize = v_uint64()
        self.EffectiveMaximumWorkingSetSize = v_uint64()
        self.EffectiveProcessMemoryLimit = v_uint64()
        self.EffectiveProcessMemoryLimitJob = v_ptr64()
        self.EffectivePerProcessUserTimeLimitJob = v_ptr64()
        self.EffectiveLimitFlags = v_uint32()
        self.EffectiveSchedulingClass = v_uint32()
        self.EffectiveFreezeCount = v_uint32()
        self.EffectiveBackgroundCount = v_uint32()
        self.EffectiveSwapCount = v_uint32()
        self.EffectiveNotificationLimitCount = v_uint32()
        self.EffectivePriorityClass = v_uint8()
        self.PriorityClass = v_uint8()
        self.Reserved1 = vstruct.VArray([ v_uint8() for i in xrange(2) ])
        self.CompletionFilter = v_uint32()
        self.WakeChannel = WNF_STATE_NAME()
        self._pad0390 = v_bytes(size=48)
        self.WakeFilter = JOBOBJECT_WAKE_FILTER()
        self.LowEdgeLatchFilter = v_uint32()
        self.OwnedHighEdgeFilters = v_uint32()
        self.NotificationLink = v_ptr64()
        self.CurrentJobMemoryUsed = v_uint64()
        self.NotificationInfo = v_ptr64()
        self.NotificationInfoQuotaReference = v_ptr64()
        self.NotificationPacket = v_ptr64()
        self.CpuRateControl = v_ptr64()
        self.EffectiveSchedulingGroup = v_ptr64()
        self.ReadyTime = v_uint64()
        self.MemoryLimitsLock = EX_PUSH_LOCK()
        self.SiblingJobLinks = LIST_ENTRY()
        self.ChildJobListHead = LIST_ENTRY()
        self.ParentJob = v_ptr64()
        self.RootJob = v_ptr64()
        self.IteratorListHead = LIST_ENTRY()
        self.AncestorCount = v_uint64()
        self.Ancestors = v_ptr64()
        self.Accounting = EPROCESS_VALUES()
        self.ShadowActiveProcessCount = v_uint32()
        self.SequenceNumber = v_uint32()
        self.TimerListLock = v_uint64()
        self.TimerListHead = LIST_ENTRY()
        self.JobFlags = v_uint32()
        self.EffectiveHighEdgeFilters = v_uint32()


class PROCESSOR_IDLESTATE_INFO(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.TimeCheck = v_uint32()
        self.DemotePercent = v_uint8()
        self.PromotePercent = v_uint8()
        self.Spare = vstruct.VArray([ v_uint8() for i in xrange(2) ])


class AUX_ACCESS_DATA(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.PrivilegesUsed = v_ptr64()
        self.GenericMapping = GENERIC_MAPPING()
        self.AccessesToAudit = v_uint32()
        self.MaximumAuditMask = v_uint32()
        self.TransactionId = GUID()
        self.NewSecurityDescriptor = v_ptr64()
        self.ExistingSecurityDescriptor = v_ptr64()
        self.ParentSecurityDescriptor = v_ptr64()
        self.DeRefSecurityDescriptor = v_ptr64()
        self.SDLock = v_ptr64()
        self.AccessReasons = ACCESS_REASONS()
        self.GenerateStagingEvents = v_uint8()
        self._pad00e0 = v_bytes(size=7)


class DEVICE_OBJECT_LIST_ENTRY(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.DeviceObject = v_ptr64()
        self.RelationLevel = v_uint32()
        self.Flags = v_uint32()


class ALPC_COMPLETION_PACKET_LOOKASIDE_ENTRY(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.ListEntry = SINGLE_LIST_ENTRY()
        self.Packet = v_ptr64()
        self.Lookaside = v_ptr64()


class IO_STATUS_BLOCK(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Status = v_uint32()
        self._pad0008 = v_bytes(size=4)
        self.Information = v_uint64()


class KPROCESSOR_STATE(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.SpecialRegisters = KSPECIAL_REGISTERS()
        self.ContextFrame = CONTEXT()


class OBJECT_HEADER_NAME_INFO(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Directory = v_ptr64()
        self.Name = UNICODE_STRING()
        self.ReferenceCount = v_uint32()
        self._pad0020 = v_bytes(size=4)


class RTL_BITMAP_EX(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.SizeOfBitMap = v_uint64()
        self.Buffer = v_ptr64()


class ENODE(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Ncb = KNODE()
        self.ExWorkQueues = vstruct.VArray([ v_ptr64() for i in xrange(8) ])
        self.ExWorkQueue = EX_WORK_QUEUE()
        self.ExpThreadSetManagerEvent = KEVENT()
        self.ExpDeadlockTimer = KTIMER()
        self.ExpThreadReaperEvent = KEVENT()
        self.WaitBlocks = vstruct.VArray([ KWAIT_BLOCK() for i in xrange(3) ])
        self.ExpWorkerThreadBalanceManagerPtr = v_ptr64()
        self.ExpWorkerSeed = v_uint32()
        self.ExWorkerFullInit = v_uint32()
        self._pad0500 = v_bytes(size=32)


class KAPC(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Type = v_uint8()
        self.SpareByte0 = v_uint8()
        self.Size = v_uint8()
        self.SpareByte1 = v_uint8()
        self.SpareLong0 = v_uint32()
        self.Thread = v_ptr64()
        self.ApcListEntry = LIST_ENTRY()
        self.KernelRoutine = v_ptr64()
        self.RundownRoutine = v_ptr64()
        self.NormalRoutine = v_ptr64()
        self.NormalContext = v_ptr64()
        self.SystemArgument1 = v_ptr64()
        self.SystemArgument2 = v_ptr64()
        self.ApcStateIndex = v_uint8()
        self.ApcMode = v_uint8()
        self.Inserted = v_uint8()
        self._pad0058 = v_bytes(size=5)


class ETW_BUFFER_CONTEXT(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.ProcessorNumber = v_uint8()
        self.Alignment = v_uint8()
        self.LoggerId = v_uint16()


class RTL_DYNAMIC_HASH_TABLE_ENTRY(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Linkage = LIST_ENTRY()
        self.Signature = v_uint64()


class POOL_TRACKER_BIG_PAGES(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Va = v_uint64()
        self.Key = v_uint32()
        self.PoolType = v_uint32()
        self.NumberOfBytes = v_uint64()


class _unnamed_32452(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.FilePointerIndex = v_uint32()


class SID_IDENTIFIER_AUTHORITY(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Value = vstruct.VArray([ v_uint8() for i in xrange(6) ])


class RTL_RANGE_LIST(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.ListHead = LIST_ENTRY()
        self.Flags = v_uint32()
        self.Count = v_uint32()
        self.Stamp = v_uint32()
        self._pad0020 = v_bytes(size=4)


class PROC_PERF_HISTORY(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Count = v_uint32()
        self.Slot = v_uint32()
        self.HistoryList = vstruct.VArray([ PROC_PERF_HISTORY_ENTRY() for i in xrange(1) ])
        self._pad0010 = v_bytes(size=2)


class CM_NOTIFY_BLOCK(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.HiveList = LIST_ENTRY()
        self.PostList = LIST_ENTRY()
        self.KeyControlBlock = v_ptr64()
        self.KeyBody = v_ptr64()
        self.Filter = v_uint32()
        self._pad0038 = v_bytes(size=4)
        self.SubjectContext = SECURITY_SUBJECT_CONTEXT()


class DRIVER_OBJECT(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Type = v_uint16()
        self.Size = v_uint16()
        self._pad0008 = v_bytes(size=4)
        self.DeviceObject = v_ptr64()
        self.Flags = v_uint32()
        self._pad0018 = v_bytes(size=4)
        self.DriverStart = v_ptr64()
        self.DriverSize = v_uint32()
        self._pad0028 = v_bytes(size=4)
        self.DriverSection = v_ptr64()
        self.DriverExtension = v_ptr64()
        self.DriverName = UNICODE_STRING()
        self.HardwareDatabase = v_ptr64()
        self.FastIoDispatch = v_ptr64()
        self.DriverInit = v_ptr64()
        self.DriverStartIo = v_ptr64()
        self.DriverUnload = v_ptr64()
        self.MajorFunction = vstruct.VArray([ v_ptr64() for i in xrange(28) ])


class _unnamed_34482(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.AllSharedExportThunks = VF_TARGET_ALL_SHARED_EXPORT_THUNKS()


class VI_POOL_ENTRY(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.PageHeader = VI_POOL_PAGE_HEADER()
        self._pad0020 = v_bytes(size=8)


class POOL_HEADER(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.PreviousSize = v_uint16()
        self.BlockSize = v_uint16()
        self.PoolTag = v_uint32()
        self.ProcessBilled = v_ptr64()


class SHARED_CACHE_MAP(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.NodeTypeCode = v_uint16()
        self.NodeByteSize = v_uint16()
        self.OpenCount = v_uint32()
        self.FileSize = LARGE_INTEGER()
        self.BcbList = LIST_ENTRY()
        self.SectionSize = LARGE_INTEGER()
        self.ValidDataLength = LARGE_INTEGER()
        self.ValidDataGoal = LARGE_INTEGER()
        self.InitialVacbs = vstruct.VArray([ v_ptr64() for i in xrange(4) ])
        self.Vacbs = v_ptr64()
        self.FileObjectFastRef = EX_FAST_REF()
        self.VacbLock = EX_PUSH_LOCK()
        self.DirtyPages = v_uint32()
        self._pad0078 = v_bytes(size=4)
        self.LoggedStreamLinks = LIST_ENTRY()
        self.SharedCacheMapLinks = LIST_ENTRY()
        self.Flags = v_uint32()
        self.Status = v_uint32()
        self.Mbcb = v_ptr64()
        self.Section = v_ptr64()
        self.CreateEvent = v_ptr64()
        self.WaitOnActiveCount = v_ptr64()
        self.PagesToWrite = v_uint32()
        self._pad00c8 = v_bytes(size=4)
        self.BeyondLastFlush = v_uint64()
        self.Callbacks = v_ptr64()
        self.LazyWriteContext = v_ptr64()
        self.PrivateList = LIST_ENTRY()
        self.V1 = LOGGED_STREAM_CALLBACK_V1()
        self.LargestLSN = LARGE_INTEGER()
        self.DirtyPageThreshold = v_uint32()
        self.LazyWritePassCount = v_uint32()
        self.UninitializeEvent = v_ptr64()
        self.BcbLock = FAST_MUTEX()
        self.LastUnmapBehindOffset = LARGE_INTEGER()
        self.Event = KEVENT()
        self.HighWaterMappingOffset = LARGE_INTEGER()
        self.PrivateCacheMap = PRIVATE_CACHE_MAP()
        self.WriteBehindWorkQueueEntry = v_ptr64()
        self.VolumeCacheMap = v_ptr64()
        self.ProcImagePathHash = v_uint32()
        self.WritesInProgress = v_uint32()


class MMPTE_PROTOTYPE(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Valid = v_uint64()


class REMOTE_PORT_VIEW(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Length = v_uint32()
        self._pad0008 = v_bytes(size=4)
        self.ViewSize = v_uint64()
        self.ViewBase = v_ptr64()


class IO_MINI_COMPLETION_PACKET_USER(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.ListEntry = LIST_ENTRY()
        self.PacketType = v_uint32()
        self._pad0018 = v_bytes(size=4)
        self.KeyContext = v_ptr64()
        self.ApcContext = v_ptr64()
        self.IoStatus = v_uint32()
        self._pad0030 = v_bytes(size=4)
        self.IoStatusInformation = v_uint64()
        self.MiniPacketCallback = v_ptr64()
        self.Context = v_ptr64()
        self.Allocated = v_uint8()
        self._pad0050 = v_bytes(size=7)


class XSTATE_FEATURE(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Offset = v_uint32()
        self.Size = v_uint32()


class KALPC_VIEW(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.ViewListEntry = LIST_ENTRY()
        self.Region = v_ptr64()
        self.OwnerPort = v_ptr64()
        self.OwnerProcess = v_ptr64()
        self.Address = v_ptr64()
        self.Size = v_uint64()
        self.SecureViewHandle = v_ptr64()
        self.WriteAccessHandle = v_ptr64()
        self.u1 = _unnamed_31248()
        self.NumberOfOwnerMessages = v_uint32()
        self.ProcessViewListEntry = LIST_ENTRY()


class _unnamed_28197(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Srb = v_ptr64()


class MI_VERIFIER_POOL_HEADER(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.VerifierPoolEntry = v_ptr64()


class WHEA_TIMESTAMP(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Seconds = v_uint64()


class _unnamed_28193(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Vpb = v_ptr64()
        self.DeviceObject = v_ptr64()


class ACTIVATION_CONTEXT(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)


class ETW_REF_CLOCK(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.StartTime = LARGE_INTEGER()
        self.StartPerfClock = LARGE_INTEGER()


class _unnamed_36017(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.SequentialVa = MI_VAD_SEQUENTIAL_INFO()


class RTL_CRITICAL_SECTION_DEBUG(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Type = v_uint16()
        self.CreatorBackTraceIndex = v_uint16()
        self._pad0008 = v_bytes(size=4)
        self.CriticalSection = v_ptr64()
        self.ProcessLocksList = LIST_ENTRY()
        self.EntryCount = v_uint32()
        self.ContentionCount = v_uint32()
        self.Flags = v_uint32()
        self.CreatorBackTraceIndexHigh = v_uint16()
        self.SpareUSHORT = v_uint16()


class PNP_DEVICE_EVENT_ENTRY(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.ListEntry = LIST_ENTRY()
        self.Argument = v_uint32()
        self._pad0018 = v_bytes(size=4)
        self.CallerEvent = v_ptr64()
        self.Callback = v_ptr64()
        self.Context = v_ptr64()
        self.VetoType = v_ptr64()
        self.VetoName = v_ptr64()
        self.RefCount = v_uint32()
        self.Lock = v_uint32()
        self.Cancel = v_uint8()
        self._pad0050 = v_bytes(size=7)
        self.Parent = v_ptr64()
        self.Data = PLUGPLAY_EVENT_BLOCK()


class ARBITER_CONFLICT_INFO(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.OwningObject = v_ptr64()
        self.Start = v_uint64()
        self.End = v_uint64()


class SHARED_CACHE_MAP_LIST_CURSOR(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.SharedCacheMapLinks = LIST_ENTRY()
        self.Flags = v_uint32()
        self._pad0018 = v_bytes(size=4)


class ETW_SESSION_PERF_COUNTERS(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.BufferMemoryPagedPool = v_uint32()
        self.BufferMemoryNonPagedPool = v_uint32()
        self.EventsLoggedCount = v_uint64()
        self.EventsLost = v_uint32()
        self.NumConsumers = v_uint32()


class ALPC_PORT_ATTRIBUTES(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Flags = v_uint32()
        self.SecurityQos = SECURITY_QUALITY_OF_SERVICE()
        self.MaxMessageLength = v_uint64()
        self.MemoryBandwidth = v_uint64()
        self.MaxPoolUsage = v_uint64()
        self.MaxSectionSize = v_uint64()
        self.MaxViewSize = v_uint64()
        self.MaxTotalSectionSize = v_uint64()
        self.DupObjectTypes = v_uint32()
        self.Reserved = v_uint32()


class _unnamed_34321(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Class = v_uint8()
        self.Type = v_uint8()
        self.Reserved1 = v_uint8()
        self.Reserved2 = v_uint8()
        self.IdLowPart = v_uint32()
        self.IdHighPart = v_uint32()


class ARBITER_BOOT_ALLOCATION_PARAMETERS(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.ArbitrationList = v_ptr64()


class TOKEN(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.TokenSource = TOKEN_SOURCE()
        self.TokenId = LUID()
        self.AuthenticationId = LUID()
        self.ParentTokenId = LUID()
        self.ExpirationTime = LARGE_INTEGER()
        self.TokenLock = v_ptr64()
        self.ModifiedId = LUID()
        self.Privileges = SEP_TOKEN_PRIVILEGES()
        self.AuditPolicy = SEP_AUDIT_POLICY()
        self._pad0078 = v_bytes(size=2)
        self.SessionId = v_uint32()
        self.UserAndGroupCount = v_uint32()
        self.RestrictedSidCount = v_uint32()
        self.VariableLength = v_uint32()
        self.DynamicCharged = v_uint32()
        self.DynamicAvailable = v_uint32()
        self.DefaultOwnerIndex = v_uint32()
        self._pad0098 = v_bytes(size=4)
        self.UserAndGroups = v_ptr64()
        self.RestrictedSids = v_ptr64()
        self.PrimaryGroup = v_ptr64()
        self.DynamicPart = v_ptr64()
        self.DefaultDacl = v_ptr64()
        self.TokenType = v_uint32()
        self.ImpersonationLevel = v_uint32()
        self.TokenFlags = v_uint32()
        self.TokenInUse = v_uint8()
        self._pad00d0 = v_bytes(size=3)
        self.IntegrityLevelIndex = v_uint32()
        self.MandatoryPolicy = v_uint32()
        self.LogonSession = v_ptr64()
        self.OriginatingLogonSession = LUID()
        self.SidHash = SID_AND_ATTRIBUTES_HASH()
        self.RestrictedSidHash = SID_AND_ATTRIBUTES_HASH()
        self.pSecurityAttributes = v_ptr64()
        self.Package = v_ptr64()
        self.Capabilities = v_ptr64()
        self.CapabilityCount = v_uint32()
        self._pad0328 = v_bytes(size=4)
        self.CapabilitiesHash = SID_AND_ATTRIBUTES_HASH()
        self.LowboxNumberEntry = v_ptr64()
        self.LowboxHandlesEntry = v_ptr64()
        self.pClaimAttributes = v_ptr64()
        self.TrustLevelSid = v_ptr64()
        self.TrustLinkedToken = v_ptr64()
        self.IntegrityLevelSidValue = v_ptr64()
        self.TokenSidValues = v_ptr64()
        self.VariablePart = v_uint64()


class DISPATCHER_HEADER(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Lock = v_uint32()
        self.SignalState = v_uint32()
        self.WaitListHead = LIST_ENTRY()


class PROCESSOR_IDLESTATE_POLICY(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Revision = v_uint16()
        self.Flags = _unnamed_36271()
        self.PolicyCount = v_uint32()
        self.Policy = vstruct.VArray([ PROCESSOR_IDLESTATE_INFO() for i in xrange(3) ])


class _unnamed_37264(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.PollInterval = v_uint32()
        self.Vector = v_uint32()
        self.SwitchToPollingThreshold = v_uint32()
        self.SwitchToPollingWindow = v_uint32()
        self.ErrorThreshold = v_uint32()
        self.ErrorThresholdWindow = v_uint32()


class CM_KEY_BODY(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Type = v_uint32()
        self._pad0008 = v_bytes(size=4)
        self.KeyControlBlock = v_ptr64()
        self.NotifyBlock = v_ptr64()
        self.ProcessID = v_ptr64()
        self.KeyBodyList = LIST_ENTRY()
        self.Flags = v_uint32()
        self._pad0038 = v_bytes(size=4)
        self.KtmTrans = v_ptr64()
        self.KtmUow = v_ptr64()
        self.ContextListHead = LIST_ENTRY()


class WHEA_IPF_CMC_DESCRIPTOR(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Type = v_uint16()
        self.Enabled = v_uint8()
        self.Reserved = v_uint8()


class DBGKD_READ_WRITE_IO64(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.IoAddress = v_uint64()
        self.DataSize = v_uint32()
        self.DataValue = v_uint32()


class _unnamed_30810(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.SharedCacheMap = v_ptr64()
        self.IoStatus = v_ptr64()
        self.CallerWaitEvent = KEVENT()
        self.IsLowPriWriteBehind = v_uint8()
        self._pad0030 = v_bytes(size=7)


class _unnamed_34908(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Group = v_uint16()
        self.MessageCount = v_uint16()
        self.Vector = v_uint32()
        self.Affinity = v_uint64()


class ASSEMBLY_STORAGE_MAP(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)


class PROCESSOR_POWER_STATE(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.IdleStates = v_ptr64()
        self.IdleAccounting = v_ptr64()
        self.IdleTimeLast = v_uint64()
        self.IdleTimeTotal = v_uint64()
        self.IdleTimeEntry = v_uint64()
        self.Reserved = v_uint64()
        self.IdlePolicy = PROC_IDLE_POLICY()
        self._pad0038 = v_bytes(size=3)
        self.Synchronization = PPM_IDLE_SYNCHRONIZATION_STATE()
        self._pad0040 = v_bytes(size=4)
        self.PerfFeedback = PROC_FEEDBACK()
        self.Hypervisor = v_uint32()
        self.LastSysTime = v_uint32()
        self.WmiDispatchPtr = v_uint64()
        self.WmiInterfaceEnabled = v_uint32()
        self._pad00c8 = v_bytes(size=4)
        self.FFHThrottleStateInfo = PPM_FFH_THROTTLE_STATE_INFO()
        self.PerfActionDpc = KDPC()
        self.PerfActionMask = v_uint32()
        self._pad0130 = v_bytes(size=4)
        self.HvIdleCheck = PROC_IDLE_SNAP()
        self.PerfCheck = PROC_PERF_SNAP()
        self.Domain = v_ptr64()
        self.PerfConstraint = v_ptr64()
        self.Concurrency = v_ptr64()
        self.Load = v_ptr64()
        self.PerfHistory = v_ptr64()
        self.GuaranteedPerformancePercent = v_uint8()
        self.HvTargetState = v_uint8()
        self.Parked = v_uint8()
        self.OverUtilized = v_uint8()
        self.LatestPerformancePercent = v_uint32()
        self.LatestAffinitizedPercent = v_uint32()
        self.ExpectedUtility = v_uint32()
        self.Utility = vstruct.VArray([ PROC_PERF_UTILITY() for i in xrange(3) ])
        self._pad01e0 = v_bytes(size=4)


class _unnamed_34900(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Start = LARGE_INTEGER()
        self.Length = v_uint32()


class PS_WAKE_INFORMATION(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.NotificationChannel = v_uint64()
        self.WakeCounters = vstruct.VArray([ v_uint64() for i in xrange(5) ])
        self.NoWakeCounter = v_uint64()


class SECURITY_CLIENT_CONTEXT(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.SecurityQos = SECURITY_QUALITY_OF_SERVICE()
        self._pad0010 = v_bytes(size=4)
        self.ClientToken = v_ptr64()
        self.DirectlyAccessClientToken = v_uint8()
        self.DirectAccessEffectiveOnly = v_uint8()
        self.ServerIsRemote = v_uint8()
        self._pad001c = v_bytes(size=1)
        self.ClientTokenControl = TOKEN_CONTROL()
        self._pad0048 = v_bytes(size=4)


class _unnamed_29359(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Space = v_uint32()
        self.MapPoint = v_uint32()
        self.BinPoint = v_ptr64()


class DBGKD_MANIPULATE_STATE64(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.ApiNumber = v_uint32()
        self.ProcessorLevel = v_uint16()
        self.Processor = v_uint16()
        self.ReturnStatus = v_uint32()
        self._pad0010 = v_bytes(size=4)
        self.u = _unnamed_30279()


class LPCP_PORT_QUEUE(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.NonPagedPortQueue = v_ptr64()
        self.Semaphore = v_ptr64()
        self.ReceiveHead = LIST_ENTRY()


class PHYSICAL_MEMORY_DESCRIPTOR(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.NumberOfRuns = v_uint32()
        self._pad0008 = v_bytes(size=4)
        self.NumberOfPages = v_uint64()
        self.Run = vstruct.VArray([ PHYSICAL_MEMORY_RUN() for i in xrange(1) ])


class MMWSLE_FREE_ENTRY(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.MustBeZero = v_uint64()


class CACHE_UNINITIALIZE_EVENT(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Next = v_ptr64()
        self.Event = KEVENT()


class JOB_ACCESS_STATE(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)


class MMSESSION(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.SystemSpaceViewLock = FAST_MUTEX()
        self.SystemSpaceViewLockPointer = v_ptr64()
        self.SystemSpaceViewTable = v_ptr64()
        self.SystemSpaceHashSize = v_uint32()
        self.SystemSpaceHashEntries = v_uint32()
        self.SystemSpaceHashKey = v_uint32()
        self.BitmapFailures = v_uint32()


class COMPRESSED_DATA_INFO(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.CompressionFormatAndEngine = v_uint16()
        self.CompressionUnitShift = v_uint8()
        self.ChunkShift = v_uint8()
        self.ClusterShift = v_uint8()
        self.Reserved = v_uint8()
        self.NumberOfChunks = v_uint16()
        self.CompressedChunkSizes = vstruct.VArray([ v_uint32() for i in xrange(1) ])


class WHEA_ERROR_RECORD(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Header = WHEA_ERROR_RECORD_HEADER()
        self.SectionDescriptor = vstruct.VArray([ WHEA_ERROR_RECORD_SECTION_DESCRIPTOR() for i in xrange(1) ])


class CMHIVE(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Hive = HHIVE()
        self.FileHandles = vstruct.VArray([ v_ptr64() for i in xrange(6) ])
        self.NotifyList = LIST_ENTRY()
        self.HiveList = LIST_ENTRY()
        self.PreloadedHiveList = LIST_ENTRY()
        self.HiveRundown = EX_RUNDOWN_REF()
        self.ParseCacheEntries = LIST_ENTRY()
        self.KcbCacheTable = v_ptr64()
        self.KcbCacheTableSize = v_uint32()
        self._pad0630 = v_bytes(size=4)
        self.DeletedKcbTable = v_ptr64()
        self.DeletedKcbTableSize = v_uint32()
        self.Identity = v_uint32()
        self.HiveLock = v_ptr64()
        self.WriterLock = v_ptr64()
        self.FlusherLock = v_ptr64()
        self.FlushDirtyVector = RTL_BITMAP()
        self.FlushDirtyVectorSize = v_uint32()
        self._pad0670 = v_bytes(size=4)
        self.FlushLogEntry = v_ptr64()
        self.FlushLogEntrySize = v_uint32()
        self.FlushHiveTruncated = v_uint32()
        self.FlushBaseBlockDirty = v_uint8()
        self._pad0688 = v_bytes(size=7)
        self.CapturedUnreconciledVector = RTL_BITMAP()
        self.CapturedUnreconciledVectorSize = v_uint32()
        self._pad06a0 = v_bytes(size=4)
        self.UnreconciledOffsetArray = v_ptr64()
        self.UnreconciledOffsetArrayCount = v_uint32()
        self._pad06b0 = v_bytes(size=4)
        self.UnreconciledBaseBlock = v_ptr64()
        self.SecurityLock = EX_PUSH_LOCK()
        self.UseCount = v_uint32()
        self.LastShrinkHiveSize = v_uint32()
        self.ActualFileSize = LARGE_INTEGER()
        self.LogFileSizes = vstruct.VArray([ LARGE_INTEGER() for i in xrange(2) ])
        self.FileFullPath = UNICODE_STRING()
        self.FileUserName = UNICODE_STRING()
        self.HiveRootPath = UNICODE_STRING()
        self.SecurityCount = v_uint32()
        self.SecurityCacheSize = v_uint32()
        self.SecurityHitHint = v_uint32()
        self._pad0720 = v_bytes(size=4)
        self.SecurityCache = v_ptr64()
        self.SecurityHash = vstruct.VArray([ LIST_ENTRY() for i in xrange(64) ])
        self.UnloadEventCount = v_uint32()
        self._pad0b30 = v_bytes(size=4)
        self.UnloadEventArray = v_ptr64()
        self.RootKcb = v_ptr64()
        self.Frozen = v_uint8()
        self._pad0b48 = v_bytes(size=7)
        self.UnloadWorkItem = v_ptr64()
        self.UnloadWorkItemHolder = CM_WORKITEM()
        self.GrowOnlyMode = v_uint8()
        self._pad0b7c = v_bytes(size=3)
        self.GrowOffset = v_uint32()
        self.KcbConvertListHead = LIST_ENTRY()
        self.KnodeConvertListHead = LIST_ENTRY()
        self.CellRemapArray = v_ptr64()
        self.DirtyVectorLog = CM_DIRTY_VECTOR_LOG()
        self.Flags = v_uint32()
        self._pad10b8 = v_bytes(size=4)
        self.TrustClassEntry = LIST_ENTRY()
        self.DirtyTime = v_uint64()
        self.UnreconciledTime = v_uint64()
        self.CmRm = v_ptr64()
        self.CmRmInitFailPoint = v_uint32()
        self.CmRmInitFailStatus = v_uint32()
        self.CreatorOwner = v_ptr64()
        self.RundownThread = v_ptr64()
        self.LastWriteTime = LARGE_INTEGER()
        self.FlushQueue = HIVE_WRITE_WAIT_QUEUE()
        self.ReconcileQueue = HIVE_WRITE_WAIT_QUEUE()
        self.FlushFlags = v_uint32()
        self.PrimaryFileSizeBeforeLastFlush = v_uint32()
        self.ReferenceCount = v_uint32()
        self.UnloadHistoryIndex = v_uint32()
        self.UnloadHistory = vstruct.VArray([ v_uint32() for i in xrange(128) ])
        self.BootStart = v_uint32()
        self.UnaccessedStart = v_uint32()
        self.UnaccessedEnd = v_uint32()
        self.LoadedKeyCount = v_uint32()
        self.HandleClosePending = v_uint32()
        self._pad1358 = v_bytes(size=4)
        self.HandleClosePendingEvent = EX_PUSH_LOCK()


class POP_SHUTDOWN_BUG_CHECK(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.InitiatingThread = v_ptr64()
        self.InitiatingProcess = v_ptr64()
        self.ThreadId = v_ptr64()
        self.ProcessId = v_ptr64()
        self.Code = v_uint32()
        self._pad0028 = v_bytes(size=4)
        self.Parameter1 = v_uint64()
        self.Parameter2 = v_uint64()
        self.Parameter3 = v_uint64()
        self.Parameter4 = v_uint64()


class SECTION_OBJECT(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.StartingVa = v_ptr64()
        self.EndingVa = v_ptr64()
        self.Parent = v_ptr64()
        self.LeftChild = v_ptr64()
        self.RightChild = v_ptr64()
        self.Segment = v_ptr64()


class PROC_PERF_CONSTRAINT(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Prcb = v_ptr64()
        self.PerfContext = v_uint64()
        self.PlatformCap = v_uint32()
        self.ThermalCap = v_uint32()
        self.LimitReasons = v_uint32()
        self._pad0020 = v_bytes(size=4)
        self.PlatformCapStartTime = v_uint64()
        self.TargetPercent = v_uint32()
        self.DesiredPercent = v_uint32()
        self.SelectedPercent = v_uint32()
        self.SelectedFrequency = v_uint32()
        self.PreviousFrequency = v_uint32()
        self.PreviousPercent = v_uint32()
        self.LatestFrequencyPercent = v_uint32()
        self._pad0048 = v_bytes(size=4)
        self.SelectedState = v_uint64()
        self.Force = v_uint8()
        self._pad0058 = v_bytes(size=7)


class _unnamed_36016(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.LongFlags2 = v_uint32()


class LUID(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.LowPart = v_uint32()
        self.HighPart = v_uint32()


class OBJECT_HEADER(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.PointerCount = v_uint64()
        self.HandleCount = v_uint64()
        self.Lock = EX_PUSH_LOCK()
        self.TypeIndex = v_uint8()
        self.TraceFlags = v_uint8()
        self.InfoMask = v_uint8()
        self.Flags = v_uint8()
        self.Spare = v_uint32()
        self.ObjectCreateInfo = v_ptr64()
        self.SecurityDescriptor = v_ptr64()
        self.Body = QUAD()


class KTIMER_EXPIRATION_TRACE(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.InterruptTime = v_uint64()
        self.PerformanceCounter = LARGE_INTEGER()


class CLIENT_ID(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.UniqueProcess = v_ptr64()
        self.UniqueThread = v_ptr64()


class IMAGE_OPTIONAL_HEADER64(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Magic = v_uint16()
        self.MajorLinkerVersion = v_uint8()
        self.MinorLinkerVersion = v_uint8()
        self.SizeOfCode = v_uint32()
        self.SizeOfInitializedData = v_uint32()
        self.SizeOfUninitializedData = v_uint32()
        self.AddressOfEntryPoint = v_uint32()
        self.BaseOfCode = v_uint32()
        self.ImageBase = v_uint64()
        self.SectionAlignment = v_uint32()
        self.FileAlignment = v_uint32()
        self.MajorOperatingSystemVersion = v_uint16()
        self.MinorOperatingSystemVersion = v_uint16()
        self.MajorImageVersion = v_uint16()
        self.MinorImageVersion = v_uint16()
        self.MajorSubsystemVersion = v_uint16()
        self.MinorSubsystemVersion = v_uint16()
        self.Win32VersionValue = v_uint32()
        self.SizeOfImage = v_uint32()
        self.SizeOfHeaders = v_uint32()
        self.CheckSum = v_uint32()
        self.Subsystem = v_uint16()
        self.DllCharacteristics = v_uint16()
        self.SizeOfStackReserve = v_uint64()
        self.SizeOfStackCommit = v_uint64()
        self.SizeOfHeapReserve = v_uint64()
        self.SizeOfHeapCommit = v_uint64()
        self.LoaderFlags = v_uint32()
        self.NumberOfRvaAndSizes = v_uint32()
        self.DataDirectory = vstruct.VArray([ IMAGE_DATA_DIRECTORY() for i in xrange(16) ])


class _unnamed_31089(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Type = v_uint16()
        self.DataInfoOffset = v_uint16()


class OBJECT_DUMP_CONTROL(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Stream = v_ptr64()
        self.Detail = v_uint32()
        self._pad0010 = v_bytes(size=4)


class CACHE_MANAGER_CALLBACKS(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.AcquireForLazyWrite = v_ptr64()
        self.ReleaseFromLazyWrite = v_ptr64()
        self.AcquireForReadAhead = v_ptr64()
        self.ReleaseFromReadAhead = v_ptr64()


class DBGKD_CONTINUE2(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.ContinueStatus = v_uint32()
        self.ControlSet = AMD64_DBGKD_CONTROL_SET()


class HANDLE_TRACE_DB_ENTRY(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.ClientId = CLIENT_ID()
        self.Handle = v_ptr64()
        self.Type = v_uint32()
        self._pad0020 = v_bytes(size=4)
        self.StackTrace = vstruct.VArray([ v_ptr64() for i in xrange(16) ])


class POP_FX_DEVICE(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Link = LIST_ENTRY()
        self.Irp = v_ptr64()
        self.IrpData = v_ptr64()
        self.Status = POP_FX_DEVICE_STATUS()
        self.PowerReqCall = v_uint32()
        self.PowerNotReqCall = v_uint32()
        self._pad0030 = v_bytes(size=4)
        self.Plugin = v_ptr64()
        self.PluginHandle = v_ptr64()
        self.MiniPlugin = v_ptr64()
        self.MiniPluginHandle = v_ptr64()
        self.DevNode = v_ptr64()
        self.DeviceObject = v_ptr64()
        self.TargetDevice = v_ptr64()
        self.Callbacks = POP_FX_DRIVER_CALLBACKS()
        self.DriverContext = v_ptr64()
        self.RemoveLock = IO_REMOVE_LOCK()
        self.WorkOrder = POP_FX_WORK_ORDER()
        self.IdleLock = v_uint64()
        self.IdleTimer = KTIMER()
        self.IdleDpc = KDPC()
        self.IdleTimeout = v_uint64()
        self.IdleStamp = v_uint64()
        self.NextIrpDeviceObject = v_ptr64()
        self.NextIrpPowerState = POWER_STATE()
        self._pad01a8 = v_bytes(size=4)
        self.NextIrpCallerCompletion = v_ptr64()
        self.NextIrpCallerContext = v_ptr64()
        self.IrpCompleteEvent = KEVENT()
        self.PowerOnDumpDeviceCallback = v_ptr64()
        self.Accounting = POP_FX_ACCOUNTING()
        self.ComponentCount = v_uint32()
        self._pad0210 = v_bytes(size=4)
        self.Components = vstruct.VArray([ v_ptr64() for i in xrange(1) ])


class _unnamed_31249(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.WriteAccess = v_uint32()


class TOKEN_CONTROL(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.TokenId = LUID()
        self.AuthenticationId = LUID()
        self.ModifiedId = LUID()
        self.TokenSource = TOKEN_SOURCE()


class GENERAL_LOOKASIDE_POOL(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.ListHead = SLIST_HEADER()
        self.Depth = v_uint16()
        self.MaximumDepth = v_uint16()
        self.TotalAllocates = v_uint32()
        self.AllocateMisses = v_uint32()
        self.TotalFrees = v_uint32()
        self.FreeMisses = v_uint32()
        self.Type = v_uint32()
        self.Tag = v_uint32()
        self.Size = v_uint32()
        self.AllocateEx = v_ptr64()
        self.FreeEx = v_ptr64()
        self.ListEntry = LIST_ENTRY()
        self.LastTotalAllocates = v_uint32()
        self.LastAllocateMisses = v_uint32()
        self.Future = vstruct.VArray([ v_uint32() for i in xrange(2) ])


class DBGKD_SET_INTERNAL_BREAKPOINT64(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.BreakpointAddress = v_uint64()
        self.Flags = v_uint32()
        self._pad0010 = v_bytes(size=4)


class ALPC_DISPATCH_CONTEXT(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.PortObject = v_ptr64()
        self.Message = v_ptr64()
        self.CommunicationInfo = v_ptr64()
        self.TargetThread = v_ptr64()
        self.TargetPort = v_ptr64()
        self.Flags = v_uint32()
        self.TotalLength = v_uint16()
        self.Type = v_uint16()
        self.DataInfoOffset = v_uint16()
        self.SignalCompletion = v_uint8()
        self.PostedToCompletionList = v_uint8()
        self._pad0038 = v_bytes(size=4)


class XPF_MCE_FLAGS(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.MCG_CapabilityRW = v_uint32()


class HV_CPUID_RESULT(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Eax = v_uint32()
        self.Ebx = v_uint32()
        self.Ecx = v_uint32()
        self.Edx = v_uint32()


class LPCP_NONPAGED_PORT_QUEUE(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Semaphore = KSEMAPHORE()
        self.BackPointer = v_ptr64()


class DEVICE_RELATIONS(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Count = v_uint32()
        self._pad0008 = v_bytes(size=4)
        self.Objects = vstruct.VArray([ v_ptr64() for i in xrange(1) ])


class RTL_SRWLOCK(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Locked = v_uint64()


class PPM_IDLE_SYNCHRONIZATION_STATE(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.AsLong = v_uint32()


class BATTERY_REPORTING_SCALE(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Granularity = v_uint32()
        self.Capacity = v_uint32()


class MMPAGING_FILE(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Size = v_uint64()
        self.MaximumSize = v_uint64()
        self.MinimumSize = v_uint64()
        self.FreeSpace = v_uint64()
        self.PeakUsage = v_uint64()
        self.HighestPage = v_uint64()
        self.FreeReservationSpace = v_uint64()
        self.LargestReserveCluster = v_uint64()
        self.File = v_ptr64()
        self.Entry = vstruct.VArray([ v_ptr64() for i in xrange(2) ])
        self._pad0060 = v_bytes(size=8)
        self.PfnsToFree = SLIST_HEADER()
        self.PageFileName = UNICODE_STRING()
        self.Bitmaps = v_ptr64()
        self.AllocationBitmapHint = v_uint32()
        self.ReservationBitmapHint = v_uint32()
        self.LargestNonReservedClusterSize = v_uint32()
        self.RefreshClusterSize = v_uint32()
        self.LastRefreshClusterSize = v_uint32()
        self.ReservedClusterSizeAggregate = v_uint32()
        self.ToBeEvictedCount = v_uint32()
        self.HybridPriority = v_uint32()
        self.PageFileNumber = v_uint16()
        self.AdriftMdls = v_uint8()
        self.Spare2 = v_uint8()
        self.PageHashPages = v_uint32()
        self.PageHashPagesPeak = v_uint32()
        self._pad00b8 = v_bytes(size=4)
        self.PageHash = v_ptr64()
        self.FileHandle = v_ptr64()
        self.Lock = v_uint64()
        self.LockOwner = v_ptr64()
        self._pad00e0 = v_bytes(size=8)


class _unnamed_25397(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.LongFunction = v_uint32()


class STRING(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Length = v_uint16()
        self.MaximumLength = v_uint16()
        self._pad0008 = v_bytes(size=4)
        self.Buffer = v_ptr64()


class _unnamed_34609(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.AsUCHAR = v_uint8()


class _unnamed_25394(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Flags = v_uint32()


class MMVAD_FLAGS1(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.CommitCharge = v_uint32()


class TP_POOL(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)


class PROCESSOR_PLATFORM_STATE_RESIDENCY(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Residency = v_uint64()
        self.TransitionCount = v_uint64()


class XPF_MC_BANK_FLAGS(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.ClearOnInitializationRW = v_uint8()


class _unnamed_34567(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.PowerSettingGuid = GUID()
        self.Flags = v_uint32()
        self.SessionId = v_uint32()
        self.DataLength = v_uint32()
        self.Data = vstruct.VArray([ v_uint8() for i in xrange(1) ])
        self._pad0020 = v_bytes(size=3)


class _unnamed_34565(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.ParentId = vstruct.VArray([ v_uint16() for i in xrange(1) ])


class MMWSLENTRY(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Valid = v_uint64()


class _unnamed_34563(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.BlockedDriverGuid = GUID()


class _unnamed_34560(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.VetoType = v_uint32()
        self.DeviceIdVetoNameBuffer = vstruct.VArray([ v_uint16() for i in xrange(1) ])
        self._pad0008 = v_bytes(size=2)


class _unnamed_28127(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Length = v_uint32()
        self._pad0008 = v_bytes(size=4)
        self.FileInformationClass = v_uint32()
        self._pad0010 = v_bytes(size=4)


class MMINPAGE_FLAGS(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.InjectRetry = v_uint8()
        self.PrefetchSystemVmType = v_uint8()
        self.PagePriority = v_uint8()
        self.ZeroLastPage = v_uint8()


class KALPC_MESSAGE(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Entry = LIST_ENTRY()
        self.PortQueue = v_ptr64()
        self.OwnerPort = v_ptr64()
        self.WaitingThread = v_ptr64()
        self.u1 = _unnamed_31282()
        self.SequenceNo = v_uint32()
        self.QuotaProcess = v_ptr64()
        self.CancelSequencePort = v_ptr64()
        self.CancelQueuePort = v_ptr64()
        self.CancelSequenceNo = v_uint32()
        self._pad0050 = v_bytes(size=4)
        self.CancelListEntry = LIST_ENTRY()
        self.Reserve = v_ptr64()
        self.MessageAttributes = KALPC_MESSAGE_ATTRIBUTES()
        self.DataUserVa = v_ptr64()
        self.CommunicationInfo = v_ptr64()
        self.ConnectionPort = v_ptr64()
        self.ServerThread = v_ptr64()
        self.WakeReference = v_ptr64()
        self.ExtensionBuffer = v_ptr64()
        self.ExtensionBufferSize = v_uint64()
        self.PortMessage = PORT_MESSAGE()


class _unnamed_28124(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Length = v_uint32()
        self._pad0008 = v_bytes(size=4)
        self.CompletionFilter = v_uint32()
        self._pad0010 = v_bytes(size=4)


class LIST_ENTRY32(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Flink = v_uint32()
        self.Blink = v_uint32()


class MMWSLE(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.u1 = _unnamed_29065()


class WHEA_IPF_MCA_DESCRIPTOR(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Type = v_uint16()
        self.Enabled = v_uint8()
        self.Reserved = v_uint8()


class DBGKD_BREAKPOINTEX(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.BreakPointCount = v_uint32()
        self.ContinueStatus = v_uint32()


class DBGKD_QUERY_MEMORY(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Address = v_uint64()
        self.Reserved = v_uint64()
        self.AddressSpace = v_uint32()
        self.Flags = v_uint32()


class MMVAD(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Core = MMVAD_SHORT()
        self.u2 = _unnamed_36016()
        self._pad0048 = v_bytes(size=4)
        self.Subsection = v_ptr64()
        self.FirstPrototypePte = v_ptr64()
        self.LastContiguousPte = v_ptr64()
        self.ViewLinks = LIST_ENTRY()
        self.VadsProcess = v_ptr64()
        self.u4 = _unnamed_36017()


class VF_AVL_TREE(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.NodeRangeSize = v_uint64()
        self.NodeCount = v_uint64()
        self.Tables = v_ptr64()
        self.TablesNo = v_uint32()
        self.u1 = _unnamed_36853()


class CONTEXT32_UPDATE(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.NumberEntries = v_uint32()


class KDEVICE_QUEUE_ENTRY(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.DeviceListEntry = LIST_ENTRY()
        self.SortKey = v_uint32()
        self.Inserted = v_uint8()
        self._pad0018 = v_bytes(size=3)


class _unnamed_28159(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Length = v_uint32()
        self._pad0008 = v_bytes(size=4)
        self.FsInformationClass = v_uint32()
        self._pad0010 = v_bytes(size=4)


class MMPTE_SUBSECTION(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Valid = v_uint64()


class _unnamed_34280(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.MinimumVector = v_uint32()
        self.MaximumVector = v_uint32()
        self.AffinityPolicy = v_uint16()
        self.Group = v_uint16()
        self.PriorityPolicy = v_uint32()
        self.TargetedProcessors = v_uint64()


class PO_DEVICE_NOTIFY(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Link = LIST_ENTRY()
        self.PowerChildren = LIST_ENTRY()
        self.PowerParents = LIST_ENTRY()
        self.TargetDevice = v_ptr64()
        self.OrderLevel = v_uint8()
        self._pad0040 = v_bytes(size=7)
        self.DeviceObject = v_ptr64()
        self.DeviceName = v_ptr64()
        self.DriverName = v_ptr64()
        self.ChildCount = v_uint32()
        self.ActiveChild = v_uint32()
        self.ParentCount = v_uint32()
        self.ActiveParent = v_uint32()


class EXT_SET_PARAMETERS_V0(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Version = v_uint32()
        self.Reserved = v_uint32()
        self.NoWakeTolerance = v_uint64()


class DIRTY_PAGE_THRESHOLDS(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.DirtyPageThreshold = v_uint64()
        self.DirtyPageThresholdTop = v_uint64()
        self.DirtyPageThresholdBottom = v_uint64()
        self.DirtyPageTarget = v_uint32()
        self._pad0020 = v_bytes(size=4)
        self.AggregateAvailablePages = v_uint64()
        self.AggregateDirtyPages = v_uint64()
        self.AvailableHistory = v_uint32()
        self._pad0038 = v_bytes(size=4)


class VI_FAULT_TRACE(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Thread = v_ptr64()
        self.StackTrace = vstruct.VArray([ v_ptr64() for i in xrange(8) ])


class ETW_GUID_ENTRY(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.GuidList = LIST_ENTRY()
        self.RefCount = v_uint64()
        self.Guid = GUID()
        self.RegListHead = LIST_ENTRY()
        self.SecurityDescriptor = v_ptr64()
        self.LastEnable = ETW_LAST_ENABLE_INFO()
        self.ProviderEnableInfo = TRACE_ENABLE_INFO()
        self.EnableInfo = vstruct.VArray([ TRACE_ENABLE_INFO() for i in xrange(8) ])
        self.FilterData = v_ptr64()


class KTMOBJECT_NAMESPACE(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Table = RTL_AVL_TABLE()
        self.Mutex = KMUTANT()
        self.LinksOffset = v_uint16()
        self.GuidOffset = v_uint16()
        self.Expired = v_uint8()
        self._pad00a8 = v_bytes(size=3)


class OBJECT_HEADER_QUOTA_INFO(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.PagedPoolCharge = v_uint32()
        self.NonPagedPoolCharge = v_uint32()
        self.SecurityDescriptorCharge = v_uint32()
        self._pad0010 = v_bytes(size=4)
        self.SecurityDescriptorQuotaBlock = v_ptr64()
        self.Reserved = v_uint64()


class HEAP_STOP_ON_VALUES(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.AllocAddress = v_uint64()
        self.AllocTag = HEAP_STOP_ON_TAG()
        self._pad0010 = v_bytes(size=4)
        self.ReAllocAddress = v_uint64()
        self.ReAllocTag = HEAP_STOP_ON_TAG()
        self._pad0020 = v_bytes(size=4)
        self.FreeAddress = v_uint64()
        self.FreeTag = HEAP_STOP_ON_TAG()
        self._pad0030 = v_bytes(size=4)


class FS_FILTER_PARAMETERS(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.AcquireForModifiedPageWriter = _unnamed_35619()
        self._pad0028 = v_bytes(size=24)


class WMI_BUFFER_HEADER(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.BufferSize = v_uint32()
        self.SavedOffset = v_uint32()
        self.CurrentOffset = v_uint32()
        self.ReferenceCount = v_uint32()
        self.TimeStamp = LARGE_INTEGER()
        self.SequenceNumber = v_uint64()
        self.ClockType = v_uint64()
        self.ClientContext = ETW_BUFFER_CONTEXT()
        self.State = v_uint32()
        self.Offset = v_uint32()
        self.BufferFlag = v_uint16()
        self.BufferType = v_uint16()
        self.Padding1 = vstruct.VArray([ v_uint32() for i in xrange(4) ])


class MM_DRIVER_VERIFIER_DATA(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Level = v_uint32()
        self.RaiseIrqls = v_uint32()
        self.AcquireSpinLocks = v_uint32()
        self.SynchronizeExecutions = v_uint32()
        self.AllocationsAttempted = v_uint32()
        self.AllocationsSucceeded = v_uint32()
        self.AllocationsSucceededSpecialPool = v_uint32()
        self.AllocationsWithNoTag = v_uint32()
        self.TrimRequests = v_uint32()
        self.Trims = v_uint32()
        self.AllocationsFailed = v_uint32()
        self.AllocationsFailedDeliberately = v_uint32()
        self.Loads = v_uint32()
        self.Unloads = v_uint32()
        self.UnTrackedPool = v_uint32()
        self.UserTrims = v_uint32()
        self.CurrentPagedPoolAllocations = v_uint32()
        self.CurrentNonPagedPoolAllocations = v_uint32()
        self.PeakPagedPoolAllocations = v_uint32()
        self.PeakNonPagedPoolAllocations = v_uint32()
        self.PagedBytes = v_uint64()
        self.NonPagedBytes = v_uint64()
        self.PeakPagedBytes = v_uint64()
        self.PeakNonPagedBytes = v_uint64()
        self.BurstAllocationsFailedDeliberately = v_uint32()
        self.SessionTrims = v_uint32()
        self.OptionChanges = v_uint32()
        self.VerifyMode = v_uint32()
        self.PreviousBucketName = UNICODE_STRING()
        self.ActivityCounter = v_uint32()
        self.PreviousActivityCounter = v_uint32()
        self.WorkerTrimRequests = v_uint32()
        self._pad00a0 = v_bytes(size=4)


class _unnamed_27604(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.InitialPrivilegeSet = INITIAL_PRIVILEGE_SET()


class _unnamed_34302(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Priority = v_uint32()
        self.Reserved1 = v_uint32()
        self.Reserved2 = v_uint32()


class RH_OP_CONTEXT(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Links = LIST_ENTRY()
        self.OplockRequestIrp = v_ptr64()
        self.OplockRequestFileObject = v_ptr64()
        self.OplockRequestProcess = v_ptr64()
        self.OplockOwnerThread = v_ptr64()
        self.Flags = v_uint32()
        self._pad0038 = v_bytes(size=4)
        self.AtomicLinks = LIST_ENTRY()


class PEB64(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.InheritedAddressSpace = v_uint8()
        self.ReadImageFileExecOptions = v_uint8()
        self.BeingDebugged = v_uint8()
        self.BitField = v_uint8()
        self.Padding0 = vstruct.VArray([ v_uint8() for i in xrange(4) ])
        self.Mutant = v_uint64()
        self.ImageBaseAddress = v_uint64()
        self.Ldr = v_uint64()
        self.ProcessParameters = v_uint64()
        self.SubSystemData = v_uint64()
        self.ProcessHeap = v_uint64()
        self.FastPebLock = v_uint64()
        self.AtlThunkSListPtr = v_uint64()
        self.IFEOKey = v_uint64()
        self.CrossProcessFlags = v_uint32()
        self.Padding1 = vstruct.VArray([ v_uint8() for i in xrange(4) ])
        self.KernelCallbackTable = v_uint64()
        self.SystemReserved = vstruct.VArray([ v_uint32() for i in xrange(1) ])
        self.AtlThunkSListPtr32 = v_uint32()
        self.ApiSetMap = v_uint64()
        self.TlsExpansionCounter = v_uint32()
        self.Padding2 = vstruct.VArray([ v_uint8() for i in xrange(4) ])
        self.TlsBitmap = v_uint64()
        self.TlsBitmapBits = vstruct.VArray([ v_uint32() for i in xrange(2) ])
        self.ReadOnlySharedMemoryBase = v_uint64()
        self.SparePvoid0 = v_uint64()
        self.ReadOnlyStaticServerData = v_uint64()
        self.AnsiCodePageData = v_uint64()
        self.OemCodePageData = v_uint64()
        self.UnicodeCaseTableData = v_uint64()
        self.NumberOfProcessors = v_uint32()
        self.NtGlobalFlag = v_uint32()
        self.CriticalSectionTimeout = LARGE_INTEGER()
        self.HeapSegmentReserve = v_uint64()
        self.HeapSegmentCommit = v_uint64()
        self.HeapDeCommitTotalFreeThreshold = v_uint64()
        self.HeapDeCommitFreeBlockThreshold = v_uint64()
        self.NumberOfHeaps = v_uint32()
        self.MaximumNumberOfHeaps = v_uint32()
        self.ProcessHeaps = v_uint64()
        self.GdiSharedHandleTable = v_uint64()
        self.ProcessStarterHelper = v_uint64()
        self.GdiDCAttributeList = v_uint32()
        self.Padding3 = vstruct.VArray([ v_uint8() for i in xrange(4) ])
        self.LoaderLock = v_uint64()
        self.OSMajorVersion = v_uint32()
        self.OSMinorVersion = v_uint32()
        self.OSBuildNumber = v_uint16()
        self.OSCSDVersion = v_uint16()
        self.OSPlatformId = v_uint32()
        self.ImageSubsystem = v_uint32()
        self.ImageSubsystemMajorVersion = v_uint32()
        self.ImageSubsystemMinorVersion = v_uint32()
        self.Padding4 = vstruct.VArray([ v_uint8() for i in xrange(4) ])
        self.ActiveProcessAffinityMask = v_uint64()
        self.GdiHandleBuffer = vstruct.VArray([ v_uint32() for i in xrange(60) ])
        self.PostProcessInitRoutine = v_uint64()
        self.TlsExpansionBitmap = v_uint64()
        self.TlsExpansionBitmapBits = vstruct.VArray([ v_uint32() for i in xrange(32) ])
        self.SessionId = v_uint32()
        self.Padding5 = vstruct.VArray([ v_uint8() for i in xrange(4) ])
        self.AppCompatFlags = ULARGE_INTEGER()
        self.AppCompatFlagsUser = ULARGE_INTEGER()
        self.pShimData = v_uint64()
        self.AppCompatInfo = v_uint64()
        self.CSDVersion = STRING64()
        self.ActivationContextData = v_uint64()
        self.ProcessAssemblyStorageMap = v_uint64()
        self.SystemDefaultActivationContextData = v_uint64()
        self.SystemAssemblyStorageMap = v_uint64()
        self.MinimumStackCommit = v_uint64()
        self.FlsCallback = v_uint64()
        self.FlsListHead = LIST_ENTRY64()
        self.FlsBitmap = v_uint64()
        self.FlsBitmapBits = vstruct.VArray([ v_uint32() for i in xrange(4) ])
        self.FlsHighIndex = v_uint32()
        self._pad0358 = v_bytes(size=4)
        self.WerRegistrationData = v_uint64()
        self.WerShipAssertPtr = v_uint64()
        self.pUnused = v_uint64()
        self.pImageHeaderHash = v_uint64()
        self.TracingFlags = v_uint32()
        self.Padding6 = vstruct.VArray([ v_uint8() for i in xrange(4) ])
        self.CsrServerReadOnlySharedMemoryBase = v_uint64()


class ARBITER_ALTERNATIVE(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Minimum = v_uint64()
        self.Maximum = v_uint64()
        self.Length = v_uint64()
        self.Alignment = v_uint64()
        self.Priority = v_uint32()
        self.Flags = v_uint32()
        self.Descriptor = v_ptr64()
        self.Reserved = vstruct.VArray([ v_uint32() for i in xrange(3) ])
        self._pad0040 = v_bytes(size=4)


class HEAP_LOOKASIDE(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.ListHead = SLIST_HEADER()
        self.Depth = v_uint16()
        self.MaximumDepth = v_uint16()
        self.TotalAllocates = v_uint32()
        self.AllocateMisses = v_uint32()
        self.TotalFrees = v_uint32()
        self.FreeMisses = v_uint32()
        self.LastTotalAllocates = v_uint32()
        self.LastAllocateMisses = v_uint32()
        self.Counters = vstruct.VArray([ v_uint32() for i in xrange(2) ])
        self._pad0040 = v_bytes(size=12)


class WHEA_PCI_SLOT_NUMBER(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.u = _unnamed_35228()


class EX_FAST_REF(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Object = v_ptr64()


class DBGKD_FILL_MEMORY(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Address = v_uint64()
        self.Length = v_uint32()
        self.Flags = v_uint16()
        self.PatternLength = v_uint16()


class HMAP_TABLE(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Table = vstruct.VArray([ HMAP_ENTRY() for i in xrange(512) ])


class PNP_RESOURCE_REQUEST(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.PhysicalDevice = v_ptr64()
        self.Flags = v_uint32()
        self.AllocationType = v_uint32()
        self.Priority = v_uint32()
        self.Position = v_uint32()
        self.ResourceRequirements = v_ptr64()
        self.ReqList = v_ptr64()
        self.ResourceAssignment = v_ptr64()
        self.TranslatedResourceAssignment = v_ptr64()
        self.Status = v_uint32()
        self._pad0040 = v_bytes(size=4)


class RTL_ACTIVATION_CONTEXT_STACK_FRAME(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Previous = v_ptr64()
        self.ActivationContext = v_ptr64()
        self.Flags = v_uint32()
        self._pad0018 = v_bytes(size=4)


class _unnamed_37693(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.MessageAddressLow = v_uint32()
        self.MessageData = v_uint16()
        self.Reserved = v_uint16()


class FS_FILTER_CALLBACKS(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.SizeOfFsFilterCallbacks = v_uint32()
        self.Reserved = v_uint32()
        self.PreAcquireForSectionSynchronization = v_ptr64()
        self.PostAcquireForSectionSynchronization = v_ptr64()
        self.PreReleaseForSectionSynchronization = v_ptr64()
        self.PostReleaseForSectionSynchronization = v_ptr64()
        self.PreAcquireForCcFlush = v_ptr64()
        self.PostAcquireForCcFlush = v_ptr64()
        self.PreReleaseForCcFlush = v_ptr64()
        self.PostReleaseForCcFlush = v_ptr64()
        self.PreAcquireForModifiedPageWriter = v_ptr64()
        self.PostAcquireForModifiedPageWriter = v_ptr64()
        self.PreReleaseForModifiedPageWriter = v_ptr64()
        self.PostReleaseForModifiedPageWriter = v_ptr64()


class LDR_DDAG_NODE(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Modules = LIST_ENTRY()
        self.ServiceTagList = v_ptr64()
        self.LoadCount = v_uint32()
        self.ReferenceCount = v_uint32()
        self.DependencyCount = v_uint32()
        self._pad0028 = v_bytes(size=4)
        self.Dependencies = LDRP_CSLIST()
        self.IncomingDependencies = LDRP_CSLIST()
        self.State = v_uint32()
        self._pad0040 = v_bytes(size=4)
        self.CondenseLink = SINGLE_LIST_ENTRY()
        self.PreorderNumber = v_uint32()
        self.LowestLink = v_uint32()


class HANDLE_TABLE_ENTRY(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.VolatileLowValue = v_uint64()
        self.HighValue = v_uint64()


class IO_RESOURCE_DESCRIPTOR(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Option = v_uint8()
        self.Type = v_uint8()
        self.ShareDisposition = v_uint8()
        self.Spare1 = v_uint8()
        self.Flags = v_uint16()
        self.Spare2 = v_uint16()
        self.u = _unnamed_34173()


class ETW_PMC_SUPPORT(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Source = vstruct.VArray([ KPROFILE_SOURCE() for i in xrange(4) ])
        self.HookIdCount = v_uint32()
        self.HookId = vstruct.VArray([ v_uint16() for i in xrange(4) ])
        self.CountersCount = v_uint32()
        self.ProcessorCtrs = vstruct.VArray([ v_ptr64() for i in xrange(1) ])


class _unnamed_28014(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.SecurityContext = v_ptr64()
        self.Options = v_uint32()
        self._pad0010 = v_bytes(size=4)
        self.FileAttributes = v_uint16()
        self.ShareAccess = v_uint16()
        self._pad0018 = v_bytes(size=4)
        self.EaLength = v_uint32()
        self._pad0020 = v_bytes(size=4)


class KENTROPY_TIMING_STATE(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.EntropyCount = v_uint32()
        self.Buffer = vstruct.VArray([ v_uint32() for i in xrange(64) ])
        self._pad0108 = v_bytes(size=4)
        self.Dpc = KDPC()
        self.LastDeliveredBuffer = v_uint32()
        self._pad0150 = v_bytes(size=4)


class INTERRUPT_VECTOR_DATA(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Type = v_uint32()
        self.Vector = v_uint32()
        self.Irql = v_uint8()
        self._pad000c = v_bytes(size=3)
        self.Polarity = v_uint32()
        self.Mode = v_uint32()
        self._pad0018 = v_bytes(size=4)
        self.TargetProcessors = GROUP_AFFINITY()
        self.IntRemapInfo = INTERRUPT_REMAPPING_INFO()
        self.ControllerInput = _unnamed_36507()
        self._pad0048 = v_bytes(size=8)


class OBJECT_HANDLE_COUNT_ENTRY(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Process = v_ptr64()
        self.HandleCount = v_uint32()
        self._pad0010 = v_bytes(size=4)


class WHEA_GENERIC_ERROR_DESCRIPTOR(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Type = v_uint16()
        self.Reserved = v_uint8()
        self.Enabled = v_uint8()
        self.ErrStatusBlockLength = v_uint32()
        self.RelatedErrorSourceId = v_uint32()
        self.ErrStatusAddressSpaceID = v_uint8()
        self.ErrStatusAddressBitWidth = v_uint8()
        self.ErrStatusAddressBitOffset = v_uint8()
        self.ErrStatusAddressAccessSize = v_uint8()
        self.ErrStatusAddress = LARGE_INTEGER()
        self.Notify = WHEA_NOTIFICATION_DESCRIPTOR()


class _unnamed_37262(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.PollInterval = v_uint32()


class ETW_FILTER_STRING_TOKEN_ELEMENT(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Length = v_uint16()
        self._pad0008 = v_bytes(size=6)
        self.String = v_ptr64()


class KPRIQUEUE(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Header = DISPATCHER_HEADER()
        self.EntryListHead = vstruct.VArray([ LIST_ENTRY() for i in xrange(32) ])
        self.CurrentCount = vstruct.VArray([ v_uint32() for i in xrange(32) ])
        self.MaximumCount = v_uint32()
        self._pad02a0 = v_bytes(size=4)
        self.ThreadListHead = LIST_ENTRY()


class _unnamed_31795(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.MajorVersion = v_uint8()
        self.MinorVersion = v_uint8()
        self.SubVersion = v_uint8()
        self.SubMinorVersion = v_uint8()


class SCSI_REQUEST_BLOCK(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)


class ARBITER_ADD_RESERVED_PARAMETERS(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.ReserveDevice = v_ptr64()


class VF_ADDRESS_RANGE(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Start = v_ptr64()
        self.End = v_ptr64()


class STRING64(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Length = v_uint16()
        self.MaximumLength = v_uint16()
        self._pad0008 = v_bytes(size=4)
        self.Buffer = v_uint64()


class JOB_NOTIFICATION_INFORMATION(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)


class CACHED_CHILD_LIST(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Count = v_uint32()
        self._pad0008 = v_bytes(size=4)
        self.ValueList = v_uint64()


class FAST_MUTEX(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Count = v_uint32()
        self._pad0008 = v_bytes(size=4)
        self.Owner = v_ptr64()
        self.Contention = v_uint32()
        self._pad0018 = v_bytes(size=4)
        self.Event = KEVENT()
        self.OldIrql = v_uint32()
        self._pad0038 = v_bytes(size=4)


class AER_ROOTPORT_DESCRIPTOR_FLAGS(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.UncorrectableErrorMaskRW = v_uint16()


class X86_KTRAP_FRAME_BLUE(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.DbgEbp = v_uint32()
        self.DbgEip = v_uint32()
        self.DbgArgMark = v_uint32()
        self.TempSegCs = v_uint16()
        self.Logging = v_uint8()
        self.FrameType = v_uint8()
        self.TempEsp = v_uint32()
        self.Dr0 = v_uint32()
        self.Dr1 = v_uint32()
        self.Dr2 = v_uint32()
        self.Dr3 = v_uint32()
        self.Dr6 = v_uint32()
        self.Dr7 = v_uint32()
        self.SegGs = v_uint32()
        self.SegEs = v_uint32()
        self.SegDs = v_uint32()
        self.Edx = v_uint32()
        self.Ecx = v_uint32()
        self.Eax = v_uint32()
        self.PreviousPreviousMode = v_uint8()
        self.EntropyQueueDpc = v_uint8()
        self.Reserved = vstruct.VArray([ v_uint8() for i in xrange(2) ])
        self.MxCsr = v_uint32()
        self.ExceptionList = v_uint32()
        self.SegFs = v_uint32()
        self.Edi = v_uint32()
        self.Esi = v_uint32()
        self.Ebx = v_uint32()
        self.Ebp = v_uint32()
        self.ErrCode = v_uint32()
        self.Eip = v_uint32()
        self.SegCs = v_uint32()
        self.EFlags = v_uint32()
        self.HardwareEsp = v_uint32()
        self.HardwareSegSs = v_uint32()
        self.V86Es = v_uint32()
        self.V86Ds = v_uint32()
        self.V86Fs = v_uint32()
        self.V86Gs = v_uint32()


class MM_SESSION_SPACE(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.ReferenceCount = v_uint32()
        self.u = _unnamed_35954()
        self.SessionId = v_uint32()
        self.ProcessReferenceToSession = v_uint32()
        self.ProcessList = LIST_ENTRY()
        self.SessionPageDirectoryIndex = v_uint64()
        self.NonPagablePages = v_uint64()
        self.CommittedPages = v_uint64()
        self.PagedPoolStart = v_ptr64()
        self.PagedPoolEnd = v_ptr64()
        self.SessionObject = v_ptr64()
        self.SessionObjectHandle = v_ptr64()
        self.SessionPoolAllocationFailures = vstruct.VArray([ v_uint32() for i in xrange(4) ])
        self.ImageList = LIST_ENTRY()
        self.LocaleId = v_uint32()
        self.AttachCount = v_uint32()
        self.AttachGate = KGATE()
        self.WsListEntry = LIST_ENTRY()
        self._pad00c0 = v_bytes(size=24)
        self.Lookaside = vstruct.VArray([ GENERAL_LOOKASIDE() for i in xrange(21) ])
        self.Session = MMSESSION()
        self.PagedPoolInfo = MM_PAGED_POOL_INFO()
        self.Vm = MMSUPPORT()
        self.Wsle = v_ptr64()
        self.DriverUnload = MI_SESSION_DRIVER_UNLOAD()
        self._pad0d00 = v_bytes(size=8)
        self.PagedPool = POOL_DESCRIPTOR()
        self.PageDirectory = MMPTE()
        self.SessionVaLock = FAST_MUTEX()
        self.DynamicVaBitMap = RTL_BITMAP()
        self.DynamicVaHint = v_uint32()
        self._pad1e98 = v_bytes(size=4)
        self.SpecialPool = MI_SPECIAL_POOL()
        self.SessionPteLock = FAST_MUTEX()
        self.PoolBigEntriesInUse = v_uint32()
        self.PagedPoolPdeCount = v_uint32()
        self.SpecialPoolPdeCount = v_uint32()
        self.DynamicSessionPdeCount = v_uint32()
        self.SystemPteInfo = MI_SYSTEM_PTE_TYPE()
        self.PoolTrackTableExpansion = v_ptr64()
        self.PoolTrackTableExpansionSize = v_uint64()
        self.PoolTrackBigPages = v_ptr64()
        self.PoolTrackBigPagesSize = v_uint64()
        self.IoState = v_uint32()
        self.IoStateSequence = v_uint32()
        self.IoNotificationEvent = KEVENT()
        self._pad2000 = v_bytes(size=40)


class WHEA_ERROR_RECORD_HEADER_VALIDBITS(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.PlatformId = v_uint32()


class _unnamed_29007(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.ReferenceCount = v_uint16()
        self.ShortFlags = v_uint16()


class CM_NAME_CONTROL_BLOCK(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Compressed = v_uint32()
        self._pad0008 = v_bytes(size=4)
        self.NameHash = CM_NAME_HASH()


class DELAY_ACK_FO(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Links = LIST_ENTRY()
        self.OriginalFileObject = v_ptr64()


class KDEVICE_QUEUE(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Type = v_uint16()
        self.Size = v_uint16()
        self._pad0008 = v_bytes(size=4)
        self.DeviceListHead = LIST_ENTRY()
        self.Lock = v_uint64()
        self.Busy = v_uint8()
        self._pad0028 = v_bytes(size=7)


class ARBITER_RETEST_ALLOCATION_PARAMETERS(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.ArbitrationList = v_ptr64()
        self.AllocateFromCount = v_uint32()
        self._pad0010 = v_bytes(size=4)
        self.AllocateFrom = v_ptr64()


class NT_TIB32(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.ExceptionList = v_uint32()
        self.StackBase = v_uint32()
        self.StackLimit = v_uint32()
        self.SubSystemTib = v_uint32()
        self.FiberData = v_uint32()
        self.ArbitraryUserPointer = v_uint32()
        self.Self = v_uint32()


class _unnamed_37022(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Head = v_uint64()


class ALPC_COMPLETION_LIST(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Entry = LIST_ENTRY()
        self.OwnerProcess = v_ptr64()
        self.CompletionListLock = EX_PUSH_LOCK()
        self.Mdl = v_ptr64()
        self.UserVa = v_ptr64()
        self.UserLimit = v_ptr64()
        self.DataUserVa = v_ptr64()
        self.SystemVa = v_ptr64()
        self.TotalSize = v_uint64()
        self.Header = v_ptr64()
        self.List = v_ptr64()
        self.ListSize = v_uint64()
        self.Bitmap = v_ptr64()
        self.BitmapSize = v_uint64()
        self.Data = v_ptr64()
        self.DataSize = v_uint64()
        self.BitmapLimit = v_uint32()
        self.BitmapNextHint = v_uint32()
        self.ConcurrencyCount = v_uint32()
        self.AttributeFlags = v_uint32()
        self.AttributeSize = v_uint32()
        self._pad00a0 = v_bytes(size=4)


class PORT_MESSAGE(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.u1 = _unnamed_31082()
        self.u2 = _unnamed_31083()
        self.ClientId = CLIENT_ID()
        self.MessageId = v_uint32()
        self._pad0020 = v_bytes(size=4)
        self.ClientViewSize = v_uint64()


class RELATIVE_SYMLINK_INFO(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.ExposedNamespaceLength = v_uint16()
        self.Flags = v_uint16()
        self.DeviceNameLength = v_uint16()
        self.Reserved = v_uint16()
        self.InteriorMountPoint = v_ptr64()
        self.OpenedName = UNICODE_STRING()


class MI_VAD_EVENT_BLOCK(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Next = v_ptr64()
        self.WaitReason = v_uint32()
        self._pad0010 = v_bytes(size=4)
        self.Gate = KGATE()


class IO_SECURITY_CONTEXT(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.SecurityQos = v_ptr64()
        self.AccessState = v_ptr64()
        self.DesiredAccess = v_uint32()
        self.FullCreateOptions = v_uint32()


class TERMINATION_PORT(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Next = v_ptr64()
        self.Port = v_ptr64()


class _unnamed_36510(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.DestinationMode = v_uint32()


class VF_AVL_TABLE(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.RtlTable = RTL_AVL_TABLE()
        self.ReservedNode = v_ptr64()
        self.NodeToFree = v_ptr64()
        self._pad0080 = v_bytes(size=8)
        self.Lock = v_uint32()
        self._pad00c0 = v_bytes(size=60)


class _unnamed_27930(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.UserApcRoutine = v_ptr64()
        self.UserApcContext = v_ptr64()


class _unnamed_28305(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.DeviceTextType = v_uint32()
        self._pad0008 = v_bytes(size=4)
        self.LocaleId = v_uint32()
        self._pad0010 = v_bytes(size=4)


class IO_CLIENT_EXTENSION(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.NextExtension = v_ptr64()
        self.ClientIdentificationAddress = v_ptr64()


class INITIAL_PRIVILEGE_SET(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.PrivilegeCount = v_uint32()
        self.Control = v_uint32()
        self.Privilege = vstruct.VArray([ LUID_AND_ATTRIBUTES() for i in xrange(3) ])


class OBJECT_REF_INFO(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.ObjectHeader = v_ptr64()
        self.NextRef = v_ptr64()
        self.ImageFileName = vstruct.VArray([ v_uint8() for i in xrange(16) ])
        self.NextPos = v_uint16()
        self.MaxStacks = v_uint16()
        self.StackInfo = vstruct.VArray([ OBJECT_REF_STACK_INFO() for i in xrange(0) ])
        self._pad0028 = v_bytes(size=4)


class GENERAL_LOOKASIDE(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.ListHead = SLIST_HEADER()
        self.Depth = v_uint16()
        self.MaximumDepth = v_uint16()
        self.TotalAllocates = v_uint32()
        self.AllocateMisses = v_uint32()
        self.TotalFrees = v_uint32()
        self.FreeMisses = v_uint32()
        self.Type = v_uint32()
        self.Tag = v_uint32()
        self.Size = v_uint32()
        self.AllocateEx = v_ptr64()
        self.FreeEx = v_ptr64()
        self.ListEntry = LIST_ENTRY()
        self.LastTotalAllocates = v_uint32()
        self.LastAllocateMisses = v_uint32()
        self.Future = vstruct.VArray([ v_uint32() for i in xrange(2) ])
        self._pad0080 = v_bytes(size=32)


class _unnamed_28300(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.IdType = v_uint32()


class POP_PER_PROCESSOR_CONTEXT(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.UncompressedData = v_ptr64()
        self.MappingVa = v_ptr64()
        self.XpressEncodeWorkspace = v_ptr64()
        self.CompressedDataBuffer = v_ptr64()
        self.CopyTicks = v_uint64()
        self.CompressTicks = v_uint64()
        self.BytesCopied = v_uint64()
        self.PagesProcessed = v_uint64()
        self.DecompressTicks = v_uint64()
        self.ResumeCopyTicks = v_uint64()
        self.SharedBufferTicks = v_uint64()
        self.DecompressTicksByMethod = vstruct.VArray([ v_uint64() for i in xrange(2) ])
        self.DecompressSizeByMethod = vstruct.VArray([ v_uint64() for i in xrange(2) ])
        self.CompressCount = v_uint32()
        self.HuffCompressCount = v_uint32()


class GDI_TEB_BATCH64(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Offset = v_uint32()
        self._pad0008 = v_bytes(size=4)
        self.HDC = v_uint64()
        self.Buffer = vstruct.VArray([ v_uint32() for i in xrange(310) ])


class ETW_FILTER_STRING_TOKEN(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Count = v_uint16()
        self._pad0008 = v_bytes(size=6)
        self.Tokens = vstruct.VArray([ ETW_FILTER_STRING_TOKEN_ELEMENT() for i in xrange(1) ])


class WHEA_ERROR_RECORD_HEADER_FLAGS(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Recovered = v_uint32()


class THERMAL_INFORMATION(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.ThermalStamp = v_uint32()
        self.ThermalConstant1 = v_uint32()
        self.ThermalConstant2 = v_uint32()
        self._pad0010 = v_bytes(size=4)
        self.Processors = v_uint64()
        self.SamplingPeriod = v_uint32()
        self.CurrentTemperature = v_uint32()
        self.PassiveTripPoint = v_uint32()
        self.CriticalTripPoint = v_uint32()
        self.ActiveTripPointCount = v_uint8()
        self._pad002c = v_bytes(size=3)
        self.ActiveTripPoint = vstruct.VArray([ v_uint32() for i in xrange(10) ])
        self._pad0058 = v_bytes(size=4)


class KTIMER_TABLE_ENTRY(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Lock = v_uint64()
        self.Entry = LIST_ENTRY()
        self.Time = ULARGE_INTEGER()


class _unnamed_34903(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Level = v_uint16()
        self.Group = v_uint16()
        self.Vector = v_uint32()
        self.Affinity = v_uint64()


class NONOPAQUE_OPLOCK(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.IrpExclusiveOplock = v_ptr64()
        self.FileObject = v_ptr64()
        self.ExclusiveOplockOwner = v_ptr64()
        self.ExclusiveOplockOwnerThread = v_ptr64()
        self.WaiterPriority = v_uint8()
        self._pad0028 = v_bytes(size=7)
        self.IrpOplocksR = LIST_ENTRY()
        self.IrpOplocksRH = LIST_ENTRY()
        self.RHBreakQueue = LIST_ENTRY()
        self.WaitingIrps = LIST_ENTRY()
        self.DelayAckFileObjectQueue = LIST_ENTRY()
        self.AtomicQueue = LIST_ENTRY()
        self.DeleterParentKey = v_ptr64()
        self.OplockState = v_uint32()
        self._pad0098 = v_bytes(size=4)
        self.FastMutex = v_ptr64()


class PNP_DEVICE_EVENT_LIST(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Status = v_uint32()
        self._pad0008 = v_bytes(size=4)
        self.EventQueueMutex = KMUTANT()
        self.Lock = FAST_MUTEX()
        self.List = LIST_ENTRY()


class KWAIT_BLOCK(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.WaitListEntry = LIST_ENTRY()
        self.WaitType = v_uint8()
        self.BlockState = v_uint8()
        self.WaitKey = v_uint16()
        self.SpareLong = v_uint32()
        self.Thread = v_ptr64()
        self.Object = v_ptr64()
        self.SparePtr = v_ptr64()


class DBGKD_READ_WRITE_IO32(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.DataSize = v_uint32()
        self.IoAddress = v_uint32()
        self.DataValue = v_uint32()


class POP_HIBER_CONTEXT(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Reset = v_uint8()
        self.HiberFlags = v_uint8()
        self.WroteHiberFile = v_uint8()
        self.VerifyKernelPhaseOnResume = v_uint8()
        self.KernelPhaseVerificationActive = v_uint8()
        self.InitializationFinished = v_uint8()
        self._pad0008 = v_bytes(size=2)
        self.NextTableLockHeld = v_uint32()
        self.BootPhaseFinishedBarrier = v_uint32()
        self.KernelResumeFinishedBarrier = v_uint32()
        self.MapFrozen = v_uint8()
        self._pad0018 = v_bytes(size=3)
        self.DiscardMap = RTL_BITMAP()
        self.BootPhaseMap = RTL_BITMAP()
        self.ClonedRanges = LIST_ENTRY()
        self.ClonedRangeCount = v_uint32()
        self._pad0050 = v_bytes(size=4)
        self.ClonedPageCount = v_uint64()
        self.CurrentMap = v_ptr64()
        self.NextCloneRange = v_ptr64()
        self.NextPreserve = v_uint64()
        self.LoaderMdl = v_ptr64()
        self.AllocatedMdl = v_ptr64()
        self.PagesOut = v_uint64()
        self.IoPages = v_ptr64()
        self.IoPagesCount = v_uint32()
        self._pad0098 = v_bytes(size=4)
        self.CurrentMcb = v_ptr64()
        self.DumpStack = v_ptr64()
        self.WakeState = v_ptr64()
        self.IoProgress = v_uint32()
        self.Status = v_uint32()
        self.GraphicsProc = v_uint32()
        self._pad00c0 = v_bytes(size=4)
        self.MemoryImage = v_ptr64()
        self.PerformanceStats = v_ptr64()
        self.BootLoaderLogMdl = v_ptr64()
        self.SiLogOffset = v_uint32()
        self._pad00e0 = v_bytes(size=4)
        self.FirmwareRuntimeInformationMdl = v_ptr64()
        self.FirmwareRuntimeInformationVa = v_ptr64()
        self.ResumeContext = v_ptr64()
        self.ResumeContextPages = v_uint32()
        self.ProcessorCount = v_uint32()
        self.ProcessorContext = v_ptr64()
        self.ProdConsBuffer = v_ptr64()
        self.ProdConsSize = v_uint32()
        self.MaxDataPages = v_uint32()
        self.ExtraBuffer = v_ptr64()
        self.ExtraBufferSize = v_uint64()
        self.ExtraMapVa = v_ptr64()
        self.BitlockerKeyPFN = v_uint64()
        self.IoInfo = POP_IO_INFO()
        self.HardwareConfigurationSignature = v_uint32()
        self._pad01a0 = v_bytes(size=4)


class CALL_HASH_ENTRY(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.ListEntry = LIST_ENTRY()
        self.CallersAddress = v_ptr64()
        self.CallersCaller = v_ptr64()
        self.CallCount = v_uint32()
        self._pad0028 = v_bytes(size=4)


class ARMCE_DBGKD_CONTROL_SET(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Continue = v_uint32()
        self.CurrentSymbolStart = v_uint32()
        self.CurrentSymbolEnd = v_uint32()


class ACTIVATION_CONTEXT_DATA(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)


class POP_FX_DEVICE_STATUS(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Value = v_uint32()


class ETW_SYSTEMTIME(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Year = v_uint16()
        self.Month = v_uint16()
        self.DayOfWeek = v_uint16()
        self.Day = v_uint16()
        self.Hour = v_uint16()
        self.Minute = v_uint16()
        self.Second = v_uint16()
        self.Milliseconds = v_uint16()


class RTL_BALANCED_NODE(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Children = vstruct.VArray([ v_ptr64() for i in xrange(2) ])
        self.Red = v_uint8()
        self._pad0018 = v_bytes(size=7)


class FILE_NETWORK_OPEN_INFORMATION(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.CreationTime = LARGE_INTEGER()
        self.LastAccessTime = LARGE_INTEGER()
        self.LastWriteTime = LARGE_INTEGER()
        self.ChangeTime = LARGE_INTEGER()
        self.AllocationSize = LARGE_INTEGER()
        self.EndOfFile = LARGE_INTEGER()
        self.FileAttributes = v_uint32()
        self._pad0038 = v_bytes(size=4)


class PROCESSOR_NUMBER(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Group = v_uint16()
        self.Number = v_uint8()
        self.Reserved = v_uint8()


class SECURITY_SUBJECT_CONTEXT(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.ClientToken = v_ptr64()
        self.ImpersonationLevel = v_uint32()
        self._pad0010 = v_bytes(size=4)
        self.PrimaryToken = v_ptr64()
        self.ProcessAuditId = v_ptr64()


class _unnamed_37423(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Flags = MMSECURE_FLAGS()
        self._pad0008 = v_bytes(size=4)


class _unnamed_31230(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.s1 = _unnamed_31233()


class _unnamed_31233(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Secure = v_uint32()


class RTL_DRIVE_LETTER_CURDIR(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Flags = v_uint16()
        self.Length = v_uint16()
        self.TimeStamp = v_uint32()
        self.DosPath = STRING()


class WHEAP_ERROR_RECORD_WRAPPER_FLAGS(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Preallocated = v_uint32()


class VF_TRACKER(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.TrackerFlags = v_uint32()
        self.TrackerSize = v_uint32()
        self.TrackerIndex = v_uint32()
        self.TraceDepth = v_uint32()


class KIDTENTRY64(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.OffsetLow = v_uint16()
        self.Selector = v_uint16()
        self.IstIndex = v_uint16()
        self.OffsetMiddle = v_uint16()
        self.OffsetHigh = v_uint32()
        self.Reserved1 = v_uint32()


class CACHE_DESCRIPTOR(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Level = v_uint8()
        self.Associativity = v_uint8()
        self.LineSize = v_uint16()
        self.Size = v_uint32()
        self.Type = v_uint32()


class PROCESSOR_PLATFORM_STATE_RESIDENCIES(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Count = v_uint32()
        self._pad0008 = v_bytes(size=4)
        self.States = vstruct.VArray([ PROCESSOR_PLATFORM_STATE_RESIDENCY() for i in xrange(1) ])


class ARBITER_QUERY_ARBITRATE_PARAMETERS(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.ArbitrationList = v_ptr64()


class ULARGE_INTEGER(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.LowPart = v_uint32()
        self.HighPart = v_uint32()


class TEB_ACTIVE_FRAME(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Flags = v_uint32()
        self._pad0008 = v_bytes(size=4)
        self.Previous = v_ptr64()
        self.Context = v_ptr64()


class ETIMER(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.KeTimer = KTIMER()
        self.Lock = v_uint64()
        self.TimerApc = KAPC()
        self.TimerDpc = KDPC()
        self.ActiveTimerListEntry = LIST_ENTRY()
        self.Period = v_uint32()
        self.TimerFlags = v_uint8()
        self.DueTimeType = v_uint8()
        self.Spare2 = v_uint16()
        self.WakeReason = v_ptr64()
        self.WakeTimerListEntry = LIST_ENTRY()
        self.VirtualizedTimerCookie = v_ptr64()
        self.VirtualizedTimerLinks = LIST_ENTRY()
        self.DueTime = v_uint64()
        self.CoalescingWindow = v_uint32()
        self._pad0138 = v_bytes(size=4)


class DBGKD_LOAD_SYMBOLS64(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.PathNameLength = v_uint32()
        self._pad0008 = v_bytes(size=4)
        self.BaseOfDll = v_uint64()
        self.ProcessId = v_uint64()
        self.CheckSum = v_uint32()
        self.SizeOfImage = v_uint32()
        self.UnloadSymbols = v_uint8()
        self._pad0028 = v_bytes(size=7)


class FREE_DISPLAY(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.RealVectorSize = v_uint32()
        self.Hint = v_uint32()
        self.Display = RTL_BITMAP()


class _unnamed_28162(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.OutputBufferLength = v_uint32()
        self._pad0008 = v_bytes(size=4)
        self.InputBufferLength = v_uint32()
        self._pad0010 = v_bytes(size=4)
        self.FsControlCode = v_uint32()
        self._pad0018 = v_bytes(size=4)
        self.Type3InputBuffer = v_ptr64()


class INTERRUPT_CONNECTION_DATA(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Count = v_uint32()
        self._pad0008 = v_bytes(size=4)
        self.OriginalAffinity = GROUP_AFFINITY()
        self.SteeringListEntry = LIST_ENTRY()
        self.SteeringListRoot = v_ptr64()
        self.IsrTime = v_uint64()
        self.DpcTime = v_uint64()
        self.IsrLoad = v_uint32()
        self.DpcLoad = v_uint32()
        self.IsPrimaryInterrupt = v_uint8()
        self._pad0050 = v_bytes(size=7)
        self.InterruptObjectArray = v_ptr64()
        self.InterruptObjectCount = v_uint32()
        self._pad0060 = v_bytes(size=4)
        self.Vectors = vstruct.VArray([ INTERRUPT_VECTOR_DATA() for i in xrange(1) ])


class KLOCK_ENTRY_LOCK_STATE(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Waiting = v_uint64()
        self.SessionState = v_ptr64()


class _unnamed_28167(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Length = v_ptr64()
        self.Key = v_uint32()
        self._pad0010 = v_bytes(size=4)
        self.ByteOffset = LARGE_INTEGER()


class OBJECT_DIRECTORY_ENTRY(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.ChainLink = v_ptr64()
        self.Object = v_ptr64()
        self.HashValue = v_uint32()
        self._pad0018 = v_bytes(size=4)


class DEVICE_OBJECT(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Type = v_uint16()
        self.Size = v_uint16()
        self.ReferenceCount = v_uint32()
        self.DriverObject = v_ptr64()
        self.NextDevice = v_ptr64()
        self.AttachedDevice = v_ptr64()
        self.CurrentIrp = v_ptr64()
        self.Timer = v_ptr64()
        self.Flags = v_uint32()
        self.Characteristics = v_uint32()
        self.Vpb = v_ptr64()
        self.DeviceExtension = v_ptr64()
        self.DeviceType = v_uint32()
        self.StackSize = v_uint8()
        self._pad0050 = v_bytes(size=3)
        self.Queue = _unnamed_27685()
        self.AlignmentRequirement = v_uint32()
        self._pad00a0 = v_bytes(size=4)
        self.DeviceQueue = KDEVICE_QUEUE()
        self.Dpc = KDPC()
        self.ActiveThreadCount = v_uint32()
        self._pad0110 = v_bytes(size=4)
        self.SecurityDescriptor = v_ptr64()
        self.DeviceLock = KEVENT()
        self.SectorSize = v_uint16()
        self.Spare1 = v_uint16()
        self._pad0138 = v_bytes(size=4)
        self.DeviceObjectExtension = v_ptr64()
        self.Reserved = v_ptr64()
        self._pad0150 = v_bytes(size=8)


class CM_KEY_HASH(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.ConvKey = v_uint32()
        self._pad0008 = v_bytes(size=4)
        self.NextHash = v_ptr64()
        self.KeyHive = v_ptr64()
        self.KeyCell = v_uint32()
        self._pad0020 = v_bytes(size=4)


class PPM_CONCURRENCY_ACCOUNTING(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Lock = v_uint64()
        self.Processors = v_uint32()
        self.ActiveProcessors = v_uint32()
        self.LastUpdateTime = v_uint64()
        self.TotalTime = v_uint64()
        self.AccumulatedTime = vstruct.VArray([ v_uint64() for i in xrange(1) ])


class KTMNOTIFICATION_PACKET(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)


class PALPC_PORT_REFERENCE_WAIT_BLOCK(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.DesiredReferenceNoEvent = KEVENT()
        self.DesiredReferenceNo = v_uint32()
        self._pad0020 = v_bytes(size=4)


class DYNAMIC_FUNCTION_TABLE(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.ListEntry = LIST_ENTRY()
        self.FunctionTable = v_ptr64()
        self.TimeStamp = LARGE_INTEGER()
        self.MinimumAddress = v_uint64()
        self.MaximumAddress = v_uint64()
        self.BaseAddress = v_uint64()
        self.Callback = v_ptr64()
        self.Context = v_ptr64()
        self.OutOfProcessCallbackDll = v_ptr64()
        self.Type = v_uint32()
        self.EntryCount = v_uint32()


class KWAIT_STATUS_REGISTER(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Flags = v_uint8()


class PROC_PERF_HISTORY_ENTRY(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Utility = v_uint16()
        self.AffinitizedUtility = v_uint16()
        self.Frequency = v_uint8()
        self.Reserved = v_uint8()


class NAMED_PIPE_CREATE_PARAMETERS(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.NamedPipeType = v_uint32()
        self.ReadMode = v_uint32()
        self.CompletionMode = v_uint32()
        self.MaximumInstances = v_uint32()
        self.InboundQuota = v_uint32()
        self.OutboundQuota = v_uint32()
        self.DefaultTimeout = LARGE_INTEGER()
        self.TimeoutSpecified = v_uint8()
        self._pad0028 = v_bytes(size=7)


class WHEA_IPF_CPE_DESCRIPTOR(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Type = v_uint16()
        self.Enabled = v_uint8()
        self.Reserved = v_uint8()


class _unnamed_36509(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.IntrInfo = INTERRUPT_HT_INTR_INFO()


class NT_TIB(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.ExceptionList = v_ptr64()
        self.StackBase = v_ptr64()
        self.StackLimit = v_ptr64()
        self.SubSystemTib = v_ptr64()
        self.FiberData = v_ptr64()
        self.ArbitraryUserPointer = v_ptr64()
        self.Self = v_ptr64()


class POP_FX_COMPONENT(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Id = GUID()
        self.Index = v_uint32()
        self._pad0018 = v_bytes(size=4)
        self.WorkOrder = POP_FX_WORK_ORDER()
        self.Device = v_ptr64()
        self.Flags = POP_FX_COMPONENT_FLAGS()
        self.Resident = v_uint32()
        self._pad0068 = v_bytes(size=4)
        self.ActiveEvent = KEVENT()
        self.IdleLock = v_uint64()
        self.IdleConditionComplete = v_uint32()
        self.IdleStateComplete = v_uint32()
        self.IdleStamp = v_uint64()
        self.CurrentIdleState = v_uint32()
        self.IdleStateCount = v_uint32()
        self.IdleStates = v_ptr64()
        self.DeepestWakeableIdleState = v_uint32()
        self.ProviderCount = v_uint32()
        self.Providers = v_ptr64()
        self.IdleProviderCount = v_uint32()
        self.DependentCount = v_uint32()
        self.Dependents = v_ptr64()
        self.Accounting = POP_FX_ACCOUNTING()


class CM_KEY_CONTROL_BLOCK(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.RefCount = v_uint32()
        self.ExtFlags = v_uint32()
        self.DelayedDeref = v_uint32()
        self._pad0010 = v_bytes(size=4)
        self.KeyHash = CM_KEY_HASH()
        self.KcbPushlock = EX_PUSH_LOCK()
        self.Owner = v_ptr64()
        self.SlotHint = v_uint32()
        self._pad0048 = v_bytes(size=4)
        self.ParentKcb = v_ptr64()
        self.NameBlock = v_ptr64()
        self.CachedSecurity = v_ptr64()
        self.ValueCache = CACHED_CHILD_LIST()
        self.IndexHint = v_ptr64()
        self.KeyBodyListHead = LIST_ENTRY()
        self.KeyBodyArray = vstruct.VArray([ v_ptr64() for i in xrange(4) ])
        self.KcbLastWriteTime = LARGE_INTEGER()
        self.KcbMaxNameLen = v_uint16()
        self.KcbMaxValueNameLen = v_uint16()
        self.KcbMaxValueDataLen = v_uint32()
        self.KcbUserFlags = v_uint32()
        self._pad00c0 = v_bytes(size=4)
        self.RealKeyName = v_ptr64()
        self.KCBUoWListHead = LIST_ENTRY()
        self.DelayQueueEntry = LIST_ENTRY()
        self.TransKCBOwner = v_ptr64()
        self.KCBLock = CM_INTENT_LOCK()
        self.KeyLock = CM_INTENT_LOCK()
        self.TransValueCache = CHILD_LIST()
        self.TransValueListOwner = v_ptr64()
        self.FullKCBName = v_ptr64()


class ARBITER_TEST_ALLOCATION_PARAMETERS(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.ArbitrationList = v_ptr64()
        self.AllocateFromCount = v_uint32()
        self._pad0010 = v_bytes(size=4)
        self.AllocateFrom = v_ptr64()


class POWER_STATE(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.SystemState = v_uint32()


class _unnamed_36507(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Gsiv = v_uint32()
        self.WakeInterrupt = v_uint32()


class MI_CONTROL_AREA_WAIT_BLOCK(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Next = v_ptr64()
        self.WaitReason = v_uint32()
        self.WaitResponse = v_uint32()
        self.Gate = KGATE()


class UNICODE_STRING(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Length = v_uint16()
        self.MaximumLength = v_uint16()
        self._pad0008 = v_bytes(size=4)
        self.Buffer = v_ptr64()


class CELL_DATA(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.u = u()


class _unnamed_28227(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.InterfaceType = v_ptr64()
        self.Size = v_uint16()
        self.Version = v_uint16()
        self._pad0010 = v_bytes(size=4)
        self.Interface = v_ptr64()
        self.InterfaceSpecificData = v_ptr64()


class HEAP_LIST_LOOKUP(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.ExtendedLookup = v_ptr64()
        self.ArraySize = v_uint32()
        self.ExtraItem = v_uint32()
        self.ItemCount = v_uint32()
        self.OutOfRangeItems = v_uint32()
        self.BaseIndex = v_uint32()
        self._pad0020 = v_bytes(size=4)
        self.ListHead = v_ptr64()
        self.ListsInUseUlong = v_ptr64()
        self.ListHints = v_ptr64()


class INTERRUPT_REMAPPING_INFO(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.IrtIndex = v_uint32()
        self._pad0008 = v_bytes(size=4)
        self.u = _unnamed_37608()


class CM_KEY_SECURITY_CACHE(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Cell = v_uint32()
        self.ConvKey = v_uint32()
        self.List = LIST_ENTRY()
        self.DescriptorLength = v_uint32()
        self.RealRefCount = v_uint32()
        self.Descriptor = SECURITY_DESCRIPTOR_RELATIVE()
        self._pad0038 = v_bytes(size=4)


class DUMMY_FILE_OBJECT(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.ObjectHeader = OBJECT_HEADER()
        self.FileObjectBody = vstruct.VArray([ v_uint8() for i in xrange(216) ])


class PEP_CRASHDUMP_INFORMATION(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.DeviceHandle = v_ptr64()
        self.DeviceContext = v_ptr64()


class SID_AND_ATTRIBUTES(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Sid = v_ptr64()
        self.Attributes = v_uint32()
        self._pad0010 = v_bytes(size=4)


class CM_RM(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.RmListEntry = LIST_ENTRY()
        self.TransactionListHead = LIST_ENTRY()
        self.TmHandle = v_ptr64()
        self.Tm = v_ptr64()
        self.RmHandle = v_ptr64()
        self.KtmRm = v_ptr64()
        self.RefCount = v_uint32()
        self.ContainerNum = v_uint32()
        self.ContainerSize = v_uint64()
        self.CmHive = v_ptr64()
        self.LogFileObject = v_ptr64()
        self.MarshallingContext = v_ptr64()
        self.RmFlags = v_uint32()
        self.LogStartStatus1 = v_uint32()
        self.LogStartStatus2 = v_uint32()
        self._pad0078 = v_bytes(size=4)
        self.BaseLsn = v_uint64()
        self.RmLock = v_ptr64()


class MI_USER_VA_INFO(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.NumberOfCommittedPageTables = v_uint32()
        self.PhysicalMappingCount = v_uint32()
        self.VadBitMapHint = v_uint32()
        self.LastAllocationSizeHint = v_uint32()
        self.LastAllocationSize = v_uint32()
        self.LowestBottomUpVadBit = v_uint32()
        self.VadBitMapSize = v_uint32()
        self.VadBitMapCommitment = v_uint32()
        self.MaximumLastVadBit = v_uint32()
        self.VadsBeingDeleted = v_uint32()
        self.LastVadDeletionEvent = v_ptr64()
        self.VadBitBuffer = v_ptr64()
        self.LowestBottomUpAllocationAddress = v_ptr64()
        self.HighestTopDownAllocationAddress = v_ptr64()
        self.FreeTebHint = v_ptr64()
        self.NumaAware = v_uint8()
        self._pad0058 = v_bytes(size=7)
        self.PrivateFixupVadCount = v_uint64()
        self.CfgBitMap = vstruct.VArray([ MI_CFG_BITMAP_INFO() for i in xrange(3) ])
        self.CommittedPageTableBufferForTopLevel = vstruct.VArray([ v_uint32() for i in xrange(8) ])
        self.CommittedPageTableBitmaps = vstruct.VArray([ RTL_BITMAP() for i in xrange(3) ])
        self.PageTableBitmapPages = vstruct.VArray([ v_uint32() for i in xrange(3) ])
        self._pad0120 = v_bytes(size=4)
        self.FreeUmsTebHint = v_ptr64()


class COLORED_PAGE_INFO(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.BeingZeroed = v_uint32()
        self.Processor = v_uint32()
        self.PagesQueued = v_uint64()
        self.PfnAllocation = v_ptr64()


class EPROCESS_QUOTA_BLOCK(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)


class POP_FX_COMPONENT_FLAGS(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Value = v_uint32()
        self.Value2 = v_uint32()


class PHYSICAL_MEMORY_RUN(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.BasePage = v_uint64()
        self.PageCount = v_uint64()


class HV_ENLIGHTENMENT_INFORMATION(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.UseHypercallForAddressSpaceSwitch = v_uint32()
        self.LongSpinWaitCount = v_uint32()
        self.ReservedEcx = v_uint32()
        self.ReservedEdx = v_uint32()


class FILE_SEGMENT_ELEMENT(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Buffer = v_ptr64()


class _unnamed_36258(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.ListHead = LIST_ENTRY()


class _unnamed_36257(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.UserData = v_ptr64()
        self.Owner = v_ptr64()


class BLOB_TYPE(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.ResourceId = v_uint32()
        self.PoolTag = v_uint32()
        self.LookasideIndex = v_uint32()
        self.Flags = v_uint32()
        self.Counters = v_ptr64()
        self.DeleteProcedure = v_ptr64()
        self.DestroyProcedure = v_ptr64()
        self.UsualSize = v_uint64()


class PENDING_RELATIONS_LIST_ENTRY(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Link = LIST_ENTRY()
        self.WorkItem = WORK_QUEUE_ITEM()
        self.DeviceEvent = v_ptr64()
        self.DeviceObject = v_ptr64()
        self.RelationsList = v_ptr64()
        self.EjectIrp = v_ptr64()
        self.Lock = v_uint32()
        self.Problem = v_uint32()
        self.ProfileChangingEject = v_uint8()
        self.DisplaySafeRemovalDialog = v_uint8()
        self._pad005c = v_bytes(size=2)
        self.LightestSleepState = v_uint32()
        self.DockInterface = v_ptr64()
        self.DequeuePending = v_uint8()
        self._pad006c = v_bytes(size=3)
        self.DeleteType = v_uint32()


class LDRP_DLL_SNAP_CONTEXT(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)


class _unnamed_29231(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.NumberOfSystemCacheViews = v_uint32()
        self.WritableUserReferences = v_uint32()
        self.FlushInProgressCount = v_uint32()
        self._pad0010 = v_bytes(size=4)


class ACCESS_REASONS(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Data = vstruct.VArray([ v_uint32() for i in xrange(32) ])


class CM_KCB_UOW(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.TransactionListEntry = LIST_ENTRY()
        self.KCBLock = v_ptr64()
        self.KeyLock = v_ptr64()
        self.KCBListEntry = LIST_ENTRY()
        self.KeyControlBlock = v_ptr64()
        self.Transaction = v_ptr64()
        self.UoWState = v_uint32()
        self.ActionType = v_uint32()
        self.StorageType = v_uint32()
        self._pad0050 = v_bytes(size=4)
        self.ChildKCB = v_ptr64()
        self.NewChildKCB = v_ptr64()


class DBGKD_ANY_CONTROL_SET(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.X86ControlSet = X86_DBGKD_CONTROL_SET()
        self._pad001c = v_bytes(size=12)


class _unnamed_30744(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.FileOffset = LARGE_INTEGER()
        self._pad0010 = v_bytes(size=8)


class MAPPED_FILE_SEGMENT(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.ControlArea = v_ptr64()
        self.TotalNumberOfPtes = v_uint32()
        self.SegmentFlags = SEGMENT_FLAGS()
        self.NumberOfCommittedPages = v_uint64()
        self.SizeOfSegment = v_uint64()
        self.ExtendInfo = v_ptr64()
        self.SegmentLock = EX_PUSH_LOCK()


class _unnamed_35954(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.LongFlags = v_uint32()


class MMSUPPORT(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.ExitGate = v_ptr64()
        self.AccessLog = v_ptr64()
        self.WorkingSetMutex = EX_PUSH_LOCK()
        self.WorkingSetExpansionLinks = LIST_ENTRY()
        self.AgeDistribution = vstruct.VArray([ v_uint64() for i in xrange(7) ])
        self.MinimumWorkingSetSize = v_uint64()
        self.WorkingSetLeafSize = v_uint64()
        self.WorkingSetLeafPrivateSize = v_uint64()
        self.WorkingSetSize = v_uint64()
        self.WorkingSetPrivateSize = v_uint64()
        self.MaximumWorkingSetSize = v_uint64()
        self.ChargedWslePages = v_uint64()
        self.ActualWslePages = v_uint64()
        self.WorkingSetSizeOverhead = v_uint64()
        self.PeakWorkingSetSize = v_uint64()
        self.HardFaultCount = v_uint32()
        self._pad00b8 = v_bytes(size=4)
        self.VmWorkingSetList = v_ptr64()
        self.NextPageColor = v_uint16()
        self.LastTrimStamp = v_uint16()
        self.PageFaultCount = v_uint32()
        self.TrimmedPageCount = v_uint64()
        self.ForceTrimPages = v_uint64()
        self.Flags = MMSUPPORT_FLAGS()
        self._pad00e0 = v_bytes(size=4)
        self.WsSwapSupport = v_ptr64()


class LOGGED_STREAM_CALLBACK_V2(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.LogHandleContext = v_ptr64()


class POP_IRP_WORKER_ENTRY(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Link = LIST_ENTRY()
        self.Thread = v_ptr64()
        self.Irp = v_ptr64()
        self.Device = v_ptr64()
        self.Static = v_uint8()
        self._pad0030 = v_bytes(size=7)


class HBASE_BLOCK(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Signature = v_uint32()
        self.Sequence1 = v_uint32()
        self.Sequence2 = v_uint32()
        self.TimeStamp = LARGE_INTEGER()
        self.Major = v_uint32()
        self.Minor = v_uint32()
        self.Type = v_uint32()
        self.Format = v_uint32()
        self.RootCell = v_uint32()
        self.Length = v_uint32()
        self.Cluster = v_uint32()
        self.FileName = vstruct.VArray([ v_uint8() for i in xrange(64) ])
        self.RmId = GUID()
        self.LogId = GUID()
        self.Flags = v_uint32()
        self.TmId = GUID()
        self.GuidSignature = v_uint32()
        self.LastReorganizeTime = v_uint64()
        self.Reserved1 = vstruct.VArray([ v_uint32() for i in xrange(83) ])
        self.CheckSum = v_uint32()
        self.Reserved2 = vstruct.VArray([ v_uint32() for i in xrange(882) ])
        self.ThawTmId = GUID()
        self.ThawRmId = GUID()
        self.ThawLogId = GUID()
        self.BootType = v_uint32()
        self.BootRecover = v_uint32()


class PCW_BUFFER(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)


class HV_HYPERVISOR_VERSION_INFO(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.BuildNumber = v_uint32()
        self.MinorVersion = v_uint32()
        self.ServicePack = v_uint32()
        self.ServiceNumber = v_uint32()


class BUS_EXTENSION_LIST(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Next = v_ptr64()
        self.BusExtension = v_ptr64()


class _unnamed_28118(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Length = v_uint32()
        self._pad0008 = v_bytes(size=4)
        self.FileName = v_ptr64()
        self.FileInformationClass = v_uint32()
        self._pad0018 = v_bytes(size=4)
        self.FileIndex = v_uint32()
        self._pad0020 = v_bytes(size=4)


class SESSION_LOWBOX_MAP(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.ListEntry = LIST_ENTRY()
        self.SessionId = v_uint32()
        self._pad0018 = v_bytes(size=4)
        self.LowboxMap = SEP_LOWBOX_NUMBER_MAPPING()


class MMVAD_FLAGS2(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.FileOffset = v_uint32()


class MMVAD_FLAGS(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.VadType = v_uint32()


class DBGKD_GET_SET_BUS_DATA(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.BusDataType = v_uint32()
        self.BusNumber = v_uint32()
        self.SlotNumber = v_uint32()
        self.Offset = v_uint32()
        self.Length = v_uint32()


class KDPC(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.TargetInfoAsUlong = v_uint32()
        self._pad0008 = v_bytes(size=4)
        self.DpcListEntry = SINGLE_LIST_ENTRY()
        self.ProcessorHistory = v_uint64()
        self.DeferredRoutine = v_ptr64()
        self.DeferredContext = v_ptr64()
        self.SystemArgument1 = v_ptr64()
        self.SystemArgument2 = v_ptr64()
        self.DpcData = v_ptr64()


class EVENT_HEADER(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Size = v_uint16()
        self.HeaderType = v_uint16()
        self.Flags = v_uint16()
        self.EventProperty = v_uint16()
        self.ThreadId = v_uint32()
        self.ProcessId = v_uint32()
        self.TimeStamp = LARGE_INTEGER()
        self.ProviderId = GUID()
        self.EventDescriptor = EVENT_DESCRIPTOR()
        self.KernelTime = v_uint32()
        self.UserTime = v_uint32()
        self.ActivityId = GUID()


class HAL_PMC_COUNTERS(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)


class HV_IMPLEMENTATION_LIMITS(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.MaxVirtualProcessorCount = v_uint32()
        self.MaxLogicalProcessorCount = v_uint32()
        self.MaxInterruptMappingCount = v_uint32()
        self.ReservedEdx = v_uint32()


class KEVENT(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Header = DISPATCHER_HEADER()


class KRESOURCEMANAGER(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.NotificationAvailable = KEVENT()
        self.cookie = v_uint32()
        self.State = v_uint32()
        self.Flags = v_uint32()
        self._pad0028 = v_bytes(size=4)
        self.Mutex = KMUTANT()
        self.NamespaceLink = KTMOBJECT_NAMESPACE_LINK()
        self.RmId = GUID()
        self.NotificationQueue = KQUEUE()
        self.NotificationMutex = KMUTANT()
        self.EnlistmentHead = LIST_ENTRY()
        self.EnlistmentCount = v_uint32()
        self._pad0128 = v_bytes(size=4)
        self.NotificationRoutine = v_ptr64()
        self.Key = v_ptr64()
        self.ProtocolListHead = LIST_ENTRY()
        self.PendingPropReqListHead = LIST_ENTRY()
        self.CRMListEntry = LIST_ENTRY()
        self.Tm = v_ptr64()
        self.Description = UNICODE_STRING()
        self.Enlistments = KTMOBJECT_NAMESPACE()
        self.CompletionBinding = KRESOURCEMANAGER_COMPLETION_BINDING()


class KSEMAPHORE(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Header = DISPATCHER_HEADER()
        self.Limit = v_uint32()
        self._pad0020 = v_bytes(size=4)


class MM_PAGE_ACCESS_INFO_HEADER(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Link = SINGLE_LIST_ENTRY()
        self.Type = v_uint32()
        self.EmptySequenceNumber = v_uint32()
        self.CreateTime = v_uint64()
        self.EmptyTime = v_uint64()
        self.PageEntry = v_ptr64()
        self.FileEntry = v_ptr64()
        self.FirstFileEntry = v_ptr64()
        self.Process = v_ptr64()
        self.SessionId = v_uint32()
        self._pad0048 = v_bytes(size=4)


class _unnamed_28977(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Blink = v_uint64()


class KDPC_LIST(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.ListHead = SINGLE_LIST_ENTRY()
        self.LastEntry = v_ptr64()


class IMAGE_DEBUG_DIRECTORY(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Characteristics = v_uint32()
        self.TimeDateStamp = v_uint32()
        self.MajorVersion = v_uint16()
        self.MinorVersion = v_uint16()
        self.Type = v_uint32()
        self.SizeOfData = v_uint32()
        self.AddressOfRawData = v_uint32()
        self.PointerToRawData = v_uint32()


class IRP(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Type = v_uint16()
        self.Size = v_uint16()
        self.AllocationProcessorNumber = v_uint16()
        self.Reserved = v_uint16()
        self.MdlAddress = v_ptr64()
        self.Flags = v_uint32()
        self._pad0018 = v_bytes(size=4)
        self.AssociatedIrp = _unnamed_27911()
        self.ThreadListEntry = LIST_ENTRY()
        self.IoStatus = IO_STATUS_BLOCK()
        self.RequestorMode = v_uint8()
        self.PendingReturned = v_uint8()
        self.StackCount = v_uint8()
        self.CurrentLocation = v_uint8()
        self.Cancel = v_uint8()
        self.CancelIrql = v_uint8()
        self.ApcEnvironment = v_uint8()
        self.AllocationFlags = v_uint8()
        self.UserIosb = v_ptr64()
        self.UserEvent = v_ptr64()
        self.Overlay = _unnamed_27913()
        self.CancelRoutine = v_ptr64()
        self.UserBuffer = v_ptr64()
        self.Tail = _unnamed_27916()


class MCGEN_TRACE_CONTEXT(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.RegistrationHandle = v_uint64()
        self.Logger = v_uint64()
        self.MatchAnyKeyword = v_uint64()
        self.MatchAllKeyword = v_uint64()
        self.Flags = v_uint32()
        self.IsEnabled = v_uint32()
        self.Level = v_uint8()
        self.Reserve = v_uint8()
        self.EnableBitsCount = v_uint16()
        self._pad0030 = v_bytes(size=4)
        self.EnableBitMask = v_ptr64()
        self.EnableKeyWords = v_ptr64()
        self.EnableLevel = v_ptr64()


class _unnamed_34049(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.DirtyVectorModifiedContext = _unnamed_35277()


class VF_WATCHDOG_IRP(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.ListEntry = LIST_ENTRY()
        self.Irp = v_ptr64()
        self.DueTickCount = v_uint32()
        self.Inserted = v_uint8()
        self.TrackedStackLocation = v_uint8()
        self.CancelTimeoutTicks = v_uint16()


class ARBITER_QUERY_ALLOCATED_RESOURCES_PARAMETERS(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.AllocatedResources = v_ptr64()


class LAZY_WRITER(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.ScanDpc = KDPC()
        self.ScanTimer = KTIMER()
        self.ScanActive = v_uint8()
        self.OtherWork = v_uint8()
        self.PendingTeardownScan = v_uint8()
        self.PendingPeriodicScan = v_uint8()
        self.PendingLowMemoryScan = v_uint8()
        self.PendingPowerScan = v_uint8()
        self.PendingCoalescingFlushScan = v_uint8()
        self._pad0088 = v_bytes(size=1)


class KALPC_SECURITY_DATA(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.HandleTable = v_ptr64()
        self.ContextHandle = v_ptr64()
        self.OwningProcess = v_ptr64()
        self.OwnerPort = v_ptr64()
        self.DynamicSecurity = SECURITY_CLIENT_CONTEXT()
        self.u1 = _unnamed_31503()
        self._pad0070 = v_bytes(size=4)


class _unnamed_31340(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Initialized = v_uint32()


class DBGKD_SET_INTERNAL_BREAKPOINT32(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.BreakpointAddress = v_uint32()
        self.Flags = v_uint32()


class THERMAL_INFORMATION_EX(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.ThermalStamp = v_uint32()
        self.ThermalConstant1 = v_uint32()
        self.ThermalConstant2 = v_uint32()
        self.SamplingPeriod = v_uint32()
        self.CurrentTemperature = v_uint32()
        self.PassiveTripPoint = v_uint32()
        self.CriticalTripPoint = v_uint32()
        self.ActiveTripPointCount = v_uint8()
        self._pad0020 = v_bytes(size=3)
        self.ActiveTripPoint = vstruct.VArray([ v_uint32() for i in xrange(10) ])
        self.S4TransitionTripPoint = v_uint32()
        self.MinimumThrottle = v_uint32()


class POP_THERMAL_ZONE(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.PolicyDevice = POP_POLICY_DEVICE()
        self.State = v_uint8()
        self.Flags = v_uint8()
        self.Removing = v_uint8()
        self.Mode = v_uint8()
        self.PendingMode = v_uint8()
        self.ActivePoint = v_uint8()
        self.PendingActivePoint = v_uint8()
        self.Critical = v_uint8()
        self.HighPrecisionThrottle = v_uint32()
        self.Throttle = v_uint32()
        self.PendingThrottle = v_uint32()
        self.ThrottleReasons = v_uint32()
        self.LastTime = v_uint64()
        self.SampleRate = v_uint32()
        self.LastTemp = v_uint32()
        self.PassiveTimer = KTIMER()
        self.PassiveDpc = KDPC()
        self.Info = THERMAL_INFORMATION_EX()
        self.InfoLastUpdateTime = LARGE_INTEGER()
        self.Policy = THERMAL_POLICY()
        self.PolicyDriver = v_uint8()
        self._pad0158 = v_bytes(size=3)
        self.Metrics = POP_THERMAL_ZONE_METRICS()
        self.WorkItem = WORK_QUEUE_ITEM()
        self.Lock = POP_RW_LOCK()
        self.ZoneStopped = KEVENT()
        self.TemperatureUpdated = KEVENT()
        self.InstanceId = v_uint32()
        self._pad01f0 = v_bytes(size=4)


class KSTACK_CONTROL(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.StackBase = v_uint64()
        self.ActualLimit = v_uint64()
        self.Previous = KERNEL_STACK_SEGMENT()


class POOL_HACKER(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Header = POOL_HEADER()
        self.Contents = vstruct.VArray([ v_uint32() for i in xrange(8) ])


class IO_REMOVE_LOCK(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Common = IO_REMOVE_LOCK_COMMON_BLOCK()


class HANDLE_TABLE(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.NextHandleNeedingPool = v_uint32()
        self.ExtraInfoPages = v_uint32()
        self.TableCode = v_uint64()
        self.QuotaProcess = v_ptr64()
        self.HandleTableList = LIST_ENTRY()
        self.UniqueProcessId = v_uint32()
        self.Flags = v_uint32()
        self.HandleContentionEvent = EX_PUSH_LOCK()
        self.HandleTableLock = EX_PUSH_LOCK()
        self.FreeLists = vstruct.VArray([ HANDLE_TABLE_FREE_LIST() for i in xrange(1) ])


class PO_HIBER_PERF(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.HiberIoTicks = v_uint64()
        self.HiberIoCpuTicks = v_uint64()
        self.HiberInitTicks = v_uint64()
        self.HiberHiberFileTicks = v_uint64()
        self.HiberCompressTicks = v_uint64()
        self.HiberSharedBufferTicks = v_uint64()
        self.TotalHibernateTime = LARGE_INTEGER()
        self.POSTTime = v_uint32()
        self.ResumeBootMgrTime = v_uint32()
        self.BootmgrUserInputTime = v_uint32()
        self._pad0048 = v_bytes(size=4)
        self.ResumeAppTicks = v_uint64()
        self.ResumeAppStartTimestamp = v_uint64()
        self.ResumeLibraryInitTicks = v_uint64()
        self.ResumeInitTicks = v_uint64()
        self.ResumeRestoreImageStartTimestamp = v_uint64()
        self.ResumeHiberFileTicks = v_uint64()
        self.ResumeIoTicks = v_uint64()
        self.ResumeDecompressTicks = v_uint64()
        self.ResumeAllocateTicks = v_uint64()
        self.ResumeUserInOutTicks = v_uint64()
        self.ResumeMapTicks = v_uint64()
        self.ResumeUnmapTicks = v_uint64()
        self.ResumeKernelSwitchTimestamp = v_uint64()
        self.WriteLogDataTimestamp = v_uint64()
        self.KernelReturnFromHandler = v_uint64()
        self.TimeStampCounterAtSwitchTime = v_uint64()
        self.HalTscOffset = v_uint64()
        self.HvlTscOffset = v_uint64()
        self.SleeperThreadEnd = v_uint64()
        self.KernelReturnSystemPowerStateTimestamp = v_uint64()
        self.IoBoundedness = v_uint64()
        self.KernelDecompressTicks = v_uint64()
        self.KernelIoTicks = v_uint64()
        self.KernelCopyTicks = v_uint64()
        self.ReadCheckCount = v_uint64()
        self.KernelInitTicks = v_uint64()
        self.KernelResumeHiberFileTicks = v_uint64()
        self.KernelIoCpuTicks = v_uint64()
        self.KernelSharedBufferTicks = v_uint64()
        self.KernelAnimationTicks = v_uint64()
        self.AnimationStart = LARGE_INTEGER()
        self.AnimationStop = LARGE_INTEGER()
        self.DeviceResumeTime = v_uint32()
        self._pad0150 = v_bytes(size=4)
        self.BootPagesProcessed = v_uint64()
        self.KernelPagesProcessed = v_uint64()
        self.BootBytesWritten = v_uint64()
        self.KernelBytesWritten = v_uint64()
        self.BootPagesWritten = v_uint64()
        self.KernelPagesWritten = v_uint64()
        self.BytesWritten = v_uint64()
        self.PagesWritten = v_uint32()
        self.FileRuns = v_uint32()
        self.NoMultiStageResumeReason = v_uint32()
        self.MaxHuffRatio = v_uint32()
        self.AdjustedTotalResumeTime = v_uint64()
        self.ResumeCompleteTimestamp = v_uint64()


class DEFERRED_WRITE(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.NodeTypeCode = v_uint16()
        self.NodeByteSize = v_uint16()
        self._pad0008 = v_bytes(size=4)
        self.FileObject = v_ptr64()
        self.BytesToWrite = v_uint32()
        self._pad0018 = v_bytes(size=4)
        self.DeferredWriteLinks = LIST_ENTRY()
        self.Event = v_ptr64()
        self.PostRoutine = v_ptr64()
        self.Context1 = v_ptr64()
        self.Context2 = v_ptr64()


class HEAP_ENTRY(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.PreviousBlockPrivateData = v_ptr64()
        self.Size = v_uint16()
        self.Flags = v_uint8()
        self.SmallTagIndex = v_uint8()
        self.PreviousSize = v_uint16()
        self.SegmentOffset = v_uint8()
        self.UnusedBytes = v_uint8()


class ARBITER_INSTANCE(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Signature = v_uint32()
        self._pad0008 = v_bytes(size=4)
        self.MutexEvent = v_ptr64()
        self.Name = v_ptr64()
        self.OrderingName = v_ptr64()
        self.ResourceType = v_uint32()
        self._pad0028 = v_bytes(size=4)
        self.Allocation = v_ptr64()
        self.PossibleAllocation = v_ptr64()
        self.OrderingList = ARBITER_ORDERING_LIST()
        self.ReservedList = ARBITER_ORDERING_LIST()
        self.ReferenceCount = v_uint32()
        self._pad0060 = v_bytes(size=4)
        self.Interface = v_ptr64()
        self.AllocationStackMaxSize = v_uint32()
        self._pad0070 = v_bytes(size=4)
        self.AllocationStack = v_ptr64()
        self.UnpackRequirement = v_ptr64()
        self.PackResource = v_ptr64()
        self.UnpackResource = v_ptr64()
        self.ScoreRequirement = v_ptr64()
        self.TestAllocation = v_ptr64()
        self.RetestAllocation = v_ptr64()
        self.CommitAllocation = v_ptr64()
        self.RollbackAllocation = v_ptr64()
        self.BootAllocation = v_ptr64()
        self.QueryArbitrate = v_ptr64()
        self.QueryConflict = v_ptr64()
        self.AddReserved = v_ptr64()
        self.StartArbiter = v_ptr64()
        self.PreprocessEntry = v_ptr64()
        self.AllocateEntry = v_ptr64()
        self.GetNextAllocationRange = v_ptr64()
        self.FindSuitableRange = v_ptr64()
        self.AddAllocation = v_ptr64()
        self.BacktrackAllocation = v_ptr64()
        self.OverrideConflict = v_ptr64()
        self.InitializeRangeList = v_ptr64()
        self.TransactionInProgress = v_uint8()
        self._pad0128 = v_bytes(size=7)
        self.TransactionEvent = v_ptr64()
        self.Extension = v_ptr64()
        self.BusDeviceObject = v_ptr64()
        self.ConflictCallbackContext = v_ptr64()
        self.ConflictCallback = v_ptr64()


class MMPFNENTRY(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.PageLocation = v_uint8()
        self.Priority = v_uint8()


class _unnamed_35190(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.TestAllocation = ARBITER_TEST_ALLOCATION_PARAMETERS()
        self._pad0020 = v_bytes(size=8)


class HEAP_LOCK(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Lock = _unnamed_30967()


class EXCEPTION_REGISTRATION_RECORD(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Next = v_ptr64()
        self.Handler = v_ptr64()


class JOB_CPU_RATE_CONTROL(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)


class FILE_BASIC_INFORMATION(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.CreationTime = LARGE_INTEGER()
        self.LastAccessTime = LARGE_INTEGER()
        self.LastWriteTime = LARGE_INTEGER()
        self.ChangeTime = LARGE_INTEGER()
        self.FileAttributes = v_uint32()
        self._pad0028 = v_bytes(size=4)


class PLUGPLAY_EVENT_BLOCK(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.EventGuid = GUID()
        self.EventCategory = v_uint32()
        self._pad0018 = v_bytes(size=4)
        self.Result = v_ptr64()
        self.Flags = v_uint32()
        self.TotalSize = v_uint32()
        self.DeviceObject = v_ptr64()
        self.u = _unnamed_33369()


class MMVIEW(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.PteOffset = v_uint64()
        self.Entry = v_uint64()
        self.u1 = MMVIEW_CONTROL_AREA()
        self.ViewLinks = LIST_ENTRY()
        self.SessionViewVa = v_ptr64()
        self.SessionId = v_uint32()
        self.SessionIdForGlobalSubsections = v_uint32()


class LIST_ENTRY(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Flink = v_ptr64()
        self.Blink = v_ptr64()


class M128A(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Low = v_uint64()
        self.High = v_uint64()


class WHEA_NOTIFICATION_DESCRIPTOR(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Type = v_uint8()
        self.Length = v_uint8()
        self.Flags = WHEA_NOTIFICATION_FLAGS()
        self.u = _unnamed_34220()


class CM_KEY_SECURITY(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Signature = v_uint16()
        self.Reserved = v_uint16()
        self.Flink = v_uint32()
        self.Blink = v_uint32()
        self.ReferenceCount = v_uint32()
        self.DescriptorLength = v_uint32()
        self.Descriptor = SECURITY_DESCRIPTOR_RELATIVE()


class _unnamed_35210(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.s1 = _unnamed_37022()


class PNP_DEVICE_COMPLETION_QUEUE(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.DispatchedList = LIST_ENTRY()
        self.DispatchedCount = v_uint32()
        self._pad0018 = v_bytes(size=4)
        self.CompletedList = LIST_ENTRY()
        self.CompletedSemaphore = KSEMAPHORE()
        self.SpinLock = v_uint64()


class HMAP_ENTRY(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.BlockAddress = v_uint64()
        self.BinAddress = v_uint64()
        self.MemAlloc = v_uint32()
        self._pad0018 = v_bytes(size=4)


class HV_HYPERVISOR_INTERFACE_INFO(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Interface = v_uint32()
        self.ReservedEbx = v_uint32()
        self.ReservedEcx = v_uint32()
        self.ReservedEdx = v_uint32()


class ETW_REALTIME_CONSUMER(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Links = LIST_ENTRY()
        self.ProcessHandle = v_ptr64()
        self.ProcessObject = v_ptr64()
        self.NextNotDelivered = v_ptr64()
        self.RealtimeConnectContext = v_ptr64()
        self.DisconnectEvent = v_ptr64()
        self.DataAvailableEvent = v_ptr64()
        self.UserBufferCount = v_ptr64()
        self.UserBufferListHead = v_ptr64()
        self.BuffersLost = v_uint32()
        self.EmptyBuffersCount = v_uint32()
        self.LoggerId = v_uint16()
        self.Flags = v_uint8()
        self._pad0060 = v_bytes(size=5)
        self.ReservedBufferSpaceBitMap = RTL_BITMAP()
        self.ReservedBufferSpace = v_ptr64()
        self.ReservedBufferSpaceSize = v_uint32()
        self.UserPagesAllocated = v_uint32()
        self.UserPagesReused = v_uint32()
        self._pad0088 = v_bytes(size=4)
        self.EventsLostCount = v_ptr64()
        self.BuffersLostCount = v_ptr64()


class WHEA_ERROR_SOURCE_DESCRIPTOR(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Length = v_uint32()
        self.Version = v_uint32()
        self.Type = v_uint32()
        self.State = v_uint32()
        self.MaxRawDataLength = v_uint32()
        self.NumRecordsToPreallocate = v_uint32()
        self.MaxSectionsPerRecord = v_uint32()
        self.ErrorSourceId = v_uint32()
        self.PlatformErrorSourceId = v_uint32()
        self.Flags = v_uint32()
        self.Info = _unnamed_32335()


class WHEAP_ERROR_RECORD_WRAPPER(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.WorkEntry = LIST_ENTRY()
        self.Length = v_uint32()
        self.ProcessorNumber = v_uint32()
        self.Flags = WHEAP_ERROR_RECORD_WRAPPER_FLAGS()
        self.InUse = v_uint32()
        self.ErrorSource = v_ptr64()
        self.ErrorRecord = WHEA_ERROR_RECORD()


class MI_EXTRA_IMAGE_INFORMATION(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.SizeOfHeaders = v_uint32()
        self.SizeOfImage = v_uint32()


class DEVICE_MAP(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.DosDevicesDirectory = v_ptr64()
        self.GlobalDosDevicesDirectory = v_ptr64()
        self.DosDevicesDirectoryHandle = v_ptr64()
        self.ReferenceCount = v_uint32()
        self.DriveMap = v_uint32()
        self.DriveType = vstruct.VArray([ v_uint8() for i in xrange(32) ])


class IOP_IRP_STACK_PROFILER(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Profile = vstruct.VArray([ v_uint32() for i in xrange(20) ])
        self.TotalIrps = v_uint32()


class _unnamed_30808(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Reason = v_uint32()


class VI_TRACK_IRQL(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Thread = v_ptr64()
        self.OldIrql = v_uint8()
        self.NewIrql = v_uint8()
        self.Processor = v_uint16()
        self.TickCount = v_uint32()
        self.StackTrace = vstruct.VArray([ v_ptr64() for i in xrange(5) ])


class _unnamed_30806(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Event = v_ptr64()


class HEAP_UCR_DESCRIPTOR(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.ListEntry = LIST_ENTRY()
        self.SegmentEntry = LIST_ENTRY()
        self.Address = v_ptr64()
        self.Size = v_uint64()


class _unnamed_30802(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.FileObject = v_ptr64()


class _unnamed_34916(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Channel = v_uint32()
        self.Port = v_uint32()
        self.Reserved1 = v_uint32()


class POP_SYSTEM_IDLE(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.AverageIdleness = v_uint32()
        self.LowestIdleness = v_uint32()
        self.Time = v_uint32()
        self.Timeout = v_uint32()
        self.LastUserInput = v_uint32()
        self.Action = POWER_ACTION_POLICY()
        self.MinState = v_uint32()
        self.SystemRequired = v_uint32()
        self.IdleWorker = v_uint8()
        self.Sampling = v_uint8()
        self._pad0030 = v_bytes(size=6)
        self.LastTick = v_uint64()
        self.LastSystemRequiredTime = v_uint32()
        self._pad0040 = v_bytes(size=4)


class _unnamed_34913(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Raw = _unnamed_34908()


class KAPC_STATE(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.ApcListHead = vstruct.VArray([ LIST_ENTRY() for i in xrange(2) ])
        self.Process = v_ptr64()
        self.InProgressFlags = v_uint8()
        self.KernelApcPending = v_uint8()
        self.UserApcPending = v_uint8()
        self._pad0030 = v_bytes(size=5)


class SLIST_ENTRY(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Next = v_ptr64()
        self._pad0010 = v_bytes(size=8)


class COUNTER_READING(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Type = v_uint32()
        self.Index = v_uint32()
        self.Start = v_uint64()
        self.Total = v_uint64()


class MMVAD_SHORT(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.VadNode = RTL_BALANCED_NODE()
        self.StartingVpn = v_uint32()
        self.EndingVpn = v_uint32()
        self.StartingVpnHigh = v_uint8()
        self.EndingVpnHigh = v_uint8()
        self.CommitChargeHigh = v_uint8()
        self.LargeImageBias = v_uint8()
        self.ReferenceCount = v_uint32()
        self.PushLock = EX_PUSH_LOCK()
        self.u = _unnamed_35304()
        self.u1 = _unnamed_35305()
        self.EventList = v_ptr64()


class DBGKD_GET_VERSION32(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.MajorVersion = v_uint16()
        self.MinorVersion = v_uint16()
        self.ProtocolVersion = v_uint16()
        self.Flags = v_uint16()
        self.KernBase = v_uint32()
        self.PsLoadedModuleList = v_uint32()
        self.MachineType = v_uint16()
        self.ThCallbackStack = v_uint16()
        self.NextCallback = v_uint16()
        self.FramePointer = v_uint16()
        self.KiCallUserMode = v_uint32()
        self.KeUserCallbackDispatcher = v_uint32()
        self.BreakpointWithStatus = v_uint32()
        self.DebuggerDataList = v_uint32()


class MI_PHYSMEM_BLOCK(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.IoTracker = v_ptr64()


class RTL_AVL_TREE(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Root = v_ptr64()


class CM_CELL_REMAP_BLOCK(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.OldCell = v_uint32()
        self.NewCell = v_uint32()


class PEBS_DS_SAVE_AREA(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.BtsBufferBase = v_uint64()
        self.BtsIndex = v_uint64()
        self.BtsAbsoluteMaximum = v_uint64()
        self.BtsInterruptThreshold = v_uint64()
        self.PebsBufferBase = v_uint64()
        self.PebsIndex = v_uint64()
        self.PebsAbsoluteMaximum = v_uint64()
        self.PebsInterruptThreshold = v_uint64()
        self.PebsCounterReset0 = v_uint64()
        self.PebsCounterReset1 = v_uint64()
        self.PebsCounterReset2 = v_uint64()
        self.PebsCounterReset3 = v_uint64()


class KDPC_DATA(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.DpcList = KDPC_LIST()
        self.DpcLock = v_uint64()
        self.DpcQueueDepth = v_uint32()
        self.DpcCount = v_uint32()
        self.ActiveDpc = v_ptr64()


class _unnamed_28333(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.PowerSequence = v_ptr64()


class XSAVE_AREA(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.LegacyState = XSAVE_FORMAT()
        self.Header = XSAVE_AREA_HEADER()


class EVENT_PAYLOAD_PREDICATE(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.FieldIndex = v_uint16()
        self.CompareOp = v_uint16()
        self._pad0008 = v_bytes(size=4)
        self.Value = vstruct.VArray([ v_uint64() for i in xrange(2) ])


class MMINPAGE_SUPPORT(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.ListEntry = LIST_ENTRY()
        self.ListHead = LIST_ENTRY()
        self.Event = KEVENT()
        self.CollidedEvent = KEVENT()
        self.IoStatus = IO_STATUS_BLOCK()
        self.ReadOffset = LARGE_INTEGER()
        self.PteContents = MMPTE()
        self.Thread = v_ptr64()
        self.LockedProtoPfn = v_ptr64()
        self.WaitCount = v_uint32()
        self.ByteCount = v_uint32()
        self.u3 = _unnamed_37448()
        self.u1 = _unnamed_37449()
        self.FilePointer = v_ptr64()
        self.ControlArea = v_ptr64()
        self.Autoboost = v_ptr64()
        self.FaultingAddress = v_ptr64()
        self.PointerPte = v_ptr64()
        self.BasePte = v_ptr64()
        self.Pfn = v_ptr64()
        self.PrefetchMdl = v_ptr64()
        self.Mdl = MDL()
        self.Page = vstruct.VArray([ v_uint64() for i in xrange(16) ])


class SYSTEM_POWER_POLICY(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Revision = v_uint32()
        self.PowerButton = POWER_ACTION_POLICY()
        self.SleepButton = POWER_ACTION_POLICY()
        self.LidClose = POWER_ACTION_POLICY()
        self.LidOpenWake = v_uint32()
        self.Reserved = v_uint32()
        self.Idle = POWER_ACTION_POLICY()
        self.IdleTimeout = v_uint32()
        self.IdleSensitivity = v_uint8()
        self.DynamicThrottle = v_uint8()
        self.Spare2 = vstruct.VArray([ v_uint8() for i in xrange(2) ])
        self.MinSleep = v_uint32()
        self.MaxSleep = v_uint32()
        self.ReducedLatencySleep = v_uint32()
        self.WinLogonFlags = v_uint32()
        self.Spare3 = v_uint32()
        self.DozeS4Timeout = v_uint32()
        self.BroadcastCapacityResolution = v_uint32()
        self.DischargePolicy = vstruct.VArray([ SYSTEM_POWER_LEVEL() for i in xrange(4) ])
        self.VideoTimeout = v_uint32()
        self.VideoDimDisplay = v_uint8()
        self._pad00c8 = v_bytes(size=3)
        self.VideoReserved = vstruct.VArray([ v_uint32() for i in xrange(3) ])
        self.SpindownTimeout = v_uint32()
        self.OptimizeForPower = v_uint8()
        self.FanThrottleTolerance = v_uint8()
        self.ForcedThrottle = v_uint8()
        self.MinThrottle = v_uint8()
        self.OverThrottled = POWER_ACTION_POLICY()


class KRESOURCEMANAGER_COMPLETION_BINDING(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.NotificationListHead = LIST_ENTRY()
        self.Port = v_ptr64()
        self.Key = v_uint64()
        self.BindingProcess = v_ptr64()


class DBGKD_READ_WRITE_IO_EXTENDED64(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.DataSize = v_uint32()
        self.InterfaceType = v_uint32()
        self.BusNumber = v_uint32()
        self.AddressSpace = v_uint32()
        self.IoAddress = v_uint64()
        self.DataValue = v_uint32()
        self._pad0020 = v_bytes(size=4)


class _unnamed_36853(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.NodeSize = v_uint32()


class KTHREAD_COUNTERS(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.WaitReasonBitMap = v_uint64()
        self.UserData = v_ptr64()
        self.Flags = v_uint32()
        self.ContextSwitches = v_uint32()
        self.CycleTimeBias = v_uint64()
        self.HardwareCounters = v_uint64()
        self.HwCounter = vstruct.VArray([ COUNTER_READING() for i in xrange(16) ])


class MMADDRESS_LIST(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.u1 = _unnamed_37423()
        self.EndVa = v_ptr64()


class OBJECT_REF_TRACE(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.StackTrace = vstruct.VArray([ v_ptr64() for i in xrange(16) ])


class KALPC_RESERVE(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.OwnerPort = v_ptr64()
        self.HandleTable = v_ptr64()
        self.Handle = v_ptr64()
        self.Message = v_ptr64()
        self.Active = v_uint32()
        self._pad0028 = v_bytes(size=4)


class POWER_ACTION_POLICY(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Action = v_uint32()
        self.Flags = v_uint32()
        self.EventCode = v_uint32()


class LDRP_CSLIST(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Tail = v_ptr64()


class SECURITY_DESCRIPTOR_RELATIVE(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Revision = v_uint8()
        self.Sbz1 = v_uint8()
        self.Control = v_uint16()
        self.Owner = v_uint32()
        self.Group = v_uint32()
        self.Sacl = v_uint32()
        self.Dacl = v_uint32()


class DUMP_INITIALIZATION_CONTEXT(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Length = v_uint32()
        self.Reserved = v_uint32()
        self.MemoryBlock = v_ptr64()
        self.CommonBuffer = vstruct.VArray([ v_ptr64() for i in xrange(2) ])
        self.PhysicalAddress = vstruct.VArray([ LARGE_INTEGER() for i in xrange(2) ])
        self.StallRoutine = v_ptr64()
        self.OpenRoutine = v_ptr64()
        self.WriteRoutine = v_ptr64()
        self.FinishRoutine = v_ptr64()
        self.AdapterObject = v_ptr64()
        self.MappedRegisterBase = v_ptr64()
        self.PortConfiguration = v_ptr64()
        self.CrashDump = v_uint8()
        self.MarkMemoryOnly = v_uint8()
        self.HiberResume = v_uint8()
        self.Reserved1 = v_uint8()
        self.MaximumTransferSize = v_uint32()
        self.CommonBufferSize = v_uint32()
        self._pad0078 = v_bytes(size=4)
        self.TargetAddress = v_ptr64()
        self.WritePendingRoutine = v_ptr64()
        self.PartitionStyle = v_uint32()
        self.DiskInfo = _unnamed_37412()
        self._pad00a0 = v_bytes(size=4)
        self.ReadRoutine = v_ptr64()
        self.GetDriveTelemetryRoutine = v_ptr64()
        self.LogSectionTruncateSize = v_uint32()
        self.Parameters = vstruct.VArray([ v_uint32() for i in xrange(16) ])
        self._pad00f8 = v_bytes(size=4)
        self.GetTransferSizesRoutine = v_ptr64()
        self.DumpNotifyRoutine = v_ptr64()


class _unnamed_32453(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.FilePointerIndex = v_uint32()


class AER_ENDPOINT_DESCRIPTOR_FLAGS(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.UncorrectableErrorMaskRW = v_uint16()


class VERIFIER_SHARED_EXPORT_THUNK(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)


class FILE_GET_QUOTA_INFORMATION(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.NextEntryOffset = v_uint32()
        self.SidLength = v_uint32()
        self.Sid = SID()


class _unnamed_31084(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.DataLength = v_uint16()
        self.TotalLength = v_uint16()


class MI_REVERSE_VIEW_MAP(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.ViewLinks = LIST_ENTRY()
        self.SystemCacheVa = v_ptr64()
        self.Subsection = v_ptr64()
        self.SectionOffset = v_uint64()


class PORT_MESSAGE32(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.u1 = _unnamed_31082()
        self.u2 = _unnamed_31083()
        self.ClientId = CLIENT_ID32()
        self.MessageId = v_uint32()
        self.ClientViewSize = v_uint32()


class _unnamed_31083(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.s2 = _unnamed_31089()


class VF_KE_CRITICAL_REGION_TRACE(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Thread = v_ptr64()
        self.StackTrace = vstruct.VArray([ v_ptr64() for i in xrange(7) ])


class KGATE(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Header = DISPATCHER_HEADER()


class IO_COMPLETION_CONTEXT(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Port = v_ptr64()
        self.Key = v_ptr64()


class DRIVER_EXTENSION(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.DriverObject = v_ptr64()
        self.AddDevice = v_ptr64()
        self.Count = v_uint32()
        self._pad0018 = v_bytes(size=4)
        self.ServiceKeyName = UNICODE_STRING()
        self.ClientDriverExtension = v_ptr64()
        self.FsFilterCallbacks = v_ptr64()
        self.KseCallbacks = v_ptr64()
        self.DvCallbacks = v_ptr64()
        self.VerifierContext = v_ptr64()


class TOKEN_SOURCE(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.SourceName = vstruct.VArray([ v_uint8() for i in xrange(8) ])
        self.SourceIdentifier = LUID()


class PCW_REGISTRATION(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)


class REQUEST_MAILBOX(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Next = v_ptr64()
        self.RequestSummary = v_uint64()
        self.RequestPacket = KREQUEST_PACKET()
        self.NodeTargetCountAddr = v_ptr64()
        self.NodeTargetCount = v_uint32()
        self._pad0040 = v_bytes(size=4)


class _unnamed_31248(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.s1 = _unnamed_31249()


class PO_IRP_QUEUE(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.CurrentIrp = v_ptr64()
        self.PendingIrpList = v_ptr64()


class flags(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Removable = v_uint8()


class DBGKD_SEARCH_MEMORY(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.SearchAddress = v_uint64()
        self.SearchLength = v_uint64()
        self.PatternLength = v_uint32()
        self._pad0018 = v_bytes(size=4)


class _unnamed_37618(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.bits = _unnamed_37682()


class MI_CACHED_PTE(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.GlobalTimeStamp = v_uint32()
        self.PteIndex = v_uint32()


class POP_FX_IDLE_STATE(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.TransitionLatency = v_uint64()
        self.ResidencyRequirement = v_uint64()
        self.NominalPower = v_uint32()
        self._pad0018 = v_bytes(size=4)


class ALPC_HANDLE_TABLE(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Handles = v_ptr64()
        self.TotalHandles = v_uint32()
        self.Flags = v_uint32()
        self.Lock = EX_PUSH_LOCK()


class WHEA_PERSISTENCE_INFO(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Signature = v_uint64()


class ETW_LAST_ENABLE_INFO(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.EnableFlags = LARGE_INTEGER()
        self.LoggerId = v_uint16()
        self.Level = v_uint8()
        self.Enabled = v_uint8()
        self._pad0010 = v_bytes(size=4)


class HEAP_VIRTUAL_ALLOC_ENTRY(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Entry = LIST_ENTRY()
        self.ExtraStuff = HEAP_ENTRY_EXTRA()
        self.CommitSize = v_uint64()
        self.ReserveSize = v_uint64()
        self.BusyBlock = HEAP_ENTRY()


class VI_DEADLOCK_THREAD(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Thread = v_ptr64()
        self.CurrentSpinNode = v_ptr64()
        self.CurrentOtherNode = v_ptr64()
        self.ListEntry = LIST_ENTRY()
        self.NodeCount = v_uint32()
        self.PagingCount = v_uint32()
        self.ThreadUsesEresources = v_uint8()
        self._pad0038 = v_bytes(size=7)


class WHEAP_WORK_QUEUE(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.ListHead = LIST_ENTRY()
        self.ListLock = v_uint64()
        self.ItemCount = v_uint32()
        self._pad0020 = v_bytes(size=4)
        self.Dpc = KDPC()
        self.WorkItem = WORK_QUEUE_ITEM()
        self.WorkRoutine = v_ptr64()


class VF_SUSPECT_DRIVER_ENTRY(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Links = LIST_ENTRY()
        self.Loads = v_uint32()
        self.Unloads = v_uint32()
        self.BaseName = UNICODE_STRING()


class _unnamed_37617(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.bits = _unnamed_37670()


class INTERRUPT_HT_INTR_INFO(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.LowPart = _unnamed_37617()
        self.HighPart = _unnamed_37618()


class _unnamed_29902(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.DockStatus = v_uint32()
        self._pad0008 = v_bytes(size=4)
        self.ListEntry = LIST_ENTRY()
        self.SerialNumber = v_ptr64()


class GDI_TEB_BATCH32(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Offset = v_uint32()
        self.HDC = v_uint32()
        self.Buffer = vstruct.VArray([ v_uint32() for i in xrange(310) ])


class _unnamed_29900(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.LegacyDeviceNode = v_ptr64()


class _unnamed_29901(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.NextResourceDeviceNode = v_ptr64()


class ARBITER_PARAMETERS(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Parameters = _unnamed_35190()


class EXCEPTION_RECORD(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.ExceptionCode = v_uint32()
        self.ExceptionFlags = v_uint32()
        self.ExceptionRecord = v_ptr64()
        self.ExceptionAddress = v_ptr64()
        self.NumberParameters = v_uint32()
        self._pad0020 = v_bytes(size=4)
        self.ExceptionInformation = vstruct.VArray([ v_uint64() for i in xrange(15) ])


class X86_DBGKD_CONTROL_SET(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.TraceFlag = v_uint32()
        self.Dr7 = v_uint32()
        self.CurrentSymbolStart = v_uint32()
        self.CurrentSymbolEnd = v_uint32()


class MMPTE(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.u = _unnamed_28822()


class VI_DEADLOCK_NODE(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Parent = v_ptr64()
        self.ChildrenList = LIST_ENTRY()
        self.SiblingsList = LIST_ENTRY()
        self.ResourceList = LIST_ENTRY()
        self.Root = v_ptr64()
        self.ThreadEntry = v_ptr64()
        self.u1 = _unnamed_36782()
        self.ChildrenCount = v_uint32()
        self.StackTrace = vstruct.VArray([ v_ptr64() for i in xrange(8) ])
        self.ParentStackTrace = vstruct.VArray([ v_ptr64() for i in xrange(8) ])


class PROC_IDLE_STATE_BUCKET(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.TotalTime = v_uint64()
        self.MinTime = v_uint64()
        self.MaxTime = v_uint64()
        self.Count = v_uint32()
        self._pad0020 = v_bytes(size=4)


class tagSWITCH_CONTEXT(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Attribute = tagSWITCH_CONTEXT_ATTRIBUTE()
        self.Data = tagSWITCH_CONTEXT_DATA()


class VACB_ARRAY_HEADER(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.VacbArrayIndex = v_uint32()
        self.MappingCount = v_uint32()
        self.HighestMappedIndex = v_uint32()
        self.Reserved = v_uint32()


class HEAP_STOP_ON_TAG(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.HeapAndTagIndex = v_uint32()


class KPCR(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.NtTib = NT_TIB()
        self.IdtBase = v_ptr64()
        self.Unused = vstruct.VArray([ v_uint64() for i in xrange(2) ])
        self.Irql = v_uint8()
        self.SecondLevelCacheAssociativity = v_uint8()
        self.ObsoleteNumber = v_uint8()
        self.Fill0 = v_uint8()
        self.Unused0 = vstruct.VArray([ v_uint32() for i in xrange(3) ])
        self.MajorVersion = v_uint16()
        self.MinorVersion = v_uint16()
        self.StallScaleFactor = v_uint32()
        self.Unused1 = vstruct.VArray([ v_ptr64() for i in xrange(3) ])
        self.KernelReserved = vstruct.VArray([ v_uint32() for i in xrange(15) ])
        self.SecondLevelCacheSize = v_uint32()
        self.HalReserved = vstruct.VArray([ v_uint32() for i in xrange(16) ])
        self.Unused2 = v_uint32()
        self._pad0108 = v_bytes(size=4)
        self.KdVersionBlock = v_ptr64()
        self.Unused3 = v_ptr64()
        self.PcrAlign1 = vstruct.VArray([ v_uint32() for i in xrange(24) ])
        self._pad0180 = v_bytes(size=8)
        self.Prcb = KPRCB()


class RTL_RB_TREE(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Root = v_ptr64()
        self.Min = v_ptr64()


class ARBITER_ORDERING(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Start = v_uint64()
        self.End = v_uint64()


class IMAGE_FILE_HEADER(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Machine = v_uint16()
        self.NumberOfSections = v_uint16()
        self.TimeDateStamp = v_uint32()
        self.PointerToSymbolTable = v_uint32()
        self.NumberOfSymbols = v_uint32()
        self.SizeOfOptionalHeader = v_uint16()
        self.Characteristics = v_uint16()


class CM_KEY_INDEX(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Signature = v_uint16()
        self.Count = v_uint16()
        self.List = vstruct.VArray([ v_uint32() for i in xrange(1) ])


class _unnamed_34178(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Generic = _unnamed_34900()
        self._pad0010 = v_bytes(size=4)


class RELATION_LIST(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Count = v_uint32()
        self.TagCount = v_uint32()
        self.FirstLevel = v_uint32()
        self.MaxLevel = v_uint32()
        self.Entries = vstruct.VArray([ v_ptr64() for i in xrange(1) ])


class ETWP_NOTIFICATION_HEADER(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.NotificationType = v_uint32()
        self.NotificationSize = v_uint32()
        self.RefCount = v_uint32()
        self.ReplyRequested = v_uint8()
        self._pad0010 = v_bytes(size=3)
        self.ReplyIndex = v_uint32()
        self.ReplyCount = v_uint32()
        self.ReplyHandle = v_uint64()
        self.TargetPID = v_uint32()
        self.SourcePID = v_uint32()
        self.DestinationGuid = GUID()
        self.SourceGuid = GUID()


class PI_RESOURCE_ARBITER_ENTRY(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.DeviceArbiterList = LIST_ENTRY()
        self.ResourceType = v_uint8()
        self._pad0018 = v_bytes(size=7)
        self.ArbiterInterface = v_ptr64()
        self.DeviceNode = v_ptr64()
        self.ResourceList = LIST_ENTRY()
        self.BestResourceList = LIST_ENTRY()
        self.BestConfig = LIST_ENTRY()
        self.ActiveArbiterList = LIST_ENTRY()
        self.State = v_uint8()
        self.ResourcesChanged = v_uint8()
        self._pad0070 = v_bytes(size=6)


class MI_SECTION_IMAGE_INFORMATION(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.ExportedImageInformation = SECTION_IMAGE_INFORMATION()
        self.InternalImageInformation = MI_EXTRA_IMAGE_INFORMATION()


class _unnamed_34173(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Port = _unnamed_34270()


class SYSPTES_HEADER(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.ListHead = LIST_ENTRY()
        self.Count = v_uint64()
        self.NumberOfEntries = v_uint64()
        self.NumberOfEntriesPeak = v_uint64()


class _unnamed_34494(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.SnapSharedExportsFailed = v_uint32()


class DBGKD_READ_WRITE_IO_EXTENDED32(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.DataSize = v_uint32()
        self.InterfaceType = v_uint32()
        self.BusNumber = v_uint32()
        self.AddressSpace = v_uint32()
        self.IoAddress = v_uint32()
        self.DataValue = v_uint32()


class PEB_LDR_DATA(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Length = v_uint32()
        self.Initialized = v_uint8()
        self._pad0008 = v_bytes(size=3)
        self.SsHandle = v_ptr64()
        self.InLoadOrderModuleList = LIST_ENTRY()
        self.InMemoryOrderModuleList = LIST_ENTRY()
        self.InInitializationOrderModuleList = LIST_ENTRY()
        self.EntryInProgress = v_ptr64()
        self.ShutdownInProgress = v_uint8()
        self._pad0050 = v_bytes(size=7)
        self.ShutdownThreadId = v_ptr64()


class DBGKD_WRITE_BREAKPOINT64(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.BreakPointAddress = v_uint64()
        self.BreakPointHandle = v_uint32()
        self._pad0010 = v_bytes(size=4)


class FSRTL_ADVANCED_FCB_HEADER(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.NodeTypeCode = v_uint16()
        self.NodeByteSize = v_uint16()
        self.Flags = v_uint8()
        self.IsFastIoPossible = v_uint8()
        self.Flags2 = v_uint8()
        self.Reserved = v_uint8()
        self.Resource = v_ptr64()
        self.PagingIoResource = v_ptr64()
        self.AllocationSize = LARGE_INTEGER()
        self.FileSize = LARGE_INTEGER()
        self.ValidDataLength = LARGE_INTEGER()
        self.FastMutex = v_ptr64()
        self.FilterContexts = LIST_ENTRY()
        self.PushLock = EX_PUSH_LOCK()
        self.FileContextSupportPointer = v_ptr64()
        self.Oplock = v_ptr64()
        self.ReservedContext = v_ptr64()


class CLIENT_ID32(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.UniqueProcess = v_uint32()
        self.UniqueThread = v_uint32()


class _unnamed_35228(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.bits = _unnamed_37228()


class DIAGNOSTIC_BUFFER(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Size = v_uint64()
        self.CallerType = v_uint32()
        self._pad0010 = v_bytes(size=4)
        self.ProcessImageNameOffset = v_uint64()
        self.ProcessId = v_uint32()
        self.ServiceTag = v_uint32()
        self.ReasonOffset = v_uint64()


class _unnamed_34311(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Length48 = v_uint32()
        self.Alignment48 = v_uint32()
        self.MinimumAddress = LARGE_INTEGER()
        self.MaximumAddress = LARGE_INTEGER()


class ARBITER_LIST_ENTRY(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.ListEntry = LIST_ENTRY()
        self.AlternativeCount = v_uint32()
        self._pad0018 = v_bytes(size=4)
        self.Alternatives = v_ptr64()
        self.PhysicalDeviceObject = v_ptr64()
        self.RequestSource = v_uint32()
        self.Flags = v_uint32()
        self.WorkSpace = v_uint64()
        self.InterfaceType = v_uint32()
        self.SlotNumber = v_uint32()
        self.BusNumber = v_uint32()
        self._pad0048 = v_bytes(size=4)
        self.Assignment = v_ptr64()
        self.SelectedAlternative = v_ptr64()
        self.Result = v_uint32()
        self._pad0060 = v_bytes(size=4)


class SEP_SID_VALUES_BLOCK(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.BlockLength = v_uint32()
        self._pad0008 = v_bytes(size=4)
        self.ReferenceCount = v_uint64()
        self.SidCount = v_uint32()
        self._pad0018 = v_bytes(size=4)
        self.SidValuesStart = v_uint64()


class MM_PAGE_ACCESS_INFO_FLAGS(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.File = _unnamed_32452()


class _unnamed_34316(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Length64 = v_uint32()
        self.Alignment64 = v_uint32()
        self.MinimumAddress = LARGE_INTEGER()
        self.MaximumAddress = LARGE_INTEGER()


class POP_IO_INFO(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.DumpMdl = v_ptr64()
        self.IoStatus = v_uint32()
        self._pad0010 = v_bytes(size=4)
        self.IoStartCount = v_uint64()
        self.IoBytesCompleted = v_uint64()
        self.IoBytesInProgress = v_uint64()
        self.RequestSize = v_uint64()
        self.IoLocation = LARGE_INTEGER()
        self.FileOffset = v_uint64()
        self.Buffer = v_ptr64()
        self.AsyncCapable = v_uint8()
        self._pad0050 = v_bytes(size=7)
        self.BytesToRead = v_uint64()
        self.Pages = v_uint32()
        self._pad0060 = v_bytes(size=4)


class HIVE_WAIT_PACKET(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.WakeEvent = KEVENT()
        self.Status = v_uint32()
        self._pad0020 = v_bytes(size=4)
        self.Next = v_ptr64()


class KALPC_REGION(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.RegionListEntry = LIST_ENTRY()
        self.Section = v_ptr64()
        self.Offset = v_uint64()
        self.Size = v_uint64()
        self.ViewSize = v_uint64()
        self.u1 = _unnamed_31230()
        self.NumberOfViews = v_uint32()
        self.ViewListHead = LIST_ENTRY()
        self.ReadOnlyView = v_ptr64()
        self.ReadWriteView = v_ptr64()


class _unnamed_28380(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Argument1 = v_ptr64()
        self.Argument2 = v_ptr64()
        self.Argument3 = v_ptr64()
        self.Argument4 = v_ptr64()


class XSAVE_AREA_HEADER(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Mask = v_uint64()
        self.Reserved = vstruct.VArray([ v_uint64() for i in xrange(7) ])


class ALPC_MESSAGE_ATTRIBUTES(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.AllocatedAttributes = v_uint32()
        self.ValidAttributes = v_uint32()


class POP_THERMAL_ZONE_METRICS(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.ActiveCount = v_uint32()
        self.PassiveCount = v_uint32()
        self.LastActiveStartTime = v_uint64()
        self.AverageActiveTime = v_uint64()
        self.LastPassiveStartTime = v_uint64()
        self.AveragePassiveTime = v_uint64()
        self.StartTickSinceLastReset = LARGE_INTEGER()


class PCW_DATA(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Data = v_ptr64()
        self.Size = v_uint32()
        self._pad0010 = v_bytes(size=4)


class _unnamed_34220(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Polled = _unnamed_37262()
        self._pad0018 = v_bytes(size=20)


class KTRANSACTION_HISTORY(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.RecordType = v_uint32()
        self.Payload = v_uint32()


class POOL_BLOCK_HEAD(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Header = POOL_HEADER()
        self.List = LIST_ENTRY()


class TRACE_ENABLE_INFO(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.IsEnabled = v_uint32()
        self.Level = v_uint8()
        self.Reserved1 = v_uint8()
        self.LoggerId = v_uint16()
        self.EnableProperty = v_uint32()
        self.Reserved2 = v_uint32()
        self.MatchAnyKeyword = v_uint64()
        self.MatchAllKeyword = v_uint64()


class _unnamed_27685(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.ListEntry = LIST_ENTRY()
        self._pad0048 = v_bytes(size=56)


class MMSUBSECTION_FLAGS(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.SubsectionAccessed = v_uint16()
        self.SubsectionStatic = v_uint16()


class INTERFACE(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Size = v_uint16()
        self.Version = v_uint16()
        self._pad0008 = v_bytes(size=4)
        self.Context = v_ptr64()
        self.InterfaceReference = v_ptr64()
        self.InterfaceDereference = v_ptr64()


class SYSTEM_POWER_LEVEL(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Enable = v_uint8()
        self.Spare = vstruct.VArray([ v_uint8() for i in xrange(3) ])
        self.BatteryLevel = v_uint32()
        self.PowerPolicy = POWER_ACTION_POLICY()
        self.MinSystemState = v_uint32()


class VI_DEADLOCK_GLOBALS(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.TimeAcquire = v_uint64()
        self.TimeRelease = v_uint64()
        self.ResourceDatabase = v_ptr64()
        self.ResourceDatabaseCount = v_uint64()
        self.ResourceAddressRange = vstruct.VArray([ VF_ADDRESS_RANGE() for i in xrange(1023) ])
        self.ThreadDatabase = v_ptr64()
        self.ThreadDatabaseCount = v_uint64()
        self.ThreadAddressRange = vstruct.VArray([ VF_ADDRESS_RANGE() for i in xrange(1023) ])
        self.AllocationFailures = v_uint32()
        self.NodesTrimmedBasedOnAge = v_uint32()
        self.NodesTrimmedBasedOnCount = v_uint32()
        self.NodesSearched = v_uint32()
        self.MaxNodesSearched = v_uint32()
        self.SequenceNumber = v_uint32()
        self.RecursionDepthLimit = v_uint32()
        self.SearchedNodesLimit = v_uint32()
        self.DepthLimitHits = v_uint32()
        self.SearchLimitHits = v_uint32()
        self.StackLimitHits = v_uint32()
        self.ABC_ACB_Skipped = v_uint32()
        self.OutOfOrderReleases = v_uint32()
        self.NodesReleasedOutOfOrder = v_uint32()
        self.TotalReleases = v_uint32()
        self.RootNodesDeleted = v_uint32()
        self.ForgetHistoryCounter = v_uint32()
        self._pad8058 = v_bytes(size=4)
        self.Instigator = v_ptr64()
        self.NumberOfParticipants = v_uint32()
        self._pad8068 = v_bytes(size=4)
        self.Participant = vstruct.VArray([ v_ptr64() for i in xrange(32) ])
        self.ChildrenCountWatermark = v_uint32()
        self.StackType = v_uint32()
        self.StackLowLimit = v_uint64()
        self.StackHighLimit = v_uint64()


class CM_PARTIAL_RESOURCE_DESCRIPTOR(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Type = v_uint8()
        self.ShareDisposition = v_uint8()
        self.Flags = v_uint16()
        self.u = _unnamed_34178()


class FILE_STANDARD_INFORMATION(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.AllocationSize = LARGE_INTEGER()
        self.EndOfFile = LARGE_INTEGER()
        self.NumberOfLinks = v_uint32()
        self.DeletePending = v_uint8()
        self.Directory = v_uint8()
        self._pad0018 = v_bytes(size=2)


class THREAD_PERFORMANCE_DATA(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Size = v_uint16()
        self.Version = v_uint16()
        self.ProcessorNumber = PROCESSOR_NUMBER()
        self.ContextSwitches = v_uint32()
        self.HwCountersCount = v_uint32()
        self.UpdateCount = v_uint64()
        self.WaitReasonBitMap = v_uint64()
        self.HardwareCounters = v_uint64()
        self.CycleTime = COUNTER_READING()
        self.HwCounters = vstruct.VArray([ COUNTER_READING() for i in xrange(16) ])


class IO_STACK_LOCATION(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.MajorFunction = v_uint8()
        self.MinorFunction = v_uint8()
        self.Flags = v_uint8()
        self.Control = v_uint8()
        self._pad0008 = v_bytes(size=4)
        self.Parameters = _unnamed_27952()
        self.DeviceObject = v_ptr64()
        self.FileObject = v_ptr64()
        self.CompletionRoutine = v_ptr64()
        self.Context = v_ptr64()


class SLIST_HEADER(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Alignment = v_uint64()
        self.Region = v_uint64()


class DBGKD_READ_WRITE_MSR(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Msr = v_uint32()
        self.DataValueLow = v_uint32()
        self.DataValueHigh = v_uint32()


class ARBITER_QUERY_CONFLICT_PARAMETERS(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.PhysicalDeviceObject = v_ptr64()
        self.ConflictingResource = v_ptr64()
        self.ConflictCount = v_ptr64()
        self.Conflicts = v_ptr64()


class IMAGE_DATA_DIRECTORY(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.VirtualAddress = v_uint32()
        self.Size = v_uint32()


class _unnamed_28049(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Length = v_uint32()
        self._pad0008 = v_bytes(size=4)
        self.Key = v_uint32()
        self._pad0010 = v_bytes(size=4)
        self.ByteOffset = LARGE_INTEGER()


class PPM_IDLE_STATES(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.InterfaceVersion = v_uint8()
        self.ForceIdle = v_uint8()
        self.EstimateIdleDuration = v_uint8()
        self.ExitLatencyTraceEnabled = v_uint8()
        self.NonInterruptibleTransition = v_uint8()
        self._pad0008 = v_bytes(size=3)
        self.ExitLatencyCountdown = v_uint32()
        self.TargetState = v_uint32()
        self.ActualState = v_uint32()
        self.OldState = v_uint32()
        self.OverrideIndex = v_uint32()
        self.ProcessorIdleCount = v_uint32()
        self.Type = v_uint32()
        self.ReasonFlags = v_uint16()
        self._pad0028 = v_bytes(size=2)
        self.InitiateWakeStamp = v_uint64()
        self.PreviousStatus = v_uint32()
        self.PreviousCancelReason = v_uint32()
        self.PrimaryProcessorMask = KAFFINITY_EX()
        self.SecondaryProcessorMask = KAFFINITY_EX()
        self.IdlePrepare = v_ptr64()
        self.IdleExecute = v_ptr64()
        self.IdlePreselect = v_ptr64()
        self.IdleTest = v_ptr64()
        self.IdleComplete = v_ptr64()
        self.IdleCancel = v_ptr64()
        self.IdleIsHalted = v_ptr64()
        self.IdleInitiateWake = v_ptr64()
        self.QueryPlatformStateResidency = v_ptr64()
        self.PrepareInfo = PROCESSOR_IDLE_PREPARE_INFO()
        self.Tracing = v_ptr64()
        self.State = vstruct.VArray([ PPM_IDLE_STATE() for i in xrange(1) ])


class _unnamed_37608(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.RemappedFormat = ULARGE_INTEGER()


class MMWSLE_HASH(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Index = v_uint64()


class ETW_FILTER_HEADER(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.FilterFlags = v_uint32()
        self._pad0008 = v_bytes(size=4)
        self.PidFilter = v_ptr64()
        self.ExeFilter = v_ptr64()
        self.PkgIdFilter = v_ptr64()
        self.PkgAppIdFilter = v_ptr64()
        self.StackWalkFilter = v_ptr64()
        self.EventIdFilter = v_ptr64()
        self.PayloadFilter = v_ptr64()
        self.ProviderSideFilter = v_ptr64()


class MM_PAGE_ACCESS_INFO(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Flags = MM_PAGE_ACCESS_INFO_FLAGS()
        self._pad0008 = v_bytes(size=4)


class IOV_IRP_TRACE(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Irp = v_ptr64()
        self.Thread = v_ptr64()
        self.KernelApcDisable = v_uint16()
        self.SpecialApcDisable = v_uint16()
        self.Irql = v_uint8()
        self._pad0018 = v_bytes(size=3)
        self.StackTrace = vstruct.VArray([ v_ptr64() for i in xrange(13) ])


class WHEA_NOTIFICATION_FLAGS(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.PollIntervalRW = v_uint16()


class IO_RESOURCE_REQUIREMENTS_LIST(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.ListSize = v_uint32()
        self.InterfaceType = v_uint32()
        self.BusNumber = v_uint32()
        self.SlotNumber = v_uint32()
        self.Reserved = vstruct.VArray([ v_uint32() for i in xrange(3) ])
        self.AlternativeLists = v_uint32()
        self.List = vstruct.VArray([ IO_RESOURCE_LIST() for i in xrange(1) ])


class LDR_SERVICE_TAG_RECORD(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Next = v_ptr64()
        self.ServiceTag = v_uint32()
        self._pad0010 = v_bytes(size=4)


class SECTION_IMAGE_INFORMATION(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.TransferAddress = v_ptr64()
        self.ZeroBits = v_uint32()
        self._pad0010 = v_bytes(size=4)
        self.MaximumStackSize = v_uint64()
        self.CommittedStackSize = v_uint64()
        self.SubSystemType = v_uint32()
        self.SubSystemMinorVersion = v_uint16()
        self.SubSystemMajorVersion = v_uint16()
        self.GpValue = v_uint32()
        self.ImageCharacteristics = v_uint16()
        self.DllCharacteristics = v_uint16()
        self.Machine = v_uint16()
        self.ImageContainsCode = v_uint8()
        self.ImageFlags = v_uint8()
        self.LoaderFlags = v_uint32()
        self.ImageFileSize = v_uint32()
        self.CheckSum = v_uint32()


class PCW_CALLBACK_INFORMATION(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.AddCounter = PCW_COUNTER_INFORMATION()
        self._pad0028 = v_bytes(size=24)


class KENLISTMENT(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.cookie = v_uint32()
        self._pad0008 = v_bytes(size=4)
        self.NamespaceLink = KTMOBJECT_NAMESPACE_LINK()
        self.EnlistmentId = GUID()
        self.Mutex = KMUTANT()
        self.NextSameTx = LIST_ENTRY()
        self.NextSameRm = LIST_ENTRY()
        self.ResourceManager = v_ptr64()
        self.Transaction = v_ptr64()
        self.State = v_uint32()
        self.Flags = v_uint32()
        self.NotificationMask = v_uint32()
        self._pad00b8 = v_bytes(size=4)
        self.Key = v_ptr64()
        self.KeyRefCount = v_uint32()
        self._pad00c8 = v_bytes(size=4)
        self.RecoveryInformation = v_ptr64()
        self.RecoveryInformationLength = v_uint32()
        self._pad00d8 = v_bytes(size=4)
        self.DynamicNameInformation = v_ptr64()
        self.DynamicNameInformationLength = v_uint32()
        self._pad00e8 = v_bytes(size=4)
        self.FinalNotification = v_ptr64()
        self.SupSubEnlistment = v_ptr64()
        self.SupSubEnlHandle = v_ptr64()
        self.SubordinateTxHandle = v_ptr64()
        self.CrmEnlistmentEnId = GUID()
        self.CrmEnlistmentTmId = GUID()
        self.CrmEnlistmentRmId = GUID()
        self.NextHistory = v_uint32()
        self.History = vstruct.VArray([ KENLISTMENT_HISTORY() for i in xrange(20) ])
        self._pad01e0 = v_bytes(size=4)


class ERESOURCE(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.SystemResourcesList = LIST_ENTRY()
        self.OwnerTable = v_ptr64()
        self.ActiveCount = v_uint16()
        self.Flag = v_uint16()
        self._pad0020 = v_bytes(size=4)
        self.SharedWaiters = v_ptr64()
        self.ExclusiveWaiters = v_ptr64()
        self.OwnerEntry = OWNER_ENTRY()
        self.ActiveEntries = v_uint32()
        self.ContentionCount = v_uint32()
        self.NumberOfSharedWaiters = v_uint32()
        self.NumberOfExclusiveWaiters = v_uint32()
        self.Reserved2 = v_ptr64()
        self.Address = v_ptr64()
        self.SpinLock = v_uint64()


class SUBSECTION(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.ControlArea = v_ptr64()
        self.SubsectionBase = v_ptr64()
        self.NextSubsection = v_ptr64()
        self.PtesInSubsection = v_uint32()
        self._pad0020 = v_bytes(size=4)
        self.UnusedPtes = v_uint32()
        self._pad0028 = v_bytes(size=4)
        self.u = _unnamed_33532()
        self.StartingSector = v_uint32()
        self.NumberOfFullSectors = v_uint32()
        self._pad0038 = v_bytes(size=4)


class CM_WORKITEM(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.ListEntry = LIST_ENTRY()
        self.Private = v_uint32()
        self._pad0018 = v_bytes(size=4)
        self.WorkerRoutine = v_ptr64()
        self.Parameter = v_ptr64()


class MBCB(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.NodeTypeCode = v_uint16()
        self.NodeIsInZone = v_uint16()
        self.PagesToWrite = v_uint32()
        self.DirtyPages = v_uint32()
        self.Reserved = v_uint32()
        self.BitmapRanges = LIST_ENTRY()
        self.ResumeWritePage = v_uint64()
        self.MostRecentlyDirtiedPage = v_uint64()
        self.BitmapRange1 = BITMAP_RANGE()
        self.BitmapRange2 = BITMAP_RANGE()
        self.BitmapRange3 = BITMAP_RANGE()


class SID_AND_ATTRIBUTES_HASH(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.SidCount = v_uint32()
        self._pad0008 = v_bytes(size=4)
        self.SidAttr = v_ptr64()
        self.Hash = vstruct.VArray([ v_uint64() for i in xrange(32) ])


class LPCP_MESSAGE(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Entry = LIST_ENTRY()
        self.SenderPort = v_ptr64()
        self.RepliedToThread = v_ptr64()
        self.PortContext = v_ptr64()
        self.Request = PORT_MESSAGE()


class RTL_ATOM_TABLE_ENTRY(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.HashLink = v_ptr64()
        self.HandleIndex = v_uint16()
        self.Atom = v_uint16()
        self._pad0010 = v_bytes(size=4)
        self.Reference = RTL_ATOM_TABLE_REFERENCE()
        self.NameLength = v_uint8()
        self._pad002a = v_bytes(size=1)
        self.Name = vstruct.VArray([ v_uint16() for i in xrange(1) ])
        self._pad0030 = v_bytes(size=4)


class TEB32(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.NtTib = NT_TIB32()
        self.EnvironmentPointer = v_uint32()
        self.ClientId = CLIENT_ID32()
        self.ActiveRpcHandle = v_uint32()
        self.ThreadLocalStoragePointer = v_uint32()
        self.ProcessEnvironmentBlock = v_uint32()
        self.LastErrorValue = v_uint32()
        self.CountOfOwnedCriticalSections = v_uint32()
        self.CsrClientThread = v_uint32()
        self.Win32ThreadInfo = v_uint32()
        self.User32Reserved = vstruct.VArray([ v_uint32() for i in xrange(26) ])
        self.UserReserved = vstruct.VArray([ v_uint32() for i in xrange(5) ])
        self.WOW32Reserved = v_uint32()
        self.CurrentLocale = v_uint32()
        self.FpSoftwareStatusRegister = v_uint32()
        self.SystemReserved1 = vstruct.VArray([ v_uint32() for i in xrange(54) ])
        self.ExceptionCode = v_uint32()
        self.ActivationContextStackPointer = v_uint32()
        self.SpareBytes = vstruct.VArray([ v_uint8() for i in xrange(36) ])
        self.TxFsContext = v_uint32()
        self.GdiTebBatch = GDI_TEB_BATCH32()
        self.RealClientId = CLIENT_ID32()
        self.GdiCachedProcessHandle = v_uint32()
        self.GdiClientPID = v_uint32()
        self.GdiClientTID = v_uint32()
        self.GdiThreadLocalInfo = v_uint32()
        self.Win32ClientInfo = vstruct.VArray([ v_uint32() for i in xrange(62) ])
        self.glDispatchTable = vstruct.VArray([ v_uint32() for i in xrange(233) ])
        self.glReserved1 = vstruct.VArray([ v_uint32() for i in xrange(29) ])
        self.glReserved2 = v_uint32()
        self.glSectionInfo = v_uint32()
        self.glSection = v_uint32()
        self.glTable = v_uint32()
        self.glCurrentRC = v_uint32()
        self.glContext = v_uint32()
        self.LastStatusValue = v_uint32()
        self.StaticUnicodeString = STRING32()
        self.StaticUnicodeBuffer = vstruct.VArray([ v_uint16() for i in xrange(261) ])
        self._pad0e0c = v_bytes(size=2)
        self.DeallocationStack = v_uint32()
        self.TlsSlots = vstruct.VArray([ v_uint32() for i in xrange(64) ])
        self.TlsLinks = LIST_ENTRY32()
        self.Vdm = v_uint32()
        self.ReservedForNtRpc = v_uint32()
        self.DbgSsReserved = vstruct.VArray([ v_uint32() for i in xrange(2) ])
        self.HardErrorMode = v_uint32()
        self.Instrumentation = vstruct.VArray([ v_uint32() for i in xrange(9) ])
        self.ActivityId = GUID()
        self.SubProcessTag = v_uint32()
        self.PerflibData = v_uint32()
        self.EtwTraceData = v_uint32()
        self.WinSockData = v_uint32()
        self.GdiBatchCount = v_uint32()
        self.CurrentIdealProcessor = PROCESSOR_NUMBER()
        self.GuaranteedStackBytes = v_uint32()
        self.ReservedForPerf = v_uint32()
        self.ReservedForOle = v_uint32()
        self.WaitingOnLoaderLock = v_uint32()
        self.SavedPriorityState = v_uint32()
        self.ReservedForCodeCoverage = v_uint32()
        self.ThreadPoolData = v_uint32()
        self.TlsExpansionSlots = v_uint32()
        self.MuiGeneration = v_uint32()
        self.IsImpersonating = v_uint32()
        self.NlsCache = v_uint32()
        self.pShimData = v_uint32()
        self.HeapVirtualAffinity = v_uint16()
        self.LowFragHeapDataSlot = v_uint16()
        self.CurrentTransactionHandle = v_uint32()
        self.ActiveFrame = v_uint32()
        self.FlsData = v_uint32()
        self.PreferredLanguages = v_uint32()
        self.UserPrefLanguages = v_uint32()
        self.MergedPrefLanguages = v_uint32()
        self.MuiImpersonation = v_uint32()
        self.CrossTebFlags = v_uint16()
        self.SameTebFlags = v_uint16()
        self.TxnScopeEnterCallback = v_uint32()
        self.TxnScopeExitCallback = v_uint32()
        self.TxnScopeContext = v_uint32()
        self.LockCount = v_uint32()
        self.SpareUlong0 = v_uint32()
        self.ResourceRetValue = v_uint32()
        self.ReservedForWdf = v_uint32()


class PROCESSOR_IDLE_DEPENDENCY(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.ProcessorIndex = v_uint32()
        self.ExpectedState = v_uint8()
        self.AllowDeeperStates = v_uint8()
        self.LooseDependency = v_uint8()
        self._pad0008 = v_bytes(size=1)


class _unnamed_28371(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.AllocatedResources = v_ptr64()
        self.AllocatedResourcesTranslated = v_ptr64()


class KLOCK_ENTRY(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.TreeNode = RTL_BALANCED_NODE()
        self.ThreadUnsafe = v_ptr64()
        self.LockState = KLOCK_ENTRY_LOCK_STATE()
        self.OwnerTree = RTL_RB_TREE()
        self.WaiterTree = RTL_RB_TREE()
        self.EntryLock = v_uint64()
        self.AllBoosts = v_uint16()
        self.IoNormalPriorityWaiterCount = v_uint16()
        self.IoPriorityBit = v_uint8()
        self.SparePad = vstruct.VArray([ v_uint8() for i in xrange(3) ])


class PEB(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.InheritedAddressSpace = v_uint8()
        self.ReadImageFileExecOptions = v_uint8()
        self.BeingDebugged = v_uint8()
        self.BitField = v_uint8()
        self.Padding0 = vstruct.VArray([ v_uint8() for i in xrange(4) ])
        self.Mutant = v_ptr64()
        self.ImageBaseAddress = v_ptr64()
        self.Ldr = v_ptr64()
        self.ProcessParameters = v_ptr64()
        self.SubSystemData = v_ptr64()
        self.ProcessHeap = v_ptr64()
        self.FastPebLock = v_ptr64()
        self.AtlThunkSListPtr = v_ptr64()
        self.IFEOKey = v_ptr64()
        self.CrossProcessFlags = v_uint32()
        self.Padding1 = vstruct.VArray([ v_uint8() for i in xrange(4) ])
        self.KernelCallbackTable = v_ptr64()
        self.SystemReserved = vstruct.VArray([ v_uint32() for i in xrange(1) ])
        self.AtlThunkSListPtr32 = v_uint32()
        self.ApiSetMap = v_ptr64()
        self.TlsExpansionCounter = v_uint32()
        self.Padding2 = vstruct.VArray([ v_uint8() for i in xrange(4) ])
        self.TlsBitmap = v_ptr64()
        self.TlsBitmapBits = vstruct.VArray([ v_uint32() for i in xrange(2) ])
        self.ReadOnlySharedMemoryBase = v_ptr64()
        self.SparePvoid0 = v_ptr64()
        self.ReadOnlyStaticServerData = v_ptr64()
        self.AnsiCodePageData = v_ptr64()
        self.OemCodePageData = v_ptr64()
        self.UnicodeCaseTableData = v_ptr64()
        self.NumberOfProcessors = v_uint32()
        self.NtGlobalFlag = v_uint32()
        self.CriticalSectionTimeout = LARGE_INTEGER()
        self.HeapSegmentReserve = v_uint64()
        self.HeapSegmentCommit = v_uint64()
        self.HeapDeCommitTotalFreeThreshold = v_uint64()
        self.HeapDeCommitFreeBlockThreshold = v_uint64()
        self.NumberOfHeaps = v_uint32()
        self.MaximumNumberOfHeaps = v_uint32()
        self.ProcessHeaps = v_ptr64()
        self.GdiSharedHandleTable = v_ptr64()
        self.ProcessStarterHelper = v_ptr64()
        self.GdiDCAttributeList = v_uint32()
        self.Padding3 = vstruct.VArray([ v_uint8() for i in xrange(4) ])
        self.LoaderLock = v_ptr64()
        self.OSMajorVersion = v_uint32()
        self.OSMinorVersion = v_uint32()
        self.OSBuildNumber = v_uint16()
        self.OSCSDVersion = v_uint16()
        self.OSPlatformId = v_uint32()
        self.ImageSubsystem = v_uint32()
        self.ImageSubsystemMajorVersion = v_uint32()
        self.ImageSubsystemMinorVersion = v_uint32()
        self.Padding4 = vstruct.VArray([ v_uint8() for i in xrange(4) ])
        self.ActiveProcessAffinityMask = v_uint64()
        self.GdiHandleBuffer = vstruct.VArray([ v_uint32() for i in xrange(60) ])
        self.PostProcessInitRoutine = v_ptr64()
        self.TlsExpansionBitmap = v_ptr64()
        self.TlsExpansionBitmapBits = vstruct.VArray([ v_uint32() for i in xrange(32) ])
        self.SessionId = v_uint32()
        self.Padding5 = vstruct.VArray([ v_uint8() for i in xrange(4) ])
        self.AppCompatFlags = ULARGE_INTEGER()
        self.AppCompatFlagsUser = ULARGE_INTEGER()
        self.pShimData = v_ptr64()
        self.AppCompatInfo = v_ptr64()
        self.CSDVersion = UNICODE_STRING()
        self.ActivationContextData = v_ptr64()
        self.ProcessAssemblyStorageMap = v_ptr64()
        self.SystemDefaultActivationContextData = v_ptr64()
        self.SystemAssemblyStorageMap = v_ptr64()
        self.MinimumStackCommit = v_uint64()
        self.FlsCallback = v_ptr64()
        self.FlsListHead = LIST_ENTRY()
        self.FlsBitmap = v_ptr64()
        self.FlsBitmapBits = vstruct.VArray([ v_uint32() for i in xrange(4) ])
        self.FlsHighIndex = v_uint32()
        self._pad0358 = v_bytes(size=4)
        self.WerRegistrationData = v_ptr64()
        self.WerShipAssertPtr = v_ptr64()
        self.pUnused = v_ptr64()
        self.pImageHeaderHash = v_ptr64()
        self.TracingFlags = v_uint32()
        self.Padding6 = vstruct.VArray([ v_uint8() for i in xrange(4) ])
        self.CsrServerReadOnlySharedMemoryBase = v_uint64()


class _unnamed_28375(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.ProviderId = v_uint64()
        self.DataPath = v_ptr64()
        self.BufferSize = v_uint32()
        self._pad0018 = v_bytes(size=4)
        self.Buffer = v_ptr64()


class KSCB(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.GenerationCycles = v_uint64()
        self.UnderQuotaCycleTarget = v_uint64()
        self.RankCycleTarget = v_uint64()
        self.LongTermCycles = v_uint64()
        self.LastReportedCycles = v_uint64()
        self.OverQuotaHistory = v_uint64()
        self.ReadyTime = v_uint64()
        self.InsertTime = v_uint64()
        self.PerProcessorList = LIST_ENTRY()
        self.QueueNode = RTL_BALANCED_NODE()
        self.Inserted = v_uint8()
        self.Spare2 = v_uint8()
        self.ReadySummary = v_uint16()
        self.Rank = v_uint32()
        self.ReadyListHead = vstruct.VArray([ LIST_ENTRY() for i in xrange(16) ])


class DOCK_INTERFACE(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Size = v_uint16()
        self.Version = v_uint16()
        self._pad0008 = v_bytes(size=4)
        self.Context = v_ptr64()
        self.InterfaceReference = v_ptr64()
        self.InterfaceDereference = v_ptr64()
        self.ProfileDepartureSetMode = v_ptr64()
        self.ProfileDepartureUpdate = v_ptr64()


class WHEA_AER_ROOTPORT_DESCRIPTOR(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Type = v_uint16()
        self.Enabled = v_uint8()
        self.Reserved = v_uint8()
        self.BusNumber = v_uint32()
        self.Slot = WHEA_PCI_SLOT_NUMBER()
        self.DeviceControl = v_uint16()
        self.Flags = AER_ROOTPORT_DESCRIPTOR_FLAGS()
        self.UncorrectableErrorMask = v_uint32()
        self.UncorrectableErrorSeverity = v_uint32()
        self.CorrectableErrorMask = v_uint32()
        self.AdvancedCapsAndControl = v_uint32()
        self.RootErrorCommand = v_uint32()


class KSHARED_READY_QUEUE(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Lock = v_uint64()
        self.ReadySummary = v_uint32()
        self._pad0010 = v_bytes(size=4)
        self.ReadyListHead = vstruct.VArray([ LIST_ENTRY() for i in xrange(32) ])
        self.RunningSummary = vstruct.VArray([ v_uint8() for i in xrange(64) ])
        self.Span = v_uint32()
        self.LowProcIndex = v_uint32()
        self.QueueIndex = v_uint32()
        self.ProcCount = v_uint32()
        self.Affinity = v_uint64()


class RTL_BALANCED_LINKS(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Parent = v_ptr64()
        self.LeftChild = v_ptr64()
        self.RightChild = v_ptr64()
        self.Balance = v_uint8()
        self.Reserved = vstruct.VArray([ v_uint8() for i in xrange(3) ])
        self._pad0020 = v_bytes(size=4)


class PROCESSOR_PROFILE_CONTROL_AREA(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.PebsDsSaveArea = PEBS_DS_SAVE_AREA()


class SEP_LOWBOX_HANDLES_ENTRY(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.HashEntry = RTL_DYNAMIC_HASH_TABLE_ENTRY()
        self.ReferenceCount = v_uint64()
        self.PackageSid = v_ptr64()
        self.HandleCount = v_uint32()
        self._pad0030 = v_bytes(size=4)
        self.Handles = v_ptr64()


class VI_POOL_ENTRY_INUSE(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.VirtualAddress = v_ptr64()
        self.CallingAddress = v_ptr64()
        self.NumberOfBytes = v_uint64()
        self.Tag = v_uint64()


class KENLISTMENT_HISTORY(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Notification = v_uint32()
        self.NewState = v_uint32()


class _unnamed_29585(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.ReservedEax = v_uint32()
        self.ReservedEbx = v_uint32()
        self.ReservedEcx = v_uint32()
        self.ReservedEdx = v_uint32()


class LOCK_HEADER(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.LockTree = RTL_AVL_TREE()
        self.Count = v_uint64()
        self.Lock = v_uint64()
        self.Valid = v_uint32()
        self._pad0020 = v_bytes(size=4)


class ARBITER_INTERFACE(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Size = v_uint16()
        self.Version = v_uint16()
        self._pad0008 = v_bytes(size=4)
        self.Context = v_ptr64()
        self.InterfaceReference = v_ptr64()
        self.InterfaceDereference = v_ptr64()
        self.ArbiterHandler = v_ptr64()
        self.Flags = v_uint32()
        self._pad0030 = v_bytes(size=4)


class RSDS(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Signature = v_uint32()
        self.Guid = GUID()
        self.Age = v_uint32()
        self.PdbName = vstruct.VArray([ v_uint8() for i in xrange(1) ])
        self._pad001c = v_bytes(size=3)


class OBJECT_DIRECTORY(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.HashBuckets = vstruct.VArray([ v_ptr64() for i in xrange(37) ])
        self.Lock = EX_PUSH_LOCK()
        self.DeviceMap = v_ptr64()
        self.SessionId = v_uint32()
        self._pad0140 = v_bytes(size=4)
        self.NamespaceEntry = v_ptr64()
        self.Flags = v_uint32()
        self._pad0150 = v_bytes(size=4)


class _unnamed_29177(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.e2 = _unnamed_29231()


class _unnamed_29174(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.LongFlags = v_uint32()


class KSTACK_COUNT(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Value = v_uint32()


class _unnamed_34938(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Start = LARGE_INTEGER()
        self.Length48 = v_uint32()


class WAITING_IRP(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Links = LIST_ENTRY()
        self.Irp = v_ptr64()
        self.CompletionRoutine = v_ptr64()
        self.Context = v_ptr64()
        self.Event = v_ptr64()
        self.Information = v_uint32()
        self.BreakAllRH = v_uint8()
        self._pad0038 = v_bytes(size=3)


class CM_KEY_HASH_TABLE_ENTRY(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Lock = EX_PUSH_LOCK()
        self.Owner = v_ptr64()
        self.Entry = v_ptr64()


class BLOB_COUNTERS(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.CreatedObjects = v_uint32()
        self.DeletedObjects = v_uint32()


class _unnamed_34927(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Start = v_uint32()
        self.Length = v_uint32()
        self.Reserved = v_uint32()


class _unnamed_29193(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.ImageCommitment = v_uint64()


class _unnamed_34920(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Channel = v_uint32()
        self.RequestLine = v_uint32()
        self.TransferWidth = v_uint8()
        self.Reserved1 = v_uint8()
        self.Reserved2 = v_uint8()
        self.Reserved3 = v_uint8()


class HEAP_SEGMENT(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Entry = HEAP_ENTRY()
        self.SegmentSignature = v_uint32()
        self.SegmentFlags = v_uint32()
        self.SegmentListEntry = LIST_ENTRY()
        self.Heap = v_ptr64()
        self.BaseAddress = v_ptr64()
        self.NumberOfPages = v_uint32()
        self._pad0040 = v_bytes(size=4)
        self.FirstEntry = v_ptr64()
        self.LastValidEntry = v_ptr64()
        self.NumberOfUnCommittedPages = v_uint32()
        self.NumberOfUnCommittedRanges = v_uint32()
        self.SegmentAllocatorBackTraceIndex = v_uint16()
        self.Reserved = v_uint16()
        self._pad0060 = v_bytes(size=4)
        self.UCRSegmentList = LIST_ENTRY()


class PERFINFO_PPM_STATE_SELECTION(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.SelectedState = v_uint32()
        self.VetoedStates = v_uint32()
        self.VetoReason = vstruct.VArray([ v_uint32() for i in xrange(1) ])


class WMI_LOGGER_CONTEXT(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.LoggerId = v_uint32()
        self.BufferSize = v_uint32()
        self.MaximumEventSize = v_uint32()
        self.LoggerMode = v_uint32()
        self.AcceptNewEvents = v_uint32()
        self.EventMarker = vstruct.VArray([ v_uint32() for i in xrange(2) ])
        self.ErrorMarker = v_uint32()
        self.SizeMask = v_uint32()
        self._pad0028 = v_bytes(size=4)
        self.GetCpuClock = v_ptr64()
        self.LoggerThread = v_ptr64()
        self.LoggerStatus = v_uint32()
        self.FailureReason = v_uint32()
        self.BufferQueue = ETW_BUFFER_QUEUE()
        self.OverflowQueue = ETW_BUFFER_QUEUE()
        self.GlobalList = LIST_ENTRY()
        self.ProviderBinaryList = LIST_ENTRY()
        self.BatchedBufferList = v_ptr64()
        self.LoggerName = UNICODE_STRING()
        self.LogFileName = UNICODE_STRING()
        self.LogFilePattern = UNICODE_STRING()
        self.NewLogFileName = UNICODE_STRING()
        self.ClockType = v_uint32()
        self.LastFlushedBuffer = v_uint32()
        self.FlushTimer = v_uint32()
        self.FlushThreshold = v_uint32()
        self.ByteOffset = LARGE_INTEGER()
        self.MinimumBuffers = v_uint32()
        self.BuffersAvailable = v_uint32()
        self.NumberOfBuffers = v_uint32()
        self.MaximumBuffers = v_uint32()
        self.EventsLost = v_uint32()
        self.PeakBuffersCount = v_uint32()
        self.BuffersWritten = v_uint32()
        self.LogBuffersLost = v_uint32()
        self.RealTimeBuffersDelivered = v_uint32()
        self.RealTimeBuffersLost = v_uint32()
        self.SequencePtr = v_ptr64()
        self.LocalSequence = v_uint32()
        self.InstanceGuid = GUID()
        self.MaximumFileSize = v_uint32()
        self.FileCounter = v_uint32()
        self.PoolType = v_uint32()
        self.ReferenceTime = ETW_REF_CLOCK()
        self.CollectionOn = v_uint32()
        self.ProviderInfoSize = v_uint32()
        self.Consumers = LIST_ENTRY()
        self.NumConsumers = v_uint32()
        self._pad0170 = v_bytes(size=4)
        self.TransitionConsumer = v_ptr64()
        self.RealtimeLogfileHandle = v_ptr64()
        self.RealtimeLogfileName = UNICODE_STRING()
        self.RealtimeWriteOffset = LARGE_INTEGER()
        self.RealtimeReadOffset = LARGE_INTEGER()
        self.RealtimeLogfileSize = LARGE_INTEGER()
        self.RealtimeLogfileUsage = v_uint64()
        self.RealtimeMaximumFileSize = v_uint64()
        self.RealtimeBuffersSaved = v_uint32()
        self._pad01c0 = v_bytes(size=4)
        self.RealtimeReferenceTime = ETW_REF_CLOCK()
        self.NewRTEventsLost = v_uint32()
        self._pad01d8 = v_bytes(size=4)
        self.LoggerEvent = KEVENT()
        self.FlushEvent = KEVENT()
        self.FlushTimeOutTimer = KTIMER()
        self.LoggerDpc = KDPC()
        self.LoggerMutex = KMUTANT()
        self.LoggerLock = EX_PUSH_LOCK()
        self.BufferListSpinLock = v_uint64()
        self.ClientSecurityContext = SECURITY_CLIENT_CONTEXT()
        self.SecurityDescriptor = EX_FAST_REF()
        self.StartTime = LARGE_INTEGER()
        self.LogFileHandle = v_ptr64()
        self.BufferSequenceNumber = v_uint64()
        self.Flags = v_uint32()
        self.RequestFlag = v_uint32()
        self.HookIdMap = RTL_BITMAP()
        self.StackCache = v_ptr64()
        self.PmcData = v_ptr64()
        self.WinRtProviderBinaryList = LIST_ENTRY()
        self.ScratchArray = v_ptr64()


class HEAP_FREE_ENTRY_EXTRA(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.TagIndex = v_uint16()
        self.FreeBackTraceIndex = v_uint16()


class _unnamed_28205(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Length = v_uint32()
        self._pad0008 = v_bytes(size=4)
        self.StartSid = v_ptr64()
        self.SidList = v_ptr64()
        self.SidListLength = v_uint32()
        self._pad0020 = v_bytes(size=4)


class WHEA_ERROR_RECORD_HEADER(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Signature = v_uint32()
        self.Revision = WHEA_REVISION()
        self.SignatureEnd = v_uint32()
        self.SectionCount = v_uint16()
        self.Severity = v_uint32()
        self.ValidBits = WHEA_ERROR_RECORD_HEADER_VALIDBITS()
        self.Length = v_uint32()
        self.Timestamp = WHEA_TIMESTAMP()
        self.PlatformId = GUID()
        self.PartitionId = GUID()
        self.CreatorId = GUID()
        self.NotifyType = GUID()
        self.RecordId = v_uint64()
        self.Flags = WHEA_ERROR_RECORD_HEADER_FLAGS()
        self.PersistenceInfo = WHEA_PERSISTENCE_INFO()
        self.Reserved = vstruct.VArray([ v_uint8() for i in xrange(12) ])


class POP_POLICY_DEVICE(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Link = LIST_ENTRY()
        self.DeviceType = v_uint32()
        self._pad0018 = v_bytes(size=4)
        self.Notification = v_ptr64()
        self.Name = UNICODE_STRING()
        self.Device = v_ptr64()
        self.Irp = v_ptr64()


class SEP_LOWBOX_HANDLES_TABLE(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Lock = EX_PUSH_LOCK()
        self.HashTable = v_ptr64()


class EVENT_DESCRIPTOR(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Id = v_uint16()
        self.Version = v_uint8()
        self.Channel = v_uint8()
        self.Level = v_uint8()
        self.Opcode = v_uint8()
        self.Task = v_uint16()
        self.Keyword = v_uint64()


class PRIVILEGE_SET(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.PrivilegeCount = v_uint32()
        self.Control = v_uint32()
        self.Privilege = vstruct.VArray([ LUID_AND_ATTRIBUTES() for i in xrange(1) ])


class _unnamed_36782(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Active = v_uint32()


class _unnamed_34533(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Flags = _unnamed_36306()


class _unnamed_36963(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.idxRecord = v_uint32()
        self.cidContainer = v_uint32()


class FLS_CALLBACK_INFO(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)


class ACL(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.AclRevision = v_uint8()
        self.Sbz1 = v_uint8()
        self.AclSize = v_uint16()
        self.AceCount = v_uint16()
        self.Sbz2 = v_uint16()


class RTL_ATOM_TABLE(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Signature = v_uint32()
        self.ReferenceCount = v_uint32()
        self.PushLock = EX_PUSH_LOCK()
        self.ExHandleTable = v_ptr64()
        self.Flags = v_uint32()
        self.NumberOfBuckets = v_uint32()
        self.Buckets = vstruct.VArray([ v_ptr64() for i in xrange(1) ])


class CMP_OFFSET_ARRAY(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.FileOffset = v_uint32()
        self._pad0008 = v_bytes(size=4)
        self.DataBuffer = v_ptr64()
        self.DataLength = v_uint32()
        self._pad0018 = v_bytes(size=4)


class MI_SESSION_DRIVER_UNLOAD(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Function = v_ptr64()


class MMSECURE_FLAGS(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.ReadOnly = v_uint32()


class DBGKD_WRITE_MEMORY64(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.TargetBaseAddress = v_uint64()
        self.TransferCount = v_uint32()
        self.ActualBytesWritten = v_uint32()


class MI_TRIAGE_DUMP_DATA(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.BadPageCount = v_uint64()
        self.BadPagesDetected = v_uint32()
        self.ZeroedPageSingleBitErrorsDetected = v_uint32()
        self.ScrubPasses = v_uint32()
        self.ScrubBadPagesFound = v_uint32()
        self.FeatureBits = v_uint64()
        self.TimeZoneId = v_uint32()
        self._pad0028 = v_bytes(size=4)


class OBJECT_HEADER_PADDING_INFO(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.PaddingAmount = v_uint32()


class LIST_ENTRY64(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Flink = v_uint64()
        self.Blink = v_uint64()


class VACB(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.BaseAddress = v_ptr64()
        self.SharedCacheMap = v_ptr64()
        self.Overlay = _unnamed_30744()
        self.ArrayHead = v_ptr64()


class EXHANDLE(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.TagBits = v_uint32()
        self._pad0008 = v_bytes(size=4)


class WAIT_CONTEXT_BLOCK(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.WaitQueueEntry = KDEVICE_QUEUE_ENTRY()
        self.DeviceRoutine = v_ptr64()
        self.DeviceContext = v_ptr64()
        self.NumberOfMapRegisters = v_uint32()
        self._pad0030 = v_bytes(size=4)
        self.DeviceObject = v_ptr64()
        self.CurrentIrp = v_ptr64()
        self.BufferChainingDpc = v_ptr64()


class CM_KEY_NODE(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Signature = v_uint16()
        self.Flags = v_uint16()
        self.LastWriteTime = LARGE_INTEGER()
        self.AccessBits = v_uint32()
        self.Parent = v_uint32()
        self.SubKeyCounts = vstruct.VArray([ v_uint32() for i in xrange(2) ])
        self.SubKeyLists = vstruct.VArray([ v_uint32() for i in xrange(2) ])
        self.ValueList = CHILD_LIST()
        self.Security = v_uint32()
        self.Class = v_uint32()
        self.MaxNameLen = v_uint32()
        self.MaxClassLen = v_uint32()
        self.MaxValueNameLen = v_uint32()
        self.MaxValueDataLen = v_uint32()
        self.WorkVar = v_uint32()
        self.NameLength = v_uint16()
        self.ClassLength = v_uint16()
        self.Name = vstruct.VArray([ v_uint16() for i in xrange(1) ])
        self._pad0050 = v_bytes(size=2)


class CM_KEY_VALUE(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Signature = v_uint16()
        self.NameLength = v_uint16()
        self.DataLength = v_uint32()
        self.Data = v_uint32()
        self.Type = v_uint32()
        self.Flags = v_uint16()
        self.Spare = v_uint16()
        self.Name = vstruct.VArray([ v_uint16() for i in xrange(1) ])
        self._pad0018 = v_bytes(size=2)


class SE_AUDIT_PROCESS_CREATION_INFO(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.ImageFileName = v_ptr64()


class ACTIVATION_CONTEXT_STACK(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.ActiveFrame = v_ptr64()
        self.FrameListCache = LIST_ENTRY()
        self.Flags = v_uint32()
        self.NextCookieSequenceNumber = v_uint32()
        self.StackId = v_uint32()
        self._pad0028 = v_bytes(size=4)


class _unnamed_33532(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.LongFlags = v_uint32()


class MI_PAGING_FILE_SPACE_BITMAPS(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.RefCount = v_uint32()
        self._pad0008 = v_bytes(size=4)
        self.AllocationBitmap = RTL_BITMAP()
        self.ReservationBitmap = RTL_BITMAP()
        self.EvictStoreBitmap = v_ptr64()


class LDR_DATA_TABLE_ENTRY(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.InLoadOrderLinks = LIST_ENTRY()
        self.InMemoryOrderLinks = LIST_ENTRY()
        self.InInitializationOrderLinks = LIST_ENTRY()
        self.DllBase = v_ptr64()
        self.EntryPoint = v_ptr64()
        self.SizeOfImage = v_uint32()
        self._pad0048 = v_bytes(size=4)
        self.FullDllName = UNICODE_STRING()
        self.BaseDllName = UNICODE_STRING()
        self.FlagGroup = vstruct.VArray([ v_uint8() for i in xrange(4) ])
        self.ObsoleteLoadCount = v_uint16()
        self.TlsIndex = v_uint16()
        self.HashLinks = LIST_ENTRY()
        self.TimeDateStamp = v_uint32()
        self._pad0088 = v_bytes(size=4)
        self.EntryPointActivationContext = v_ptr64()
        self.Spare = v_ptr64()
        self.DdagNode = v_ptr64()
        self.NodeModuleLink = LIST_ENTRY()
        self.SnapContext = v_ptr64()
        self.ParentDllBase = v_ptr64()
        self.SwitchBackContext = v_ptr64()
        self.BaseAddressIndexNode = RTL_BALANCED_NODE()
        self.MappingInfoIndexNode = RTL_BALANCED_NODE()
        self.OriginalBase = v_uint64()
        self.LoadTime = LARGE_INTEGER()
        self.BaseNameHashValue = v_uint32()
        self.LoadReason = v_uint32()
        self.ImplicitPathOptions = v_uint32()
        self._pad0118 = v_bytes(size=4)


class SEP_AUDIT_POLICY(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.AdtTokenPolicy = TOKEN_AUDIT_POLICY()
        self.PolicySetStatus = v_uint8()


class TEB(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.NtTib = NT_TIB()
        self.EnvironmentPointer = v_ptr64()
        self.ClientId = CLIENT_ID()
        self.ActiveRpcHandle = v_ptr64()
        self.ThreadLocalStoragePointer = v_ptr64()
        self.ProcessEnvironmentBlock = v_ptr64()
        self.LastErrorValue = v_uint32()
        self.CountOfOwnedCriticalSections = v_uint32()
        self.CsrClientThread = v_ptr64()
        self.Win32ThreadInfo = v_ptr64()
        self.User32Reserved = vstruct.VArray([ v_uint32() for i in xrange(26) ])
        self.UserReserved = vstruct.VArray([ v_uint32() for i in xrange(5) ])
        self._pad0100 = v_bytes(size=4)
        self.WOW32Reserved = v_ptr64()
        self.CurrentLocale = v_uint32()
        self.FpSoftwareStatusRegister = v_uint32()
        self.SystemReserved1 = vstruct.VArray([ v_ptr64() for i in xrange(54) ])
        self.ExceptionCode = v_uint32()
        self.Padding0 = vstruct.VArray([ v_uint8() for i in xrange(4) ])
        self.ActivationContextStackPointer = v_ptr64()
        self.SpareBytes = vstruct.VArray([ v_uint8() for i in xrange(24) ])
        self.TxFsContext = v_uint32()
        self.Padding1 = vstruct.VArray([ v_uint8() for i in xrange(4) ])
        self.GdiTebBatch = GDI_TEB_BATCH()
        self.RealClientId = CLIENT_ID()
        self.GdiCachedProcessHandle = v_ptr64()
        self.GdiClientPID = v_uint32()
        self.GdiClientTID = v_uint32()
        self.GdiThreadLocalInfo = v_ptr64()
        self.Win32ClientInfo = vstruct.VArray([ v_uint64() for i in xrange(62) ])
        self.glDispatchTable = vstruct.VArray([ v_ptr64() for i in xrange(233) ])
        self.glReserved1 = vstruct.VArray([ v_uint64() for i in xrange(29) ])
        self.glReserved2 = v_ptr64()
        self.glSectionInfo = v_ptr64()
        self.glSection = v_ptr64()
        self.glTable = v_ptr64()
        self.glCurrentRC = v_ptr64()
        self.glContext = v_ptr64()
        self.LastStatusValue = v_uint32()
        self.Padding2 = vstruct.VArray([ v_uint8() for i in xrange(4) ])
        self.StaticUnicodeString = UNICODE_STRING()
        self.StaticUnicodeBuffer = vstruct.VArray([ v_uint16() for i in xrange(261) ])
        self.Padding3 = vstruct.VArray([ v_uint8() for i in xrange(6) ])
        self.DeallocationStack = v_ptr64()
        self.TlsSlots = vstruct.VArray([ v_ptr64() for i in xrange(64) ])
        self.TlsLinks = LIST_ENTRY()
        self.Vdm = v_ptr64()
        self.ReservedForNtRpc = v_ptr64()
        self.DbgSsReserved = vstruct.VArray([ v_ptr64() for i in xrange(2) ])
        self.HardErrorMode = v_uint32()
        self.Padding4 = vstruct.VArray([ v_uint8() for i in xrange(4) ])
        self.Instrumentation = vstruct.VArray([ v_ptr64() for i in xrange(11) ])
        self.ActivityId = GUID()
        self.SubProcessTag = v_ptr64()
        self.PerflibData = v_ptr64()
        self.EtwTraceData = v_ptr64()
        self.WinSockData = v_ptr64()
        self.GdiBatchCount = v_uint32()
        self.CurrentIdealProcessor = PROCESSOR_NUMBER()
        self.GuaranteedStackBytes = v_uint32()
        self.Padding5 = vstruct.VArray([ v_uint8() for i in xrange(4) ])
        self.ReservedForPerf = v_ptr64()
        self.ReservedForOle = v_ptr64()
        self.WaitingOnLoaderLock = v_uint32()
        self.Padding6 = vstruct.VArray([ v_uint8() for i in xrange(4) ])
        self.SavedPriorityState = v_ptr64()
        self.ReservedForCodeCoverage = v_uint64()
        self.ThreadPoolData = v_ptr64()
        self.TlsExpansionSlots = v_ptr64()
        self.DeallocationBStore = v_ptr64()
        self.BStoreLimit = v_ptr64()
        self.MuiGeneration = v_uint32()
        self.IsImpersonating = v_uint32()
        self.NlsCache = v_ptr64()
        self.pShimData = v_ptr64()
        self.HeapVirtualAffinity = v_uint16()
        self.LowFragHeapDataSlot = v_uint16()
        self.Padding7 = vstruct.VArray([ v_uint8() for i in xrange(4) ])
        self.CurrentTransactionHandle = v_ptr64()
        self.ActiveFrame = v_ptr64()
        self.FlsData = v_ptr64()
        self.PreferredLanguages = v_ptr64()
        self.UserPrefLanguages = v_ptr64()
        self.MergedPrefLanguages = v_ptr64()
        self.MuiImpersonation = v_uint32()
        self.CrossTebFlags = v_uint16()
        self.SameTebFlags = v_uint16()
        self.TxnScopeEnterCallback = v_ptr64()
        self.TxnScopeExitCallback = v_ptr64()
        self.TxnScopeContext = v_ptr64()
        self.LockCount = v_uint32()
        self.SpareUlong0 = v_uint32()
        self.ResourceRetValue = v_ptr64()
        self.ReservedForWdf = v_ptr64()


class EX_RUNDOWN_REF(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Count = v_uint64()


class VF_TARGET_ALL_SHARED_EXPORT_THUNKS(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.SharedExportThunks = v_ptr64()
        self.PoolSharedExportThunks = v_ptr64()
        self.OrderDependentSharedExportThunks = v_ptr64()
        self.XdvSharedExportThunks = v_ptr64()


class _unnamed_28822(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Long = v_uint64()


class AUTHZBASEP_SECURITY_ATTRIBUTES_INFORMATION(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.SecurityAttributeCount = v_uint32()
        self._pad0008 = v_bytes(size=4)
        self.SecurityAttributesList = LIST_ENTRY()
        self.WorkingSecurityAttributeCount = v_uint32()
        self._pad0020 = v_bytes(size=4)
        self.WorkingSecurityAttributesList = LIST_ENTRY()


class CM_BIG_DATA(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Signature = v_uint16()
        self.Count = v_uint16()
        self.List = v_uint32()


class HV_VENDOR_AND_MAX_FUNCTION(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.MaxFunction = v_uint32()
        self.VendorName = vstruct.VArray([ v_uint8() for i in xrange(12) ])


class KDESCRIPTOR(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Pad = vstruct.VArray([ v_uint16() for i in xrange(3) ])
        self.Limit = v_uint16()
        self.Base = v_ptr64()


class VI_POOL_PAGE_HEADER(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.NextPage = v_ptr64()
        self.VerifierEntry = v_ptr64()
        self.Signature = v_uint64()


class PO_DIAG_STACK_RECORD(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.StackDepth = v_uint32()
        self._pad0008 = v_bytes(size=4)
        self.Stack = vstruct.VArray([ v_ptr64() for i in xrange(1) ])


class IMAGE_DOS_HEADER(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.e_magic = v_uint16()
        self.e_cblp = v_uint16()
        self.e_cp = v_uint16()
        self.e_crlc = v_uint16()
        self.e_cparhdr = v_uint16()
        self.e_minalloc = v_uint16()
        self.e_maxalloc = v_uint16()
        self.e_ss = v_uint16()
        self.e_sp = v_uint16()
        self.e_csum = v_uint16()
        self.e_ip = v_uint16()
        self.e_cs = v_uint16()
        self.e_lfarlc = v_uint16()
        self.e_ovno = v_uint16()
        self.e_res = vstruct.VArray([ v_uint16() for i in xrange(4) ])
        self.e_oemid = v_uint16()
        self.e_oeminfo = v_uint16()
        self.e_res2 = vstruct.VArray([ v_uint16() for i in xrange(10) ])
        self.e_lfanew = v_uint32()


class WHEA_AER_BRIDGE_DESCRIPTOR(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Type = v_uint16()
        self.Enabled = v_uint8()
        self.Reserved = v_uint8()
        self.BusNumber = v_uint32()
        self.Slot = WHEA_PCI_SLOT_NUMBER()
        self.DeviceControl = v_uint16()
        self.Flags = AER_BRIDGE_DESCRIPTOR_FLAGS()
        self.UncorrectableErrorMask = v_uint32()
        self.UncorrectableErrorSeverity = v_uint32()
        self.CorrectableErrorMask = v_uint32()
        self.AdvancedCapsAndControl = v_uint32()
        self.SecondaryUncorrectableErrorMask = v_uint32()
        self.SecondaryUncorrectableErrorSev = v_uint32()
        self.SecondaryCapsAndControl = v_uint32()


class RELATION_LIST_ENTRY(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Count = v_uint32()
        self.MaxCount = v_uint32()
        self.Devices = vstruct.VArray([ DEVICE_OBJECT_LIST_ENTRY() for i in xrange(1) ])


class ADAPTER_OBJECT(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)


class CM_KEY_SECURITY_CACHE_ENTRY(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Cell = v_uint32()
        self._pad0008 = v_bytes(size=4)
        self.CachedSecurity = v_ptr64()


class _unnamed_32335(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.XpfMceDescriptor = WHEA_XPF_MCE_DESCRIPTOR()
        self._pad03a4 = v_bytes(size=12)


class _unnamed_35619(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.EndingOffset = v_ptr64()
        self.ResourceToRelease = v_ptr64()


class TXN_PARAMETER_BLOCK(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Length = v_uint16()
        self.TxFsContext = v_uint16()
        self._pad0008 = v_bytes(size=4)
        self.TransactionObject = v_ptr64()


class _unnamed_34212(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.u = _unnamed_34209()


class EX_PUSH_LOCK_CACHE_AWARE(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Locks = vstruct.VArray([ v_ptr64() for i in xrange(32) ])


class _unnamed_31503(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.s1 = _unnamed_31504()


class _unnamed_29357(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Cell = v_uint32()
        self._pad0008 = v_bytes(size=4)
        self.CellPoint = v_ptr64()
        self.RootPoint = v_ptr64()
        self.Index = v_uint32()
        self._pad0020 = v_bytes(size=4)


class SINGLE_LIST_ENTRY(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Next = v_ptr64()


class EXCEPTION_RECORD32(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.ExceptionCode = v_uint32()
        self.ExceptionFlags = v_uint32()
        self.ExceptionRecord = v_uint32()
        self.ExceptionAddress = v_uint32()
        self.NumberParameters = v_uint32()
        self.ExceptionInformation = vstruct.VArray([ v_uint32() for i in xrange(15) ])


class WHEA_XPF_CMC_DESCRIPTOR(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Type = v_uint16()
        self.Enabled = v_uint8()
        self.NumberOfBanks = v_uint8()
        self.Reserved = v_uint32()
        self.Notify = WHEA_NOTIFICATION_DESCRIPTOR()
        self.Banks = vstruct.VArray([ WHEA_XPF_MC_BANK_DESCRIPTOR() for i in xrange(32) ])


class _unnamed_31504(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Revoked = v_uint32()


class _unnamed_28979(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.ReferenceCount = v_uint16()
        self.e1 = MMPFNENTRY()


class QUAD(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.UseThisFieldToCopy = v_uint64()


class OBJECT_HANDLE_COUNT_DATABASE(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.CountEntries = v_uint32()
        self._pad0008 = v_bytes(size=4)
        self.HandleCountEntries = vstruct.VArray([ OBJECT_HANDLE_COUNT_ENTRY() for i in xrange(1) ])


class PROC_PERF_SNAP(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Time = v_uint64()
        self.LastTime = v_uint64()
        self.Active = v_uint64()
        self.LastActive = v_uint64()
        self.FrequencyScaledActive = v_uint64()
        self.PerformanceScaledActive = v_uint64()
        self.CyclesActive = v_uint64()
        self.CyclesAffinitized = v_uint64()


class TIME_FIELDS(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Year = v_uint16()
        self.Month = v_uint16()
        self.Day = v_uint16()
        self.Hour = v_uint16()
        self.Minute = v_uint16()
        self.Second = v_uint16()
        self.Milliseconds = v_uint16()
        self.Weekday = v_uint16()


class HEAP_TUNING_PARAMETERS(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.CommittThresholdShift = v_uint32()
        self._pad0008 = v_bytes(size=4)
        self.MaxPreCommittThreshold = v_uint64()


class LPCP_PORT_OBJECT(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.ConnectionPort = v_ptr64()
        self.ConnectedPort = v_ptr64()
        self.MsgQueue = LPCP_PORT_QUEUE()
        self.Creator = CLIENT_ID()
        self.ClientSectionBase = v_ptr64()
        self.ServerSectionBase = v_ptr64()
        self.PortContext = v_ptr64()
        self.ClientThread = v_ptr64()
        self.SecurityQos = SECURITY_QUALITY_OF_SERVICE()
        self._pad0070 = v_bytes(size=4)
        self.StaticSecurity = SECURITY_CLIENT_CONTEXT()
        self.LpcReplyChainHead = LIST_ENTRY()
        self.LpcDataInfoChainHead = LIST_ENTRY()
        self.ServerProcess = v_ptr64()
        self.MaxMessageLength = v_uint16()
        self.MaxConnectionInfoLength = v_uint16()
        self.Flags = v_uint32()
        self.WaitEvent = KEVENT()


class WHEA_XPF_MCE_DESCRIPTOR(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Type = v_uint16()
        self.Enabled = v_uint8()
        self.NumberOfBanks = v_uint8()
        self.Flags = XPF_MCE_FLAGS()
        self.MCG_Capability = v_uint64()
        self.MCG_GlobalControl = v_uint64()
        self.Banks = vstruct.VArray([ WHEA_XPF_MC_BANK_DESCRIPTOR() for i in xrange(32) ])


class EVENT_FILTER_DESCRIPTOR(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Ptr = v_uint64()
        self.Size = v_uint32()
        self.Type = v_uint32()


class _unnamed_35059(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.IdleTime = v_uint32()
        self.NonIdleTime = v_uint32()


class CALL_PERFORMANCE_DATA(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.SpinLock = v_uint64()
        self.HashTable = vstruct.VArray([ LIST_ENTRY() for i in xrange(64) ])


class KPRCB(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.MxCsr = v_uint32()
        self.LegacyNumber = v_uint8()
        self.ReservedMustBeZero = v_uint8()
        self.InterruptRequest = v_uint8()
        self.IdleHalt = v_uint8()
        self.CurrentThread = v_ptr64()
        self.NextThread = v_ptr64()
        self.IdleThread = v_ptr64()
        self.NestingLevel = v_uint8()
        self.ClockOwner = v_uint8()
        self.PendingTickFlags = v_uint8()
        self.PrcbPad00 = vstruct.VArray([ v_uint8() for i in xrange(1) ])
        self.Number = v_uint32()
        self.RspBase = v_uint64()
        self.PrcbLock = v_uint64()
        self.PriorityState = v_ptr64()
        self.ProcessorState = KPROCESSOR_STATE()
        self.CpuType = v_uint8()
        self.CpuID = v_uint8()
        self.CpuStep = v_uint16()
        self.MHz = v_uint32()
        self.HalReserved = vstruct.VArray([ v_uint64() for i in xrange(8) ])
        self.MinorVersion = v_uint16()
        self.MajorVersion = v_uint16()
        self.BuildType = v_uint8()
        self.CpuVendor = v_uint8()
        self.CoresPerPhysicalProcessor = v_uint8()
        self.LogicalProcessorsPerCore = v_uint8()
        self.ParentNode = v_ptr64()
        self.GroupSetMember = v_uint64()
        self.Group = v_uint8()
        self.GroupIndex = v_uint8()
        self.PrcbPad05 = vstruct.VArray([ v_uint8() for i in xrange(2) ])
        self.ApicMask = v_uint32()
        self.CFlushSize = v_uint32()
        self._pad0660 = v_bytes(size=4)
        self.AcpiReserved = v_ptr64()
        self.InitialApicId = v_uint32()
        self._pad0670 = v_bytes(size=4)
        self.LockQueue = vstruct.VArray([ KSPIN_LOCK_QUEUE() for i in xrange(17) ])
        self.PPLookasideList = vstruct.VArray([ PP_LOOKASIDE_LIST() for i in xrange(16) ])
        self.PPNxPagedLookasideList = vstruct.VArray([ GENERAL_LOOKASIDE_POOL() for i in xrange(32) ])
        self.PPNPagedLookasideList = vstruct.VArray([ GENERAL_LOOKASIDE_POOL() for i in xrange(32) ])
        self.PPPagedLookasideList = vstruct.VArray([ GENERAL_LOOKASIDE_POOL() for i in xrange(32) ])
        self.PrcbPad20 = v_uint64()
        self.DeferredReadyListHead = SINGLE_LIST_ENTRY()
        self.MmPageFaultCount = v_uint32()
        self.MmCopyOnWriteCount = v_uint32()
        self.MmTransitionCount = v_uint32()
        self.MmDemandZeroCount = v_uint32()
        self.MmPageReadCount = v_uint32()
        self.MmPageReadIoCount = v_uint32()
        self.MmDirtyPagesWriteCount = v_uint32()
        self.MmDirtyWriteIoCount = v_uint32()
        self.MmMappedPagesWriteCount = v_uint32()
        self.MmMappedWriteIoCount = v_uint32()
        self.KeSystemCalls = v_uint32()
        self.KeContextSwitches = v_uint32()
        self.LdtSelector = v_uint16()
        self.PrcbPad40 = v_uint16()
        self.CcFastReadNoWait = v_uint32()
        self.CcFastReadWait = v_uint32()
        self.CcFastReadNotPossible = v_uint32()
        self.CcCopyReadNoWait = v_uint32()
        self.CcCopyReadWait = v_uint32()
        self.CcCopyReadNoWaitMiss = v_uint32()
        self.IoReadOperationCount = v_uint32()
        self.IoWriteOperationCount = v_uint32()
        self.IoOtherOperationCount = v_uint32()
        self.IoReadTransferCount = LARGE_INTEGER()
        self.IoWriteTransferCount = LARGE_INTEGER()
        self.IoOtherTransferCount = LARGE_INTEGER()
        self.PacketBarrier = v_uint32()
        self.TargetCount = v_uint32()
        self.IpiFrozen = v_uint32()
        self._pad2d10 = v_bytes(size=4)
        self.IsrDpcStats = v_ptr64()
        self.DeviceInterrupts = v_uint32()
        self.LookasideIrpFloat = v_uint32()
        self.InterruptLastCount = v_uint32()
        self.InterruptRate = v_uint32()
        self.PrcbPad41 = vstruct.VArray([ v_uint32() for i in xrange(22) ])
        self.DpcData = vstruct.VArray([ KDPC_DATA() for i in xrange(2) ])
        self.DpcStack = v_ptr64()
        self.MaximumDpcQueueDepth = v_uint32()
        self.DpcRequestRate = v_uint32()
        self.MinimumDpcRate = v_uint32()
        self.DpcLastCount = v_uint32()
        self.ThreadDpcEnable = v_uint8()
        self.QuantumEnd = v_uint8()
        self.DpcRoutineActive = v_uint8()
        self.IdleSchedule = v_uint8()
        self.DpcRequestSummary = v_uint32()
        self.LastTimerHand = v_uint32()
        self.LastTick = v_uint32()
        self.ClockInterrupts = v_uint32()
        self.ReadyScanTick = v_uint32()
        self.TimerTable = KTIMER_TABLE()
        self.DpcGate = KGATE()
        self.PrcbPad52 = v_ptr64()
        self.CallDpc = KDPC()
        self.ClockKeepAlive = v_uint32()
        self.PrcbPad60 = vstruct.VArray([ v_uint8() for i in xrange(2) ])
        self.NmiActive = v_uint16()
        self.DpcWatchdogPeriod = v_uint32()
        self.DpcWatchdogCount = v_uint32()
        self.KeSpinLockOrdering = v_uint32()
        self.PrcbPad70 = vstruct.VArray([ v_uint32() for i in xrange(1) ])
        self.CachedPtes = v_ptr64()
        self.WaitListHead = LIST_ENTRY()
        self.WaitLock = v_uint64()
        self.ReadySummary = v_uint32()
        self.AffinitizedSelectionMask = v_uint32()
        self.QueueIndex = v_uint32()
        self.PrcbPad75 = vstruct.VArray([ v_uint32() for i in xrange(3) ])
        self.TimerExpirationDpc = KDPC()
        self.ScbQueue = RTL_RB_TREE()
        self.DispatcherReadyListHead = vstruct.VArray([ LIST_ENTRY() for i in xrange(32) ])
        self.InterruptCount = v_uint32()
        self.KernelTime = v_uint32()
        self.UserTime = v_uint32()
        self.DpcTime = v_uint32()
        self.InterruptTime = v_uint32()
        self.AdjustDpcThreshold = v_uint32()
        self.DebuggerSavedIRQL = v_uint8()
        self.GroupSchedulingOverQuota = v_uint8()
        self.DeepSleep = v_uint8()
        self.PrcbPad80 = vstruct.VArray([ v_uint8() for i in xrange(1) ])
        self.ScbOffset = v_uint32()
        self.DpcTimeCount = v_uint32()
        self.DpcTimeLimit = v_uint32()
        self.PeriodicCount = v_uint32()
        self.PeriodicBias = v_uint32()
        self.AvailableTime = v_uint32()
        self.KeExceptionDispatchCount = v_uint32()
        self.StartCycles = v_uint64()
        self.GenerationTarget = v_uint64()
        self.AffinitizedCycles = v_uint64()
        self.PrcbPad81 = vstruct.VArray([ v_uint64() for i in xrange(2) ])
        self.MmSpinLockOrdering = v_uint32()
        self.PageColor = v_uint32()
        self.NodeColor = v_uint32()
        self.NodeShiftedColor = v_uint32()
        self.SecondaryColorMask = v_uint32()
        self.PrcbPad83 = v_uint32()
        self.CycleTime = v_uint64()
        self.CcFastMdlReadNoWait = v_uint32()
        self.CcFastMdlReadWait = v_uint32()
        self.CcFastMdlReadNotPossible = v_uint32()
        self.CcMapDataNoWait = v_uint32()
        self.CcMapDataWait = v_uint32()
        self.CcPinMappedDataCount = v_uint32()
        self.CcPinReadNoWait = v_uint32()
        self.CcPinReadWait = v_uint32()
        self.CcMdlReadNoWait = v_uint32()
        self.CcMdlReadWait = v_uint32()
        self.CcLazyWriteHotSpots = v_uint32()
        self.CcLazyWriteIos = v_uint32()
        self.CcLazyWritePages = v_uint32()
        self.CcDataFlushes = v_uint32()
        self.CcDataPages = v_uint32()
        self.CcLostDelayedWrites = v_uint32()
        self.CcFastReadResourceMiss = v_uint32()
        self.CcCopyReadWaitMiss = v_uint32()
        self.CcFastMdlReadResourceMiss = v_uint32()
        self.CcMapDataNoWaitMiss = v_uint32()
        self.CcMapDataWaitMiss = v_uint32()
        self.CcPinReadNoWaitMiss = v_uint32()
        self.CcPinReadWaitMiss = v_uint32()
        self.CcMdlReadNoWaitMiss = v_uint32()
        self.CcMdlReadWaitMiss = v_uint32()
        self.CcReadAheadIos = v_uint32()
        self.MmCacheTransitionCount = v_uint32()
        self.MmCacheReadCount = v_uint32()
        self.MmCacheIoCount = v_uint32()
        self.PrcbPad91 = vstruct.VArray([ v_uint32() for i in xrange(3) ])
        self.PowerState = PROCESSOR_POWER_STATE()
        self.ScbList = LIST_ENTRY()
        self.PrcbPad92 = vstruct.VArray([ v_uint32() for i in xrange(19) ])
        self.KeAlignmentFixupCount = v_uint32()
        self.DpcWatchdogDpc = KDPC()
        self.DpcWatchdogTimer = KTIMER()
        self.Cache = vstruct.VArray([ CACHE_DESCRIPTOR() for i in xrange(5) ])
        self.CacheCount = v_uint32()
        self.CachedCommit = v_uint32()
        self.CachedResidentAvailable = v_uint32()
        self.HyperPte = v_ptr64()
        self.WheaInfo = v_ptr64()
        self.EtwSupport = v_ptr64()
        self.InterruptObjectPool = SLIST_HEADER()
        self.HypercallPageList = SLIST_HEADER()
        self.HypercallPageVirtual = v_ptr64()
        self.VirtualApicAssist = v_ptr64()
        self.StatisticsPage = v_ptr64()
        self.PackageProcessorSet = KAFFINITY_EX()
        self.SharedReadyQueueMask = v_uint64()
        self.SharedReadyQueue = v_ptr64()
        self.CoreProcessorSet = v_uint64()
        self.ScanSiblingMask = v_uint64()
        self.LLCMask = v_uint64()
        self.CacheProcessorMask = vstruct.VArray([ v_uint64() for i in xrange(5) ])
        self.ScanSiblingIndex = v_uint32()
        self.SharedReadyQueueOffset = v_uint32()
        self.ProcessorProfileControlArea = v_ptr64()
        self.ProfileEventIndexAddress = v_ptr64()
        self.PrcbPad94 = vstruct.VArray([ v_uint64() for i in xrange(3) ])
        self.SynchCounters = SYNCH_COUNTERS()
        self.PteBitCache = v_uint64()
        self.PteBitOffset = v_uint32()
        self._pad5948 = v_bytes(size=4)
        self.FsCounters = FILESYSTEM_DISK_COUNTERS()
        self.VendorString = vstruct.VArray([ v_uint8() for i in xrange(13) ])
        self.PrcbPad10 = vstruct.VArray([ v_uint8() for i in xrange(3) ])
        self.FeatureBits = v_uint64()
        self.PrcbPad11 = v_uint32()
        self._pad5978 = v_bytes(size=4)
        self.UpdateSignature = LARGE_INTEGER()
        self.Context = v_ptr64()
        self.ContextFlagsInit = v_uint32()
        self._pad5990 = v_bytes(size=4)
        self.ExtendedState = v_ptr64()
        self.IsrStack = v_ptr64()
        self.EntropyTimingState = KENTROPY_TIMING_STATE()
        self.AbSelfIoBoostsList = SINGLE_LIST_ENTRY()
        self.AbPropagateBoostsList = SINGLE_LIST_ENTRY()
        self.AbDpc = KDPC()
        self.IoIrpStackProfilerCurrent = IOP_IRP_STACK_PROFILER()
        self.IoIrpStackProfilerPrevious = IOP_IRP_STACK_PROFILER()
        self.TimerExpirationTrace = vstruct.VArray([ KTIMER_EXPIRATION_TRACE() for i in xrange(16) ])
        self.TimerExpirationTraceCount = v_uint32()
        self._pad5d00 = v_bytes(size=20)
        self.Mailbox = v_ptr64()
        self._pad5d40 = v_bytes(size=56)
        self.RequestMailbox = vstruct.VArray([ REQUEST_MAILBOX() for i in xrange(1) ])


class EXCEPTION_POINTERS(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.ExceptionRecord = v_ptr64()
        self.ContextRecord = v_ptr64()


class PPM_FFH_THROTTLE_STATE_INFO(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.EnableLogging = v_uint8()
        self._pad0004 = v_bytes(size=3)
        self.MismatchCount = v_uint32()
        self.Initialized = v_uint8()
        self._pad0010 = v_bytes(size=7)
        self.LastValue = v_uint64()
        self.LastLogTickCount = LARGE_INTEGER()


class WHEA_XPF_NMI_DESCRIPTOR(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Type = v_uint16()
        self.Enabled = v_uint8()


class _unnamed_28172(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.OutputBufferLength = v_uint32()
        self._pad0008 = v_bytes(size=4)
        self.InputBufferLength = v_uint32()
        self._pad0010 = v_bytes(size=4)
        self.IoControlCode = v_uint32()
        self._pad0018 = v_bytes(size=4)
        self.Type3InputBuffer = v_ptr64()


class PCW_REGISTRATION_INFORMATION(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Version = v_uint32()
        self._pad0008 = v_bytes(size=4)
        self.Name = v_ptr64()
        self.CounterCount = v_uint32()
        self._pad0018 = v_bytes(size=4)
        self.Counters = v_ptr64()
        self.Callback = v_ptr64()
        self.CallbackContext = v_ptr64()


class IO_CACHE_INFO(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.CacheAttribute = v_uint8()


class INVERTED_FUNCTION_TABLE(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.CurrentSize = v_uint32()
        self.MaximumSize = v_uint32()
        self.Epoch = v_uint32()
        self.Overflow = v_uint8()
        self._pad0010 = v_bytes(size=3)
        self.TableEntry = vstruct.VArray([ INVERTED_FUNCTION_TABLE_ENTRY() for i in xrange(256) ])


class KAFFINITY_EX(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Count = v_uint16()
        self.Size = v_uint16()
        self.Reserved = v_uint32()
        self.Bitmap = vstruct.VArray([ v_uint64() for i in xrange(20) ])


class ETW_WMITRACE_WORK(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.LoggerId = v_uint32()
        self.SpareUlong = v_uint32()
        self.LoggerName = vstruct.VArray([ v_uint8() for i in xrange(65) ])
        self.FileName = vstruct.VArray([ v_uint8() for i in xrange(129) ])
        self._pad00cc = v_bytes(size=2)
        self.MaximumFileSize = v_uint32()
        self.MinBuffers = v_uint32()
        self.MaxBuffers = v_uint32()
        self.BufferSize = v_uint32()
        self.Mode = v_uint32()
        self.FlushTimer = v_uint32()
        self._pad00e8 = v_bytes(size=4)
        self.Status = v_uint32()
        self._pad00f0 = v_bytes(size=4)


class PROVIDER_BINARY_ENTRY(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.ListEntry = LIST_ENTRY()
        self.ConsumersNotified = v_uint8()
        self.Spare = vstruct.VArray([ v_uint8() for i in xrange(3) ])
        self.DebugIdSize = v_uint32()
        self.DebugId = CVDD()
        self._pad0038 = v_bytes(size=4)


class MMVIEW_CONTROL_AREA(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.ControlArea = v_ptr64()


class HV_PARTITION_PRIVILEGE_MASK(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.AsUINT64 = v_uint64()


class _unnamed_37448(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.ImagePteOffset = v_uint32()


class _unnamed_37449(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.e1 = MMINPAGE_FLAGS()


class CM_NAME_HASH(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.ConvKey = v_uint32()
        self._pad0008 = v_bytes(size=4)
        self.NextHash = v_ptr64()
        self.NameLength = v_uint16()
        self.Name = vstruct.VArray([ v_uint16() for i in xrange(1) ])
        self._pad0018 = v_bytes(size=4)


class ARBITER_ORDERING_LIST(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Count = v_uint16()
        self.Maximum = v_uint16()
        self._pad0008 = v_bytes(size=4)
        self.Orderings = v_ptr64()


class _unnamed_28976(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Flink = v_uint64()


class KTSS64(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Reserved0 = v_uint32()
        self.Rsp0 = v_uint64()
        self.Rsp1 = v_uint64()
        self.Rsp2 = v_uint64()
        self.Ist = vstruct.VArray([ v_uint64() for i in xrange(8) ])
        self.Reserved1 = v_uint64()
        self.Reserved2 = v_uint16()
        self.IoMapBase = v_uint16()


class KALPC_HANDLE_DATA(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Flags = v_uint32()
        self.ObjectType = v_uint32()
        self.DuplicateContext = OB_DUPLICATE_OBJECT_STATE()


class _unnamed_30376(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.ReadMemory = DBGKD_READ_MEMORY32()
        self._pad0028 = v_bytes(size=28)


class KERNEL_STACK_SEGMENT(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.StackBase = v_uint64()
        self.StackLimit = v_uint64()
        self.KernelStack = v_uint64()
        self.InitialStack = v_uint64()


class VF_POOL_TRACE(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Address = v_ptr64()
        self.Size = v_uint64()
        self.Thread = v_ptr64()
        self.StackTrace = vstruct.VArray([ v_ptr64() for i in xrange(13) ])


class CM_CACHED_VALUE_INDEX(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.CellIndex = v_uint32()
        self._pad0008 = v_bytes(size=4)
        self.Data = _unnamed_35000()


class ISRDPCSTATS(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.IsrTime = v_uint64()
        self.IsrTimeStart = v_uint64()
        self.IsrCount = v_uint64()
        self.DpcTime = v_uint64()
        self.DpcTimeStart = v_uint64()
        self.DpcCount = v_uint64()
        self.IsrActive = v_uint8()
        self.Reserved = vstruct.VArray([ v_uint8() for i in xrange(15) ])


class MMIO_TRACKER(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.ListEntry = LIST_ENTRY()
        self.PageFrameIndex = v_uint64()
        self.NumberOfPages = v_uint64()
        self.BaseVa = v_ptr64()
        self.Mdl = v_ptr64()
        self.MdlPages = v_uint64()
        self.StackTrace = vstruct.VArray([ v_ptr64() for i in xrange(6) ])
        self.CacheInfo = vstruct.VArray([ IO_CACHE_INFO() for i in xrange(1) ])
        self._pad0070 = v_bytes(size=7)


class LOG_HANDLE_CONTEXT(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.LogHandle = v_ptr64()
        self.FlushToLsnRoutine = v_ptr64()
        self.QueryLogHandleInfoRoutine = v_ptr64()
        self.DirtyPageStatistics = DIRTY_PAGE_STATISTICS()
        self.DirtyPageThresholds = DIRTY_PAGE_THRESHOLDS()
        self.AdditionalPagesToWrite = v_uint32()
        self.CcLWScanDPThreshold = v_uint32()
        self.LargestLsnForCurrentLWScan = LARGE_INTEGER()
        self.RelatedFileObject = v_ptr64()
        self.LargestLsnFileObjectKey = v_uint64()
        self.LastLWTimeStamp = LARGE_INTEGER()
        self.Flags = v_uint32()
        self._pad0098 = v_bytes(size=4)


class PCW_COUNTER_INFORMATION(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.CounterMask = v_uint64()
        self.InstanceMask = v_ptr64()


class _unnamed_29310(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.IoStatus = IO_STATUS_BLOCK()


class AGGREGATED_PAYLOAD_FILTER(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.MagicValue = v_uint16()
        self.Size = v_uint16()
        self.PredicateCount = v_uint16()
        self.Reserved = v_uint16()
        self.HashedEventIdBitmap = v_uint64()
        self.ProviderGuid = GUID()
        self.EachEventTableOffset = v_uint16()
        self.EachEventTableLength = v_uint16()
        self.PayloadDecoderTableOffset = v_uint16()
        self.PayloadDecoderTableLength = v_uint16()
        self.EventFilterTableOffset = v_uint16()
        self.EventFilterTableLength = v_uint16()
        self.UNICODEStringTableOffset = v_uint16()
        self.UNICODEStringTableLength = v_uint16()
        self.ANSIStringTableOffset = v_uint16()
        self.ANSIStringTableLength = v_uint16()
        self._pad0038 = v_bytes(size=4)
        self.PredicateTable = vstruct.VArray([ EVENT_PAYLOAD_PREDICATE() for i in xrange(1) ])


class DBGKD_WRITE_BREAKPOINT32(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.BreakPointAddress = v_uint32()
        self.BreakPointHandle = v_uint32()


class MMPFNLIST(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Total = v_uint64()
        self.ListName = v_uint32()
        self._pad0010 = v_bytes(size=4)
        self.Flink = v_uint64()
        self.Blink = v_uint64()
        self.Lock = v_uint64()


class _unnamed_34287(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.MinimumChannel = v_uint32()
        self.MaximumChannel = v_uint32()


class ALPC_HANDLE_ENTRY(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Object = v_ptr64()


class ETW_REPLY_QUEUE(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Queue = KQUEUE()
        self.EventsLost = v_uint32()
        self._pad0048 = v_bytes(size=4)


class OBJECT_TYPE(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.TypeList = LIST_ENTRY()
        self.Name = UNICODE_STRING()
        self.DefaultObject = v_ptr64()
        self.Index = v_uint8()
        self._pad002c = v_bytes(size=3)
        self.TotalNumberOfObjects = v_uint32()
        self.TotalNumberOfHandles = v_uint32()
        self.HighWaterNumberOfObjects = v_uint32()
        self.HighWaterNumberOfHandles = v_uint32()
        self._pad0040 = v_bytes(size=4)
        self.TypeInfo = OBJECT_TYPE_INITIALIZER()
        self.TypeLock = EX_PUSH_LOCK()
        self.Key = v_uint32()
        self._pad00c8 = v_bytes(size=4)
        self.CallbackList = LIST_ENTRY()


class FILE_OBJECT(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Type = v_uint16()
        self.Size = v_uint16()
        self._pad0008 = v_bytes(size=4)
        self.DeviceObject = v_ptr64()
        self.Vpb = v_ptr64()
        self.FsContext = v_ptr64()
        self.FsContext2 = v_ptr64()
        self.SectionObjectPointer = v_ptr64()
        self.PrivateCacheMap = v_ptr64()
        self.FinalStatus = v_uint32()
        self._pad0040 = v_bytes(size=4)
        self.RelatedFileObject = v_ptr64()
        self.LockOperation = v_uint8()
        self.DeletePending = v_uint8()
        self.ReadAccess = v_uint8()
        self.WriteAccess = v_uint8()
        self.DeleteAccess = v_uint8()
        self.SharedRead = v_uint8()
        self.SharedWrite = v_uint8()
        self.SharedDelete = v_uint8()
        self.Flags = v_uint32()
        self._pad0058 = v_bytes(size=4)
        self.FileName = UNICODE_STRING()
        self.CurrentByteOffset = LARGE_INTEGER()
        self.Waiters = v_uint32()
        self.Busy = v_uint32()
        self.LastLock = v_ptr64()
        self.Lock = KEVENT()
        self.Event = KEVENT()
        self.CompletionContext = v_ptr64()
        self.IrpListLock = v_uint64()
        self.IrpList = LIST_ENTRY()
        self.FileObjectExtension = v_ptr64()


class KNODE(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.DeepIdleSet = v_uint64()
        self.SharedReadyQueueLeaders = v_uint64()
        self._pad0040 = v_bytes(size=48)
        self.ProximityId = v_uint32()
        self.NodeNumber = v_uint16()
        self.PrimaryNodeNumber = v_uint16()
        self.MaximumProcessors = v_uint8()
        self.Flags = flags()
        self.Stride = v_uint8()
        self.LowIndex = v_uint8()
        self._pad0050 = v_bytes(size=4)
        self.Affinity = GROUP_AFFINITY()
        self.IdleCpuSet = v_uint64()
        self.IdleSmtSet = v_uint64()
        self._pad0080 = v_bytes(size=16)
        self.NonParkedSet = v_uint64()
        self.Seed = v_uint32()
        self.Lowest = v_uint32()
        self.Highest = v_uint32()
        self.ParkLock = v_uint32()
        self._pad00c0 = v_bytes(size=40)


class ETW_STACK_CACHE(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)


class DIRTY_PAGE_STATISTICS(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.DirtyPages = v_uint64()
        self.DirtyPagesLastScan = v_uint64()
        self.DirtyPagesScheduledLastScan = v_uint32()
        self._pad0018 = v_bytes(size=4)


class HMAP_DIRECTORY(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Directory = vstruct.VArray([ v_ptr64() for i in xrange(1024) ])


class IO_WORKITEM(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.WorkItem = WORK_QUEUE_ITEM()
        self.Routine = v_ptr64()
        self.IoObject = v_ptr64()
        self.Context = v_ptr64()
        self.Type = v_uint32()
        self.ActivityId = GUID()
        self._pad0050 = v_bytes(size=4)


class POP_CURRENT_BROADCAST(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.InProgress = v_uint8()
        self._pad0004 = v_bytes(size=3)
        self.SystemContext = SYSTEM_POWER_STATE_CONTEXT()
        self.PowerAction = v_uint32()
        self._pad0010 = v_bytes(size=4)
        self.DeviceState = v_ptr64()


class SYSTEM_POWER_CAPABILITIES(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.PowerButtonPresent = v_uint8()
        self.SleepButtonPresent = v_uint8()
        self.LidPresent = v_uint8()
        self.SystemS1 = v_uint8()
        self.SystemS2 = v_uint8()
        self.SystemS3 = v_uint8()
        self.SystemS4 = v_uint8()
        self.SystemS5 = v_uint8()
        self.HiberFilePresent = v_uint8()
        self.FullWake = v_uint8()
        self.VideoDimPresent = v_uint8()
        self.ApmPresent = v_uint8()
        self.UpsPresent = v_uint8()
        self.ThermalControl = v_uint8()
        self.ProcessorThrottle = v_uint8()
        self.ProcessorMinThrottle = v_uint8()
        self.ProcessorMaxThrottle = v_uint8()
        self.FastSystemS4 = v_uint8()
        self.Hiberboot = v_uint8()
        self.WakeAlarmPresent = v_uint8()
        self.AoAc = v_uint8()
        self.DiskSpinDown = v_uint8()
        self.spare3 = vstruct.VArray([ v_uint8() for i in xrange(8) ])
        self.SystemBatteriesPresent = v_uint8()
        self.BatteriesAreShortTerm = v_uint8()
        self.BatteryScale = vstruct.VArray([ BATTERY_REPORTING_SCALE() for i in xrange(3) ])
        self.AcOnLineWake = v_uint32()
        self.SoftLidWake = v_uint32()
        self.RtcWake = v_uint32()
        self.MinDeviceWakeState = v_uint32()
        self.DefaultLowLatencyWake = v_uint32()


class DBGKD_SET_CONTEXT(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.ContextFlags = v_uint32()


class MMEXTEND_INFO(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.CommittedSize = v_uint64()
        self.ReferenceCount = v_uint32()
        self._pad0010 = v_bytes(size=4)


class MMPFN(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.u1 = _unnamed_28976()
        self.u2 = _unnamed_28977()
        self.PteAddress = v_ptr64()
        self.u3 = _unnamed_28979()
        self.NodeBlinkLow = v_uint16()
        self.Unused = v_uint8()
        self.ViewCount = v_uint8()
        self.OriginalPte = MMPTE()
        self.u4 = _unnamed_28980()


class RTL_USER_PROCESS_PARAMETERS(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.MaximumLength = v_uint32()
        self.Length = v_uint32()
        self.Flags = v_uint32()
        self.DebugFlags = v_uint32()
        self.ConsoleHandle = v_ptr64()
        self.ConsoleFlags = v_uint32()
        self._pad0020 = v_bytes(size=4)
        self.StandardInput = v_ptr64()
        self.StandardOutput = v_ptr64()
        self.StandardError = v_ptr64()
        self.CurrentDirectory = CURDIR()
        self.DllPath = UNICODE_STRING()
        self.ImagePathName = UNICODE_STRING()
        self.CommandLine = UNICODE_STRING()
        self.Environment = v_ptr64()
        self.StartingX = v_uint32()
        self.StartingY = v_uint32()
        self.CountX = v_uint32()
        self.CountY = v_uint32()
        self.CountCharsX = v_uint32()
        self.CountCharsY = v_uint32()
        self.FillAttribute = v_uint32()
        self.WindowFlags = v_uint32()
        self.ShowWindowFlags = v_uint32()
        self._pad00b0 = v_bytes(size=4)
        self.WindowTitle = UNICODE_STRING()
        self.DesktopInfo = UNICODE_STRING()
        self.ShellInfo = UNICODE_STRING()
        self.RuntimeData = UNICODE_STRING()
        self.CurrentDirectores = vstruct.VArray([ RTL_DRIVE_LETTER_CURDIR() for i in xrange(32) ])
        self.EnvironmentSize = v_uint64()
        self.EnvironmentVersion = v_uint64()
        self.PackageDependencyData = v_ptr64()
        self.ProcessGroupId = v_uint32()
        self._pad0410 = v_bytes(size=4)


class _unnamed_35000(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.CellData = CELL_DATA()


class FILESYSTEM_DISK_COUNTERS(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.FsBytesRead = v_uint64()
        self.FsBytesWritten = v_uint64()


class EXT_DELETE_PARAMETERS(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Version = v_uint32()
        self.Reserved = v_uint32()
        self.DeleteCallback = v_ptr64()
        self.DeleteContext = v_ptr64()


class IO_REMOVE_LOCK_COMMON_BLOCK(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Removed = v_uint8()
        self.Reserved = vstruct.VArray([ v_uint8() for i in xrange(3) ])
        self.IoCount = v_uint32()
        self.RemoveEvent = KEVENT()


class SEP_LOWBOX_NUMBER_MAPPING(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Lock = EX_PUSH_LOCK()
        self.Bitmap = RTL_BITMAP()
        self.HashTable = v_ptr64()
        self.Active = v_uint8()
        self._pad0028 = v_bytes(size=7)


class IOP_IRP_EXTENSION_STATUS(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Flags = v_uint32()
        self.ActivityId = v_uint32()
        self.IoTracking = v_uint32()


class ALPC_COMPLETION_LIST_HEADER(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.StartMagic = v_uint64()
        self.TotalSize = v_uint32()
        self.ListOffset = v_uint32()
        self.ListSize = v_uint32()
        self.BitmapOffset = v_uint32()
        self.BitmapSize = v_uint32()
        self.DataOffset = v_uint32()
        self.DataSize = v_uint32()
        self.AttributeFlags = v_uint32()
        self.AttributeSize = v_uint32()
        self._pad0040 = v_bytes(size=20)
        self.State = ALPC_COMPLETION_LIST_STATE()
        self.LastMessageId = v_uint32()
        self.LastCallbackId = v_uint32()
        self._pad0080 = v_bytes(size=48)
        self.PostCount = v_uint32()
        self._pad00c0 = v_bytes(size=60)
        self.ReturnCount = v_uint32()
        self._pad0100 = v_bytes(size=60)
        self.LogSequenceNumber = v_uint32()
        self._pad0140 = v_bytes(size=60)
        self.UserLock = RTL_SRWLOCK()
        self.EndMagic = v_uint64()
        self._pad0180 = v_bytes(size=48)


class ETW_QUEUE_ENTRY(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.ListEntry = LIST_ENTRY()
        self.DataBlock = v_ptr64()
        self.RegEntry = v_ptr64()
        self.ReplyObject = v_ptr64()
        self.WakeReference = v_ptr64()
        self.RegIndex = v_uint16()
        self.ReplyIndex = v_uint16()
        self.Flags = v_uint32()


class DBGKD_READ_MEMORY32(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.TargetBaseAddress = v_uint32()
        self.TransferCount = v_uint32()
        self.ActualBytesRead = v_uint32()


class u(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.KeyNode = CM_KEY_NODE()


class _unnamed_27952(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Create = _unnamed_28014()


class DUMP_STACK_CONTEXT(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Init = DUMP_INITIALIZATION_CONTEXT()
        self.PartitionOffset = LARGE_INTEGER()
        self.DumpPointers = v_ptr64()
        self.PointersLength = v_uint32()
        self._pad0120 = v_bytes(size=4)
        self.ModulePrefix = v_ptr64()
        self.DriverList = LIST_ENTRY()
        self.InitMsg = STRING()
        self.ProgMsg = STRING()
        self.DoneMsg = STRING()
        self.FileObject = v_ptr64()
        self.UsageType = v_uint32()
        self._pad0178 = v_bytes(size=4)


class _unnamed_28327(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.PowerState = v_uint32()


class _unnamed_30279(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.ReadMemory = DBGKD_READ_MEMORY64()
        self._pad0028 = v_bytes(size=24)


class MMWSLE_NONDIRECT_HASH(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.Key = v_ptr64()
        self.Index = v_uint64()


class WHEA_ERROR_RECORD_SECTION_DESCRIPTOR_VALIDBITS(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.FRUId = v_uint8()


class KUMS_CONTEXT_HEADER(vstruct.VStruct):
    def __init__(self):
        vstruct.VStruct.__init__(self)
        self.P1Home = v_uint64()
        self.P2Home = v_uint64()
        self.P3Home = v_uint64()
        self.P4Home = v_uint64()
        self.StackTop = v_ptr64()
        self.StackSize = v_uint64()
        self.RspOffset = v_uint64()
        self.Rip = v_uint64()
        self.FltSave = v_ptr64()
        self.Volatile = v_uint64()
        self.TrapFrame = v_ptr64()
        self.ExceptionFrame = v_ptr64()
        self.SourceThread = v_ptr64()
        self.Return = v_uint64()



