Process Hacker
ntregapi.h File Reference

Go to the source code of this file.

Data Structures

struct  _KEY_BASIC_INFORMATION
 
struct  _KEY_NODE_INFORMATION
 
struct  _KEY_FULL_INFORMATION
 
struct  _KEY_NAME_INFORMATION
 
struct  _KEY_CACHED_INFORMATION
 
struct  _KEY_FLAGS_INFORMATION
 
struct  _KEY_VIRTUALIZATION_INFORMATION
 
struct  _KEY_TRUST_INFORMATION
 
struct  _KEY_WRITE_TIME_INFORMATION
 
struct  _KEY_WOW64_FLAGS_INFORMATION
 
struct  _KEY_HANDLE_TAGS_INFORMATION
 
struct  _KEY_CONTROL_FLAGS_INFORMATION
 
struct  _KEY_SET_VIRTUALIZATION_INFORMATION
 
struct  _KEY_VALUE_BASIC_INFORMATION
 
struct  _KEY_VALUE_FULL_INFORMATION
 
struct  _KEY_VALUE_PARTIAL_INFORMATION
 
struct  _KEY_VALUE_PARTIAL_INFORMATION_ALIGN64
 
struct  _KEY_VALUE_ENTRY
 
struct  _REG_NOTIFY_INFORMATION
 
struct  _KEY_PID_ARRAY
 
struct  _KEY_OPEN_SUBKEYS_INFORMATION
 

Macros

#define REG_INIT_BOOT_SM   0x0000
 
#define REG_INIT_BOOT_SETUP   0x0001
 
#define REG_INIT_BOOT_ACCEPTED_BASE   0x0002
 
#define REG_INIT_BOOT_ACCEPTED_MAX   REG_INIT_BOOT_ACCEPTED_BASE + 999
 
#define REG_MAX_KEY_VALUE_NAME_LENGTH   32767
 
#define REG_MAX_KEY_NAME_LENGTH   512
 

Typedefs

typedef enum _KEY_INFORMATION_CLASS KEY_INFORMATION_CLASS
 
typedef struct
_KEY_BASIC_INFORMATION 
KEY_BASIC_INFORMATION
 
typedef struct
_KEY_BASIC_INFORMATION
PKEY_BASIC_INFORMATION
 
typedef struct
_KEY_NODE_INFORMATION 
KEY_NODE_INFORMATION
 
typedef struct
_KEY_NODE_INFORMATION
PKEY_NODE_INFORMATION
 
typedef struct
_KEY_FULL_INFORMATION 
KEY_FULL_INFORMATION
 
typedef struct
_KEY_FULL_INFORMATION
PKEY_FULL_INFORMATION
 
typedef struct
_KEY_NAME_INFORMATION 
KEY_NAME_INFORMATION
 
typedef struct
_KEY_NAME_INFORMATION
PKEY_NAME_INFORMATION
 
typedef struct
_KEY_CACHED_INFORMATION 
KEY_CACHED_INFORMATION
 
typedef struct
_KEY_CACHED_INFORMATION
PKEY_CACHED_INFORMATION
 
typedef struct
_KEY_FLAGS_INFORMATION 
KEY_FLAGS_INFORMATION
 
typedef struct
_KEY_FLAGS_INFORMATION
PKEY_FLAGS_INFORMATION
 
typedef struct
_KEY_VIRTUALIZATION_INFORMATION 
KEY_VIRTUALIZATION_INFORMATION
 
typedef struct
_KEY_VIRTUALIZATION_INFORMATION
PKEY_VIRTUALIZATION_INFORMATION
 
typedef struct
_KEY_TRUST_INFORMATION 
KEY_TRUST_INFORMATION
 
typedef struct
_KEY_TRUST_INFORMATION
PKEY_TRUST_INFORMATION
 
typedef enum
_KEY_SET_INFORMATION_CLASS 
KEY_SET_INFORMATION_CLASS
 
typedef struct
_KEY_WRITE_TIME_INFORMATION 
KEY_WRITE_TIME_INFORMATION
 
typedef struct
_KEY_WRITE_TIME_INFORMATION
PKEY_WRITE_TIME_INFORMATION
 
