43 ListHead = &LoaderBlock->MemoryDescriptorListHead;
44 NextEntry = ListHead->
Flink;
45 while (NextEntry != ListHead)
62 NextEntry = NextEntry->
Flink;
68 if (NextEntry == ListHead)
84 RamdiskCreate.
Version =
sizeof(RamdiskCreate);
89 RamdiskCreate.
DiskGuid = RAMDISK_BOOTDISK_GUID;
96 CommandLine = LoaderBlock->LoadOptions;
189 sizeof(RamdiskCreate),
226 L"\\Device\\Ramdisk%wZ",
IN PUNICODE_STRING IN POBJECT_ATTRIBUTES ObjectAttributes
NTSTATUS NTAPI IopStartRamdisk(IN PLOADER_PARAMETER_BLOCK LoaderBlock)
#define FSCTL_CREATE_RAM_DISK
NTSYSAPI NTSTATUS NTAPI ZwDeviceIoControlFile(IN HANDLE DeviceHandle, IN HANDLE Event OPTIONAL, IN PIO_APC_ROUTINE UserApcRoutine OPTIONAL, IN PVOID UserApcContext OPTIONAL, OUT PIO_STATUS_BLOCK IoStatusBlock, IN ULONG IoControlCode, IN PVOID InputBuffer, IN ULONG InputBufferSize, OUT PVOID OutputBuffer, IN ULONG OutputBufferSize)
_In_ ULONG _In_ ULONG _In_ ULONG Length
UNICODE_STRING NtSystemRoot
#define OBJ_CASE_INSENSITIVE
IN BOOLEAN OUT PSTR Buffer
__MINGW_EXTENSION _Check_return_ _CRTIMP __int64 __cdecl _atoi64(_In_z_ const char *_String)
#define STATUS_INVALID_PARAMETER
NTSYSAPI NTSTATUS NTAPI ZwClose(_In_ HANDLE Handle)
char * strstr(char *String1, char *String2)
#define RD_NO_RAMDISK_DRIVER
#define RD_NO_XIPROM_DESCRIPTOR
_Must_inspect_result_ _In_ WDFUSBDEVICE _In_opt_ WDFREQUEST _In_opt_ PWDF_REQUEST_SEND_OPTIONS _In_ PWDF_USB_CONTROL_SETUP_PACKET _In_opt_ PWDF_MEMORY_DESCRIPTOR MemoryDescriptor
#define RD_SYSROOT_INIT_FAILED
_In_ PVOID _Out_opt_ PULONG_PTR _Outptr_opt_ PCUNICODE_STRING * ObjectName
NTSTATUS NTAPI KeWaitForSingleObject(IN PVOID Object, IN KWAIT_REASON WaitReason, IN KPROCESSOR_MODE WaitMode, IN BOOLEAN Alertable, IN PLARGE_INTEGER Timeout OPTIONAL)
#define OBJ_KERNEL_HANDLE
#define sprintf(buf, format,...)
NTSTATUS(* NTAPI)(IN PFILE_FULL_EA_INFORMATION EaBuffer, IN ULONG EaLength, OUT PULONG ErrorOffset)
int _snwprintf(wchar_t *buffer, size_t count, const wchar_t *format,...)
static NDIS_HANDLE DriverHandle
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)
#define RAMDISK_BOOT_DISK
struct _LIST_ENTRY * Flink
NTSTATUS NTAPI IoCreateSymbolicLink(IN PUNICODE_STRING SymbolicLinkName, IN PUNICODE_STRING DeviceName)
#define NT_SUCCESS(StatCode)
#define RD_GUID_CONVERT_FAILED
NTSYSAPI VOID NTAPI RtlFreeUnicodeString(PUNICODE_STRING UnicodeString)
_Check_return_ long __cdecl atol(_In_z_ const char *_Str)
NTSYSAPI NTSTATUS NTAPI ZwOpenFile(_Out_ PHANDLE FileHandle, _In_ ACCESS_MASK DesiredAccess, _In_ POBJECT_ATTRIBUTES ObjectAttributes, _Out_ PIO_STATUS_BLOCK IoStatusBlock, _In_ ULONG ShareAccess, _In_ ULONG OpenOptions)
_Out_ _Inout_ POEM_STRING _In_ PCUNICODE_STRING SourceString
_In_ ULONG _In_ ULONG Offset
_CRTIMP char *__cdecl _strupr(_Inout_z_ char *_String)
NTSYSAPI NTSTATUS NTAPI RtlAnsiStringToUnicodeString(PUNICODE_STRING DestinationString, PANSI_STRING SourceString, BOOLEAN AllocateDestinationString)
KEVENT PiEnumerationFinished
NTSYSAPI NTSTATUS WINAPI RtlStringFromGUID(REFGUID, PUNICODE_STRING)
static OUT PIO_STATUS_BLOCK IoStatusBlock
#define FILE_SYNCHRONOUS_IO_NONALERT
#define RD_SYMLINK_CREATE_FAILED
NTSYSAPI VOID NTAPI RtlInitUnicodeString(PUNICODE_STRING DestinationString, PCWSTR SourceString)
#define RtlZeroMemory(Destination, Length)
#define InitializeObjectAttributes(p, n, a, r, s)
VOID NTAPI KeBugCheckEx(_In_ ULONG BugCheckCode, _In_ ULONG_PTR BugCheckParameter1, _In_ ULONG_PTR BugCheckParameter2, _In_ ULONG_PTR BugCheckParameter3, _In_ ULONG_PTR BugCheckParameter4)
_Must_inspect_result_ _In_ WDFDEVICE _In_ PCUNICODE_STRING SymbolicLinkName
#define RTL_CONSTANT_STRING(s)