Function at 0x4c3700
Capabilities:
Resolve function by parsing pe exports

Disassembly:
mov ecx, dword fs:[0x14]
mov ecx, dword [ecx]
lea eax, [esp - 0x14]
cmp eax, dword [ecx + 8]
jbe 0x4c3a99
sub esp, 0x94
mov eax, dword [esp + 0x98]
mov eax, dword [eax + 4]
cmp eax, 0x3e8
jge 0x4c3945
mov dword [esp + 0x1c], eax
nop
lea ecx, [0x4fa0e0]
mov dword [esp], ecx
mov dword [esp + 4], eax
mov dword [esp + 8], eax
call fcn.00446cb0
mov eax, dword [esp + 0xc]
mov dword [esp + 0x30], eax
lea ecx, [0x4fa0e0]
mov dword [esp], ecx
mov edx, dword [esp + 0x1c]
mov dword [esp + 4], edx
mov dword [esp + 8], edx
call fcn.00446cb0
mov eax, dword [esp + 0xc]
mov dword [esp + 0x2c], eax
lea edi, [esp + 0x74]
xor eax, eax
call fcn.0045d7d8
mov ecx, dword [esp + 0x30]
mov dword [esp + 0x74], ecx
mov ecx, dword [esp + 0x1c]
mov dword [esp + 0x78], ecx
mov dword [esp + 0x7c], ecx
mov edx, dword [esp + 0x2c]
mov dword [esp + 0x80], edx
mov dword [esp + 0x84], ecx
mov dword [esp + 0x88], ecx
mov ecx, dword [esp + 0x98]
mov ecx, dword [ecx + 4]
mov dword [esp + 0x1c], ecx
lea edx, [0x4fa0e0]
mov dword [esp], edx
mov dword [esp + 4], ecx
mov dword [esp + 8], ecx
call fcn.00446cb0
mov eax, dword [esp + 0xc]
mov dword [esp + 0x30], eax
lea ecx, [0x4fa0e0]
mov dword [esp], ecx
mov ecx, dword [esp + 0x1c]
mov dword [esp + 4], ecx
mov dword [esp + 8], ecx
call fcn.00446cb0
mov eax, dword [esp + 0xc]
mov dword [esp + 0x2c], eax
lea edi, [esp + 0x54]
xor eax, eax
call fcn.0045d7d8
mov ecx, dword [esp + 0x30]
mov dword [esp + 0x54], ecx
mov ecx, dword [esp + 0x1c]
mov dword [esp + 0x58], ecx
mov dword [esp + 0x5c], ecx
mov edx, dword [esp + 0x2c]
mov dword [esp + 0x60], edx
mov dword [esp + 0x64], ecx
mov dword [esp + 0x68], ecx
mov dword [esp + 0x20], 0
mov ecx, dword [esp + 0x98]
mov ecx, dword [ecx + 4]
mov dword [esp + 0x14], ecx
lea edx, [0x4f5960]
mov dword [esp], edx
mov dword [esp + 4], ecx
mov dword [esp + 8], ecx
call fcn.00446cb0
mov eax, dword [esp + 0xc]
mov dword [esp + 0x30], eax
lea edi, [esp + 0x34]
xor eax, eax
call fcn.0045d7d8
lea eax, [0x4c3ab0]
mov dword [esp + 0x34], eax
lea eax, [esp + 0x98]
mov dword [esp + 0x38], eax
lea eax, [esp + 0x54]
mov dword [esp + 0x3c], eax
lea eax, [esp + 0x20]
mov dword [esp + 0x40], eax
mov eax, dword [esp + 0x30]
mov dword [esp + 0x44], eax
mov ecx, dword [esp + 0x14]
mov dword [esp + 0x48], ecx
mov dword [esp + 0x4c], ecx
lea edx, [esp + 0x74]
mov dword [esp + 0x50], edx
lea ebx, [esp + 0x34]
mov dword [esp + 0x20], ebx
nop
mov dword [esp + 0x8c], 0
mov dword [esp + 0x90], 0
mov ebx, dword [esp + 0x98]
mov ebx, dword [ebx + 0xc]
nop
nop
mov ebp, dword [esp + 0x74]
cmp dword [edx + 4], ebx
jbe 0x4c3913
mov dword [ebp + ebx*4], 0
mov edx, dword [esp + 0x84]
mov ebp, dword [esp + 0x80]
mov esi, dword [esp + 0x8c]
cmp edx, esi
jbe 0x4c3a8f
mov dword [ebp + esi*4], ebx
inc dword [esp + 0x8c]
mov eax, dword [esp + 0x98]
mov eax, dword [eax + 4]
mov dword [esp + 0x18], eax
lea ecx, [0x4f8f60]
mov dword [esp], ecx
mov dword [esp + 4], eax
mov dword [esp + 8], eax
call fcn.00446cb0
mov eax, dword [esp + 0xc]
mov dword [esp + 0x2c], eax
mov ecx, dword [esp + 0x18]
jmp 0x4c395f
mov dword [esp + 0x9c], 0
add esp, 0x94
ret
mov ecx, dword [esp + 0x18]
mov eax, dword [esp + 0x2c]
mov ebx, dword [esp + 0x90]
cmp dword [esp + 0x8c], ebx
jbe 0x4c39d7
nop
mov dword [esp + 0x6c], 0
mov dword [esp + 0x70], 0
nop
mov ebx, dword [esp + 0x84]
mov ebp, dword [esp + 0x80]
mov esi, dword [esp + 0x90]
cmp esi, ebx
jae 0x4c3a86
mov ebx, dword [ebp + esi*4]
lea ebp, [esi + 1]
mov dword [esp + 0x90], ebp
mov edx, dword [esp + 0x20]
mov ebp, dword [edx]
mov dword [esp], ebx
mov dword [esp + 4], eax
mov dword [esp + 8], ecx
mov dword [esp + 0xc], ecx
call ebp
movzx eax, byte [esp + 0x10]
test al, al
jne 0x4c3957
mov dword [esp + 0x98], 0
mov edx, dword [esp + 0x98]
test edx, edx
je 0x4c39f1
mov edx, dword [edx + 4]
mov ebx, dword [esp + 0x30]
mov ecx, dword [esp + 0x14]
xor eax, eax
jmp 0x4c3a0d
mov eax, dword [esp + 0x98]
mov dword [esp + 0x9c], eax
add esp, 0x94
ret
inc eax
mov ebx, dword [esp + 0x30]
mov edx, edi
cmp eax, edx
jge 0x4c39f1
cmp eax, ecx
jae 0x4c3a81
mov ebp, dword [esp + 0x98]
mov esi, dword [ebp]
mov dword [esp + 0x28], esi
mov ebp, dword [ebp + 4]
mov edi, edx
lea edx, [eax + eax*2]
mov esi, dword [ebx + edx*4]
mov dword [esp + 0x24], esi
mov esi, dword [ebx + edx*4 + 4]
mov edx, dword [ebx + edx*4 + 8]
cmp eax, ebp
jae 0x4c3a7a
lea ebp, [eax + eax*8]
mov ebx, dword [esp + 0x28]
mov dword [ebx + ebp*4 + 0x10], esi
mov dword [ebx + ebp*4 + 0x14], edx
lea edx, [ebx + ebp*4 + 0xc]
mov esi, dword [0x605b20]
test esi, esi
jne 0x4c3a65
mov edx, dword [esp + 0x24]
mov dword [ebx + ebp*4 + 0xc], edx
jmp 0x4c3a06
mov ebx, edi
mov edi, edx
mov ebp, eax
mov eax, dword [esp + 0x24]
call fcn.0045d600
mov eax, ebp
mov edi, ebx
jmp 0x4c3a06
mov ecx, ebp
call fcn.0045d680
call fcn.0045d680
mov eax, esi
mov ecx, ebx
call fcn.0045d690
mov eax, esi
mov ecx, edx
call fcn.0045d690
nop
call fcn.0045c1c0
jmp fcn.004c3700