typedef struct
_KEY_WOW64_FLAGS_INFORMATION 
KEY_WOW64_FLAGS_INFORMATION
 
typedef struct
_KEY_WOW64_FLAGS_INFORMATION
PKEY_WOW64_FLAGS_INFORMATION
 
typedef struct
_KEY_HANDLE_TAGS_INFORMATION 
KEY_HANDLE_TAGS_INFORMATION
 
typedef struct
_KEY_HANDLE_TAGS_INFORMATION
PKEY_HANDLE_TAGS_INFORMATION
 
typedef struct
_KEY_CONTROL_FLAGS_INFORMATION 
KEY_CONTROL_FLAGS_INFORMATION
 
typedef struct
_KEY_CONTROL_FLAGS_INFORMATION
PKEY_CONTROL_FLAGS_INFORMATION
 
typedef struct
_KEY_SET_VIRTUALIZATION_INFORMATION 
KEY_SET_VIRTUALIZATION_INFORMATION
 
typedef struct
_KEY_SET_VIRTUALIZATION_INFORMATION
PKEY_SET_VIRTUALIZATION_INFORMATION
 
typedef enum
_KEY_VALUE_INFORMATION_CLASS 
KEY_VALUE_INFORMATION_CLASS
 
typedef struct
_KEY_VALUE_BASIC_INFORMATION 
KEY_VALUE_BASIC_INFORMATION
 
typedef struct
_KEY_VALUE_BASIC_INFORMATION
PKEY_VALUE_BASIC_INFORMATION
 
typedef struct
_KEY_VALUE_FULL_INFORMATION 
KEY_VALUE_FULL_INFORMATION
 
typedef struct
_KEY_VALUE_FULL_INFORMATION
PKEY_VALUE_FULL_INFORMATION
 
typedef struct
_KEY_VALUE_PARTIAL_INFORMATION 
KEY_VALUE_PARTIAL_INFORMATION
 
typedef struct
_KEY_VALUE_PARTIAL_INFORMATION
PKEY_VALUE_PARTIAL_INFORMATION
 
typedef struct
_KEY_VALUE_PARTIAL_INFORMATION_ALIGN64 
KEY_VALUE_PARTIAL_INFORMATION_ALIGN64
 
typedef struct
_KEY_VALUE_PARTIAL_INFORMATION_ALIGN64
PKEY_VALUE_PARTIAL_INFORMATION_ALIGN64
 
typedef struct _KEY_VALUE_ENTRY KEY_VALUE_ENTRY
 
typedef struct _KEY_VALUE_ENTRYPKEY_VALUE_ENTRY
 
typedef enum _REG_ACTION REG_ACTION
 
typedef struct
_REG_NOTIFY_INFORMATION 
REG_NOTIFY_INFORMATION
 
typedef struct
_REG_NOTIFY_INFORMATION
PREG_NOTIFY_INFORMATION
 
typedef struct _KEY_PID_ARRAY KEY_PID_ARRAY
 
typedef struct _KEY_PID_ARRAYPKEY_PID_ARRAY
 
typedef struct
_KEY_OPEN_SUBKEYS_INFORMATION 
KEY_OPEN_SUBKEYS_INFORMATION
 
typedef struct
_KEY_OPEN_SUBKEYS_INFORMATION
PKEY_OPEN_SUBKEYS_INFORMATION
 

Enumerations

enum  _KEY_INFORMATION_CLASS {
  KeyBasicInformation, KeyNodeInformation, KeyFullInformation, KeyNameInformation,
  KeyCachedInformation, KeyFlagsInformation, KeyVirtualizationInformation, KeyHandleTagsInformation,
  KeyTrustInformation, MaxKeyInfoClass
}
 
enum  _KEY_SET_INFORMATION_CLASS {
  KeyWriteTimeInformation, KeyWow64FlagsInformation, KeyControlFlagsInformation, KeySetVirtualizationInformation,
  KeySetDebugInformation, KeySetHandleTagsInformation, MaxKeySetInfoClass
}
 
