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

Disassembly:
mov ecx, dword fs:[0x14]
mov ecx, dword [ecx]
lea eax, [esp - 0x20]
cmp eax, dword [ecx + 8]
jbe 0x6af01d
sub esp, 0xa0
mov eax, 0
mov dword [esp + 0x98], eax
mov dword [esp + 0x9c], eax
mov byte [esp + 0x23], 0
nop
lea ecx, [0x9c1ba0]
mov edx, dword [esp + 0xa4]
mov dword [edx + 0xc], ecx
mov ecx, dword [0xcc7b40]
test ecx, ecx
jne 0x6aefb5
mov eax, dword [esp + 0xb4]
mov dword [edx + 0x10], eax
mov dword [esp], edx
call fcn.006acdf0
mov eax, dword [esp + 4]
lea ecx, [0x937634]
mov dword [esp + 0x9c], ecx
mov ecx, dword [esp + 0xa4]
mov dword [esp + 0x98], ecx
mov dword [esp + 0x40], eax
mov byte [esp + 0x23], 1
mov eax, dword [esp + 0xb4]
mov edx, dword [eax + 0x10]
mov dword [esp], ecx
mov ebx, dword [esp + 0xa8]
mov dword [esp + 4], ebx
mov ebp, dword [esp + 0xac]
mov dword [esp + 8], ebp
mov esi, dword [esp + 0xb0]
mov dword [esp + 0xc], esi
mov dword [esp + 0x10], edx
call fcn.006af2c0
mov eax, dword [esp + 0x1c]
mov ecx, dword [esp + 0x18]
mov edx, dword [esp + 0x14]
mov dword [esp + 0x7c], edx
mov dword [esp + 0x80], ecx
mov dword [esp + 0x84], eax
mov dword [esp], edx
mov dword [esp + 4], ecx
mov dword [esp + 8], eax
call fcn.006b4760
mov eax, dword [esp + 0xc]
mov dword [esp + 0x60], eax
mov ecx, dword [esp + 0x14]
mov dword [esp + 0x3c], ecx
mov edx, dword [esp + 0x10]
mov dword [esp + 0x5c], edx
nop
mov ebx, dword [esp + 0xa4]
mov ebp, dword [ebx + 0x18]
mov dword [esp + 0x88], 0
mov dword [esp + 0x8c], 0
mov dword [esp + 0x90], 0
mov dword [esp + 0x94], 0
lea esi, [0x6bc1c0]
mov dword [esp + 0x88], esi
mov esi, dword [esp + 0xb4]
mov dword [esp + 0x8c], esi
mov dword [esp + 0x90], ebx
mov dword [esp + 0x94], ebp
nop
mov ebp, ecx
and ecx, 0x1f
cmp ecx, 0x11
jbe 0x6aef9f
cmp ecx, 0x12
jne 0x6aec88
lea edi, [ecx - 0x12]
cmp edi, 1
ja 0x6aefc9
test ebp, 0x200
je 0x6aec65
xor ecx, ecx
jmp 0x6aeb08
mov dword [esp], ebx
mov dword [esp + 4], eax
mov dword [esp + 8], ebp
mov eax, dword [esp + 0x54]
mov dword [esp + 0xc], eax
mov eax, dword [esp + 0x58]
mov dword [esp + 0x10], eax
mov eax, dword [esp + 0x38]
mov dword [esp + 0x14], eax
mov eax, dword [esp + 0x88]
lea edx, [esp + 0x88]
call eax
mov eax, dword [esp + 0x28]
lea ecx, [eax + 1]
mov eax, dword [esp + 0x60]
mov edx, dword [esp + 0x5c]
mov ebp, dword [esp + 0x3c]
mov dword [esp + 0x28], ecx
mov dword [esp], eax
mov dword [esp + 4], edx
mov dword [esp + 8], ebp
call fcn.004ae480
movzx eax, byte [esp + 0x18]
mov ecx, dword [esp + 0x14]
mov edx, dword [esp + 0x10]
mov ebx, dword [esp + 0xc]
test al, al
je 0x6aebc9
mov dword [esp + 0x38], ecx
mov dword [esp + 0x58], edx
mov dword [esp + 0x54], ebx
mov eax, dword [esp + 0x28]
mov dword [esp], eax
call fcn.004086d0
mov eax, dword [esp + 4]
nop
movzx ecx, byte [0xcb5158]
test cl, cl
je 0x6aebc1
lea ecx, [0x7f2960]
mov dword [0xcb515c], ecx
mov ebx, dword [0xcc7b40]
test ebx, ebx
jne 0x6aebb4
mov dword [0xcb5160], eax
mov dword [esp + 0x6c], ecx
mov dword [esp + 0x70], eax
mov ebx, dword [esp + 0x6c]
test ebx, ebx
je 0x6aeba9
nop
movzx ebp, byte [ebx + 0xf]
mov esi, ebp
and ebp, 0x1f
xchg esi, eax
test al, 0x20
xchg esi, eax
jne 0x6aeac2
or ebp, 0x80
jmp 0x6aeac2
xor ebx, ebx
xor ebp, ebp
xor eax, eax
jmp 0x6aeac2
lea edi, [0xcb5160]
call fcn.0045a0b0
jmp 0x6aeb79
lea ecx, [0x7f2960]
jmp 0x6aeb79
mov eax, dword [esp + 0x28]
test eax, eax
jne 0x6aec42
mov eax, dword [esp + 0xb4]
mov eax, dword [eax + 0x18]
test eax, eax
jne 0x6aec02
mov byte [esp + 0x23], 0
mov eax, dword [esp + 0x98]
mov dword [esp], eax
mov eax, dword [esp + 0x40]
mov dword [esp + 4], eax
call fcn.006ace20
add esp, 0xa0
ret
mov ecx, dword [esp + 0xa4]
mov dword [esp], ecx
mov ecx, dword [esp + 0xa8]
mov dword [esp + 4], ecx
mov ecx, dword [esp + 0xac]
mov dword [esp + 8], ecx
mov ecx, dword [esp + 0xb0]
mov dword [esp + 0xc], ecx
lea ecx, [0x9c1aa0]
mov dword [esp + 0x10], ecx
mov dword [esp + 0x14], eax
call fcn.006ade60
jmp 0x6aebdf
mov byte [esp + 0x23], 0
mov eax, dword [esp + 0x98]
mov dword [esp], eax
mov eax, dword [esp + 0x40]
mov dword [esp + 4], eax
call fcn.006ace20
add esp, 0xa0
ret
test ebp, 0x80
je 0x6aec84
mov ecx, dword [edx]
test ecx, ecx
setne cl
xor ecx, 1
test cl, cl
je 0x6aeabe
jmp 0x6aebd1
mov ecx, edx
jmp 0x6aec6f
cmp ecx, 0x15
je 0x6aeea9
cmp ecx, 0x17
jne 0x6aee23
mov dword [esp], eax
mov dword [esp + 4], edx
mov dword [esp + 8], ebp
call fcn.004ad070
mov eax, dword [esp + 0xc]
test eax, eax
je 0x6aebd1
xor eax, eax
jmp 0x6aed4e
mov dword [esp + 0x44], edx
mov dword [esp + 0x24], ebx
mov dword [esp + 0x48], eax
mov ecx, dword [esp + 0x60]
mov dword [esp], ecx
mov ebp, dword [esp + 0x5c]
mov dword [esp + 4], ebp
mov esi, dword [esp + 0x3c]
mov dword [esp + 8], esi
mov edi, dword [esp + 0x30]
mov dword [esp + 0xc], edi
call fcn.004ac410
mov eax, dword [esp + 0x18]
mov ecx, dword [esp + 0x14]
mov edx, dword [esp + 0x10]
mov dword [esp + 0x7c], edx
mov dword [esp + 0x80], ecx
mov dword [esp + 0x84], eax
mov ecx, dword [esp + 0x44]
mov dword [esp], ecx
mov ecx, dword [esp + 0x48]
mov dword [esp + 4], ecx
mov ecx, dword [esp + 0x24]
mov dword [esp + 8], ecx
mov ecx, dword [esp + 0x80]
mov edx, dword [esp + 0x7c]
mov dword [esp + 0xc], edx
mov dword [esp + 0x10], ecx
mov dword [esp + 0x14], eax
mov eax, dword [esp + 0x88]
lea edx, [esp + 0x88]
call eax
mov eax, dword [esp + 0x30]
inc eax
mov dword [esp + 0x30], eax
mov ecx, dword [esp + 0x60]
mov dword [esp], ecx
mov edx, dword [esp + 0x5c]
mov dword [esp + 4], edx
mov ebx, dword [esp + 0x3c]
mov dword [esp + 8], ebx
call fcn.004ad070
mov eax, dword [esp + 0x30]
cmp dword [esp + 0xc], eax
jle 0x6aee00
mov dword [esp], eax
call fcn.004086d0
mov eax, dword [esp + 4]
nop
movzx ecx, byte [0xcb5158]
test cl, cl
je 0x6aedf8
lea ecx, [0x7f2960]
mov dword [0xcb515c], ecx
mov edx, dword [0xcc7b40]
test edx, edx
jne 0x6aedeb
mov dword [0xcb5160], eax
mov dword [esp + 0x64], ecx
mov dword [esp + 0x68], eax
mov edx, dword [esp + 0x64]
test edx, edx
je 0x6aede0
nop
movzx ebx, byte [edx + 0xf]
mov ebp, ebx
and ebx, 0x1f
xchg ebp, eax
test al, 0x20
xchg ebp, eax
jne 0x6aecbd
or ebx, 0x80
jmp 0x6aecbd
xor edx, edx
xor ebx, ebx
xor eax, eax
jmp 0x6aecbd
lea edi, [0xcb5160]
call fcn.0045a0b0
jmp 0x6aedb0
lea ecx, [0x7f2960]
jmp 0x6aedb0
mov byte [esp + 0x23], 0
mov eax, dword [esp + 0x98]
mov dword [esp], eax
mov eax, dword [esp + 0x40]
mov dword [esp + 4], eax
call fcn.006ace20
add esp, 0xa0
ret
mov dword [esp + 0x7c], eax
mov dword [esp + 0x80], edx
mov dword [esp + 0x84], ebp
mov dword [esp + 0x74], 0
mov dword [esp + 0x78], 0
lea eax, [0x865a40]
mov dword [esp], eax
lea eax, [esp + 0x7c]
mov dword [esp + 4], eax
call fcn.00408600
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 8]
mov dword [esp + 0x74], ecx
mov dword [esp + 0x78], eax
mov eax, dword [esp + 0xa4]
mov dword [esp], eax
lea ecx, [0x87393a]
mov dword [esp + 4], ecx
mov dword [esp + 8], 0x1b
lea ecx, [esp + 0x74]
mov dword [esp + 0xc], ecx
mov dword [esp + 0x10], 1
mov dword [esp + 0x14], 1
call fcn.006ad1a0
jmp 0x6aebd1
mov dword [esp], eax
mov dword [esp + 4], edx
mov dword [esp + 8], ebp
call fcn.004ad070
mov eax, dword [esp + 0xc]
test eax, eax
je 0x6aebd1
mov eax, dword [esp + 0x60]
mov dword [esp], eax
mov eax, dword [esp + 0x5c]
mov dword [esp + 4], eax
mov eax, dword [esp + 0x3c]
mov dword [esp + 8], eax
call fcn.004d1c70
mov eax, dword [esp + 0xc]
mov ecx, dword [eax + 4]
mov edx, dword [eax]
test ecx, ecx
jle 0x6aef7c
mov dword [esp + 0x4c], eax
mov dword [esp + 0x34], ecx
xor ebx, ebx
jmp 0x6aef0b
mov ebp, dword [esp + 0x50]
lea edx, [ebp + 0xc]
mov ebx, eax
mov eax, dword [esp + 0x4c]
mov ebp, dword [edx + 4]
mov dword [esp + 0x5c], ebp
mov esi, dword [edx + 8]
mov dword [esp + 0x3c], esi
mov edi, dword [edx]
mov esi, dword [eax + 0x10]
mov ebp, dword [eax + 0xc]
cmp ebx, esi
jae 0x6af007
mov dword [esp + 0x50], edx
mov dword [esp + 0x2c], ebx
lea eax, [ebx + ebx*2]
mov ecx, dword [ebp + eax*4 + 8]
mov esi, dword [ebp + eax*4 + 4]
mov eax, dword [ebp + eax*4]
mov dword [esp], edi
mov ebp, dword [esp + 0x5c]
mov dword [esp + 4], ebp
mov ebp, dword [esp + 0x3c]
mov dword [esp + 8], ebp
mov dword [esp + 0xc], eax
mov dword [esp + 0x10], esi
mov dword [esp + 0x14], ecx
mov eax, dword [esp + 0x88]
lea edx, [esp + 0x88]
call eax
mov eax, dword [esp + 0x2c]
inc eax
mov ecx, dword [esp + 0x34]
cmp eax, ecx
jl 0x6aeefe
mov byte [esp + 0x23], 0
mov eax, dword [esp + 0x98]
mov dword [esp], eax
mov eax, dword [esp + 0x40]
mov dword [esp + 4], eax
call fcn.006ace20
add esp, 0xa0
ret
test ecx, ecx
je 0x6aebd1
cmp ecx, 0x11
je 0x6aec9a
jmp 0x6aee23
lea edi, [edx + 0x10]
mov eax, dword [esp + 0xb4]
call fcn.0045a0b0
jmp 0x6ae981
mov dword [esp + 0x3c], ecx
lea eax, [0x818820]
mov dword [esp], eax
call fcn.0040afa0
mov eax, dword [esp + 4]
mov dword [eax + 4], 0x13
lea ecx, [0x86e596]
mov dword [eax], ecx
mov ecx, dword [esp + 0x3c]
mov dword [eax + 8], ecx
lea ecx, [0x802c20]
mov dword [esp], ecx
mov dword [esp + 4], eax
call fcn.00430b50
mov eax, ebx
mov ecx, esi
call fcn.0045a130
nop
call fcn.00430250
add esp, 0xa0
ret
call fcn.00458870
jmp fcn.006ae920