Major cleanup of NDK. I've decided that it would be much cleaner to accumulate all...
[reactos.git] / reactos / include / ndk / zwfuncs.h
1 /*
2 * PROJECT: ReactOS Native Headers
3 * FILE: include/ndk/zwfuncs.h
4 * PURPOSE: Defintions for Native Functions not defined in DDK/IFS
5 * PROGRAMMER: Alex Ionescu (alex@relsoft.net)
6 * UPDATE HISTORY:
7 * Created 06/10/04
8 */
9 #ifndef _ZWFUNCS_H
10 #define _ZWFUNCS_H
11
12 /* DEPENDENCIES **************************************************************/
13 #define _WMIKM_
14 #include <evntrace.h>
15
16 /* FUNCTION TYPES ************************************************************/
17
18 /* PROTOTYPES ****************************************************************/
19
20 NTSTATUS
21 STDCALL
22 NtAcceptConnectPort(
23 PHANDLE PortHandle,
24 HANDLE NamedPortHandle,
25 PPORT_MESSAGE ServerReply,
26 BOOLEAN AcceptIt,
27 PPORT_VIEW WriteMap,
28 PREMOTE_PORT_VIEW ReadMap
29 );
30
31 NTSTATUS
32 STDCALL
33 NtAccessCheck(
34 IN PSECURITY_DESCRIPTOR SecurityDescriptor,
35 IN HANDLE ClientToken,
36 IN ACCESS_MASK DesiredAcces,
37 IN PGENERIC_MAPPING GenericMapping,
38 OUT PPRIVILEGE_SET PrivilegeSet,
39 OUT PULONG ReturnLength,
40 OUT PACCESS_MASK GrantedAccess,
41 OUT PNTSTATUS AccessStatus
42 );
43
44 NTSTATUS
45 STDCALL
46 ZwAccessCheck(
47 IN PSECURITY_DESCRIPTOR SecurityDescriptor,
48 IN HANDLE ClientToken,
49 IN ACCESS_MASK DesiredAcces,
50 IN PGENERIC_MAPPING GenericMapping,
51 OUT PPRIVILEGE_SET PrivilegeSet,
52 OUT PULONG ReturnLength,
53 OUT PACCESS_MASK GrantedAccess,
54 OUT PNTSTATUS AccessStatus
55 );
56
57 NTSTATUS
58 STDCALL
59 NtAccessCheckAndAuditAlarm(
60 IN PUNICODE_STRING SubsystemName,
61 IN PHANDLE ObjectHandle,
62 IN PUNICODE_STRING ObjectTypeName,
63 IN PUNICODE_STRING ObjectName,
64 IN PSECURITY_DESCRIPTOR SecurityDescriptor,
65 IN ACCESS_MASK DesiredAccess,
66 IN PGENERIC_MAPPING GenericMapping,
67 IN BOOLEAN ObjectCreation,
68 OUT PACCESS_MASK GrantedAccess,
69 OUT PNTSTATUS AccessStatus,
70 OUT PBOOLEAN GenerateOnClose
71 );
72
73 NTSTATUS
74 STDCALL
75 NtAddAtom(
76 IN PWSTR AtomName,
77 IN ULONG AtomNameLength,
78 IN OUT PRTL_ATOM Atom
79 );
80
81 NTSTATUS
82 STDCALL
83 ZwAddAtom(
84 IN PWSTR AtomName,
85 IN ULONG AtomNameLength,
86 IN OUT PRTL_ATOM Atom
87 );
88
89 NTSTATUS
90 STDCALL
91 NtAddBootEntry(
92 IN PUNICODE_STRING EntryName,
93 IN PUNICODE_STRING EntryValue
94 );
95
96 NTSTATUS
97 STDCALL
98 ZwAddBootEntry(
99 IN PUNICODE_STRING EntryName,
100 IN PUNICODE_STRING EntryValue
101 );
102
103 NTSTATUS
104 STDCALL
105 NtAdjustGroupsToken(
106 IN HANDLE TokenHandle,
107 IN BOOLEAN ResetToDefault,
108 IN PTOKEN_GROUPS NewState,
109 IN ULONG BufferLength,
110 OUT PTOKEN_GROUPS PreviousState OPTIONAL,
111 OUT PULONG ReturnLength
112 );
113
114 NTSTATUS
115 STDCALL
116 ZwAdjustGroupsToken(
117 IN HANDLE TokenHandle,
118 IN BOOLEAN ResetToDefault,
119 IN PTOKEN_GROUPS NewState,
120 IN ULONG BufferLength,
121 OUT PTOKEN_GROUPS PreviousState,
122 OUT PULONG ReturnLength
123 );
124
125 NTSTATUS
126 STDCALL
127 NtAdjustPrivilegesToken(
128 IN HANDLE TokenHandle,
129 IN BOOLEAN DisableAllPrivileges,
130 IN PTOKEN_PRIVILEGES NewState,
131 IN ULONG BufferLength,
132 OUT PTOKEN_PRIVILEGES PreviousState,
133 OUT PULONG ReturnLength
134 );
135
136 NTSTATUS
137 STDCALL
138 ZwAdjustPrivilegesToken(
139 IN HANDLE TokenHandle,
140 IN BOOLEAN DisableAllPrivileges,
141 IN PTOKEN_PRIVILEGES NewState,
142 IN ULONG BufferLength,
143 OUT PTOKEN_PRIVILEGES PreviousState,
144 OUT PULONG ReturnLength
145 );
146
147 NTSTATUS
148 STDCALL
149 NtAlertResumeThread(
150 IN HANDLE ThreadHandle,
151 OUT PULONG SuspendCount
152 );
153
154 NTSTATUS
155 STDCALL
156 ZwAlertResumeThread(
157 IN HANDLE ThreadHandle,
158 OUT PULONG SuspendCount
159 );
160
161 NTSTATUS
162 STDCALL
163 NtAlertThread(
164 IN HANDLE ThreadHandle
165 );
166
167 NTSTATUS
168 STDCALL
169 ZwAlertThread(
170 IN HANDLE ThreadHandle
171 );
172
173 NTSTATUS
174 STDCALL
175 NtAllocateLocallyUniqueId(
176 OUT LUID *LocallyUniqueId
177 );
178
179 NTSTATUS
180 STDCALL
181 ZwAllocateLocallyUniqueId(
182 OUT PLUID Luid
183 );
184
185 NTSTATUS
186 STDCALL
187 NtAllocateUuids(
188 PULARGE_INTEGER Time,
189 PULONG Range,
190 PULONG Sequence,
191 PUCHAR Seed
192 );
193
194 NTSTATUS
195 STDCALL
196 ZwAllocateUuids(
197 PULARGE_INTEGER Time,
198 PULONG Range,
199 PULONG Sequence,
200 PUCHAR Seed
201 );
202
203 NTSTATUS
204 STDCALL
205 NtAllocateVirtualMemory(
206 IN HANDLE ProcessHandle,
207 IN OUT PVOID *BaseAddress,
208 IN ULONG ZeroBits,
209 IN OUT PULONG RegionSize,
210 IN ULONG AllocationType,
211 IN ULONG Protect
212 );
213
214 NTSTATUS
215 STDCALL
216 ZwAllocateVirtualMemory(
217 IN HANDLE ProcessHandle,
218 IN OUT PVOID *BaseAddress,
219 IN ULONG ZeroBits,
220 IN OUT PULONG RegionSize,
221 IN ULONG AllocationType,
222 IN ULONG Protect
223 );
224
225 NTSTATUS
226 STDCALL
227 NtAssignProcessToJobObject(
228 HANDLE JobHandle,
229 HANDLE ProcessHandle
230 );
231
232 NTSTATUS
233 STDCALL
234 ZwAssignProcessToJobObject(
235 HANDLE JobHandle,
236 HANDLE ProcessHandle
237 );
238
239 NTSTATUS
240 STDCALL
241 NtCallbackReturn(
242 PVOID Result,
243 ULONG ResultLength,
244 NTSTATUS Status
245 );
246
247 NTSTATUS
248 STDCALL
249 ZwCallbackReturn(
250 PVOID Result,
251 ULONG ResultLength,
252 NTSTATUS Status
253 );
254
255 NTSTATUS
256 STDCALL
257 NtCancelIoFile(
258 IN HANDLE FileHandle,
259 OUT PIO_STATUS_BLOCK IoStatusBlock
260 );
261
262 NTSTATUS
263 STDCALL
264 ZwCancelIoFile(
265 IN HANDLE FileHandle,
266 OUT PIO_STATUS_BLOCK IoStatusBlock
267 );
268
269 NTSTATUS
270 STDCALL
271 NtCancelTimer(
272 IN HANDLE TimerHandle,
273 OUT PBOOLEAN CurrentState OPTIONAL
274 );
275
276 NTSTATUS
277 STDCALL
278 NtClearEvent(
279 IN HANDLE EventHandle
280 );
281
282 NTSTATUS
283 STDCALL
284 ZwClearEvent(
285 IN HANDLE EventHandle
286 );
287
288 NTSTATUS
289 STDCALL
290 NtCreateJobObject(
291 PHANDLE JobHandle,
292 ACCESS_MASK DesiredAccess,
293 POBJECT_ATTRIBUTES ObjectAttributes
294 );
295
296 NTSTATUS
297 STDCALL
298 ZwCreateJobObject(
299 PHANDLE JobHandle,
300 ACCESS_MASK DesiredAccess,
301 POBJECT_ATTRIBUTES ObjectAttributes
302 );
303
304 NTSTATUS
305 STDCALL
306 NtClose(
307 IN HANDLE Handle
308 );
309
310 NTSTATUS
311 STDCALL
312 ZwClose(
313 IN HANDLE Handle
314 );
315
316 NTSTATUS
317 STDCALL
318 NtCloseObjectAuditAlarm(
319 IN PUNICODE_STRING SubsystemName,
320 IN PVOID HandleId,
321 IN BOOLEAN GenerateOnClose
322 );
323
324 NTSTATUS
325 STDCALL
326 ZwCloseObjectAuditAlarm(
327 IN PUNICODE_STRING SubsystemName,
328 IN PVOID HandleId,
329 IN BOOLEAN GenerateOnClose
330 );
331
332 NTSTATUS
333 STDCALL
334 NtCompleteConnectPort(
335 HANDLE PortHandle
336 );
337
338 NTSTATUS
339 STDCALL
340 ZwCompleteConnectPort(
341 HANDLE PortHandle
342 );
343
344 NTSTATUS
345 STDCALL
346 NtConnectPort(
347 PHANDLE PortHandle,
348 PUNICODE_STRING PortName,
349 PSECURITY_QUALITY_OF_SERVICE SecurityQos,
350 PPORT_VIEW SectionInfo,
351 PREMOTE_PORT_VIEW MapInfo,
352 PULONG MaxMessageSize,
353 PVOID ConnectInfo,
354 PULONG ConnectInfoLength
355 );
356
357 NTSTATUS
358 STDCALL
359 ZwConnectPort(
360 PHANDLE PortHandle,
361 PUNICODE_STRING PortName,
362 PSECURITY_QUALITY_OF_SERVICE SecurityQos,
363 PPORT_VIEW SectionInfo,
364 PREMOTE_PORT_VIEW MapInfo,
365 PULONG MaxMessageSize,
366 PVOID ConnectInfo,
367 PULONG ConnectInfoLength
368 );
369
370 NTSTATUS
371 STDCALL
372 NtContinue(
373 IN PCONTEXT Context,
374 IN BOOLEAN TestAlert
375 );
376
377 NTSTATUS
378 STDCALL
379 ZwContinue(
380 IN PCONTEXT Context,
381 IN CINT IrqLevel
382 );
383
384 NTSTATUS
385 STDCALL
386 NtCreateDirectoryObject(
387 OUT PHANDLE DirectoryHandle,
388 IN ACCESS_MASK DesiredAccess,
389 IN POBJECT_ATTRIBUTES ObjectAttributes
390 );
391
392 NTSTATUS
393 STDCALL
394 ZwCreateDirectoryObject(
395 OUT PHANDLE DirectoryHandle,
396 IN ACCESS_MASK DesiredAccess,
397 IN POBJECT_ATTRIBUTES ObjectAttributes
398 );
399
400 NTSTATUS
401 STDCALL
402 NtCreateEvent(
403 OUT PHANDLE EventHandle,
404 IN ACCESS_MASK DesiredAccess,
405 IN POBJECT_ATTRIBUTES ObjectAttributes,
406 IN EVENT_TYPE EventType,
407 IN BOOLEAN InitialState
408 );
409
410 NTSTATUS
411 STDCALL
412 ZwCreateEvent(
413 OUT PHANDLE EventHandle,
414 IN ACCESS_MASK DesiredAccess,
415 IN POBJECT_ATTRIBUTES ObjectAttributes,
416 IN EVENT_TYPE EventType,
417 IN BOOLEAN InitialState
418 );
419
420 NTSTATUS
421 STDCALL
422 NtCreateEventPair(
423 OUT PHANDLE EventPairHandle,
424 IN ACCESS_MASK DesiredAccess,
425 IN POBJECT_ATTRIBUTES ObjectAttributes
426 );
427
428 NTSTATUS
429 STDCALL
430 ZwCreateEventPair(
431 OUT PHANDLE EventPairHandle,
432 IN ACCESS_MASK DesiredAccess,
433 IN POBJECT_ATTRIBUTES ObjectAttributes
434 );
435
436 NTSTATUS
437 STDCALL
438 NtCreateFile(
439 OUT PHANDLE FileHandle,
440 IN ACCESS_MASK DesiredAccess,
441 IN POBJECT_ATTRIBUTES ObjectAttributes,
442 OUT PIO_STATUS_BLOCK IoStatusBlock,
443 IN PLARGE_INTEGER AllocationSize OPTIONAL,
444 IN ULONG FileAttributes,
445 IN ULONG ShareAccess,
446 IN ULONG CreateDisposition,
447 IN ULONG CreateOptions,
448 IN PVOID EaBuffer OPTIONAL,
449 IN ULONG EaLength
450 );
451
452 NTSTATUS
453 STDCALL
454 ZwCreateFile(
455 OUT PHANDLE FileHandle,
456 IN ACCESS_MASK DesiredAccess,
457 IN POBJECT_ATTRIBUTES ObjectAttributes,
458 OUT PIO_STATUS_BLOCK IoStatusBlock,
459 IN PLARGE_INTEGER AllocationSize OPTIONAL,
460 IN ULONG FileAttributes,
461 IN ULONG ShareAccess,
462 IN ULONG CreateDisposition,
463 IN ULONG CreateOptions,
464 IN PVOID EaBuffer OPTIONAL,
465 IN ULONG EaLength
466 );
467
468 NTSTATUS
469 STDCALL
470 NtCreateIoCompletion(
471 OUT PHANDLE IoCompletionHandle,
472 IN ACCESS_MASK DesiredAccess,
473 IN POBJECT_ATTRIBUTES ObjectAttributes,
474 IN ULONG NumberOfConcurrentThreads
475 );
476
477 NTSTATUS
478 STDCALL
479 ZwCreateIoCompletion(
480 OUT PHANDLE IoCompletionHandle,
481 IN ACCESS_MASK DesiredAccess,
482 IN POBJECT_ATTRIBUTES ObjectAttributes,
483 IN ULONG NumberOfConcurrentThreads
484 );
485
486 NTSTATUS
487 STDCALL
488 NtCreateKey(
489 OUT PHANDLE KeyHandle,
490 IN ACCESS_MASK DesiredAccess,
491 IN POBJECT_ATTRIBUTES ObjectAttributes,
492 IN ULONG TitleIndex,
493 IN PUNICODE_STRING Class OPTIONAL,
494 IN ULONG CreateOptions,
495 IN PULONG Disposition OPTIONAL
496 );
497
498 NTSTATUS
499 STDCALL
500 ZwCreateKey(
501 OUT PHANDLE KeyHandle,
502 IN ACCESS_MASK DesiredAccess,
503 IN POBJECT_ATTRIBUTES ObjectAttributes,
504 IN ULONG TitleIndex,
505 IN PUNICODE_STRING Class OPTIONAL,
506 IN ULONG CreateOptions,
507 IN PULONG Disposition OPTIONAL
508 );
509
510 NTSTATUS
511 STDCALL
512 NtCreateMailslotFile(
513 OUT PHANDLE MailSlotFileHandle,
514 IN ACCESS_MASK DesiredAccess,
515 IN POBJECT_ATTRIBUTES ObjectAttributes,
516 OUT PIO_STATUS_BLOCK IoStatusBlock,
517 IN ULONG FileAttributes,
518 IN ULONG ShareAccess,
519 IN ULONG MaxMessageSize,
520 IN PLARGE_INTEGER TimeOut
521 );
522
523 NTSTATUS
524 STDCALL
525 ZwCreateMailslotFile(
526 OUT PHANDLE MailSlotFileHandle,
527 IN ACCESS_MASK DesiredAccess,
528 IN POBJECT_ATTRIBUTES ObjectAttributes,
529 OUT PIO_STATUS_BLOCK IoStatusBlock,
530 IN ULONG FileAttributes,
531 IN ULONG ShareAccess,
532 IN ULONG MaxMessageSize,
533 IN PLARGE_INTEGER TimeOut
534 );
535
536 NTSTATUS
537 STDCALL
538 NtCreateMutant(
539 OUT PHANDLE MutantHandle,
540 IN ACCESS_MASK DesiredAccess,
541 IN POBJECT_ATTRIBUTES ObjectAttributes,
542 IN BOOLEAN InitialOwner
543 );
544
545 NTSTATUS
546 STDCALL
547 ZwCreateMutant(
548 OUT PHANDLE MutantHandle,
549 IN ACCESS_MASK DesiredAccess,
550 IN POBJECT_ATTRIBUTES ObjectAttributes,
551 IN BOOLEAN InitialOwner
552 );
553
554 NTSTATUS
555 STDCALL
556 NtCreateNamedPipeFile(
557 OUT PHANDLE NamedPipeFileHandle,
558 IN ACCESS_MASK DesiredAccess,
559 IN POBJECT_ATTRIBUTES ObjectAttributes,
560 OUT PIO_STATUS_BLOCK IoStatusBlock,
561 IN ULONG ShareAccess,
562 IN ULONG CreateDisposition,
563 IN ULONG CreateOptions,
564 IN ULONG WriteModeMessage,
565 IN ULONG ReadModeMessage,
566 IN ULONG NonBlocking,
567 IN ULONG MaxInstances,
568 IN ULONG InBufferSize,
569 IN ULONG OutBufferSize,
570 IN PLARGE_INTEGER DefaultTimeOut
571 );
572
573 NTSTATUS
574 STDCALL
575 ZwCreateNamedPipeFile(
576 OUT PHANDLE NamedPipeFileHandle,
577 IN ACCESS_MASK DesiredAccess,
578 IN POBJECT_ATTRIBUTES ObjectAttributes,
579 OUT PIO_STATUS_BLOCK IoStatusBlock,
580 IN ULONG ShareAccess,
581 IN ULONG CreateDisposition,
582 IN ULONG CreateOptions,
583 IN ULONG WriteModeMessage,
584 IN ULONG ReadModeMessage,
585 IN ULONG NonBlocking,
586 IN ULONG MaxInstances,
587 IN ULONG InBufferSize,
588 IN ULONG OutBufferSize,
589 IN PLARGE_INTEGER DefaultTimeOut
590 );
591
592 NTSTATUS
593 STDCALL
594 NtCreatePagingFile(
595 IN PUNICODE_STRING FileName,
596 IN PLARGE_INTEGER InitialSize,
597 IN PLARGE_INTEGER MaxiumSize,
598 IN ULONG Reserved
599 );
600
601 NTSTATUS
602 STDCALL
603 ZwCreatePagingFile(
604 IN PUNICODE_STRING FileName,
605 IN PLARGE_INTEGER InitialSize,
606 IN PLARGE_INTEGER MaxiumSize,
607 IN ULONG Reserved
608 );
609
610 NTSTATUS
611 STDCALL
612 NtCreatePort(
613 PHANDLE PortHandle,
614 POBJECT_ATTRIBUTES ObjectAttributes,
615 ULONG MaxConnectInfoLength,
616 ULONG MaxDataLength,
617 ULONG NPMessageQueueSize OPTIONAL
618 );
619
620 NTSTATUS
621 STDCALL
622 NtCreatePort(
623 PHANDLE PortHandle,
624 POBJECT_ATTRIBUTES ObjectAttributes,
625 ULONG MaxConnectInfoLength,
626 ULONG MaxDataLength,
627 ULONG NPMessageQueueSize OPTIONAL
628 );
629
630 NTSTATUS
631 STDCALL
632 NtCreateProcess(
633 OUT PHANDLE ProcessHandle,
634 IN ACCESS_MASK DesiredAccess,
635 IN POBJECT_ATTRIBUTES ObjectAttributes OPTIONAL,
636 IN HANDLE ParentProcess,
637 IN BOOLEAN InheritObjectTable,
638 IN HANDLE SectionHandle OPTIONAL,
639 IN HANDLE DebugPort OPTIONAL,
640 IN HANDLE ExceptionPort OPTIONAL
641 );
642
643 NTSTATUS
644 STDCALL
645 ZwCreateProcess(
646 OUT PHANDLE ProcessHandle,
647 IN ACCESS_MASK DesiredAccess,
648 IN POBJECT_ATTRIBUTES ObjectAttributes OPTIONAL,
649 IN HANDLE ParentProcess,
650 IN BOOLEAN InheritObjectTable,
651 IN HANDLE SectionHandle OPTIONAL,
652 IN HANDLE DebugPort OPTIONAL,
653 IN HANDLE ExceptionPort OPTIONAL
654 );
655
656 NTSTATUS
657 STDCALL
658 NtCreateProfile(
659 OUT PHANDLE ProfileHandle,
660 IN HANDLE ProcessHandle,
661 IN PVOID ImageBase,
662 IN ULONG ImageSize,
663 IN ULONG Granularity,
664 OUT PVOID Buffer,
665 IN ULONG ProfilingSize,
666 IN KPROFILE_SOURCE Source,
667 IN KAFFINITY ProcessorMask
668 );
669
670 NTSTATUS
671 STDCALL
672 ZwCreateProfile(
673 OUT PHANDLE ProfileHandle,
674 IN POBJECT_ATTRIBUTES ObjectAttributes,
675 IN ULONG ImageBase,
676 IN ULONG ImageSize,
677 IN ULONG Granularity,
678 OUT PVOID Buffer,
679 IN ULONG ProfilingSize,
680 IN ULONG ClockSource,
681 IN ULONG ProcessorMask
682 );
683
684 NTSTATUS
685 STDCALL
686 NtCreateSection(
687 OUT PHANDLE SectionHandle,
688 IN ACCESS_MASK DesiredAccess,
689 IN POBJECT_ATTRIBUTES ObjectAttributes OPTIONAL,
690 IN PLARGE_INTEGER MaximumSize OPTIONAL,
691 IN ULONG SectionPageProtection OPTIONAL,
692 IN ULONG AllocationAttributes,
693 IN HANDLE FileHandle OPTIONAL
694 );
695
696 NTSTATUS
697 STDCALL
698 ZwCreateSection(
699 OUT PHANDLE SectionHandle,
700 IN ACCESS_MASK DesiredAccess,
701 IN POBJECT_ATTRIBUTES ObjectAttributes OPTIONAL,
702 IN PLARGE_INTEGER MaximumSize OPTIONAL,
703 IN ULONG SectionPageProtection OPTIONAL,
704 IN ULONG AllocationAttributes,
705 IN HANDLE FileHandle OPTIONAL
706 );
707
708 NTSTATUS
709 STDCALL
710 NtCreateSemaphore(
711 OUT PHANDLE SemaphoreHandle,
712 IN ACCESS_MASK DesiredAccess,
713 IN POBJECT_ATTRIBUTES ObjectAttributes OPTIONAL,
714 IN LONG InitialCount,
715 IN LONG MaximumCount
716 );
717
718 NTSTATUS
719 STDCALL
720 ZwCreateSemaphore(
721 OUT PHANDLE SemaphoreHandle,
722 IN ACCESS_MASK DesiredAccess,
723 IN POBJECT_ATTRIBUTES ObjectAttributes OPTIONAL,
724 IN LONG InitialCount,
725 IN LONG MaximumCount
726 );
727
728 NTSTATUS
729 STDCALL
730 NtCreateSymbolicLinkObject(
731 OUT PHANDLE SymbolicLinkHandle,
732 IN ACCESS_MASK DesiredAccess,
733 IN POBJECT_ATTRIBUTES ObjectAttributes,
734 IN PUNICODE_STRING Name
735 );
736
737 NTSTATUS
738 STDCALL
739 ZwCreateSymbolicLinkObject(
740 OUT PHANDLE SymbolicLinkHandle,
741 IN ACCESS_MASK DesiredAccess,
742 IN POBJECT_ATTRIBUTES ObjectAttributes,
743 IN PUNICODE_STRING Name
744 );
745
746 NTSTATUS
747 STDCALL
748 NtCreateThread(
749 OUT PHANDLE ThreadHandle,
750 IN ACCESS_MASK DesiredAccess,
751 IN POBJECT_ATTRIBUTES ObjectAttributes OPTIONAL,
752 IN HANDLE ProcessHandle,
753 OUT PCLIENT_ID ClientId,
754 IN PCONTEXT ThreadContext,
755 IN PINITIAL_TEB UserStack,
756 IN BOOLEAN CreateSuspended
757 );
758
759 NTSTATUS
760 STDCALL
761 ZwCreateThread(
762 OUT PHANDLE ThreadHandle,
763 IN ACCESS_MASK DesiredAccess,
764 IN POBJECT_ATTRIBUTES ObjectAttributes OPTIONAL,
765 IN HANDLE ProcessHandle,
766 OUT PCLIENT_ID ClientId,
767 IN PCONTEXT ThreadContext,
768 IN PINITIAL_TEB UserStack,
769 IN BOOLEAN CreateSuspended
770 );
771
772 NTSTATUS
773 STDCALL
774 NtCreateTimer(
775 OUT PHANDLE TimerHandle,
776 IN ACCESS_MASK DesiredAccess,
777 IN POBJECT_ATTRIBUTES ObjectAttributes OPTIONAL,
778 IN TIMER_TYPE TimerType
779 );
780
781 NTSTATUS
782 STDCALL
783 ZwCreateTimer(
784 OUT PHANDLE TimerHandle,
785 IN ACCESS_MASK DesiredAccess,
786 IN POBJECT_ATTRIBUTES ObjectAttributes OPTIONAL,
787 IN TIMER_TYPE TimerType
788 );
789
790 NTSTATUS
791 STDCALL
792 NtCreateToken(
793 OUT PHANDLE TokenHandle,
794 IN ACCESS_MASK DesiredAccess,
795 IN POBJECT_ATTRIBUTES ObjectAttributes,
796 IN TOKEN_TYPE TokenType,
797 IN PLUID AuthenticationId,
798 IN PLARGE_INTEGER ExpirationTime,
799 IN PTOKEN_USER TokenUser,
800 IN PTOKEN_GROUPS TokenGroups,
801 IN PTOKEN_PRIVILEGES TokenPrivileges,
802 IN PTOKEN_OWNER TokenOwner,
803 IN PTOKEN_PRIMARY_GROUP TokenPrimaryGroup,
804 IN PTOKEN_DEFAULT_DACL TokenDefaultDacl,
805 IN PTOKEN_SOURCE TokenSource
806 );
807
808 NTSTATUS
809 STDCALL
810 ZwCreateToken(
811 OUT PHANDLE TokenHandle,
812 IN ACCESS_MASK DesiredAccess,
813 IN POBJECT_ATTRIBUTES ObjectAttributes,
814 IN TOKEN_TYPE TokenType,
815 IN PLUID AuthenticationId,
816 IN PLARGE_INTEGER ExpirationTime,
817 IN PTOKEN_USER TokenUser,
818 IN PTOKEN_GROUPS TokenGroups,
819 IN PTOKEN_PRIVILEGES TokenPrivileges,
820 IN PTOKEN_OWNER TokenOwner,
821 IN PTOKEN_PRIMARY_GROUP TokenPrimaryGroup,
822 IN PTOKEN_DEFAULT_DACL TokenDefaultDacl,
823 IN PTOKEN_SOURCE TokenSource
824 );
825
826 NTSTATUS
827 STDCALL
828 NtCreateWaitablePort(
829 PHANDLE PortHandle,
830 POBJECT_ATTRIBUTES ObjectAttributes,
831 ULONG MaxConnectInfoLength,
832 ULONG MaxDataLength,
833 ULONG NPMessageQueueSize OPTIONAL
834 );
835
836 NTSTATUS
837 STDCALL
838 ZwCreateWaitablePort(
839 PHANDLE PortHandle,
840 POBJECT_ATTRIBUTES ObjectAttributes,
841 ULONG MaxConnectInfoLength,
842 ULONG MaxDataLength,
843 ULONG NPMessageQueueSize OPTIONAL
844 );
845
846 NTSTATUS
847 STDCALL
848 NtDelayExecution(
849 IN BOOLEAN Alertable,
850 IN LARGE_INTEGER *Interval
851 );
852
853 NTSTATUS
854 STDCALL
855 ZwDelayExecution(
856 IN BOOLEAN Alertable,
857 IN LARGE_INTEGER *Interval
858 );
859
860 NTSTATUS
861 STDCALL
862 NtDeleteAtom(
863 IN RTL_ATOM Atom
864 );
865
866 NTSTATUS
867 STDCALL
868 ZwDeleteAtom(
869 IN RTL_ATOM Atom
870 );
871
872 NTSTATUS
873 STDCALL
874 NtDeleteBootEntry(
875 IN PUNICODE_STRING EntryName,
876 IN PUNICODE_STRING EntryValue
877 );
878
879 NTSTATUS
880 STDCALL
881 ZwDeleteBootEntry(
882 IN PUNICODE_STRING EntryName,
883 IN PUNICODE_STRING EntryValue
884 );
885
886 NTSTATUS
887 STDCALL
888 NtDeleteFile(
889 IN POBJECT_ATTRIBUTES ObjectAttributes
890 );
891
892 NTSTATUS
893 STDCALL
894 ZwDeleteFile(
895 IN POBJECT_ATTRIBUTES ObjectAttributes
896 );
897
898 NTSTATUS
899 STDCALL
900 NtDeleteKey(
901 IN HANDLE KeyHandle
902 );
903
904 NTSTATUS
905 STDCALL
906 ZwDeleteKey(
907 IN HANDLE KeyHandle
908 );
909
910 NTSTATUS
911 STDCALL
912 NtDeleteObjectAuditAlarm(
913 IN PUNICODE_STRING SubsystemName,
914 IN PVOID HandleId,
915 IN BOOLEAN GenerateOnClose
916 );
917
918 NTSTATUS
919 STDCALL
920 ZwDeleteObjectAuditAlarm(
921 IN PUNICODE_STRING SubsystemName,
922 IN PVOID HandleId,
923 IN BOOLEAN GenerateOnClose
924 );
925
926 NTSTATUS
927 STDCALL
928 NtDeleteValueKey(
929 IN HANDLE KeyHandle,
930 IN PUNICODE_STRING ValueName
931 );
932
933 NTSTATUS
934 STDCALL
935 ZwDeleteValueKey(
936 IN HANDLE KeyHandle,
937 IN PUNICODE_STRING ValueName
938 );
939
940 NTSTATUS
941 STDCALL
942 NtDeviceIoControlFile(
943 IN HANDLE DeviceHandle,
944 IN HANDLE Event OPTIONAL,
945 IN PIO_APC_ROUTINE UserApcRoutine OPTIONAL,
946 IN PVOID UserApcContext OPTIONAL,
947 OUT PIO_STATUS_BLOCK IoStatusBlock,
948 IN ULONG IoControlCode,
949 IN PVOID InputBuffer,
950 IN ULONG InputBufferSize,
951 OUT PVOID OutputBuffer,
952 IN ULONG OutputBufferSize
953 );
954
955 NTSTATUS
956 STDCALL
957 ZwDeviceIoControlFile(
958 IN HANDLE DeviceHandle,
959 IN HANDLE Event OPTIONAL,
960 IN PIO_APC_ROUTINE UserApcRoutine OPTIONAL,
961 IN PVOID UserApcContext OPTIONAL,
962 OUT PIO_STATUS_BLOCK IoStatusBlock,
963 IN ULONG IoControlCode,
964 IN PVOID InputBuffer,
965 IN ULONG InputBufferSize,
966 OUT PVOID OutputBuffer,
967 IN ULONG OutputBufferSize
968 );
969
970 NTSTATUS
971 STDCALL
972 NtDisplayString(
973 IN PUNICODE_STRING DisplayString
974 );
975
976 NTSTATUS
977 STDCALL
978 ZwDisplayString(
979 IN PUNICODE_STRING DisplayString
980 );
981
982 NTSTATUS
983 STDCALL
984 NtDuplicateObject(
985 IN HANDLE SourceProcessHandle,
986 IN HANDLE SourceHandle,
987 IN HANDLE TargetProcessHandle,
988 OUT PHANDLE TargetHandle,
989 IN ACCESS_MASK DesiredAccess,
990 IN ULONG HandleAttributes,
991 IN ULONG Options
992 );
993
994 NTSTATUS
995 STDCALL
996 ZwDuplicateObject(
997 IN HANDLE SourceProcessHandle,
998 IN HANDLE SourceHandle,
999 IN HANDLE TargetProcessHandle,
1000 OUT PHANDLE TargetHandle,
1001 IN ACCESS_MASK DesiredAccess,
1002 IN ULONG HandleAttributes,
1003 IN ULONG Options
1004 );
1005
1006 NTSTATUS
1007 STDCALL
1008 NtDuplicateToken(
1009 IN HANDLE ExistingTokenHandle,
1010 IN ACCESS_MASK DesiredAccess,
1011 IN POBJECT_ATTRIBUTES ObjectAttributes OPTIONAL,
1012 IN BOOLEAN EffectiveOnly,
1013 IN TOKEN_TYPE TokenType,
1014 OUT PHANDLE NewTokenHandle
1015 );
1016
1017 NTSTATUS
1018 STDCALL
1019 NtEnumerateBootEntries(
1020 IN ULONG Unknown1,
1021 IN ULONG Unknown2
1022 );
1023
1024 NTSTATUS
1025 STDCALL
1026 ZwEnumerateBootEntries(
1027 IN ULONG Unknown1,
1028 IN ULONG Unknown2
1029 );
1030
1031 NTSTATUS
1032 STDCALL
1033 NtEnumerateKey(
1034 IN HANDLE KeyHandle,
1035 IN ULONG Index,
1036 IN KEY_INFORMATION_CLASS KeyInformationClass,
1037 OUT PVOID KeyInformation,
1038 IN ULONG Length,
1039 OUT PULONG ResultLength
1040 );
1041
1042 NTSTATUS
1043 STDCALL
1044 ZwEnumerateKey(
1045 IN HANDLE KeyHandle,
1046 IN ULONG Index,
1047 IN KEY_INFORMATION_CLASS KeyInformationClass,
1048 OUT PVOID KeyInformation,
1049 IN ULONG Length,
1050 OUT PULONG ResultLength
1051 );
1052
1053 NTSTATUS
1054 STDCALL
1055 NtEnumerateValueKey(
1056 IN HANDLE KeyHandle,
1057 IN ULONG Index,
1058 IN KEY_VALUE_INFORMATION_CLASS KeyValueInformationClass,
1059 OUT PVOID KeyValueInformation,
1060 IN ULONG Length,
1061 OUT PULONG ResultLength
1062 );
1063
1064 NTSTATUS
1065 STDCALL
1066 ZwEnumerateValueKey(
1067 IN HANDLE KeyHandle,
1068 IN ULONG Index,
1069 IN KEY_VALUE_INFORMATION_CLASS KeyValueInformationClass,
1070 OUT PVOID KeyValueInformation,
1071 IN ULONG Length,
1072 OUT PULONG ResultLength
1073 );
1074
1075 NTSTATUS
1076 STDCALL
1077 NtExtendSection(
1078 IN HANDLE SectionHandle,
1079 IN PLARGE_INTEGER NewMaximumSize
1080 );
1081
1082 NTSTATUS
1083 STDCALL
1084 ZwExtendSection(
1085 IN HANDLE SectionHandle,
1086 IN PLARGE_INTEGER NewMaximumSize
1087 );
1088
1089 NTSTATUS
1090 STDCALL
1091 NtFindAtom(
1092 IN PWSTR AtomName,
1093 IN ULONG AtomNameLength,
1094 OUT PRTL_ATOM Atom OPTIONAL
1095 );
1096
1097 NTSTATUS
1098 STDCALL
1099 ZwFindAtom(
1100 IN PWSTR AtomName,
1101 IN ULONG AtomNameLength,
1102 OUT PRTL_ATOM Atom OPTIONAL
1103 );
1104
1105 NTSTATUS
1106 STDCALL
1107 NtFlushBuffersFile(
1108 IN HANDLE FileHandle,
1109 OUT PIO_STATUS_BLOCK IoStatusBlock
1110 );
1111
1112 NTSTATUS
1113 STDCALL
1114 ZwFlushBuffersFile(
1115 IN HANDLE FileHandle,
1116 OUT PIO_STATUS_BLOCK IoStatusBlock
1117 );
1118
1119 NTSTATUS
1120 STDCALL
1121 NtFlushInstructionCache(
1122 IN HANDLE ProcessHandle,
1123 IN PVOID BaseAddress,
1124 IN UINT NumberOfBytesToFlush
1125 );
1126
1127 NTSTATUS
1128 STDCALL
1129 NtFlushKey(
1130 IN HANDLE KeyHandle
1131 );
1132
1133 NTSTATUS
1134 STDCALL
1135 ZwFlushKey(
1136 IN HANDLE KeyHandle
1137 );
1138
1139 NTSTATUS
1140 STDCALL
1141 NtFlushVirtualMemory(
1142 IN HANDLE ProcessHandle,
1143 IN PVOID BaseAddress,
1144 IN ULONG NumberOfBytesToFlush,
1145 OUT PULONG NumberOfBytesFlushed OPTIONAL
1146 );
1147
1148 NTSTATUS
1149 STDCALL
1150 NtFlushWriteBuffer(VOID);
1151
1152 NTSTATUS
1153 STDCALL
1154 ZwFlushWriteBuffer(VOID);
1155
1156 NTSTATUS
1157 STDCALL
1158 NtFreeVirtualMemory(
1159 IN HANDLE ProcessHandle,
1160 IN PVOID *BaseAddress,
1161 IN PULONG RegionSize,
1162 IN ULONG FreeType
1163 );
1164
1165 NTSTATUS
1166 STDCALL
1167 ZwFreeVirtualMemory(
1168 IN HANDLE ProcessHandle,
1169 IN PVOID *BaseAddress,
1170 IN PULONG RegionSize,
1171 IN ULONG FreeType
1172 );
1173
1174 NTSTATUS
1175 STDCALL
1176 NtFsControlFile(
1177 IN HANDLE DeviceHandle,
1178 IN HANDLE Event OPTIONAL,
1179 IN PIO_APC_ROUTINE ApcRoutine OPTIONAL,
1180 IN PVOID ApcContext OPTIONAL,
1181 OUT PIO_STATUS_BLOCK IoStatusBlock,
1182 IN ULONG IoControlCode,
1183 IN PVOID InputBuffer,
1184 IN ULONG InputBufferSize,
1185 OUT PVOID OutputBuffer,
1186 IN ULONG OutputBufferSize
1187 );
1188
1189 NTSTATUS
1190 STDCALL
1191 ZwFsControlFile(
1192 IN HANDLE DeviceHandle,
1193 IN HANDLE Event OPTIONAL,
1194 IN PIO_APC_ROUTINE ApcRoutine OPTIONAL,
1195 IN PVOID ApcContext OPTIONAL,
1196 OUT PIO_STATUS_BLOCK IoStatusBlock,
1197 IN ULONG IoControlCode,
1198 IN PVOID InputBuffer,
1199 IN ULONG InputBufferSize,
1200 OUT PVOID OutputBuffer,
1201 IN ULONG OutputBufferSize
1202 );
1203
1204 NTSTATUS
1205 STDCALL
1206 NtGetContextThread(
1207 IN HANDLE ThreadHandle,
1208 OUT PCONTEXT Context
1209 );
1210
1211 NTSTATUS
1212 STDCALL
1213 ZwGetContextThread(
1214 IN HANDLE ThreadHandle,
1215 OUT PCONTEXT Context
1216 );
1217
1218 NTSTATUS
1219 STDCALL
1220 NtGetPlugPlayEvent(
1221 IN ULONG Reserved1,
1222 IN ULONG Reserved2,
1223 OUT PPLUGPLAY_EVENT_BLOCK Buffer,
1224 IN ULONG BufferSize
1225 );
1226
1227 ULONG
1228 STDCALL
1229 NtGetTickCount(
1230 VOID
1231 );
1232
1233 ULONG
1234 STDCALL
1235 ZwGetTickCount(
1236 VOID
1237 );
1238
1239 NTSTATUS
1240 STDCALL
1241 NtImpersonateClientOfPort(
1242 HANDLE PortHandle,
1243 PPORT_MESSAGE ClientMessage
1244 );
1245
1246 NTSTATUS
1247 STDCALL
1248 ZwImpersonateClientOfPort(
1249 HANDLE PortHandle,
1250 PPORT_MESSAGE ClientMessage
1251 );
1252
1253 NTSTATUS
1254 STDCALL
1255 NtImpersonateThread(
1256 IN HANDLE ThreadHandle,
1257 IN HANDLE ThreadToImpersonate,
1258 IN PSECURITY_QUALITY_OF_SERVICE SecurityQualityOfService
1259 );
1260
1261 NTSTATUS
1262 STDCALL
1263 ZwImpersonateThread(
1264 IN HANDLE ThreadHandle,
1265 IN HANDLE ThreadToImpersonate,
1266 IN PSECURITY_QUALITY_OF_SERVICE SecurityQualityOfService
1267 );
1268
1269 NTSTATUS
1270 STDCALL
1271 NtInitiatePowerAction(
1272 POWER_ACTION SystemAction,
1273 SYSTEM_POWER_STATE MinSystemState,
1274 ULONG Flags,
1275 BOOLEAN Asynchronous
1276 );
1277
1278 NTSTATUS
1279 STDCALL
1280 ZwInitiatePowerAction(
1281 POWER_ACTION SystemAction,
1282 SYSTEM_POWER_STATE MinSystemState,
1283 ULONG Flags,
1284 BOOLEAN Asynchronous
1285 );
1286
1287 NTSTATUS
1288 STDCALL
1289 NtInitializeRegistry(
1290 BOOLEAN SetUpBoot
1291 );
1292
1293 NTSTATUS
1294 STDCALL
1295 ZwInitializeRegistry(
1296 BOOLEAN SetUpBoot
1297 );
1298
1299 NTSTATUS
1300 STDCALL
1301 NtIsProcessInJob(
1302 IN HANDLE ProcessHandle,
1303 IN HANDLE JobHandle OPTIONAL
1304 );
1305
1306 NTSTATUS
1307 STDCALL
1308 ZwIsProcessInJob(
1309 IN HANDLE ProcessHandle,
1310 IN HANDLE JobHandle OPTIONAL
1311 );
1312
1313 NTSTATUS
1314 STDCALL
1315 NtListenPort(HANDLE PortHandle,
1316 PPORT_MESSAGE LpcMessage
1317 );
1318
1319 NTSTATUS
1320 STDCALL
1321 ZwListenPort(HANDLE PortHandle,
1322 PPORT_MESSAGE LpcMessage
1323 );
1324
1325 NTSTATUS
1326 STDCALL
1327 NtLoadDriver(
1328 IN PUNICODE_STRING DriverServiceName
1329 );
1330
1331 NTSTATUS
1332 STDCALL
1333 ZwLoadDriver(
1334 IN PUNICODE_STRING DriverServiceName
1335 );
1336
1337 NTSTATUS
1338 STDCALL
1339 NtLoadKey(
1340 IN POBJECT_ATTRIBUTES KeyObjectAttributes,
1341 IN POBJECT_ATTRIBUTES FileObjectAttributes
1342 );
1343
1344 NTSTATUS
1345 STDCALL
1346 ZwLoadKey(
1347 IN POBJECT_ATTRIBUTES KeyObjectAttributes,
1348 IN POBJECT_ATTRIBUTES FileObjectAttributes
1349 );
1350
1351 NTSTATUS
1352 STDCALL
1353 NtLoadKey2(
1354 IN POBJECT_ATTRIBUTES KeyObjectAttributes,
1355 IN POBJECT_ATTRIBUTES FileObjectAttributes,
1356 IN ULONG Flags
1357 );
1358
1359 NTSTATUS
1360 STDCALL
1361 ZwLoadKey2(
1362 IN POBJECT_ATTRIBUTES KeyObjectAttributes,
1363 IN POBJECT_ATTRIBUTES FileObjectAttributes,
1364 IN ULONG Flags
1365 );
1366
1367 NTSTATUS
1368 STDCALL
1369 NtLockFile(
1370 IN HANDLE FileHandle,
1371 IN HANDLE Event OPTIONAL,
1372 IN PIO_APC_ROUTINE ApcRoutine OPTIONAL,
1373 IN PVOID ApcContext OPTIONAL,
1374 OUT PIO_STATUS_BLOCK IoStatusBlock,
1375 IN PLARGE_INTEGER ByteOffset,
1376 IN PLARGE_INTEGER Length,
1377 IN PULONG Key,
1378 IN BOOLEAN FailImmediatedly,
1379 IN BOOLEAN ExclusiveLock
1380 );
1381
1382 NTSTATUS
1383 STDCALL
1384 ZwLockFile(
1385 IN HANDLE FileHandle,
1386 IN HANDLE Event OPTIONAL,
1387 IN PIO_APC_ROUTINE ApcRoutine OPTIONAL,
1388 IN PVOID ApcContext OPTIONAL,
1389 OUT PIO_STATUS_BLOCK IoStatusBlock,
1390 IN PLARGE_INTEGER ByteOffset,
1391 IN PLARGE_INTEGER Length,
1392 IN PULONG Key,
1393 IN BOOLEAN FailImmediatedly,
1394 IN BOOLEAN ExclusiveLock
1395 );
1396
1397 NTSTATUS
1398 STDCALL
1399 NtLockVirtualMemory(
1400 HANDLE ProcessHandle,
1401 PVOID BaseAddress,
1402 ULONG NumberOfBytesToLock,
1403 PULONG NumberOfBytesLocked
1404 );
1405
1406 NTSTATUS
1407 STDCALL
1408 ZwLockVirtualMemory(
1409 HANDLE ProcessHandle,
1410 PVOID BaseAddress,
1411 ULONG NumberOfBytesToLock,
1412 PULONG NumberOfBytesLocked
1413 );
1414
1415 NTSTATUS
1416 STDCALL
1417 NtMakePermanentObject(
1418 IN HANDLE Object
1419 );
1420
1421 NTSTATUS
1422 STDCALL
1423 ZwMakePermanentObject(
1424 IN HANDLE Object
1425 );
1426
1427 NTSTATUS
1428 STDCALL
1429 NtMakeTemporaryObject(
1430 IN HANDLE Handle
1431 );
1432
1433 NTSTATUS
1434 STDCALL
1435 ZwMakeTemporaryObject(
1436 IN HANDLE Handle
1437 );
1438
1439 NTSTATUS
1440 STDCALL
1441 NtMapViewOfSection(
1442 IN HANDLE SectionHandle,
1443 IN HANDLE ProcessHandle,
1444 IN OUT PVOID *BaseAddress,
1445 IN ULONG ZeroBits,
1446 IN ULONG CommitSize,
1447 IN OUT PLARGE_INTEGER SectionOffset OPTIONAL,
1448 IN OUT PULONG ViewSize,
1449 IN SECTION_INHERIT InheritDisposition,
1450 IN ULONG AllocationType,
1451 IN ULONG AccessProtection
1452 );
1453
1454 NTSTATUS
1455 STDCALL
1456 ZwMapViewOfSection(
1457 IN HANDLE SectionHandle,
1458 IN HANDLE ProcessHandle,
1459 IN OUT PVOID *BaseAddress,
1460 IN ULONG ZeroBits,
1461 IN ULONG CommitSize,
1462 IN OUT PLARGE_INTEGER SectionOffset OPTIONAL,
1463 IN OUT PULONG ViewSize,
1464 IN SECTION_INHERIT InheritDisposition,
1465 IN ULONG AllocationType,
1466 IN ULONG AccessProtection
1467 );
1468
1469 NTSTATUS
1470 STDCALL
1471 NtNotifyChangeDirectoryFile(
1472 IN HANDLE FileHandle,
1473 IN HANDLE Event OPTIONAL,
1474 IN PIO_APC_ROUTINE ApcRoutine OPTIONAL,
1475 IN PVOID ApcContext OPTIONAL,
1476 OUT PIO_STATUS_BLOCK IoStatusBlock,
1477 OUT PVOID Buffer,
1478 IN ULONG BufferSize,
1479 IN ULONG CompletionFilter,
1480 IN BOOLEAN WatchTree
1481 );
1482
1483 NTSTATUS
1484 STDCALL
1485 ZwNotifyChangeDirectoryFile(
1486 IN HANDLE FileHandle,
1487 IN HANDLE Event OPTIONAL,
1488 IN PIO_APC_ROUTINE ApcRoutine OPTIONAL,
1489 IN PVOID ApcContext OPTIONAL,
1490 OUT PIO_STATUS_BLOCK IoStatusBlock,
1491 OUT PVOID Buffer,
1492 IN ULONG BufferSize,
1493 IN ULONG CompletionFilter,
1494 IN BOOLEAN WatchTree
1495 );
1496
1497 NTSTATUS
1498 STDCALL
1499 NtNotifyChangeKey(
1500 IN HANDLE KeyHandle,
1501 IN HANDLE Event,
1502 IN PIO_APC_ROUTINE ApcRoutine OPTIONAL,
1503 IN PVOID ApcContext OPTIONAL,
1504 OUT PIO_STATUS_BLOCK IoStatusBlock,
1505 IN ULONG CompletionFilter,
1506 IN BOOLEAN Asynchroneous,
1507 OUT PVOID ChangeBuffer,
1508 IN ULONG Length,
1509 IN BOOLEAN WatchSubtree
1510 );
1511
1512 NTSTATUS
1513 STDCALL
1514 ZwNotifyChangeKey(
1515 IN HANDLE KeyHandle,
1516 IN HANDLE Event,
1517 IN PIO_APC_ROUTINE ApcRoutine OPTIONAL,
1518 IN PVOID ApcContext OPTIONAL,
1519 OUT PIO_STATUS_BLOCK IoStatusBlock,
1520 IN ULONG CompletionFilter,
1521 IN BOOLEAN Asynchroneous,
1522 OUT PVOID ChangeBuffer,
1523 IN ULONG Length,
1524 IN BOOLEAN WatchSubtree
1525 );
1526
1527 NTSTATUS
1528 STDCALL
1529 NtOpenDirectoryObject(
1530 OUT PHANDLE FileHandle,
1531 IN ACCESS_MASK DesiredAccess,
1532 IN POBJECT_ATTRIBUTES ObjectAttributes
1533 );
1534
1535 NTSTATUS
1536 STDCALL
1537 ZwOpenDirectoryObject(
1538 OUT PHANDLE FileHandle,
1539 IN ACCESS_MASK DesiredAccess,
1540 IN POBJECT_ATTRIBUTES ObjectAttributes
1541 );
1542
1543 NTSTATUS
1544 STDCALL
1545 NtOpenEvent(
1546 OUT PHANDLE EventHandle,
1547 IN ACCESS_MASK DesiredAccess,
1548 IN POBJECT_ATTRIBUTES ObjectAttributes
1549 );
1550
1551 NTSTATUS
1552 STDCALL
1553 ZwOpenEvent(
1554 OUT PHANDLE EventHandle,
1555 IN ACCESS_MASK DesiredAccess,
1556 IN POBJECT_ATTRIBUTES ObjectAttributes
1557 );
1558
1559 NTSTATUS
1560 STDCALL
1561 NtOpenEventPair(
1562 OUT PHANDLE EventPairHandle,
1563 IN ACCESS_MASK DesiredAccess,
1564 IN POBJECT_ATTRIBUTES ObjectAttributes
1565 );
1566
1567 NTSTATUS
1568 STDCALL
1569 ZwOpenEventPair(
1570 OUT PHANDLE EventPairHandle,
1571 IN ACCESS_MASK DesiredAccess,
1572 IN POBJECT_ATTRIBUTES ObjectAttributes
1573 );
1574
1575 NTSTATUS
1576 STDCALL
1577 NtOpenFile(
1578 OUT PHANDLE FileHandle,
1579 IN ACCESS_MASK DesiredAccess,
1580 IN POBJECT_ATTRIBUTES ObjectAttributes,
1581 OUT PIO_STATUS_BLOCK IoStatusBlock,
1582 IN ULONG ShareAccess,
1583 IN ULONG OpenOptions
1584 );
1585
1586 NTSTATUS
1587 STDCALL
1588 ZwOpenFile(
1589 OUT PHANDLE FileHandle,
1590 IN ACCESS_MASK DesiredAccess,
1591 IN POBJECT_ATTRIBUTES ObjectAttributes,
1592 OUT PIO_STATUS_BLOCK IoStatusBlock,
1593 IN ULONG ShareAccess,
1594 IN ULONG OpenOptions
1595 );
1596
1597 NTSTATUS
1598 STDCALL
1599 NtOpenIoCompletion(
1600 OUT PHANDLE CompetionPort,
1601 IN ACCESS_MASK DesiredAccess,
1602 IN POBJECT_ATTRIBUTES ObjectAttributes
1603 );
1604
1605 NTSTATUS
1606 STDCALL
1607 ZwOpenIoCompletion(
1608 OUT PHANDLE CompetionPort,
1609 IN ACCESS_MASK DesiredAccess,
1610 IN POBJECT_ATTRIBUTES ObjectAttributes
1611 );
1612
1613 NTSTATUS
1614 STDCALL
1615 NtOpenJobObject(
1616 PHANDLE JobHandle,
1617 ACCESS_MASK DesiredAccess,
1618 POBJECT_ATTRIBUTES ObjectAttributes
1619 );
1620
1621 NTSTATUS
1622 STDCALL
1623 ZwOpenJobObject(
1624 PHANDLE JobHandle,
1625 ACCESS_MASK DesiredAccess,
1626 POBJECT_ATTRIBUTES ObjectAttributes
1627 );
1628
1629 NTSTATUS
1630 STDCALL
1631 NtOpenKey(
1632 OUT PHANDLE KeyHandle,
1633 IN ACCESS_MASK DesiredAccess,
1634 IN POBJECT_ATTRIBUTES ObjectAttributes
1635 );
1636
1637 NTSTATUS
1638 STDCALL
1639 ZwOpenKey(
1640 OUT PHANDLE KeyHandle,
1641 IN ACCESS_MASK DesiredAccess,
1642 IN POBJECT_ATTRIBUTES ObjectAttributes
1643 );
1644
1645 NTSTATUS
1646 STDCALL
1647 NtOpenMutant(
1648 OUT PHANDLE MutantHandle,
1649 IN ACCESS_MASK DesiredAccess,
1650 IN POBJECT_ATTRIBUTES ObjectAttributes
1651 );
1652
1653 NTSTATUS
1654 STDCALL
1655 ZwOpenMutant(
1656 OUT PHANDLE MutantHandle,
1657 IN ACCESS_MASK DesiredAccess,
1658 IN POBJECT_ATTRIBUTES ObjectAttributes
1659 );
1660
1661 NTSTATUS
1662 STDCALL
1663 NtOpenObjectAuditAlarm(
1664 IN PUNICODE_STRING SubsystemName,
1665 IN PVOID HandleId,
1666 IN PUNICODE_STRING ObjectTypeName,
1667 IN PUNICODE_STRING ObjectName,
1668 IN PSECURITY_DESCRIPTOR SecurityDescriptor,
1669 IN HANDLE ClientToken,
1670 IN ULONG DesiredAccess,
1671 IN ULONG GrantedAccess,
1672 IN PPRIVILEGE_SET Privileges,
1673 IN BOOLEAN ObjectCreation,
1674 IN BOOLEAN AccessGranted,
1675 OUT PBOOLEAN GenerateOnClose
1676 );
1677
1678 NTSTATUS
1679 STDCALL
1680 ZwOpenObjectAuditAlarm(
1681 IN PUNICODE_STRING SubsystemName,
1682 IN PVOID HandleId,
1683 IN PUNICODE_STRING ObjectTypeName,
1684 IN PUNICODE_STRING ObjectName,
1685 IN PSECURITY_DESCRIPTOR SecurityDescriptor,
1686 IN HANDLE ClientToken,
1687 IN ULONG DesiredAccess,
1688 IN ULONG GrantedAccess,
1689 IN PPRIVILEGE_SET Privileges,
1690 IN BOOLEAN ObjectCreation,
1691 IN BOOLEAN AccessGranted,
1692 OUT PBOOLEAN GenerateOnClose
1693 );
1694
1695 NTSTATUS
1696 STDCALL
1697 NtOpenProcess(
1698 OUT PHANDLE ProcessHandle,
1699 IN ACCESS_MASK DesiredAccess,
1700 IN POBJECT_ATTRIBUTES ObjectAttributes,
1701 IN PCLIENT_ID ClientId
1702 );
1703
1704 NTSTATUS
1705 STDCALL
1706 ZwOpenProcess(
1707 OUT PHANDLE ProcessHandle,
1708 IN ACCESS_MASK DesiredAccess,
1709 IN POBJECT_ATTRIBUTES ObjectAttributes,
1710 IN PCLIENT_ID ClientId
1711 );
1712
1713 NTSTATUS
1714 STDCALL
1715 NtOpenProcessToken(
1716 IN HANDLE ProcessHandle,
1717 IN ACCESS_MASK DesiredAccess,
1718 OUT PHANDLE TokenHandle
1719 );
1720
1721 NTSTATUS
1722 STDCALL
1723 ZwOpenProcessToken(
1724 IN HANDLE ProcessHandle,
1725 IN ACCESS_MASK DesiredAccess,
1726 OUT PHANDLE TokenHandle
1727 );
1728
1729 NTSTATUS
1730 STDCALL
1731 NtOpenProcessTokenEx(
1732 IN HANDLE ProcessHandle,
1733 IN ACCESS_MASK DesiredAccess,
1734 IN ULONG HandleAttributes,
1735 OUT PHANDLE TokenHandle
1736 );
1737
1738 NTSTATUS
1739 STDCALL
1740 ZwOpenProcessTokenEx(
1741 IN HANDLE ProcessHandle,
1742 IN ACCESS_MASK DesiredAccess,
1743 IN ULONG HandleAttributes,
1744 OUT PHANDLE TokenHandle
1745 );
1746
1747 NTSTATUS
1748 STDCALL
1749 NtOpenSection(
1750 OUT PHANDLE SectionHandle,
1751 IN ACCESS_MASK DesiredAccess,
1752 IN POBJECT_ATTRIBUTES ObjectAttributes
1753 );
1754
1755 NTSTATUS
1756 STDCALL
1757 ZwOpenSection(
1758 OUT PHANDLE SectionHandle,
1759 IN ACCESS_MASK DesiredAccess,
1760 IN POBJECT_ATTRIBUTES ObjectAttributes
1761 );
1762
1763 NTSTATUS
1764 STDCALL
1765 NtOpenSemaphore(
1766 OUT PHANDLE SemaphoreHandle,
1767 IN ACCESS_MASK DesiredAcces,
1768 IN POBJECT_ATTRIBUTES ObjectAttributes
1769 );
1770
1771 NTSTATUS
1772 STDCALL
1773 ZwOpenSemaphore(
1774 OUT PHANDLE SemaphoreHandle,
1775 IN ACCESS_MASK DesiredAcces,
1776 IN POBJECT_ATTRIBUTES ObjectAttributes
1777 );
1778
1779 NTSTATUS
1780 STDCALL
1781 NtOpenSymbolicLinkObject(
1782 OUT PHANDLE SymbolicLinkHandle,
1783 IN ACCESS_MASK DesiredAccess,
1784 IN POBJECT_ATTRIBUTES ObjectAttributes
1785 );
1786
1787 NTSTATUS
1788 STDCALL
1789 ZwOpenSymbolicLinkObject(
1790 OUT PHANDLE SymbolicLinkHandle,
1791 IN ACCESS_MASK DesiredAccess,
1792 IN POBJECT_ATTRIBUTES ObjectAttributes
1793 );
1794
1795 NTSTATUS
1796 STDCALL
1797 NtOpenThread(
1798 OUT PHANDLE ThreadHandle,
1799 IN ACCESS_MASK DesiredAccess,
1800 IN POBJECT_ATTRIBUTES ObjectAttributes,
1801 IN PCLIENT_ID ClientId
1802 );
1803
1804 NTSTATUS
1805 STDCALL
1806 ZwOpenThread(
1807 OUT PHANDLE ThreadHandle,
1808 IN ACCESS_MASK DesiredAccess,
1809 IN POBJECT_ATTRIBUTES ObjectAttributes,
1810 IN PCLIENT_ID ClientId
1811 );
1812
1813 NTSTATUS
1814 STDCALL
1815 NtOpenThreadToken(
1816 IN HANDLE ThreadHandle,
1817 IN ACCESS_MASK DesiredAccess,
1818 IN BOOLEAN OpenAsSelf,
1819 OUT PHANDLE TokenHandle
1820 );
1821
1822 NTSTATUS
1823 STDCALL
1824 ZwOpenThreadToken(
1825 IN HANDLE ThreadHandle,
1826 IN ACCESS_MASK DesiredAccess,
1827 IN BOOLEAN OpenAsSelf,
1828 OUT PHANDLE TokenHandle
1829 );
1830
1831 NTSTATUS
1832 STDCALL
1833 NtOpenThreadTokenEx(
1834 IN HANDLE ThreadHandle,
1835 IN ACCESS_MASK DesiredAccess,
1836 IN BOOLEAN OpenAsSelf,
1837 IN ULONG HandleAttributes,
1838 OUT PHANDLE TokenHandle
1839 );
1840
1841 NTSTATUS
1842 STDCALL
1843 ZwOpenThreadTokenEx(
1844 IN HANDLE ThreadHandle,
1845 IN ACCESS_MASK DesiredAccess,
1846 IN BOOLEAN OpenAsSelf,
1847 IN ULONG HandleAttributes,
1848 OUT PHANDLE TokenHandle
1849 );
1850
1851 NTSTATUS
1852 STDCALL
1853 NtOpenTimer(
1854 OUT PHANDLE TimerHandle,
1855 IN ACCESS_MASK DesiredAccess,
1856 IN POBJECT_ATTRIBUTES ObjectAttributes
1857 );
1858 NTSTATUS
1859 STDCALL
1860 ZwOpenTimer(
1861 OUT PHANDLE TimerHandle,
1862 IN ACCESS_MASK DesiredAccess,
1863 IN POBJECT_ATTRIBUTES ObjectAttributes
1864 );
1865
1866 NTSTATUS
1867 STDCALL
1868 NtPlugPlayControl(
1869 IN PLUGPLAY_CONTROL_CLASS PlugPlayControlClass,
1870 IN OUT PVOID Buffer,
1871 IN ULONG BufferSize
1872 );
1873
1874 NTSTATUS
1875 STDCALL
1876 NtPowerInformation(
1877 POWER_INFORMATION_LEVEL PowerInformationLevel,
1878 PVOID InputBuffer,
1879 ULONG InputBufferLength,
1880 PVOID OutputBuffer,
1881 ULONG OutputBufferLength
1882 );
1883
1884 NTSTATUS
1885 STDCALL
1886 ZwPowerInformation(
1887 POWER_INFORMATION_LEVEL PowerInformationLevel,
1888 PVOID InputBuffer,
1889 ULONG InputBufferLength,
1890 PVOID OutputBuffer,
1891 ULONG OutputBufferLength
1892 );
1893
1894 NTSTATUS
1895 STDCALL
1896 NtPrivilegeCheck(
1897 IN HANDLE ClientToken,
1898 IN PPRIVILEGE_SET RequiredPrivileges,
1899 IN PBOOLEAN Result
1900 );
1901
1902 NTSTATUS
1903 STDCALL
1904 ZwPrivilegeCheck(
1905 IN HANDLE ClientToken,
1906 IN PPRIVILEGE_SET RequiredPrivileges,
1907 IN PBOOLEAN Result
1908 );
1909
1910 NTSTATUS
1911 STDCALL
1912 NtPrivilegedServiceAuditAlarm(
1913 IN PUNICODE_STRING SubsystemName,
1914 IN PUNICODE_STRING ServiceName,
1915 IN HANDLE ClientToken,
1916 IN PPRIVILEGE_SET Privileges,
1917 IN BOOLEAN AccessGranted
1918 );
1919
1920 NTSTATUS
1921 STDCALL
1922 ZwPrivilegedServiceAuditAlarm(
1923 IN PUNICODE_STRING SubsystemName,
1924 IN PUNICODE_STRING ServiceName,
1925 IN HANDLE ClientToken,
1926 IN PPRIVILEGE_SET Privileges,
1927 IN BOOLEAN AccessGranted
1928 );
1929
1930 NTSTATUS
1931 STDCALL
1932 NtPrivilegeObjectAuditAlarm(
1933 IN PUNICODE_STRING SubsystemName,
1934 IN PVOID HandleId,
1935 IN HANDLE ClientToken,
1936 IN ULONG DesiredAccess,
1937 IN PPRIVILEGE_SET Privileges,
1938 IN BOOLEAN AccessGranted
1939 );
1940
1941 NTSTATUS
1942 STDCALL
1943 ZwPrivilegeObjectAuditAlarm(
1944 IN PUNICODE_STRING SubsystemName,
1945 IN PVOID HandleId,
1946 IN HANDLE ClientToken,
1947 IN ULONG DesiredAccess,
1948 IN PPRIVILEGE_SET Privileges,
1949 IN BOOLEAN AccessGranted
1950 );
1951
1952 NTSTATUS
1953 STDCALL
1954 NtProtectVirtualMemory(
1955 IN HANDLE ProcessHandle,
1956 IN PVOID *BaseAddress,
1957 IN ULONG *NumberOfBytesToProtect,
1958 IN ULONG NewAccessProtection,
1959 OUT PULONG OldAccessProtection
1960 );
1961
1962 NTSTATUS
1963 STDCALL
1964 ZwProtectVirtualMemory(
1965 IN HANDLE ProcessHandle,
1966 IN PVOID *BaseAddress,
1967 IN ULONG *NumberOfBytesToProtect,
1968 IN ULONG NewAccessProtection,
1969 OUT PULONG OldAccessProtection
1970 );
1971
1972 NTSTATUS
1973 STDCALL
1974 NtPulseEvent(
1975 IN HANDLE EventHandle,
1976 IN PLONG PulseCount OPTIONAL
1977 );
1978
1979 NTSTATUS
1980 STDCALL
1981 ZwPulseEvent(
1982 IN HANDLE EventHandle,
1983 IN PLONG PulseCount OPTIONAL
1984 );
1985
1986 NTSTATUS
1987 STDCALL
1988 NtQueryAttributesFile(
1989 IN POBJECT_ATTRIBUTES ObjectAttributes,
1990 OUT PFILE_BASIC_INFORMATION FileInformation
1991 );
1992
1993 NTSTATUS
1994 STDCALL
1995 ZwQueryAttributesFile(
1996 IN POBJECT_ATTRIBUTES ObjectAttributes,
1997 OUT PFILE_BASIC_INFORMATION FileInformation
1998 );
1999
2000
2001 NTSTATUS
2002 STDCALL
2003 NtQueryBootEntryOrder(
2004 IN ULONG Unknown1,
2005 IN ULONG Unknown2
2006 );
2007
2008 NTSTATUS
2009 STDCALL
2010 ZwQueryBootEntryOrder(
2011 IN ULONG Unknown1,
2012 IN ULONG Unknown2
2013 );
2014
2015 NTSTATUS
2016 STDCALL
2017 NtQueryBootOptions(
2018 IN ULONG Unknown1,
2019 IN ULONG Unknown2
2020 );
2021
2022 NTSTATUS
2023 STDCALL
2024 ZwQueryBootOptions(
2025 IN ULONG Unknown1,
2026 IN ULONG Unknown2
2027 );
2028 NTSTATUS
2029 STDCALL
2030 NtQueryDefaultLocale(
2031 IN BOOLEAN UserProfile,
2032 OUT PLCID DefaultLocaleId
2033 );
2034
2035 NTSTATUS
2036 STDCALL
2037 ZwQueryDefaultLocale(
2038 IN BOOLEAN UserProfile,
2039 OUT PLCID DefaultLocaleId
2040 );
2041
2042 NTSTATUS
2043 STDCALL
2044 NtQueryDefaultUILanguage(
2045 PLANGID LanguageId
2046 );
2047
2048 NTSTATUS
2049 STDCALL
2050 ZwQueryDefaultUILanguage(
2051 PLANGID LanguageId
2052 );
2053
2054 NTSTATUS
2055 STDCALL
2056 NtQueryDirectoryFile(
2057 IN HANDLE FileHandle,
2058 IN HANDLE Event OPTIONAL,
2059 IN PIO_APC_ROUTINE ApcRoutine OPTIONAL,
2060 IN PVOID ApcContext OPTIONAL,
2061 OUT PIO_STATUS_BLOCK IoStatusBlock,
2062 OUT PVOID FileInformation,
2063 IN ULONG Length,
2064 IN FILE_INFORMATION_CLASS FileInformationClass,
2065 IN BOOLEAN ReturnSingleEntry,
2066 IN PUNICODE_STRING FileName OPTIONAL,
2067 IN BOOLEAN RestartScan
2068 );
2069
2070 NTSTATUS
2071 STDCALL
2072 ZwQueryDirectoryFile(
2073 IN HANDLE FileHandle,
2074 IN HANDLE Event OPTIONAL,
2075 IN PIO_APC_ROUTINE ApcRoutine OPTIONAL,
2076 IN PVOID ApcContext OPTIONAL,
2077 OUT PIO_STATUS_BLOCK IoStatusBlock,
2078 OUT PVOID FileInformation,
2079 IN ULONG Length,
2080 IN FILE_INFORMATION_CLASS FileInformationClass,
2081 IN BOOLEAN ReturnSingleEntry,
2082 IN PUNICODE_STRING FileName OPTIONAL,
2083 IN BOOLEAN RestartScan
2084 );
2085
2086 NTSTATUS
2087 STDCALL
2088 NtQueryDirectoryObject(
2089 IN HANDLE DirectoryHandle,
2090 OUT PVOID Buffer,
2091 IN ULONG BufferLength,
2092 IN BOOLEAN ReturnSingleEntry,
2093 IN BOOLEAN RestartScan,
2094 IN OUT PULONG Context,
2095 OUT PULONG ReturnLength OPTIONAL
2096 );
2097
2098 NTSTATUS
2099 STDCALL
2100 ZwQueryDirectoryObject(
2101 IN HANDLE DirectoryHandle,
2102 OUT PVOID Buffer,
2103 IN ULONG BufferLength,
2104 IN BOOLEAN ReturnSingleEntry,
2105 IN BOOLEAN RestartScan,
2106 IN OUT PULONG Context,
2107 OUT PULONG ReturnLength OPTIONAL
2108 );
2109
2110 NTSTATUS
2111 STDCALL
2112 NtQueryEaFile(
2113 IN HANDLE FileHandle,
2114 OUT PIO_STATUS_BLOCK IoStatusBlock,
2115 OUT PVOID Buffer,
2116 IN ULONG Length,
2117 IN BOOLEAN ReturnSingleEntry,
2118 IN PVOID EaList OPTIONAL,
2119 IN ULONG EaListLength,
2120 IN PULONG EaIndex OPTIONAL,
2121 IN BOOLEAN RestartScan
2122 );
2123
2124 NTSTATUS
2125 STDCALL
2126 ZwQueryEaFile(
2127 IN HANDLE FileHandle,
2128 OUT PIO_STATUS_BLOCK IoStatusBlock,
2129 OUT PVOID Buffer,
2130 IN ULONG Length,
2131 IN BOOLEAN ReturnSingleEntry,
2132 IN PVOID EaList OPTIONAL,
2133 IN ULONG EaListLength,
2134 IN PULONG EaIndex OPTIONAL,
2135 IN BOOLEAN RestartScan
2136 );
2137
2138 NTSTATUS
2139 STDCALL
2140 NtQueryEvent(
2141 IN HANDLE EventHandle,
2142 IN EVENT_INFORMATION_CLASS EventInformationClass,
2143 OUT PVOID EventInformation,
2144 IN ULONG EventInformationLength,
2145 OUT PULONG ReturnLength
2146 );
2147 NTSTATUS
2148 STDCALL
2149 ZwQueryEvent(
2150 IN HANDLE EventHandle,
2151 IN EVENT_INFORMATION_CLASS EventInformationClass,
2152 OUT PVOID EventInformation,
2153 IN ULONG EventInformationLength,
2154 OUT PULONG ReturnLength
2155 );
2156
2157 NTSTATUS
2158 STDCALL
2159 NtQueryFullAttributesFile(
2160 IN POBJECT_ATTRIBUTES ObjectAttributes,
2161 OUT PFILE_NETWORK_OPEN_INFORMATION FileInformation
2162 );
2163
2164 NTSTATUS
2165 STDCALL
2166 ZwQueryFullAttributesFile(
2167 IN POBJECT_ATTRIBUTES ObjectAttributes,
2168 OUT PFILE_NETWORK_OPEN_INFORMATION FileInformation
2169 );
2170
2171 NTSTATUS
2172 STDCALL
2173 NtQueryInformationAtom(
2174 IN RTL_ATOM Atom,
2175 IN ATOM_INFORMATION_CLASS AtomInformationClass,
2176 OUT PVOID AtomInformation,
2177 IN ULONG AtomInformationLength,
2178 OUT PULONG ReturnLength OPTIONAL
2179 );
2180
2181 NTSTATUS
2182 STDCALL
2183 ZwQueryInformationAtom(
2184 IN RTL_ATOM Atom,
2185 IN ATOM_INFORMATION_CLASS AtomInformationClass,
2186 OUT PVOID AtomInformation,
2187 IN ULONG AtomInformationLength,
2188 OUT PULONG ReturnLength OPTIONAL
2189 );
2190
2191 NTSTATUS
2192 STDCALL
2193 NtQueryInformationFile(
2194 IN HANDLE FileHandle,
2195 OUT PIO_STATUS_BLOCK IoStatusBlock,
2196 OUT PVOID FileInformation,
2197 IN ULONG Length,
2198 IN FILE_INFORMATION_CLASS FileInformationClass
2199 );
2200
2201 NTSTATUS
2202 STDCALL
2203 ZwQueryInformationFile(
2204 HANDLE FileHandle,
2205 PIO_STATUS_BLOCK IoStatusBlock,
2206 PVOID FileInformation,
2207 ULONG Length,
2208 FILE_INFORMATION_CLASS FileInformationClass
2209 );
2210
2211 NTSTATUS
2212 STDCALL
2213 NtQueryInformationJobObject(
2214 HANDLE JobHandle,
2215 JOBOBJECTINFOCLASS JobInformationClass,
2216 PVOID JobInformation,
2217 ULONG JobInformationLength,
2218 PULONG ReturnLength
2219 );
2220
2221 NTSTATUS
2222 STDCALL
2223 ZwQueryInformationJobObject(
2224 HANDLE JobHandle,
2225 JOBOBJECTINFOCLASS JobInformationClass,
2226 PVOID JobInformation,
2227 ULONG JobInformationLength,
2228 PULONG ReturnLength
2229 );
2230
2231 NTSTATUS
2232 STDCALL
2233 NtQueryInformationPort(
2234 HANDLE PortHandle,
2235 CINT PortInformationClass,
2236 PVOID PortInformation,
2237 ULONG PortInformationLength,
2238 PULONG ReturnLength
2239 );
2240
2241 NTSTATUS
2242 STDCALL
2243 ZwQueryInformationPort(
2244 HANDLE PortHandle,
2245 CINT PortInformationClass,
2246 PVOID PortInformation,
2247 ULONG PortInformationLength,
2248 PULONG ReturnLength
2249 );
2250
2251 #ifndef _NTDDK_
2252 NTSTATUS
2253 STDCALL
2254 NtQueryInformationProcess(
2255 IN HANDLE ProcessHandle,
2256 IN PROCESSINFOCLASS ProcessInformationClass,
2257 OUT PVOID ProcessInformation,
2258 IN ULONG ProcessInformationLength,
2259 OUT PULONG ReturnLength OPTIONAL
2260 );
2261
2262 NTSTATUS
2263 STDCALL
2264 ZwQueryInformationProcess(
2265 IN HANDLE ProcessHandle,
2266 IN PROCESSINFOCLASS ProcessInformationClass,
2267 OUT PVOID ProcessInformation,
2268 IN ULONG ProcessInformationLength,
2269 OUT PULONG ReturnLength OPTIONAL
2270 );
2271 #endif
2272
2273 NTSTATUS
2274 STDCALL
2275 NtQueryInformationThread(
2276 IN HANDLE ThreadHandle,
2277 IN THREADINFOCLASS ThreadInformationClass,
2278 OUT PVOID ThreadInformation,
2279 IN ULONG ThreadInformationLength,
2280 OUT PULONG ReturnLength
2281 );
2282
2283 NTSTATUS
2284 STDCALL
2285 ZwQueryInformationThread(
2286 IN HANDLE ThreadHandle,
2287 IN THREADINFOCLASS ThreadInformationClass,
2288 OUT PVOID ThreadInformation,
2289 IN ULONG ThreadInformationLength,
2290 OUT PULONG ReturnLength
2291 );
2292
2293 NTSTATUS
2294 STDCALL
2295 NtQueryInformationToken(
2296 IN HANDLE TokenHandle,
2297 IN TOKEN_INFORMATION_CLASS TokenInformationClass,
2298 OUT PVOID TokenInformation,
2299 IN ULONG TokenInformationLength,
2300 OUT PULONG ReturnLength
2301 );
2302
2303 NTSTATUS
2304 STDCALL
2305 ZwQueryInformationToken(
2306 IN HANDLE TokenHandle,
2307 IN TOKEN_INFORMATION_CLASS TokenInformationClass,
2308 OUT PVOID TokenInformation,
2309 IN ULONG TokenInformationLength,
2310 OUT PULONG ReturnLength
2311 );
2312
2313 NTSTATUS
2314 STDCALL
2315 NtQueryInstallUILanguage(
2316 PLANGID LanguageId
2317 );
2318
2319 NTSTATUS
2320 STDCALL
2321 ZwQueryInstallUILanguage(
2322 PLANGID LanguageId
2323 );
2324
2325 NTSTATUS
2326 STDCALL
2327 NtQueryIntervalProfile(
2328 IN KPROFILE_SOURCE ProfileSource,
2329 OUT PULONG Interval
2330 );
2331
2332 NTSTATUS
2333 STDCALL
2334 ZwQueryIntervalProfile(
2335 OUT PULONG Interval,
2336 OUT KPROFILE_SOURCE ClockSource
2337 );
2338
2339 NTSTATUS
2340 STDCALL
2341 NtQueryIoCompletion(
2342 IN HANDLE IoCompletionHandle,
2343 IN IO_COMPLETION_INFORMATION_CLASS IoCompletionInformationClass,
2344 OUT PVOID IoCompletionInformation,
2345 IN ULONG IoCompletionInformationLength,
2346 OUT PULONG ResultLength OPTIONAL
2347 );
2348
2349 NTSTATUS
2350 STDCALL
2351 ZwQueryIoCompletion(
2352 IN HANDLE IoCompletionHandle,
2353 IN IO_COMPLETION_INFORMATION_CLASS IoCompletionInformationClass,
2354 OUT PVOID IoCompletionInformation,
2355 IN ULONG IoCompletionInformationLength,
2356 OUT PULONG ResultLength OPTIONAL
2357 );
2358
2359 NTSTATUS
2360 STDCALL
2361 NtQueryKey(
2362 IN HANDLE KeyHandle,
2363 IN KEY_INFORMATION_CLASS KeyInformationClass,
2364 OUT PVOID KeyInformation,
2365 IN ULONG Length,
2366 OUT PULONG ResultLength
2367 );
2368
2369 NTSTATUS
2370 STDCALL
2371 ZwQueryKey(
2372 IN HANDLE KeyHandle,
2373 IN KEY_INFORMATION_CLASS KeyInformationClass,
2374 OUT PVOID KeyInformation,
2375 IN ULONG Length,
2376 OUT PULONG ResultLength
2377 );
2378
2379 NTSTATUS
2380 STDCALL
2381 NtQueryQuotaInformationFile(
2382 IN HANDLE FileHandle,
2383 OUT PIO_STATUS_BLOCK IoStatusBlock,
2384 OUT PVOID Buffer,
2385 IN ULONG Length,
2386 IN BOOLEAN ReturnSingleEntry,
2387 IN PVOID SidList OPTIONAL,
2388 IN ULONG SidListLength,
2389 IN PSID StartSid OPTIONAL,
2390 IN BOOLEAN RestartScan
2391 );
2392
2393 NTSTATUS
2394 STDCALL
2395 ZwQueryQuotaInformationFile(
2396 IN HANDLE FileHandle,
2397 OUT PIO_STATUS_BLOCK IoStatusBlock,
2398 OUT PVOID Buffer,
2399 IN ULONG Length,
2400 IN BOOLEAN ReturnSingleEntry,
2401 IN PVOID SidList OPTIONAL,
2402 IN ULONG SidListLength,
2403 IN PSID StartSid OPTIONAL,
2404 IN BOOLEAN RestartScan
2405 );
2406
2407 NTSTATUS
2408 STDCALL
2409 NtQueryMultipleValueKey(
2410 IN HANDLE KeyHandle,
2411 IN OUT PKEY_VALUE_ENTRY ValueList,
2412 IN ULONG NumberOfValues,
2413 OUT PVOID Buffer,
2414 IN OUT PULONG Length,
2415 OUT PULONG ReturnLength
2416 );
2417
2418 NTSTATUS
2419 STDCALL
2420 ZwQueryMultipleValueKey(
2421 IN HANDLE KeyHandle,
2422 IN OUT PKEY_VALUE_ENTRY ValueList,
2423 IN ULONG NumberOfValues,
2424 OUT PVOID Buffer,
2425 IN OUT PULONG Length,
2426 OUT PULONG ReturnLength
2427 );
2428
2429 NTSTATUS
2430 STDCALL
2431 NtQueryMutant(
2432 IN HANDLE MutantHandle,
2433 IN MUTANT_INFORMATION_CLASS MutantInformationClass,
2434 OUT PVOID MutantInformation,
2435 IN ULONG Length,
2436 OUT PULONG ResultLength
2437 );
2438
2439 NTSTATUS
2440 STDCALL
2441 ZwQueryMutant(
2442 IN HANDLE MutantHandle,
2443 IN MUTANT_INFORMATION_CLASS MutantInformationClass,
2444 OUT PVOID MutantInformation,
2445 IN ULONG Length,
2446 OUT PULONG ResultLength
2447 );
2448
2449 NTSTATUS
2450 STDCALL
2451 NtQueryObject(
2452 IN HANDLE ObjectHandle,
2453 IN OBJECT_INFORMATION_CLASS ObjectInformationClass,
2454 OUT PVOID ObjectInformation,
2455 IN ULONG Length,
2456 OUT PULONG ResultLength OPTIONAL
2457 );
2458
2459 NTSTATUS
2460 STDCALL
2461 ZwQueryObject(
2462 IN HANDLE ObjectHandle,
2463 IN OBJECT_INFORMATION_CLASS ObjectInformationClass,
2464 OUT PVOID ObjectInformation,
2465 IN ULONG Length,
2466 OUT PULONG ResultLength OPTIONAL
2467 );
2468
2469 NTSTATUS
2470 STDCALL
2471 NtQueryPerformanceCounter(
2472 IN PLARGE_INTEGER Counter,
2473 IN PLARGE_INTEGER Frequency
2474 );
2475
2476 NTSTATUS
2477 STDCALL
2478 ZwQueryPerformanceCounter(
2479 IN PLARGE_INTEGER Counter,
2480 IN PLARGE_INTEGER Frequency
2481 );
2482
2483 NTSTATUS
2484 STDCALL
2485 NtQuerySection(
2486 IN HANDLE SectionHandle,
2487 IN SECTION_INFORMATION_CLASS SectionInformationClass,
2488 OUT PVOID SectionInformation,
2489 IN ULONG Length,
2490 OUT PULONG ResultLength
2491 );
2492
2493 NTSTATUS
2494 STDCALL
2495 ZwQuerySection(
2496 IN HANDLE SectionHandle,
2497 IN SECTION_INFORMATION_CLASS SectionInformationClass,
2498 OUT PVOID SectionInformation,
2499 IN ULONG Length,
2500 OUT PULONG ResultLength
2501 );
2502
2503 NTSTATUS
2504 STDCALL
2505 NtQuerySecurityObject(
2506 IN HANDLE Handle,
2507 IN SECURITY_INFORMATION SecurityInformation,
2508 OUT PSECURITY_DESCRIPTOR SecurityDescriptor,
2509 IN ULONG Length,
2510 OUT PULONG ResultLength
2511 );
2512
2513 NTSTATUS
2514 STDCALL
2515 ZwQuerySecurityObject(
2516 IN HANDLE Handle,
2517 IN SECURITY_INFORMATION SecurityInformation,
2518 OUT PSECURITY_DESCRIPTOR SecurityDescriptor,
2519 IN ULONG Length,
2520 OUT PULONG ResultLength
2521 );
2522
2523 NTSTATUS
2524 STDCALL
2525 NtQuerySemaphore(
2526 IN HANDLE SemaphoreHandle,
2527 IN SEMAPHORE_INFORMATION_CLASS SemaphoreInformationClass,
2528 OUT PVOID SemaphoreInformation,
2529 IN ULONG Length,
2530 OUT PULONG ReturnLength
2531 );
2532
2533 NTSTATUS
2534 STDCALL
2535 ZwQuerySemaphore(
2536 IN HANDLE SemaphoreHandle,
2537 IN SEMAPHORE_INFORMATION_CLASS SemaphoreInformationClass,
2538 OUT PVOID SemaphoreInformation,
2539 IN ULONG Length,
2540 OUT PULONG ReturnLength
2541 );
2542
2543 NTSTATUS
2544 STDCALL
2545 NtQuerySymbolicLinkObject(
2546 IN HANDLE SymLinkObjHandle,
2547 OUT PUNICODE_STRING LinkTarget,
2548 OUT PULONG DataWritten OPTIONAL
2549 );
2550
2551 NTSTATUS
2552 STDCALL
2553 ZwQuerySymbolicLinkObject(
2554 IN HANDLE SymLinkObjHandle,
2555 OUT PUNICODE_STRING LinkName,
2556 OUT PULONG DataWritten OPTIONAL
2557 );
2558
2559 NTSTATUS
2560 STDCALL
2561 NtQuerySystemEnvironmentValue(
2562 IN PUNICODE_STRING Name,
2563 OUT PWSTR Value,
2564 ULONG Length,
2565 PULONG ReturnLength
2566 );
2567
2568 NTSTATUS
2569 STDCALL
2570 ZwQuerySystemEnvironmentValue(
2571 IN PUNICODE_STRING Name,
2572 OUT PVOID Value,
2573 ULONG Length,
2574 PULONG ReturnLength
2575 );
2576
2577 NTSTATUS
2578 STDCALL
2579 NtQuerySystemInformation(
2580 IN SYSTEM_INFORMATION_CLASS SystemInformationClass,
2581 OUT PVOID SystemInformation,
2582 IN ULONG Length,
2583 OUT PULONG ResultLength
2584 );
2585
2586 NTSTATUS
2587 STDCALL
2588 ZwQuerySystemInformation(
2589 IN SYSTEM_INFORMATION_CLASS SystemInformationClass,
2590 OUT PVOID SystemInformation,
2591 IN ULONG Length,
2592 OUT PULONG ResultLength
2593 );
2594
2595 NTSTATUS
2596 STDCALL
2597 NtQuerySystemTime(
2598 OUT PLARGE_INTEGER CurrentTime
2599 );
2600
2601 NTSTATUS
2602 STDCALL
2603 ZwQuerySystemTime(
2604 OUT PLARGE_INTEGER CurrentTime
2605 );
2606
2607 NTSTATUS
2608 STDCALL
2609 NtQueryTimer(
2610 IN HANDLE TimerHandle,
2611 IN TIMER_INFORMATION_CLASS TimerInformationClass,
2612 OUT PVOID TimerInformation,
2613 IN ULONG Length,
2614 OUT PULONG ResultLength
2615 );
2616
2617 NTSTATUS
2618 STDCALL
2619 ZwQueryTimer(
2620 IN HANDLE TimerHandle,
2621 IN TIMER_INFORMATION_CLASS TimerInformationClass,
2622 OUT PVOID TimerInformation,
2623 IN ULONG Length,
2624 OUT PULONG ResultLength
2625 );
2626
2627 NTSTATUS
2628 STDCALL
2629 NtQueryTimerResolution(
2630 OUT PULONG MinimumResolution,
2631 OUT PULONG MaximumResolution,
2632 OUT PULONG ActualResolution
2633 );
2634
2635 NTSTATUS
2636 STDCALL
2637 ZwQueryTimerResolution(
2638 OUT PULONG MinimumResolution,
2639 OUT PULONG MaximumResolution,
2640 OUT PULONG ActualResolution
2641 );
2642
2643 NTSTATUS
2644 STDCALL
2645 NtQueryValueKey(
2646 IN HANDLE KeyHandle,
2647 IN PUNICODE_STRING ValueName,
2648 IN KEY_VALUE_INFORMATION_CLASS KeyValueInformationClass,
2649 OUT PVOID KeyValueInformation,
2650 IN ULONG Length,
2651 OUT PULONG ResultLength
2652 );
2653
2654 NTSTATUS
2655 STDCALL
2656 ZwQueryValueKey(
2657 IN HANDLE KeyHandle,
2658 IN PUNICODE_STRING ValueName,
2659 IN KEY_VALUE_INFORMATION_CLASS KeyValueInformationClass,
2660 OUT PVOID KeyValueInformation,
2661 IN ULONG Length,
2662 OUT PULONG ResultLength
2663 );
2664
2665 NTSTATUS
2666 STDCALL
2667 NtQueryVirtualMemory(
2668 IN HANDLE ProcessHandle,
2669 IN PVOID Address,
2670 IN IN CINT VirtualMemoryInformationClass,
2671 OUT PVOID VirtualMemoryInformation,
2672 IN ULONG Length,
2673 OUT PULONG ResultLength
2674 );
2675
2676 NTSTATUS
2677 STDCALL
2678 ZwQueryVirtualMemory(
2679 IN HANDLE ProcessHandle,
2680 IN PVOID Address,
2681 IN IN CINT VirtualMemoryInformationClass,
2682 OUT PVOID VirtualMemoryInformation,
2683 IN ULONG Length,
2684 OUT PULONG ResultLength
2685 );
2686
2687 NTSTATUS
2688 STDCALL
2689 NtQueryVolumeInformationFile(
2690 IN HANDLE FileHandle,
2691 OUT PIO_STATUS_BLOCK IoStatusBlock,
2692 OUT PVOID FsInformation,
2693 IN ULONG Length,
2694 IN FS_INFORMATION_CLASS FsInformationClass
2695 );
2696
2697 NTSTATUS
2698 STDCALL
2699 ZwQueryVolumeInformationFile(
2700 IN HANDLE FileHandle,
2701 OUT PIO_STATUS_BLOCK IoStatusBlock,
2702 OUT PVOID FsInformation,
2703 IN ULONG Length,
2704 IN FS_INFORMATION_CLASS FsInformationClass
2705 );
2706
2707 NTSTATUS
2708 STDCALL
2709 NtQueueApcThread(
2710 HANDLE ThreadHandle,
2711 PKNORMAL_ROUTINE ApcRoutine,
2712 PVOID NormalContext,
2713 PVOID SystemArgument1,
2714 PVOID SystemArgument2
2715 );
2716
2717 NTSTATUS
2718 STDCALL
2719 ZwQueueApcThread(
2720 HANDLE ThreadHandle,
2721 PKNORMAL_ROUTINE ApcRoutine,
2722 PVOID NormalContext,
2723 PVOID SystemArgument1,
2724 PVOID SystemArgument2
2725 );
2726
2727 NTSTATUS
2728 STDCALL
2729 NtRaiseException(
2730 IN PEXCEPTION_RECORD ExceptionRecord,
2731 IN PCONTEXT Context,
2732 IN BOOLEAN SearchFrames
2733 );
2734
2735 NTSTATUS
2736 STDCALL
2737 ZwRaiseException(
2738 IN PEXCEPTION_RECORD ExceptionRecord,
2739 IN PCONTEXT Context,
2740 IN BOOLEAN SearchFrames
2741 );
2742
2743 NTSTATUS
2744 STDCALL
2745 NtRaiseHardError(
2746 IN NTSTATUS ErrorStatus,
2747 IN ULONG NumberOfParameters,
2748 IN PUNICODE_STRING UnicodeStringParameterMask OPTIONAL,
2749 IN PVOID *Parameters,
2750 IN HARDERROR_RESPONSE_OPTION ResponseOption,
2751 OUT PHARDERROR_RESPONSE Response
2752 );
2753
2754 NTSTATUS
2755 STDCALL
2756 ZwRaiseHardError(
2757 IN NTSTATUS ErrorStatus,
2758 IN ULONG NumberOfParameters,
2759 IN PUNICODE_STRING UnicodeStringParameterMask OPTIONAL,
2760 IN PVOID *Parameters,
2761 IN HARDERROR_RESPONSE_OPTION ResponseOption,
2762 OUT PHARDERROR_RESPONSE Response
2763 );
2764
2765 NTSTATUS
2766 STDCALL
2767 NtReadFile(
2768 IN HANDLE FileHandle,
2769 IN HANDLE Event OPTIONAL,
2770 IN PIO_APC_ROUTINE UserApcRoutine OPTIONAL,
2771 IN PVOID UserApcContext OPTIONAL,
2772 OUT PIO_STATUS_BLOCK IoStatusBlock,
2773 OUT PVOID Buffer,
2774 IN ULONG BufferLength,
2775 IN PLARGE_INTEGER ByteOffset OPTIONAL,
2776 IN PULONG Key OPTIONAL
2777 );
2778
2779 NTSTATUS
2780 STDCALL
2781 ZwReadFile(
2782 IN HANDLE FileHandle,
2783 IN HANDLE Event OPTIONAL,
2784 IN PIO_APC_ROUTINE UserApcRoutine OPTIONAL,
2785 IN PVOID UserApcContext OPTIONAL,
2786 OUT PIO_STATUS_BLOCK IoStatusBlock,
2787 OUT PVOID Buffer,
2788 IN ULONG BufferLength,
2789 IN PLARGE_INTEGER ByteOffset OPTIONAL,
2790 IN PULONG Key OPTIONAL
2791 );
2792
2793 NTSTATUS
2794 STDCALL
2795 NtReadFileScatter(
2796 IN HANDLE FileHandle,
2797 IN HANDLE Event OPTIONAL,
2798 IN PIO_APC_ROUTINE UserApcRoutine OPTIONAL,
2799 IN PVOID UserApcContext OPTIONAL,
2800 OUT PIO_STATUS_BLOCK UserIoStatusBlock,
2801 IN FILE_SEGMENT_ELEMENT BufferDescription[],
2802 IN ULONG BufferLength,
2803 IN PLARGE_INTEGER ByteOffset,
2804 IN PULONG Key OPTIONAL
2805 );
2806
2807 NTSTATUS
2808 STDCALL
2809 ZwReadFileScatter(
2810 IN HANDLE FileHandle,
2811 IN HANDLE Event OPTIONAL,
2812 IN PIO_APC_ROUTINE UserApcRoutine OPTIONAL,
2813 IN PVOID UserApcContext OPTIONAL,
2814 OUT PIO_STATUS_BLOCK UserIoStatusBlock,
2815 IN FILE_SEGMENT_ELEMENT BufferDescription[],
2816 IN ULONG BufferLength,
2817 IN PLARGE_INTEGER ByteOffset,
2818 IN PULONG Key OPTIONAL
2819 );
2820
2821 NTSTATUS
2822 STDCALL
2823 NtReadRequestData(
2824 HANDLE PortHandle,
2825 PPORT_MESSAGE Message,
2826 ULONG Index,
2827 PVOID Buffer,
2828 ULONG BufferLength,
2829 PULONG ReturnLength
2830 );
2831
2832 NTSTATUS
2833 STDCALL
2834 ZwReadRequestData(
2835 HANDLE PortHandle,
2836 PPORT_MESSAGE Message,
2837 ULONG Index,
2838 PVOID Buffer,
2839 ULONG BufferLength,
2840 PULONG ReturnLength
2841 );
2842
2843 NTSTATUS
2844 STDCALL
2845 NtReadVirtualMemory(
2846 IN HANDLE ProcessHandle,
2847 IN PVOID BaseAddress,
2848 OUT PVOID Buffer,
2849 IN ULONG NumberOfBytesToRead,
2850 OUT PULONG NumberOfBytesRead
2851 );
2852 NTSTATUS
2853 STDCALL
2854 ZwReadVirtualMemory(
2855 IN HANDLE ProcessHandle,
2856 IN PVOID BaseAddress,
2857 OUT PVOID Buffer,
2858 IN ULONG NumberOfBytesToRead,
2859 OUT PULONG NumberOfBytesRead
2860 );
2861
2862 NTSTATUS
2863 STDCALL
2864 NtRegisterThreadTerminatePort(
2865 HANDLE TerminationPort
2866 );
2867
2868 NTSTATUS
2869 STDCALL
2870 ZwRegisterThreadTerminatePort(
2871 HANDLE TerminationPort
2872 );
2873
2874 NTSTATUS
2875 STDCALL
2876 NtReleaseMutant(
2877 IN HANDLE MutantHandle,
2878 IN PLONG ReleaseCount OPTIONAL
2879 );
2880
2881 NTSTATUS
2882 STDCALL
2883 ZwReleaseMutant(
2884 IN HANDLE MutantHandle,
2885 IN PLONG ReleaseCount OPTIONAL
2886 );
2887
2888 NTSTATUS
2889 STDCALL
2890 NtReleaseSemaphore(
2891 IN HANDLE SemaphoreHandle,
2892 IN LONG ReleaseCount,
2893 OUT PLONG PreviousCount
2894 );
2895
2896 NTSTATUS
2897 STDCALL
2898 ZwReleaseSemaphore(
2899 IN HANDLE SemaphoreHandle,
2900 IN LONG ReleaseCount,
2901 OUT PLONG PreviousCount
2902 );
2903
2904 NTSTATUS
2905 STDCALL
2906 NtRemoveIoCompletion(
2907 IN HANDLE IoCompletionHandle,
2908 OUT PVOID *CompletionKey,
2909 OUT PVOID *CompletionContext,
2910 OUT PIO_STATUS_BLOCK IoStatusBlock,
2911 IN PLARGE_INTEGER Timeout OPTIONAL
2912 );
2913
2914 NTSTATUS
2915 STDCALL
2916 ZwRemoveIoCompletion(
2917 IN HANDLE IoCompletionHandle,
2918 OUT PVOID *CompletionKey,
2919 OUT PVOID *CompletionContext,
2920 OUT PIO_STATUS_BLOCK IoStatusBlock,
2921 IN PLARGE_INTEGER Timeout OPTIONAL
2922 );
2923
2924 NTSTATUS
2925 STDCALL
2926 NtReplaceKey(
2927 IN POBJECT_ATTRIBUTES ObjectAttributes,
2928 IN HANDLE Key,
2929 IN POBJECT_ATTRIBUTES ReplacedObjectAttributes
2930 );
2931
2932 NTSTATUS
2933 STDCALL
2934 ZwReplaceKey(
2935 IN POBJECT_ATTRIBUTES ObjectAttributes,
2936 IN HANDLE Key,
2937 IN POBJECT_ATTRIBUTES ReplacedObjectAttributes
2938 );
2939
2940 NTSTATUS
2941 STDCALL
2942 NtReplyPort(
2943 HANDLE PortHandle,
2944 PPORT_MESSAGE LpcReply
2945 );
2946
2947 NTSTATUS
2948 STDCALL
2949 ZwReplyPort(
2950 HANDLE PortHandle,
2951 PPORT_MESSAGE LpcReply
2952 );
2953
2954 NTSTATUS
2955 STDCALL
2956 NtReplyWaitReceivePort(
2957 HANDLE PortHandle,
2958 PULONG PortId,
2959 PPORT_MESSAGE MessageReply,
2960 PPORT_MESSAGE MessageRequest
2961 );
2962
2963 NTSTATUS
2964 STDCALL
2965 ZwReplyWaitReceivePort(
2966 HANDLE PortHandle,
2967 PULONG PortId,
2968 PPORT_MESSAGE MessageReply,
2969 PPORT_MESSAGE MessageRequest
2970 );
2971
2972 NTSTATUS
2973 STDCALL
2974 NtReplyWaitReplyPort(
2975 HANDLE PortHandle,
2976 PPORT_MESSAGE ReplyMessage
2977 );
2978
2979 NTSTATUS
2980 STDCALL
2981 ZwReplyWaitReplyPort(
2982 HANDLE PortHandle,
2983 PPORT_MESSAGE ReplyMessage
2984 );
2985
2986 NTSTATUS
2987 STDCALL
2988 NtRequestPort(
2989 HANDLE PortHandle,
2990 PPORT_MESSAGE LpcMessage);
2991
2992 NTSTATUS
2993 STDCALL
2994 ZwRequestPort(
2995 HANDLE PortHandle,
2996 PPORT_MESSAGE LpcMessage
2997 );
2998
2999 NTSTATUS
3000 STDCALL
3001 NtRequestWaitReplyPort(
3002 HANDLE PortHandle,
3003 PPORT_MESSAGE LpcReply,
3004 PPORT_MESSAGE LpcRequest
3005 );
3006
3007 NTSTATUS
3008 STDCALL
3009 ZwRequestWaitReplyPort(
3010 HANDLE PortHandle,
3011 PPORT_MESSAGE LpcReply,
3012 PPORT_MESSAGE LpcRequest
3013 );
3014
3015 NTSTATUS
3016 STDCALL
3017 NtResetEvent(
3018 HANDLE EventHandle,
3019 PLONG NumberOfWaitingThreads OPTIONAL
3020 );
3021
3022 NTSTATUS
3023 STDCALL
3024 ZwResetEvent(
3025 HANDLE EventHandle,
3026 PLONG NumberOfWaitingThreads OPTIONAL
3027 );
3028
3029 NTSTATUS
3030 STDCALL
3031 NtRestoreKey(
3032 HANDLE KeyHandle,
3033 HANDLE FileHandle,
3034 ULONG RestoreFlags
3035 );
3036
3037 NTSTATUS
3038 STDCALL
3039 ZwRestoreKey(
3040 HANDLE KeyHandle,
3041 HANDLE FileHandle,
3042 ULONG RestoreFlags
3043 );
3044
3045 NTSTATUS
3046 STDCALL
3047 NtResumeThread(
3048 IN HANDLE ThreadHandle,
3049 OUT PULONG SuspendCount
3050 );
3051
3052 NTSTATUS
3053 STDCALL
3054 ZwResumeThread(
3055 IN HANDLE ThreadHandle,
3056 OUT PULONG SuspendCount
3057 );
3058
3059 NTSTATUS
3060 STDCALL
3061 NtResumeProcess(
3062 IN HANDLE ProcessHandle
3063 );
3064
3065 NTSTATUS
3066 STDCALL
3067 ZwResumeProcess(
3068 IN HANDLE ProcessHandle
3069 );
3070
3071 NTSTATUS
3072 STDCALL
3073 NtSaveKey(
3074 IN HANDLE KeyHandle,
3075 IN HANDLE FileHandle
3076 );
3077 NTSTATUS
3078 STDCALL
3079 ZwSaveKey(
3080 IN HANDLE KeyHandle,
3081 IN HANDLE FileHandle
3082 );
3083
3084 NTSTATUS
3085 STDCALL
3086 NtSaveKeyEx(
3087 IN HANDLE KeyHandle,
3088 IN HANDLE FileHandle,
3089 IN ULONG Flags
3090 );
3091
3092 NTSTATUS
3093 STDCALL
3094 ZwSaveKeyEx(
3095 IN HANDLE KeyHandle,
3096 IN HANDLE FileHandle,
3097 IN ULONG Flags
3098 );
3099
3100 NTSTATUS
3101 STDCALL
3102 NtSetBootEntryOrder(
3103 IN ULONG Unknown1,
3104 IN ULONG Unknown2
3105 );
3106
3107 NTSTATUS
3108 STDCALL
3109 ZwSetBootEntryOrder(
3110 IN ULONG Unknown1,
3111 IN ULONG Unknown2
3112 );
3113
3114 NTSTATUS
3115 STDCALL
3116 NtSetBootOptions(
3117 ULONG Unknown1,
3118 ULONG Unknown2
3119 );
3120
3121 NTSTATUS
3122 STDCALL
3123 ZwSetBootOptions(
3124 ULONG Unknown1,
3125 ULONG Unknown2
3126 );
3127
3128 NTSTATUS
3129 STDCALL
3130 NtSetContextThread(
3131 IN HANDLE ThreadHandle,
3132 IN PCONTEXT Context
3133 );
3134 NTSTATUS
3135 STDCALL
3136 ZwSetContextThread(
3137 IN HANDLE ThreadHandle,
3138 IN PCONTEXT Context
3139 );
3140
3141 NTSTATUS
3142 STDCALL
3143 NtSetDefaultLocale(
3144 IN BOOLEAN UserProfile,
3145 IN LCID DefaultLocaleId
3146 );
3147
3148 NTSTATUS
3149 STDCALL
3150 ZwSetDefaultLocale(
3151 IN BOOLEAN UserProfile,
3152 IN LCID DefaultLocaleId
3153 );
3154
3155 NTSTATUS
3156 STDCALL
3157 NtSetDefaultUILanguage(
3158 LANGID LanguageId
3159 );
3160
3161 NTSTATUS
3162 STDCALL
3163 ZwSetDefaultUILanguage(
3164 LANGID LanguageId
3165 );
3166 NTSTATUS
3167 STDCALL
3168 NtSetDefaultHardErrorPort(
3169 IN HANDLE PortHandle
3170 );
3171 NTSTATUS
3172 STDCALL
3173 ZwSetDefaultHardErrorPort(
3174 IN HANDLE PortHandle
3175 );
3176
3177 NTSTATUS
3178 STDCALL
3179 NtSetEaFile(
3180 IN HANDLE FileHandle,
3181 IN PIO_STATUS_BLOCK IoStatusBlock,
3182 PVOID EaBuffer,
3183 ULONG EaBufferSize
3184 );
3185
3186 NTSTATUS
3187 STDCALL
3188 ZwSetEaFile(
3189 IN HANDLE FileHandle,
3190 IN PIO_STATUS_BLOCK IoStatusBlock,
3191 PVOID EaBuffer,
3192 ULONG EaBufferSize
3193 );
3194
3195 NTSTATUS
3196 STDCALL
3197 NtSetEvent(
3198 IN HANDLE EventHandle,
3199 OUT PLONG PreviousState OPTIONAL
3200 );
3201
3202 NTSTATUS
3203 STDCALL
3204 ZwSetEvent(
3205 IN HANDLE EventHandle,
3206 OUT PLONG PreviousState OPTIONAL
3207 );
3208
3209 NTSTATUS
3210 STDCALL
3211 NtSetHighEventPair(
3212 IN HANDLE EventPairHandle
3213 );
3214
3215 NTSTATUS
3216 STDCALL
3217 ZwSetHighEventPair(
3218 IN HANDLE EventPairHandle
3219 );
3220 NTSTATUS
3221 STDCALL
3222 NtSetHighWaitLowEventPair(
3223 IN HANDLE EventPairHandle
3224 );
3225 NTSTATUS
3226 STDCALL
3227 ZwSetHighWaitLowEventPair(
3228 IN HANDLE EventPairHandle
3229 );
3230
3231 NTSTATUS
3232 STDCALL
3233 NtSetInformationFile(
3234 IN HANDLE FileHandle,
3235 IN PIO_STATUS_BLOCK IoStatusBlock,
3236 IN PVOID FileInformation,
3237 IN ULONG Length,
3238 IN FILE_INFORMATION_CLASS FileInformationClass
3239 );
3240
3241 NTSTATUS
3242 STDCALL
3243 ZwSetInformationFile(
3244 IN HANDLE FileHandle,
3245 IN PIO_STATUS_BLOCK IoStatusBlock,
3246 IN PVOID FileInformation,
3247 IN ULONG Length,
3248 IN FILE_INFORMATION_CLASS FileInformationClass
3249 );
3250
3251 NTSTATUS
3252 STDCALL
3253 NtSetInformationJobObject(
3254 HANDLE JobHandle,
3255 JOBOBJECTINFOCLASS JobInformationClass,
3256 PVOID JobInformation,
3257 ULONG JobInformationLength
3258 );
3259
3260 NTSTATUS
3261 STDCALL
3262 ZwSetInformationJobObject(
3263 HANDLE JobHandle,
3264 JOBOBJECTINFOCLASS JobInformationClass,
3265 PVOID JobInformation,
3266 ULONG JobInformationLength
3267 );
3268
3269 NTSTATUS
3270 STDCALL
3271 NtSetInformationKey(
3272 IN HANDLE KeyHandle,
3273 IN KEY_SET_INFORMATION_CLASS KeyInformationClass,
3274 IN PVOID KeyInformation,
3275 IN ULONG KeyInformationLength
3276 );
3277
3278 NTSTATUS
3279 STDCALL
3280 ZwSetInformationKey(
3281 IN HANDLE KeyHandle,
3282 IN KEY_SET_INFORMATION_CLASS KeyInformationClass,
3283 IN PVOID KeyInformation,
3284 IN ULONG KeyInformationLength
3285 );
3286
3287 NTSTATUS
3288 STDCALL
3289 NtSetInformationObject(
3290 IN HANDLE ObjectHandle,
3291 IN OBJECT_INFORMATION_CLASS ObjectInformationClass,
3292 IN PVOID ObjectInformation,
3293 IN ULONG Length
3294 );
3295
3296 NTSTATUS
3297 STDCALL
3298 ZwSetInformationObject(
3299 IN HANDLE ObjectHandle,
3300 IN OBJECT_INFORMATION_CLASS ObjectInformationClass,
3301 IN PVOID ObjectInformation,
3302 IN ULONG Length
3303 );
3304
3305 NTSTATUS
3306 STDCALL
3307 NtSetInformationProcess(
3308 IN HANDLE ProcessHandle,
3309 IN PROCESSINFOCLASS ProcessInformationClass,
3310 IN PVOID ProcessInformation,
3311 IN ULONG ProcessInformationLength
3312 );
3313
3314 NTSTATUS
3315 STDCALL
3316 NtSetInformationThread(
3317 IN HANDLE ThreadHandle,
3318 IN THREADINFOCLASS ThreadInformationClass,
3319 IN PVOID ThreadInformation,
3320 IN ULONG ThreadInformationLength
3321 );
3322 NTSTATUS
3323 STDCALL
3324 ZwSetInformationThread(
3325 IN HANDLE ThreadHandle,
3326 IN THREADINFOCLASS ThreadInformationClass,
3327 IN PVOID ThreadInformation,
3328 IN ULONG ThreadInformationLength
3329 );
3330
3331 NTSTATUS
3332 STDCALL
3333 NtSetInformationToken(
3334 IN HANDLE TokenHandle,
3335 IN TOKEN_INFORMATION_CLASS TokenInformationClass,
3336 OUT PVOID TokenInformation,
3337 IN ULONG TokenInformationLength
3338 );
3339
3340 NTSTATUS
3341 STDCALL
3342 ZwSetInformationToken(
3343 IN HANDLE TokenHandle,
3344 IN TOKEN_INFORMATION_CLASS TokenInformationClass,
3345 OUT PVOID TokenInformation,
3346 IN ULONG TokenInformationLength
3347 );
3348
3349 NTSTATUS
3350 STDCALL
3351 NtSetIoCompletion(
3352 IN HANDLE IoCompletionPortHandle,
3353 IN PVOID CompletionKey,
3354 IN PVOID CompletionContext,
3355 IN NTSTATUS CompletionStatus,
3356 IN ULONG CompletionInformation
3357 );
3358
3359 NTSTATUS
3360 STDCALL
3361 ZwSetIoCompletion(
3362 IN HANDLE IoCompletionPortHandle,
3363 IN PVOID CompletionKey,
3364 IN PVOID CompletionContext,
3365 IN NTSTATUS CompletionStatus,
3366 IN ULONG CompletionInformation
3367 );
3368
3369 NTSTATUS
3370 STDCALL
3371 NtSetIntervalProfile(
3372 ULONG Interval,
3373 KPROFILE_SOURCE ClockSource
3374 );
3375
3376 NTSTATUS
3377 STDCALL
3378 ZwSetIntervalProfile(
3379 ULONG Interval,
3380 KPROFILE_SOURCE ClockSource
3381 );
3382
3383 NTSTATUS
3384 STDCALL
3385 NtSetLdtEntries(
3386 ULONG Selector1,
3387 LDT_ENTRY LdtEntry1,
3388 ULONG Selector2,
3389 LDT_ENTRY LdtEntry2
3390 );
3391
3392 NTSTATUS
3393 STDCALL
3394 NtSetLowEventPair(
3395 HANDLE EventPair
3396 );
3397
3398 NTSTATUS
3399 STDCALL
3400 ZwSetLowEventPair(
3401 HANDLE EventPair
3402 );
3403
3404 NTSTATUS
3405 STDCALL
3406 NtSetLowWaitHighEventPair(
3407 HANDLE EventPair
3408 );
3409
3410 NTSTATUS
3411 STDCALL
3412 ZwSetLowWaitHighEventPair(
3413 HANDLE EventPair
3414 );
3415
3416 NTSTATUS
3417 STDCALL
3418 NtSetQuotaInformationFile(
3419 HANDLE FileHandle,
3420 PIO_STATUS_BLOCK IoStatusBlock,
3421 PFILE_QUOTA_INFORMATION Buffer,
3422 ULONG BufferLength
3423 );
3424
3425 NTSTATUS
3426 STDCALL
3427 ZwSetQuotaInformationFile(
3428 HANDLE FileHandle,
3429 PIO_STATUS_BLOCK IoStatusBlock,
3430 PFILE_QUOTA_INFORMATION Buffer,
3431 ULONG BufferLength
3432 );
3433
3434 NTSTATUS
3435 STDCALL
3436 NtSetSecurityObject(
3437 IN HANDLE Handle,
3438 IN SECURITY_INFORMATION SecurityInformation,
3439 IN PSECURITY_DESCRIPTOR SecurityDescriptor
3440 );
3441
3442 NTSTATUS
3443 STDCALL
3444 ZwSetSecurityObject(
3445 IN HANDLE Handle,
3446 IN SECURITY_INFORMATION SecurityInformation,
3447 IN PSECURITY_DESCRIPTOR SecurityDescriptor
3448 );
3449
3450 NTSTATUS
3451 STDCALL
3452 NtSetSystemEnvironmentValue(
3453 IN PUNICODE_STRING VariableName,
3454 IN PUNICODE_STRING Value
3455 );
3456 NTSTATUS
3457 STDCALL
3458 ZwSetSystemEnvironmentValue(
3459 IN PUNICODE_STRING VariableName,
3460 IN PUNICODE_STRING Value
3461 );
3462
3463 NTSTATUS
3464 STDCALL
3465 NtSetSystemInformation(
3466 IN SYSTEM_INFORMATION_CLASS SystemInformationClass,
3467 IN PVOID SystemInformation,
3468 IN ULONG SystemInformationLength
3469 );
3470
3471 NTSTATUS
3472 STDCALL
3473 ZwSetSystemInformation(
3474 IN SYSTEM_INFORMATION_CLASS SystemInformationClass,
3475 IN PVOID SystemInformation,
3476 IN ULONG SystemInformationLength
3477 );
3478
3479 NTSTATUS
3480 STDCALL
3481 NtSetSystemPowerState(
3482 IN POWER_ACTION SystemAction,
3483 IN SYSTEM_POWER_STATE MinSystemState,
3484 IN ULONG Flags
3485 );
3486
3487 NTSTATUS
3488 STDCALL
3489 NtSetSystemTime(
3490 IN PLARGE_INTEGER SystemTime,
3491 IN PLARGE_INTEGER NewSystemTime OPTIONAL
3492 );
3493
3494 NTSTATUS
3495 STDCALL
3496 ZwSetSystemTime(
3497 IN PLARGE_INTEGER SystemTime,
3498 IN PLARGE_INTEGER NewSystemTime OPTIONAL
3499 );
3500
3501 NTSTATUS
3502 STDCALL
3503 NtSetTimer(
3504 IN HANDLE TimerHandle,
3505 IN PLARGE_INTEGER DueTime,
3506 IN PTIMER_APC_ROUTINE TimerApcRoutine,
3507 IN PVOID TimerContext,
3508 IN BOOLEAN WakeTimer,
3509 IN LONG Period OPTIONAL,
3510 OUT PBOOLEAN PreviousState OPTIONAL
3511 );
3512
3513 NTSTATUS
3514 STDCALL
3515 NtSetTimerResolution(
3516 IN ULONG RequestedResolution,
3517 IN BOOLEAN SetOrUnset,
3518 OUT PULONG ActualResolution
3519 );
3520
3521 NTSTATUS
3522 STDCALL
3523 ZwSetTimerResolution(
3524 IN ULONG RequestedResolution,
3525 IN BOOLEAN SetOrUnset,
3526 OUT PULONG ActualResolution
3527 );
3528
3529 NTSTATUS
3530 STDCALL
3531 NtSetUuidSeed(
3532 IN PUCHAR UuidSeed
3533 );
3534
3535 NTSTATUS
3536 STDCALL
3537 ZwSetUuidSeed(
3538 IN PUCHAR UuidSeed
3539 );
3540
3541 NTSTATUS
3542 STDCALL
3543 NtSetValueKey(
3544 IN HANDLE KeyHandle,
3545 IN PUNICODE_STRING ValueName,
3546 IN ULONG TitleIndex OPTIONAL,
3547 IN ULONG Type,
3548 IN PVOID Data,
3549 IN ULONG DataSize
3550 );
3551
3552 NTSTATUS
3553 STDCALL
3554 ZwSetValueKey(
3555 IN HANDLE KeyHandle,
3556 IN PUNICODE_STRING ValueName,
3557 IN ULONG TitleIndex OPTIONAL,
3558 IN ULONG Type,
3559 IN PVOID Data,
3560 IN ULONG DataSize
3561 );
3562
3563 NTSTATUS
3564 STDCALL
3565 NtSetVolumeInformationFile(
3566 IN HANDLE FileHandle,
3567 OUT PIO_STATUS_BLOCK IoStatusBlock,
3568 IN PVOID FsInformation,
3569 IN ULONG Length,
3570 IN FS_INFORMATION_CLASS FsInformationClass
3571 );
3572
3573 NTSTATUS
3574 STDCALL
3575 ZwSetVolumeInformationFile(
3576 IN HANDLE FileHandle,
3577 OUT PIO_STATUS_BLOCK IoStatusBlock,
3578 IN PVOID FsInformation,
3579 IN ULONG Length,
3580 IN FS_INFORMATION_CLASS FsInformationClass
3581 );
3582
3583 NTSTATUS
3584 STDCALL
3585 NtShutdownSystem(
3586 IN SHUTDOWN_ACTION Action
3587 );
3588
3589 NTSTATUS
3590 STDCALL
3591 ZwShutdownSystem(
3592 IN SHUTDOWN_ACTION Action
3593 );
3594
3595 NTSTATUS
3596 STDCALL
3597 NtSignalAndWaitForSingleObject(
3598 IN HANDLE SignalObject,
3599 IN HANDLE WaitObject,
3600 IN BOOLEAN Alertable,
3601 IN PLARGE_INTEGER Time
3602 );
3603
3604 NTSTATUS
3605 STDCALL
3606 ZwSignalAndWaitForSingleObject(
3607 IN HANDLE SignalObject,
3608 IN HANDLE WaitObject,
3609 IN BOOLEAN Alertable,
3610 IN PLARGE_INTEGER Time
3611 );
3612
3613 NTSTATUS
3614 STDCALL
3615 NtStartProfile(
3616 HANDLE ProfileHandle
3617 );
3618
3619 NTSTATUS
3620 STDCALL
3621 ZwStartProfile(
3622 HANDLE ProfileHandle
3623 );
3624
3625 NTSTATUS
3626 STDCALL
3627 NtStopProfile(
3628 HANDLE ProfileHandle
3629 );
3630
3631 NTSTATUS
3632 STDCALL
3633 ZwStopProfile(
3634 HANDLE ProfileHandle
3635 );
3636
3637 NTSTATUS
3638 STDCALL
3639 NtSuspendProcess(
3640 IN HANDLE ProcessHandle
3641 );
3642
3643 NTSTATUS
3644 STDCALL
3645 ZwSuspendProcess(
3646 IN HANDLE ProcessHandle
3647 );
3648
3649 NTSTATUS
3650 STDCALL
3651 NtSuspendThread(
3652 IN HANDLE ThreadHandle,
3653 IN PULONG PreviousSuspendCount
3654 );
3655
3656 NTSTATUS
3657 STDCALL
3658 ZwSuspendThread(
3659 IN HANDLE ThreadHandle,
3660 IN PULONG PreviousSuspendCount
3661 );
3662
3663 NTSTATUS
3664 STDCALL
3665 NtSystemDebugControl(
3666 DEBUG_CONTROL_CODE ControlCode,
3667 PVOID InputBuffer,
3668 ULONG InputBufferLength,
3669 PVOID OutputBuffer,
3670 ULONG OutputBufferLength,
3671 PULONG ReturnLength
3672 );
3673
3674 NTSTATUS
3675 STDCALL
3676 NtTerminateProcess(
3677 IN HANDLE ProcessHandle,
3678 IN NTSTATUS ExitStatus
3679 );
3680
3681 NTSTATUS
3682 STDCALL
3683 ZwTerminateProcess(
3684 IN HANDLE ProcessHandle,
3685 IN NTSTATUS ExitStatus
3686 );
3687
3688 NTSTATUS
3689 STDCALL
3690 NtTerminateThread(
3691 IN HANDLE ThreadHandle,
3692 IN NTSTATUS ExitStatus
3693 );
3694
3695 NTSTATUS
3696 STDCALL
3697 ZwTerminateThread(
3698 IN HANDLE ThreadHandle,
3699 IN NTSTATUS ExitStatus
3700 );
3701
3702 NTSTATUS
3703 STDCALL
3704 NtTerminateJobObject(
3705 HANDLE JobHandle,
3706 NTSTATUS ExitStatus
3707 );
3708
3709 NTSTATUS
3710 STDCALL
3711 ZwTerminateJobObject(
3712 HANDLE JobHandle,
3713 NTSTATUS ExitStatus
3714 );
3715
3716 NTSTATUS
3717 STDCALL
3718 NtTestAlert(
3719 VOID
3720 );
3721
3722 NTSTATUS
3723 STDCALL
3724 ZwTestAlert(
3725 VOID
3726 );
3727
3728 NTSTATUS
3729 STDCALL
3730 NtTraceEvent(
3731 IN ULONG TraceHandle,
3732 IN ULONG Flags,
3733 IN ULONG TraceHeaderLength,
3734 IN struct _EVENT_TRACE_HEADER* TraceHeader
3735 );
3736
3737 NTSTATUS
3738 STDCALL
3739 ZwTraceEvent(
3740 IN ULONG TraceHandle,
3741 IN ULONG Flags,
3742 IN ULONG TraceHeaderLength,
3743 IN struct _EVENT_TRACE_HEADER* TraceHeader
3744 );
3745
3746 NTSTATUS
3747 STDCALL
3748 NtTranslateFilePath(
3749 ULONG Unknown1,
3750 ULONG Unknown2,
3751 ULONG Unknown3
3752 );
3753
3754 NTSTATUS
3755 STDCALL
3756 ZwTranslateFilePath(
3757 ULONG Unknown1,
3758 ULONG Unknown2,
3759 ULONG Unknown3
3760 );
3761
3762 NTSTATUS
3763 STDCALL
3764 NtUnloadDriver(
3765 IN PUNICODE_STRING DriverServiceName
3766 );
3767
3768 NTSTATUS
3769 STDCALL
3770 ZwUnloadDriver(
3771 IN PUNICODE_STRING DriverServiceName
3772 );
3773
3774 NTSTATUS
3775 STDCALL
3776 NtUnloadKey(
3777 IN POBJECT_ATTRIBUTES KeyObjectAttributes
3778 );
3779
3780 NTSTATUS
3781 STDCALL
3782 ZwUnloadKey(
3783 IN POBJECT_ATTRIBUTES KeyObjectAttributes
3784 );
3785
3786 NTSTATUS
3787 STDCALL
3788 NtUnlockFile(
3789 IN HANDLE FileHandle,
3790 OUT PIO_STATUS_BLOCK IoStatusBlock,
3791 IN PLARGE_INTEGER ByteOffset,
3792 IN PLARGE_INTEGER Lenght,
3793 OUT PULONG Key OPTIONAL
3794 );
3795
3796 NTSTATUS
3797 STDCALL
3798 ZwUnlockFile(
3799 IN HANDLE FileHandle,
3800 OUT PIO_STATUS_BLOCK IoStatusBlock,
3801 IN PLARGE_INTEGER ByteOffset,
3802 IN PLARGE_INTEGER Lenght,
3803 OUT PULONG Key OPTIONAL
3804 );
3805
3806 NTSTATUS
3807 STDCALL
3808 NtUnlockVirtualMemory(
3809 IN HANDLE ProcessHandle,
3810 IN PVOID BaseAddress,
3811 IN ULONG NumberOfBytesToUnlock,
3812 OUT PULONG NumberOfBytesUnlocked OPTIONAL
3813 );
3814
3815 NTSTATUS
3816 STDCALL
3817 ZwUnlockVirtualMemory(
3818 IN HANDLE ProcessHandle,
3819 IN PVOID BaseAddress,
3820 IN ULONG NumberOfBytesToUnlock,
3821 OUT PULONG NumberOfBytesUnlocked OPTIONAL
3822 );
3823
3824 NTSTATUS
3825 STDCALL
3826 NtUnmapViewOfSection(
3827 IN HANDLE ProcessHandle,
3828 IN PVOID BaseAddress
3829 );
3830
3831 NTSTATUS
3832 STDCALL
3833 ZwUnmapViewOfSection(
3834 IN HANDLE ProcessHandle,
3835 IN PVOID BaseAddress
3836 );
3837
3838 NTSTATUS
3839 STDCALL
3840 NtVdmControl(
3841 ULONG ControlCode,
3842 PVOID ControlData
3843 );
3844
3845 NTSTATUS
3846 STDCALL
3847 NtW32Call(
3848 IN ULONG RoutineIndex,
3849 IN PVOID Argument,
3850 IN ULONG ArgumentLength,
3851 OUT PVOID* Result OPTIONAL,
3852 OUT PULONG ResultLength OPTIONAL
3853 );
3854
3855 NTSTATUS
3856 STDCALL
3857 NtWaitForMultipleObjects(
3858 IN ULONG Count,
3859 IN HANDLE Object[],
3860 IN WAIT_TYPE WaitType,
3861 IN BOOLEAN Alertable,
3862 IN PLARGE_INTEGER Time
3863 );
3864
3865 NTSTATUS
3866 STDCALL
3867 ZwWaitForMultipleObjects(
3868 IN ULONG Count,
3869 IN HANDLE Object[],
3870 IN WAIT_TYPE WaitType,
3871 IN BOOLEAN Alertable,
3872 IN PLARGE_INTEGER Time
3873 );
3874
3875 NTSTATUS
3876 STDCALL
3877 NtWaitForSingleObject(
3878 IN HANDLE Object,
3879 IN BOOLEAN Alertable,
3880 IN PLARGE_INTEGER Time
3881 );
3882
3883 NTSTATUS
3884 STDCALL
3885 ZwWaitForSingleObject(
3886 IN HANDLE Object,
3887 IN BOOLEAN Alertable,
3888 IN PLARGE_INTEGER Time
3889 );
3890
3891 NTSTATUS
3892 STDCALL
3893 NtWaitHighEventPair(
3894 IN HANDLE EventPairHandle
3895 );
3896
3897 NTSTATUS
3898 STDCALL
3899 ZwWaitHighEventPair(
3900 IN HANDLE EventPairHandle
3901 );
3902
3903 NTSTATUS
3904 STDCALL
3905 NtWaitLowEventPair(
3906 IN HANDLE EventPairHandle
3907 );
3908
3909 NTSTATUS
3910 STDCALL
3911 ZwWaitLowEventPair(
3912 IN HANDLE EventPairHandle
3913 );
3914
3915 NTSTATUS
3916 STDCALL
3917 NtWriteFile(
3918 IN HANDLE FileHandle,
3919 IN HANDLE Event OPTIONAL,
3920 IN PIO_APC_ROUTINE ApcRoutine OPTIONAL,
3921 IN PVOID ApcContext OPTIONAL,
3922 OUT PIO_STATUS_BLOCK IoStatusBlock,
3923 IN PVOID Buffer,
3924 IN ULONG Length,
3925 IN PLARGE_INTEGER ByteOffset,
3926 IN PULONG Key OPTIONAL
3927 );
3928
3929 NTSTATUS
3930 STDCALL
3931 ZwWriteFile(
3932 IN HANDLE FileHandle,
3933 IN HANDLE Event OPTIONAL,
3934 IN PIO_APC_ROUTINE ApcRoutine OPTIONAL,
3935 IN PVOID ApcContext OPTIONAL,
3936 OUT PIO_STATUS_BLOCK IoStatusBlock,
3937 IN PVOID Buffer,
3938 IN ULONG Length,
3939 IN PLARGE_INTEGER ByteOffset,
3940 IN PULONG Key OPTIONAL
3941 );
3942
3943 NTSTATUS
3944 STDCALL
3945 NtWriteFileGather(
3946 IN HANDLE FileHandle,
3947 IN HANDLE Event OPTIONAL,
3948 IN PIO_APC_ROUTINE ApcRoutine OPTIONAL,
3949 IN PVOID ApcContext OPTIONAL,
3950 OUT PIO_STATUS_BLOCK IoStatusBlock,
3951 IN FILE_SEGMENT_ELEMENT BufferDescription[],
3952 IN ULONG BufferLength,
3953 IN PLARGE_INTEGER ByteOffset,
3954 IN PULONG Key OPTIONAL
3955 );
3956
3957 NTSTATUS
3958 STDCALL
3959 ZwWriteFileGather(
3960 IN HANDLE FileHandle,
3961 IN HANDLE Event OPTIONAL,
3962 IN PIO_APC_ROUTINE ApcRoutine OPTIONAL,
3963 IN PVOID ApcContext OPTIONAL,
3964 OUT PIO_STATUS_BLOCK IoStatusBlock,
3965 IN FILE_SEGMENT_ELEMENT BufferDescription[],
3966 IN ULONG BufferLength,
3967 IN PLARGE_INTEGER ByteOffset,
3968 IN PULONG Key OPTIONAL
3969 );
3970
3971 NTSTATUS
3972 STDCALL
3973 NtWriteRequestData(
3974 HANDLE PortHandle,
3975 PPORT_MESSAGE Message,
3976 ULONG Index,
3977 PVOID Buffer,
3978 ULONG BufferLength,
3979 PULONG ReturnLength
3980 );
3981
3982 NTSTATUS
3983 STDCALL
3984 ZwWriteRequestData(
3985 HANDLE PortHandle,
3986 PPORT_MESSAGE Message,
3987 ULONG Index,
3988 PVOID Buffer,
3989 ULONG BufferLength,
3990 PULONG ReturnLength
3991 );
3992
3993 NTSTATUS
3994 STDCALL
3995 NtWriteVirtualMemory(
3996 IN HANDLE ProcessHandle,
3997 IN PVOID BaseAddress,
3998 IN PVOID Buffer,
3999 IN ULONG NumberOfBytesToWrite,
4000 OUT PULONG NumberOfBytesWritten
4001 );
4002
4003 NTSTATUS
4004 STDCALL
4005 ZwWriteVirtualMemory(
4006 IN HANDLE ProcessHandle,
4007 IN PVOID BaseAddress,
4008 IN PVOID Buffer,
4009 IN ULONG NumberOfBytesToWrite,
4010 OUT PULONG NumberOfBytesWritten
4011 );
4012
4013 NTSTATUS
4014 STDCALL
4015 NtYieldExecution(
4016 VOID
4017 );
4018
4019 NTSTATUS
4020 STDCALL
4021 ZwYieldExecution(
4022 VOID
4023 );
4024
4025
4026 static __inline struct _PEB* NtCurrentPeb (void)
4027 {
4028 struct _PEB * pPeb;
4029
4030 #if defined(__GNUC__)
4031
4032 __asm__ __volatile__
4033 (
4034 "movl %%fs:0x30, %0\n" /* fs:30h == Teb->Peb */
4035 : "=r" (pPeb) /* can't have two memory operands */
4036 : /* no inputs */
4037 );
4038
4039 #elif defined(_MSC_VER)
4040
4041 __asm mov eax, fs:0x30;
4042 __asm mov pPeb, eax
4043
4044 #else
4045 #error Unknown compiler for inline assembler
4046 #endif
4047
4048 return pPeb;
4049 }
4050 #endif