Function at 0x4a4690
Capabilities:
Link many functions at runtime

Disassembly:
mov eax, dword [0x502804]
push esi
mov esi, dword [sym.imp.KERNEL32.dll_GetProcAddress]
push str.NtCreateFile
push eax
call esi
mov ecx, dword [0x502804]
push str.NtOpenFile
push ecx
mov dword [0x5026ec], eax
call esi
mov edx, dword [0x502804]
push str.NtClose
push edx
mov dword [0x5026f0], eax
call esi
mov dword [0x5026f4], eax
mov eax, dword [0x502804]
push str.NtReadFile
push eax
call esi
mov ecx, dword [0x502804]
push str.NtWriteFile
push ecx
mov dword [0x5026f8], eax
call esi
mov edx, dword [0x502804]
push str.NtQueryObject
push edx
mov dword [0x5026fc], eax
call esi
mov dword [0x502700], eax
mov eax, dword [0x502804]
push str.NtQueryDirectoryFile
push eax
call esi
mov ecx, dword [0x502804]
push str.NtQueryDirectoryFileEx
push ecx
mov dword [0x502704], eax
call esi
mov edx, dword [0x502804]
push str.NtQueryInformationFile
push edx
mov dword [0x502708], eax
call esi
mov dword [0x50270c], eax
mov eax, dword [0x502804]
push str.NtSetInformationFile
push eax
call esi
mov ecx, dword [0x502804]
push str.NtQuerySystemInformation
push ecx
mov dword [0x502710], eax
call esi
mov edx, dword [0x502804]
push str.NtDeleteFile
push edx
mov dword [0x502714], eax
call esi
mov dword [0x502718], eax
mov eax, dword [0x502804]
push str.NtQueryVolumeInformationFile
push eax
call esi
mov ecx, dword [0x502804]
push str.NtDuplicateObject
push ecx
mov dword [0x50271c], eax
call esi
mov edx, dword [0x502804]
push str.RtlInitializeCriticalSection
push edx
mov dword [0x502720], eax
call esi
mov dword [0x502724], eax
mov eax, dword [0x502804]
push str.RtlDeleteCriticalSection
push eax
call esi
mov ecx, dword [0x502804]
push str.RtlEnterCriticalSection
push ecx
mov dword [0x502728], eax
call esi
mov edx, dword [0x502804]
push str.RtlLeaveCriticalSection
push edx
mov dword [0x50272c], eax
call esi
mov dword [0x502730], eax
mov eax, dword [0x502804]
push str.RtlTryEnterCriticalSection
push eax
call esi
mov ecx, dword [0x502804]
push str.NtOpenDirectoryObject
push ecx
mov dword [0x502734], eax
call esi
mov edx, dword [0x502804]
push str.NtQueryDirectoryObject
push edx
mov dword [0x502738], eax
call esi
mov dword [0x50273c], eax
mov eax, dword [0x502804]
push str.NtOpenSymbolicLinkObject
push eax
call esi
mov ecx, dword [0x502804]
push str.NtQuerySymbolicLinkObject
push ecx
mov dword [0x502740], eax
call esi
mov edx, dword [0x502804]
push str.NtCreateKey
push edx
mov dword [0x502744], eax
call esi
mov dword [0x502748], eax
mov eax, dword [0x502804]
push str.NtOpenKey
push eax
call esi
mov ecx, dword [0x502804]
push str.NtQueryKey
push ecx
mov dword [0x50274c], eax
call esi
mov edx, dword [0x502804]
push str.NtQueryValueKey
push edx
mov dword [0x502750], eax
call esi
mov dword [0x502754], eax
mov eax, dword [0x502804]
push str.NtQueryMultipleValueKey
push eax
call esi
mov ecx, dword [0x502804]
push str.NtEnumerateKey
push ecx
mov dword [0x502758], eax
call esi
mov edx, dword [0x502804]
push str.NtEnumerateValueKey
push edx
mov dword [0x50275c], eax
call esi
mov dword [0x502760], eax
mov eax, dword [0x502804]
push str.NtFlushKey
push eax
call esi
mov ecx, dword [0x502804]
push str.NtDeleteKey
push ecx
mov dword [0x502764], eax
call esi
mov dword [0x502768], eax
mov edx, dword [0x502804]
push str.NtDeleteValueKey
push edx
call esi
mov dword [0x50276c], eax
mov eax, dword [0x502804]
push str.NtSetInformationKey
push eax
call esi
mov ecx, dword [0x502804]
push str.NtSetValueKey
push ecx
mov dword [0x502770], eax
call esi
mov edx, dword [0x502804]
push str.NtNotifyChangeKey
push edx
mov dword [0x502774], eax
call esi
mov dword [0x502778], eax
mov eax, dword [0x502804]
push str.NtNotifyChangeMultipleKeys
push eax
call esi
mov ecx, dword [0x502804]
push str.NtCreateProcess
push ecx
mov dword [0x50277c], eax
call esi
mov edx, dword [0x502804]
push str.NtCreateProcessEx
push edx
mov dword [0x502780], eax
call esi
mov dword [0x502784], eax
mov eax, dword [0x502804]
push str.NtOpenProcess
push eax
call esi
mov ecx, dword [0x502804]
push str.NtTerminateProcess
push ecx
mov dword [0x502788], eax
call esi
mov edx, dword [0x502804]
push str.LdrShutdownProcess
push edx
mov dword [0x50278c], eax
call esi
mov dword [0x502790], eax
mov eax, dword [0x502804]
push str.NtQueryInformationProcess
push eax
call esi
mov ecx, dword [0x502804]
push str.NtSetInformationProcess
push ecx
mov dword [0x502794], eax
call esi
mov edx, dword [0x502804]
push str.NtCreateThread
push edx
mov dword [0x502798], eax
call esi
mov dword [0x50279c], eax
mov eax, dword [0x502804]
push str.NtOpenThread
push eax
call esi
mov ecx, dword [0x502804]
push str.NtSuspendThread
push ecx
mov dword [0x5027a0], eax
call esi
mov edx, dword [0x502804]
push str.NtResumeThread
push edx
mov dword [0x5027a4], eax
call esi
mov dword [0x5027a8], eax
push str.NtTerminateThread
mov eax, dword [0x502804]
push eax
call esi
mov ecx, dword [0x502804]
push str.LdrShutdownThread
push ecx
mov dword [0x5027ac], eax
call esi
mov edx, dword [0x502804]
push str.NtQueryInformationThread
push edx
mov dword [0x5027b0], eax
call esi
mov dword [0x5027b4], eax
mov eax, dword [0x502804]
push str.NtSetInformationThread
push eax
call esi
mov ecx, dword [0x502804]
push str.RtlInitUnicodeString
push ecx
mov dword [0x5027b8], eax
call esi
mov edx, dword [0x502804]
push str.RtlFreeUnicodeString
push edx
mov dword [0x5027bc], eax
call esi
mov dword [0x5027c0], eax
mov eax, dword [0x502804]
push str.RtlDosPathNameToNtPathName_U
push eax
call esi
mov ecx, dword [0x502804]
push str.NtQueryAttributesFile
push ecx
mov dword [0x5027c4], eax
call esi
mov edx, dword [0x502804]
push str.NtQueryFullAttributesFile
push edx
mov dword [0x5027c8], eax
call esi
mov dword [0x5027cc], eax
mov eax, dword [0x502804]
push str.RtlConvertSidToUnicodeString
push eax
call esi
mov ecx, dword [0x502804]
push str.RtlCreateSecurityDescriptor
push ecx
mov dword [0x5027d0], eax
call esi
mov edx, dword [0x502804]
push str.RtlSetDaclSecurityDescriptor
push edx
mov dword [0x5027d4], eax
call esi
mov dword [0x5027d8], eax
mov eax, dword [0x502804]
push str.RtlInitializeSid
push eax
call esi
mov ecx, dword [0x502804]
push str.RtlSubAuthoritySid
push ecx
mov dword [0x5027dc], eax
call esi
mov edx, dword [0x502804]
push str.RtlCreateAcl
push edx
mov dword [0x5027e0], eax
call esi
mov dword [0x5027e4], eax
mov eax, dword [0x502804]
push str.RtlAddAccessAllowedAceEx
push eax
call esi
mov ecx, dword [0x502804]
mov dword [0x5027e8], eax
push str.RtlGetCurrentDirectory_U
push ecx
call esi
mov edx, dword [0x502804]
push str.RtlSetCurrentDirectory_U
push edx
mov dword [0x5027ec], eax
call esi
mov dword [0x5027f0], eax
mov eax, dword [0x502804]
push str.RtlGetFullPathName_U
push eax
call esi
mov ecx, dword [0x502804]
push str.RtlFormatCurrentUserKeyPath
push ecx
mov dword [0x5027f4], eax
call esi
mov edx, dword [0x502804]
push str.NtRenameKey
push edx
mov dword [0x5027f8], eax
call esi
mov dword [0x5027fc], eax
mov eax, dword [0x502804]
push str.NtCreateDirectoryObject
push eax
call esi
mov dword [0x502800], eax
pop esi
ret