Function at 0x18002c1c0
Capabilities:
Link many functions at runtime

Disassembly:
sub rsp, 0x28
mov rcx, qword [0x1800e10c8]
lea rdx, str.NtCreateFile
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [0x1800e10c8]
lea rdx, str.NtOpenFile
mov qword [0x1800e0e90], rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [0x1800e10c8]
lea rdx, str.NtClose
mov qword [0x1800e0e98], rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [0x1800e10c8]
lea rdx, str.NtReadFile
mov qword [0x1800e0ea0], rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [0x1800e10c8]
lea rdx, str.NtWriteFile
mov qword [0x1800e0ea8], rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [0x1800e10c8]
lea rdx, str.NtQueryObject
mov qword [0x1800e0eb0], rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [0x1800e10c8]
lea rdx, str.NtQueryDirectoryFile
mov qword [0x1800e0eb8], rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [0x1800e10c8]
lea rdx, str.NtQueryDirectoryFileEx
mov qword [0x1800e0ec0], rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [0x1800e10c8]
lea rdx, str.NtQueryInformationFile
mov qword [0x1800e0ec8], rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [0x1800e10c8]
lea rdx, str.NtSetInformationFile
mov qword [0x1800e0ed0], rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [0x1800e10c8]
lea rdx, str.NtQuerySystemInformation
mov qword [0x1800e0ed8], rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [0x1800e10c8]
lea rdx, str.NtDeleteFile
mov qword [0x1800e0ee0], rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [0x1800e10c8]
lea rdx, str.NtQueryVolumeInformationFile
mov qword [0x1800e0ee8], rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [0x1800e10c8]
lea rdx, str.NtDuplicateObject
mov qword [0x1800e0ef0], rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [0x1800e10c8]
lea rdx, str.RtlInitializeCriticalSection
mov qword [0x1800e0ef8], rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [0x1800e10c8]
lea rdx, str.RtlDeleteCriticalSection
mov qword [0x1800e0f00], rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [0x1800e10c8]
lea rdx, str.RtlEnterCriticalSection
mov qword [0x1800e0f08], rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [0x1800e10c8]
lea rdx, str.RtlLeaveCriticalSection
mov qword [0x1800e0f10], rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [0x1800e10c8]
lea rdx, str.RtlTryEnterCriticalSection
mov qword [0x1800e0f18], rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [0x1800e10c8]
lea rdx, str.NtOpenDirectoryObject
mov qword [0x1800e0f20], rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
lea rdx, str.NtQueryDirectoryObject
mov qword [0x1800e0f28], rax
mov rcx, qword [0x1800e10c8]
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [0x1800e10c8]
lea rdx, str.NtOpenSymbolicLinkObject
mov qword [0x1800e0f30], rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [0x1800e10c8]
lea rdx, str.NtQuerySymbolicLinkObject
mov qword [0x1800e0f38], rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [0x1800e10c8]
lea rdx, str.NtCreateKey
mov qword [0x1800e0f40], rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [0x1800e10c8]
lea rdx, str.NtOpenKey
mov qword [0x1800e0f48], rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [0x1800e10c8]
lea rdx, str.NtQueryKey
mov qword [0x1800e0f50], rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [0x1800e10c8]
lea rdx, str.NtQueryValueKey
mov qword [0x1800e0f58], rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [0x1800e10c8]
lea rdx, str.NtQueryMultipleValueKey
mov qword [0x1800e0f60], rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [0x1800e10c8]
lea rdx, str.NtEnumerateKey
mov qword [0x1800e0f68], rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [0x1800e10c8]
lea rdx, str.NtEnumerateValueKey
mov qword [0x1800e0f70], rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [0x1800e10c8]
lea rdx, str.NtFlushKey
mov qword [0x1800e0f78], rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [0x1800e10c8]
lea rdx, str.NtDeleteKey
mov qword [0x1800e0f80], rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [0x1800e10c8]
lea rdx, str.NtDeleteValueKey
mov qword [0x1800e0f88], rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [0x1800e10c8]
lea rdx, str.NtSetInformationKey
mov qword [0x1800e0f90], rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [0x1800e10c8]
lea rdx, str.NtSetValueKey
mov qword [0x1800e0f98], rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [0x1800e10c8]
lea rdx, str.NtNotifyChangeKey
mov qword [0x1800e0fa0], rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [0x1800e10c8]
lea rdx, str.NtNotifyChangeMultipleKeys
mov qword [0x1800e0fa8], rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [0x1800e10c8]
lea rdx, str.NtCreateProcess
mov qword [0x1800e0fb0], rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [0x1800e10c8]
lea rdx, str.NtCreateProcessEx
mov qword [0x1800e0fb8], rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [0x1800e10c8]
lea rdx, str.NtOpenProcess
mov qword [0x1800e0fc0], rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [0x1800e10c8]
mov qword [0x1800e0fc8], rax
lea rdx, str.NtTerminateProcess
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [0x1800e10c8]
lea rdx, str.LdrShutdownProcess
mov qword [0x1800e0fd0], rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [0x1800e10c8]
lea rdx, str.NtQueryInformationProcess
mov qword [0x1800e0fd8], rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [0x1800e10c8]
lea rdx, str.NtSetInformationProcess
mov qword [0x1800e0fe0], rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [0x1800e10c8]
lea rdx, str.NtCreateThread
mov qword [0x1800e0fe8], rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [0x1800e10c8]
lea rdx, str.NtOpenThread
mov qword [0x1800e0ff0], rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [0x1800e10c8]
lea rdx, str.NtSuspendThread
mov qword [0x1800e0ff8], rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [0x1800e10c8]
lea rdx, str.NtResumeThread
mov qword [0x1800e1000], rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [0x1800e10c8]
lea rdx, str.NtTerminateThread
mov qword [0x1800e1008], rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [0x1800e10c8]
lea rdx, str.LdrShutdownThread
mov qword [0x1800e1010], rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [0x1800e10c8]
lea rdx, str.NtQueryInformationThread
mov qword [0x1800e1018], rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [0x1800e10c8]
lea rdx, str.NtSetInformationThread
mov qword [0x1800e1020], rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [0x1800e10c8]
lea rdx, str.RtlInitUnicodeString
mov qword [0x1800e1028], rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [0x1800e10c8]
lea rdx, str.RtlFreeUnicodeString
mov qword [0x1800e1030], rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [0x1800e10c8]
lea rdx, str.RtlDosPathNameToNtPathName_U
mov qword [0x1800e1038], rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [0x1800e10c8]
lea rdx, str.NtQueryAttributesFile
mov qword [0x1800e1040], rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [0x1800e10c8]
lea rdx, str.NtQueryFullAttributesFile
mov qword [0x1800e1048], rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [0x1800e10c8]
lea rdx, str.RtlConvertSidToUnicodeString
mov qword [0x1800e1050], rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [0x1800e10c8]
lea rdx, str.RtlCreateSecurityDescriptor
mov qword [0x1800e1058], rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [0x1800e10c8]
lea rdx, str.RtlSetDaclSecurityDescriptor
mov qword [0x1800e1060], rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [0x1800e10c8]
lea rdx, str.RtlInitializeSid
mov qword [0x1800e1068], rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [0x1800e10c8]
lea rdx, str.RtlSubAuthoritySid
mov qword [0x1800e1070], rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [0x1800e10c8]
lea rdx, str.RtlCreateAcl
mov qword [0x1800e1078], rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [0x1800e10c8]
lea rdx, str.RtlAddAccessAllowedAceEx
mov qword [0x1800e1080], rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [0x1800e10c8]
lea rdx, str.RtlGetCurrentDirectory_U
mov qword [0x1800e1088], rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [0x1800e10c8]
lea rdx, str.RtlSetCurrentDirectory_U
mov qword [0x1800e1090], rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [0x1800e10c8]
lea rdx, str.RtlGetFullPathName_U
mov qword [0x1800e1098], rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [0x1800e10c8]
lea rdx, str.RtlFormatCurrentUserKeyPath
mov qword [0x1800e10a0], rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [0x1800e10c8]
lea rdx, str.NtRenameKey
mov qword [0x1800e10a8], rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [0x1800e10c8]
lea rdx, str.NtCreateDirectoryObject
mov qword [0x1800e10b0], rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [0x1800e10c8]
lea rdx, str.NtCreateToken
mov qword [0x1800e10b8], rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x1800e10c0], rax
add rsp, 0x28
ret