| //+------------------------------------------------------------------+
|
| //| winnt.mqh |
|
| //| Copyright 2000-2025, MetaQuotes Ltd. |
|
| //| https://www.mql5.com |
|
| //+------------------------------------------------------------------+
|
| #include <WinAPI\windef.mqh>
|
|
|
| //---
|
| #define UNWIND_HISTORY_TABLE_SIZE 12
|
| #define SIZE_OF_80387_REGISTERS 80
|
| #define MAXIMUM_SUPPORTED_EXTENSION 512
|
| #define WOW64_SIZE_OF_80387_REGISTERS 80
|
| #define WOW64_MAXIMUM_SUPPORTED_EXTENSION 512
|
| #define SID_HASH_SIZE 32
|
| #define POLICY_AUDIT_SUBCATEGORY_COUNT 59
|
| #define TOKEN_SOURCE_LENGTH 8
|
| #define MAXIMUM_XSTATE_FEATURES 64
|
| #define POWER_SYSTEM_MAXIMUM 7
|
| #define NUM_DISCHARGE_POLICIES 4
|
| #define HIBERFILE_TYPE_MAX 0x03
|
| #define IMAGE_NUMBEROF_DIRECTORY_ENTRIES 16
|
| #define IMAGE_SIZEOF_SHORT_NAME 8
|
| #define IMAGE_ENCLAVE_LONG_ID_LENGTH 32
|
| #define IMAGE_ENCLAVE_SHORT_ID_LENGTH 16
|
| #define RTL_CORRELATION_VECTOR_STRING_LENGTH 129
|
|
|
| //---
|
| enum SID_NAME_USE
|
| {
|
| SidTypeUser=1,
|
| SidTypeGroup,
|
| SidTypeDomain,
|
| SidTypeAlias,
|
| SidTypeWellKnownGroup,
|
| SidTypeDeletedAccount,
|
| SidTypeInvalid,
|
| SidTypeUnknown,
|
| SidTypeComputer,
|
| SidTypeLabel,
|
| SidTypeLogonSession
|
| };
|
| //---
|
| enum ACL_INFORMATION_CLASS
|
| {
|
| AclRevisionInformation=1,
|
| AclSizeInformation
|
| };
|
| //---
|
| enum AUDIT_EVENT_TYPE
|
| {
|
| AuditEventObjectAccess,
|
| AuditEventDirectoryServiceAccess
|
| };
|
| //---
|
| enum ACCESS_REASON_TYPE
|
| {
|
| AccessReasonNone=0x00000000,
|
| AccessReasonAllowedAce=0x00010000,
|
| AccessReasonDeniedAce=0x00020000,
|
| AccessReasonAllowedParentAce=0x00030000,
|
| AccessReasonDeniedParentAce=0x00040000,
|
| AccessReasonNotGrantedByCape=0x00050000,
|
| AccessReasonNotGrantedByParentCape=0x00060000,
|
| AccessReasonNotGrantedToAppContainer=0x00070000,
|
| AccessReasonMissingPrivilege=0x00100000,
|
| AccessReasonFromPrivilege=0x00200000,
|
| AccessReasonIntegrityLevel=0x00300000,
|
| AccessReasonOwnership=0x00400000,
|
| AccessReasonNullDacl=0x00500000,
|
| AccessReasonEmptyDacl=0x00600000,
|
| AccessReasonNoSD=0x00700000,
|
| AccessReasonNoGrant=0x00800000,
|
| AccessReasonTrustLabel=0x00900000,
|
| AccessReasonFilterAce=0x00a00000
|
| };
|
| //---
|
| enum SECURITY_IMPERSONATION_LEVEL
|
| {
|
| SecurityAnonymous,
|
| SecurityIdentification,
|
| SecurityImpersonation,
|
| SecurityDelegation
|
| };
|
| //---
|
| enum TOKEN_TYPE
|
| {
|
| TokenPrimary=1,
|
| TokenImpersonation
|
| };
|
| //---
|
| enum TOKEN_ELEVATION_TYPE
|
| {
|
| TokenElevationTypeDefault=1,
|
| TokenElevationTypeFull,
|
| TokenElevationTypeLimited
|
| };
|
| //---
|
| enum TOKEN_INFORMATION_CLASS
|
| {
|
| TokenUser=1,
|
| TokenGroups,
|
| TokenPrivileges,
|
| TokenOwner,
|
| TokenPrimaryGroup,
|
| TokenDefaultDacl,
|
| TokenSource,
|
| TokenType,
|
| TokenImpersonationLevel,
|
| TokenStatistics,
|
| TokenRestrictedSids,
|
| TokenSessionId,
|
| TokenGroupsAndPrivileges,
|
| TokenSessionReference,
|
| TokenSandBoxInert,
|
| TokenAuditPolicy,
|
| TokenOrigin,
|
| TokenElevationType,
|
| TokenLinkedToken,
|
| TokenElevation,
|
| TokenHasRestrictions,
|
| TokenAccessInformation,
|
| TokenVirtualizationAllowed,
|
| TokenVirtualizationEnabled,
|
| TokenIntegrityLevel,
|
| TokenUIAccess,
|
| TokenMandatoryPolicy,
|
| TokenLogonSid,
|
| TokenIsAppContainer,
|
| TokenCapabilities,
|
| TokenAppContainerSid,
|
| TokenAppContainerNumber,
|
| TokenUserClaimAttributes,
|
| TokenDeviceClaimAttributes,
|
| TokenRestrictedUserClaimAttributes,
|
| TokenRestrictedDeviceClaimAttributes,
|
| TokenDeviceGroups,
|
| TokenRestrictedDeviceGroups,
|
| TokenSecurityAttributes,
|
| TokenIsRestricted,
|
| TokenProcessTrustLevel,
|
| TokenPrivateNameSpace,
|
| TokenSingletonAttributes,
|
| TokenBnoIsolation,
|
| TokenChildProcessFlags,
|
| MaxTokenInfoClass
|
| };
|
| //---
|
| enum MANDATORY_LEVEL
|
| {
|
| MandatoryLevelUntrusted=0,
|
| MandatoryLevelLow,
|
| MandatoryLevelMedium,
|
| MandatoryLevelHigh,
|
| MandatoryLevelSystem,
|
| MandatoryLevelSecureProcess,
|
| MandatoryLevelCount
|
| };
|
| //---
|
| enum SE_IMAGE_SIGNATURE_TYPE
|
| {
|
| SeImageSignatureNone=0,
|
| SeImageSignatureEmbedded,
|
| SeImageSignatureCache,
|
| SeImageSignatureCatalogCached,
|
| SeImageSignatureCatalogNotCached,
|
| SeImageSignatureCatalogHint,
|
| SeImageSignaturePackageCatalog
|
| };
|
| //---
|
| enum SE_LEARNING_MODE_DATA_TYPE
|
| {
|
| SeLearningModeInvalidType=0,
|
| SeLearningModeSettings,
|
| SeLearningModeMax
|
| };
|
| //---
|
| enum HARDWARE_COUNTER_TYPE
|
| {
|
| PMCCounter,
|
| MaxHardwareCounterType
|
| };
|
| //---
|
| enum PROCESS_MITIGATION_POLICY
|
| {
|
| ProcessDEPPolicy,
|
| ProcessASLRPolicy,
|
| ProcessDynamicCodePolicy,
|
| ProcessStrictHandleCheckPolicy,
|
| ProcessSystemCallDisablePolicy,
|
| ProcessMitigationOptionsMask,
|
| ProcessExtensionPointDisablePolicy,
|
| ProcessControlFlowGuardPolicy,
|
| ProcessSignaturePolicy,
|
| ProcessFontDisablePolicy,
|
| ProcessImageLoadPolicy,
|
| ProcessSystemCallFilterPolicy,
|
| ProcessPayloadRestrictionPolicy,
|
| ProcessChildProcessPolicy,
|
| MaxProcessMitigationPolicy
|
| };
|
| //---
|
| enum JOBOBJECT_RATE_CONTROL_TOLERANCE
|
| {
|
| ToleranceLow=1,
|
| ToleranceMedium,
|
| ToleranceHigh
|
| };
|
| //---
|
| enum JOBOBJECT_RATE_CONTROL_TOLERANCE_INTERVAL
|
| {
|
| ToleranceIntervalShort=1,
|
| ToleranceIntervalMedium,
|
| ToleranceIntervalLong
|
| };
|
| //---
|
| enum JOB_OBJECT_NET_RATE_CONTROL_FLAGS
|
| {
|
| JOB_OBJECT_NET_RATE_CONTROL_ENABLE=0x1,
|
| JOB_OBJECT_NET_RATE_CONTROL_MAX_BANDWIDTH=0x2,
|
| JOB_OBJECT_NET_RATE_CONTROL_DSCP_TAG=0x4,
|
| JOB_OBJECT_NET_RATE_CONTROL_VALID_FLAGS=0x7
|
| };
|
| //---
|
| enum JOB_OBJECT_IO_RATE_CONTROL_FLAGS
|
| {
|
| JOB_OBJECT_IO_RATE_CONTROL_ENABLE=0x1,
|
| JOB_OBJECT_IO_RATE_CONTROL_STANDALONE_VOLUME=0x2,
|
| JOB_OBJECT_IO_RATE_CONTROL_FORCE_UNIT_ACCESS_ALL=0x4,
|
| JOB_OBJECT_IO_RATE_CONTROL_FORCE_UNIT_ACCESS_ON_SOFT_CAP=0x8,
|
| JOB_OBJECT_IO_RATE_CONTROL_VALID_FLAGS=JOB_OBJECT_IO_RATE_CONTROL_ENABLE|
|
| JOB_OBJECT_IO_RATE_CONTROL_STANDALONE_VOLUME|
|
| JOB_OBJECT_IO_RATE_CONTROL_FORCE_UNIT_ACCESS_ALL|
|
| JOB_OBJECT_IO_RATE_CONTROL_FORCE_UNIT_ACCESS_ON_SOFT_CAP
|
| };
|
| //---
|
| enum JOBOBJECT_IO_ATTRIBUTION_CONTROL_FLAGS
|
| {
|
| JOBOBJECT_IO_ATTRIBUTION_CONTROL_ENABLE=0x1,
|
| JOBOBJECT_IO_ATTRIBUTION_CONTROL_DISABLE=0x2,
|
| JOBOBJECT_IO_ATTRIBUTION_CONTROL_VALID_FLAGS=0x3
|
| };
|
| //---
|
| enum JOBOBJECTINFOCLASS
|
| {
|
| JobObjectBasicAccountingInformation=1,
|
| JobObjectBasicLimitInformation,
|
| JobObjectBasicProcessIdList,
|
| JobObjectBasicUIRestrictions,
|
| JobObjectSecurityLimitInformation,
|
| JobObjectEndOfJobTimeInformation,
|
| JobObjectAssociateCompletionPortInformation,
|
| JobObjectBasicAndIoAccountingInformation,
|
| JobObjectExtendedLimitInformation,
|
| JobObjectJobSetInformation,
|
| JobObjectGroupInformation,
|
| JobObjectNotificationLimitInformation,
|
| JobObjectLimitViolationInformation,
|
| JobObjectGroupInformationEx,
|
| JobObjectCpuRateControlInformation,
|
| JobObjectCompletionFilter,
|
| JobObjectCompletionCounter,
|
| JobObjectReserved1Information=18,
|
| JobObjectReserved2Information,
|
| JobObjectReserved3Information,
|
| JobObjectReserved4Information,
|
| JobObjectReserved5Information,
|
| JobObjectReserved6Information,
|
| JobObjectReserved7Information,
|
| JobObjectReserved8Information,
|
| JobObjectReserved9Information,
|
| JobObjectReserved10Information,
|
| JobObjectReserved11Information,
|
| JobObjectReserved12Information,
|
| JobObjectReserved13Information,
|
| JobObjectReserved14Information=31,
|
| JobObjectNetRateControlInformation,
|
| JobObjectNotificationLimitInformation2,
|
| JobObjectLimitViolationInformation2,
|
| JobObjectCreateSilo,
|
| JobObjectSiloBasicInformation,
|
| JobObjectReserved15Information=37,
|
| JobObjectReserved16Information=38,
|
| JobObjectReserved17Information=39,
|
| JobObjectReserved18Information=40,
|
| JobObjectReserved19Information=41,
|
| JobObjectReserved20Information=42,
|
| JobObjectReserved21Information=43,
|
| JobObjectReserved22Information=44,
|
| JobObjectReserved23Information=45,
|
| JobObjectReserved24Information=46,
|
| JobObjectReserved25Information=47,
|
| MaxJobObjectInfoClass
|
| };
|
| //---
|
| enum SERVERSILO_STATE
|
| {
|
| SERVERSILO_INITING=0,
|
| SERVERSILO_STARTED,
|
| SERVERSILO_SHUTTING_DOWN,
|
| SERVERSILO_TERMINATING,
|
| SERVERSILO_TERMINATED
|
| };
|
| //---
|
| enum FIRMWARE_TYPE
|
| {
|
| FirmwareTypeUnknown,
|
| FirmwareTypeBios,
|
| FirmwareTypeUefi,
|
| FirmwareTypeMax
|
| };
|
| //---
|
| enum LOGICAL_PROCESSOR_RELATIONSHIP
|
| {
|
| RelationProcessorCore,
|
| RelationNumaNode,
|
| RelationCache,
|
| RelationProcessorPackage,
|
| RelationGroup,
|
| RelationAll=0xffff
|
| };
|
| //---
|
| enum PROCESSOR_CACHE_TYPE
|
| {
|
| CacheUnified,
|
| CacheInstruction,
|
| CacheData,
|
| CacheTrace
|
| };
|
| //---
|
| enum CPU_SET_INFORMATION_TYPE
|
| {
|
| CpuSetInformation
|
| };
|
| //---
|
| enum MEM_EXTENDED_PARAMETER_TYPE
|
| {
|
| MemExtendedParameterInvalidType=0,
|
| MemExtendedParameterAddressRequirements,
|
| MemExtendedParameterNumaNode,
|
| MemExtendedParameterPartitionHandle,
|
| MemExtendedParameterMax
|
| };
|
| //---
|
| enum SharedVirtualDiskSupportType
|
| {
|
| SharedVirtualDisksUnsupported=0,
|
| SharedVirtualDisksSupported=1,
|
| SharedVirtualDiskSnapshotsSupported=3,
|
| SharedVirtualDiskCDPSnapshotsSupported=7
|
| };
|
| //---
|
| enum SharedVirtualDiskHandleState
|
| {
|
| SharedVirtualDiskHandleStateNone=0,
|
| SharedVirtualDiskHandleStateFileShared=1,
|
| SharedVirtualDiskHandleStateHandleShared=3
|
| };
|
| //---
|
| enum SYSTEM_POWER_STATE
|
| {
|
| PowerSystemUnspecified=0,
|
| PowerSystemWorking=1,
|
| PowerSystemSleeping1=2,
|
| PowerSystemSleeping2=3,
|
| PowerSystemSleeping3=4,
|
| PowerSystemHibernate=5,
|
| PowerSystemShutdown=6,
|
| PowerSystemMaximum=7
|
| };
|
| //---
|
| enum DEVICE_POWER_STATE
|
| {
|
| PowerDeviceUnspecified=0,
|
| PowerDeviceD0,
|
| PowerDeviceD1,
|
| PowerDeviceD2,
|
| PowerDeviceD3,
|
| PowerDeviceMaximum
|
| };
|
| //---
|
| enum MONITOR_DISPLAY_STATE
|
| {
|
| PowerMonitorOff=0,
|
| PowerMonitorOn,
|
| PowerMonitorDim
|
| };
|
| //---
|
| enum USER_ACTIVITY_PRESENCE
|
| {
|
| PowerUserPresent=0,
|
| PowerUserNotPresent,
|
| PowerUserInactive,
|
| PowerUserMaximum,
|
| PowerUserInvalid=PowerUserMaximum
|
| };
|
| //---
|
| enum POWER_REQUEST_TYPE
|
| {
|
| PowerRequestDisplayRequired,
|
| PowerRequestSystemRequired,
|
| PowerRequestAwayModeRequired,
|
| PowerRequestExecutionRequired
|
| };
|
| //---
|
| enum POWER_MONITOR_REQUEST_TYPE
|
| {
|
| MonitorRequestTypeOff,
|
| MonitorRequestTypeOnAndPresent,
|
| MonitorRequestTypeToggleOn
|
| };
|
| //---
|
| enum POWER_PLATFORM_ROLE
|
| {
|
| PlatformRoleUnspecified=0,
|
| PlatformRoleDesktop,
|
| PlatformRoleMobile,
|
| PlatformRoleWorkstation,
|
| PlatformRoleEnterpriseServer,
|
| PlatformRoleSOHOServer,
|
| PlatformRoleAppliancePC,
|
| PlatformRolePerformanceServer,
|
| PlatformRoleSlate,
|
| PlatformRoleMaximum
|
| };
|
| //---
|
| enum HIBERFILE_BUCKET_SIZE
|
| {
|
| HiberFileBucket1GB=0,
|
| HiberFileBucket2GB,
|
| HiberFileBucket4GB,
|
| HiberFileBucket8GB,
|
| HiberFileBucket16GB,
|
| HiberFileBucket32GB,
|
| HiberFileBucketUnlimited,
|
| HiberFileBucketMax
|
| };
|
| //---
|
| enum IMAGE_AUX_SYMBOL_TYPE
|
| {
|
| IMAGE_AUX_SYMBOL_TYPE_TOKEN_DEF=1
|
| };
|
| //---
|
| enum IMPORT_OBJECT_TYPE
|
| {
|
| IMPORT_OBJECT_CODE=0,
|
| IMPORT_OBJECT_DATA=1,
|
| IMPORT_OBJECT_CONST=2
|
| };
|
| //---
|
| enum IMPORT_OBJECT_NAME_TYPE
|
| {
|
| IMPORT_OBJECT_ORDINAL=0,
|
| IMPORT_OBJECT_NAME=1,
|
| IMPORT_OBJECT_NAME_NO_PREFIX=2,
|
| IMPORT_OBJECT_NAME_UNDECORATE=3,
|
| IMPORT_OBJECT_NAME_EXPORTAS=4
|
| };
|
| //---
|
| enum ReplacesCorHdrNumericDefines
|
| {
|
| COMIMAGE_FLAGS_ILONLY=0x00000001,
|
| COMIMAGE_FLAGS_32BITREQUIRED=0x00000002,
|
| COMIMAGE_FLAGS_IL_LIBRARY=0x00000004,
|
| COMIMAGE_FLAGS_STRONGNAMESIGNED=0x00000008,
|
| COMIMAGE_FLAGS_NATIVE_ENTRYPOINT=0x00000010,
|
| COMIMAGE_FLAGS_TRACKDEBUGDATA=0x00010000,
|
| COMIMAGE_FLAGS_32BITPREFERRED=0x00020000,
|
| COR_VERSION_MAJOR_V2=2,
|
| COR_VERSION_MAJOR=COR_VERSION_MAJOR_V2,
|
| COR_VERSION_MINOR=5,
|
| COR_DELETED_NAME_LENGTH=8,
|
| COR_VTABLEGAP_NAME_LENGTH=8,
|
| NATIVE_TYPE_MAX_CB=1,
|
| COR_ILMETHOD_SECT_SMALL_MAX_DATASIZE=0xFF,
|
| IMAGE_COR_MIH_METHODRVA=0x01,
|
| IMAGE_COR_MIH_EHRVA=0x02,
|
| IMAGE_COR_MIH_BASICBLOCK=0x08,
|
| COR_VTABLE_32BIT=0x01,
|
| COR_VTABLE_64BIT=0x02,
|
| COR_VTABLE_FROM_UNMANAGED=0x04,
|
| COR_VTABLE_FROM_UNMANAGED_RETAIN_APPDOMAIN=0x08,
|
| COR_VTABLE_CALL_MOST_DERIVED=0x10,
|
| IMAGE_COR_EATJ_THUNK_SIZE=32,
|
| MAX_CLASS_NAME=1024,
|
| MAX_PACKAGE_NAME=1024
|
| };
|
| //---
|
| enum RTL_UMS_THREAD_INFO_CLASS
|
| {
|
| UmsThreadInvalidInfoClass=0,
|
| UmsThreadUserContext,
|
| UmsThreadPriority,
|
| UmsThreadAffinity,
|
| UmsThreadTeb,
|
| UmsThreadIsSuspended,
|
| UmsThreadIsTerminated,
|
| UmsThreadMaxInfoClass
|
| };
|
| //---
|
| enum RTL_UMS_SCHEDULER_REASON
|
| {
|
| UmsSchedulerStartup=0,
|
| UmsSchedulerThreadBlocked,
|
| UmsSchedulerThreadYield
|
| };
|
| //---
|
| enum OS_DEPLOYEMENT_STATE_VALUES
|
| {
|
| OS_DEPLOYMENT_STANDARD=1,
|
| OS_DEPLOYMENT_COMPACT
|
| };
|
| //---
|
| enum IMAGE_POLICY_ENTRY_TYPE
|
| {
|
| ImagePolicyEntryTypeNone=0,
|
| ImagePolicyEntryTypeBool,
|
| ImagePolicyEntryTypeInt8,
|
| ImagePolicyEntryTypeUInt8,
|
| ImagePolicyEntryTypeInt16,
|
| ImagePolicyEntryTypeUInt16,
|
| ImagePolicyEntryTypeInt32,
|
| ImagePolicyEntryTypeUInt32,
|
| ImagePolicyEntryTypeInt64,
|
| ImagePolicyEntryTypeUInt64,
|
| ImagePolicyEntryTypeAnsiString,
|
| ImagePolicyEntryTypeUnicodeString,
|
| ImagePolicyEntryTypeOverride,
|
| ImagePolicyEntryTypeMaximum
|
| };
|
| //---
|
| enum IMAGE_POLICY_ID
|
| {
|
| ImagePolicyIdNone=0,
|
| ImagePolicyIdEtw,
|
| ImagePolicyIdDebug,
|
| ImagePolicyIdCrashDump,
|
| ImagePolicyIdCrashDumpKey,
|
| ImagePolicyIdCrashDumpKeyGuid,
|
| ImagePolicyIdParentSd,
|
| ImagePolicyIdParentSdRev,
|
| ImagePolicyIdSvn,
|
| ImagePolicyIdDeviceId,
|
| ImagePolicyIdCapability,
|
| ImagePolicyIdScenarioId,
|
| ImagePolicyIdMaximum
|
| };
|
| //---
|
| enum HEAP_INFORMATION_CLASS
|
| {
|
| HeapCompatibilityInformation=0,
|
| HeapEnableTerminationOnCorruption=1,
|
| HeapOptimizeResources=3
|
| };
|
| //---
|
| enum ACTIVATION_CONTEXT_INFO_CLASS
|
| {
|
| ActivationContextBasicInformation=1,
|
| ActivationContextDetailedInformation=2,
|
| AssemblyDetailedInformationInActivationContext=3,
|
| FileInformationInAssemblyOfAssemblyInActivationContext=4,
|
| RunlevelInformationInActivationContext=5,
|
| CompatibilityInformationInActivationContext=6,
|
| ActivationContextManifestResourceName=7,
|
| MaxActivationContextInfoClass,
|
| AssemblyDetailedInformationInActivationContxt=3,
|
| FileInformationInAssemblyOfAssemblyInActivationContxt=4
|
| };
|
| //---
|
| enum SERVICE_NODE_TYPE
|
| {
|
| DriverType=0x00000001,
|
| FileSystemType=0x00000002,
|
| Win32ServiceOwnProcess=0x00000010,
|
| Win32ServiceShareProcess=0x00000020,
|
| AdapterType=0x00000004,
|
| RecognizerType=0x00000008
|
| };
|
| //---
|
| enum SERVICE_LOAD_TYPE
|
| {
|
| BootLoad=0x00000000,
|
| SystemLoad=0x00000001,
|
| AutoLoad=0x00000002,
|
| DemandLoad=0x00000003,
|
| DisableLoad=0x00000004
|
| };
|
| //---
|
| enum SERVICE_ERROR_TYPE
|
| {
|
| IgnoreError=0x00000000,
|
| NormalError=0x00000001,
|
| SevereError=0x00000002,
|
| CriticalError=0x00000003
|
| };
|
| //---
|
| enum TAPE_DRIVE_PROBLEM_TYPE
|
| {
|
| TapeDriveProblemNone,
|
| TapeDriveReadWriteWarning,
|
| TapeDriveReadWriteError,
|
| TapeDriveReadWarning,
|
| TapeDriveWriteWarning,
|
| TapeDriveReadError,
|
| TapeDriveWriteError,
|
| TapeDriveHardwareError,
|
| TapeDriveUnsupportedMedia,
|
| TapeDriveScsiConnectionError,
|
| TapeDriveTimetoClean,
|
| TapeDriveCleanDriveNow,
|
| TapeDriveMediaLifeExpired,
|
| TapeDriveSnappedTape
|
| };
|
| //---
|
| enum TRANSACTION_OUTCOME
|
| {
|
| TransactionOutcomeUndetermined=1,
|
| TransactionOutcomeCommitted,
|
| TransactionOutcomeAborted
|
| };
|
| //---
|
| enum TRANSACTION_STATE
|
| {
|
| TransactionStateNormal=1,
|
| TransactionStateIndoubt,
|
| TransactionStateCommittedNotify
|
| };
|
| //---
|
| enum TRANSACTION_INFORMATION_CLASS
|
| {
|
| TransactionBasicInformation,
|
| TransactionPropertiesInformation,
|
| TransactionEnlistmentInformation,
|
| TransactionSuperiorEnlistmentInformation,
|
| TransactionBindInformation,
|
| TransactionDTCPrivateInformation
|
| };
|
| //---
|
| enum TRANSACTIONMANAGER_INFORMATION_CLASS
|
| {
|
| TransactionManagerBasicInformation,
|
| TransactionManagerLogInformation,
|
| TransactionManagerLogPathInformation,
|
| TransactionManagerRecoveryInformation=4,
|
| TransactionManagerOnlineProbeInformation=3,
|
| TransactionManagerOldestTransactionInformation=5
|
| };
|
| //---
|
| enum RESOURCEMANAGER_INFORMATION_CLASS
|
| {
|
| ResourceManagerBasicInformation,
|
| ResourceManagerCompletionInformation
|
| };
|
| //---
|
| enum ENLISTMENT_INFORMATION_CLASS
|
| {
|
| EnlistmentBasicInformation,
|
| EnlistmentRecoveryInformation,
|
| EnlistmentCrmInformation
|
| };
|
| //---
|
| enum KTMOBJECT_TYPE
|
| {
|
| KTMOBJECT_TRANSACTION,
|
| KTMOBJECT_TRANSACTION_MANAGER,
|
| KTMOBJECT_RESOURCE_MANAGER,
|
| KTMOBJECT_ENLISTMENT,
|
| KTMOBJECT_INVALID
|
| };
|
| //---
|
| enum TP_CALLBACK_PRIORITY
|
| {
|
| TP_CALLBACK_PRIORITY_HIGH,
|
| TP_CALLBACK_PRIORITY_NORMAL,
|
| TP_CALLBACK_PRIORITY_LOW,
|
| TP_CALLBACK_PRIORITY_INVALID,
|
| TP_CALLBACK_PRIORITY_COUNT=TP_CALLBACK_PRIORITY_INVALID
|
| };
|
| //---
|
| enum POWER_USER_PRESENCE_TYPE
|
| {
|
| UserNotPresent=0,
|
| UserPresent=1,
|
| UserUnknown=0xff
|
| };
|
| //---
|
| enum POWER_MONITOR_REQUEST_REASON
|
| {
|
| MonitorRequestReasonUnknown,
|
| MonitorRequestReasonPowerButton,
|
| MonitorRequestReasonRemoteConnection,
|
| MonitorRequestReasonScMonitorpower,
|
| MonitorRequestReasonUserInput,
|
| MonitorRequestReasonAcDcDisplayBurst,
|
| MonitorRequestReasonUserDisplayBurst,
|
| MonitorRequestReasonPoSetSystemState,
|
| MonitorRequestReasonSetThreadExecutionState,
|
| MonitorRequestReasonFullWake,
|
| MonitorRequestReasonSessionUnlock,
|
| MonitorRequestReasonScreenOffRequest,
|
| MonitorRequestReasonIdleTimeout,
|
| MonitorRequestReasonPolicyChange,
|
| MonitorRequestReasonSleepButton,
|
| MonitorRequestReasonLid,
|
| MonitorRequestReasonBatteryCountChange,
|
| MonitorRequestReasonGracePeriod,
|
| MonitorRequestReasonPnP,
|
| MonitorRequestReasonDP,
|
| MonitorRequestReasonSxTransition,
|
| MonitorRequestReasonSystemIdle,
|
| MonitorRequestReasonNearProximity,
|
| MonitorRequestReasonThermalStandby,
|
| MonitorRequestReasonResumePdc,
|
| MonitorRequestReasonResumeS4,
|
| MonitorRequestReasonTerminal,
|
| MonitorRequestReasonPdcSignal,
|
| MonitorRequestReasonAcDcDisplayBurstSuppressed,
|
| MonitorRequestReasonSystemStateEntered,
|
| MonitorRequestReasonWinrt,
|
| MonitorRequestReasonUserInputKeyboard,
|
| MonitorRequestReasonUserInputMouse,
|
| MonitorRequestReasonUserInputTouch,
|
| MonitorRequestReasonUserInputPen,
|
| MonitorRequestReasonUserInputAccelerometer,
|
| MonitorRequestReasonUserInputHid,
|
| MonitorRequestReasonUserInputPoUserPresent,
|
| MonitorRequestReasonUserInputSessionSwitch,
|
| MonitorRequestReasonUserInputInitialization,
|
| MonitorRequestReasonPdcSignalWindowsMobilePwrNotif,
|
| MonitorRequestReasonPdcSignalWindowsMobileShell,
|
| MonitorRequestReasonPdcSignalHeyCortana,
|
| MonitorRequestReasonPdcSignalHolographicShell,
|
| MonitorRequestReasonPdcSignalFingerprint,
|
| MonitorRequestReasonMax
|
| };
|
| //---
|
| enum POWER_ACTION
|
| {
|
| PowerActionNone=0,
|
| PowerActionReserved,
|
| PowerActionSleep,
|
| PowerActionHibernate,
|
| PowerActionShutdown,
|
| PowerActionShutdownReset,
|
| PowerActionShutdownOff,
|
| PowerActionWarmEject,
|
| PowerActionDisplayOff
|
| };
|
| //---
|
| enum ACTCTX_REQUESTED_RUN_LEVEL
|
| {
|
| ACTCTX_RUN_LEVEL_UNSPECIFIED=0,
|
| ACTCTX_RUN_LEVEL_AS_INVOKER,
|
| ACTCTX_RUN_LEVEL_HIGHEST_AVAILABLE,
|
| ACTCTX_RUN_LEVEL_REQUIRE_ADMIN,
|
| ACTCTX_RUN_LEVEL_NUMBERS
|
| };
|
| //---
|
| enum ACTCTX_COMPATIBILITY_ELEMENT_TYPE
|
| {
|
| ACTCTX_COMPATIBILITY_ELEMENT_TYPE_UNKNOWN=0,
|
| ACTCTX_COMPATIBILITY_ELEMENT_TYPE_OS,
|
| ACTCTX_COMPATIBILITY_ELEMENT_TYPE_MITIGATION
|
| };
|
| //+------------------------------------------------------------------+
|
| //| |
|
| //+------------------------------------------------------------------+
|
| //---
|
| struct PROCESSOR_NUMBER
|
| {
|
| ushort Group;
|
| uchar Number;
|
| uchar Reserved;
|
| };
|
| //---
|
| struct GROUP_AFFINITY
|
| {
|
| ulong Mask;
|
| ushort Group;
|
| ushort Reserved[3];
|
| };
|
| //---
|
| struct FLOAT128
|
| {
|
| long LowPart;
|
| long HighPart;
|
| };
|
| //---
|
| struct LARGE_INTEGER
|
| {
|
| long QuadPart;
|
| };
|
| //---
|
| struct ULARGE_INTEGER
|
| {
|
| ulong QuadPart;
|
| };
|
| //---
|
| struct LUID
|
| {
|
| uint LowPart;
|
| int HighPart;
|
| };
|
| //---
|
| struct LIST_ENTRY
|
| {
|
| PVOID Flink;
|
| PVOID Blink;
|
| };
|
| //---
|
| struct SINGLE_LIST_ENTRY
|
| {
|
| PVOID Next;
|
| };
|
| //---
|
| struct LIST_ENTRY32
|
| {
|
| uint Flink;
|
| uint Blink;
|
| };
|
| //---
|
| struct LIST_ENTRY64
|
| {
|
| ulong Flink;
|
| ulong Blink;
|
| };
|
| //---
|
| struct OBJECTID
|
| {
|
| GUID Lineage;
|
| uint Uniquifier;
|
| };
|
| //---
|
| struct M128A
|
| {
|
| ulong Low;
|
| long High;
|
| };
|
| //---
|
| struct XSAVE_FORMAT
|
| {
|
| ushort Controlushort;
|
| ushort Statusushort;
|
| uchar Tagushort;
|
| uchar Reserved1;
|
| ushort ErrorOpcode;
|
| uint ErrorOffset;
|
| ushort ErrorSelector;
|
| ushort Reserved2;
|
| uint DataOffset;
|
| ushort DataSelector;
|
| ushort Reserved3;
|
| uint MxCsr;
|
| uint MxCsr_Mask;
|
| M128A FloatRegisters[8];
|
| M128A XmmRegisters[16];
|
| uchar Reserved4[96];
|
| };
|
| //---
|
| struct XSAVE_AREA_HEADER
|
| {
|
| ulong Mask;
|
| ulong CompactionMask;
|
| ulong Reserved2[6];
|
| };
|
| //---
|
| struct XSAVE_AREA
|
| {
|
| XSAVE_FORMAT LegacyState;
|
| XSAVE_AREA_HEADER Header;
|
| };
|
| //---
|
| struct XSTATE_CONTEXT
|
| {
|
| ulong Mask;
|
| uint Length;
|
| uint Reserved1;
|
| PVOID Area;
|
| uint Reserved2;
|
| PVOID Buffer;
|
| uint Reserved3;
|
| };
|
| //---
|
| struct SCOPE_TABLE_AMD64
|
| {
|
| uint Count;
|
| uint BeginAddress;
|
| uint EndAddress;
|
| uint HandlerAddress;
|
| uint JumpTarget;
|
| };
|
| //---
|
| struct UNWIND_HISTORY_TABLE_ENTRY
|
| {
|
| ulong ImageBase;
|
| PVOID FunctionEntry;
|
| };
|
| //---
|
| struct UNWIND_HISTORY_TABLE
|
| {
|
| uint Count;
|
| uchar LocalHint;
|
| uchar GlobalHint;
|
| uchar Search;
|
| uchar Once;
|
| ulong LowAddress;
|
| ulong HighAddress;
|
| UNWIND_HISTORY_TABLE_ENTRY Entry[UNWIND_HISTORY_TABLE_SIZE];
|
| };
|
| //---
|
| struct SCOPE_TABLE_ARM64
|
| {
|
| uint Count;
|
| uint BeginAddress;
|
| uint EndAddress;
|
| uint HandlerAddress;
|
| uint JumpTarget;
|
| };
|
| //---
|
| struct NEON128
|
| {
|
| ulong Low;
|
| long High;
|
| };
|
| //---
|
| struct DISPATCHER_CONTEXT
|
| {
|
| uint ControlPc;
|
| uint ImageBase;
|
| PVOID FunctionEntry;
|
| uint EstablisherFrame;
|
| uint TargetPc;
|
| PVOID ContextRecord;
|
| PVOID LanguageHandler;
|
| PVOID HandlerData;
|
| PVOID HistoryTable;
|
| uint ScopeIndex;
|
| uchar ControlPcIsUnwound;
|
| PVOID NonVolatileRegisters;
|
| uint Reserved;
|
| };
|
| //---
|
| struct KNONVOLATILE_CONTEXT_POINTERS
|
| {
|
| PVOID FloatingContext[16];
|
| PVOID IntegerContext[16];
|
| };
|
| //---
|
| struct SCOPE_TABLE_ARM
|
| {
|
| uint Count;
|
| uint BeginAddress;
|
| uint EndAddress;
|
| uint HandlerAddress;
|
| uint JumpTarget;
|
| };
|
| //---
|
| struct DISPATCHER_CONTEXT_ARM64
|
| {
|
| ulong ControlPc;
|
| ulong ImageBase;
|
| PVOID FunctionEntry;
|
| ulong EstablisherFrame;
|
| ulong TargetPc;
|
| PVOID ContextRecord;
|
| PVOID LanguageHandler;
|
| PVOID HandlerData;
|
| PVOID HistoryTable;
|
| uint ScopeIndex;
|
| uchar ControlPcIsUnwound;
|
| PVOID NonVolatileRegisters;
|
| };
|
| //---
|
| struct KNONVOLATILE_CONTEXT_POINTERS_ARM64
|
| {
|
| PVOID X19;
|
| PVOID X20;
|
| PVOID X21;
|
| PVOID X22;
|
| PVOID X23;
|
| PVOID X24;
|
| PVOID X25;
|
| PVOID X26;
|
| PVOID X27;
|
| PVOID X28;
|
| PVOID Fp;
|
| PVOID Lr;
|
| PVOID D8;
|
| PVOID D9;
|
| PVOID D10;
|
| PVOID D11;
|
| PVOID D12;
|
| PVOID D13;
|
| PVOID D14;
|
| PVOID D15;
|
| };
|
| //---
|
| struct FLOATING_SAVE_AREA
|
| {
|
| uint Controlushort;
|
| uint Statusushort;
|
| uint Tagushort;
|
| uint ErrorOffset;
|
| uint ErrorSelector;
|
| uint DataOffset;
|
| uint DataSelector;
|
| uchar RegisterArea[SIZE_OF_80387_REGISTERS];
|
| uint Spare0;
|
| };
|
| //---
|
| struct CONTEXT
|
| {
|
| ulong P1Home;
|
| ulong P2Home;
|
| ulong P3Home;
|
| ulong P4Home;
|
| ulong P5Home;
|
| ulong P6Home;
|
| uint ContextFlags;
|
| uint MxCsr;
|
| ushort SegCs;
|
| ushort SegDs;
|
| ushort SegEs;
|
| ushort SegFs;
|
| ushort SegGs;
|
| ushort SegSs;
|
| uint EFlags;
|
| ulong Dr0;
|
| ulong Dr1;
|
| ulong Dr2;
|
| ulong Dr3;
|
| ulong Dr6;
|
| ulong Dr7;
|
| ulong Rax;
|
| ulong Rcx;
|
| ulong Rdx;
|
| ulong Rbx;
|
| ulong Rsp;
|
| ulong Rbp;
|
| ulong Rsi;
|
| ulong Rdi;
|
| ulong R8;
|
| ulong R9;
|
| ulong R10;
|
| ulong R11;
|
| ulong R12;
|
| ulong R13;
|
| ulong R14;
|
| ulong R15;
|
| ulong Rip;
|
| M128A Header[2];
|
| M128A Legacy[8];
|
| M128A Xmm0;
|
| M128A Xmm1;
|
| M128A Xmm2;
|
| M128A Xmm3;
|
| M128A Xmm4;
|
| M128A Xmm5;
|
| M128A Xmm6;
|
| M128A Xmm7;
|
| M128A Xmm8;
|
| M128A Xmm9;
|
| M128A Xmm10;
|
| M128A Xmm11;
|
| M128A Xmm12;
|
| M128A Xmm13;
|
| M128A Xmm14;
|
| M128A Xmm15;
|
| M128A VectorRegister[26];
|
| ulong VectorControl;
|
| ulong DebugControl;
|
| ulong LastBranchToRip;
|
| ulong LastBranchFromRip;
|
| ulong LastExceptionToRip;
|
| ulong LastExceptionFromRip;
|
| };
|
| //---
|
| struct WOW64_FLOATING_SAVE_AREA
|
| {
|
| uint Controlushort;
|
| uint Statusushort;
|
| uint Tagushort;
|
| uint ErrorOffset;
|
| uint ErrorSelector;
|
| uint DataOffset;
|
| uint DataSelector;
|
| uchar RegisterArea[WOW64_SIZE_OF_80387_REGISTERS];
|
| uint Cr0NpxState;
|
| };
|
| //---
|
| struct WOW64_CONTEXT
|
| {
|
| uint ContextFlags;
|
| uint Dr0;
|
| uint Dr1;
|
| uint Dr2;
|
| uint Dr3;
|
| uint Dr6;
|
| uint Dr7;
|
| WOW64_FLOATING_SAVE_AREA FloatSave;
|
| uint SegGs;
|
| uint SegFs;
|
| uint SegEs;
|
| uint SegDs;
|
| uint Edi;
|
| uint Esi;
|
| uint Ebx;
|
| uint Edx;
|
| uint Ecx;
|
| uint Eax;
|
| uint Ebp;
|
| uint Eip;
|
| uint SegCs;
|
| uint EFlags;
|
| uint Esp;
|
| uint SegSs;
|
| uchar ExtendedRegisters[WOW64_MAXIMUM_SUPPORTED_EXTENSION];
|
| };
|
| //---
|
| struct WOW64_LDT_ENTRY
|
| {
|
| uint LimitLow;
|
| uint BaseLow;
|
| uchar BaseMid;
|
| uchar Flags1;
|
| uchar Flags2;
|
| uchar BaseHi;
|
| };
|
| //---
|
| struct WOW64_DESCRIPTOR_TABLE_ENTRY
|
| {
|
| uint Selector;
|
| WOW64_LDT_ENTRY Descriptor;
|
| };
|
| //---
|
| struct EXCEPTION_RECORD
|
| {
|
| uint ExceptionCode;
|
| uint ExceptionFlags;
|
| PVOID ExceptionRecord;
|
| PVOID ExceptionAddress;
|
| uint NumberParameters;
|
| PVOID ExceptionInformation[EXCEPTION_MAXIMUM_PARAMETERS];
|
| };
|
| //---
|
| struct EXCEPTION_RECORD32
|
| {
|
| uint ExceptionCode;
|
| uint ExceptionFlags;
|
| uint ExceptionRecord;
|
| uint ExceptionAddress;
|
| uint NumberParameters;
|
| uint ExceptionInformation[EXCEPTION_MAXIMUM_PARAMETERS];
|
| };
|
| //---
|
| struct EXCEPTION_RECORD64
|
| {
|
| uint ExceptionCode;
|
| uint ExceptionFlags;
|
| ulong ExceptionRecord;
|
| ulong ExceptionAddress;
|
| uint NumberParameters;
|
| uint __unusedAlignment;
|
| ulong ExceptionInformation[EXCEPTION_MAXIMUM_PARAMETERS];
|
| };
|
| //---
|
| struct EXCEPTION_POINTERS
|
| {
|
| PVOID ExceptionRecord;
|
| PVOID ContextRecord;
|
| };
|
| //---
|
| struct GENERIC_MAPPING
|
| {
|
| uint GenericRead;
|
| uint GenericWrite;
|
| uint GenericExecute;
|
| uint GenericAll;
|
| };
|
| //---
|
| struct LUID_AND_ATTRIBUTES
|
| {
|
| LUID Luid;
|
| uint Attributes;
|
| };
|
| //---
|
| struct SID_IDENTIFIER_AUTHORITY
|
| {
|
| uchar Value[6];
|
| };
|
| //---
|
| //---
|
| struct SID
|
| {
|
| uchar Revision;
|
| uchar SubAuthorityCount;
|
| SID_IDENTIFIER_AUTHORITY IdentifierAuthority;
|
| uint SubAuthority[ANYSIZE_ARRAY];
|
| };
|
| //---
|
| struct SID_AND_ATTRIBUTES
|
| {
|
| SID Sid;
|
| uint Attributes;
|
| };
|
| //---
|
| struct SID_AND_ATTRIBUTES_HASH
|
| {
|
| uint SidCount;
|
| PVOID SidAttr;
|
| ulong Hash[SID_HASH_SIZE];
|
| };
|
| //---
|
| struct ACL
|
| {
|
| uchar AclRevision;
|
| uchar Sbz1;
|
| ushort AclSize;
|
| ushort AceCount;
|
| ushort Sbz2;
|
| };
|
| //---
|
| struct ACE_HEADER
|
| {
|
| uchar AceType;
|
| uchar AceFlags;
|
| ushort AceSize;
|
| };
|
| //---
|
| struct ACCESS_ALLOWED_ACE
|
| {
|
| ACE_HEADER Header;
|
| uint Mask;
|
| uint SidStart;
|
| };
|
| //---
|
| struct ACCESS_DENIED_ACE
|
| {
|
| ACE_HEADER Header;
|
| uint Mask;
|
| uint SidStart;
|
| };
|
| //---
|
| struct SYSTEM_AUDIT_ACE
|
| {
|
| ACE_HEADER Header;
|
| uint Mask;
|
| uint SidStart;
|
| };
|
| //---
|
| struct SYSTEM_ALARM_ACE
|
| {
|
| ACE_HEADER Header;
|
| uint Mask;
|
| uint SidStart;
|
| };
|
| //---
|
| struct SYSTEM_RESOURCE_ATTRIBUTE_ACE
|
| {
|
| ACE_HEADER Header;
|
| uint Mask;
|
| uint SidStart;
|
| };
|
| //---
|
| struct SYSTEM_SCOPED_POLICY_ID_ACE
|
| {
|
| ACE_HEADER Header;
|
| uint Mask;
|
| uint SidStart;
|
| };
|
| //---
|
| struct SYSTEM_MANDATORY_LABEL_ACE
|
| {
|
| ACE_HEADER Header;
|
| uint Mask;
|
| uint SidStart;
|
| };
|
| //---
|
| struct SYSTEM_PROCESS_TRUST_LABEL_ACE
|
| {
|
| ACE_HEADER Header;
|
| uint Mask;
|
| uint SidStart;
|
| };
|
| //---
|
| struct SYSTEM_ACCESS_FILTER_ACE
|
| {
|
| ACE_HEADER Header;
|
| uint Mask;
|
| uint SidStart;
|
| };
|
| //---
|
| struct ACCESS_ALLOWED_OBJECT_ACE
|
| {
|
| ACE_HEADER Header;
|
| uint Mask;
|
| uint Flags;
|
| GUID ObjectType;
|
| GUID InheritedObjectType;
|
| uint SidStart;
|
| };
|
| //---
|
| struct ACCESS_DENIED_OBJECT_ACE
|
| {
|
| ACE_HEADER Header;
|
| uint Mask;
|
| uint Flags;
|
| GUID ObjectType;
|
| GUID InheritedObjectType;
|
| uint SidStart;
|
| };
|
| //---
|
| struct SYSTEM_AUDIT_OBJECT_ACE
|
| {
|
| ACE_HEADER Header;
|
| uint Mask;
|
| uint Flags;
|
| GUID ObjectType;
|
| GUID InheritedObjectType;
|
| uint SidStart;
|
| };
|
| //---
|
| struct SYSTEM_ALARM_OBJECT_ACE
|
| {
|
| ACE_HEADER Header;
|
| uint Mask;
|
| uint Flags;
|
| GUID ObjectType;
|
| GUID InheritedObjectType;
|
| uint SidStart;
|
| };
|
| //---
|
| struct ACCESS_ALLOWED_CALLBACK_ACE
|
| {
|
| ACE_HEADER Header;
|
| uint Mask;
|
| uint SidStart;
|
| };
|
| //---
|
| struct ACCESS_DENIED_CALLBACK_ACE
|
| {
|
| ACE_HEADER Header;
|
| uint Mask;
|
| uint SidStart;
|
| };
|
| //---
|
| struct SYSTEM_AUDIT_CALLBACK_ACE
|
| {
|
| ACE_HEADER Header;
|
| uint Mask;
|
| uint SidStart;
|
| };
|
| //---
|
| struct SYSTEM_ALARM_CALLBACK_ACE
|
| {
|
| ACE_HEADER Header;
|
| uint Mask;
|
| uint SidStart;
|
| };
|
| //---
|
| struct ACCESS_ALLOWED_CALLBACK_OBJECT_ACE
|
| {
|
| ACE_HEADER Header;
|
| uint Mask;
|
| uint Flags;
|
| GUID ObjectType;
|
| GUID InheritedObjectType;
|
| uint SidStart;
|
| };
|
| //---
|
| struct ACCESS_DENIED_CALLBACK_OBJECT_ACE
|
| {
|
| ACE_HEADER Header;
|
| uint Mask;
|
| uint Flags;
|
| GUID ObjectType;
|
| GUID InheritedObjectType;
|
| uint SidStart;
|
| };
|
| //---
|
| struct SYSTEM_AUDIT_CALLBACK_OBJECT_ACE
|
| {
|
| ACE_HEADER Header;
|
| uint Mask;
|
| uint Flags;
|
| GUID ObjectType;
|
| GUID InheritedObjectType;
|
| uint SidStart;
|
| };
|
| //---
|
| struct SYSTEM_ALARM_CALLBACK_OBJECT_ACE
|
| {
|
| ACE_HEADER Header;
|
| uint Mask;
|
| uint Flags;
|
| GUID ObjectType;
|
| GUID InheritedObjectType;
|
| uint SidStart;
|
| };
|
| //---
|
| struct ACL_REVISION_INFORMATION
|
| {
|
| uint AclRevision;
|
| };
|
| //---
|
| struct ACL_SIZE_INFORMATION
|
| {
|
| uint AceCount;
|
| uint AclBytesInUse;
|
| uint AclBytesFree;
|
| };
|
| //---
|
| struct SECURITY_DESCRIPTOR_RELATIVE
|
| {
|
| uchar Revision;
|
| uchar Sbz1;
|
| ushort Control;
|
| uint Owner;
|
| uint Group;
|
| uint Sacl;
|
| uint Dacl;
|
| };
|
| //---
|
| struct SECURITY_DESCRIPTOR
|
| {
|
| uchar Revision;
|
| uchar Sbz1;
|
| ushort Control;
|
| uchar offset[4];
|
| PVOID Owner;
|
| PVOID Group;
|
| PVOID Sacl;
|
| PVOID Dacl;
|
| };
|
| //---
|
| struct SECURITY_OBJECT_AI_PARAMS
|
| {
|
| uint Size;
|
| uint ConstraintMask;
|
| };
|
| //---
|
| struct OBJECT_TYPE_LIST
|
| {
|
| ushort Level;
|
| ushort Sbz;
|
| GUID ObjectType;
|
| };
|
| //---
|
| struct PRIVILEGE_SET
|
| {
|
| uint PrivilegeCount;
|
| uint Control;
|
| LUID_AND_ATTRIBUTES Privilege[ANYSIZE_ARRAY];
|
| };
|
| //---
|
| struct ACCESS_REASONS
|
| {
|
| uint Data[32];
|
| };
|
| //---
|
| struct SE_SECURITY_DESCRIPTOR
|
| {
|
| uint Size;
|
| uint Flags;
|
| PVOID SecurityDescriptor;
|
| };
|
| //---
|
| struct SE_ACCESS_REQUEST
|
| {
|
| uint Size;
|
| PVOID SeSecurityDescriptor;
|
| uint DesiredAccess;
|
| uint PreviouslyGrantedAccess;
|
| PVOID PrincipalSelfSid;
|
| PVOID GenericMapping;
|
| uint ObjectTypeListCount;
|
| PVOID ObjectTypeList;
|
| };
|
| //---
|
| struct SE_ACCESS_REPLY
|
| {
|
| uint Size;
|
| uint ResultListCount;
|
| PVOID GrantedAccess;
|
| uint AccessStatus;
|
| PVOID AccessReason;
|
| PVOID Privileges;
|
| };
|
| //---
|
| struct TOKEN_USER
|
| {
|
| SID_AND_ATTRIBUTES User;
|
| };
|
| //---
|
| struct SE_TOKEN_USER
|
| {
|
| TOKEN_USER TokenUser;
|
| SID Sid;
|
| };
|
| //---
|
| struct TOKEN_GROUPS
|
| {
|
| uint GroupCount;
|
| SID_AND_ATTRIBUTES Groups[ANYSIZE_ARRAY];
|
| };
|
| //---
|
| struct TOKEN_PRIVILEGES
|
| {
|
| uint PrivilegeCount;
|
| LUID_AND_ATTRIBUTES Privileges[ANYSIZE_ARRAY];
|
| };
|
| //---
|
| struct TOKEN_OWNER
|
| {
|
| PVOID Owner;
|
| };
|
| //---
|
| struct TOKEN_PRIMARY_GROUP
|
| {
|
| PVOID PrimaryGroup;
|
| };
|
| //---
|
| struct TOKEN_DEFAULT_DACL
|
| {
|
| PVOID DefaultDacl;
|
| };
|
| //---
|
| struct TOKEN_USER_CLAIMS
|
| {
|
| PVOID UserClaims;
|
| };
|
| //---
|
| struct TOKEN_DEVICE_CLAIMS
|
| {
|
| PVOID DeviceClaims;
|
| };
|
| //---
|
| struct TOKEN_GROUPS_AND_PRIVILEGES
|
| {
|
| uint SidCount;
|
| uint SidLength;
|
| PVOID Sids;
|
| uint RestrictedSidCount;
|
| uint RestrictedSidLength;
|
| PVOID RestrictedSids;
|
| uint PrivilegeCount;
|
| uint PrivilegeLength;
|
| PVOID Privileges;
|
| LUID AuthenticationId;
|
| };
|
| //---
|
| struct TOKEN_LINKED_TOKEN
|
| {
|
| HANDLE LinkedToken;
|
| };
|
| //---
|
| struct TOKEN_ELEVATION
|
| {
|
| uint TokenIsElevated;
|
| };
|
| //---
|
| struct TOKEN_MANDATORY_LABEL
|
| {
|
| SID_AND_ATTRIBUTES Label;
|
| };
|
| //---
|
| struct TOKEN_MANDATORY_POLICY
|
| {
|
| uint Policy;
|
| };
|
| //---
|
| struct TOKEN_ACCESS_INFORMATION
|
| {
|
| PVOID SidHash;
|
| PVOID RestrictedSidHash;
|
| PVOID Privileges;
|
| LUID AuthenticationId;
|
| TOKEN_TYPE TokenType;
|
| SECURITY_IMPERSONATION_LEVEL ImpersonationLevel;
|
| TOKEN_MANDATORY_POLICY MandatoryPolicy;
|
| uint Flags;
|
| uint AppContainerNumber;
|
| PVOID PackageSid;
|
| PVOID CapabilitiesHash;
|
| PVOID TrustLevelSid;
|
| PVOID SecurityAttributes;
|
| };
|
| //---
|
| struct TOKEN_AUDIT_POLICY
|
| {
|
| uchar PerUserPolicy[((POLICY_AUDIT_SUBCATEGORY_COUNT)>>1)+1];
|
| };
|
| //---
|
| struct TOKEN_SOURCE
|
| {
|
| char SourceName[TOKEN_SOURCE_LENGTH];
|
| LUID SourceIdentifier;
|
| };
|
| //---
|
| struct TOKEN_STATISTICS
|
| {
|
| LUID TokenId;
|
| LUID AuthenticationId;
|
| long ExpirationTime;
|
| TOKEN_TYPE TokenType;
|
| SECURITY_IMPERSONATION_LEVEL ImpersonationLevel;
|
| uint DynamicCharged;
|
| uint DynamicAvailable;
|
| uint GroupCount;
|
| uint PrivilegeCount;
|
| LUID ModifiedId;
|
| };
|
| //---
|
| struct TOKEN_CONTROL
|
| {
|
| LUID TokenId;
|
| LUID AuthenticationId;
|
| LUID ModifiedId;
|
| TOKEN_SOURCE TokenSource;
|
| };
|
| //---
|
| struct TOKEN_ORIGIN
|
| {
|
| LUID OriginatingLogonSession;
|
| };
|
| //---
|
| struct TOKEN_APPCONTAINER_INFORMATION
|
| {
|
| PVOID TokenAppContainer;
|
| };
|
| //---
|
| struct TOKEN_SID_INFORMATION
|
| {
|
| PVOID Sid;
|
| };
|
| //---
|
| struct TOKEN_BNO_ISOLATION_INFORMATION
|
| {
|
| string IsolationPrefix;
|
| uchar IsolationEnabled;
|
| };
|
| //---
|
| struct CLAIM_SECURITY_ATTRIBUTE_FQBN_VALUE
|
| {
|
| ulong Version;
|
| string Name;
|
| };
|
| //---
|
| struct CLAIM_SECURITY_ATTRIBUTE_OCTET_STRING_VALUE
|
| {
|
| PVOID pValue;
|
| uint ValueLength;
|
| };
|
| //---
|
| struct CLAIM_SECURITY_ATTRIBUTE_RELATIVE_V1
|
| {
|
| uint Name;
|
| ushort ValueType;
|
| ushort Reserved;
|
| uint Flags;
|
| uint ValueCount;
|
| uint pInt64[ANYSIZE_ARRAY];
|
| };
|
| //---
|
| struct Attribute
|
| {
|
| ushort Version;
|
| ushort Reserved;
|
| uint AttributeCount;
|
| PVOID pAttributeV1;
|
| };
|
| //---
|
| struct SECURITY_QUALITY_OF_SERVICE
|
| {
|
| uint Length;
|
| SECURITY_IMPERSONATION_LEVEL ImpersonationLevel;
|
| uchar ContextTrackingMode;
|
| uchar EffectiveOnly;
|
| };
|
| //---
|
| struct SE_IMPERSONATION_STATE
|
| {
|
| PVOID Token;
|
| uchar CopyOnOpen;
|
| uchar EffectiveOnly;
|
| SECURITY_IMPERSONATION_LEVEL Level;
|
| };
|
| //---
|
| struct SECURITY_CAPABILITIES
|
| {
|
| PVOID AppContainerSid;
|
| PVOID Capabilities;
|
| uint CapabilityCount;
|
| uint Reserved;
|
| };
|
| //---
|
| struct JOB_SET_ARRAY
|
| {
|
| HANDLE JobHandle;
|
| uint MemberLevel;
|
| uint Flags;
|
| };
|
| //---
|
| struct EXCEPTION_REGISTRATION_RECORD
|
| {
|
| PVOID Next;
|
| PVOID Handler;
|
| };
|
| //---
|
| struct NT_TIB
|
| {
|
| PVOID ExceptionList;
|
| PVOID StackBase;
|
| PVOID StackLimit;
|
| PVOID SubSystemTib;
|
| PVOID FiberData;
|
| PVOID ArbitraryUserPointer;
|
| PVOID Self;
|
| };
|
| //---
|
| struct UMS_CREATE_THREAD_ATTRIBUTES
|
| {
|
| uint UmsVersion;
|
| PVOID UmsContext;
|
| PVOID UmsCompletionList;
|
| };
|
| //---
|
| struct WOW64_ARCHITECTURE_INFORMATION
|
| {
|
| uint Info;
|
| };
|
| //---
|
| struct QUOTA_LIMITS
|
| {
|
| ulong PagedPoolLimit;
|
| ulong NonPagedPoolLimit;
|
| ulong MinimumWorkingSetSize;
|
| ulong MaximumWorkingSetSize;
|
| ulong PagefileLimit;
|
| long TimeLimit;
|
| };
|
| //---
|
| struct QUOTA_LIMITS_EX
|
| {
|
| ulong PagedPoolLimit;
|
| ulong NonPagedPoolLimit;
|
| ulong MinimumWorkingSetSize;
|
| ulong MaximumWorkingSetSize;
|
| ulong PagefileLimit;
|
| long TimeLimit;
|
| ulong WorkingSetLimit;
|
| ulong Reserved2;
|
| ulong Reserved3;
|
| ulong Reserved4;
|
| uint Flags;
|
| uint CpuRateLimit;
|
| };
|
| //---
|
| struct IO_COUNTERS
|
| {
|
| ulong ReadOperationCount;
|
| ulong WriteOperationCount;
|
| ulong OtherOperationCount;
|
| ulong ReadTransferCount;
|
| ulong WriteTransferCount;
|
| ulong OtherTransferCount;
|
| };
|
| //---
|
| struct JOBOBJECT_BASIC_ACCOUNTING_INFORMATION
|
| {
|
| long TotalUserTime;
|
| long TotalKernelTime;
|
| long ThisPeriodTotalUserTime;
|
| long ThisPeriodTotalKernelTime;
|
| uint TotalPageFaultCount;
|
| uint TotalProcesses;
|
| uint ActiveProcesses;
|
| uint TotalTerminatedProcesses;
|
| };
|
| //---
|
| struct JOBOBJECT_BASIC_LIMIT_INFORMATION
|
| {
|
| long PerProcessUserTimeLimit;
|
| long PerJobUserTimeLimit;
|
| uint LimitFlags;
|
| ulong MinimumWorkingSetSize;
|
| ulong MaximumWorkingSetSize;
|
| uint ActiveProcessLimit;
|
| ulong Affinity;
|
| uint PriorityClass;
|
| uint SchedulingClass;
|
| };
|
| //---
|
| struct JOBOBJECT_EXTENDED_LIMIT_INFORMATION
|
| {
|
| JOBOBJECT_BASIC_LIMIT_INFORMATION BasicLimitInformation;
|
| IO_COUNTERS IoInfo;
|
| ulong ProcessMemoryLimit;
|
| ulong JobMemoryLimit;
|
| ulong PeakProcessMemoryUsed;
|
| ulong PeakJobMemoryUsed;
|
| };
|
| //---
|
| struct JOBOBJECT_BASIC_PROCESS_ID_LIST
|
| {
|
| uint NumberOfAssignedProcesses;
|
| uint NumberOfProcessIdsInList;
|
| ulong ProcessIdList[1];
|
| };
|
| //---
|
| struct JOBOBJECT_BASIC_UI_RESTRICTIONS
|
| {
|
| uint UIRestrictionsClass;
|
| };
|
| //---
|
| struct JOBOBJECT_SECURITY_LIMIT_INFORMATION
|
| {
|
| uint SecurityLimitFlags;
|
| HANDLE JobToken;
|
| PVOID SidsToDisable;
|
| PVOID PrivilegesToDelete;
|
| PVOID RestrictedSids;
|
| };
|
| //---
|
| struct JOBOBJECT_END_OF_JOB_TIME_INFORMATION
|
| {
|
| uint EndOfJobTimeAction;
|
| };
|
| //---
|
| struct JOBOBJECT_ASSOCIATE_COMPLETION_PORT
|
| {
|
| PVOID CompletionKey;
|
| HANDLE CompletionPort;
|
| };
|
| //---
|
| struct JOBOBJECT_BASIC_AND_IO_ACCOUNTING_INFORMATION
|
| {
|
| JOBOBJECT_BASIC_ACCOUNTING_INFORMATION BasicInfo;
|
| IO_COUNTERS IoInfo;
|
| };
|
| //---
|
| struct JOBOBJECT_JOBSET_INFORMATION
|
| {
|
| uint MemberLevel;
|
| };
|
| //---
|
| struct JOBOBJECT_NOTIFICATION_LIMIT_INFORMATION
|
| {
|
| ulong IoReadBytesLimit;
|
| ulong IoWriteBytesLimit;
|
| long PerJobUserTimeLimit;
|
| ulong JobMemoryLimit;
|
| JOBOBJECT_RATE_CONTROL_TOLERANCE RateControlTolerance;
|
| JOBOBJECT_RATE_CONTROL_TOLERANCE_INTERVAL RateControlToleranceInterval;
|
| uint LimitFlags;
|
| };
|
| //---
|
| struct JOBOBJECT_LIMIT_VIOLATION_INFORMATION
|
| {
|
| uint LimitFlags;
|
| uint ViolationLimitFlags;
|
| ulong IoReadBytes;
|
| ulong IoReadBytesLimit;
|
| ulong IoWriteBytes;
|
| ulong IoWriteBytesLimit;
|
| long PerJobUserTime;
|
| long PerJobUserTimeLimit;
|
| ulong JobMemory;
|
| ulong JobMemoryLimit;
|
| JOBOBJECT_RATE_CONTROL_TOLERANCE RateControlTolerance;
|
| JOBOBJECT_RATE_CONTROL_TOLERANCE RateControlToleranceLimit;
|
| };
|
| //---
|
| struct JOBOBJECT_NET_RATE_CONTROL_INFORMATION
|
| {
|
| ulong MaxBandwidth;
|
| JOB_OBJECT_NET_RATE_CONTROL_FLAGS ControlFlags;
|
| uchar DscpTag;
|
| };
|
| //---
|
| struct JOBOBJECT_IO_RATE_CONTROL_INFORMATION_NATIVE
|
| {
|
| long MaxIops;
|
| long MaxBandwidth;
|
| long ReservationIops;
|
| string VolumeName;
|
| uint BaseIoSize;
|
| JOB_OBJECT_IO_RATE_CONTROL_FLAGS ControlFlags;
|
| ushort VolumeNameLength;
|
| };
|
| //---
|
| struct JOBOBJECT_IO_RATE_CONTROL_INFORMATION_NATIVE_V2
|
| {
|
| long MaxIops;
|
| long MaxBandwidth;
|
| long ReservationIops;
|
| string VolumeName;
|
| uint BaseIoSize;
|
| JOB_OBJECT_IO_RATE_CONTROL_FLAGS ControlFlags;
|
| ushort VolumeNameLength;
|
| long CriticalReservationIops;
|
| long ReservationBandwidth;
|
| long CriticalReservationBandwidth;
|
| long MaxTimePercent;
|
| long ReservationTimePercent;
|
| long CriticalReservationTimePercent;
|
| };
|
| //---
|
| struct JOBOBJECT_IO_RATE_CONTROL_INFORMATION_NATIVE_V3
|
| {
|
| long MaxIops;
|
| long MaxBandwidth;
|
| long ReservationIops;
|
| string VolumeName;
|
| uint BaseIoSize;
|
| JOB_OBJECT_IO_RATE_CONTROL_FLAGS ControlFlags;
|
| ushort VolumeNameLength;
|
| long CriticalReservationIops;
|
| long ReservationBandwidth;
|
| long CriticalReservationBandwidth;
|
| long MaxTimePercent;
|
| long ReservationTimePercent;
|
| long CriticalReservationTimePercent;
|
| long SoftMaxIops;
|
| long SoftMaxBandwidth;
|
| long SoftMaxTimePercent;
|
| long LimitExcessNotifyIops;
|
| long LimitExcessNotifyBandwidth;
|
| long LimitExcessNotifyTimePercent;
|
| };
|
| //---
|
| struct JOBOBJECT_IO_ATTRIBUTION_STATS
|
| {
|
| ulong IoCount;
|
| ulong TotalNonOverlappedQueueTime;
|
| ulong TotalNonOverlappedServiceTime;
|
| ulong TotalSize;
|
| };
|
| //---
|
| struct JOBOBJECT_IO_ATTRIBUTION_INFORMATION
|
| {
|
| uint ControlFlags;
|
| JOBOBJECT_IO_ATTRIBUTION_STATS ReadStats;
|
| JOBOBJECT_IO_ATTRIBUTION_STATS WriteStats;
|
| };
|
| //---
|
| struct SILOOBJECT_BASIC_INFORMATION
|
| {
|
| uint SiloId;
|
| uint SiloParentId;
|
| uint NumberOfProcesses;
|
| uchar IsInServerSilo;
|
| uchar Reserved[3];
|
| };
|
| //---
|
| struct SERVERSILO_BASIC_INFORMATION
|
| {
|
| uint ServiceSessionId;
|
| SERVERSILO_STATE State;
|
| uint ExitStatus;
|
| };
|
| //---
|
| struct CACHE_DESCRIPTOR
|
| {
|
| uchar Level;
|
| uchar Associativity;
|
| ushort LineSize;
|
| uint Size;
|
| PROCESSOR_CACHE_TYPE Type;
|
| };
|
| //---
|
| struct ProcessorCore
|
| {
|
| ulong ProcessorMask;
|
| LOGICAL_PROCESSOR_RELATIONSHIP Relationship;
|
| uchar Flags;
|
| };
|
| //---
|
| struct PROCESSOR_RELATIONSHIP
|
| {
|
| uchar Flags;
|
| uchar EfficiencyClass;
|
| uchar Reserved[20];
|
| ushort GroupCount;
|
| GROUP_AFFINITY GroupMask[ANYSIZE_ARRAY];
|
| };
|
| //---
|
| struct NUMA_NODE_RELATIONSHIP
|
| {
|
| uint NodeNumber;
|
| uchar Reserved[20];
|
| GROUP_AFFINITY GroupMask;
|
| };
|
| //---
|
| struct CACHE_RELATIONSHIP
|
| {
|
| uchar Level;
|
| uchar Associativity;
|
| ushort LineSize;
|
| uint CacheSize;
|
| PROCESSOR_CACHE_TYPE Type;
|
| uchar Reserved[20];
|
| GROUP_AFFINITY GroupMask;
|
| };
|
| //---
|
| struct PROCESSOR_GROUP_INFO
|
| {
|
| uchar MaximumProcessorCount;
|
| uchar ActiveProcessorCount;
|
| uchar Reserved[38];
|
| ulong ActiveProcessorMask;
|
| };
|
| //---
|
| struct GROUP_RELATIONSHIP
|
| {
|
| ushort MaximumGroupCount;
|
| ushort ActiveGroupCount;
|
| uchar Reserved[20];
|
| PROCESSOR_GROUP_INFO GroupInfo[ANYSIZE_ARRAY];
|
| };
|
| //---
|
| struct SYSTEM_PROCESSOR_CYCLE_TIME_INFORMATION
|
| {
|
| ulong CycleTime;
|
| };
|
| //---
|
| struct XSTATE_FEATURE
|
| {
|
| uint Offset;
|
| uint Size;
|
| };
|
| //---
|
| struct XSTATE_CONFIGURATION
|
| {
|
| ulong EnabledFeatures;
|
| ulong EnabledVolatileFeatures;
|
| uint Size;
|
| uint ControlFlags;
|
| XSTATE_FEATURE Features[MAXIMUM_XSTATE_FEATURES];
|
| ulong EnabledSupervisorFeatures;
|
| ulong AlignedFeatures;
|
| uint AllFeatureSize;
|
| uint AllFeatures[MAXIMUM_XSTATE_FEATURES];
|
| };
|
| //---
|
| struct MEMORY_BASIC_INFORMATION
|
| {
|
| PVOID BaseAddress;
|
| PVOID AllocationBase;
|
| uint AllocationProtect;
|
| ulong RegionSize;
|
| uint State;
|
| uint Protect;
|
| uint Type;
|
| };
|
| //---
|
| struct MEMORY_BASIC_INFORMATION32
|
| {
|
| uint BaseAddress;
|
| uint AllocationBase;
|
| uint AllocationProtect;
|
| uint RegionSize;
|
| uint State;
|
| uint Protect;
|
| uint Type;
|
| };
|
| //---
|
| struct MEMORY_BASIC_INFORMATION64
|
| {
|
| ulong BaseAddress;
|
| ulong AllocationBase;
|
| uint AllocationProtect;
|
| uint __alignment1;
|
| ulong RegionSize;
|
| uint State;
|
| uint Protect;
|
| uint Type;
|
| uint __alignment2;
|
| };
|
| //---
|
| struct CFG_CALL_TARGET_INFO
|
| {
|
| ulong Offset;
|
| ulong Flags;
|
| };
|
| //---
|
| struct MEM_ADDRESS_REQUIREMENTS
|
| {
|
| PVOID LowestStartingAddress;
|
| PVOID HighestEndingAddress;
|
| ulong Alignment;
|
| };
|
| //---
|
| struct ENCLAVE_CREATE_INFO_SGX
|
| {
|
| uchar Secs[4096];
|
| };
|
| //---
|
| struct ENCLAVE_INIT_INFO_SGX
|
| {
|
| uchar SigStruct[1808];
|
| uchar Reserved1[240];
|
| uchar EInitToken[304];
|
| uchar Reserved2[1744];
|
| };
|
| //---
|
| struct ENCLAVE_CREATE_INFO_VBS
|
| {
|
| uint Flags;
|
| uchar OwnerID[32];
|
| };
|
| //---
|
| struct ENCLAVE_INIT_INFO_VBS
|
| {
|
| uint Length;
|
| uint ThreadCount;
|
| };
|
| //---
|
| struct FILE_ID_128
|
| {
|
| uchar Identifier[16];
|
| };
|
| //---
|
| struct FILE_NOTIFY_INFORMATION
|
| {
|
| uint NextEntryOffset;
|
| uint Action;
|
| uint FileNameLength;
|
| short FileName[1];
|
| };
|
| //---
|
| struct FILE_NOTIFY_EXTENDED_INFORMATION
|
| {
|
| uint NextEntryOffset;
|
| uint Action;
|
| long CreationTime;
|
| long LastModificationTime;
|
| long LastChangeTime;
|
| long LastAccessTime;
|
| long AllocatedLength;
|
| long FileSize;
|
| uint FileAttributes;
|
| uint ReparsePointTag;
|
| long FileId;
|
| long ParentFileId;
|
| uint FileNameLength;
|
| short FileName[1];
|
| };
|
| //---
|
| struct GenericReparseBuffer
|
| {
|
| uint ReparseTag;
|
| ushort ReparseDataLength;
|
| ushort Reserved;
|
| GUID ReparseGuid;
|
| uchar DataBuffer[1];
|
| };
|
| //---
|
| struct SCRUB_DATA_INPUT
|
| {
|
| uint Size;
|
| uint Flags;
|
| uint MaximumIos;
|
| uint ObjectId[4];
|
| uint Reserved[13];
|
| uchar ResumeContext[816];
|
| };
|
| //---
|
| struct SCRUB_PARITY_EXTENT
|
| {
|
| long Offset;
|
| ulong Length;
|
| };
|
| //---
|
| struct SCRUB_PARITY_EXTENT_DATA
|
| {
|
| ushort Size;
|
| ushort Flags;
|
| ushort NumberOfParityExtents;
|
| ushort MaximumNumberOfParityExtents;
|
| SCRUB_PARITY_EXTENT ParityExtents[ANYSIZE_ARRAY];
|
| };
|
| //---
|
| struct SCRUB_DATA_OUTPUT
|
| {
|
| uint Size;
|
| uint Flags;
|
| uint Status;
|
| ulong ErrorFileOffset;
|
| ulong ErrorLength;
|
| ulong NumberOfBytesRepaired;
|
| ulong NumberOfBytesFailed;
|
| ulong InternalFileReference;
|
| ushort ResumeContextLength;
|
| ushort ParityExtentDataOffset;
|
| uint Reserved[5];
|
| uchar ResumeContext[816];
|
| };
|
| //---
|
| struct SHARED_VIRTUAL_DISK_SUPPORT
|
| {
|
| SharedVirtualDiskSupportType SharedVirtualDiskSupport;
|
| SharedVirtualDiskHandleState HandleState;
|
| };
|
| //---
|
| struct NETWORK_APP_INSTANCE_EA
|
| {
|
| GUID AppInstanceID;
|
| uint CsvFlags;
|
| };
|
| //---
|
| struct CM_POWER_DATA
|
| {
|
| uint PD_Size;
|
| DEVICE_POWER_STATE PD_MostRecentPowerState;
|
| uint PD_Capabilities;
|
| uint PD_D1Latency;
|
| uint PD_D2Latency;
|
| uint PD_D3Latency;
|
| DEVICE_POWER_STATE PD_PowerStateMapping[POWER_SYSTEM_MAXIMUM];
|
| SYSTEM_POWER_STATE PD_DeepestSystemWake;
|
| };
|
| //---
|
| struct POWER_USER_PRESENCE
|
| {
|
| POWER_USER_PRESENCE_TYPE UserPresence;
|
| };
|
| //---
|
| struct POWER_SESSION_CONNECT
|
| {
|
| uchar Connected;
|
| uchar Console;
|
| };
|
| //---
|
| struct POWER_SESSION_TIMEOUTS
|
| {
|
| uint InputTimeout;
|
| uint DisplayTimeout;
|
| };
|
| //---
|
| struct POWER_SESSION_RIT_STATE
|
| {
|
| uchar Active;
|
| uint LastInputTime;
|
| };
|
| //---
|
| struct POWER_SESSION_WINLOGON
|
| {
|
| uint SessionId;
|
| uchar Console;
|
| uchar Locked;
|
| };
|
| //---
|
| struct POWER_IDLE_RESILIENCY
|
| {
|
| uint CoalescingTimeout;
|
| uint IdleResiliencyPeriod;
|
| };
|
| //---
|
| struct POWER_MONITOR_INVOCATION
|
| {
|
| uchar Console;
|
| POWER_MONITOR_REQUEST_REASON RequestReason;
|
| };
|
| //---
|
| struct RESUME_PERFORMANCE
|
| {
|
| uint PostTimeMs;
|
| ulong TotalResumeTimeMs;
|
| ulong ResumeCompleteTimestamp;
|
| };
|
| //---
|
| struct APPLICATIONLAUNCH_SETTING_VALUE
|
| {
|
| long ActivationTime;
|
| uint Flags;
|
| uint ButtonInstanceID;
|
| };
|
| //---
|
| struct POWER_PLATFORM_INFORMATION
|
| {
|
| uchar AoAc;
|
| };
|
| //---
|
| struct POWER_ACTION_POLICY
|
| {
|
| POWER_ACTION Action;
|
| uint Flags;
|
| uint EventCode;
|
| };
|
| //---
|
| struct SYSTEM_POWER_LEVEL
|
| {
|
| uchar Enable;
|
| uchar Spare[3];
|
| uint BatteryLevel;
|
| POWER_ACTION_POLICY PowerPolicy;
|
| SYSTEM_POWER_STATE MinSystemState;
|
| };
|
| //---
|
| struct SYSTEM_POWER_POLICY
|
| {
|
| uint Revision;
|
| POWER_ACTION_POLICY PowerButton;
|
| POWER_ACTION_POLICY SleepButton;
|
| POWER_ACTION_POLICY LidClose;
|
| SYSTEM_POWER_STATE LidOpenWake;
|
| uint Reserved;
|
| POWER_ACTION_POLICY Idle;
|
| uint IdleTimeout;
|
| uchar IdleSensitivity;
|
| uchar DynamicThrottle;
|
| uchar Spare2[2];
|
| SYSTEM_POWER_STATE MinSleep;
|
| SYSTEM_POWER_STATE MaxSleep;
|
| SYSTEM_POWER_STATE ReducedLatencySleep;
|
| uint WinLogonFlags;
|
| uint Spare3;
|
| uint DozeS4Timeout;
|
| uint BroadcastCapacityResolution;
|
| SYSTEM_POWER_LEVEL DischargePolicy[NUM_DISCHARGE_POLICIES];
|
| uint VideoTimeout;
|
| uchar VideoDimDisplay;
|
| uint VideoReserved[3];
|
| uint SpindownTimeout;
|
| uchar OptimizeForPower;
|
| uchar FanThrottleTolerance;
|
| uchar ForcedThrottle;
|
| uchar MinThrottle;
|
| POWER_ACTION_POLICY OverThrottled;
|
| };
|
| //---
|
| struct PROCESSOR_POWER_POLICY_INFO
|
| {
|
| uint TimeCheck;
|
| uint DemoteLimit;
|
| uint PromoteLimit;
|
| uchar DemotePercent;
|
| uchar PromotePercent;
|
| uchar Spare[2];
|
| uint Flags;
|
| };
|
| //---
|
| struct PROCESSOR_POWER_POLICY
|
| {
|
| uint Revision;
|
| uchar DynamicThrottle;
|
| uchar Spare[3];
|
| uint Flags;
|
| uint PolicyCount;
|
| PROCESSOR_POWER_POLICY_INFO Policy[3];
|
| };
|
| //---
|
| struct ADMINISTRATOR_POWER_POLICY
|
| {
|
| SYSTEM_POWER_STATE MinSleep;
|
| SYSTEM_POWER_STATE MaxSleep;
|
| uint MinVideoTimeout;
|
| uint MaxVideoTimeout;
|
| uint MinSpindownTimeout;
|
| uint MaxSpindownTimeout;
|
| };
|
| //---
|
| struct HIBERFILE_BUCKET
|
| {
|
| ulong MaxPhysicalMemory;
|
| uint PhysicalMemoryPercent[HIBERFILE_TYPE_MAX];
|
| };
|
| //---
|
| struct IMAGE_DOS_HEADER
|
| {
|
| ushort e_magic;
|
| ushort e_cblp;
|
| ushort e_cp;
|
| ushort e_crlc;
|
| ushort e_cparhdr;
|
| ushort e_minalloc;
|
| ushort e_maxalloc;
|
| ushort e_ss;
|
| ushort e_sp;
|
| ushort e_csum;
|
| ushort e_ip;
|
| ushort e_cs;
|
| ushort e_lfarlc;
|
| ushort e_ovno;
|
| ushort e_res[4];
|
| ushort e_oemid;
|
| ushort e_oeminfo;
|
| ushort e_res2[10];
|
| int e_lfanew;
|
| };
|
| //---
|
| struct IMAGE_OS2_HEADER
|
| {
|
| ushort ne_magic;
|
| char ne_ver;
|
| char ne_rev;
|
| ushort ne_enttab;
|
| ushort ne_cbenttab;
|
| int ne_crc;
|
| ushort ne_flags;
|
| ushort ne_autodata;
|
| ushort ne_heap;
|
| ushort ne_stack;
|
| int ne_csip;
|
| int ne_sssp;
|
| ushort ne_cseg;
|
| ushort ne_cmod;
|
| ushort ne_cbnrestab;
|
| ushort ne_segtab;
|
| ushort ne_rsrctab;
|
| ushort ne_restab;
|
| ushort ne_modtab;
|
| ushort ne_imptab;
|
| int ne_nrestab;
|
| ushort ne_cmovent;
|
| ushort ne_align;
|
| ushort ne_cres;
|
| uchar ne_exetyp;
|
| uchar ne_flagsothers;
|
| ushort ne_pretthunks;
|
| ushort ne_psegrefbytes;
|
| ushort ne_swaparea;
|
| ushort ne_expver;
|
| };
|
| //---
|
| struct IMAGE_VXD_HEADER
|
| {
|
| ushort e32_magic;
|
| uchar e32_border;
|
| uchar e32_ushorter;
|
| uint e32_level;
|
| ushort e32_cpu;
|
| ushort e32_os;
|
| uint e32_ver;
|
| uint e32_mflags;
|
| uint e32_mpages;
|
| uint e32_startobj;
|
| uint e32_eip;
|
| uint e32_stackobj;
|
| uint e32_esp;
|
| uint e32_pagesize;
|
| uint e32_lastpagesize;
|
| uint e32_fixupsize;
|
| uint e32_fixupsum;
|
| uint e32_ldrsize;
|
| uint e32_ldrsum;
|
| uint e32_objtab;
|
| uint e32_objcnt;
|
| uint e32_objmap;
|
| uint e32_itermap;
|
| uint e32_rsrctab;
|
| uint e32_rsrccnt;
|
| uint e32_restab;
|
| uint e32_enttab;
|
| uint e32_dirtab;
|
| uint e32_dircnt;
|
| uint e32_fpagetab;
|
| uint e32_frectab;
|
| uint e32_impmod;
|
| uint e32_impmodcnt;
|
| uint e32_impproc;
|
| uint e32_pagesum;
|
| uint e32_datapage;
|
| uint e32_preload;
|
| uint e32_nrestab;
|
| uint e32_cbnrestab;
|
| uint e32_nressum;
|
| uint e32_autodata;
|
| uint e32_debuginfo;
|
| uint e32_debuglen;
|
| uint e32_instpreload;
|
| uint e32_instdemand;
|
| uint e32_heapsize;
|
| uchar e32_res3[12];
|
| uint e32_winresoff;
|
| uint e32_winreslen;
|
| ushort e32_devid;
|
| ushort e32_ddkver;
|
| };
|
| //---
|
| struct IMAGE_FILE_HEADER
|
| {
|
| ushort Machine;
|
| ushort NumberOfSections;
|
| uint TimeDateStamp;
|
| uint PointerToSymbolTable;
|
| uint NumberOfSymbols;
|
| ushort SizeOfOptionalHeader;
|
| ushort Characteristics;
|
| };
|
| //---
|
| struct IMAGE_DATA_DIRECTORY
|
| {
|
| uint VirtualAddress;
|
| uint Size;
|
| };
|
| //---
|
| struct IMAGE_OPTIONAL_HEADER32
|
| {
|
| ushort Magic;
|
| uchar MajorLinkerVersion;
|
| uchar MinorLinkerVersion;
|
| uint SizeOfCode;
|
| uint SizeOfInitializedData;
|
| uint SizeOfUninitializedData;
|
| uint AddressOfEntryPoint;
|
| uint BaseOfCode;
|
| uint BaseOfData;
|
| uint ImageBase;
|
| uint SectionAlignment;
|
| uint FileAlignment;
|
| ushort MajorOperatingSystemVersion;
|
| ushort MinorOperatingSystemVersion;
|
| ushort MajorImageVersion;
|
| ushort MinorImageVersion;
|
| ushort MajorSubsystemVersion;
|
| ushort MinorSubsystemVersion;
|
| uint Win32VersionValue;
|
| uint SizeOfImage;
|
| uint SizeOfHeaders;
|
| uint CheckSum;
|
| ushort Subsystem;
|
| ushort DllCharacteristics;
|
| uint SizeOfStackReserve;
|
| uint SizeOfStackCommit;
|
| uint SizeOfHeapReserve;
|
| uint SizeOfHeapCommit;
|
| uint LoaderFlags;
|
| uint NumberOfRvaAndSizes;
|
| IMAGE_DATA_DIRECTORY DataDirectory[IMAGE_NUMBEROF_DIRECTORY_ENTRIES];
|
| };
|
| //---
|
| struct IMAGE_ROM_OPTIONAL_HEADER
|
| {
|
| ushort Magic;
|
| uchar MajorLinkerVersion;
|
| uchar MinorLinkerVersion;
|
| uint SizeOfCode;
|
| uint SizeOfInitializedData;
|
| uint SizeOfUninitializedData;
|
| uint AddressOfEntryPoint;
|
| uint BaseOfCode;
|
| uint BaseOfData;
|
| uint BaseOfBss;
|
| uint GprMask;
|
| uint CprMask[4];
|
| uint GpValue;
|
| };
|
| //---
|
| struct IMAGE_OPTIONAL_HEADER64
|
| {
|
| ushort Magic;
|
| uchar MajorLinkerVersion;
|
| uchar MinorLinkerVersion;
|
| uint SizeOfCode;
|
| uint SizeOfInitializedData;
|
| uint SizeOfUninitializedData;
|
| uint AddressOfEntryPoint;
|
| uint BaseOfCode;
|
| ulong ImageBase;
|
| uint SectionAlignment;
|
| uint FileAlignment;
|
| ushort MajorOperatingSystemVersion;
|
| ushort MinorOperatingSystemVersion;
|
| ushort MajorImageVersion;
|
| ushort MinorImageVersion;
|
| ushort MajorSubsystemVersion;
|
| ushort MinorSubsystemVersion;
|
| uint Win32VersionValue;
|
| uint SizeOfImage;
|
| uint SizeOfHeaders;
|
| uint CheckSum;
|
| ushort Subsystem;
|
| ushort DllCharacteristics;
|
| ulong SizeOfStackReserve;
|
| ulong SizeOfStackCommit;
|
| ulong SizeOfHeapReserve;
|
| ulong SizeOfHeapCommit;
|
| uint LoaderFlags;
|
| uint NumberOfRvaAndSizes;
|
| IMAGE_DATA_DIRECTORY DataDirectory[IMAGE_NUMBEROF_DIRECTORY_ENTRIES];
|
| };
|
| //---
|
| struct IMAGE_NT_HEADERS64
|
| {
|
| uint Signature;
|
| IMAGE_FILE_HEADER FileHeader;
|
| IMAGE_OPTIONAL_HEADER64 OptionalHeader;
|
| };
|
| //---
|
| struct IMAGE_NT_HEADERS32
|
| {
|
| uint Signature;
|
| IMAGE_FILE_HEADER FileHeader;
|
| IMAGE_OPTIONAL_HEADER32 OptionalHeader;
|
| };
|
| //---
|
| struct IMAGE_ROM_HEADERS
|
| {
|
| IMAGE_FILE_HEADER FileHeader;
|
| IMAGE_ROM_OPTIONAL_HEADER OptionalHeader;
|
| };
|
| //---
|
| struct ANON_OBJECT_HEADER
|
| {
|
| ushort Sig1;
|
| ushort Sig2;
|
| ushort Version;
|
| ushort Machine;
|
| uint TimeDateStamp;
|
| GUID ClassID;
|
| uint SizeOfData;
|
| };
|
| //---
|
| struct ANON_OBJECT_HEADER_V2
|
| {
|
| ushort Sig1;
|
| ushort Sig2;
|
| ushort Version;
|
| ushort Machine;
|
| uint TimeDateStamp;
|
| GUID ClassID;
|
| uint SizeOfData;
|
| uint Flags;
|
| uint MetaDataSize;
|
| uint MetaDataOffset;
|
| };
|
| //---
|
| struct ANON_OBJECT_HEADER_BIGOBJ
|
| {
|
| ushort Sig1;
|
| ushort Sig2;
|
| ushort Version;
|
| ushort Machine;
|
| uint TimeDateStamp;
|
| GUID ClassID;
|
| uint SizeOfData;
|
| uint Flags;
|
| uint MetaDataSize;
|
| uint MetaDataOffset;
|
| uint NumberOfSections;
|
| uint PointerToSymbolTable;
|
| uint NumberOfSymbols;
|
| };
|
| //---
|
| struct IMAGE_SECTION_HEADER
|
| {
|
| uchar Name[IMAGE_SIZEOF_SHORT_NAME];
|
| uint PhysicalAddress;
|
| uint VirtualAddress;
|
| uint SizeOfRawData;
|
| uint PointerToRawData;
|
| uint PointerToRelocations;
|
| uint PointerToLinenumbers;
|
| ushort NumberOfRelocations;
|
| ushort NumberOfLinenumbers;
|
| uint Characteristics;
|
| };
|
| //---
|
| struct IMAGE_SYMBOL
|
| {
|
| uchar ShortName[8];
|
| uint Value;
|
| short SectionNumber;
|
| ushort Type;
|
| uchar StorageClass;
|
| uchar NumberOfAuxSymbols;
|
| };
|
| //---
|
| struct IMAGE_SYMBOL_EX
|
| {
|
| uchar ShortName[8];
|
| uint Value;
|
| int SectionNumber;
|
| ushort Type;
|
| uchar StorageClass;
|
| uchar NumberOfAuxSymbols;
|
| };
|
| //---
|
| struct IMAGE_AUX_SYMBOL_TOKEN_DEF
|
| {
|
| uchar bAuxType;
|
| uchar bReserved;
|
| uint SymbolTableIndex;
|
| uchar rgbReserved[12];
|
| };
|
| //---
|
| struct IMAGE_LINENUMBER
|
| {
|
| uint VirtualAddress;
|
| ushort Linenumber;
|
| };
|
| //---
|
| struct IMAGE_BASE_RELOCATION
|
| {
|
| uint VirtualAddress;
|
| uint SizeOfBlock;
|
| };
|
| //---
|
| struct IMAGE_ARCHIVE_MEMBER_HEADER
|
| {
|
| uchar Name[16];
|
| uchar Date[12];
|
| uchar UserID[6];
|
| uchar GroupID[6];
|
| uchar Mode[8];
|
| uchar Size[10];
|
| uchar EndHeader[2];
|
| };
|
| //---
|
| struct IMAGE_EXPORT_DIRECTORY
|
| {
|
| uint Characteristics;
|
| uint TimeDateStamp;
|
| ushort MajorVersion;
|
| ushort MinorVersion;
|
| uint Name;
|
| uint Base;
|
| uint NumberOfFunctions;
|
| uint NumberOfNames;
|
| uint AddressOfFunctions;
|
| uint AddressOfNames;
|
| uint AddressOfNameOrdinals;
|
| };
|
| //---
|
| struct IMAGE_IMPORT_BY_NAME
|
| {
|
| ushort Hint;
|
| char Name[1];
|
| };
|
| //---
|
| struct IMAGE_THUNK_DATA64
|
| {
|
| ulong Data;
|
| };
|
| //---
|
| struct IMAGE_THUNK_DATA32
|
| {
|
| uint Data;
|
| };
|
| //---
|
| struct IMAGE_BOUND_IMPORT_DESCRIPTOR
|
| {
|
| uint TimeDateStamp;
|
| ushort OffsetModuleName;
|
| ushort NumberOfModuleForwarderRefs;
|
| };
|
| //---
|
| struct IMAGE_BOUND_FORWARDER_REF
|
| {
|
| uint TimeDateStamp;
|
| ushort OffsetModuleName;
|
| ushort Reserved;
|
| };
|
| //---
|
| struct IMAGE_RESOURCE_DIRECTORY
|
| {
|
| uint Characteristics;
|
| uint TimeDateStamp;
|
| ushort MajorVersion;
|
| ushort MinorVersion;
|
| ushort NumberOfNamedEntries;
|
| ushort NumberOfIdEntries;
|
| };
|
| //---
|
| struct IMAGE_RESOURCE_DIRECTORY_STRING
|
| {
|
| ushort Length;
|
| char NameString[1];
|
| };
|
| //---
|
| struct IMAGE_RESOURCE_DIR_STRING_U
|
| {
|
| ushort Length;
|
| short NameString[1];
|
| };
|
| //---
|
| struct IMAGE_RESOURCE_DATA_ENTRY
|
| {
|
| uint OffsetToData;
|
| uint Size;
|
| uint CodePage;
|
| uint Reserved;
|
| };
|
| //---
|
| struct IMAGE_LOAD_CONFIG_CODE_INTEGRITY
|
| {
|
| ushort Flags;
|
| ushort Catalog;
|
| uint CatalogOffset;
|
| uint Reserved;
|
| };
|
| //---
|
| struct IMAGE_DYNAMIC_RELOCATION_TABLE
|
| {
|
| uint Version;
|
| uint Size;
|
| };
|
| //---
|
| struct IMAGE_DYNAMIC_RELOCATION32
|
| {
|
| uint Symbol;
|
| uint BaseRelocSize;
|
| };
|
| //---
|
| struct IMAGE_DYNAMIC_RELOCATION64
|
| {
|
| ulong Symbol;
|
| uint BaseRelocSize;
|
| };
|
| //---
|
| struct IMAGE_DYNAMIC_RELOCATION32_V2
|
| {
|
| uint HeaderSize;
|
| uint FixupInfoSize;
|
| uint Symbol;
|
| uint SymbolGroup;
|
| uint Flags;
|
| };
|
| //---
|
| struct IMAGE_DYNAMIC_RELOCATION64_V2
|
| {
|
| uint HeaderSize;
|
| uint FixupInfoSize;
|
| ulong Symbol;
|
| uint SymbolGroup;
|
| uint Flags;
|
| };
|
| //---
|
| struct IMAGE_PROLOGUE_DYNAMIC_RELOCATION_HEADER
|
| {
|
| uchar PrologueByteCount;
|
| };
|
| //---
|
| struct IMAGE_EPILOGUE_DYNAMIC_RELOCATION_HEADER
|
| {
|
| uint EpilogueCount;
|
| uchar EpilogueByteCount;
|
| uchar BranchDescriptorElementSize;
|
| ushort BranchDescriptorCount;
|
| };
|
| //---
|
| struct IMAGE_LOAD_CONFIG_DIRECTORY32
|
| {
|
| uint Size;
|
| uint TimeDateStamp;
|
| ushort MajorVersion;
|
| ushort MinorVersion;
|
| uint GlobalFlagsClear;
|
| uint GlobalFlagsSet;
|
| uint CriticalSectionDefaultTimeout;
|
| uint DeCommitFreeBlockThreshold;
|
| uint DeCommitTotalFreeThreshold;
|
| uint LockPrefixTable;
|
| uint MaximumAllocationSize;
|
| uint VirtualMemoryThreshold;
|
| uint ProcessHeapFlags;
|
| uint ProcessAffinityMask;
|
| ushort CSDVersion;
|
| ushort DependentLoadFlags;
|
| uint EditList;
|
| uint SecurityCookie;
|
| uint SEHandlerTable;
|
| uint SEHandlerCount;
|
| uint GuardCFCheckFunctionPointer;
|
| uint GuardCFDispatchFunctionPointer;
|
| uint GuardCFFunctionTable;
|
| uint GuardCFFunctionCount;
|
| uint GuardFlags;
|
| IMAGE_LOAD_CONFIG_CODE_INTEGRITY CodeIntegrity;
|
| uint GuardAddressTakenIatEntryTable;
|
| uint GuardAddressTakenIatEntryCount;
|
| uint GuardLongJumpTargetTable;
|
| uint GuardLongJumpTargetCount;
|
| uint DynamicValueRelocTable;
|
| uint CHPEMetadataPointer;
|
| uint GuardRFFailureRoutine;
|
| uint GuardRFFailureRoutineFunctionPointer;
|
| uint DynamicValueRelocTableOffset;
|
| ushort DynamicValueRelocTableSection;
|
| ushort Reserved2;
|
| uint GuardRFVerifyStackPointerFunctionPointer;
|
| uint HotPatchTableOffset;
|
| uint Reserved3;
|
| uint EnclaveConfigurationPointer;
|
| };
|
| //---
|
| struct IMAGE_LOAD_CONFIG_DIRECTORY64
|
| {
|
| uint Size;
|
| uint TimeDateStamp;
|
| ushort MajorVersion;
|
| ushort MinorVersion;
|
| uint GlobalFlagsClear;
|
| uint GlobalFlagsSet;
|
| uint CriticalSectionDefaultTimeout;
|
| ulong DeCommitFreeBlockThreshold;
|
| ulong DeCommitTotalFreeThreshold;
|
| ulong LockPrefixTable;
|
| ulong MaximumAllocationSize;
|
| ulong VirtualMemoryThreshold;
|
| ulong ProcessAffinityMask;
|
| uint ProcessHeapFlags;
|
| ushort CSDVersion;
|
| ushort DependentLoadFlags;
|
| ulong EditList;
|
| ulong SecurityCookie;
|
| ulong SEHandlerTable;
|
| ulong SEHandlerCount;
|
| ulong GuardCFCheckFunctionPointer;
|
| ulong GuardCFDispatchFunctionPointer;
|
| ulong GuardCFFunctionTable;
|
| ulong GuardCFFunctionCount;
|
| uint GuardFlags;
|
| IMAGE_LOAD_CONFIG_CODE_INTEGRITY CodeIntegrity;
|
| ulong GuardAddressTakenIatEntryTable;
|
| ulong GuardAddressTakenIatEntryCount;
|
| ulong GuardLongJumpTargetTable;
|
| ulong GuardLongJumpTargetCount;
|
| ulong DynamicValueRelocTable;
|
| ulong CHPEMetadataPointer;
|
| ulong GuardRFFailureRoutine;
|
| ulong GuardRFFailureRoutineFunctionPointer;
|
| uint DynamicValueRelocTableOffset;
|
| ushort DynamicValueRelocTableSection;
|
| ushort Reserved2;
|
| ulong GuardRFVerifyStackPointerFunctionPointer;
|
| uint HotPatchTableOffset;
|
| uint Reserved3;
|
| ulong EnclaveConfigurationPointer;
|
| };
|
| //---
|
| struct IMAGE_HOT_PATCH_INFO
|
| {
|
| uint Version;
|
| uint Size;
|
| uint SequenceNumber;
|
| uint BaseImageList;
|
| uint BaseImageCount;
|
| uint BufferOffset;
|
| };
|
| //---
|
| struct IMAGE_HOT_PATCH_BASE
|
| {
|
| uint SequenceNumber;
|
| uint Flags;
|
| uint OriginalTimeDateStamp;
|
| uint OriginalCheckSum;
|
| uint CodeIntegrityInfo;
|
| uint CodeIntegritySize;
|
| uint PatchTable;
|
| uint BufferOffset;
|
| };
|
| //---
|
| struct IMAGE_HOT_PATCH_HASHES
|
| {
|
| uchar SHA256[32];
|
| uchar SHA1[20];
|
| };
|
| //---
|
| struct IMAGE_CE_RUNTIME_FUNCTION_ENTRY
|
| {
|
| uint FuncStart;
|
| uint Flags;
|
| };
|
| //---
|
| struct IMAGE_ALPHA64_RUNTIME_FUNCTION_ENTRY
|
| {
|
| ulong BeginAddress;
|
| ulong EndAddress;
|
| ulong ExceptionHandler;
|
| ulong HandlerData;
|
| ulong PrologEndAddress;
|
| };
|
| //---
|
| struct IMAGE_ALPHA_RUNTIME_FUNCTION_ENTRY
|
| {
|
| uint BeginAddress;
|
| uint EndAddress;
|
| uint ExceptionHandler;
|
| uint HandlerData;
|
| uint PrologEndAddress;
|
| };
|
| //---
|
| struct IMAGE_ENCLAVE_CONFIG32
|
| {
|
| uint Size;
|
| uint MinimumRequiredConfigSize;
|
| uint PolicyFlags;
|
| uint NumberOfImports;
|
| uint ImportList;
|
| uint ImportEntrySize;
|
| uchar FamilyID[IMAGE_ENCLAVE_SHORT_ID_LENGTH];
|
| uchar ImageID[IMAGE_ENCLAVE_SHORT_ID_LENGTH];
|
| uint ImageVersion;
|
| uint SecurityVersion;
|
| uint EnclaveSize;
|
| uint NumberOfThreads;
|
| uint EnclaveFlags;
|
| };
|
| //---
|
| struct IMAGE_ENCLAVE_CONFIG64
|
| {
|
| uint Size;
|
| uint MinimumRequiredConfigSize;
|
| uint PolicyFlags;
|
| uint NumberOfImports;
|
| uint ImportList;
|
| uint ImportEntrySize;
|
| uchar FamilyID[IMAGE_ENCLAVE_SHORT_ID_LENGTH];
|
| uchar ImageID[IMAGE_ENCLAVE_SHORT_ID_LENGTH];
|
| uint ImageVersion;
|
| uint SecurityVersion;
|
| ulong EnclaveSize;
|
| uint NumberOfThreads;
|
| uint EnclaveFlags;
|
| };
|
| //---
|
| struct IMAGE_ENCLAVE_IMPORT
|
| {
|
| uint MatchType;
|
| uint MinimumSecurityVersion;
|
| uchar UniqueOrAuthorID[IMAGE_ENCLAVE_LONG_ID_LENGTH];
|
| uchar FamilyID[IMAGE_ENCLAVE_SHORT_ID_LENGTH];
|
| uchar ImageID[IMAGE_ENCLAVE_SHORT_ID_LENGTH];
|
| uint ImportName;
|
| uint Reserved;
|
| };
|
| //---
|
| struct IMAGE_DEBUG_DIRECTORY
|
| {
|
| uint Characteristics;
|
| uint TimeDateStamp;
|
| ushort MajorVersion;
|
| ushort MinorVersion;
|
| uint Type;
|
| uint SizeOfData;
|
| uint AddressOfRawData;
|
| uint PointerToRawData;
|
| };
|
| //---
|
| struct IMAGE_COFF_SYMBOLS_HEADER
|
| {
|
| uint NumberOfSymbols;
|
| uint LvaToFirstSymbol;
|
| uint NumberOfLinenumbers;
|
| uint LvaToFirstLinenumber;
|
| uint RvaToFirstByteOfCode;
|
| uint RvaToLastByteOfCode;
|
| uint RvaToFirstByteOfData;
|
| uint RvaToLastByteOfData;
|
| };
|
| //---
|
| struct FPO_DATA
|
| {
|
| uint ulOffStart;
|
| uint cbProcSize;
|
| uint cdwLocals;
|
| ushort cdwParams;
|
| ushort data;
|
| };
|
| //---
|
| struct IMAGE_DEBUG_MISC
|
| {
|
| uint DataType;
|
| uint Length;
|
| uchar Unicode;
|
| uchar Reserved[3];
|
| uchar Data[1];
|
| };
|
| //---
|
| struct IMAGE_FUNCTION_ENTRY
|
| {
|
| uint StartingAddress;
|
| uint EndingAddress;
|
| uint EndOfPrologue;
|
| };
|
| //---
|
| struct IMAGE_SEPARATE_DEBUG_HEADER
|
| {
|
| ushort Signature;
|
| ushort Flags;
|
| ushort Machine;
|
| ushort Characteristics;
|
| uint TimeDateStamp;
|
| uint CheckSum;
|
| uint ImageBase;
|
| uint SizeOfImage;
|
| uint NumberOfSections;
|
| uint ExportedNamesSize;
|
| uint DebugDirectorySize;
|
| uint SectionAlignment;
|
| uint Reserved[2];
|
| };
|
| //---
|
| struct NON_PAGED_DEBUG_INFO
|
| {
|
| ushort Signature;
|
| ushort Flags;
|
| uint Size;
|
| ushort Machine;
|
| ushort Characteristics;
|
| uint TimeDateStamp;
|
| uint CheckSum;
|
| uint SizeOfImage;
|
| ulong ImageBase;
|
| };
|
| //---
|
| struct IMAGE_ARCHITECTURE_HEADER
|
| {
|
| int mask;
|
| uint FirstEntryRVA;
|
| };
|
| //---
|
| struct IMAGE_ARCHITECTURE_ENTRY
|
| {
|
| uint FixupInstRVA;
|
| uint NewInst;
|
| };
|
| //---
|
| struct SLIST_ENTRY
|
| {
|
| PVOID Next;
|
| };
|
| //---
|
| struct RTL_BARRIER
|
| {
|
| uint Reserved1;
|
| uint Reserved2;
|
| ulong Reserved3[2];
|
| uint Reserved4;
|
| uint Reserved5;
|
| };
|
| //---
|
| struct MESSAGE_RESOURCE_ENTRY
|
| {
|
| ushort Length;
|
| ushort Flags;
|
| uchar Text[1];
|
| };
|
| //---
|
| struct MESSAGE_RESOURCE_BLOCK
|
| {
|
| uint LowId;
|
| uint HighId;
|
| uint OffsetToEntries;
|
| };
|
| //---
|
| struct MESSAGE_RESOURCE_DATA
|
| {
|
| uint NumberOfBlocks;
|
| MESSAGE_RESOURCE_BLOCK Blocks[1];
|
| };
|
| //---
|
| struct OSVERSIONINFOW
|
| {
|
| uint dwOSVersionInfoSize;
|
| uint dwMajorVersion;
|
| uint dwMinorVersion;
|
| uint dwBuildNumber;
|
| uint dwPlatformId;
|
| ushort szCSDVersion[128];
|
| };
|
| //---
|
| struct OSVERSIONINFOEXW
|
| {
|
| uint dwOSVersionInfoSize;
|
| uint dwMajorVersion;
|
| uint dwMinorVersion;
|
| uint dwBuildNumber;
|
| uint dwPlatformId;
|
| short szCSDVersion[128];
|
| ushort wServicePackMajor;
|
| ushort wServicePackMinor;
|
| ushort wSuiteMask;
|
| uchar wProductType;
|
| uchar wReserved;
|
| };
|
| //---
|
| struct NV_MEMORY_RANGE
|
| {
|
| PVOID BaseAddress;
|
| ulong Length;
|
| };
|
| //---
|
| struct CORRELATION_VECTOR
|
| {
|
| char Version;
|
| char Vector[RTL_CORRELATION_VECTOR_STRING_LENGTH];
|
| };
|
| //---
|
| struct CUSTOM_SYSTEM_EVENT_TRIGGER_CONFIG
|
| {
|
| uint Size;
|
| const string TriggerId;
|
| };
|
| //---
|
| struct IMAGE_POLICY_ENTRY
|
| {
|
| IMAGE_POLICY_ENTRY_TYPE Type;
|
| IMAGE_POLICY_ID PolicyId;
|
| PVOID Value;
|
| };
|
| //---
|
| struct IMAGE_POLICY_METADATA
|
| {
|
| uchar Version;
|
| uchar Reserved0[7];
|
| ulong ApplicationId;
|
| IMAGE_POLICY_ENTRY Policies[];
|
| };
|
| //---
|
| struct RTL_CRITICAL_SECTION_DEBUG
|
| {
|
| ushort Type;
|
| ushort CreatorBackTraceIndex;
|
| PVOID CriticalSection;
|
| LIST_ENTRY ProcessLocksList;
|
| uint EntryCount;
|
| uint ContentionCount;
|
| uint Flags;
|
| ushort CreatorBackTraceIndexHigh;
|
| ushort Spareushort;
|
| };
|
| //---
|
| struct RTL_CRITICAL_SECTION
|
| {
|
| PVOID DebugInfo;
|
| int LockCount;
|
| int RecursionCount;
|
| HANDLE OwningThread;
|
| HANDLE LockSemaphore;
|
| ulong SpinCount;
|
| };
|
| //---
|
| struct RTL_SRWLOCK
|
| {
|
| PVOID Ptr;
|
| };
|
| //---
|
| struct RTL_CONDITION_VARIABLE
|
| {
|
| PVOID Ptr;
|
| };
|
| //---
|
| struct HEAP_OPTIMIZE_RESOURCES_INFORMATION
|
| {
|
| uint Version;
|
| uint Flags;
|
| };
|
| //---
|
| struct ACTIVATION_CONTEXT_QUERY_INDEX
|
| {
|
| uint ulAssemblyIndex;
|
| uint ulFileIndexInAssembly;
|
| };
|
| //---
|
| struct ASSEMBLY_FILE_DETAILED_INFORMATION
|
| {
|
| uint ulFlags;
|
| uint ulFilenameLength;
|
| uint ulPathLength;
|
| const string lpFileName;
|
| const string lpFilePath;
|
| };
|
| //---
|
| struct ACTIVATION_CONTEXT_ASSEMBLY_DETAILED_INFORMATION
|
| {
|
| uint ulFlags;
|
| uint ulEncodedAssemblyIdentityLength;
|
| uint ulManifestPathType;
|
| uint ulManifestPathLength;
|
| long liManifestLastWriteTime;
|
| uint ulPolicyPathType;
|
| uint ulPolicyPathLength;
|
| long liPolicyLastWriteTime;
|
| uint ulMetadataSatelliteRosterIndex;
|
| uint ulManifestVersionMajor;
|
| uint ulManifestVersionMinor;
|
| uint ulPolicyVersionMajor;
|
| uint ulPolicyVersionMinor;
|
| uint ulAssemblyDirectoryNameLength;
|
| const string lpAssemblyEncodedAssemblyIdentity;
|
| const string lpAssemblyManifestPath;
|
| const string lpAssemblyPolicyPath;
|
| const string lpAssemblyDirectoryName;
|
| uint ulFileCount;
|
| };
|
| //---
|
| struct ACTIVATION_CONTEXT_RUN_LEVEL_INFORMATION
|
| {
|
| uint ulFlags;
|
| ACTCTX_REQUESTED_RUN_LEVEL RunLevel;
|
| uint UiAccess;
|
| };
|
| //---
|
| struct COMPATIBILITY_CONTEXT_ELEMENT
|
| {
|
| GUID Id;
|
| ACTCTX_COMPATIBILITY_ELEMENT_TYPE Type;
|
| };
|
| //---
|
| struct ACTIVATION_CONTEXT_COMPATIBILITY_INFORMATION
|
| {
|
| uint ElementCount;
|
| COMPATIBILITY_CONTEXT_ELEMENT Elements[];
|
| };
|
| //---
|
| struct SUPPORTED_OS_INFO
|
| {
|
| ushort MajorVersion;
|
| ushort MinorVersion;
|
| };
|
| //---
|
| struct ACTIVATION_CONTEXT_DETAILED_INFORMATION
|
| {
|
| uint dwFlags;
|
| uint ulFormatVersion;
|
| uint ulAssemblyCount;
|
| uint ulRootManifestPathType;
|
| uint ulRootManifestPathChars;
|
| uint ulRootConfigurationPathType;
|
| uint ulRootConfigurationPathChars;
|
| uint ulAppDirPathType;
|
| uint ulAppDirPathChars;
|
| const string lpRootManifestPath;
|
| const string lpRootConfigurationPath;
|
| const string lpAppDirPath;
|
| };
|
| //---
|
| struct HARDWARE_COUNTER_DATA
|
| {
|
| HARDWARE_COUNTER_TYPE Type;
|
| uint Reserved;
|
| ulong Value;
|
| };
|
| //---
|
| struct PERFORMANCE_DATA
|
| {
|
| ushort Size;
|
| uchar Version;
|
| uchar HwCountersCount;
|
| uint ContextSwitchCount;
|
| ulong WaitReasonBitMap;
|
| ulong CycleTime;
|
| uint RetryCount;
|
| uint Reserved;
|
| HARDWARE_COUNTER_DATA HwCounters[MAX_HW_COUNTERS];
|
| };
|
| //---
|
| struct EVENTLOGRECORD
|
| {
|
| uint Length;
|
| uint Reserved;
|
| uint RecordNumber;
|
| uint TimeGenerated;
|
| uint TimeWritten;
|
| uint EventID;
|
| ushort EventType;
|
| ushort NumStrings;
|
| ushort EventCategory;
|
| ushort ReservedFlags;
|
| uint ClosingRecordNumber;
|
| uint StringOffset;
|
| uint UserSidLength;
|
| uint UserSidOffset;
|
| uint DataLength;
|
| uint DataOffset;
|
| };
|
| //---
|
| struct TAPE_ERASE
|
| {
|
| uint Type;
|
| uchar Immediate;
|
| };
|
| //---
|
| struct TAPE_PREPARE
|
| {
|
| uint Operation;
|
| uchar Immediate;
|
| };
|
| //---
|
| struct TAPE_WRITE_MARKS
|
| {
|
| uint Type;
|
| uint Count;
|
| uchar Immediate;
|
| };
|
| //---
|
| struct TAPE_GET_POSITION
|
| {
|
| uint Type;
|
| uint Partition;
|
| long Offset;
|
| };
|
| //---
|
| struct TAPE_SET_POSITION
|
| {
|
| uint Method;
|
| uint Partition;
|
| long Offset;
|
| uchar Immediate;
|
| };
|
| //---
|
| struct TAPE_GET_DRIVE_PARAMETERS
|
| {
|
| uchar ECC;
|
| uchar Compression;
|
| uchar DataPadding;
|
| uchar ReportSetmarks;
|
| uint DefaultBlockSize;
|
| uint MaximumBlockSize;
|
| uint MinimumBlockSize;
|
| uint MaximumPartitionCount;
|
| uint FeaturesLow;
|
| uint FeaturesHigh;
|
| uint EOTWarningZoneSize;
|
| };
|
| //---
|
| struct TAPE_SET_DRIVE_PARAMETERS
|
| {
|
| uchar ECC;
|
| uchar Compression;
|
| uchar DataPadding;
|
| uchar ReportSetmarks;
|
| uint EOTWarningZoneSize;
|
| };
|
| //---
|
| struct TAPE_GET_MEDIA_PARAMETERS
|
| {
|
| long Capacity;
|
| long Remaining;
|
| uint BlockSize;
|
| uint PartitionCount;
|
| uchar WriteProtected;
|
| };
|
| //---
|
| struct TAPE_SET_MEDIA_PARAMETERS
|
| {
|
| uint BlockSize;
|
| };
|
| //---
|
| struct TAPE_CREATE_PARTITION
|
| {
|
| uint Method;
|
| uint Count;
|
| uint Size;
|
| };
|
| //---
|
| struct TAPE_WMI_OPERATIONS
|
| {
|
| uint Method;
|
| uint DataBufferSize;
|
| PVOID DataBuffer;
|
| };
|
| //---
|
| struct TRANSACTION_BASIC_INFORMATION
|
| {
|
| GUID TransactionId;
|
| uint State;
|
| uint Outcome;
|
| };
|
| //---
|
| struct TRANSACTIONMANAGER_BASIC_INFORMATION
|
| {
|
| GUID TmIdentity;
|
| long VirtualClock;
|
| };
|
| //---
|
| struct TRANSACTIONMANAGER_LOG_INFORMATION
|
| {
|
| GUID LogIdentity;
|
| };
|
| //---
|
| struct TRANSACTIONMANAGER_LOGPATH_INFORMATION
|
| {
|
| uint LogPathLength;
|
| short LogPath[1];
|
| };
|
| //---
|
| struct TRANSACTIONMANAGER_RECOVERY_INFORMATION
|
| {
|
| ulong LastRecoveredLsn;
|
| };
|
| //---
|
| struct TRANSACTIONMANAGER_OLDEST_INFORMATION
|
| {
|
| GUID OldestTransactionGuid;
|
| };
|
| //---
|
| struct TRANSACTION_PROPERTIES_INFORMATION
|
| {
|
| uint IsolationLevel;
|
| uint IsolationFlags;
|
| long Timeout;
|
| uint Outcome;
|
| uint DescriptionLength;
|
| short Description[1];
|
| };
|
| //---
|
| struct TRANSACTION_BIND_INFORMATION
|
| {
|
| HANDLE TmHandle;
|
| };
|
| //---
|
| struct TRANSACTION_ENLISTMENT_PAIR
|
| {
|
| GUID EnlistmentId;
|
| GUID ResourceManagerId;
|
| };
|
| //---
|
| struct TRANSACTION_ENLISTMENTS_INFORMATION
|
| {
|
| uint NumberOfEnlistments;
|
| TRANSACTION_ENLISTMENT_PAIR EnlistmentPair[1];
|
| };
|
| //---
|
| struct TRANSACTION_SUPERIOR_ENLISTMENT_INFORMATION
|
| {
|
| TRANSACTION_ENLISTMENT_PAIR SuperiorEnlistmentPair;
|
| };
|
| //---
|
| struct RESOURCEMANAGER_BASIC_INFORMATION
|
| {
|
| GUID ResourceManagerId;
|
| uint DescriptionLength;
|
| short Description[1];
|
| };
|
| //---
|
| struct RESOURCEMANAGER_COMPLETION_INFORMATION
|
| {
|
| HANDLE IoCompletionPortHandle;
|
| ulong CompletionKey;
|
| };
|
| //---
|
| struct ENLISTMENT_BASIC_INFORMATION
|
| {
|
| GUID EnlistmentId;
|
| GUID TransactionId;
|
| GUID ResourceManagerId;
|
| };
|
| //---
|
| struct ENLISTMENT_CRM_INFORMATION
|
| {
|
| GUID CrmTransactionManagerId;
|
| GUID CrmResourceManagerId;
|
| GUID CrmEnlistmentId;
|
| };
|
| //---
|
| struct TRANSACTION_LIST_ENTRY
|
| {
|
| GUID UOW;
|
| };
|
| //---
|
| struct TRANSACTION_LIST_INFORMATION
|
| {
|
| uint NumberOfTransactions;
|
| TRANSACTION_LIST_ENTRY TransactionInformation[1];
|
| };
|
| //---
|
| struct KTMOBJECT_CURSOR
|
| {
|
| GUID LastQuery;
|
| uint ObjectIdCount;
|
| GUID ObjectIds[1];
|
| };
|
| //---
|
| struct TP_POOL_STACK_INFORMATION
|
| {
|
| ulong StackReserve;
|
| ulong StackCommit;
|
| };
|
| //---
|
| struct TP_CALLBACK_ENVIRON_V3
|
| {
|
| uint Version;
|
| PVOID Pool;
|
| PVOID CleanupGroup;
|
| PVOID CleanupGroupCancelCallback;
|
| PVOID RaceDll;
|
| PVOID ActivationContext;
|
| PVOID FinalizationCallback;
|
| uint Flags;
|
| TP_CALLBACK_PRIORITY CallbackPriority;
|
| uint Size;
|
| };
|
| //---
|
| struct SYSTEM_LOGICAL_PROCESSOR_INFORMATION
|
| {
|
| ulong ProcessorMask;
|
| LOGICAL_PROCESSOR_RELATIONSHIP Relationship;
|
| uchar offset[4];
|
| ulong Reserved[2];
|
| };
|
| //---
|
| struct SYSTEM_LOGICAL_PROCESSOR_INFORMATION_EX
|
| {
|
| LOGICAL_PROCESSOR_RELATIONSHIP Relationship;
|
| uint Size;
|
| uchar info[72];
|
| };
|
| //---
|
| struct SYSTEM_CPU_SET_INFORMATION
|
| {
|
| uint Size;
|
| CPU_SET_INFORMATION_TYPE Type;
|
| uint Id;
|
| ushort Group;
|
| uchar LogicalProcessorIndex;
|
| uchar CoreIndex;
|
| uchar LastLevelCacheIndex;
|
| uchar NumaNodeIndex;
|
| uchar EfficiencyClass;
|
| uchar AllFlags;
|
| uint Reserved;
|
| ulong AllocationTag;
|
| };
|
| //+------------------------------------------------------------------+
|
| //| |
|
| //+------------------------------------------------------------------+
|
| #import "kernel32.dll"
|
| ushort RtlCaptureStackBackTrace(uint frames_to_skip,uint frames_to_capture,PVOID &back_trace[],uint &back_trace_hash);
|
| ulong RtlCompareMemory(const uchar &source1[],const uchar &source2[],ulong length);
|
| ulong VerSetConditionMask(ulong condition_mask,uint type_mask,uchar condition);
|
| #import
|
|
|
| #import "Win32k.sys"
|
| void RtlCaptureContext(PVOID context_record);
|
| void RtlUnwind(PVOID target_frame,PVOID target_ip,EXCEPTION_RECORD &exception_record,PVOID return_value);
|
| PVOID RtlLookupFunctionEntry(ulong control_pc,PVOID image_base,UNWIND_HISTORY_TABLE &history_table);
|
| void RtlUnwindEx(PVOID target_frame,PVOID target_ip,EXCEPTION_RECORD &exception_record,PVOID return_value,PVOID context_record,UNWIND_HISTORY_TABLE &history_table);
|
| PVOID RtlVirtualUnwind(uint handler_type,ulong image_base,ulong control_pc,PVOID function_entry,PVOID context_record,PVOID &handler_data,PVOID establisher_frame,KNONVOLATILE_CONTEXT_POINTERS &context_pointers);
|
| PVOID RtlLookupFunctionEntry(ulong control_pc,uint &image_base,UNWIND_HISTORY_TABLE &history_table);
|
| void RtlUnwindEx(PVOID target_frame,PVOID target_ip,EXCEPTION_RECORD &exception_record,PVOID return_value,PVOID context_record,UNWIND_HISTORY_TABLE &history_table);
|
| PVOID RtlVirtualUnwind(uint handler_type,uint image_base,uint control_pc,PVOID function_entry,PVOID context_record,PVOID &handler_data,uint &establisher_frame,KNONVOLATILE_CONTEXT_POINTERS &context_pointers);
|
| PVOID RtlLookupFunctionEntry(ulong control_pc,PVOID image_base,UNWIND_HISTORY_TABLE &history_table);
|
| void RtlUnwindEx(PVOID target_frame,PVOID target_ip,EXCEPTION_RECORD &exception_record,PVOID return_value,PVOID context_record,UNWIND_HISTORY_TABLE &history_table);
|
| PVOID RtlVirtualUnwind(uint handler_type,ulong image_base,ulong control_pc,PVOID function_entry,PVOID context_record,PVOID &handler_data,PVOID establisher_frame,KNONVOLATILE_CONTEXT_POINTERS &context_pointers);
|
| void RtlUnwindEx(PVOID target_frame,PVOID target_ip,EXCEPTION_RECORD &exception_record,PVOID return_value,PVOID context_record,PVOID history_table);
|
| PVOID RtlPcToFileHeader(PVOID pc_value,PVOID &base_of_image);
|
| #import
|
| //+------------------------------------------------------------------+
|