Added prototypes for registry functions.

diff --git a/include/ntddk.h b/include/ntddk.h
index 787d2ce..9d223f1 100644
--- a/include/ntddk.h
+++ b/include/ntddk.h
@@ -8,6 +8,7 @@
 
 #include "ntdef.h"
 #include "winnt.h"
+#include "winreg.h"
 #include "winbase.h"	/* fixme: should be taken out sometimes */
 
 #include "pshpack1.h"
@@ -845,6 +846,118 @@
         IN SECURITY_INFORMATION SecurityInformation,
         IN PSECURITY_DESCRIPTOR SecurityDescriptor);
 
+/*	registry functions */
+
+NTSTATUS WINAPI NtCreateKey(
+	PHANDLE KeyHandle,
+	ACCESS_MASK DesiredAccess,
+	POBJECT_ATTRIBUTES ObjectAttributes,
+	ULONG TitleIndex,
+	PUNICODE_STRING Class,
+	ULONG CreateOptions,
+	PULONG Disposition);
+
+NTSTATUS WINAPI NtOpenKey(
+	PHANDLE KeyHandle,
+	ACCESS_MASK DesiredAccess,
+	POBJECT_ATTRIBUTES ObjectAttributes);
+
+NTSTATUS WINAPI NtDeleteKey(HANDLE KeyHandle);
+
+NTSTATUS WINAPI NtDeleteValueKey(
+	IN HANDLE KeyHandle,
+	IN PUNICODE_STRING ValueName);
+
+NTSTATUS WINAPI NtEnumerateKey(
+	HANDLE KeyHandle,
+	ULONG Index,
+	KEY_INFORMATION_CLASS KeyInformationClass,
+	PVOID KeyInformation,
+	ULONG Length,
+	PULONG ResultLength);
+
+NTSTATUS WINAPI NtQueryKey(
+	HANDLE KeyHandle,
+	KEY_INFORMATION_CLASS KeyInformationClass,
+	PVOID KeyInformation,
+	ULONG Length,
+	PULONG ResultLength);
+
+NTSTATUS WINAPI NtEnumerateValueKey(
+	HANDLE KeyHandle,
+	ULONG Index,
+	KEY_VALUE_INFORMATION_CLASS KeyInformationClass,
+	PVOID KeyInformation,
+	ULONG Length,
+	PULONG ResultLength);
+
+NTSTATUS WINAPI NtFlushKey(HANDLE KeyHandle);
+
+NTSTATUS WINAPI NtLoadKey(
+	PHANDLE KeyHandle,
+	POBJECT_ATTRIBUTES ObjectAttributes);
+
+NTSTATUS WINAPI NtNotifyChangeKey(
+	IN HANDLE KeyHandle,
+	IN HANDLE Event,
+	IN PIO_APC_ROUTINE ApcRoutine OPTIONAL,
+	IN PVOID ApcContext OPTIONAL,
+	OUT PIO_STATUS_BLOCK IoStatusBlock,
+	IN ULONG CompletionFilter,
+	IN BOOLEAN Asynchroneous,
+	OUT PVOID ChangeBuffer,
+	IN ULONG Length,
+	IN BOOLEAN WatchSubtree);
+
+NTSTATUS WINAPI NtQueryMultipleValueKey(
+	HANDLE KeyHandle,
+	PVALENTW ListOfValuesToQuery,
+	ULONG NumberOfItems,
+	PVOID MultipleValueInformation,
+	ULONG Length,
+	PULONG  ReturnLength);
+
+NTSTATUS WINAPI NtQueryValueKey(
+	IN HANDLE KeyHandle,
+	IN PUNICODE_STRING ValueName,
+	IN KEY_VALUE_INFORMATION_CLASS KeyValueInformationClass,
+	OUT PVOID KeyValueInformation,
+	IN ULONG Length,
+	OUT PULONG ResultLength);
+
+NTSTATUS WINAPI NtReplaceKey(
+	IN POBJECT_ATTRIBUTES ObjectAttributes,
+	IN HANDLE Key,
+	IN POBJECT_ATTRIBUTES ReplacedObjectAttributes);
+
+NTSTATUS WINAPI NtRestoreKey(
+	HANDLE KeyHandle,
+	HANDLE FileHandle,
+	ULONG RestoreFlags);
+
+NTSTATUS WINAPI NtSaveKey(
+	IN HANDLE KeyHandle,
+	IN HANDLE FileHandle);
+
+NTSTATUS WINAPI NtSetInformationKey(
+	IN HANDLE KeyHandle,
+	IN const int KeyInformationClass,
+	IN PVOID KeyInformation,
+	IN ULONG KeyInformationLength);
+
+NTSTATUS WINAPI NtSetValueKey(
+	HANDLE KeyHandle,
+	PUNICODE_STRING ValueName,
+	ULONG TitleIndex,
+	ULONG Type,
+	PVOID Data,
+	ULONG DataSize);
+
+NTSTATUS WINAPI NtUnloadKey(
+	IN HANDLE KeyHandle);
+
+NTSTATUS WINAPI NtClose(
+	HANDLE Handle);
 
 /*	misc */