13 #include <reactos/buildno.h> 18 #define LOADER_PARAMETER_EXTENSION_MIN_SIZE \ 19 RTL_SIZEOF_THROUGH_FIELD(LOADER_PARAMETER_EXTENSION, AcpiTableSize) 63 REACTOS_COMPILER_NAME
"_" REACTOS_COMPILER_VERSION;
170 LoaderBlock->ArcBootDeviceName,
171 LoaderBlock->NtBootPathName);
220 ULONG NlsTablesEncountered = 0;
221 SIZE_T NlsTableSizes[3] = {0, 0, 0};
227 ListHead = &LoaderBlock->MemoryDescriptorListHead;
228 NextEntry = ListHead->
Flink;
229 while (NextEntry != ListHead)
244 NlsTablesEncountered++;
245 ASSERT(NlsTablesEncountered < 4);
259 if (NlsTablesEncountered == 1)
263 LoaderBlock->NlsData->AnsiCodePageData,
273 LoaderBlock->NlsData->AnsiCodePageData,
277 LoaderBlock->NlsData->OemCodePageData,
282 LoaderBlock->NlsData->UnicodeCodePageData,
303 Status = ZwCreateSection(&NlsSection,
402 ProcessInformation = &InitBuffer->ProcessInfo;
407 (
PVOID*)&ProcessParams,
416 sizeof(InitBuffer->DebugBuffer)/
sizeof(
WCHAR),
417 L"INIT: Unable to allocate Process Parameters. 0x%lx",
428 ProcessParams->MaximumLength = (
ULONG)
Size;
444 sizeof(InitBuffer->DebugBuffer)/
sizeof(
WCHAR),
445 L"INIT: Unable to allocate Process Environment. 0x%lx",
455 ProcessParams->Environment = EnvironmentPtr;
458 p = (
PWSTR)(ProcessParams + 1);
459 ProcessParams->CurrentDirectory.DosPath.Buffer =
p;
460 ProcessParams->CurrentDirectory.DosPath.MaximumLength =
MAX_WIN32_PATH *
468 p = (
PWSTR)((
PCHAR)ProcessParams->CurrentDirectory.DosPath.Buffer +
469 ProcessParams->CurrentDirectory.DosPath.MaximumLength);
470 ProcessParams->DllPath.Buffer =
p;
475 &ProcessParams->CurrentDirectory.DosPath);
480 ProcessParams->DllPath.MaximumLength);
481 ProcessParams->ImagePathName.Buffer =
p;
501 while ((*
p) && (*
p !=
L' '))
p++;
504 ProcessParams->ImagePathName.Length =
510 ProcessParams->ImagePathName.Length);
513 ProcessParams->ImagePathName.Buffer[ProcessParams->ImagePathName.Length /
517 p = (
PWSTR)((
PCHAR)ProcessParams->ImagePathName.Buffer +
518 ProcessParams->ImagePathName.MaximumLength);
519 ProcessParams->CommandLine.Buffer =
p;
528 ProcessParams->Environment,
554 SmssName = ProcessParams->ImagePathName;
569 sizeof(InitBuffer->DebugBuffer)/
sizeof(
WCHAR),
570 L"INIT: Unable to create Session Manager. 0x%lx",
585 sizeof(InitBuffer->DebugBuffer)/
sizeof(
WCHAR),
586 L"INIT: Unable to resume Session Manager. 0x%lx",
596 *ProcessParameters = ProcessParams;
597 *ProcessEnvironment = EnvironmentPtr;
605 ULONG MsRemainder = 0, MsIncrement;
606 ULONG IncrementRemainder;
610 MsIncrement = ClockIncrement / (10 * 1000);
613 IncrementRemainder = ClockIncrement - (MsIncrement * (10 * 1000));
614 for (
i= 0;
i < 24;
i++)
618 IncrementRemainder <<= 1;
621 if (IncrementRemainder >= (10 * 1000))
624 IncrementRemainder -= (10 * 1000);
630 return (MsIncrement << 24) | MsRemainder;
670 DPRINT1(
"Executive: Event initialization failed\n");
675 DPRINT1(
"Executive: Event Pair initialization failed\n");
682 DPRINT1(
"Executive: Mutant initialization failed\n");
689 DPRINT1(
"Executive: Callback initialization failed\n");
696 DPRINT1(
"Executive: Semaphore initialization failed\n");
703 DPRINT1(
"Executive: Timer initialization failed\n");
710 DPRINT1(
"Executive: Profile initialization failed\n");
717 DPRINT1(
"Executive: Uuid initialization failed\n");
724 DPRINT1(
"Executive: Keyed event initialization failed\n");
731 DPRINT1(
"Executive: Win32 initialization failed\n");
799 CHAR NameBuffer[256];
804 NextEntry = LoaderBlock->LoadOrderListHead.
Flink;
805 while (NextEntry != &LoaderBlock->LoadOrderListHead)
846 "%S\\System32\\Drivers\\%wZ",
866 NextEntry = NextEntry->
Flink;
880 DPRINT1(
"Burn RAM amount: %lu pages\n", PagesToDestroy);
883 for (ListEntry = LoaderBlock->MemoryDescriptorListHead.
Blink;
884 ListEntry != &LoaderBlock->MemoryDescriptorListHead;
885 ListEntry = ListEntry->
Blink)
897 if (MemDescriptor->
PageCount > PagesToDestroy)
900 MemDescriptor->
PageCount -= PagesToDestroy;
907 PagesToDestroy -= MemDescriptor->
PageCount;
910 if (PagesToDestroy == 0)
break;
926 PCHAR CommandLine, PerfMem;
931 size_t Remaining = 0;
933 CHAR VersionBuffer[65];
941 LoaderBlock->Extension->Size,
942 LoaderBlock->Extension->MajorVersion,
943 LoaderBlock->Extension->MinorVersion);
968 if (LoaderBlock->SetupLdrBlock)
989 CommandLine = LoaderBlock->LoadOptions;
994 PerfMem =
strstr(CommandLine,
"PERFMEM");
998 PerfMem =
strstr(PerfMem,
"=");
1002 PerfMemUsed =
atol(PerfMem + 1) * (1024 * 1024 /
PAGE_SIZE);
1006 DPRINT1(
"BBT performance mode not yet supported." 1007 "/PERFMEM option ignored.\n");
1013 PerfMem =
strstr(CommandLine,
"BURNMEMORY");
1017 PerfMem =
strstr(PerfMem,
"=");
1021 PerfMemUsed =
atol(PerfMem + 1) * (1024 * 1024 /
PAGE_SIZE);
1028 NlsData = LoaderBlock->NlsData;
1140 WINDOWS_NT_CSD_STRING,
1148 while ((CSDString.
Length > 0) &&
1208 Remaining =
sizeof(
Buffer);
1252 sizeof(VersionBuffer),
1269 DPRINT1(
"Kernel-mode stack trace support not yet present." 1270 "FLG_KERNEL_STACK_TRACE_DB flag ignored.\n");
1277 DPRINT1(
"Kernel-mode exception logging support not yet present." 1278 "FLG_ENABLE_EXCEPTION_LOGGING flag ignored.\n");
1384 NoGuiBoot = (CommandLine &&
strstr(CommandLine,
"NOGUIBOOT") !=
NULL);
1410 if (CommandLine &&
strstr(CommandLine,
"MININT") !=
NULL)
1510 Y2KHackRequired = CommandLine ?
strstr(CommandLine,
"YEAR") :
NULL;
1511 if (Y2KHackRequired) Y2KHackRequired =
strstr(Y2KHackRequired,
"=");
1512 if (Y2KHackRequired) YearHack =
atol(Y2KHackRequired + 1);
1522 UniversalBootTime = SystemBootTime;
1565 MpString =
"MultiProcessor Kernel\r\n";
1572 while ((TempString.
Length > 0) &&
1585 WINDOWS_NT_INFO_STRING_PLURAL :
1586 WINDOWS_NT_INFO_STRING,
1599 "%u System Processor [%Iu MB Memory] %Z\r\n",
1628 KeBugCheckEx(PHASE1_INITIALIZATION_FAILED, 0, 0, 3, 0);
1719 MessageCode = BOOTING_IN_SAFEMODE_MINIMAL;
1726 MessageCode = BOOTING_IN_SAFEMODE_NETWORK;
1733 MessageCode = BOOTING_IN_SAFEMODE_DSREPAIR;
1749 AlternateShell =
TRUE;
1771 if (
strstr(CommandLine,
"BOOTLOG"))
1816 L"\\REGISTRY\\MACHINE\\SYSTEM\\CURRENTCONTROLSET" 1817 L"\\CONTROL\\SAFEBOOT");
1835 sizeof(KeyPartialInfo),
1839 AlternateShell =
FALSE;
1850 Status = ZwCreateKey(&OptionHandle,
1896 L"\\REGISTRY\\MACHINE\\SYSTEM\\CURRENTCONTROLSET" 1917 Status = ZwCreateKey(&OptionHandle,
1942 #if defined(_M_IX86) 1982 DPRINT1(
"INIT: Session Manager terminated.\n");
2002 (
PVOID*)&ProcessParameters,
VOID NTAPI HalReportResourceUsage(VOID)
#define VER_PRODUCTMAJORVERSION
VOID NTAPI InbvSetProgressBarSubset(IN ULONG Floor, IN ULONG Ceiling)
#define VER_PRODUCTBETA_STR
VOID NTAPI XIPInit(IN PLOADER_PARAMETER_BLOCK LoaderBlock)
IN PUNICODE_STRING IN POBJECT_ATTRIBUTES ObjectAttributes
VOID NTAPI ExpInitNls(IN PLOADER_PARAMETER_BLOCK LoaderBlock)
VOID NTAPI InbvNotifyDisplayOwnershipLost(IN INBV_RESET_DISPLAY_PARAMETERS Callback)
PVOID PVOID PWCHAR PVOID Environment
NTSYSAPI VOID NTAPI RtlResetRtlTranslations(_In_ PNLSTABLEINFO NlsTable)
ERESOURCE ExpFirmwareTableResource
BOOLEAN NTAPI IoInitSystem(IN PLOADER_PARAMETER_BLOCK LoaderBlock)
_In_ ULONG _In_ ULONG _In_ ULONG Length
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,...)
UNICODE_STRING NtSystemRoot
NTSTATUS NTAPI NtCreateSymbolicLinkObject(OUT PHANDLE LinkHandle, IN ACCESS_MASK DesiredAccess, IN POBJECT_ATTRIBUTES ObjectAttributes, IN PUNICODE_STRING LinkTarget)
#define OBJ_CASE_INSENSITIVE
_Must_inspect_result_ _Out_ PNDIS_STATUS _In_ NDIS_HANDLE _In_ ULONG _Out_ PNDIS_STRING _Out_ PNDIS_HANDLE KeyHandle
NLSTABLEINFO ExpNlsTableInfo
BOOLEAN NTAPI HalQueryRealTimeClock(IN PTIME_FIELDS Time)
ACPI_SIZE strlen(const char *String)
IN BOOLEAN OUT PSTR Buffer
BOOLEAN NTAPI LpcInitSystem(VOID)
#define STATUS_INVALID_PARAMETER
BOOLEAN NTAPI PsInitSystem(IN PLOADER_PARAMETER_BLOCK LoaderBlock)
VOID NTAPI DisplayBootBitmap(IN BOOLEAN TextMode)
NTSYSAPI NTSTATUS NTAPI ZwClose(_In_ HANDLE Handle)
struct _LIST_ENTRY * Blink
BOOLEAN NTAPI PpInitSystem(VOID)
char * strstr(char *String1, char *String2)
BOOLEAN NTAPI InbvDisplayString(IN PCHAR String)
BOOLEAN NTAPI ExpInitSystemPhase0(VOID)
VOID NTAPI InbvEnableBootDriver(IN BOOLEAN Enable)
NTSTATUS NTAPI ExpCreateSystemRootLink(IN PLOADER_PARAMETER_BLOCK LoaderBlock)
_In_ CLIPOBJ _In_ BRUSHOBJ _In_ LONG x1
void __cdecl _enable(void)
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)
VOID NTAPI ExpInitializeExecutive(IN ULONG Cpu, IN PLOADER_PARAMETER_BLOCK LoaderBlock)
#define SETUPLDR_REMOTE_BOOT
FAST_MUTEX ExpEnvironmentLock
BOOLEAN NTAPI CcInitializeCacheManager(VOID)
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)
NTSTATUS ExInitializeResourceLite(PULONG res)
VOID NTAPI ExpLoadBootSymbols(IN PLOADER_PARAMETER_BLOCK LoaderBlock)
NTSYSAPI NTSTATUS NTAPI RtlFindMessage(_In_ PVOID BaseAddress, _In_ ULONG Type, _In_ ULONG Language, _In_ ULONG MessageId, _Out_ PMESSAGE_RESOURCE_ENTRY *MessageResourceEntry)
IN PVOID IN PVOID IN USHORT IN USHORT Size
BOOLEAN NTAPI ExpInitializeMutantImplementation(VOID)
BOOLEAN NTAPI ExpInitializeProfileImplementation(VOID)
#define VER_PRODUCTBUILD_QFE
BOOLEAN NTAPI CmInitSystem1(VOID)
NTSYSAPI NTSTATUS NTAPI ZwDisplayString(_In_ PUNICODE_STRING DisplayString)
#define FLG_ENABLE_EXCEPTION_LOGGING
BOOLEAN NTAPI MmArmInitSystem(IN ULONG Phase, IN PLOADER_PARAMETER_BLOCK LoaderBlock)
#define SYMBOLIC_LINK_ALL_ACCESS
_In_ ACCESS_MASK _In_ POBJECT_ATTRIBUTES _Reserved_ ULONG _In_opt_ PUNICODE_STRING _In_ ULONG _Out_opt_ PULONG Disposition
VOID NTAPI Phase1Initialization(IN PVOID Context)
NTSYSAPI VOID NTAPI RtlCopyUnicodeString(PUNICODE_STRING DestinationString, PUNICODE_STRING SourceString)
enum _TYPE_OF_MEMORY TYPE_OF_MEMORY
NTSYSAPI VOID NTAPI RtlInitAnsiString(PANSI_STRING DestinationString, PCSZ SourceString)
NTSTRSAFEAPI RtlStringCbCopyA(_Out_writes_bytes_(cbDest) _Always_(_Post_z_) NTSTRSAFE_PSTR pszDest, _In_ size_t cbDest, _In_ NTSTRSAFE_PCSTR pszSrc)
#define sprintf(buf, format,...)
TYPE_OF_MEMORY MemoryType
#define SECTION_ALL_ACCESS
VOID NTAPI MmZeroPageThread(VOID)
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)
NTSTATUS(* NTAPI)(IN PFILE_FULL_EA_INFORMATION EaBuffer, IN ULONG EaLength, OUT PULONG ErrorOffset)
VOID NTAPI InbvUpdateProgressBar(IN ULONG Progress)
DECLSPEC_NORETURN VOID NTAPI KeBugCheck(ULONG BugCheckCode)
LARGE_INTEGER ExpTimeZoneBias
RTL_USER_PROCESS_INFORMATION ProcessInfo
NTSTATUS NTAPI KdDebuggerInitialize1(IN PLOADER_PARAMETER_BLOCK LoaderBlock OPTIONAL)
BOOLEAN NTAPI InbvDriverInitialize(IN PLOADER_PARAMETER_BLOCK LoaderBlock, IN ULONG Count)
VOID NTAPI KiInitializeBugCheck(VOID)
_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)
#define PsGetCurrentProcess
BOOLEAN NTAPI ExpUuidInitialization(VOID)
_In_z_ PCHAR TargetString
KSERVICE_TABLE_DESCRIPTOR KeServiceDescriptorTableShadow[SSDT_MAX_ENTRIES]
int _snwprintf(wchar_t *buffer, size_t count, const wchar_t *format,...)
BOOLEAN NTAPI ExpInitSystemPhase1(VOID)
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)
VOID NTAPI DbgkInitialize(VOID)
NTSYSAPI BOOLEAN NTAPI RtlCreateUnicodeStringFromAsciiz(_Out_ PUNICODE_STRING Destination, _In_ PCSZ Source)
struct _INIT_BUFFER * PINIT_BUFFER
BOOLEAN NTAPI ExpWin32kInit(VOID)
VOID NTAPI ExpInitializeWorkerThreads(VOID)
VOID NTAPI PoNotifySystemTimeSet(VOID)
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)
BOOLEAN ExCmosClockIsSane
_Must_inspect_result_ _In_ WDFDEVICE _In_ PCUNICODE_STRING KeyName
PLOADER_PARAMETER_BLOCK KeLoaderBlock
PFLT_MESSAGE_WAITER_QUEUE CONTAINING_RECORD(Csq, DEVICE_EXTENSION, IrpQueue)) -> WaiterQ.mLock) _IRQL_raises_(DISPATCH_LEVEL) VOID NTAPI FltpAcquireMessageWaiterLock(_In_ PIO_CSQ Csq, _Out_ PKIRQL Irql)
NTSTRSAFEVAPI RtlStringCbPrintfA(_Out_writes_bytes_(cbDest) _Always_(_Post_z_) NTSTRSAFE_PSTR pszDest, _In_ size_t cbDest, _In_ _Printf_format_string_ NTSTRSAFE_PCSTR pszFormat,...)
_In_ HANDLE _Outptr_result_bytebuffer_ ViewSize PVOID _In_ ULONG_PTR _In_ SIZE_T _Inout_opt_ PLARGE_INTEGER SectionOffset
#define NtCurrentProcess()
NTSTATUS RtlAppendUnicodeToString(IN PUNICODE_STRING Str1, IN PWSTR Str2)
struct _LIST_ENTRY * Flink
NTSYSAPI VOID NTAPI RtlInitNlsTables(_In_ PUSHORT AnsiTableBase, _In_ PUSHORT OemTableBase, _In_ PUSHORT CaseTableBase, _Out_ PNLSTABLEINFO NlsTable)
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)
VOID NTAPI RtlInitializeRangeListPackage(VOID)
BOOLEAN NTAPI ExpInitializeKeyedEventImplementation(VOID)
UCHAR Text[ANYSIZE_ARRAY]
#define RTL_USER_PROCESS_PARAMETERS_RESERVE_1MB
BOOLEAN ExpRealTimeIsUniversal
VOID NTAPI ExpInitializeHandleTables(VOID)
#define NT_SUCCESS(StatCode)
VOID NTAPI MmFreeLoaderBlock(IN PLOADER_PARAMETER_BLOCK LoaderBlock)
BOOLEAN NTAPI MmInitSystem(IN ULONG Phase, IN PLOADER_PARAMETER_BLOCK LoaderBlock)
FORCEINLINE VOID ExInitializeFastMutex(_Out_ PFAST_MUTEX FastMutex)
PVOID ExpNlsSectionPointer
struct _INIT_BUFFER INIT_BUFFER
int strncmp(const char *String1, const char *String2, ACPI_SIZE Count)
WCHAR NtInitialUserProcessBuffer[128]
#define FLG_ENABLE_CLOSE_EXCEPTIONS
NTSYSAPI VOID NTAPI RtlFreeUnicodeString(PUNICODE_STRING UnicodeString)
NTSYSAPI NTSTATUS NTAPI ZwResumeThread(_In_ HANDLE ThreadHandle, _Out_opt_ PULONG SuspendCount)
POBJECT_TYPE MmSectionObjectType
BOOLEAN NTAPI HalAllProcessorsStarted(VOID)
_Check_return_ long __cdecl atol(_In_z_ const char *_Str)
CM_SYSTEM_CONTROL_VECTOR CmControlVector[]
VOID NTAPI ExpResourceInitialization(VOID)
NTSTATUS NTAPI NtClose(IN HANDLE Handle)
VOID NTAPI FinalizeBootLogo(VOID)
BOOLEAN NTAPI ObInitSystem(VOID)
#define ExAllocatePoolWithTag(hernya, size, tag)
NTSTATUS NTAPI MmMapViewInSystemSpace(IN PVOID SectionObject, OUT PVOID *MappedBase, IN OUT PSIZE_T ViewSize)
VOID ExpInitLookasideLists()
NTSTATUS NTAPI ObCloseHandle(IN HANDLE Handle, IN KPROCESSOR_MODE AccessMode)
PVOID MmHighestUserAddress
ULONG ExpUnicodeCaseTableDataOffset
ULONG NtInitialUserProcessBufferType
UNICODE_STRING CmCSDVersionString
VOID NTAPI ExBurnMemory(IN PLOADER_PARAMETER_BLOCK LoaderBlock, IN ULONG_PTR PagesToDestroy, IN TYPE_OF_MEMORY MemoryType)
ULONG ExpInitializationPhase
UNICODE_STRING CmVersionString
BOOLEAN NTAPI ExpInitializeSemaphoreImplementation(VOID)
#define MM_SYSTEM_RANGE_START_WOW64
VOID NTAPI CcPfInitializePrefetcher(VOID)
LIST_ENTRY LoadOrderListHead
NTSYSAPI VOID NTAPI RtlInitString(PSTRING DestinationString, PCSZ SourceString)
ULONG ExpLastTimeZoneBias
BOOLEAN NTAPI InbvEnableDisplayString(IN BOOLEAN Enable)
ULONG ExpOemCodePageDataOffset
VOID NTAPI Phase1InitializationDiscard(IN PVOID Context)
NTSTATUS NTAPI NtCreateDirectoryObject(OUT PHANDLE DirectoryHandle, IN ACCESS_MASK DesiredAccess, IN POBJECT_ATTRIBUTES ObjectAttributes)
BOOLEAN ExpInTextModeSetup
BOOLEAN NTAPI ExpInitializeTimerImplementation(VOID)
_CRTIMP char *__cdecl _strupr(_Inout_z_ char *_String)
#define SETUPLDR_TEXT_MODE
#define STATUS_BUFFER_OVERFLOW
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 KdInitSystem(ULONG Reserved, PLOADER_PARAMETER_BLOCK LoaderBlock)
BOOLEAN NTAPI SeInitSystem(VOID)
KPRIORITY NTAPI KeSetPriorityThread(IN PKTHREAD Thread, IN KPRIORITY Priority)
#define ExLocalTimeToSystemTime(LocTime, SysTime)
NTSYSAPI NTSTATUS NTAPI RtlAnsiStringToUnicodeString(PUNICODE_STRING DestinationString, PANSI_STRING SourceString, BOOLEAN AllocateDestinationString)
#define InitializeListHead(ListHead)
#define DIRECTORY_ALL_ACCESS
VOID NTAPI ExInitPoolLookasidePointers(VOID)
NTSYSAPI NTSTATUS NTAPI RtlAppendUnicodeStringToString(PUNICODE_STRING Destination, PUNICODE_STRING Source)
UNICODE_STRING FullDllName
BOOLEAN NTAPI ExRefreshTimeZoneInformation(IN PLARGE_INTEGER CurrentBootTime)
UNICODE_STRING BaseDllName
VOID NTAPI ExpLoadInitialProcess(IN PINIT_BUFFER InitBuffer, OUT PRTL_USER_PROCESS_PARAMETERS *ProcessParameters, OUT PCHAR *ProcessEnvironment)
BOOLEAN NTAPI ExInitSystem(VOID)
HANDLE NTAPI PsGetCurrentProcessId(VOID)
VOID NTAPI CmGetSystemControlValues(IN PVOID SystemHiveData, IN PCM_SYSTEM_CONTROL_VECTOR ControlVector)
#define FLG_ENABLE_KDEBUG_SYMBOL_LOAD
LIST_ENTRY ExpFirmwareTableProviderListHead
NTSYSAPI NTSTATUS NTAPI NtSetValueKey(IN HANDLE KeyHandle, IN PUNICODE_STRING ValueName, IN ULONG TitleIndex OPTIONAL, IN ULONG Type, IN PVOID Data, IN ULONG DataSize)
ULONG MmNumberOfPhysicalPages
BOOLEAN KdBreakAfterSymbolLoad
BOOLEAN NTAPI PoInitSystem(IN ULONG BootPhase)
#define FLG_KERNEL_STACK_TRACE_DB
VOID NTAPI HeadlessInit(IN PLOADER_PARAMETER_BLOCK LoaderBlock)
VOID NTAPI DbgLoadImageSymbols(_In_ PSTRING Name, _In_ PVOID Base, _In_ ULONG_PTR ProcessId)
#define MM_HIGHEST_USER_ADDRESS_WOW64
NTSYSAPI PRTL_USER_PROCESS_PARAMETERS NTAPI RtlDeNormalizeProcessParams(_In_ PRTL_USER_PROCESS_PARAMETERS ProcessParameters)
BOOLEAN NTAPI ExpInitializeCallbacks(VOID)
ULONG NtInitialUserProcessBufferLength
#define DBG_STATUS_CONTROL_C
VOID NTAPI KeI386VdmInitialize(VOID)
struct tagContext Context
BOOLEAN NTAPI KeInitSystem(VOID)
KSERVICE_TABLE_DESCRIPTOR KeServiceDescriptorTable[SSDT_MAX_ENTRIES]
_In_ HANDLE _Outptr_result_bytebuffer_ ViewSize PVOID _In_ ULONG_PTR _In_ SIZE_T _Inout_opt_ PLARGE_INTEGER _Inout_ PSIZE_T ViewSize
ULONG ExpTickCountMultiplier
NTSYSAPI NTSTATUS NTAPI ZwSetSystemTime(_In_ PLARGE_INTEGER SystemTime, _In_opt_ PLARGE_INTEGER NewSystemTime)
NTSYSAPI VOID NTAPI RtlInitUnicodeString(PUNICODE_STRING DestinationString, PCWSTR SourceString)
#define RtlZeroMemory(Destination, Length)
#define ALIGN_UP_BY(size, align)
#define InitializeObjectAttributes(p, n, a, r, s)
#define RtlCopyMemory(Destination, Source, Length)
BOOLEAN NTAPI SeRmInitPhase1(VOID)
BOOLEAN NTAPI ExpInitializeEventImplementation(VOID)
#define RTL_USER_PROCESS_PARAMETERS_NORMALIZED
__analysis_noreturn NTSYSAPI VOID NTAPI DbgBreakPointWithStatus(_In_ ULONG Status)
VOID NTAPI ExpInitializePushLocks(VOID)
BOOLEAN NTAPI ExpInitializeEventPairImplementation(VOID)
#define REG_OPTION_VOLATILE
#define ExFreePoolWithTag(_P, _T)
VOID NTAPI KeSetSystemTime(IN PLARGE_INTEGER NewSystemTime, OUT PLARGE_INTEGER OldSystemTime, IN BOOLEAN FixInterruptTime, IN PLARGE_INTEGER HalTime)
BOOLEAN InbvBootDriverInstalled
#define KeGetCurrentThread
BOOLEAN RtlTimeFieldsToTime(IN PTIME_FIELDS TimeFields, IN PLARGE_INTEGER Time)
static PTIME_FIELDS TimeFields
#define VER_PRODUCTMINORVERSION
BOOLEAN InitWinPEModeType
BOOLEAN NTAPI HalInitSystem(IN ULONG BootPhase, IN PLOADER_PARAMETER_BLOCK LoaderBlock)
PVOID UnicodeCodePageData
BOOLEAN NTAPI ExpIsLoaderValid(IN PLOADER_PARAMETER_BLOCK LoaderBlock)
ULONG ExpAnsiCodePageDataOffset
_Inout_opt_ PUNICODE_STRING Extension
#define Int32x32To64(a, b)
VOID NTAPI KeBugCheckEx(_In_ ULONG BugCheckCode, _In_ ULONG_PTR BugCheckParameter1, _In_ ULONG_PTR BugCheckParameter2, _In_ ULONG_PTR BugCheckParameter3, _In_ ULONG_PTR BugCheckParameter4)
ULONG NTAPI ExComputeTickCountMultiplier(IN ULONG ClockIncrement)
PSECURITY_DESCRIPTOR SePublicDefaultUnrestrictedSd
BOOLEAN NTAPI FsRtlInitSystem(VOID)
BOOLEAN IoRemoteBootClient
#define RTL_CONSTANT_STRING(s)
#define LOADER_PARAMETER_EXTENSION_MIN_SIZE