Function at 0x100847f0
Capabilities:
Link many functions at runtime

Disassembly:
mov eax, dword [0x100b61d8]
push esi
mov esi, dword [sym.imp.KERNEL32.dll_GetProcAddress]
push str.NtCreateFile
push eax
call esi
mov ecx, dword [0x100b61d8]
push str.NtOpenFile
push ecx
mov dword [0x100b60bc], eax
call esi
mov edx, dword [0x100b61d8]
push str.NtClose
push edx
mov dword [0x100b60c0], eax
call esi
mov dword [0x100b60c4], eax
mov eax, dword [0x100b61d8]
push str.NtReadFile
push eax
call esi
mov ecx, dword [0x100b61d8]
push str.NtWriteFile
push ecx
mov dword [0x100b60c8], eax
call esi
mov edx, dword [0x100b61d8]
push str.NtQueryObject
push edx
mov dword [0x100b60cc], eax
call esi
mov dword [0x100b60d0], eax
mov eax, dword [0x100b61d8]
push str.NtQueryDirectoryFile
push eax
call esi
mov ecx, dword [0x100b61d8]
push str.NtQueryDirectoryFileEx
push ecx
mov dword [0x100b60d4], eax
call esi
mov edx, dword [0x100b61d8]
push str.NtQueryInformationFile
push edx
mov dword [0x100b60d8], eax
call esi
mov dword [0x100b60dc], eax
mov eax, dword [0x100b61d8]
push str.NtSetInformationFile
push eax
call esi
mov ecx, dword [0x100b61d8]
push str.NtQuerySystemInformation
push ecx
mov dword [0x100b60e0], eax
call esi
mov edx, dword [0x100b61d8]
push str.NtDeleteFile
push edx
mov dword [0x100b60e4], eax
call esi
mov dword [0x100b60e8], eax
mov eax, dword [0x100b61d8]
push str.NtQueryVolumeInformationFile
push eax
call esi
mov ecx, dword [0x100b61d8]
push str.NtDuplicateObject
push ecx
mov dword [0x100b60ec], eax
call esi
mov edx, dword [0x100b61d8]
push str.RtlInitializeCriticalSection
push edx
mov dword [0x100b60f0], eax
call esi
mov dword [0x100b60f4], eax
mov eax, dword [0x100b61d8]
push str.RtlDeleteCriticalSection
push eax
call esi
mov ecx, dword [0x100b61d8]
push str.RtlEnterCriticalSection
push ecx
mov dword [0x100b60f8], eax
call esi
mov edx, dword [0x100b61d8]
push str.RtlLeaveCriticalSection
push edx
mov dword [0x100b60fc], eax
call esi
mov dword [0x100b6100], eax
mov eax, dword [0x100b61d8]
push str.RtlTryEnterCriticalSection
push eax
call esi
mov ecx, dword [0x100b61d8]
push str.NtOpenDirectoryObject
push ecx
mov dword [0x100b6104], eax
call esi
mov edx, dword [0x100b61d8]
push str.NtQueryDirectoryObject
push edx
mov dword [0x100b6108], eax
call esi
mov dword [0x100b610c], eax
mov eax, dword [0x100b61d8]
push str.NtOpenSymbolicLinkObject
push eax
call esi
mov ecx, dword [0x100b61d8]
push str.NtQuerySymbolicLinkObject
push ecx
mov dword [0x100b6110], eax
call esi
mov edx, dword [0x100b61d8]
push str.NtCreateKey
push edx
mov dword [0x100b6114], eax
call esi
mov dword [0x100b6118], eax
mov eax, dword [0x100b61d8]
push str.NtOpenKey
push eax
call esi
mov ecx, dword [0x100b61d8]
push str.NtQueryKey
push ecx
mov dword [0x100b611c], eax
call esi
mov edx, dword [0x100b61d8]
push str.NtQueryValueKey
push edx
mov dword [0x100b6120], eax
call esi
mov dword [0x100b6124], eax
mov eax, dword [0x100b61d8]
push str.NtQueryMultipleValueKey
push eax
call esi
mov ecx, dword [0x100b61d8]
push str.NtEnumerateKey
push ecx
mov dword [0x100b6128], eax
call esi
mov edx, dword [0x100b61d8]
push str.NtEnumerateValueKey
push edx
mov dword [0x100b612c], eax
call esi
mov dword [0x100b6130], eax
mov eax, dword [0x100b61d8]
push str.NtFlushKey
push eax
call esi
mov ecx, dword [0x100b61d8]
push str.NtDeleteKey
push ecx
mov dword [0x100b6134], eax
call esi
mov dword [0x100b6138], eax
mov edx, dword [0x100b61d8]
push str.NtDeleteValueKey
push edx
call esi
mov dword [0x100b613c], eax
mov eax, dword [0x100b61d8]
push str.NtSetInformationKey
push eax
call esi
mov ecx, dword [0x100b61d8]
push str.NtSetValueKey
push ecx
mov dword [0x100b6140], eax
call esi
mov edx, dword [0x100b61d8]
push str.NtNotifyChangeKey
push edx
mov dword [0x100b6144], eax
call esi
mov dword [0x100b6148], eax
mov eax, dword [0x100b61d8]
push str.NtNotifyChangeMultipleKeys
push eax
call esi
mov ecx, dword [0x100b61d8]
push str.NtCreateProcess
push ecx
mov dword [0x100b614c], eax
call esi
mov edx, dword [0x100b61d8]
push str.NtCreateProcessEx
push edx
mov dword [0x100b6150], eax
call esi
mov dword [0x100b6154], eax
mov eax, dword [0x100b61d8]
push str.NtOpenProcess
push eax
call esi
mov ecx, dword [0x100b61d8]
push str.NtTerminateProcess
push ecx
mov dword [0x100b6158], eax
call esi
mov edx, dword [0x100b61d8]
push str.LdrShutdownProcess
push edx
mov dword [0x100b615c], eax
call esi
mov dword [0x100b6160], eax
mov eax, dword [0x100b61d8]
push str.NtQueryInformationProcess
push eax
call esi
mov ecx, dword [0x100b61d8]
push str.NtSetInformationProcess
push ecx
mov dword [0x100b6164], eax
call esi
mov edx, dword [0x100b61d8]
push str.NtCreateThread
push edx
mov dword [0x100b6168], eax
call esi
mov dword [0x100b616c], eax
mov eax, dword [0x100b61d8]
push str.NtOpenThread
push eax
call esi
mov ecx, dword [0x100b61d8]
push str.NtSuspendThread
push ecx
mov dword [0x100b6170], eax
call esi
mov edx, dword [0x100b61d8]
push str.NtResumeThread
push edx
mov dword [0x100b6174], eax
call esi
mov dword [0x100b6178], eax
push str.NtTerminateThread
mov eax, dword [0x100b61d8]
push eax
call esi
mov ecx, dword [0x100b61d8]
push str.LdrShutdownThread
push ecx
mov dword [0x100b617c], eax
call esi
mov edx, dword [0x100b61d8]
push str.NtQueryInformationThread
push edx
mov dword [0x100b6180], eax
call esi
mov dword [0x100b6184], eax
mov eax, dword [0x100b61d8]
push str.NtSetInformationThread
push eax
call esi
mov ecx, dword [0x100b61d8]
push str.RtlInitUnicodeString
push ecx
mov dword [0x100b6188], eax
call esi
mov edx, dword [0x100b61d8]
push str.RtlFreeUnicodeString
push edx
mov dword [0x100b618c], eax
call esi
mov dword [0x100b6190], eax
mov eax, dword [0x100b61d8]
push str.RtlDosPathNameToNtPathName_U
push eax
call esi
mov ecx, dword [0x100b61d8]
push str.NtQueryAttributesFile
push ecx
mov dword [0x100b6194], eax
call esi
mov edx, dword [0x100b61d8]
push str.NtQueryFullAttributesFile
push edx
mov dword [0x100b6198], eax
call esi
mov dword [0x100b619c], eax
mov eax, dword [0x100b61d8]
push str.RtlConvertSidToUnicodeString
push eax
call esi
mov ecx, dword [0x100b61d8]
push str.RtlCreateSecurityDescriptor
push ecx
mov dword [0x100b61a0], eax
call esi
mov edx, dword [0x100b61d8]
push str.RtlSetDaclSecurityDescriptor
push edx
mov dword [0x100b61a4], eax
call esi
mov dword [0x100b61a8], eax
mov eax, dword [0x100b61d8]
push str.RtlInitializeSid
push eax
call esi
mov ecx, dword [0x100b61d8]
push str.RtlSubAuthoritySid
push ecx
mov dword [0x100b61ac], eax
call esi
mov edx, dword [0x100b61d8]
push str.RtlCreateAcl
push edx
mov dword [0x100b61b0], eax
call esi
mov dword [0x100b61b4], eax
mov eax, dword [0x100b61d8]
push str.RtlAddAccessAllowedAceEx
push eax
call esi
mov ecx, dword [0x100b61d8]
mov dword [0x100b61b8], eax
push str.RtlGetCurrentDirectory_U
push ecx
call esi
mov edx, dword [0x100b61d8]
push str.RtlSetCurrentDirectory_U
push edx
mov dword [0x100b61bc], eax
call esi
mov dword [0x100b61c0], eax
mov eax, dword [0x100b61d8]
push str.RtlGetFullPathName_U
push eax
call esi
mov ecx, dword [0x100b61d8]
push str.RtlFormatCurrentUserKeyPath
push ecx
mov dword [0x100b61c4], eax
call esi
mov edx, dword [0x100b61d8]
push str.NtRenameKey
push edx
mov dword [0x100b61c8], eax
call esi
mov dword [0x100b61cc], eax
mov eax, dword [0x100b61d8]
push str.NtCreateDirectoryObject
push eax
call esi
mov ecx, dword [0x100b61d8]
push str.NtCreateToken
push ecx
mov dword [0x100b61d0], eax
call esi
mov dword [0x100b61d4], eax
pop esi
ret