Function at 0x402ff0
Capabilities:
Link many functions at runtime

Disassembly:
mov edi, edi
push ebp
mov ebp, esp
sub esp, 0x30
mov eax, dword [0x409004]
xor eax, ebp
mov dword [ebp - 4], eax
push ebx
push esi
push edi
mov eax, dword [ebp + 8]
lea edi, [ebp - 0x1c]
push 5
mov dword [ebp - 0x24], ecx
mov esi, 0x4013c8
pop ecx
mov ebx, dword [ebp + 0x10]
and dword [ebp - 0x20], 0
rep movsd dword es:[edi], dword [esi]
push 0x48
mov dword [ebp - 0x2c], eax
mov eax, dword [ebp + 0xc]
push 0
push 0x4097c8
mov dword [ebp - 0x28], edx
mov dword [ebp - 0x30], eax
movsw word es:[edi], word [esi]
call sub.msvcrt.dll_memset
pop ecx
pop ecx
lea eax, [ebp - 0x20]
mov edx, 0x4013e0
push eax
push ecx
mov ecx, 0x4013f8
call fcn.00405e56
mov esi, eax
test esi, esi
js 0x403330
cmp dword [ebp - 0x20], 1
jb 0x40332c
lea eax, [ebp - 0x1c]
push eax
call dword [sym.imp.KERNEL32.dll_LoadLibraryW]
mov dword [0x40980c], eax
test eax, eax
jne 0x403096
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov esi, eax
test esi, esi
jle 0x40332e
movzx esi, si
or esi, 0x80070000
jmp 0x40332c
push 0x401444
push eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov edi, eax
mov dword [0x4097f8], edi
test edi, edi
je 0x403078
mov ecx, edi
call dword [0x40a218]
call edi
test eax, eax
jne 0x4030d4
push dword [0x40980c]
call dword [sym.imp.KERNEL32.dll_FreeLibrary]
and dword [0x40980c], 0
jmp 0x40332c
push 0x401458
push dword [0x40980c]
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [0x4097c8], eax
test eax, eax
je 0x403078
push 0x401468
push dword [0x40980c]
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [0x4097cc], eax
test eax, eax
je 0x403078
push 0x401474
push dword [0x40980c]
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [0x4097d0], eax
test eax, eax
je 0x403078
push 0x401484
push dword [0x40980c]
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [0x4097d4], eax
test eax, eax
je 0x403078
push 0x401494
push dword [0x40980c]
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [0x4097d8], eax
test eax, eax
je 0x403078
push 0x4014b0
push dword [0x40980c]
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [0x4097dc], eax
test eax, eax
je 0x403078
push 0x4014b8
push dword [0x40980c]
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [0x4097e0], eax
test eax, eax
je 0x403078
push 0x4014c8
push dword [0x40980c]
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [0x4097e4], eax
test eax, eax
je 0x403078
push 0x4014e0
push dword [0x40980c]
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [0x4097e8], eax
test eax, eax
je 0x403078
push 0x4014f0
push dword [0x40980c]
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [0x4097ec], eax
test eax, eax
je 0x403078
push 0x401508
push dword [0x40980c]
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [0x4097f0], eax
test eax, eax
je 0x403078
push 0x401520
push dword [0x40980c]
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [0x4097f4], eax
test eax, eax
je 0x403078
push 0x401534
push dword [0x40980c]
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [0x4097fc], eax
test eax, eax
je 0x403078
push 0x401544
push dword [0x40980c]
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [0x409800], eax
test eax, eax
je 0x403078
push 0x40155c
push dword [0x40980c]
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [0x409804], eax
test eax, eax
je 0x403078
push 0x401570
push dword [0x40980c]
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [0x409808], eax
test eax, eax
je 0x403078
push 0x24c
push 0
push 0x409360
mov dword [0x40984c], 1
call sub.msvcrt.dll_memset
mov eax, dword [ebp - 0x24]
add esp, 0xc
mov dword [0x409360], eax
mov eax, dword [ebp - 0x28]
mov dword [0x409364], eax
mov eax, dword [ebp - 0x2c]
test eax, eax
je 0x4032ee
mov ecx, eax
call fcn.00402ae0
jmp 0x4032f0
xor eax, eax
mov dword [0x409380], eax
mov eax, dword [ebp - 0x30]
test eax, eax
je 0x403305
mov ecx, eax
call fcn.00402ae0
jmp 0x403307
xor eax, eax
mov dword [0x409384], eax
test ebx, ebx
je 0x403319
mov ecx, ebx
call fcn.00402ae0
jmp 0x40331b
xor eax, eax
mov ecx, 0x409368
mov dword [0x409388], eax
call fcn.00402c23
mov esi, eax
test esi, esi
jns 0x403347
mov eax, dword [0x40980c]
test eax, eax
je 0x403347
push eax
call dword [sym.imp.KERNEL32.dll_FreeLibrary]
and dword [0x40980c], 0
mov ecx, dword [ebp - 4]
mov eax, esi
pop edi
pop esi
xor ecx, ebp
pop ebx
call fcn.00407be0
leave
ret 0xc