Function at 0x46aad0
Capabilities:
Link many functions at runtime

Disassembly:
mov eax, dword [0x4ab000]
push esi
mov esi, dword [sym.imp.KERNEL32.dll_GetProcAddress]
push str.NtCreateFile
push eax
call esi
mov ecx, dword [0x4ab000]
push str.NtOpenFile
push ecx
mov dword [0x4aaee4], eax
call esi
mov edx, dword [0x4ab000]
push str.NtClose
push edx
mov dword [0x4aaee8], eax
call esi
mov dword [0x4aaeec], eax
mov eax, dword [0x4ab000]
push str.NtReadFile
push eax
call esi
mov ecx, dword [0x4ab000]
push str.NtWriteFile
push ecx
mov dword [0x4aaef0], eax
call esi
mov edx, dword [0x4ab000]
push str.NtQueryObject
push edx
mov dword [0x4aaef4], eax
call esi
mov dword [0x4aaef8], eax
mov eax, dword [0x4ab000]
push str.NtQueryDirectoryFile
push eax
call esi
mov ecx, dword [0x4ab000]
push str.NtQueryDirectoryFileEx
push ecx
mov dword [0x4aaefc], eax
call esi
mov edx, dword [0x4ab000]
push str.NtQueryInformationFile
push edx
mov dword [0x4aaf00], eax
call esi
mov dword [0x4aaf04], eax
mov eax, dword [0x4ab000]
push str.NtSetInformationFile
push eax
call esi
mov ecx, dword [0x4ab000]
push str.NtQuerySystemInformation
push ecx
mov dword [0x4aaf08], eax
call esi
mov edx, dword [0x4ab000]
push str.NtDeleteFile
push edx
mov dword [0x4aaf0c], eax
call esi
mov dword [0x4aaf10], eax
mov eax, dword [0x4ab000]
push str.NtQueryVolumeInformationFile
push eax
call esi
mov ecx, dword [0x4ab000]
push str.NtDuplicateObject
push ecx
mov dword [0x4aaf14], eax
call esi
mov edx, dword [0x4ab000]
push str.RtlInitializeCriticalSection
push edx
mov dword [0x4aaf18], eax
call esi
mov dword [0x4aaf1c], eax
mov eax, dword [0x4ab000]
push str.RtlDeleteCriticalSection
push eax
call esi
mov ecx, dword [0x4ab000]
push str.RtlEnterCriticalSection
push ecx
mov dword [0x4aaf20], eax
call esi
mov edx, dword [0x4ab000]
push str.RtlLeaveCriticalSection
push edx
mov dword [0x4aaf24], eax
call esi
mov dword [0x4aaf28], eax
mov eax, dword [0x4ab000]
push str.RtlTryEnterCriticalSection
push eax
call esi
mov ecx, dword [0x4ab000]
push str.NtOpenDirectoryObject
push ecx
mov dword [0x4aaf2c], eax
call esi
mov edx, dword [0x4ab000]
push str.NtQueryDirectoryObject
push edx
mov dword [0x4aaf30], eax
call esi
mov dword [0x4aaf34], eax
mov eax, dword [0x4ab000]
push str.NtOpenSymbolicLinkObject
push eax
call esi
mov ecx, dword [0x4ab000]
push str.NtQuerySymbolicLinkObject
push ecx
mov dword [0x4aaf38], eax
call esi
mov edx, dword [0x4ab000]
push str.NtCreateKey
push edx
mov dword [0x4aaf3c], eax
call esi
mov dword [0x4aaf40], eax
mov eax, dword [0x4ab000]
push str.NtOpenKey
push eax
call esi
mov ecx, dword [0x4ab000]
push str.NtQueryKey
push ecx
mov dword [0x4aaf44], eax
call esi
mov edx, dword [0x4ab000]
push str.NtQueryValueKey
push edx
mov dword [0x4aaf48], eax
call esi
mov dword [0x4aaf4c], eax
mov eax, dword [0x4ab000]
push str.NtQueryMultipleValueKey
push eax
call esi
mov ecx, dword [0x4ab000]
push str.NtEnumerateKey
push ecx
mov dword [0x4aaf50], eax
call esi
mov edx, dword [0x4ab000]
push str.NtEnumerateValueKey
push edx
mov dword [0x4aaf54], eax
call esi
mov dword [0x4aaf58], eax
mov eax, dword [0x4ab000]
push str.NtFlushKey
push eax
call esi
mov ecx, dword [0x4ab000]
push str.NtDeleteKey
push ecx
mov dword [0x4aaf5c], eax
call esi
mov dword [0x4aaf60], eax
mov edx, dword [0x4ab000]
push str.NtDeleteValueKey
push edx
call esi
mov dword [0x4aaf64], eax
mov eax, dword [0x4ab000]
push str.NtSetInformationKey
push eax
call esi
mov ecx, dword [0x4ab000]
push str.NtSetValueKey
push ecx
mov dword [0x4aaf68], eax
call esi
mov edx, dword [0x4ab000]
push str.NtNotifyChangeKey
push edx
mov dword [0x4aaf6c], eax
call esi
mov dword [0x4aaf70], eax
mov eax, dword [0x4ab000]
push str.NtNotifyChangeMultipleKeys
push eax
call esi
mov ecx, dword [0x4ab000]
push str.NtCreateProcess
push ecx
mov dword [0x4aaf74], eax
call esi
mov edx, dword [0x4ab000]
push str.NtCreateProcessEx
push edx
mov dword [0x4aaf78], eax
call esi
mov dword [0x4aaf7c], eax
mov eax, dword [0x4ab000]
push str.NtOpenProcess
push eax
call esi
mov ecx, dword [0x4ab000]
push str.NtTerminateProcess
push ecx
mov dword [0x4aaf80], eax
call esi
mov edx, dword [0x4ab000]
push str.LdrShutdownProcess
push edx
mov dword [0x4aaf84], eax
call esi
mov dword [0x4aaf88], eax
mov eax, dword [0x4ab000]
push str.NtQueryInformationProcess
push eax
call esi
mov ecx, dword [0x4ab000]
push str.NtSetInformationProcess
push ecx
mov dword [0x4aaf8c], eax
call esi
mov edx, dword [0x4ab000]
push str.NtCreateThread
push edx
mov dword [0x4aaf90], eax
call esi
mov dword [0x4aaf94], eax
mov eax, dword [0x4ab000]
push str.NtOpenThread
push eax
call esi
mov ecx, dword [0x4ab000]
push str.NtSuspendThread
push ecx
mov dword [0x4aaf98], eax
call esi
mov edx, dword [0x4ab000]
push str.NtResumeThread
push edx
mov dword [0x4aaf9c], eax
call esi
mov dword [0x4aafa0], eax
push str.NtTerminateThread
mov eax, dword [0x4ab000]
push eax
call esi
mov ecx, dword [0x4ab000]
push str.LdrShutdownThread
push ecx
mov dword [0x4aafa4], eax
call esi
mov edx, dword [0x4ab000]
push str.NtQueryInformationThread
push edx
mov dword [0x4aafa8], eax
call esi
mov dword [0x4aafac], eax
mov eax, dword [0x4ab000]
push str.NtSetInformationThread
push eax
call esi
mov ecx, dword [0x4ab000]
push str.RtlInitUnicodeString
push ecx
mov dword [0x4aafb0], eax
call esi
mov edx, dword [0x4ab000]
push str.RtlFreeUnicodeString
push edx
mov dword [0x4aafb4], eax
call esi
mov dword [0x4aafb8], eax
mov eax, dword [0x4ab000]
push str.RtlDosPathNameToNtPathName_U
push eax
call esi
mov ecx, dword [0x4ab000]
push str.NtQueryAttributesFile
push ecx
mov dword [0x4aafbc], eax
call esi
mov edx, dword [0x4ab000]
push str.NtQueryFullAttributesFile
push edx
mov dword [0x4aafc0], eax
call esi
mov dword [0x4aafc4], eax
mov eax, dword [0x4ab000]
push str.RtlConvertSidToUnicodeString
push eax
call esi
mov ecx, dword [0x4ab000]
push str.RtlCreateSecurityDescriptor
push ecx
mov dword [0x4aafc8], eax
call esi
mov edx, dword [0x4ab000]
push str.RtlSetDaclSecurityDescriptor
push edx
mov dword [0x4aafcc], eax
call esi
mov dword [0x4aafd0], eax
mov eax, dword [0x4ab000]
push str.RtlInitializeSid
push eax
call esi
mov ecx, dword [0x4ab000]
push str.RtlSubAuthoritySid
push ecx
mov dword [0x4aafd4], eax
call esi
mov edx, dword [0x4ab000]
push str.RtlCreateAcl
push edx
mov dword [0x4aafd8], eax
call esi
mov dword [0x4aafdc], eax
mov eax, dword [0x4ab000]
push str.RtlAddAccessAllowedAceEx
push eax
call esi
mov ecx, dword [0x4ab000]
mov dword [0x4aafe0], eax
push str.RtlGetCurrentDirectory_U
push ecx
call esi
mov edx, dword [0x4ab000]
push str.RtlSetCurrentDirectory_U
push edx
mov dword [0x4aafe4], eax
call esi
mov dword [0x4aafe8], eax
mov eax, dword [0x4ab000]
push str.RtlGetFullPathName_U
push eax
call esi
mov ecx, dword [0x4ab000]
push str.RtlFormatCurrentUserKeyPath
push ecx
mov dword [0x4aafec], eax
call esi
mov edx, dword [0x4ab000]
push str.NtRenameKey
push edx
mov dword [0x4aaff0], eax
call esi
mov dword [0x4aaff4], eax
mov eax, dword [0x4ab000]
push str.NtCreateDirectoryObject
push eax
call esi
mov ecx, dword [0x4ab000]
push str.NtCreateToken
push ecx
mov dword [0x4aaff8], eax
call esi
mov dword [0x4aaffc], eax
pop esi
ret