Function at 0x180026560
Capabilities:
Link many functions at runtime

Disassembly:
sub rsp, 0x28
mov rcx, qword [0x1800d1a48]
lea rdx, str.NtCreateFile
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [0x1800d1a48]
lea rdx, str.NtOpenFile
mov qword [0x1800d1810], rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [0x1800d1a48]
lea rdx, str.NtClose
mov qword [0x1800d1818], rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [0x1800d1a48]
lea rdx, str.NtReadFile
mov qword [0x1800d1820], rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [0x1800d1a48]
lea rdx, str.NtWriteFile
mov qword [0x1800d1828], rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [0x1800d1a48]
lea rdx, str.NtQueryObject
mov qword [0x1800d1830], rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [0x1800d1a48]
lea rdx, str.NtQueryDirectoryFile
mov qword [0x1800d1838], rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [0x1800d1a48]
lea rdx, str.NtQueryDirectoryFileEx
mov qword [0x1800d1840], rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [0x1800d1a48]
lea rdx, str.NtQueryInformationFile
mov qword [0x1800d1848], rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [0x1800d1a48]
lea rdx, str.NtSetInformationFile
mov qword [0x1800d1850], rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [0x1800d1a48]
lea rdx, str.NtQuerySystemInformation
mov qword [0x1800d1858], rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [0x1800d1a48]
lea rdx, str.NtDeleteFile
mov qword [0x1800d1860], rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [0x1800d1a48]
lea rdx, str.NtQueryVolumeInformationFile
mov qword [0x1800d1868], rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [0x1800d1a48]
lea rdx, str.NtDuplicateObject
mov qword [0x1800d1870], rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [0x1800d1a48]
lea rdx, str.RtlInitializeCriticalSection
mov qword [0x1800d1878], rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [0x1800d1a48]
lea rdx, str.RtlDeleteCriticalSection
mov qword [0x1800d1880], rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [0x1800d1a48]
lea rdx, str.RtlEnterCriticalSection
mov qword [0x1800d1888], rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [0x1800d1a48]
lea rdx, str.RtlLeaveCriticalSection
mov qword [0x1800d1890], rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [0x1800d1a48]
lea rdx, str.RtlTryEnterCriticalSection
mov qword [0x1800d1898], rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [0x1800d1a48]
lea rdx, str.NtOpenDirectoryObject
mov qword [0x1800d18a0], rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
lea rdx, str.NtQueryDirectoryObject
mov qword [0x1800d18a8], rax
mov rcx, qword [0x1800d1a48]
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [0x1800d1a48]
lea rdx, str.NtOpenSymbolicLinkObject
mov qword [0x1800d18b0], rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [0x1800d1a48]
lea rdx, str.NtQuerySymbolicLinkObject
mov qword [0x1800d18b8], rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [0x1800d1a48]
lea rdx, str.NtCreateKey
mov qword [0x1800d18c0], rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [0x1800d1a48]
lea rdx, str.NtOpenKey
mov qword [0x1800d18c8], rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [0x1800d1a48]
lea rdx, str.NtQueryKey
mov qword [0x1800d18d0], rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [0x1800d1a48]
lea rdx, str.NtQueryValueKey
mov qword [0x1800d18d8], rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [0x1800d1a48]
lea rdx, str.NtQueryMultipleValueKey
mov qword [0x1800d18e0], rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [0x1800d1a48]
lea rdx, str.NtEnumerateKey
mov qword [0x1800d18e8], rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [0x1800d1a48]
lea rdx, str.NtEnumerateValueKey
mov qword [0x1800d18f0], rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [0x1800d1a48]
lea rdx, str.NtFlushKey
mov qword [0x1800d18f8], rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [0x1800d1a48]
lea rdx, str.NtDeleteKey
mov qword [0x1800d1900], rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [0x1800d1a48]
lea rdx, str.NtDeleteValueKey
mov qword [0x1800d1908], rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [0x1800d1a48]
lea rdx, str.NtSetInformationKey
mov qword [0x1800d1910], rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [0x1800d1a48]
lea rdx, str.NtSetValueKey
mov qword [0x1800d1918], rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [0x1800d1a48]
lea rdx, str.NtNotifyChangeKey
mov qword [0x1800d1920], rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [0x1800d1a48]
lea rdx, str.NtNotifyChangeMultipleKeys
mov qword [0x1800d1928], rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [0x1800d1a48]
lea rdx, str.NtCreateProcess
mov qword [0x1800d1930], rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [0x1800d1a48]
lea rdx, str.NtCreateProcessEx
mov qword [0x1800d1938], rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [0x1800d1a48]
lea rdx, str.NtOpenProcess
mov qword [0x1800d1940], rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [0x1800d1a48]
mov qword [0x1800d1948], rax
lea rdx, str.NtTerminateProcess
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [0x1800d1a48]
lea rdx, str.LdrShutdownProcess
mov qword [0x1800d1950], rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [0x1800d1a48]
lea rdx, str.NtQueryInformationProcess
mov qword [0x1800d1958], rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [0x1800d1a48]
lea rdx, str.NtSetInformationProcess
mov qword [0x1800d1960], rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [0x1800d1a48]
lea rdx, str.NtCreateThread
mov qword [0x1800d1968], rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [0x1800d1a48]
lea rdx, str.NtOpenThread
mov qword [0x1800d1970], rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [0x1800d1a48]
lea rdx, str.NtSuspendThread
mov qword [0x1800d1978], rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [0x1800d1a48]
lea rdx, str.NtResumeThread
mov qword [0x1800d1980], rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [0x1800d1a48]
lea rdx, str.NtTerminateThread
mov qword [0x1800d1988], rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [0x1800d1a48]
lea rdx, str.LdrShutdownThread
mov qword [0x1800d1990], rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [0x1800d1a48]
lea rdx, str.NtQueryInformationThread
mov qword [0x1800d1998], rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [0x1800d1a48]
lea rdx, str.NtSetInformationThread
mov qword [0x1800d19a0], rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [0x1800d1a48]
lea rdx, str.RtlInitUnicodeString
mov qword [0x1800d19a8], rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [0x1800d1a48]
lea rdx, str.RtlFreeUnicodeString
mov qword [0x1800d19b0], rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [0x1800d1a48]
lea rdx, str.RtlDosPathNameToNtPathName_U
mov qword [0x1800d19b8], rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [0x1800d1a48]
lea rdx, str.NtQueryAttributesFile
mov qword [0x1800d19c0], rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [0x1800d1a48]
lea rdx, str.NtQueryFullAttributesFile
mov qword [0x1800d19c8], rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [0x1800d1a48]
lea rdx, str.RtlConvertSidToUnicodeString
mov qword [0x1800d19d0], rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [0x1800d1a48]
lea rdx, str.RtlCreateSecurityDescriptor
mov qword [0x1800d19d8], rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [0x1800d1a48]
lea rdx, str.RtlSetDaclSecurityDescriptor
mov qword [0x1800d19e0], rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [0x1800d1a48]
lea rdx, str.RtlInitializeSid
mov qword [0x1800d19e8], rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [0x1800d1a48]
lea rdx, str.RtlSubAuthoritySid
mov qword [0x1800d19f0], rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [0x1800d1a48]
lea rdx, str.RtlCreateAcl
mov qword [0x1800d19f8], rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [0x1800d1a48]
lea rdx, str.RtlAddAccessAllowedAceEx
mov qword [0x1800d1a00], rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [0x1800d1a48]
lea rdx, str.RtlGetCurrentDirectory_U
mov qword [0x1800d1a08], rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [0x1800d1a48]
lea rdx, str.RtlSetCurrentDirectory_U
mov qword [0x1800d1a10], rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [0x1800d1a48]
lea rdx, str.RtlGetFullPathName_U
mov qword [0x1800d1a18], rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [0x1800d1a48]
lea rdx, str.RtlFormatCurrentUserKeyPath
mov qword [0x1800d1a20], rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [0x1800d1a48]
lea rdx, str.NtRenameKey
mov qword [0x1800d1a28], rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [0x1800d1a48]
lea rdx, str.NtCreateDirectoryObject
mov qword [0x1800d1a30], rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [0x1800d1a48]
lea rdx, str.NtCreateToken
mov qword [0x1800d1a38], rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x1800d1a40], rax
add rsp, 0x28
ret