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

Disassembly:
mov ecx, dword fs:[0x14]
mov ecx, dword [ecx]
cmp esp, dword [ecx + 8]
jbe 0x4a88fd
sub esp, 0x6c
mov eax, dword [esp + 0x84]
mov ecx, dword [esp + 0x7c]
cmp eax, ecx
je 0x4a834c
xor edx, edx
jmp 0x4a8379
mov eax, dword [esp + 0x78]
mov dword [esp], eax
mov edx, dword [esp + 0x80]
mov dword [esp + 4], edx
mov dword [esp + 8], ecx
call fcn.00402a50
movzx eax, byte [esp + 0xc]
mov ecx, dword [esp + 0x7c]
mov edx, eax
mov eax, dword [esp + 0x84]
test dl, dl
jne 0x4a8388
mov edx, dword [esp + 0x88]
test edx, edx
jne 0x4a83a2
mov eax, dword [esp + 0x70]
mov dword [esp + 0x8c], eax
mov eax, dword [esp + 0x74]
mov dword [esp + 0x90], eax
add esp, 0x6c
ret
mov eax, dword [esp + 0x70]
mov dword [esp], eax
mov edx, dword [esp + 0x74]
mov dword [esp + 4], edx
mov ebx, dword [esp + 0x78]
mov dword [esp + 8], ebx
mov dword [esp + 0xc], ecx
call fcn.004a6a20
mov eax, dword [esp + 0x10]
test eax, eax
je 0x4a84d4
mov ebx, dword [esp + 0x88]
test ebx, ebx
jl 0x4a83df
cmp ebx, eax
jg 0x4a83df
mov eax, ebx
mov dword [esp + 0x5c], 0
mov dword [esp + 0x60], 0
mov dword [esp + 0x64], 0
mov dword [esp + 0x68], 0
nop
lea ebx, [esp + 0x5c]
mov dword [esp + 0x5c], ebx
mov ebp, dword [esp + 0x84]
mov esi, dword [esp + 0x7c]
mov edi, ebp
sub ebp, esi
imul ebp, eax
mov ecx, dword [esp + 0x74]
add ebp, ecx
test ebp, ebp
jl 0x4a88e4
mov dword [esp + 0x40], eax
mov edx, edi
mov edi, dword [esp + 0x64]
mov ebx, dword [esp + 0x68]
mov dword [esp + 0x3c], ebx
sub ebx, edi
cmp ebx, ebp
jge 0x4a84bf
mov dword [esp + 0x30], edi
lea eax, [0x4bade0]
mov dword [esp], eax
mov dword [esp + 4], edi
mov ecx, dword [esp + 0x3c]
lea ecx, [ebp + ecx*2]
mov dword [esp + 0x34], ecx
mov dword [esp + 8], ecx
call fcn.00448af0
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x60]
mov edx, dword [esp + 0x64]
mov ebx, dword [esp + 0x30]
cmp edx, ebx
jl 0x4a847c
mov edx, ebx
cmp ecx, eax
je 0x4a849c
mov dword [esp + 0x58], eax
mov dword [esp], eax
mov dword [esp + 4], ecx
mov dword [esp + 8], edx
call fcn.00460d10
mov eax, dword [esp + 0x58]
mov ebx, dword [esp + 0x30]
mov dword [esp + 0x64], ebx
mov ebx, dword [esp + 0x34]
mov dword [esp + 0x68], ebx
mov dword [esp + 0x60], eax
mov eax, dword [esp + 0x40]
mov ecx, dword [esp + 0x74]
mov edx, dword [esp + 0x84]
mov esi, dword [esp + 0x7c]
mov ebx, dword [esp + 0x78]
mov ebp, dword [esp + 0x70]
xor edi, edi
xor edi, edi
mov dword [esp + 0x20], edi
jmp 0x4a855f
mov eax, dword [esp + 0x70]
mov dword [esp + 0x8c], eax
mov eax, dword [esp + 0x74]
mov dword [esp + 0x90], eax
add esp, 0x6c
ret
mov dword [esp + 0x3c], ebp
mov dword [esp + 0x38], ebx
mov dword [esp + 0x54], esi
add eax, esi
mov dword [esp], eax
mov eax, dword [esp + 0x80]
mov dword [esp + 4], eax
mov dword [esp + 8], edx
call fcn.00460d10
mov eax, dword [esp + 0x38]
mov dword [esp + 0x64], eax
mov eax, dword [esp + 0x3c]
mov dword [esp + 0x68], eax
mov eax, dword [esp + 0x54]
mov dword [esp + 0x60], eax
mov eax, dword [esp + 0x2c]
lea edi, [eax + 1]
mov eax, dword [esp + 0x28]
mov esi, dword [esp + 0x7c]
add eax, esi
mov ecx, dword [esp + 0x74]
mov edx, dword [esp + 0x78]
mov ebx, dword [esp + 0x40]
mov ebp, dword [esp + 0x70]
mov edx, dword [esp + 0x84]
mov ebx, dword [esp + 0x78]
mov dword [esp + 0x20], eax
mov eax, dword [esp + 0x40]
cmp edi, eax
jge 0x4a878d
mov dword [esp + 0x2c], edi
test esi, esi
jne 0x4a85d9
test edi, edi
jle 0x4a85c7
mov ebx, dword [esp + 0x20]
cmp ecx, ebx
jb 0x4a88dd
sub ecx, ebx
mov edx, ecx
neg ecx
sar ecx, 0x1f
and ecx, ebx
add ecx, ebp
mov dword [esp], ecx
mov dword [esp + 4], edx
call fcn.00467af0
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x20]
add eax, ecx
mov ecx, dword [esp + 0x74]
mov edx, dword [esp + 0x84]
mov ebx, dword [esp + 0x78]
mov ebp, dword [esp + 0x70]
mov esi, dword [esp + 0x7c]
mov edi, dword [esp + 0x2c]
mov dword [esp + 0x28], eax
mov eax, dword [esp + 0x40]
jmp 0x4a8633
mov dword [esp + 0x44], eax
mov eax, dword [esp + 0x20]
mov dword [esp + 0x28], eax
mov eax, dword [esp + 0x44]
jmp 0x4a8633
mov edi, dword [esp + 0x20]
cmp ecx, edi
jb 0x4a88d6
sub ecx, edi
mov edx, ecx
neg ecx
sar ecx, 0x1f
and ecx, edi
add ecx, ebp
mov dword [esp], ecx
mov dword [esp + 4], edx
mov dword [esp + 8], ebx
mov dword [esp + 0xc], esi
call fcn.004a8b80
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x20]
add eax, ecx
mov ecx, dword [esp + 0x74]
mov edx, dword [esp + 0x84]
mov ebx, dword [esp + 0x78]
mov ebp, dword [esp + 0x70]
mov esi, dword [esp + 0x7c]
mov edi, dword [esp + 0x2c]
mov dword [esp + 0x28], eax
mov eax, dword [esp + 0x40]
mov ebx, dword [esp + 0x28]
cmp ecx, ebx
jb 0x4a88cd
mov esi, dword [esp + 0x20]
cmp esi, ebx
ja 0x4a88c4
sub ebx, esi
mov dword [esp + 0x24], ebx
neg ebx
sar ebx, 0x1f
and esi, ebx
lea ebx, [esi + ebp]
nop
mov esi, dword [esp + 0x5c]
test esi, esi
je 0x4a867a
lea ebp, [esp + 0x5c]
cmp esi, ebp
jne 0x4a88ac
mov ebp, dword [esp + 0x70]
lea esi, [esp + 0x5c]
jmp 0x4a8682
lea esi, [esp + 0x5c]
mov dword [esp + 0x5c], esi
mov ebp, dword [esp + 0x64]
mov ecx, dword [esp + 0x24]
lea eax, [ebp + ecx]
mov edi, dword [esp + 0x68]
mov edx, dword [esp + 0x60]
cmp edi, eax
jae 0x4a86d8
mov dword [esp + 0x50], ebx
mov dword [esp + 0x3c], ebp
mov dword [esp], edx
mov dword [esp + 4], eax
mov dword [esp + 8], edi
mov dword [esp + 0xc], ecx
lea eax, [0x4bade0]
mov dword [esp + 0x10], eax
call fcn.00448bb0
mov edx, dword [esp + 0x14]
mov eax, dword [esp + 0x18]
mov edi, dword [esp + 0x1c]
mov ecx, dword [esp + 0x24]
mov ebx, dword [esp + 0x50]
mov ebp, dword [esp + 0x3c]
mov dword [esp + 0x3c], edi
mov dword [esp + 0x38], eax
mov dword [esp + 0x54], edx
add ebp, edx
mov dword [esp], ebp
mov dword [esp + 4], ebx
mov dword [esp + 8], ecx
call fcn.00460d10
mov eax, dword [esp + 0x38]
mov dword [esp + 0x64], eax
mov eax, dword [esp + 0x3c]
mov dword [esp + 0x68], eax
mov eax, dword [esp + 0x54]
mov dword [esp + 0x60], eax
nop
nop
mov eax, dword [esp + 0x5c]
test eax, eax
je 0x4a8725
lea ecx, [esp + 0x5c]
cmp eax, ecx
je 0x4a8731
jmp 0x4a8894
lea eax, [esp + 0x5c]
mov dword [esp + 0x5c], eax
lea ecx, [esp + 0x5c]
mov eax, dword [esp + 0x64]
mov edx, dword [esp + 0x84]
lea ebx, [edx + eax]
mov ebp, dword [esp + 0x68]
mov esi, dword [esp + 0x60]
cmp ebp, ebx
jae 0x4a84ee
mov dword [esp + 0x3c], eax
mov dword [esp], esi
mov dword [esp + 4], ebx
mov dword [esp + 8], ebp
mov dword [esp + 0xc], edx
lea eax, [0x4bade0]
mov dword [esp + 0x10], eax
call fcn.00448bb0
mov esi, dword [esp + 0x14]
mov ebx, dword [esp + 0x18]
mov ebp, dword [esp + 0x1c]
mov eax, dword [esp + 0x3c]
mov edx, dword [esp + 0x84]
jmp 0x4a84ee
mov eax, dword [esp + 0x20]
cmp ecx, eax
jb 0x4a888f
sub ecx, eax
mov edx, ecx
neg ecx
sar ecx, 0x1f
and eax, ecx
add eax, ebp
nop
mov ecx, dword [esp + 0x5c]
test ecx, ecx
je 0x4a87bc
lea ebx, [esp + 0x5c]
cmp ecx, ebx
je 0x4a87c4
jmp 0x4a8877
lea ecx, [esp + 0x5c]
mov dword [esp + 0x5c], ecx
mov ecx, dword [esp + 0x64]
lea ebx, [ecx + edx]
mov ebp, dword [esp + 0x68]
mov esi, dword [esp + 0x60]
cmp ebp, ebx
jae 0x4a8819
mov dword [esp + 0x40], ecx
mov dword [esp + 0x3c], edx
mov dword [esp + 0x4c], eax
mov dword [esp], esi
mov dword [esp + 4], ebx
mov dword [esp + 8], ebp
mov dword [esp + 0xc], edx
lea eax, [0x4bade0]
mov dword [esp + 0x10], eax
call fcn.00448bb0
mov esi, dword [esp + 0x14]
mov ebx, dword [esp + 0x18]
mov ebp, dword [esp + 0x1c]
mov eax, dword [esp + 0x4c]
mov ecx, dword [esp + 0x40]
mov edx, dword [esp + 0x3c]
mov dword [esp + 0x40], ebp
mov dword [esp + 0x3c], ebx
mov dword [esp + 0x54], esi
add ecx, esi
mov dword [esp], ecx
mov dword [esp + 4], eax
mov dword [esp + 8], edx
call fcn.00460d10
mov eax, dword [esp + 0x3c]
mov dword [esp + 0x64], eax
mov ecx, dword [esp + 0x40]
mov dword [esp + 0x68], ecx
mov ecx, dword [esp + 0x54]
mov dword [esp + 0x60], ecx
mov edx, ecx
neg ecx
cmp eax, ecx
ja 0x4a8869
mov dword [esp + 0x8c], edx
mov dword [esp + 0x90], eax
add esp, 0x6c
ret
test edx, edx
je 0x4a8872
call fcn.0045a770
call fcn.0045a7b0
lea eax, [0x4bac20]
mov dword [esp], eax
lea eax, [0x4edca8]
mov dword [esp + 4], eax
call fcn.004342e0
call fcn.00460520
lea eax, [0x4bac20]
mov dword [esp], eax
lea eax, [0x4edca8]
mov dword [esp + 4], eax
call fcn.004342e0
lea eax, [0x4bac20]
mov dword [esp], eax
lea eax, [0x4edca8]
mov dword [esp + 4], eax
call fcn.004342e0
mov eax, esi
mov ecx, ebx
call fcn.00460520
mov edx, ecx
mov ecx, ebx
call fcn.004604e0
mov eax, edi
call fcn.00460520
mov eax, ebx
call fcn.00460520
lea eax, [0x4bac20]
mov dword [esp], eax
lea eax, [0x4edee8]
mov dword [esp + 4], eax
call fcn.004342e0
nop
call fcn.0045f030
jmp fcn.004a8320