enum  _KEY_VALUE_INFORMATION_CLASS {
  KeyValueBasicInformation, KeyValueFullInformation, KeyValuePartialInformation, KeyValueFullInformationAlign64,
  KeyValuePartialInformationAlign64, MaxKeyValueInfoClass
}
 
enum  _REG_ACTION { KeyAdded, KeyRemoved, KeyModified }
 

Functions

NTSYSCALLAPI NTSTATUS NTAPI NtCreateKey (_Out_ PHANDLE KeyHandle, _In_ ACCESS_MASK DesiredAccess, _In_ POBJECT_ATTRIBUTES ObjectAttributes, _Reserved_ ULONG TitleIndex, _In_opt_ PUNICODE_STRING Class, _In_ ULONG CreateOptions, _Out_opt_ PULONG Disposition)
 
NTSYSCALLAPI NTSTATUS NTAPI NtCreateKeyTransacted (_Out_ PHANDLE KeyHandle, _In_ ACCESS_MASK DesiredAccess, _In_ POBJECT_ATTRIBUTES ObjectAttributes, _Reserved_ ULONG TitleIndex, _In_opt_ PUNICODE_STRING Class, _In_ ULONG CreateOptions, _In_ HANDLE TransactionHandle, _Out_opt_ PULONG Disposition)
 
NTSYSCALLAPI NTSTATUS NTAPI NtOpenKey (_Out_ PHANDLE KeyHandle, _In_ ACCESS_MASK DesiredAccess, _In_ POBJECT_ATTRIBUTES ObjectAttributes)
 
NTSYSCALLAPI NTSTATUS NTAPI NtOpenKeyTransacted (_Out_ PHANDLE KeyHandle, _In_ ACCESS_MASK DesiredAccess, _In_ POBJECT_ATTRIBUTES ObjectAttributes, _In_ HANDLE TransactionHandle)
 
NTSYSCALLAPI NTSTATUS NTAPI NtOpenKeyEx (_Out_ PHANDLE KeyHandle, _In_ ACCESS_MASK DesiredAccess, _In_ POBJECT_ATTRIBUTES ObjectAttributes, _In_ ULONG OpenOptions)
 
NTSYSCALLAPI NTSTATUS NTAPI NtOpenKeyTransactedEx (_Out_ PHANDLE KeyHandle, _In_ ACCESS_MASK DesiredAccess, _In_ POBJECT_ATTRIBUTES ObjectAttributes, _In_ ULONG OpenOptions, _In_ HANDLE TransactionHandle)
 
NTSYSCALLAPI NTSTATUS NTAPI NtDeleteKey (_In_ HANDLE KeyHandle)
 
NTSYSCALLAPI NTSTATUS NTAPI NtRenameKey (_In_ HANDLE KeyHandle, _In_ PUNICODE_STRING NewName)
 
NTSYSCALLAPI NTSTATUS NTAPI NtDeleteValueKey (_In_ HANDLE KeyHandle, _In_ PUNICODE_STRING ValueName)
 
NTSYSCALLAPI NTSTATUS NTAPI NtQueryKey (_In_ HANDLE KeyHandle, _In_ KEY_INFORMATION_CLASS KeyInformationClass, _Out_writes_bytes_opt_(Length) PVOID KeyInformation, _In_ ULONG Length, _Out_ PULONG ResultLength)
 
NTSYSCALLAPI NTSTATUS NTAPI NtSetInformationKey (_In_ HANDLE KeyHandle, _In_ KEY_SET_INFORMATION_CLASS KeySetInformationClass, _In_reads_bytes_(KeySetInformationLength) PVOID KeySetInformation, _In_ ULONG KeySetInformationLength)
 
NTSYSCALLAPI NTSTATUS NTAPI NtQueryValueKey (_In_ HANDLE KeyHandle, _In_ PUNICODE_STRING ValueName, _In_ KEY_VALUE_INFORMATION_CLASS KeyValueInformationClass, _Out_writes_bytes_opt_(Length) PVOID KeyValueInformation, _In_ ULONG Length, _Out_ PULONG ResultLength)
 
