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

Disassembly:
mov ecx, dword fs:[0x14]
mov ecx, dword [ecx]
cmp esp, dword [ecx + 8]
jbe 0x49e704
sub esp, 0x4c
mov eax, dword [esp + 0x60]
mov ecx, dword [esp + 0x6c]
cmp eax, ecx
jl 0x49e64a
test eax, eax
je 0x49e62e
test ecx, ecx
je 0x49e56f
lea ebx, [eax + 1]
mov dword [esp + 0x40], ebx
mov edx, dword [esp + 0x58]
cmp edx, ebx
jl 0x49e464
jb 0x49e6fc
mov ebp, dword [esp + 0x50]
jmp 0x49e497
lea ecx, [0x5729a0]
mov dword [esp], ecx
mov dword [esp + 4], ebx
lea ecx, [eax + 5]
mov dword [esp + 0x30], ecx
mov dword [esp + 8], ecx
call fcn.0043f260
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x6c]
mov ebx, dword [esp + 0x40]
mov edx, dword [esp + 0x30]
mov ebp, eax
mov eax, dword [esp + 0x60]
cmp ecx, edx
ja 0x49e6f7
mov dword [esp + 0x30], edx
mov dword [esp + 0x44], ebp
mov dword [esp], ebp
mov dword [esp + 4], ecx
mov dword [esp + 8], edx
mov ebx, dword [esp + 0x5c]
mov dword [esp + 0xc], ebx
mov dword [esp + 0x10], eax
mov ebx, dword [esp + 0x64]
mov dword [esp + 0x14], ebx
mov esi, dword [esp + 0x68]
mov dword [esp + 0x18], esi
mov dword [esp + 0x1c], ecx
mov esi, dword [esp + 0x70]
mov dword [esp + 0x20], esi
call fcn.004a7820
mov eax, dword [esp + 0x24]
mov ecx, dword [esp + 0x60]
mov edx, dword [esp + 0x6c]
cmp ecx, edx
jle 0x49e554
mov ebx, dword [esp + 0x30]
cmp ecx, ebx
ja 0x49e6f0
sub ebx, edx
mov esi, edx
shl edx, 2
mov edi, ebx
neg ebx
sar ebx, 0x1f
and ebx, edx
mov ebp, dword [esp + 0x44]
add ebx, ebp
mov dword [esp], ebx
sub ecx, esi
mov dword [esp + 4], ecx
mov dword [esp + 8], edi
mov edi, dword [esp + 0x64]
sub edi, esi
mov esi, edi
xchg edi, ebx
neg ebx
xchg edi, ebx
sar edi, 0x1f
and edi, edx
mov edx, dword [esp + 0x5c]
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.004a78a0
mov eax, dword [esp + 0x1c]
mov ecx, dword [esp + 0x60]
mov ebx, dword [esp + 0x40]
cmp ecx, ebx
jae 0x49e6e7
mov ebp, dword [esp + 0x44]
mov dword [ebp + ecx*4], eax
mov eax, ebx
jmp 0x49e6ac
mov ecx, dword [esp + 0x58]
cmp eax, ecx
jg 0x49e57f
mov edx, eax
mov ebx, dword [esp + 0x50]
jmp 0x49e5e5
cmp eax, 1
jne 0x49e5b8
lea eax, [0x5729a0]
mov dword [esp], eax
mov dword [esp + 4], 1
mov dword [esp + 8], 1
call fcn.0043f260
mov eax, dword [esp + 0xc]
mov edx, dword [esp + 0x60]
mov ebx, eax
mov ecx, 1
mov eax, 1
jmp 0x49e5e5
lea ecx, [0x5729a0]
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.0043f260
mov eax, dword [esp + 0xc]
mov edx, dword [esp + 0x60]
mov ebx, eax
mov ecx, dword [esp + 0x34]
mov eax, edx
cmp edx, eax
jl 0x49e5eb
mov edx, eax
mov ebp, dword [esp + 0x5c]
cmp ebp, ebx
je 0x49e61e
mov dword [esp + 0x3c], ecx
mov dword [esp + 0x38], eax
mov dword [esp + 0x48], ebx
mov dword [esp], ebx
mov dword [esp + 4], ebp
shl edx, 2
mov dword [esp + 8], edx
call fcn.004521a0
mov eax, dword [esp + 0x38]
mov ecx, dword [esp + 0x3c]
mov ebx, dword [esp + 0x48]
mov dword [esp + 0x74], ebx
mov dword [esp + 0x78], eax
mov dword [esp + 0x7c], ecx
add esp, 0x4c
ret
mov eax, dword [esp + 0x50]
mov dword [esp + 0x74], eax
mov dword [esp + 0x78], 0
mov eax, dword [esp + 0x58]
mov dword [esp + 0x7c], eax
add esp, 0x4c
ret
mov edx, dword [esp + 0x50]
mov dword [esp], edx
mov edx, dword [esp + 0x54]
mov dword [esp + 4], edx
mov edx, dword [esp + 0x58]
mov dword [esp + 8], edx
mov edx, dword [esp + 0x68]
mov dword [esp + 0xc], edx
mov dword [esp + 0x10], ecx
mov ecx, dword [esp + 0x70]
mov dword [esp + 0x14], ecx
mov ecx, dword [esp + 0x5c]
mov dword [esp + 0x18], ecx
mov dword [esp + 0x1c], eax
mov eax, dword [esp + 0x64]
mov dword [esp + 0x20], eax
call fcn.0049e410
mov eax, dword [esp + 0x24]
mov ecx, dword [esp + 0x28]
mov edx, dword [esp + 0x2c]
mov dword [esp + 0x74], eax
mov dword [esp + 0x78], ecx
mov dword [esp + 0x7c], edx
add esp, 0x4c
ret
mov ebx, esi
test ebx, ebx
jle 0x49e6bf
lea esi, [ebx - 1]
cmp esi, eax
jae 0x49e6de
mov edi, dword [ebp + ebx*4 - 4]
test edi, edi
je 0x49e6aa
mov edx, dword [esp + 0x30]
cmp ebx, edx
ja 0x49e6d7
mov dword [esp + 0x74], ebp
mov dword [esp + 0x78], ebx
mov dword [esp + 0x7c], edx
add esp, 0x4c
ret
mov ecx, ebx
call fcn.00451970
mov ecx, eax
mov eax, esi
call fcn.00451930
mov eax, ecx
mov ecx, ebx
call fcn.00451930
mov edx, ebx
call fcn.00451970
call fcn.00451970
mov ecx, ebx
call fcn.00451970
nop
call fcn.00450480
jmp fcn.0049e410