Function at 0x1004cdc0
Capabilities:
Link many functions at runtime

Disassembly:
mov eax, dword [0x10072910]
push esi
test eax, eax
jne 0x1004d161
mov ecx, dword [0x1007290c]
cmp ecx, 3
ja 0x1004d161
mov edx, ecx
inc edx
mov dword [0x1007290c], edx
call fcn.1002ca20
test eax, eax
je 0x1004cdfc
push str.ntdll.dll
call dword [sym.imp.KERNEL32.dll_LoadLibraryW]
jmp 0x1004ce07
push 0x10064b00
call dword [sym.imp.KERNEL32.dll_LoadLibraryA]
mov esi, eax
test esi, esi
jne 0x1004ce0f
pop esi
ret
push edi
mov edi, dword [sym.imp.KERNEL32.dll_GetProcAddress]
push str.NtCreateFile
push esi
call edi
push str.NtOpenFile
push esi
mov dword [0x1007280c], eax
call edi
push str.NtClose
push esi
mov dword [0x10072810], eax
call edi
push str.NtReadFile
push esi
mov dword [0x10072814], eax
call edi
push str.NtWriteFile
push esi
mov dword [0x10072818], eax
call edi
push str.NtQueryObject
push esi
mov dword [0x1007281c], eax
call edi
push str.NtQueryDirectoryFile
push esi
mov dword [0x10072820], eax
call edi
push str.NtQueryInformationFile
push esi
mov dword [0x10072824], eax
call edi
push str.NtSetInformationFile
push esi
mov dword [0x10072828], eax
call edi
push str.NtQuerySystemInformation
push esi
mov dword [0x1007282c], eax
call edi
push str.NtDeleteFile
push esi
mov dword [0x10072830], eax
call edi
push str.NtQueryVolumeInformationFile
push esi
mov dword [0x10072834], eax
call edi
push str.RtlInitializeCriticalSection
push esi
mov dword [0x10072838], eax
call edi
push str.RtlDeleteCriticalSection
push esi
mov dword [0x1007283c], eax
call edi
push str.RtlEnterCriticalSection
push esi
mov dword [0x10072840], eax
call edi
push str.RtlLeaveCriticalSection
push esi
mov dword [0x10072844], eax
call edi
push str.RtlTryEnterCriticalSection
push esi
mov dword [0x10072848], eax
call edi
push str.NtOpenDirectoryObject
push esi
mov dword [0x1007284c], eax
call edi
push str.NtQueryDirectoryObject
push esi
mov dword [0x10072850], eax
call edi
push str.NtOpenSymbolicLinkObject
push esi
mov dword [0x10072854], eax
call edi
push str.NtQuerySymbolicLinkObject
push esi
mov dword [0x10072858], eax
call edi
push str.NtCreateKey
push esi
mov dword [0x1007285c], eax
call edi
push str.NtOpenKey
push esi
mov dword [0x10072860], eax
call edi
push str.NtQueryKey
push esi
mov dword [0x10072864], eax
call edi
push str.NtQueryValueKey
push esi
mov dword [0x10072868], eax
call edi
push str.NtQueryMultipleValueKey
push esi
mov dword [0x1007286c], eax
call edi
push str.NtEnumerateKey
push esi
mov dword [0x10072870], eax
call edi
push str.NtEnumerateValueKey
push esi
mov dword [0x10072874], eax
call edi
push str.NtFlushKey
push esi
mov dword [0x10072878], eax
call edi
push str.NtDeleteKey
push esi
mov dword [0x1007287c], eax
call edi
push str.NtSetInformationKey
push esi
mov dword [0x10072880], eax
call edi
push str.NtSetValueKey
push esi
mov dword [0x10072884], eax
call edi
push str.NtNotifyChangeKey
push esi
mov dword [0x10072888], eax
call edi
push str.NtNotifyChangeMultipleKeys
push esi
mov dword [0x1007288c], eax
call edi
push str.NtCreateProcess
push esi
mov dword [0x10072890], eax
call edi
push str.NtCreateProcessEx
push esi
mov dword [0x10072894], eax
call edi
push str.NtOpenProcess
push esi
mov dword [0x10072898], eax
call edi
push str.NtTerminateProcess
push esi
mov dword [0x1007289c], eax
call edi
push str.LdrShutdownProcess
push esi
mov dword [0x100728a0], eax
call edi
push str.NtQueryInformationProcess
push esi
mov dword [0x100728a4], eax
call edi
mov dword [0x100728a8], eax
push str.NtSetInformationProcess
push esi
call edi
push str.NtCreateThread
push esi
mov dword [0x100728ac], eax
call edi
push str.NtOpenThread
push esi
mov dword [0x100728b0], eax
call edi
push str.NtSuspendThread
push esi
mov dword [0x100728b4], eax
call edi
push str.NtResumeThread
push esi
mov dword [0x100728b8], eax
call edi
push str.NtTerminateThread
push esi
mov dword [0x100728bc], eax
call edi
push str.LdrShutdownThread
push esi
mov dword [0x100728c0], eax
call edi
push str.NtQueryInformationThread
push esi
mov dword [0x100728c4], eax
call edi
push str.NtSetInformationThread
push esi
mov dword [0x100728c8], eax
call edi
push str.RtlInitUnicodeString
push esi
mov dword [0x100728cc], eax
call edi
push str.RtlFreeUnicodeString
push esi
mov dword [0x100728d0], eax
call edi
push str.RtlDosPathNameToNtPathName_U
push esi
mov dword [0x100728d4], eax
call edi
push str.NtQueryAttributesFile
push esi
mov dword [0x100728d8], eax
call edi
push str.NtQueryFullAttributesFile
push esi
mov dword [0x100728dc], eax
call edi
push str.RtlConvertSidToUnicodeString
push esi
mov dword [0x100728e0], eax
call edi
push str.RtlCreateSecurityDescriptor
push esi
mov dword [0x100728e4], eax
call edi
push str.RtlSetDaclSecurityDescriptor
push esi
mov dword [0x100728e8], eax
call edi
push str.RtlInitializeSid
push esi
mov dword [0x100728ec], eax
call edi
push str.RtlSubAuthoritySid
push esi
mov dword [0x100728f0], eax
call edi
push str.RtlCreateAcl
push esi
mov dword [0x100728f4], eax
call edi
mov dword [0x100728f8], eax
push str.RtlAddAccessAllowedAceEx
push esi
call edi
push str.RtlGetCurrentDirectory_U
push esi
mov dword [0x100728fc], eax
call edi
push str.RtlSetCurrentDirectory_U
push esi
mov dword [0x10072900], eax
call edi
push str.RtlGetFullPathName_U
push esi
mov dword [0x10072904], eax
call edi
mov dword [0x10072908], eax
mov eax, 1
mov dword [0x10072910], eax
pop edi
pop esi
ret