13#include <reactos/buildno.h>
20#define LOADER_PARAMETER_EXTENSION_MIN_SIZE \
21 RTL_SIZEOF_THROUGH_FIELD(LOADER_PARAMETER_EXTENSION, AcpiTableSize)
65 REACTOS_COMPILER_NAME
"_" REACTOS_COMPILER_VERSION;
173 LoaderBlock->ArcBootDeviceName,
174 LoaderBlock->NtBootPathName);
223 ULONG NlsTablesEncountered = 0;
224 SIZE_T NlsTableSizes[3] = {0, 0, 0};
230 ListHead = &LoaderBlock->MemoryDescriptorListHead;
231 NextEntry = ListHead->
Flink;
232 while (NextEntry != ListHead)
247 NlsTablesEncountered++;
248 ASSERT(NlsTablesEncountered < 4);
262 if (NlsTablesEncountered == 1)
266 LoaderBlock->NlsData->AnsiCodePageData,
276 LoaderBlock->NlsData->AnsiCodePageData,
280 LoaderBlock->NlsData->OemCodePageData,
285 LoaderBlock->NlsData->UnicodeCodePageData,
306 Status = ZwCreateSection(&NlsSection,
405 ProcessInformation = &InitBuffer->ProcessInfo;
410 (
PVOID*)&ProcessParams,
419 sizeof(InitBuffer->DebugBuffer)/
sizeof(
WCHAR),
420 L"INIT: Unable to allocate Process Parameters. 0x%lx",
447 sizeof(InitBuffer->DebugBuffer)/
sizeof(
WCHAR),
448 L"INIT: Unable to allocate Process Environment. 0x%lx",
461 p = (
PWSTR)(ProcessParams + 1);
504 while ((*
p) && (*
p !=
L' '))
p++;
572 sizeof(InitBuffer->DebugBuffer)/
sizeof(
WCHAR),
573 L"INIT: Unable to create Session Manager. 0x%lx",
588 sizeof(InitBuffer->DebugBuffer)/
sizeof(
WCHAR),
589 L"INIT: Unable to resume Session Manager. 0x%lx",
599 *ProcessParameters = ProcessParams;
600 *ProcessEnvironment = EnvironmentPtr;
608 ULONG MsRemainder = 0, MsIncrement;
609 ULONG IncrementRemainder;
613 MsIncrement = ClockIncrement / (10 * 1000);
616 IncrementRemainder = ClockIncrement - (MsIncrement * (10 * 1000));
617 for (
i= 0;
i < 24;
i++)
621 IncrementRemainder <<= 1;
624 if (IncrementRemainder >= (10 * 1000))
627 IncrementRemainder -= (10 * 1000);
633 return (MsIncrement << 24) | MsRemainder;
674 DPRINT1(
"Executive: Event initialization failed\n");
679 DPRINT1(
"Executive: Event Pair initialization failed\n");
686 DPRINT1(
"Executive: Mutant initialization failed\n");
693 DPRINT1(
"Executive: Callback initialization failed\n");
700 DPRINT1(
"Executive: Semaphore initialization failed\n");
707 DPRINT1(
"Executive: Timer initialization failed\n");
714 DPRINT1(
"Executive: Profile initialization failed\n");
721 DPRINT1(
"Executive: Uuid initialization failed\n");
728 DPRINT1(
"Executive: Keyed event initialization failed\n");
735 DPRINT1(
"Executive: Win32 initialization failed\n");
803 CHAR NameBuffer[256];
808 NextEntry = LoaderBlock->LoadOrderListHead.
Flink;
809 while (NextEntry != &LoaderBlock->LoadOrderListHead)
850 "%S\\System32\\Drivers\\%wZ",
870 NextEntry = NextEntry->
Flink;
884 DPRINT1(
"Burn RAM amount: %lu pages\n", PagesToDestroy);
887 for (ListEntry = LoaderBlock->MemoryDescriptorListHead.
Blink;
888 ListEntry != &LoaderBlock->MemoryDescriptorListHead;
889 ListEntry = ListEntry->
Blink)
901 if (MemDescriptor->
PageCount > PagesToDestroy)
904 MemDescriptor->
PageCount -= PagesToDestroy;
911 PagesToDestroy -= MemDescriptor->
PageCount;
914 if (PagesToDestroy == 0)
break;
930 PCHAR CommandLine, PerfMem;
935 size_t Remaining = 0;
937 CHAR VersionBuffer[65];
945 LoaderBlock->Extension->Size,
946 LoaderBlock->Extension->MajorVersion,
947 LoaderBlock->Extension->MinorVersion);
972 if (LoaderBlock->SetupLdrBlock)
993 CommandLine = LoaderBlock->LoadOptions;
998 PerfMem =
strstr(CommandLine,
"PERFMEM");
1002 PerfMem =
strstr(PerfMem,
"=");
1006 PerfMemUsed =
atol(PerfMem + 1) * (1024 * 1024 /
PAGE_SIZE);
1010 DPRINT1(
"BBT performance mode not yet supported."
1011 "/PERFMEM option ignored.\n");
1017 PerfMem =
strstr(CommandLine,
"BURNMEMORY");
1021 PerfMem =
strstr(PerfMem,
"=");
1025 PerfMemUsed =
atol(PerfMem + 1) * (1024 * 1024 /
PAGE_SIZE);
1032 NlsData = LoaderBlock->NlsData;
1144 WINDOWS_NT_CSD_STRING,
1152 while ((CSDString.
Length > 0) &&
1212 Remaining =
sizeof(
Buffer);
1256 sizeof(VersionBuffer),
1273 DPRINT1(
"Kernel-mode stack trace support not yet present."
1274 "FLG_KERNEL_STACK_TRACE_DB flag ignored.\n");
1281 DPRINT1(
"Kernel-mode exception logging support not yet present."
1282 "FLG_ENABLE_EXCEPTION_LOGGING flag ignored.\n");
1388 NoGuiBoot = (CommandLine &&
strstr(CommandLine,
"NOGUIBOOT") !=
NULL);
1414 if (CommandLine &&
strstr(CommandLine,
"MININT") !=
NULL)
1514 Y2KHackRequired = CommandLine ?
strstr(CommandLine,
"YEAR") :
NULL;
1515 if (Y2KHackRequired) Y2KHackRequired =
strstr(Y2KHackRequired,
"=");
1516 if (Y2KHackRequired) YearHack =
atol(Y2KHackRequired + 1);
1526 UniversalBootTime = SystemBootTime;
1572 MpString =
"MultiProcessor Kernel\r\n";
1579 while ((TempString.
Length > 0) &&
1592 WINDOWS_NT_INFO_STRING_PLURAL :
1593 WINDOWS_NT_INFO_STRING,
1606 "%u System Processor [%Iu MB Memory] %Z\r\n",
1635 KeBugCheckEx(PHASE1_INITIALIZATION_FAILED, 0, 0, 3, 0);
1727 MessageCode = BOOTING_IN_SAFEMODE_MINIMAL;
1734 MessageCode = BOOTING_IN_SAFEMODE_NETWORK;
1741 MessageCode = BOOTING_IN_SAFEMODE_DSREPAIR;
1757 AlternateShell =
TRUE;
1779 if (
strstr(CommandLine,
"BOOTLOG"))
1824 L"\\REGISTRY\\MACHINE\\SYSTEM\\CURRENTCONTROLSET"
1825 L"\\CONTROL\\SAFEBOOT");
1843 sizeof(KeyPartialInfo),
1847 AlternateShell =
FALSE;
1858 Status = ZwCreateKey(&OptionHandle,
1904 L"\\REGISTRY\\MACHINE\\SYSTEM\\CURRENTCONTROLSET"
1925 Status = ZwCreateKey(&OptionHandle,
1990 DPRINT1(
"INIT: Session Manager terminated.\n");
2010 (
PVOID*)&ProcessParameters,
#define ALIGN_UP_BY(size, align)
char * strstr(char *String1, char *String2)
ACPI_SIZE strlen(const char *String)
int strncmp(const char *String1, const char *String2, ACPI_SIZE Count)
static CCHAR DebugString[256]
VOID NTAPI FinalizeBootLogo(VOID)
VOID NTAPI DisplayBootBitmap(_In_ BOOLEAN TextMode)
DECLSPEC_NORETURN VOID NTAPI KeBugCheck(ULONG BugCheckCode)
_In_z_ PCHAR TargetString
CM_SYSTEM_CONTROL_VECTOR CmControlVector[]
VOID NTAPI CmGetSystemControlValues(IN PVOID SystemHiveData, IN PCM_SYSTEM_CONTROL_VECTOR ControlVector)
BOOLEAN NTAPI CmInitSystem1(VOID)
IN PUNICODE_STRING IN POBJECT_ATTRIBUTES ObjectAttributes
VOID NTAPI DbgkInitialize(VOID)
#define NT_SUCCESS(StatCode)
BOOLEAN RtlTimeFieldsToTime(IN PTIME_FIELDS TimeFields, IN PLARGE_INTEGER Time)
#define ExLocalTimeToSystemTime(LocTime, SysTime)
#define ExAllocatePoolWithTag(hernya, size, tag)
NTSTATUS ExInitializeResourceLite(PULONG res)
NTSTATUS RtlAppendUnicodeToString(IN PUNICODE_STRING Str1, IN PWSTR Str2)
#define InitializeListHead(ListHead)
BOOLEAN NTAPI ExpInitializeEventPairImplementation(VOID)
BOOLEAN NTAPI ExpInitializeKeyedEventImplementation(VOID)
_Inout_opt_ PUNICODE_STRING Extension
BOOLEAN NTAPI FsRtlInitSystem(VOID)
BOOLEAN NTAPI CcInitializeCacheManager(VOID)
VOID NTAPI CcPfInitializePrefetcher(VOID)
GLsizei GLenum const GLvoid GLsizei GLenum GLbyte GLbyte GLbyte GLdouble GLdouble GLdouble GLfloat GLfloat GLfloat GLint GLint GLint GLshort GLshort GLshort GLubyte GLubyte GLubyte GLuint GLuint GLuint GLushort GLushort GLushort GLbyte GLbyte GLbyte GLbyte GLdouble GLdouble GLdouble GLdouble GLfloat GLfloat GLfloat GLfloat GLint GLint GLint GLint GLshort GLshort GLshort GLshort GLubyte GLubyte GLubyte GLubyte GLuint GLuint GLuint GLuint GLushort GLushort GLushort GLushort GLboolean const GLdouble const GLfloat const GLint const GLshort const GLbyte const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLdouble const GLfloat const GLfloat const GLint const GLint const GLshort const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort GLenum GLenum GLenum GLfloat GLenum GLint GLenum GLenum GLenum GLfloat GLenum GLenum GLint GLenum GLfloat GLenum GLint GLint GLushort GLenum GLenum GLfloat GLenum GLenum GLint GLfloat const GLubyte GLenum GLenum GLenum const GLfloat GLenum GLenum const GLint GLenum GLint GLint GLsizei GLsizei GLint GLenum GLenum const GLvoid GLenum GLenum const GLfloat GLenum GLenum const GLint GLenum GLenum const GLdouble GLenum GLenum const GLfloat GLenum GLenum const GLint GLsizei GLuint GLfloat GLuint GLbitfield GLfloat GLint GLuint GLboolean GLenum GLfloat GLenum GLbitfield GLenum GLfloat GLfloat GLint GLint const GLfloat GLenum GLfloat GLfloat GLint GLint GLfloat GLfloat GLint GLint const GLfloat GLint GLfloat GLfloat GLint GLfloat GLfloat GLint GLfloat GLfloat const GLdouble const GLfloat const GLdouble const GLfloat GLint i
BOOLEAN NTAPI HalAllProcessorsStarted(VOID)
VOID NTAPI HalReportResourceUsage(VOID)
#define KeGetCurrentThread
BOOLEAN NTAPI HalInitSystem(IN ULONG BootPhase, IN PLOADER_PARAMETER_BLOCK LoaderBlock)
VOID NTAPI HeadlessInit(IN PLOADER_PARAMETER_BLOCK LoaderBlock)
#define VER_PRODUCTBETA_STR
VOID NTAPI InbvNotifyDisplayOwnershipLost(_In_ INBV_RESET_DISPLAY_PARAMETERS Callback)
BOOLEAN InbvBootDriverInstalled
VOID NTAPI InbvEnableBootDriver(_In_ BOOLEAN Enable)
VOID NTAPI InbvSetProgressBarSubset(_In_ ULONG Floor, _In_ ULONG Ceiling)
Specifies a progress percentage sub-range. Further calls to InbvIndicateProgress() or InbvUpdateProgr...
BOOLEAN NTAPI InbvEnableDisplayString(_In_ BOOLEAN Enable)
BOOLEAN NTAPI InbvDisplayString(_In_ PCHAR String)
BOOLEAN NTAPI InbvDriverInitialize(_In_ PLOADER_PARAMETER_BLOCK LoaderBlock, _In_ ULONG Count)
VOID NTAPI InbvUpdateProgressBar(_In_ ULONG Percentage)
Updates the progress bar percentage, relative to the current percentage sub-range previously set by I...
_Check_return_ long __cdecl atol(_In_z_ const char *_Str)
#define FLG_KERNEL_STACK_TRACE_DB
#define FLG_ENABLE_EXCEPTION_LOGGING
#define FLG_ENABLE_CLOSE_EXCEPTIONS
#define FLG_ENABLE_KDEBUG_SYMBOL_LOAD
#define OBJ_CASE_INSENSITIVE
void __cdecl _enable(void)
VOID ExpInitLookasideLists()
BOOLEAN NTAPI KdInitSystem(_In_ ULONG BootPhase, _In_opt_ PLOADER_PARAMETER_BLOCK LoaderBlock)
BOOLEAN KdBreakAfterSymbolLoad
NTSTATUS NTAPI KdDebuggerInitialize1(IN PLOADER_PARAMETER_BLOCK LoaderBlock OPTIONAL)
PLOADER_PARAMETER_BLOCK KeLoaderBlock
VOID NTAPI ExInitPoolLookasidePointers(VOID)
BOOLEAN NTAPI LpcInitSystem(VOID)
#define ExFreePoolWithTag(_P, _T)
int _snwprintf(wchar_t *buffer, size_t count, const wchar_t *format,...)
PVOID PVOID PWCHAR PVOID Environment
#define sprintf(buf, format,...)
#define InitializeObjectAttributes(p, n, a, r, s)
static PTIME_FIELDS TimeFields
BOOLEAN NTAPI ExpInitializeMutantImplementation(VOID)
_Must_inspect_result_ _Out_ PNDIS_STATUS _In_ NDIS_HANDLE _In_ ULONG _Out_ PNDIS_STRING _Out_ PNDIS_HANDLE KeyHandle
_In_ ACCESS_MASK _In_ POBJECT_ATTRIBUTES _Reserved_ ULONG _In_opt_ PUNICODE_STRING _In_ ULONG _Out_opt_ PULONG Disposition
NTSYSAPI NTSTATUS NTAPI ZwDisplayString(_In_ PUNICODE_STRING DisplayString)
#define DBG_STATUS_CONTROL_C
NTSYSAPI NTSTATUS NTAPI ZwSetSystemTime(_In_ PLARGE_INTEGER SystemTime, _In_opt_ PLARGE_INTEGER NewSystemTime)
_In_ HANDLE _Outptr_result_bytebuffer_ ViewSize PVOID _In_ ULONG_PTR _In_ SIZE_T _Inout_opt_ PLARGE_INTEGER SectionOffset
_In_ HANDLE _Outptr_result_bytebuffer_ ViewSize PVOID _In_ ULONG_PTR _In_ SIZE_T _Inout_opt_ PLARGE_INTEGER _Inout_ PSIZE_T ViewSize
NTSYSAPI NTSTATUS NTAPI ZwClose(_In_ HANDLE Handle)
NTSYSAPI NTSTATUS NTAPI ZwResumeThread(_In_ HANDLE ThreadHandle, _Out_opt_ PULONG SuspendCount)
NTSYSAPI VOID NTAPI RtlInitNlsTables(_In_ PUSHORT AnsiTableBase, _In_ PUSHORT OemTableBase, _In_ PUSHORT CaseTableBase, _Out_ PNLSTABLEINFO NlsTable)
NTSYSAPI VOID NTAPI RtlResetRtlTranslations(_In_ PNLSTABLEINFO NlsTable)
NTSYSAPI NTSTATUS NTAPI RtlCreateUserProcess(_In_ PUNICODE_STRING ImageFileName, _In_ ULONG Attributes, _In_ PRTL_USER_PROCESS_PARAMETERS ProcessParameters, _In_opt_ PSECURITY_DESCRIPTOR ProcessSecutityDescriptor, _In_opt_ PSECURITY_DESCRIPTOR ThreadSecurityDescriptor, _In_opt_ HANDLE ParentProcess, _In_ BOOLEAN CurrentDirectory, _In_opt_ HANDLE DebugPort, _In_opt_ HANDLE ExceptionPort, _Out_ PRTL_USER_PROCESS_INFORMATION ProcessInfo)
NTSYSAPI BOOLEAN NTAPI RtlCreateUnicodeStringFromAsciiz(_Out_ PUNICODE_STRING Destination, _In_ PCSZ Source)
NTSYSAPI NTSTATUS NTAPI RtlFindMessage(_In_ PVOID BaseAddress, _In_ ULONG Type, _In_ ULONG Language, _In_ ULONG MessageId, _Out_ PMESSAGE_RESOURCE_ENTRY *MessageResourceEntry)
NTSYSAPI PRTL_USER_PROCESS_PARAMETERS NTAPI RtlDeNormalizeProcessParams(_In_ PRTL_USER_PROCESS_PARAMETERS ProcessParameters)
VOID NTAPI DbgLoadImageSymbols(_In_ PSTRING Name, _In_ PVOID Base, _In_ ULONG_PTR ProcessId)
#define RTL_USER_PROCESS_PARAMETERS_RESERVE_1MB
#define RTL_USER_PROCESS_PARAMETERS_NORMALIZED
NTSYSAPI VOID NTAPI RtlCopyUnicodeString(PUNICODE_STRING DestinationString, PUNICODE_STRING SourceString)
#define SYMBOLIC_LINK_ALL_ACCESS
NTSYSAPI NTSTATUS NTAPI NtSetValueKey(IN HANDLE KeyHandle, IN PUNICODE_STRING ValueName, IN ULONG TitleIndex OPTIONAL, IN ULONG Type, IN PVOID Data, IN ULONG DataSize)
@ KeyValuePartialInformation
NTSYSAPI NTSTATUS NTAPI RtlAppendUnicodeStringToString(PUNICODE_STRING Destination, PUNICODE_STRING Source)
NTSYSAPI VOID NTAPI RtlInitString(PSTRING DestinationString, PCSZ SourceString)
#define SECTION_ALL_ACCESS
NTSYSAPI NTSTATUS NTAPI RtlAnsiStringToUnicodeString(PUNICODE_STRING DestinationString, PANSI_STRING SourceString, BOOLEAN AllocateDestinationString)
NTSYSAPI VOID NTAPI RtlInitUnicodeString(PUNICODE_STRING DestinationString, PCWSTR SourceString)
#define NtCurrentProcess()
NTSYSAPI NTSTATUS NTAPI NtQueryValueKey(IN HANDLE KeyHandle, IN PUNICODE_STRING ValueName, IN KEY_VALUE_INFORMATION_CLASS KeyValueInformationClass, IN PVOID KeyValueInformation, IN ULONG Length, IN PULONG ResultLength)
NTSTATUS NTAPI NtClose(IN HANDLE Handle)
NTSYSAPI VOID NTAPI RtlFreeUnicodeString(PUNICODE_STRING UnicodeString)
#define DIRECTORY_ALL_ACCESS
#define REG_OPTION_VOLATILE
NTSYSAPI VOID NTAPI RtlInitAnsiString(PANSI_STRING DestinationString, PCSZ SourceString)
#define Int32x32To64(a, b)
_In_ ULONG _In_ ULONG _In_ ULONG Length
BOOLEAN NTAPI ExpInitializeCallbacks(VOID)
BOOLEAN NTAPI ExpInitializeEventImplementation(VOID)
VOID NTAPI ExpInitializeHandleTables(VOID)
ULONG ExpInitializationPhase
VOID NTAPI ExBurnMemory(IN PLOADER_PARAMETER_BLOCK LoaderBlock, IN ULONG_PTR PagesToDestroy, IN TYPE_OF_MEMORY MemoryType)
ULONG NTAPI ExComputeTickCountMultiplier(IN ULONG ClockIncrement)
BOOLEAN InitWinPEModeType
BOOLEAN IoRemoteBootClient
BOOLEAN NTAPI ExpInitSystemPhase0(VOID)
BOOLEAN ExCmosClockIsSane
UNICODE_STRING NtSystemRoot
NTSTATUS NTAPI ExpCreateSystemRootLink(IN PLOADER_PARAMETER_BLOCK LoaderBlock)
ULONG ExpOemCodePageDataOffset
NLSTABLEINFO ExpNlsTableInfo
struct _INIT_BUFFER INIT_BUFFER
BOOLEAN NTAPI ExpIsLoaderValid(IN PLOADER_PARAMETER_BLOCK LoaderBlock)
ULONG ExpUnicodeCaseTableDataOffset
WCHAR NtInitialUserProcessBuffer[128]
BOOLEAN NTAPI MmArmInitSystem(IN ULONG Phase, IN PLOADER_PARAMETER_BLOCK LoaderBlock)
struct _INIT_BUFFER * PINIT_BUFFER
#define LOADER_PARAMETER_EXTENSION_MIN_SIZE
VOID NTAPI MmFreeLoaderBlock(IN PLOADER_PARAMETER_BLOCK LoaderBlock)
UNICODE_STRING CmVersionString
PVOID ExpNlsSectionPointer
BOOLEAN NTAPI ExpInitSystemPhase1(VOID)
BOOLEAN ExpInTextModeSetup
ULONG NtInitialUserProcessBufferType
ULONG ExpAnsiCodePageDataOffset
VOID NTAPI ExpLoadInitialProcess(IN PINIT_BUFFER InitBuffer, OUT PRTL_USER_PROCESS_PARAMETERS *ProcessParameters, OUT PCHAR *ProcessEnvironment)
VOID NTAPI ExpLoadBootSymbols(IN PLOADER_PARAMETER_BLOCK LoaderBlock)
VOID NTAPI ExpInitNls(IN PLOADER_PARAMETER_BLOCK LoaderBlock)
VOID NTAPI ExpInitializeExecutive(IN ULONG Cpu, IN PLOADER_PARAMETER_BLOCK LoaderBlock)
VOID NTAPI Phase1Initialization(IN PVOID Context)
UNICODE_STRING CmCSDVersionString
VOID NTAPI Phase1InitializationDiscard(IN PVOID Context)
BOOLEAN NTAPI ExInitSystem(VOID)
BOOLEAN ExpRealTimeIsUniversal
ULONG NtInitialUserProcessBufferLength
BOOLEAN NTAPI ExpInitializeProfileImplementation(VOID)
VOID NTAPI ExpResourceInitialization(VOID)
LIST_ENTRY ExpFirmwareTableProviderListHead
FAST_MUTEX ExpEnvironmentLock
ERESOURCE ExpFirmwareTableResource
LARGE_INTEGER ExpTimeZoneBias
ERESOURCE ExpTimeRefreshLock
ULONG ExpTickCountMultiplier
ULONG ExpLastTimeZoneBias
BOOLEAN NTAPI ExRefreshTimeZoneInformation(IN PLARGE_INTEGER CurrentBootTime)
BOOLEAN NTAPI ExpInitializeTimerImplementation(VOID)
BOOLEAN NTAPI ExpUuidInitialization(VOID)
#define MM_HIGHEST_USER_ADDRESS_WOW64
#define MM_SYSTEM_RANGE_START_WOW64
#define MmSystemRangeStart
VOID NTAPI KeI386VdmInitialize(VOID)
BOOLEAN NTAPI IoInitSystem(IN PLOADER_PARAMETER_BLOCK LoaderBlock)
BOOLEAN NTAPI PpInitSystem(VOID)
VOID NTAPI KeSetSystemTime(IN PLARGE_INTEGER NewSystemTime, OUT PLARGE_INTEGER OldSystemTime, IN BOOLEAN FixInterruptTime, IN PLARGE_INTEGER HalTime)
VOID NTAPI KiInitializeBugCheck(VOID)
BOOLEAN NTAPI KeInitSystem(VOID)
VOID NTAPI KeStartAllProcessors(VOID)
PFN_COUNT MmNumberOfPhysicalPages
VOID NTAPI MmZeroPageThread(VOID)
BOOLEAN NTAPI MmInitSystem(IN ULONG Phase, IN PLOADER_PARAMETER_BLOCK LoaderBlock)
VOID NTAPI RtlInitializeRangeListPackage(VOID)
BOOLEAN NTAPI SeInitSystem(VOID)
Main security manager initialization function.
PSECURITY_DESCRIPTOR SePublicDefaultUnrestrictedSd
BOOLEAN NTAPI SeRmInitPhase1(VOID)
Manages the phase 1 initialization of the security reference monitoring module of the kernel.
#define IDB_MAX_RESOURCES
HANDLE NTAPI PsGetCurrentProcessId(VOID)
NTSTRSAFEVAPI RtlStringCbPrintfA(_Out_writes_bytes_(cbDest) _Always_(_Post_z_) NTSTRSAFE_PSTR pszDest, _In_ size_t cbDest, _In_ _Printf_format_string_ NTSTRSAFE_PCSTR pszFormat,...)
NTSTRSAFEAPI RtlStringCbCatExA(_Inout_updates_bytes_(cbDest) _Always_(_Post_z_) NTSTRSAFE_PSTR pszDest, _In_ size_t cbDest, _In_ NTSTRSAFE_PCSTR pszSrc, _Outptr_opt_result_bytebuffer_(*pcbRemaining) NTSTRSAFE_PSTR *ppszDestEnd, _Out_opt_ size_t *pcbRemaining, _In_ STRSAFE_DWORD dwFlags)
NTSTRSAFEVAPI RtlStringCbPrintfExA(_Out_writes_bytes_(cbDest) _Always_(_Post_z_) NTSTRSAFE_PSTR pszDest, _In_ size_t cbDest, _Outptr_opt_result_bytebuffer_(*pcbRemaining) NTSTRSAFE_PSTR *ppszDestEnd, _Out_opt_ size_t *pcbRemaining, _In_ STRSAFE_DWORD dwFlags, _In_ _Printf_format_string_ NTSTRSAFE_PCSTR pszFormat,...)
NTSTRSAFEAPI RtlStringCbCopyExA(_Out_writes_bytes_(cbDest) _Always_(_Post_z_) NTSTRSAFE_PSTR pszDest, _In_ size_t cbDest, _In_ NTSTRSAFE_PCSTR pszSrc, _Outptr_opt_result_bytebuffer_(*pcbRemaining) STRSAFE_LPSTR *ppszDestEnd, _Out_opt_ size_t *pcbRemaining, _In_ STRSAFE_DWORD dwFlags)
NTSTRSAFEAPI RtlStringCbCopyA(_Out_writes_bytes_(cbDest) _Always_(_Post_z_) NTSTRSAFE_PSTR pszDest, _In_ size_t cbDest, _In_ NTSTRSAFE_PCSTR pszSrc)
#define VER_PRODUCTMAJORVERSION
#define VER_PRODUCTBUILD_QFE
#define VER_PRODUCTMINORVERSION
BOOLEAN NTAPI ObInitSystem(VOID)
NTSTATUS NTAPI NtCreateDirectoryObject(OUT PHANDLE DirectoryHandle, IN ACCESS_MASK DesiredAccess, IN POBJECT_ATTRIBUTES ObjectAttributes)
NTSTATUS NTAPI ObCloseHandle(IN HANDLE Handle, IN KPROCESSOR_MODE AccessMode)
NTSTATUS NTAPI NtCreateSymbolicLinkObject(OUT PHANDLE LinkHandle, IN ACCESS_MASK DesiredAccess, IN POBJECT_ATTRIBUTES ObjectAttributes, IN PUNICODE_STRING LinkTarget)
NTSTATUS NTAPI ObReferenceObjectByHandle(IN HANDLE Handle, IN ACCESS_MASK DesiredAccess, IN POBJECT_TYPE ObjectType, IN KPROCESSOR_MODE AccessMode, OUT PVOID *Object, OUT POBJECT_HANDLE_INFORMATION HandleInformation OPTIONAL)
BOOLEAN NTAPI PoInitSystem(IN ULONG BootPhase)
VOID NTAPI PoNotifySystemTimeSet(VOID)
KSERVICE_TABLE_DESCRIPTOR KeServiceDescriptorTable[SSDT_MAX_ENTRIES]
KSERVICE_TABLE_DESCRIPTOR KeServiceDescriptorTableShadow[SSDT_MAX_ENTRIES]
BOOLEAN NTAPI PsInitSystem(IN PLOADER_PARAMETER_BLOCK LoaderBlock)
VOID NTAPI ExpInitializePushLocks(VOID)
BOOLEAN NTAPI HalQueryRealTimeClock(IN PTIME_FIELDS Time)
VOID NTAPI KeBugCheckEx(_In_ ULONG BugCheckCode, _In_ ULONG_PTR BugCheckParameter1, _In_ ULONG_PTR BugCheckParameter2, _In_ ULONG_PTR BugCheckParameter3, _In_ ULONG_PTR BugCheckParameter4)
PVOID MmHighestUserAddress
_Check_return_ _CRTIMP int __cdecl _memicmp(_In_reads_bytes_opt_(_Size) const void *_Buf1, _In_reads_bytes_opt_(_Size) const void *_Buf2, _In_ size_t _Size)
_CRTIMP char *__cdecl _strupr(_Inout_z_ char *_String)
@ LoaderFirmwareTemporary
enum _TYPE_OF_MEMORY TYPE_OF_MEMORY
NTSTATUS NTAPI MmMapViewInSystemSpace(IN PVOID SectionObject, OUT PVOID *MappedBase, IN OUT PSIZE_T ViewSize)
NTSTATUS NTAPI MmMapViewOfSection(IN PVOID SectionObject, IN PEPROCESS Process, IN OUT PVOID *BaseAddress, IN ULONG_PTR ZeroBits, IN SIZE_T CommitSize, IN OUT PLARGE_INTEGER SectionOffset OPTIONAL, IN OUT PSIZE_T ViewSize, IN SECTION_INHERIT InheritDisposition, IN ULONG AllocationType, IN ULONG Protect)
POBJECT_TYPE MmSectionObjectType
BOOLEAN NTAPI ExpInitializeSemaphoreImplementation(VOID)
#define SETUPLDR_REMOTE_BOOT
#define SETUPLDR_TEXT_MODE
#define STATUS_BUFFER_OVERFLOW
RTL_USER_PROCESS_INFORMATION ProcessInfo
UNICODE_STRING FullDllName
UNICODE_STRING BaseDllName
struct _LIST_ENTRY * Blink
struct _LIST_ENTRY * Flink
LIST_ENTRY LoadOrderListHead
TYPE_OF_MEMORY MemoryType
UCHAR Text[ANYSIZE_ARRAY]
PVOID UnicodeCodePageData
UNICODE_STRING CommandLine
UNICODE_STRING ImagePathName
KPRIORITY NTAPI KeSetPriorityThread(IN PKTHREAD Thread, IN KPRIORITY Priority)
#define RTL_CONSTANT_STRING(s)
#define RtlCopyMemory(Destination, Source, Length)
#define RtlZeroMemory(Destination, Length)
#define CONTAINING_RECORD(address, type, field)
#define STATUS_INVALID_PARAMETER
__analysis_noreturn NTSYSAPI VOID NTAPI DbgBreakPointWithStatus(_In_ ULONG Status)
_Must_inspect_result_ _In_ WDFDEVICE _In_ PWDF_DEVICE_PROPERTY_DATA _In_ DEVPROPTYPE _In_ ULONG Size
_Must_inspect_result_ _In_ WDFDEVICE _In_ PCUNICODE_STRING KeyName
BOOLEAN NTAPI ExpWin32kInit(VOID)
VOID NTAPI ExpInitializeWorkerThreads(VOID)
FORCEINLINE VOID ExInitializeFastMutex(_Out_ PFAST_MUTEX FastMutex)
#define PsGetCurrentProcess
VOID NTAPI XIPInit(IN PLOADER_PARAMETER_BLOCK LoaderBlock)