Function at 0x59116100
Capabilities:
Link many functions at runtime

Disassembly:
mov eax, dword [0x591b3b94]
push esi
mov esi, dword [sym.imp.KERNEL32.dll_GetProcAddress]
push str.NtCreateFile
push eax
call esi
mov ecx, dword [0x591b3b94]
push str.NtOpenFile
push ecx
mov dword [0x591b3a78], eax
call esi
mov edx, dword [0x591b3b94]
push str.NtClose
push edx
mov dword [0x591b3a7c], eax
call esi
mov dword [0x591b3a80], eax
mov eax, dword [0x591b3b94]
push str.NtReadFile
push eax
call esi
mov ecx, dword [0x591b3b94]
push str.NtWriteFile
push ecx
mov dword [0x591b3a84], eax
call esi
mov edx, dword [0x591b3b94]
push str.NtQueryObject
push edx
mov dword [0x591b3a88], eax
call esi
mov dword [0x591b3a8c], eax
mov eax, dword [0x591b3b94]
push str.NtQueryDirectoryFile
push eax
call esi
mov ecx, dword [0x591b3b94]
push str.NtQueryDirectoryFileEx
push ecx
mov dword [0x591b3a90], eax
call esi
mov edx, dword [0x591b3b94]
push str.NtQueryInformationFile
push edx
mov dword [0x591b3a94], eax
call esi
mov dword [0x591b3a98], eax
mov eax, dword [0x591b3b94]
push str.NtSetInformationFile
push eax
call esi
mov ecx, dword [0x591b3b94]
push str.NtQuerySystemInformation
push ecx
mov dword [0x591b3a9c], eax
call esi
mov edx, dword [0x591b3b94]
push str.NtDeleteFile
push edx
mov dword [0x591b3aa0], eax
call esi
mov dword [0x591b3aa4], eax
mov eax, dword [0x591b3b94]
push str.NtQueryVolumeInformationFile
push eax
call esi
mov ecx, dword [0x591b3b94]
push str.NtDuplicateObject
push ecx
mov dword [0x591b3aa8], eax
call esi
mov edx, dword [0x591b3b94]
push str.RtlInitializeCriticalSection
push edx
mov dword [0x591b3aac], eax
call esi
mov dword [0x591b3ab0], eax
mov eax, dword [0x591b3b94]
push str.RtlDeleteCriticalSection
push eax
call esi
mov ecx, dword [0x591b3b94]
push str.RtlEnterCriticalSection
push ecx
mov dword [0x591b3ab4], eax
call esi
mov edx, dword [0x591b3b94]
push str.RtlLeaveCriticalSection
push edx
mov dword [0x591b3ab8], eax
call esi
mov dword [0x591b3abc], eax
mov eax, dword [0x591b3b94]
push str.RtlTryEnterCriticalSection
push eax
call esi
mov ecx, dword [0x591b3b94]
push str.NtOpenDirectoryObject
push ecx
mov dword [0x591b3ac0], eax
call esi
mov edx, dword [0x591b3b94]
push str.NtQueryDirectoryObject
push edx
mov dword [0x591b3ac4], eax
call esi
mov dword [0x591b3ac8], eax
mov eax, dword [0x591b3b94]
push str.NtOpenSymbolicLinkObject
push eax
call esi
mov ecx, dword [0x591b3b94]
push str.NtQuerySymbolicLinkObject
push ecx
mov dword [0x591b3acc], eax
call esi
mov edx, dword [0x591b3b94]
push str.NtCreateKey
push edx
mov dword [0x591b3ad0], eax
call esi
mov dword [0x591b3ad4], eax
mov eax, dword [0x591b3b94]
push str.NtOpenKey
push eax
call esi
mov ecx, dword [0x591b3b94]
push str.NtQueryKey
push ecx
mov dword [0x591b3ad8], eax
call esi
mov edx, dword [0x591b3b94]
push str.NtQueryValueKey
push edx
mov dword [0x591b3adc], eax
call esi
mov dword [0x591b3ae0], eax
mov eax, dword [0x591b3b94]
push str.NtQueryMultipleValueKey
push eax
call esi
mov ecx, dword [0x591b3b94]
push str.NtEnumerateKey
push ecx
mov dword [0x591b3ae4], eax
call esi
mov edx, dword [0x591b3b94]
push str.NtEnumerateValueKey
push edx
mov dword [0x591b3ae8], eax
call esi
mov dword [0x591b3aec], eax
mov eax, dword [0x591b3b94]
push str.NtFlushKey
push eax
call esi
mov ecx, dword [0x591b3b94]
push str.NtDeleteKey
push ecx
mov dword [0x591b3af0], eax
call esi
mov dword [0x591b3af4], eax
mov edx, dword [0x591b3b94]
push str.NtDeleteValueKey
push edx
call esi
mov dword [0x591b3af8], eax
mov eax, dword [0x591b3b94]
push str.NtSetInformationKey
push eax
call esi
mov ecx, dword [0x591b3b94]
push str.NtSetValueKey
push ecx
mov dword [0x591b3afc], eax
call esi
mov edx, dword [0x591b3b94]
push str.NtNotifyChangeKey
push edx
mov dword [0x591b3b00], eax
call esi
mov dword [0x591b3b04], eax
mov eax, dword [0x591b3b94]
push str.NtNotifyChangeMultipleKeys
push eax
call esi
mov ecx, dword [0x591b3b94]
push str.NtCreateProcess
push ecx
mov dword [0x591b3b08], eax
call esi
mov edx, dword [0x591b3b94]
push str.NtCreateProcessEx
push edx
mov dword [0x591b3b0c], eax
call esi
mov dword [0x591b3b10], eax
mov eax, dword [0x591b3b94]
push str.NtOpenProcess
push eax
call esi
mov ecx, dword [0x591b3b94]
push str.NtTerminateProcess
push ecx
mov dword [0x591b3b14], eax
call esi
mov edx, dword [0x591b3b94]
push str.LdrShutdownProcess
push edx
mov dword [0x591b3b18], eax
call esi
mov dword [0x591b3b1c], eax
mov eax, dword [0x591b3b94]
push str.NtQueryInformationProcess
push eax
call esi
mov ecx, dword [0x591b3b94]
push str.NtSetInformationProcess
push ecx
mov dword [0x591b3b20], eax
call esi
mov edx, dword [0x591b3b94]
push str.NtCreateThread
push edx
mov dword [0x591b3b24], eax
call esi
mov dword [0x591b3b28], eax
mov eax, dword [0x591b3b94]
push str.NtOpenThread
push eax
call esi
mov ecx, dword [0x591b3b94]
push str.NtSuspendThread
push ecx
mov dword [0x591b3b2c], eax
call esi
mov edx, dword [0x591b3b94]
push str.NtResumeThread
push edx
mov dword [0x591b3b30], eax
call esi
mov dword [0x591b3b34], eax
push str.NtTerminateThread
mov eax, dword [0x591b3b94]
push eax
call esi
mov ecx, dword [0x591b3b94]
push str.LdrShutdownThread
push ecx
mov dword [0x591b3b38], eax
call esi
mov edx, dword [0x591b3b94]
push str.NtQueryInformationThread
push edx
mov dword [0x591b3b3c], eax
call esi
mov dword [0x591b3b40], eax
mov eax, dword [0x591b3b94]
push str.NtSetInformationThread
push eax
call esi
mov ecx, dword [0x591b3b94]
push str.RtlInitUnicodeString
push ecx
mov dword [0x591b3b44], eax
call esi
mov edx, dword [0x591b3b94]
push str.RtlFreeUnicodeString
push edx
mov dword [0x591b3b48], eax
call esi
mov dword [0x591b3b4c], eax
mov eax, dword [0x591b3b94]
push str.RtlDosPathNameToNtPathName_U
push eax
call esi
mov ecx, dword [0x591b3b94]
push str.NtQueryAttributesFile
push ecx
mov dword [0x591b3b50], eax
call esi
mov edx, dword [0x591b3b94]
push str.NtQueryFullAttributesFile
push edx
mov dword [0x591b3b54], eax
call esi
mov dword [0x591b3b58], eax
mov eax, dword [0x591b3b94]
push str.RtlConvertSidToUnicodeString
push eax
call esi
mov ecx, dword [0x591b3b94]
push str.RtlCreateSecurityDescriptor
push ecx
mov dword [0x591b3b5c], eax
call esi
mov edx, dword [0x591b3b94]
push str.RtlSetDaclSecurityDescriptor
push edx
mov dword [0x591b3b60], eax
call esi
mov dword [0x591b3b64], eax
mov eax, dword [0x591b3b94]
push str.RtlInitializeSid
push eax
call esi
mov ecx, dword [0x591b3b94]
push str.RtlSubAuthoritySid
push ecx
mov dword [0x591b3b68], eax
call esi
mov edx, dword [0x591b3b94]
push str.RtlCreateAcl
push edx
mov dword [0x591b3b6c], eax
call esi
mov dword [0x591b3b70], eax
mov eax, dword [0x591b3b94]
push str.RtlAddAccessAllowedAceEx
push eax
call esi
mov ecx, dword [0x591b3b94]
mov dword [0x591b3b74], eax
push str.RtlGetCurrentDirectory_U
push ecx
call esi
mov edx, dword [0x591b3b94]
push str.RtlSetCurrentDirectory_U
push edx
mov dword [0x591b3b78], eax
call esi
mov dword [0x591b3b7c], eax
mov eax, dword [0x591b3b94]
push str.RtlGetFullPathName_U
push eax
call esi
mov ecx, dword [0x591b3b94]
push str.RtlFormatCurrentUserKeyPath
push ecx
mov dword [0x591b3b80], eax
call esi
mov edx, dword [0x591b3b94]
push str.NtRenameKey
push edx
mov dword [0x591b3b84], eax
call esi
mov dword [0x591b3b88], eax
mov eax, dword [0x591b3b94]
push str.NtCreateDirectoryObject
push eax
call esi
mov ecx, dword [0x591b3b94]
push str.NtCreateToken
push ecx
mov dword [0x591b3b8c], eax
call esi
mov dword [0x591b3b90], eax
pop esi
ret