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

Disassembly:
mov ecx, dword fs:[0x14]
mov ecx, dword [ecx]
lea eax, [esp - 0x1c]
cmp eax, dword [ecx + 8]
jbe 0x6f4bb3
sub esp, 0x9c
mov dword [esp + 0x48], 0
mov dword [esp + 0x4c], 0
mov dword [esp + 0x50], 0
mov dword [esp + 0x3c], 0
mov dword [esp + 0x40], 0
mov dword [esp + 0x44], 0
mov eax, dword [esp + 0xa0]
mov ecx, dword [eax + 0x80]
mov dword [esp + 0x38], ecx
mov edx, dword [eax + 0x88]
mov dword [esp + 0x34], edx
mov ebx, dword [eax + 0x84]
mov dword [esp + 0x30], ebx
cmp dword [eax + 0x64], 2
jl 0x6f4b59
xor ebp, ebp
xchg ebp, eax
test al, al
xchg ebp, eax
jne 0x6f4b4a
mov ebp, dword [eax + 0x54]
mov esi, dword [eax + 0x60]
lea edi, [esi + 1]
cmp dword [eax + 0x58], edi
jbe 0x6f4bac
movzx ebp, byte [esi + ebp + 1]
xchg ebp, eax
cmp al, 0x3c
xchg ebp, eax
jne 0x6f49b2
nop
mov ebp, dword [eax + 0x80]
lea esi, [ebp + 1]
mov dword [eax + 0x80], esi
mov esi, dword [eax + 0x88]
lea edi, [esi + 1]
mov dword [eax + 0x88], edi
mov edi, dword [eax + 0x64]
lea edx, [edi - 1]
mov dword [eax + 0x64], edx
mov edx, dword [eax + 0x54]
mov ebx, dword [eax + 0x60]
cmp dword [eax + 0x58], ebx
jbe 0x6f4ba5
nop
movzx edx, byte [edx + ebx]
test dl, 0x80
jne 0x6f4967
mov edx, 1
add edx, ebx
mov dword [eax + 0x60], edx
nop
lea ebx, [ebp + 2]
mov dword [eax + 0x80], ebx
lea ebx, [esi + 2]
mov dword [eax + 0x88], ebx
lea ebx, [edi - 2]
mov dword [eax + 0x64], ebx
mov ebx, dword [eax + 0x54]
cmp dword [eax + 0x58], edx
jbe 0x6f4b9e
nop
movzx ebx, byte [edx + ebx]
test bl, 0x80
jne 0x6f4924
mov ebx, 1
add edx, ebx
mov dword [eax + 0x60], edx
mov dword [esp], eax
mov byte [esp + 4], 0
mov dword [esp + 8], 0
mov dword [esp + 0xc], 0
mov dword [esp + 0x10], 0
mov dword [esp + 0x14], ecx
mov edx, dword [esp + 0x30]
mov dword [esp + 0x18], edx
mov ebx, dword [esp + 0x34]
mov dword [esp + 0x1c], ebx
lea ebp, [esp + 0x3c]
mov dword [esp + 0x20], ebp
call fcn.006f4fc0
movzx eax, byte [esp + 0x24]
test al, al
je 0x6f4915
mov ecx, dword [esp + 0xa0]
mov edx, dword [ecx + 0x54]
mov ebx, dword [ecx + 0x60]
cmp dword [ecx + 0x58], ebx
jbe 0x6f4b97
movzx edx, byte [edx + ebx]
cmp dl, 0x3e
je 0x6f46b4
nop
mov dword [ecx], 3
mov dword [ecx + 0x24], 0x14
mov edx, dword [0xb91180]
test edx, edx
jne 0x6f46a4
lea edx, [0x81b47d]
mov dword [ecx + 0x20], edx
mov edx, dword [esp + 0x38]
mov dword [ecx + 0x28], edx
mov edx, dword [esp + 0x30]
mov dword [ecx + 0x2c], edx
mov edx, dword [esp + 0x34]
mov dword [ecx + 0x30], edx
mov dword [ecx + 8], 0x1d
mov edx, dword [0xb91180]
test edx, edx
jne 0x6f4694
lea eax, [0x820d44]
mov dword [ecx + 4], eax
mov eax, dword [ecx + 0x88]
mov edx, dword [ecx + 0x84]
mov ebx, dword [ecx + 0x80]
mov dword [ecx + 0x14], ebx
mov dword [ecx + 0x18], edx
mov dword [ecx + 0x1c], eax
mov byte [esp + 0xa8], 0
add esp, 0x9c
ret
lea edi, [ecx + 4]
lea eax, [0x820d44]
call fcn.0044f0d0
jmp 0x6f466a
lea edi, [ecx + 0x20]
lea eax, [0x81b47d]
call fcn.0044f0d0
jmp 0x6f463b
nop
inc dword [ecx + 0x80]
inc dword [ecx + 0x88]
dec dword [ecx + 0x64]
mov eax, dword [ecx + 0x54]
mov edx, dword [ecx + 0x60]
cmp dword [ecx + 0x58], edx
jbe 0x6f4b90
nop
movzx eax, byte [eax + edx]
test al, 0x80
jne 0x6f48d4
mov eax, 1
add eax, edx
mov dword [ecx + 0x60], eax
cmp dword [ecx + 0x64], 1
jl 0x6f48b0
xor eax, eax
test al, al
jne 0x6f48a1
mov eax, dword [ecx + 0x5c]
mov edx, dword [ecx + 0x54]
mov ebx, dword [ecx + 0x58]
mov ebp, dword [ecx + 0x60]
mov dword [esp], edx
mov dword [esp + 4], ebx
mov dword [esp + 8], eax
mov dword [esp + 0xc], ebp
call fcn.006fcab0
movzx eax, byte [esp + 0x10]
test al, al
je 0x6f4800
mov eax, dword [esp + 0xa0]
mov ecx, dword [eax + 0x88]
mov dword [esp + 0x2c], ecx
mov edx, dword [eax + 0x84]
mov eax, dword [eax + 0x80]
lea edi, [esp + 0x54]
lea esi, [0x8bc460]
call fcn.0044f62c
mov ecx, dword [esp + 0x38]
mov dword [esp + 0x58], ecx
mov ecx, dword [esp + 0x30]
mov dword [esp + 0x5c], ecx
mov ecx, dword [esp + 0x34]
mov dword [esp + 0x60], ecx
mov dword [esp + 0x64], eax
mov dword [esp + 0x68], edx
mov eax, dword [esp + 0x2c]
mov dword [esp + 0x6c], eax
mov eax, dword [esp + 0x48]
mov ecx, dword [esp + 0x50]
mov edx, dword [esp + 0x4c]
mov dword [esp + 0x74], eax
mov dword [esp + 0x78], edx
mov dword [esp + 0x7c], ecx
mov eax, dword [esp + 0x44]
mov ecx, dword [esp + 0x40]
mov edx, dword [esp + 0x3c]
mov dword [esp + 0x80], edx
mov dword [esp + 0x84], ecx
mov dword [esp + 0x88], eax
mov edi, dword [esp + 0xa4]
test byte [edi], al
mov eax, dword [0xb91180]
test eax, eax
jne 0x6f47e4
lea esi, [esp + 0x54]
call fcn.0044f62c
mov byte [esp + 0xa8], 1
add esp, 0x9c
ret
lea eax, [0x7f9060]
mov dword [esp], eax
mov dword [esp + 4], edi
lea eax, [esp + 0x54]
mov dword [esp + 8], eax
call fcn.004101b0
jmp 0x6f47d5
nop
mov ecx, dword [esp + 0xa0]
mov dword [ecx], 3
mov dword [ecx + 0x24], 0x14
mov edx, dword [0xb91180]
test edx, edx
jne 0x6f4891
lea edx, [0x81b47d]
mov dword [ecx + 0x20], edx
mov edx, dword [esp + 0x38]
mov dword [ecx + 0x28], edx
mov edx, dword [esp + 0x30]
mov dword [ecx + 0x2c], edx
mov edx, dword [esp + 0x34]
mov dword [ecx + 0x30], edx
mov dword [ecx + 8], 0x2e
mov edx, dword [0xb91180]
test edx, edx
jne 0x6f4881
lea eax, [0x829e27]
mov dword [ecx + 4], eax
mov eax, dword [ecx + 0x84]
mov edx, dword [ecx + 0x88]
mov ebx, dword [ecx + 0x80]
mov dword [ecx + 0x14], ebx
mov dword [ecx + 0x18], eax
mov dword [ecx + 0x1c], edx
mov byte [esp + 0xa8], 0
add esp, 0x9c
ret
lea edi, [ecx + 4]
lea eax, [0x829e27]
call fcn.0044f0d0
jmp 0x6f4857
lea edi, [ecx + 0x20]
lea eax, [0x81b47d]
call fcn.0044f0d0
jmp 0x6f4828
mov byte [esp + 0xa8], 0
add esp, 0x9c
ret
mov dword [esp], ecx
mov dword [esp + 4], 1
call fcn.006ec7e0
movzx eax, byte [esp + 8]
xor eax, 1
mov ecx, dword [esp + 0xa0]
jmp 0x6f46f7
mov ebx, eax
and eax, 0xffffffe0
cmp al, 0xc0
jne 0x6f48e8
mov eax, 2
jmp 0x6f46e6
mov eax, ebx
and ebx, 0xfffffff0
cmp bl, 0xe0
jne 0x6f48fc
mov eax, 3
jmp 0x6f46e6
and eax, 0xfffffff8
cmp al, 0xf0
jne 0x6f490e
mov eax, 4
jmp 0x6f46e6
xor eax, eax
jmp 0x6f46e6
mov byte [esp + 0xa8], 0
add esp, 0x9c
ret
mov ebp, ebx
and ebx, 0xffffffe0
cmp bl, 0xc0
jne 0x6f4938
mov ebx, 2
jmp 0x6f45a4
mov ebx, ebp
and ebp, 0xfffffff0
xchg ebp, eax
cmp al, 0xe0
xchg ebp, eax
jne 0x6f494e
mov ebx, 3
jmp 0x6f45a4
and ebx, 0xfffffff8
cmp bl, 0xf0
jne 0x6f4960
mov ebx, 4
jmp 0x6f45a4
xor ebx, ebx
jmp 0x6f45a4
mov byte [esp + 0x2b], dl
and edx, 0xffffffe0
cmp dl, 0xc0
jne 0x6f497d
mov edx, 2
jmp 0x6f4567
movzx edx, byte [esp + 0x2b]
and edx, 0xfffffff0
cmp dl, 0xe0
jne 0x6f4994
mov edx, 3
jmp 0x6f4567
movzx edx, byte [esp + 0x2b]
and edx, 0xfffffff8
cmp dl, 0xf0
jne 0x6f49ab
mov edx, 4
jmp 0x6f4567
xor edx, edx
jmp 0x6f4567
mov dword [esp], eax
mov byte [esp + 4], 0
mov dword [esp + 8], ecx
mov dword [esp + 0xc], ebx
mov dword [esp + 0x10], edx
lea ebp, [esp + 0x48]
mov dword [esp + 0x14], ebp
call fcn.006f4bc0
movzx eax, byte [esp + 0x18]
test al, al
je 0x6f4b3b
mov eax, dword [esp + 0x4c]
mov ecx, dword [esp + 0x48]
test eax, eax
jbe 0x6f4b89
cmp byte [ecx], 0x21
jne 0x6f4a08
cmp eax, 1
jle 0x6f4a08
movzx eax, byte [eax + ecx - 1]
cmp al, 0x21
je 0x6f4ad7
mov eax, dword [esp + 0xa0]
mov dword [esp], eax
mov byte [esp + 4], 0
mov ecx, dword [esp + 0x50]
mov edx, dword [esp + 0x4c]
mov ebx, dword [esp + 0x48]
mov dword [esp + 8], ebx
mov dword [esp + 0xc], edx
mov dword [esp + 0x10], ecx
mov ecx, dword [esp + 0x38]
mov dword [esp + 0x14], ecx
mov edx, dword [esp + 0x30]
mov dword [esp + 0x18], edx
mov ebx, dword [esp + 0x34]
mov dword [esp + 0x1c], ebx
lea ebp, [esp + 0x3c]
mov dword [esp + 0x20], ebp
call fcn.006f4fc0
movzx eax, byte [esp + 0x24]
test al, al
je 0x6f4ac8
lea eax, [0x79bb00]
mov dword [esp], eax
call fcn.00409f80
movzx eax, byte [0x8abd5f]
mov ecx, dword [esp + 4]
mov byte [ecx], al
mov dword [esp + 0x48], ecx
mov dword [esp + 0x4c], 1
mov dword [esp + 0x50], 1
mov eax, dword [esp + 0x3c]
mov edx, dword [esp + 0x44]
mov ebx, dword [esp + 0x40]
test ebx, ebx
jne 0x6f4abc
mov dword [esp + 0x48], eax
mov dword [esp + 0x4c], ebx
mov dword [esp + 0x50], edx
mov dword [esp + 0x3c], ecx
mov dword [esp + 0x40], 1
mov dword [esp + 0x44], 1
mov ecx, dword [esp + 0xa0]
jmp 0x6f46eb
mov byte [esp + 0xa8], 0
add esp, 0x9c
ret
mov eax, dword [esp + 0xa0]
mov dword [esp], eax
mov byte [esp + 4], 0
mov dword [esp + 8], 0
mov dword [esp + 0xc], 0
mov dword [esp + 0x10], 0
mov ecx, dword [esp + 0x38]
mov dword [esp + 0x14], ecx
mov edx, dword [esp + 0x30]
mov dword [esp + 0x18], edx
mov ebx, dword [esp + 0x34]
mov dword [esp + 0x1c], ebx
lea ebp, [esp + 0x3c]
mov dword [esp + 0x20], ebp
call fcn.006f4fc0
movzx eax, byte [esp + 0x24]
test al, al
jne 0x6f4abc
mov byte [esp + 0xa8], 0
add esp, 0x9c
ret
mov byte [esp + 0xa8], 0
add esp, 0x9c
ret
mov byte [esp + 0xa8], 0
add esp, 0x9c
ret
mov dword [esp], eax
mov dword [esp + 4], 2
call fcn.006ec7e0
movzx ebp, byte [esp + 8]
xor ebp, 1
mov eax, dword [esp + 0xa0]
mov ecx, dword [esp + 0x38]
mov edx, dword [esp + 0x34]
mov ebx, dword [esp + 0x30]
jmp 0x6f44f1
call fcn.004287c0
ud2
call fcn.004287c0
ud2
call fcn.004287c0
ud2
call fcn.004287c0
ud2
call fcn.004287c0
ud2
call fcn.004287c0
ud2
call fcn.0044d880
jmp fcn.006f4470