NTSYSCALLAPI NTSTATUS NTAPI NtSetValueKey (_In_ HANDLE KeyHandle, _In_ PUNICODE_STRING ValueName, _In_opt_ ULONG TitleIndex, _In_ ULONG Type, _In_reads_bytes_opt_(DataSize) PVOID Data, _In_ ULONG DataSize)
 
NTSYSCALLAPI NTSTATUS NTAPI NtQueryMultipleValueKey (_In_ HANDLE KeyHandle, _Inout_updates_(EntryCount) PKEY_VALUE_ENTRY ValueEntries, _In_ ULONG EntryCount, _Out_writes_bytes_(*BufferLength) PVOID ValueBuffer, _Inout_ PULONG BufferLength, _Out_opt_ PULONG RequiredBufferLength)
 
NTSYSCALLAPI NTSTATUS NTAPI NtEnumerateKey (_In_ HANDLE KeyHandle, _In_ ULONG Index, _In_ KEY_INFORMATION_CLASS KeyInformationClass, _Out_writes_bytes_opt_(Length) PVOID KeyInformation, _In_ ULONG Length, _Out_ PULONG ResultLength)
 
NTSYSCALLAPI NTSTATUS NTAPI NtEnumerateValueKey (_In_ HANDLE KeyHandle, _In_ ULONG Index, _In_ KEY_VALUE_INFORMATION_CLASS KeyValueInformationClass, _Out_writes_bytes_opt_(Length) PVOID KeyValueInformation, _In_ ULONG Length, _Out_ PULONG ResultLength)
 
NTSYSCALLAPI NTSTATUS NTAPI NtFlushKey (_In_ HANDLE KeyHandle)
 
NTSYSCALLAPI NTSTATUS NTAPI NtCompactKeys (_In_ ULONG Count, _In_reads_(Count) HANDLE KeyArray[])
 
NTSYSCALLAPI NTSTATUS NTAPI NtCompressKey (_In_ HANDLE Key)
 
NTSYSCALLAPI NTSTATUS NTAPI NtLoadKey (_In_ POBJECT_ATTRIBUTES TargetKey, _In_ POBJECT_ATTRIBUTES SourceFile)
 
NTSYSCALLAPI NTSTATUS NTAPI NtLoadKey2 (_In_ POBJECT_ATTRIBUTES TargetKey, _In_ POBJECT_ATTRIBUTES SourceFile, _In_ ULONG Flags)
 
NTSYSCALLAPI NTSTATUS NTAPI NtLoadKeyEx (_In_ POBJECT_ATTRIBUTES TargetKey, _In_ POBJECT_ATTRIBUTES SourceFile, _In_ ULONG Flags, _In_opt_ HANDLE TrustClassKey, _In_opt_ HANDLE Event, _In_opt_ ACCESS_MASK DesiredAccess, _Out_opt_ PHANDLE RootHandle, _Out_opt_ PIO_STATUS_BLOCK IoStatus)
 
NTSYSCALLAPI NTSTATUS NTAPI NtReplaceKey (_In_ POBJECT_ATTRIBUTES NewFile, _In_ HANDLE TargetHandle, _In_ POBJECT_ATTRIBUTES OldFile)
 
NTSYSCALLAPI NTSTATUS NTAPI NtSaveKey (_In_ HANDLE KeyHandle, _In_ HANDLE FileHandle)
 
NTSYSCALLAPI NTSTATUS NTAPI NtSaveKeyEx (_In_ HANDLE KeyHandle, _In_ HANDLE FileHandle, _In_ ULONG Format)
 
NTSYSCALLAPI NTSTATUS NTAPI NtSaveMergedKeys (_In_ HANDLE HighPrecedenceKeyHandle, _In_ HANDLE LowPrecedenceKeyHandle, _In_ HANDLE FileHandle)
 
NTSYSCALLAPI NTSTATUS NTAPI NtRestoreKey (_In_ HANDLE KeyHandle, _In_ HANDLE FileHandle, _In_ ULONG Flags)
 
NTSYSCALLAPI NTSTATUS NTAPI NtUnloadKey (_In_ POBJECT_ATTRIBUTES TargetKey)
 
