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

Disassembly:
mov ecx, dword fs:[0x14]
mov ecx, dword [ecx]
cmp esp, dword [ecx + 8]
jbe 0x6fc926
sub esp, 0x64
mov eax, 0
lea edi, [esp + 0x4c]
call fcn.0044c95a
mov eax, dword [esp + 0x68]
mov edx, dword [eax]
movzx edx, byte [edx + 0x44]
mov byte [eax + 0x50], 0
mov ebx, dword [esp + 0x6c]
mov ebp, dword [ebx]
mov ecx, edx
mov edx, dword [ebp + 4]
mov ebp, dword [ebp]
mov esi, eax
mov eax, dword [esp + 0x78]
cmp eax, edx
jae 0x6fc91f
mov byte [esp + 0x23], cl
lea edx, [eax + eax*2]
shl edx, 3
movzx edx, byte [ebp + edx]
cmp dl, 5
je 0x6fc889
mov edx, dword [ebx + 4]
inc edx
imul edx, eax
mov ebp, dword [esp + 0x7c]
add edx, ebp
mov dword [esp + 0x3c], edx
mov edi, ebp
mov ebp, dword [ebx + 0x24]
mov eax, dword [ebx + 0x20]
shr edx, 5
cmp edx, ebp
jae 0x6fc918
mov ebp, dword [eax + edx*4]
mov ecx, dword [esp + 0x3c]
mov ebx, 1
shl ebx, cl
test ebp, ebx
je 0x6fc87a
xor eax, eax
test al, al
je 0x6fc871
mov eax, dword [esp + 0x6c]
mov ecx, dword [eax + 0x1c]
mov edx, dword [eax + 0x18]
mov ebx, dword [eax + 0x14]
lea ebp, [edx + 1]
cmp ebp, ecx
jg 0x6fc814
lea ecx, [edx + 1]
mov dword [eax + 0x18], ecx
lea ecx, [edx + edx*2]
mov edx, dword [esp + 0x78]
mov dword [ebx + ecx*4], edx
lea edx, [ebx + ecx*4]
mov byte [edx + 4], 0
mov dword [ebx + ecx*4 + 8], edi
mov ecx, dword [esp + 0x70]
mov edx, dword [esp + 0x74]
jmp 0x6fc093
mov eax, dword [esp + 0x70]
mov ecx, dword [esp + 0x74]
mov edx, dword [esp + 0x28]
movzx ebx, byte [esp + 0x22]
mov eax, edi
mov edx, dword [esp + 0x48]
mov ebp, dword [esp + 0x70]
mov edi, ecx
mov dword [esp + 0x30], esi
mov ecx, dword [esp + 0x28]
mov esi, dword [esp + 0x68]
mov edx, dword [eax]
mov ebp, dword [edx]
mov edx, dword [edx + 4]
mov eax, dword [esp + 0x30]
cmp eax, edx
jae 0x6fc90a
mov dword [esp + 0x2c], ecx
mov byte [esp + 0x22], bl
lea edx, [eax + eax*2]
lea ebp, [ebp + edx*8]
lea edi, [esp + 0x4c]
mov esi, ebp
call fcn.0044ce34
movzx ecx, byte [esp + 0x4c]
cmp cl, 4
ja 0x6fc68f
shl edx, 3
cmp cl, 1
ja 0x6fc417
test cl, cl
jne 0x6fc1b6
test bl, bl
je 0x6fc0f4
mov eax, dword [esp + 0x54]
mov ecx, dword [esp + 0x2c]
xor edx, edx
mov ebx, dword [esp + 0x6c]
mov ebp, dword [ebx + 4]
inc ebp
imul ebp, eax
add ebp, ecx
mov dword [esp + 0x3c], ebp
mov esi, eax
mov eax, dword [ebx + 0x24]
mov edi, ebx
mov ebx, dword [ebx + 0x20]
shr ebp, 5
cmp ebp, eax
jae 0x6fc911
mov dword [esp + 0x28], ecx
mov byte [esp + 0x22], dl
mov eax, dword [ebx + ebp*4]
mov ecx, dword [esp + 0x3c]
mov edx, 1
shl edx, cl
test eax, edx
je 0x6fc0e8
xor eax, eax
test al, al
jne 0x6fbfad
mov ebx, dword [esp + 0x70]
mov ebp, dword [esp + 0x74]
mov eax, edi
mov ecx, ebx
mov edx, ebp
mov esi, dword [esp + 0x68]
mov ebx, dword [eax + 0x18]
mov ebp, dword [eax + 0x14]
test ebx, ebx
jle 0x6fc805
mov edi, edx
lea edx, [ebx - 1]
lea ebx, [ebx + ebx*2]
mov dword [esp + 0x3c], ebx
mov ecx, dword [ebp + ebx*4 - 0xc]
mov dword [esp + 0x34], ecx
shl ebx, 2
mov ecx, dword [esp + 0x3c]
mov ecx, dword [ebp + ecx*4 - 4]
movzx ebx, byte [ebx + ebp - 8]
mov dword [eax + 0x18], edx
lea edx, [eax + 0x14]
mov dword [esp + 0x48], edx
mov ebp, dword [esp + 0x70]
mov dword [esp + 0x40], eax
mov eax, dword [esp + 0x34]
mov dword [esp + 0x30], eax
mov eax, dword [esp + 0x40]
jmp 0x6fbfd6
or edx, eax
mov dword [ebx + ebp*4], edx
mov eax, 1
jmp 0x6fc079
mov ebp, dword [esp + 0x6c]
mov ecx, ebx
mov ebx, dword [ebp]
mov esi, ebp
mov ebp, dword [ebx + 4]
mov ebx, dword [ebx]
cmp eax, ebp
jae 0x6fc8cf
movzx edx, byte [edx + ebx]
cmp dl, 5
je 0x6fc1b0
mov edx, dword [esi + 0x18]
mov ebx, dword [esi + 0x14]
mov ebp, dword [esi + 0x1c]
mov edi, eax
lea eax, [edx + 1]
cmp eax, ebp
jg 0x6fc156
lea eax, [edx + 1]
mov dword [esi + 0x18], eax
lea eax, [edx + edx*2]
mov dword [ebx + eax*4], edi
lea edx, [ebx + eax*4]
mov byte [edx + 4], 1
mov edx, dword [esp + 0x2c]
mov dword [ebx + eax*4 + 8], edx
mov eax, dword [esp + 0x50]
mov ecx, edx
movzx edx, byte [esp + 0x22]
jmp 0x6fc037
lea ecx, [0x846f40]
mov dword [esp], ecx
mov dword [esp + 4], ebx
mov dword [esp + 8], edx
mov dword [esp + 0xc], ebp
mov dword [esp + 0x10], eax
call fcn.00438c30
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
mov edx, dword [esp + 0x1c]
mov ebx, dword [esp + 0x6c]
mov dword [ebx + 0x1c], edx
mov edx, dword [0xc6f140]
test edx, edx
jne 0x6fc1a5
mov dword [ebx + 0x14], eax
mov esi, ebx
mov edi, dword [esp + 0x30]
mov edx, ecx
mov ebx, eax
movzx ecx, byte [esp + 0x22]
jmp 0x6fc12b
mov edi, dword [esp + 0x48]
call fcn.0044c860
jmp 0x6fc194
mov edx, dword [esp + 0x2c]
jmp 0x6fc146
mov eax, dword [esp + 0x6c]
mov edx, dword [eax]
mov ebp, dword [edx]
mov edx, dword [edx + 4]
mov ebx, dword [esp + 0x50]
cmp ebx, edx
jae 0x6fc8c8
mov esi, ebx
lea ebx, [ebx + ebx*2]
shl ebx, 3
movzx ebx, byte [ebx + ebp]
mov edi, ebp
lea ebp, [ebx - 7]
xchg ebp, eax
cmp al, 3
xchg ebp, eax
ja 0x6fc30b
mov ebx, dword [esp + 0x54]
cmp ebx, edx
jae 0x6fc8c1
lea edx, [ebx + ebx*2]
shl edx, 3
movzx edx, byte [edx + edi]
cmp dl, 5
je 0x6fc304
mov edx, dword [eax + 4]
inc edx
imul edx, ebx
mov ebp, dword [esp + 0x2c]
add edx, ebp
mov dword [esp + 0x3c], edx
mov esi, ebp
mov ebp, dword [eax + 0x24]
mov edi, ebx
mov ebx, dword [eax + 0x20]
shr edx, 5
cmp edx, ebp
jae 0x6fc8ba
mov ebp, dword [ebx + edx*4]
mov ecx, dword [esp + 0x3c]
mov eax, 1
shl eax, cl
test ebp, eax
je 0x6fc2f5
xor eax, eax
test al, al
je 0x6fc2ef
mov eax, dword [esp + 0x6c]
mov edx, dword [eax + 0x1c]
mov ebx, dword [eax + 0x18]
mov ebp, dword [eax + 0x14]
mov ecx, eax
lea eax, [ebx + 1]
cmp eax, edx
jg 0x6fc290
lea eax, [ebx + 1]
mov dword [ecx + 0x18], eax
lea eax, [ebx + ebx*2]
mov dword [ebp + eax*4], edi
lea edx, [ebp + eax*4]
mov byte [edx + 4], 0
mov dword [ebp + eax*4 + 8], esi
mov eax, dword [esp + 0x54]
mov ebx, dword [ecx + 4]
mov ecx, ebx
movzx edx, byte [esp + 0x22]
jmp 0x6fc037
mov dword [esp + 0x38], edi
lea ecx, [0x846f40]
mov dword [esp], ecx
mov dword [esp + 4], ebp
mov dword [esp + 8], ebx
mov dword [esp + 0xc], edx
mov dword [esp + 0x10], eax
call fcn.00438c30
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
mov edx, dword [esp + 0x1c]
mov ebx, dword [esp + 0x6c]
mov dword [ebx + 0x1c], edx
mov edx, dword [0xc6f140]
test edx, edx
jne 0x6fc2e4
mov dword [ebx + 0x14], eax
mov esi, dword [esp + 0x2c]
mov edi, dword [esp + 0x38]
mov ebx, ecx
mov ebp, eax
mov ecx, dword [esp + 0x6c]
jmp 0x6fc264
mov edi, dword [esp + 0x48]
call fcn.0044c860
jmp 0x6fc2d2
mov ecx, dword [esp + 0x6c]
jmp 0x6fc27d
or eax, ebp
mov dword [ebx + edx*4], eax
mov eax, 1
jmp 0x6fc246
mov ecx, eax
jmp 0x6fc27d
mov edx, dword [eax + 4]
cmp bl, 5
je 0x6fc410
lea ebx, [edx + 1]
imul ebx, esi
add ebx, edx
mov dword [esp + 0x3c], ebx
mov ebp, dword [eax + 0x24]
mov edi, edx
mov edx, dword [eax + 0x20]
shr ebx, 5
cmp ebx, ebp
jae 0x6fc8b3
mov ebp, dword [edx + ebx*4]
mov ecx, dword [esp + 0x3c]
mov eax, 1
shl eax, cl
test eax, ebp
je 0x6fc401
xor eax, eax
test al, al
je 0x6fc3fb
mov eax, dword [esp + 0x6c]
mov edx, dword [eax + 0x14]
mov ebx, dword [eax + 0x18]
mov ebp, dword [eax + 0x1c]
mov ecx, eax
lea eax, [ebx + 1]
cmp eax, ebp
jg 0x6fc395
lea eax, [ebx + 1]
mov dword [ecx + 0x18], eax
lea eax, [ebx + ebx*2]
mov dword [edx + eax*4], esi
lea ebx, [edx + eax*4]
mov byte [ebx + 4], 0
mov dword [edx + eax*4 + 8], edi
mov eax, dword [esp + 0x50]
mov ecx, dword [esp + 0x2c]
movzx edx, byte [esp + 0x22]
jmp 0x6fc037
mov dword [esp + 0x38], esi
mov dword [esp + 0x3c], edi
lea ecx, [0x846f40]
mov dword [esp], ecx
mov dword [esp + 4], edx
mov dword [esp + 8], ebx
mov dword [esp + 0xc], ebp
mov dword [esp + 0x10], eax
call fcn.00438c30
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
mov edx, dword [esp + 0x1c]
mov ebx, dword [esp + 0x6c]
mov dword [ebx + 0x1c], edx
mov edx, dword [0xc6f140]
test edx, edx
jne 0x6fc3f0
mov dword [ebx + 0x14], eax
mov esi, dword [esp + 0x38]
mov edi, dword [esp + 0x3c]
mov ebx, ecx
mov edx, eax
mov ecx, dword [esp + 0x6c]
jmp 0x6fc36c
mov edi, dword [esp + 0x48]
call fcn.0044c860
jmp 0x6fc3db
mov ecx, dword [esp + 0x6c]
jmp 0x6fc383
or ebp, eax
mov dword [edx + ebx*4], ebp
mov eax, 1
jmp 0x6fc34e
mov ecx, eax
jmp 0x6fc383
cmp cl, 2
jne 0x6fc551
test bl, bl
jne 0x6fc52d
mov ebp, dword [esp + 0x54]
test ebp, ebp
jb 0x6fc525
mov ecx, ebx
mov ebx, dword [esp + 0x6c]
mov esi, edx
mov edx, dword [ebx + 8]
mov edi, eax
mov eax, dword [ebx + 0xc]
cmp ebp, eax
jae 0x6fc51f
mov eax, dword [ebx]
mov edx, dword [edx + ebp*4]
mov ebp, dword [eax + 4]
mov eax, dword [eax]
cmp edi, ebp
jae 0x6fc89e
movzx eax, byte [esi + eax]
cmp al, 5
je 0x6fc495
mov eax, dword [ebx + 0x14]
mov ebp, dword [ebx + 0x18]
mov esi, edx
lea edx, [ebp + 1]
mov ebx, dword [ebx + 0x1c]
cmp edx, ebx
jg 0x6fc4be
lea edx, [ebp + 1]
mov ebx, dword [esp + 0x6c]
mov dword [ebx + 0x18], edx
lea edx, [ebp + ebp*2]
mov dword [eax + edx*4], edi
lea ebp, [eax + edx*4]
mov byte [ebp + 4], 1
mov dword [eax + edx*4 + 8], esi
mov eax, dword [ebx + 8]
mov edx, dword [ebx + 0xc]
mov ebp, dword [esp + 0x54]
cmp ebp, edx
jae 0x6fc897
mov edx, dword [esp + 0x2c]
mov dword [eax + ebp*4], edx
mov eax, dword [esp + 0x50]
mov ecx, edx
movzx edx, byte [esp + 0x22]
jmp 0x6fc037
mov dword [esp + 0x3c], esi
lea ecx, [0x846f40]
mov dword [esp], ecx
mov dword [esp + 4], eax
mov dword [esp + 8], ebp
mov dword [esp + 0xc], ebx
mov dword [esp + 0x10], edx
call fcn.00438c30
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
mov edx, dword [esp + 0x1c]
mov ebx, dword [esp + 0x6c]
mov dword [ebx + 0x1c], edx
mov edx, dword [0xc6f140]
test edx, edx
jne 0x6fc514
mov dword [ebx + 0x14], eax
mov esi, dword [esp + 0x3c]
mov edi, dword [esp + 0x30]
mov ebp, ecx
movzx ecx, byte [esp + 0x22]
jmp 0x6fc479
mov edi, dword [esp + 0x48]
call fcn.0044c860
jmp 0x6fc500
mov edx, dword [esp + 0x2c]
jmp 0x6fc4ae
mov ecx, ebx
mov ebx, dword [esp + 0x6c]
jmp 0x6fc51f
mov eax, dword [esp + 0x6c]
mov ecx, dword [eax + 8]
mov edx, dword [eax + 0xc]
mov ebx, dword [esp + 0x54]
cmp ebx, edx
jae 0x6fc8a5
mov edx, dword [esp + 0x2c]
mov dword [ecx + ebx*4], edx
mov edi, eax
jmp 0x6fc081
cmp cl, 3
jne 0x6fc598
mov eax, dword [esp + 0x70]
mov ecx, dword [eax + 0x14]
mov edx, dword [esp + 0x2c]
mov dword [esp + 4], edx
mov ebx, dword [esp + 0x74]
mov dword [esp], ebx
call ecx
movzx eax, byte [esp + 8]
not eax
and eax, dword [esp + 0x54]
test al, al
jne 0x6fc58f
mov eax, dword [esp + 0x50]
mov ecx, dword [esp + 0x2c]
movzx edx, byte [esp + 0x22]
jmp 0x6fc037
mov edi, dword [esp + 0x6c]
jmp 0x6fc081
mov eax, dword [esp + 0x6c]
mov ecx, dword [eax + 8]
mov edx, dword [eax + 0xc]
test edx, edx
je 0x6fc67b
cmp edx, 1
jle 0x6fc672
mov edx, dword [esp + 0x2c]
mov dword [ecx + 4], edx
mov ecx, dword [esp + 0x68]
movzx ebx, byte [ecx + 0x50]
test bl, bl
je 0x6fc66b
movzx ebx, byte [esp + 0x23]
test bl, bl
je 0x6fc667
test edx, edx
jle 0x6fc663
mov ebp, dword [ecx + 0x58]
mov esi, ebx
mov ebx, dword [ecx + 0x54]
cmp ebp, 1
jbe 0x6fc890
mov ebx, dword [ebx + 4]
cmp edx, ebx
jle 0x6fc620
mov ebx, dword [ecx + 0x58]
mov ebp, dword [ecx + 0x54]
mov edi, edx
mov edx, dword [eax + 0xc]
mov eax, dword [eax + 8]
cmp ebx, edx
jle 0x6fc65f
cmp ebp, eax
je 0x6fc620
mov dword [esp], ebp
mov dword [esp + 4], eax
shl edx, 2
mov dword [esp + 8], edx
call fcn.0044d060
mov eax, dword [esp + 0x68]
mov byte [eax + 0x50], 1
movzx ecx, byte [esp + 0x23]
test cl, cl
je 0x6fc653
mov edx, dword [esp + 0x6c]
mov ebx, dword [edx + 4]
mov ebp, dword [esp + 0x2c]
cmp ebp, ebx
je 0x6fc647
mov edi, edx
jmp 0x6fc081
mov byte [esp + 0x80], 1
add esp, 0x64
ret
mov byte [esp + 0x80], 1
add esp, 0x64
ret
mov edx, ebx
jmp 0x6fc609
mov esi, ebx
jmp 0x6fc620
mov esi, ebx
jmp 0x6fc620
movzx esi, byte [esp + 0x23]
jmp 0x6fc5f7
mov edx, dword [esp + 0x2c]
jmp 0x6fc5ba
mov eax, dword [esp + 0x68]
mov byte [eax + 0x50], 1
mov byte [esp + 0x80], 1
add esp, 0x64
ret
cmp cl, 7
ja 0x6fc711
cmp cl, 5
je 0x6fc8f0
cmp cl, 6
jne 0x6fc6b1
mov eax, dword [esp + 0x50]
mov ecx, dword [esp + 0x2c]
mov edx, ebx
jmp 0x6fc037
mov eax, dword [esp + 0x70]
mov ecx, dword [eax + 0x20]
mov edx, dword [esp + 0x2c]
mov dword [esp + 4], edx
mov ebx, dword [esp + 0x74]
mov dword [esp], ebx
call ecx
mov eax, dword [esp + 8]
mov ecx, dword [esp + 0xc]
mov dword [esp + 0x24], ecx
lea edx, [esp + 0x4c]
mov dword [esp], edx
mov dword [esp + 4], eax
call fcn.006f5720
movzx eax, byte [esp + 8]
test al, al
je 0x6fc708
mov ebx, dword [esp + 0x24]
mov ebp, dword [esp + 0x2c]
lea ecx, [ebp + ebx]
mov eax, dword [esp + 0x50]
movzx edx, byte [esp + 0x22]
jmp 0x6fc037
mov edi, dword [esp + 0x6c]
jmp 0x6fc081
cmp cl, 8
je 0x6fc7b2
cmp cl, 9
je 0x6fc76f
cmp cl, 0xa
jne 0x6fc8d6
mov eax, dword [esp + 0x70]
mov ecx, dword [eax + 0x20]
mov edx, dword [esp + 0x2c]
mov dword [esp + 4], edx
mov ebx, dword [esp + 0x74]
mov dword [esp], ebx
call ecx
mov eax, dword [esp + 8]
mov ecx, dword [esp + 0xc]
cmp eax, 0xa
je 0x6fc766
cmp eax, 0xffffffff
je 0x6fc766
mov ebx, dword [esp + 0x2c]
add ecx, ebx
mov eax, dword [esp + 0x50]
movzx edx, byte [esp + 0x22]
jmp 0x6fc037
mov edi, dword [esp + 0x6c]
jmp 0x6fc081
mov eax, dword [esp + 0x70]
mov ecx, dword [eax + 0x20]
mov edx, dword [esp + 0x2c]
mov dword [esp + 4], edx
mov ebx, dword [esp + 0x74]
mov dword [esp], ebx
call ecx
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 8]
cmp ecx, 0xffffffff
je 0x6fc7a9
mov ebx, dword [esp + 0x2c]
lea ecx, [ebx + eax]
mov eax, dword [esp + 0x50]
movzx edx, byte [esp + 0x22]
jmp 0x6fc037
mov edi, dword [esp + 0x6c]
jmp 0x6fc081
mov eax, dword [esp + 0x70]
mov ecx, dword [eax + 0x20]
mov edx, dword [esp + 0x2c]
mov dword [esp + 4], edx
mov ebx, dword [esp + 0x74]
mov dword [esp], ebx
call ecx
mov eax, dword [esp + 8]
mov ecx, dword [esp + 0xc]
mov edx, dword [esp + 0x58]
mov ebx, dword [esp + 0x5c]
test ebx, ebx
jbe 0x6fc8ac
mov edx, dword [edx]
cmp eax, edx
jne 0x6fc7fc
mov ebx, dword [esp + 0x2c]
add ecx, ebx
mov eax, dword [esp + 0x50]
movzx edx, byte [esp + 0x22]
jmp 0x6fc037
mov edi, dword [esp + 0x6c]
jmp 0x6fc081
movzx eax, byte [esi + 0x50]
mov byte [esp + 0x80], al
add esp, 0x64
ret
lea eax, [0x846f40]
mov dword [esp], eax
mov dword [esp + 4], ebx
mov dword [esp + 8], edx
mov dword [esp + 0xc], ecx
mov dword [esp + 0x10], ebp
call fcn.00438c30
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
mov edx, dword [esp + 0x1c]
mov ebx, dword [esp + 0x6c]
mov dword [ebx + 0x1c], edx
mov edx, dword [0xc6f140]
test edx, edx
jne 0x6fc867
mov dword [ebx + 0x14], eax
mov esi, dword [esp + 0x68]
mov edi, dword [esp + 0x7c]
mov edx, ecx
mov ebx, eax
mov eax, dword [esp + 0x6c]
jmp 0x6fbf85
lea edi, [ebx + 0x14]
call fcn.0044c860
jmp 0x6fc852
mov eax, dword [esp + 0x6c]
jmp 0x6fbfa0
or ebx, ebp
mov dword [eax + edx*4], ebx
mov eax, 1
jmp 0x6fbf65
mov eax, ebx
jmp 0x6fbfa0
call fcn.00426770
ud2
call fcn.00426770
ud2
call fcn.00426770
ud2
call fcn.00426770
ud2
call fcn.00426770
ud2
call fcn.00426770
ud2
call fcn.00426770
ud2
call fcn.00426770
ud2
call fcn.00426770
ud2
call fcn.00426770
ud2
lea eax, [0x80a3e0]
mov dword [esp], eax
lea eax, [0x91fef8]
mov dword [esp + 4], eax
call fcn.00427650
ud2
lea eax, [0x80a3e0]
mov dword [esp], eax
lea eax, [0x91ff00]
mov dword [esp + 4], eax
call fcn.00427650
ud2
call fcn.00426770
ud2
call fcn.00426770
ud2
call fcn.00426770
ud2
call fcn.00426770
ud2
call fcn.0044b100
jmp fcn.006fbec0