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

Disassembly:
mov ecx, dword fs:[0x14]
mov ecx, dword [ecx]
cmp esp, dword [ecx + 8]
jbe 0x4c9837
sub esp, 0x48
mov eax, dword [esp + 0x5c]
mov ecx, dword [esp + 0x68]
cmp eax, ecx
jl 0x4c97aa
test eax, eax
je 0x4c978e
test ecx, ecx
je 0x4c96cb
lea ebx, [eax + 1]
mov dword [esp + 0x40], ebx
mov edx, dword [esp + 0x54]
cmp ebx, edx
jg 0x4c9695
ja 0x4c982f
mov ebp, dword [esp + 0x4c]
cmp ecx, edx
ja 0x4c982a
mov dword [esp + 0x54], edx
mov dword [esp + 0x4c], ebp
mov dword [esp], ebp
mov dword [esp + 4], ecx
mov dword [esp + 8], edx
mov ebx, dword [esp + 0x58]
mov dword [esp + 0xc], ebx
mov dword [esp + 0x10], eax
mov ebx, dword [esp + 0x60]
mov dword [esp + 0x14], ebx
mov esi, dword [esp + 0x64]
mov dword [esp + 0x18], esi
mov dword [esp + 0x1c], ecx
mov esi, dword [esp + 0x6c]
mov dword [esp + 0x20], esi
call fcn.004d36a0
mov eax, dword [esp + 0x24]
mov ecx, dword [esp + 0x5c]
mov edx, dword [esp + 0x68]
cmp ecx, edx
jg 0x4c962b
mov ebx, dword [esp + 0x40]
cmp ecx, ebx
jae 0x4c981a
mov ebp, dword [esp + 0x4c]
mov dword [ebp + ecx*4], eax
mov eax, ebx
jmp 0x4c95f8
mov ebx, esi
test ebx, ebx
jle 0x4c960f
lea esi, [ebx - 1]
cmp eax, esi
jbe 0x4c9811
mov edi, dword [ebp + ebx*4 - 4]
test edi, edi
je 0x4c95f6
mov edx, dword [esp + 0x54]
cmp edx, ebx
jb 0x4c980a
mov dword [esp + 0x70], ebp
mov dword [esp + 0x74], ebx
mov dword [esp + 0x78], edx
add esp, 0x48
ret
mov ebx, dword [esp + 0x54]
cmp ecx, ebx
ja 0x4c9823
sub ebx, edx
mov esi, edx
shl edx, 2
mov edi, ebx
neg ebx
sar ebx, 0x1f
and ebx, edx
mov ebp, dword [esp + 0x4c]
add ebx, ebp
mov dword [esp], ebx
sub ecx, esi
mov dword [esp + 4], ecx
mov dword [esp + 8], edi
mov edi, dword [esp + 0x60]
sub edi, esi
mov esi, edi
xchg edi, ebx
neg ebx
xchg edi, ebx
sar edi, 0x1f
and edi, edx
mov edx, dword [esp + 0x58]
add edx, edi
mov dword [esp + 0xc], edx
mov dword [esp + 0x10], ecx
mov dword [esp + 0x14], esi
mov dword [esp + 0x18], eax
call fcn.004d3720
mov eax, dword [esp + 0x1c]
mov ecx, dword [esp + 0x5c]
jmp 0x4c95de
lea ecx, [0x5dabc0]
mov dword [esp], ecx
mov dword [esp + 4], ebx
lea ecx, [eax + 5]
mov dword [esp + 0x3c], ecx
mov dword [esp + 8], ecx
call fcn.004450a0
mov ebp, dword [esp + 0xc]
mov eax, dword [esp + 0x5c]
mov ecx, dword [esp + 0x68]
mov ebx, dword [esp + 0x40]
mov edx, dword [esp + 0x3c]
jmp 0x4c9586
mov ecx, dword [esp + 0x54]
cmp eax, ecx
jg 0x4c9724
mov edx, eax
mov ebx, dword [esp + 0x4c]
cmp edx, eax
jge 0x4c9720
mov dword [esp + 0x38], ecx
mov dword [esp + 0x30], eax
mov dword [esp + 0x44], ebx
mov ebp, dword [esp + 0x58]
cmp ebx, ebp
je 0x4c9704
mov dword [esp], ebx
mov dword [esp + 4], ebp
shl edx, 2
mov dword [esp + 8], edx
call fcn.0045e7b0
mov eax, dword [esp + 0x44]
mov dword [esp + 0x70], eax
mov eax, dword [esp + 0x30]
mov dword [esp + 0x74], eax
mov eax, dword [esp + 0x38]
mov dword [esp + 0x78], eax
add esp, 0x48
ret
mov edx, eax
jmp 0x4c96dd
cmp eax, 1
jne 0x4c975e
lea eax, [0x5dabc0]
mov dword [esp], eax
mov dword [esp + 4], 1
mov dword [esp + 8], 1
call fcn.004450a0
mov ebx, dword [esp + 0xc]
mov edx, dword [esp + 0x5c]
mov eax, 1
mov ecx, 1
jmp 0x4c96d9
lea ecx, [0x5dabc0]
mov dword [esp], ecx
mov dword [esp + 4], eax
lea ecx, [eax + 4]
mov dword [esp + 0x34], ecx
mov dword [esp + 8], ecx
call fcn.004450a0
mov ebx, dword [esp + 0xc]
mov edx, dword [esp + 0x5c]
mov eax, edx
mov ecx, dword [esp + 0x34]
jmp 0x4c96d9
mov eax, dword [esp + 0x4c]
mov dword [esp + 0x70], eax
mov dword [esp + 0x74], 0
mov eax, dword [esp + 0x54]
mov dword [esp + 0x78], eax
add esp, 0x48
ret
mov edx, dword [esp + 0x4c]
mov dword [esp], edx
mov edx, dword [esp + 0x50]
mov dword [esp + 4], edx
mov edx, dword [esp + 0x54]
mov dword [esp + 8], edx
mov edx, dword [esp + 0x64]
mov dword [esp + 0xc], edx
mov dword [esp + 0x10], ecx
mov ecx, dword [esp + 0x6c]
mov dword [esp + 0x14], ecx
mov ecx, dword [esp + 0x58]
mov dword [esp + 0x18], ecx
mov dword [esp + 0x1c], eax
mov eax, dword [esp + 0x60]
mov dword [esp + 0x20], eax
call fcn.004c9530
mov eax, dword [esp + 0x24]
mov ecx, dword [esp + 0x28]
mov edx, dword [esp + 0x2c]
mov dword [esp + 0x70], eax
mov dword [esp + 0x74], ecx
mov dword [esp + 0x78], edx
add esp, 0x48
ret
mov ecx, ebx
call fcn.0045ded0
mov ecx, eax
mov eax, esi
call fcn.0045de90
mov eax, ecx
mov ecx, ebx
call fcn.0045de90
mov edx, ebx
call fcn.0045ded0
call fcn.0045ded0
mov ecx, ebx
call fcn.0045ded0
nop
call fcn.0045c8b0
jmp fcn.004c9530