13#include <reactos/buildno.h>
20#define LOADER_PARAMETER_EXTENSION_MIN_SIZE \
21 RTL_SIZEOF_THROUGH_FIELD(LOADER_PARAMETER_EXTENSION, AcpiTableSize)
69 REACTOS_COMPILER_NAME
"_" REACTOS_COMPILER_VERSION;
177 LoaderBlock->ArcBootDeviceName,
178 LoaderBlock->NtBootPathName);
227 ULONG NlsTablesEncountered = 0;
228 SIZE_T NlsTableSizes[3] = {0, 0, 0};
234 ListHead = &LoaderBlock->MemoryDescriptorListHead;
235 NextEntry = ListHead->
Flink;
236 while (NextEntry != ListHead)
251 NlsTablesEncountered++;
252 ASSERT(NlsTablesEncountered < 4);
266 if (NlsTablesEncountered == 1)
270 LoaderBlock->NlsData->AnsiCodePageData,
280 LoaderBlock->NlsData->AnsiCodePageData,
284 LoaderBlock->NlsData->OemCodePageData,
289 LoaderBlock->NlsData->UnicodeCodePageData,
310 Status = ZwCreateSection(&NlsSection,
409 ProcessInformation = &InitBuffer->ProcessInfo;
414 (
PVOID*)&ProcessParams,
423 sizeof(InitBuffer->DebugBuffer)/
sizeof(
WCHAR),
424 L"INIT: Unable to allocate Process Parameters. 0x%lx",
451 sizeof(InitBuffer->DebugBuffer)/
sizeof(
WCHAR),
452 L"INIT: Unable to allocate Process Environment. 0x%lx",
465 p = (
PWSTR)(ProcessParams + 1);
508 while ((*
p) && (*
p !=
L' '))
p++;
576 sizeof(InitBuffer->DebugBuffer)/
sizeof(
WCHAR),
577 L"INIT: Unable to create Session Manager. 0x%lx",
592 sizeof(InitBuffer->DebugBuffer)/
sizeof(
WCHAR),
593 L"INIT: Unable to resume Session Manager. 0x%lx",
603 *ProcessParameters = ProcessParams;
604 *ProcessEnvironment = EnvironmentPtr;
612 ULONG MsRemainder = 0, MsIncrement;
613 ULONG IncrementRemainder;
617 MsIncrement = ClockIncrement / (10 * 1000);
620 IncrementRemainder = ClockIncrement - (MsIncrement * (10 * 1000));
621 for (
i= 0;
i < 24;
i++)
625 IncrementRemainder <<= 1;
628 if (IncrementRemainder >= (10 * 1000))
631 IncrementRemainder -= (10 * 1000);
637 return (MsIncrement << 24) | MsRemainder;
678 DPRINT1(
"Executive: Event initialization failed\n");
683 DPRINT1(
"Executive: Event Pair initialization failed\n");
690 DPRINT1(
"Executive: Mutant initialization failed\n");
697 DPRINT1(
"Executive: Callback initialization failed\n");
704 DPRINT1(
"Executive: Semaphore initialization failed\n");
711 DPRINT1(
"Executive: Timer initialization failed\n");
718 DPRINT1(
"Executive: Profile initialization failed\n");
725 DPRINT1(
"Executive: Uuid initialization failed\n");
732 DPRINT1(
"Executive: Keyed event initialization failed\n");
739 DPRINT1(
"Executive: Win32 initialization failed\n");
809 CHAR NameBuffer[256];
812 for (NextEntry = LoaderBlock->LoadOrderListHead.
Flink,
i = 0;
813 NextEntry != &LoaderBlock->LoadOrderListHead;
814 NextEntry = NextEntry->
Flink, ++
i)
856 "%S\\System32\\Drivers\\%wZ",
873 if (!MmVerifyImageIsOkForMpUse(LdrEntry->
DllBase))
893 DPRINT1(
"Burn RAM amount: %lu pages\n", PagesToDestroy);
896 for (ListEntry = LoaderBlock->MemoryDescriptorListHead.
Blink;
897 ListEntry != &LoaderBlock->MemoryDescriptorListHead;
898 ListEntry = ListEntry->
Blink)
910 if (MemDescriptor->
PageCount > PagesToDestroy)
913 MemDescriptor->
PageCount -= PagesToDestroy;
920 PagesToDestroy -= MemDescriptor->
PageCount;
923 if (PagesToDestroy == 0)
break;
939 PCHAR CommandLine, PerfMem;
944 size_t Remaining = 0;
946 CHAR VersionBuffer[65];
954 LoaderBlock->Extension->Size,
955 LoaderBlock->Extension->MajorVersion,
956 LoaderBlock->Extension->MinorVersion);
981 if (LoaderBlock->SetupLdrBlock)
1002 CommandLine = LoaderBlock->LoadOptions;
1007 PerfMem =
strstr(CommandLine,
"PERFMEM");
1011 PerfMem =
strstr(PerfMem,
"=");
1015 PerfMemUsed =
atol(PerfMem + 1) * (1024 * 1024 /
PAGE_SIZE);
1019 DPRINT1(
"BBT performance mode not yet supported."
1020 "/PERFMEM option ignored.\n");
1026 PerfMem =
strstr(CommandLine,
"BURNMEMORY");
1030 PerfMem =
strstr(PerfMem,
"=");
1034 PerfMemUsed =
atol(PerfMem + 1) * (1024 * 1024 /
PAGE_SIZE);
1041 NlsData = LoaderBlock->NlsData;
1117 ExpLoadBootSymbols(LoaderBlock);
1154 WINDOWS_NT_CSD_STRING,
1162 while ((CSDString.
Length > 0) &&
1222 Remaining =
sizeof(
Buffer);
1266 sizeof(VersionBuffer),
1283 DPRINT1(
"Kernel-mode stack trace support not yet present."
1284 "FLG_KERNEL_STACK_TRACE_DB flag ignored.\n");
1291 DPRINT1(
"Kernel-mode exception logging support not yet present."
1292 "FLG_ENABLE_EXCEPTION_LOGGING flag ignored.\n");
1401 NoGuiBoot = (CommandLine &&
strstr(CommandLine,
"NOGUIBOOT") !=
NULL);
1427 if (CommandLine &&
strstr(CommandLine,
"MININT") !=
NULL)
1527 Y2KHackRequired = CommandLine ?
strstr(CommandLine,
"YEAR") :
NULL;
1528 if (Y2KHackRequired) Y2KHackRequired =
strstr(Y2KHackRequired,
"=");
1529 if (Y2KHackRequired) YearHack =
atol(Y2KHackRequired + 1);
1539 UniversalBootTime = SystemBootTime;
1586 Option =
strstr(CommandLine,
"NUMPROC");
1587 if (Option) Option =
strstr(Option,
"=");
1588 if (Option) KeNumprocSpecified =
atol(Option + 1);
1592 Option =
strstr(CommandLine,
"BOOTPROC");
1593 if (Option) Option =
strstr(Option,
"=");
1594 if (Option) KeBootprocSpecified =
atol(Option + 1);
1598 if (
strstr(CommandLine,
"MAXPROC"))
1611 MpString =
"MultiProcessor Kernel\r\n";
1618 while ((TempString.
Length > 0) &&
1631 WINDOWS_NT_INFO_STRING_PLURAL :
1632 WINDOWS_NT_INFO_STRING,
1645 "%u System Processor [%Iu MB Memory] %Z\r\n",
1674 KeBugCheckEx(PHASE1_INITIALIZATION_FAILED, 0, 0, 3, 0);
1769 MessageCode = BOOTING_IN_SAFEMODE_MINIMAL;
1776 MessageCode = BOOTING_IN_SAFEMODE_NETWORK;
1783 MessageCode = BOOTING_IN_SAFEMODE_DSREPAIR;
1799 AlternateShell =
TRUE;
1821 if (
strstr(CommandLine,
"BOOTLOG"))
1866 L"\\REGISTRY\\MACHINE\\SYSTEM\\CURRENTCONTROLSET"
1867 L"\\CONTROL\\SAFEBOOT");
1885 sizeof(KeyPartialInfo),
1889 AlternateShell =
FALSE;
1900 Status = ZwCreateKey(&OptionHandle,
1946 L"\\REGISTRY\\MACHINE\\SYSTEM\\CURRENTCONTROLSET"
1967 Status = ZwCreateKey(&OptionHandle,
2032 DPRINT1(
"INIT: Session Manager terminated.\n");
2052 (
PVOID*)&ProcessParameters,
#define ALIGN_UP_BY(size, align)
DECLSPEC_NORETURN VOID NTAPI KeBugCheckEx(IN ULONG BugCheckCode, IN ULONG_PTR BugCheckParameter1, IN ULONG_PTR BugCheckParameter2, IN ULONG_PTR BugCheckParameter3, IN ULONG_PTR BugCheckParameter4)
PVOID MmHighestUserAddress
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)
#define RTL_CONSTANT_STRING(s)
_ACRTIMP int __cdecl _snwprintf(wchar_t *, size_t, const wchar_t *,...)
_ACRTIMP int __cdecl _memicmp(const void *, const void *, size_t)
_ACRTIMP __msvcrt_long __cdecl atol(const char *)
_ACRTIMP size_t __cdecl strlen(const char *)
_ACRTIMP char *__cdecl strstr(const char *, const char *)
_ACRTIMP int __cdecl strncmp(const char *, const char *, size_t)
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)
#define MAXIMUM_PROCESSORS
NTSYSAPI NTSTATUS NTAPI ZwWaitForSingleObject(_In_ HANDLE Handle, _In_ BOOLEAN Alertable, _In_opt_ PLARGE_INTEGER Timeout)
_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 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...
BOOLEAN NTAPI InbvDisplayString(_In_ PCSTR String)
#define FLG_KERNEL_STACK_TRACE_DB
#define FLG_ENABLE_EXCEPTION_LOGGING
#define FLG_ENABLE_CLOSE_EXCEPTIONS
#define FLG_ENABLE_KDEBUG_SYMBOL_LOAD
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)
VOID NTAPI ExInitPoolLookasidePointers(VOID)
BOOLEAN NTAPI LpcInitSystem(VOID)
#define ExFreePoolWithTag(_P, _T)
PVOID PVOID PWCHAR PVOID Environment
#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)
FORCEINLINE VOID KiWriteSystemTime(_Out_ volatile KSYSTEM_TIME *SystemTime, _In_ LARGE_INTEGER NewTime)
_In_ HANDLE _Outptr_result_bytebuffer_ ViewSize _Pre_valid_ PVOID _In_ ULONG_PTR _In_ SIZE_T _Inout_opt_ PLARGE_INTEGER SectionOffset
_In_ HANDLE _Outptr_result_bytebuffer_ ViewSize _Pre_valid_ 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
NTSTATUS NTAPI RtlpInitializeLocaleTable(VOID)
Initializes the locale index table, that maps the LCIDs to their indexes in the alphabetical table,...
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 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)
NTSYSAPI PLOADER_PARAMETER_BLOCK KeLoaderBlock
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)
#define OBJ_CASE_INSENSITIVE
VOID NTAPI ExpInitializePushLocks(VOID)
BOOLEAN NTAPI HalQueryRealTimeClock(IN PTIME_FIELDS Time)
@ LoaderFirmwareTemporary
enum _TYPE_OF_MEMORY TYPE_OF_MEMORY
void __cdecl _enable(void)
#define KI_USER_SHARED_DATA
NTSTATUS NTAPI MmMapViewInSystemSpace(IN PVOID SectionObject, OUT PVOID *MappedBase, IN OUT PSIZE_T ViewSize)
POBJECT_TYPE MmSectionObjectType
NTSTATUS NTAPI MmMapViewOfSection(_In_ PVOID SectionObject, _In_ PEPROCESS Process, _Outptr_result_bytebuffer_(*ViewSize) _Pre_opt_valid_ PVOID *BaseAddress, _In_ ULONG_PTR ZeroBits, _In_ SIZE_T CommitSize, _Inout_opt_ PLARGE_INTEGER SectionOffset, _Inout_ PSIZE_T ViewSize, _In_range_(ViewShare, ViewUnmap) SECTION_INHERIT InheritDisposition, _In_ ULONG AllocationType, _In_ ULONG Protect)
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 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)