NTSYSCALLAPI NTSTATUS NTAPI NtUnloadKey2 (_In_ POBJECT_ATTRIBUTES TargetKey, _In_ ULONG Flags)
 
NTSYSCALLAPI NTSTATUS NTAPI NtUnloadKeyEx (_In_ POBJECT_ATTRIBUTES TargetKey, _In_opt_ HANDLE Event)
 
NTSYSCALLAPI NTSTATUS NTAPI NtNotifyChangeKey (_In_ HANDLE KeyHandle, _In_opt_ HANDLE Event, _In_opt_ PIO_APC_ROUTINE ApcRoutine, _In_opt_ PVOID ApcContext, _Out_ PIO_STATUS_BLOCK IoStatusBlock, _In_ ULONG CompletionFilter, _In_ BOOLEAN WatchTree, _Out_writes_bytes_opt_(BufferSize) PVOID Buffer, _In_ ULONG BufferSize, _In_ BOOLEAN Asynchronous)
 
NTSYSCALLAPI NTSTATUS NTAPI NtNotifyChangeMultipleKeys (_In_ HANDLE MasterKeyHandle, _In_opt_ ULONG Count, _In_reads_opt_(Count) OBJECT_ATTRIBUTES SubordinateObjects[], _In_opt_ HANDLE Event, _In_opt_ PIO_APC_ROUTINE ApcRoutine, _In_opt_ PVOID ApcContext, _Out_ PIO_STATUS_BLOCK IoStatusBlock, _In_ ULONG CompletionFilter, _In_ BOOLEAN WatchTree, _Out_writes_bytes_opt_(BufferSize) PVOID Buffer, _In_ ULONG BufferSize, _In_ BOOLEAN Asynchronous)
 
NTSYSCALLAPI NTSTATUS NTAPI NtQueryOpenSubKeys (_In_ POBJECT_ATTRIBUTES TargetKey, _Out_ PULONG HandleCount)
 
NTSYSCALLAPI NTSTATUS NTAPI NtQueryOpenSubKeysEx (_In_ POBJECT_ATTRIBUTES TargetKey, _In_ ULONG BufferLength, _Out_writes_bytes_(BufferLength) PVOID Buffer, _Out_ PULONG RequiredSize)
 
NTSYSCALLAPI NTSTATUS NTAPI NtInitializeRegistry (_In_ USHORT BootCondition)
 
NTSYSCALLAPI NTSTATUS NTAPI NtLockRegistryKey (_In_ HANDLE KeyHandle)
 
NTSYSCALLAPI NTSTATUS NTAPI NtLockProductActivationKeys (_Inout_opt_ ULONG *pPrivateVer, _Out_opt_ ULONG *pSafeMode)
 
NTSYSCALLAPI NTSTATUS NTAPI NtFreezeRegistry (_In_ ULONG TimeOutInSeconds)
 
NTSYSCALLAPI NTSTATUS NTAPI NtThawRegistry (VOID)
 

Macro Definition Documentation

#define REG_INIT_BOOT_ACCEPTED_BASE   0x0002

Definition at line 8 of file ntregapi.h.

#define REG_INIT_BOOT_ACCEPTED_MAX   REG_INIT_BOOT_ACCEPTED_BASE + 999

Definition at line 9 of file ntregapi.h.

#define REG_INIT_BOOT_SETUP   0x0001

Definition at line 7 of file ntregapi.h.

#define REG_INIT_BOOT_SM   0x0000

Definition at line 6 of file ntregapi.h.

#define REG_MAX_KEY_NAME_LENGTH   512

Definition at line 12 of file ntregapi.h.

#define REG_MAX_KEY_VALUE_NAME_LENGTH   32767

Definition at line 11 of file ntregapi.h.

Typedef Documentation

typedef struct _KEY_PID_ARRAY KEY_PID_ARRAY
typedef struct _KEY_PID_ARRAY * PKEY_PID_ARRAY
typedef enum _REG_ACTION REG_ACTION

Enumeration Type Documentation

Enumerator:
KeyBasicInformation 
KeyNodeInformation 
KeyFullInformation 
KeyNameInformation 
KeyCachedInformation 
KeyFlagsInformation 
KeyVirtualizationInformation 
KeyHandleTagsInformation 
KeyTrustInformation 
MaxKeyInfoClass 

