Function at 0x4019f0
Capabilities:
Link many functions at runtime

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x3c8
push esi
push 0xbc20ddb6
push 0x733a1728
push 0xbc20ddb6
push 0xbc20ddb6
push 0x923e6468
push 0x72ee104e
push 0x11927506
push 0x39a831ca
push 0xf161abe
push 0x72ee104e
push 0x22121e98
push 0x9ca2f914
lea eax, [ebp - 0x308]
push 0xc
push eax
call fcn.004018c0
mov edx, dword [0x417fe8]
mov esi, dword [sym.imp.KERNEL32.dll_GetProcAddress]
add esp, 0x38
lea ecx, [ebp - 0x308]
push ecx
push edx
call esi
push 0x2d8ac142
push 0xfdf6bd5c
push 0x923e6468
push 0x22121e98
push 0x44787966
push 0xbc20ddb6
push 0xc3429802
push 0x733a1728
push 0x11927506
push 0x22121e98
push 0xddd0f016
push 0x9a92d708
push 0x4f50c526
push 0x56081108
push 0x9794f4f0
lea eax, [ebp - 0xc8]
push 0xf
push eax
call fcn.004018c0
mov edx, dword [0x417fe8]
add esp, 0x44
lea ecx, [ebp - 0xc8]
push ecx
push edx
call esi
push 0x2d8ac142
push 0x22121e98
push 0x44787966
push 0xbc20ddb6
push 0xc3429802
push 0x733a1728
push 0x11927506
push 0x22121e98
push 0xddd0f016
push 0x9a92d708
push 0x4f50c526
push 0x56081108
push 0x9794f4f0
lea eax, [ebp - 0x188]
push 0xd
push eax
call fcn.004018c0
push 0x22121e98
push 0x44787966
push 0xbc20ddb6
push 0xc3429802
push 0x733a1728
push 0x11927506
push 0x22121e98
push 0xddd0f016
push 0x9a92d708
push 0x39a831ca
push 0x733a1728
push 0xf161abe
push 0xc
lea ecx, [ebp - 0x248]
push ecx
call fcn.004018c0
add esp, 0x74
push 0x22121e98
push 0x44787966
push 0xbc20ddb6
push 0xc3429802
push 0x733a1728
push 0x11927506
push 0x22121e98
push 0xddd0f016
push 0xa324f748
push 0x44787966
push 0x733a1728
push 0xf161abe
lea edx, [ebp - 0x3c8]
push 0xc
push edx
call fcn.004018c0
mov ecx, dword [ebp + 8]
mov edx, dword [ebp + 0x14]
mov eax, ecx
imul eax, dword [ebp + 0x10]
add eax, edx
lea eax, [eax + eax*4]
add eax, eax
add esp, 0x38
test eax, eax
mov dword [ebp - 4], 0
mov dword [ebp - 8], eax
jle 0x401d1b
push ebx
add ecx, edx
push edi
mov dword [ebp + 0x14], ecx
jmp 0x401be6
mov esi, dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov ecx, dword [0x417fe8]
lea eax, [ebp - 0x188]
push eax
push ecx
call esi
mov ebx, dword [ebp + 0xc]
push 0x17
push 1
push ebx
call eax
lea edx, [ebp - 0x248]
mov edi, eax
mov eax, dword [0x417fe8]
push edx
push eax
call esi
push edi
push ebx
call eax
mov edx, dword [0x417fe8]
lea ecx, [ebp - 0x3c8]
push ecx
push edx
mov edi, eax
call esi
push edi
call eax
mov edi, eax
mov ebx, dword [edi + 2]
sub ebx, 0x36
call dword [0x417ff4]
push 4
mov esi, eax
mov eax, dword [ebp - 4]
push 0x3000
sub ebx, esi
cmp eax, dword [ebp + 0x14]
push esi
mov dword [0x417fec], ebx
push 0
je 0x401cc3
call dword [sym.imp.KERNEL32.dll_VirtualAlloc]
push 4
push 0x3000
push ebx
push 0
mov dword [ebp + 8], eax
call dword [sym.imp.KERNEL32.dll_VirtualAlloc]
mov ecx, dword [edi + 0xa]
push esi
lea edx, [ecx + edi + 2]
mov dword [ebp + 0x10], eax
mov eax, dword [ebp + 8]
push edx
push eax
call fcn.00403030
mov ecx, dword [edi + 0xa]
add ecx, edi
mov edi, dword [ebp + 0x10]
push ebx
lea edx, [ecx + esi + 2]
push edx
push edi
call fcn.00403030
mov eax, dword [ebp + 8]
add dword [ebp - 4], 1
push esi
push eax
call fcn.004019d0
push ebx
push edi
call fcn.004019d0
mov ecx, dword [ebp - 4]
add esp, 0x28
cmp dword [ebp - 8], ecx
jg 0x401be0
mov eax, edi
pop edi
pop ebx
pop esi
mov esp, ebp
pop ebp
ret
call dword [sym.imp.KERNEL32.dll_VirtualAlloc]
push 4
push 0x3000
push ebx
push 0
mov dword [ebp + 8], eax
call dword [sym.imp.KERNEL32.dll_VirtualAlloc]
mov edx, dword [edi + 0xa]
push esi
add edx, edi
push edx
mov dword [ebp + 0x10], eax
mov eax, dword [ebp + 8]
push esi
push eax
call fcn.00402fa6
mov ecx, dword [edi + 0xa]
add ecx, edi
mov edi, dword [ebp + 0x10]
push ebx
add ecx, esi
push ecx
push ebx
push edi
call fcn.00402fa6
mov edx, dword [ebp + 8]
push esi
push edx
push ebx
push edi
call fcn.00401920
add esp, 0x30
mov eax, edi
pop edi
pop ebx
pop esi
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
pop esi
mov esp, ebp
pop ebp
ret