Definition at line 14 of file ntregapi.h.

Enumerator:
KeyWriteTimeInformation 
KeyWow64FlagsInformation 
KeyControlFlagsInformation 
KeySetVirtualizationInformation 
KeySetDebugInformation 
KeySetHandleTagsInformation 
MaxKeySetInfoClass 

Definition at line 104 of file ntregapi.h.

Enumerator:
KeyValueBasicInformation 
KeyValueFullInformation 
KeyValuePartialInformation 
KeyValueFullInformationAlign64 
KeyValuePartialInformationAlign64 
MaxKeyValueInfoClass 

Definition at line 143 of file ntregapi.h.

Enumerator:
KeyAdded 
KeyRemoved 
KeyModified 

Definition at line 196 of file ntregapi.h.

Function Documentation

NTSYSCALLAPI NTSTATUS NTAPI NtCompactKeys ( _In_ ULONG  Count,
_In_reads_(Count) HANDLE  KeyArray[] 
)
NTSYSCALLAPI NTSTATUS NTAPI NtCompressKey ( _In_ HANDLE  Key)
NTSYSCALLAPI NTSTATUS NTAPI NtCreateKey ( _Out_ PHANDLE  KeyHandle,
_In_ ACCESS_MASK  DesiredAccess,
_In_ POBJECT_ATTRIBUTES  ObjectAttributes,
_Reserved_ ULONG  TitleIndex,
_In_opt_ PUNICODE_STRING  Class,
_In_ ULONG  CreateOptions,
_Out_opt_ PULONG  Disposition 
)
NTSYSCALLAPI NTSTATUS NTAPI NtCreateKeyTransacted ( _Out_ PHANDLE  KeyHandle,
_In_ ACCESS_MASK  DesiredAccess,
_In_ POBJECT_ATTRIBUTES  ObjectAttributes,
_Reserved_ ULONG  TitleIndex,
_In_opt_ PUNICODE_STRING  Class,
_In_ ULONG  CreateOptions,
_In_ HANDLE  TransactionHandle,
_Out_opt_ PULONG  Disposition 
)
NTSYSCALLAPI NTSTATUS NTAPI NtDeleteKey ( _In_ HANDLE  KeyHandle)
NTSYSCALLAPI NTSTATUS NTAPI NtDeleteValueKey ( _In_ HANDLE  KeyHandle,
_In_ PUNICODE_STRING  ValueName 
)
NTSYSCALLAPI NTSTATUS NTAPI NtEnumerateKey ( _In_ HANDLE  KeyHandle,
_In_ ULONG  Index,
_In_ KEY_INFORMATION_CLASS  KeyInformationClass,
_Out_writes_bytes_opt_(Length) PVOID  KeyInformation,
_In_ ULONG  Length,
_Out_ PULONG  ResultLength 
)
NTSYSCALLAPI NTSTATUS NTAPI NtEnumerateValueKey ( _In_ HANDLE  KeyHandle,
_In_ ULONG  Index,
_In_ KEY_VALUE_INFORMATION_CLASS  KeyValueInformationClass,
_Out_writes_bytes_opt_(Length) PVOID  KeyValueInformation,
_In_ ULONG  Length,
_Out_ PULONG  ResultLength 
)
NTSYSCALLAPI NTSTATUS NTAPI NtFlushKey ( _In_ HANDLE  KeyHandle)
NTSYSCALLAPI NTSTATUS NTAPI NtFreezeRegistry ( _In_ ULONG  TimeOutInSeconds)
NTSYSCALLAPI NTSTATUS NTAPI NtInitializeRegistry ( _In_ USHORT  BootCondition)
NTSYSCALLAPI NTSTATUS NTAPI NtLoadKey ( _In_ POBJECT_ATTRIBUTES  TargetKey,
_In_ POBJECT_ATTRIBUTES  SourceFile 
)
NTSYSCALLAPI NTSTATUS NTAPI NtLoadKey2 ( _In_ POBJECT_ATTRIBUTES  TargetKey,
_In_ POBJECT_ATTRIBUTES  SourceFile,
_In_ ULONG  Flags 
)
NTSYSCALLAPI NTSTATUS NTAPI NtLoadKeyEx ( _In_ POBJECT_ATTRIBUTES  TargetKey,
_In_ POBJECT_ATTRIBUTES  SourceFile,
_In_ ULONG  Flags,
_In_opt_ HANDLE  TrustClassKey,
_In_opt_ HANDLE  Event,
_In_opt_ ACCESS_MASK  DesiredAccess,
_Out_opt_ PHANDLE  RootHandle,
_Out_opt_ PIO_STATUS_BLOCK  IoStatus 
)
NTSYSCALLAPI NTSTATUS NTAPI NtLockProductActivationKeys ( _Inout_opt_ ULONG *  pPrivateVer,
_Out_opt_ ULONG *  pSafeMode 
)
NTSYSCALLAPI NTSTATUS NTAPI NtLockRegistryKey ( _In_ HANDLE  KeyHandle)
NTSYSCALLAPI NTSTATUS NTAPI NtNotifyChangeKey ( _In_ HANDLE  KeyHandle,
_In_opt_ HANDLE  Event,
_In_opt_ PIO_APC_ROUTINE  ApcRoutine,
_In_opt_ PVOID  ApcContext,
_Out_ PIO_STATUS_BLOCK  IoStatusBlock,
_In_ ULONG  CompletionFilter,
_In_ BOOLEAN  WatchTree,
_Out_writes_bytes_opt_(BufferSize) PVOID  Buffer,
_In_ ULONG  BufferSize,
_In_ BOOLEAN  Asynchronous 
)
NTSYSCALLAPI NTSTATUS NTAPI NtNotifyChangeMultipleKeys ( _In_ HANDLE  MasterKeyHandle,
_In_opt_ ULONG  Count,
_In_reads_opt_(Count) OBJECT_ATTRIBUTES  SubordinateObjects[],
_In_opt_ HANDLE  Event,
_In_opt_ PIO_APC_ROUTINE  ApcRoutine,
_In_opt_ PVOID  ApcContext,
_Out_ PIO_STATUS_BLOCK  IoStatusBlock,
_In_ ULONG  CompletionFilter,
_In_ BOOLEAN  WatchTree,
_Out_writes_bytes_opt_(BufferSize) PVOID  Buffer,
_In_ ULONG  BufferSize,
_In_ BOOLEAN  Asynchronous 
)
NTSYSCALLAPI NTSTATUS NTAPI NtOpenKey ( _Out_ PHANDLE  KeyHandle,
_In_ ACCESS_MASK  DesiredAccess,
_In_ POBJECT_ATTRIBUTES  ObjectAttributes 
)
NTSYSCALLAPI NTSTATUS NTAPI NtOpenKeyEx ( _Out_ PHANDLE  KeyHandle,
_In_ ACCESS_MASK  DesiredAccess,
_In_ POBJECT_ATTRIBUTES  ObjectAttributes,
_In_ ULONG  OpenOptions 
)
NTSYSCALLAPI NTSTATUS NTAPI NtOpenKeyTransacted ( _Out_ PHANDLE  KeyHandle,
_In_ ACCESS_MASK  DesiredAccess,
_In_ POBJECT_ATTRIBUTES  ObjectAttributes,
_In_ HANDLE  TransactionHandle 
)
NTSYSCALLAPI NTSTATUS NTAPI NtOpenKeyTransactedEx ( _Out_ PHANDLE  KeyHandle,
_In_ ACCESS_MASK  DesiredAccess,
_In_ POBJECT_ATTRIBUTES  ObjectAttributes,
_In_ ULONG  OpenOptions,
_In_ HANDLE  TransactionHandle 
)
NTSYSCALLAPI NTSTATUS NTAPI NtQueryKey ( _In_ HANDLE  KeyHandle,
_In_ KEY_INFORMATION_CLASS  KeyInformationClass,
_Out_writes_bytes_opt_(Length) PVOID  KeyInformation,
_In_ ULONG  Length,
_Out_ PULONG  ResultLength 
)
NTSYSCALLAPI NTSTATUS NTAPI NtQueryMultipleValueKey ( _In_ HANDLE  KeyHandle,
_Inout_updates_(EntryCount) PKEY_VALUE_ENTRY  ValueEntries,
_In_ ULONG  EntryCount,
_Out_writes_bytes_ *BufferLength PVOID  ValueBuffer,
_Inout_ PULONG  BufferLength,
_Out_opt_ PULONG  RequiredBufferLength 
)
NTSYSCALLAPI NTSTATUS NTAPI NtQueryOpenSubKeys ( _In_ POBJECT_ATTRIBUTES  TargetKey,
_Out_ PULONG  HandleCount 
)
NTSYSCALLAPI NTSTATUS NTAPI NtQueryOpenSubKeysEx ( _In_ POBJECT_ATTRIBUTES  TargetKey,
_In_ ULONG  BufferLength,
_Out_writes_bytes_(BufferLength) PVOID  Buffer,
_Out_ PULONG  RequiredSize 
)
NTSYSCALLAPI NTSTATUS NTAPI NtQueryValueKey ( _In_ HANDLE  KeyHandle,
_In_ PUNICODE_STRING  ValueName,
_In_ KEY_VALUE_INFORMATION_CLASS  KeyValueInformationClass,
_Out_writes_bytes_opt_(Length) PVOID  KeyValueInformation,
_In_ ULONG  Length,
_Out_ PULONG  ResultLength 
)
NTSYSCALLAPI NTSTATUS NTAPI NtRenameKey ( _In_ HANDLE  KeyHandle,
_In_ PUNICODE_STRING  NewName 
)
NTSYSCALLAPI NTSTATUS NTAPI NtReplaceKey ( _In_ POBJECT_ATTRIBUTES  NewFile,
_In_ HANDLE  TargetHandle,
_In_ POBJECT_ATTRIBUTES  OldFile 
)
NTSYSCALLAPI NTSTATUS NTAPI NtRestoreKey ( _In_ HANDLE  KeyHandle,
_In_ HANDLE  FileHandle,
_In_ ULONG  Flags 
)
NTSYSCALLAPI NTSTATUS NTAPI NtSaveKey ( _In_ HANDLE  KeyHandle,
_In_ HANDLE  FileHandle 
)
NTSYSCALLAPI NTSTATUS NTAPI NtSaveKeyEx ( _In_ HANDLE  KeyHandle,
_In_ HANDLE  FileHandle,
_In_ ULONG  Format 
)
NTSYSCALLAPI NTSTATUS NTAPI NtSaveMergedKeys ( _In_ HANDLE  HighPrecedenceKeyHandle,
_In_ HANDLE  LowPrecedenceKeyHandle,
_In_ HANDLE  FileHandle 
)
NTSYSCALLAPI NTSTATUS NTAPI NtSetInformationKey ( _In_ HANDLE  KeyHandle,
_In_ KEY_SET_INFORMATION_CLASS  KeySetInformationClass,
_In_reads_bytes_(KeySetInformationLength) PVOID  KeySetInformation,
_In_ ULONG  KeySetInformationLength 
)
NTSYSCALLAPI NTSTATUS NTAPI NtSetValueKey ( _In_ HANDLE  KeyHandle,
_In_ PUNICODE_STRING  ValueName,
_In_opt_ ULONG  TitleIndex,
_In_ ULONG  Type,
_In_reads_bytes_opt_(DataSize) PVOID  Data,
_In_ ULONG  DataSize 
)
NTSYSCALLAPI NTSTATUS NTAPI NtThawRegistry ( VOID  )
NTSYSCALLAPI NTSTATUS NTAPI NtUnloadKey ( _In_ POBJECT_ATTRIBUTES  TargetKey)
NTSYSCALLAPI NTSTATUS NTAPI NtUnloadKey2 ( _In_ POBJECT_ATTRIBUTES  TargetKey,
_In_ ULONG  Flags 
)
NTSYSCALLAPI NTSTATUS NTAPI NtUnloadKeyEx ( _In_ POBJECT_ATTRIBUTES  TargetKey,
_In_opt_ HANDLE  Event 
)