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

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
and esp, 0xfffffff0
sub esp, 0x90
mov esi, ecx
mov eax, dword [0x7aa024]
xor eax, ebp
mov dword [esp + 0x88], eax
mov ecx, dword [ecx + 0x10]
lea eax, [ecx + 1]
cmp eax, dword [esi + 0xc]
ja 0x601603
mov edx, dword [esi + 8]
mov dword [esi + 0x10], eax
cmp byte [edx + ecx], 0x5b
jne 0x601605
lea edi, [esi + 0x14]
mov ecx, edi
shr ecx, 0xe
xor eax, eax
inc eax
shl eax, cl
mov dword [esp + 0x1c], eax
mov eax, edi
shr eax, 0x13
mov dword [esp + 0x18], eax
mov eax, dword [eax*4 + 0x7b1224]
bt eax, ecx
mov dword [esp], esi
mov esi, dword [esi + 4]
jb 0x60164c
mov eax, edi
shr eax, 0x15
mov byte [eax + 0x7b9224], 1
mov eax, dword [edi]
inc eax
mov dword [edi], eax
cmp eax, esi
jae 0x60165a
mov dword [esp + 0x20], edi
xor eax, eax
mov dword [esp + 0x24], eax
mov dword [esp + 0x28], eax
mov dword [esp + 0x2c], eax
mov esi, dword [esp]
mov ecx, esi
call fcn.006004f0
mov edi, eax
mov eax, dword [ebp + 8]
add eax, 4
mov dword [esp + 0x10], eax
cmp edi, 3
je 0x6014a8
pcmpeqd xmm1, xmm1
movdqu xmmword [esp + 0x5c], xmm1
pcmpeqd xmm0, xmm0
movdqa xmmword [esp + 0x50], xmm1
cmp edi, 8
ja case.0x6010c5.1
jmp dword [edi*4 + 0x7930c0]
mov ecx, esi
lea eax, [esp + 0x50]
push eax
call fcn.00601750
cmp byte [esp + 0x50], 0
je 0x601382
mov edi, dword [esp + 0x28]
mov eax, dword [esp + 0x2c]
cmp edi, eax
jb 0x6012d0
mov edx, dword [esp + 0x24]
mov dword [esp + 8], edi
sub edi, edx
sar edi, 2
imul ebx, edi, 0xcccccccd
lea edi, [ebx + 1]
cmp edi, 0xccccccd
jae 0x6015ed
sub eax, edx
sar eax, 2
imul eax, eax, 0xcccccccd
lea ecx, [eax + eax]
cmp ecx, edi
cmova edi, ecx
cmp eax, 0x6666666
mov eax, 0xccccccc
cmovae edi, eax
test edi, edi
mov dword [esp + 4], edx
je 0x6015fc
cmp edi, 0xccccccd
jae 0x6015e5
lea eax, [edi*4]
lea eax, [eax + eax*4]
push eax
call fcn.0064cd3e
add esp, 4
mov esi, eax
lea ecx, [ebx + ebx*4]
mov dword [esp + 0xc], ecx
lea ebx, [esi + ecx*4]
lea eax, [edi + edi*4]
lea edi, [esi + eax*4]
mov ecx, ebx
lea eax, [esp + 0x54]
push eax
call fcn.005efd90
mov eax, dword [esp + 0xc]
lea ecx, [esi + eax*4]
add ecx, 0x14
mov eax, dword [esp + 8]
cmp eax, dword [esp + 4]
je 0x6011df
mov dword [esp + 0x14], ecx
mov dword [esp + 0xc], edi
mov esi, eax
add esi, 0xffffffec
add ebx, 0xffffffec
mov ecx, ebx
push esi
call fcn.005efd90
cmp esi, dword [esp + 4]
jne 0x60119c
mov dword [esp + 0x24], ebx
mov eax, dword [esp + 0x14]
mov dword [esp + 0x28], eax
mov eax, dword [esp + 0xc]
mov dword [esp + 0x2c], eax
mov esi, dword [esp]
mov edi, dword [esp + 8]
add edi, 0xffffffec
mov ecx, edi
call fcn.005f16e0
mov eax, dword [esp + 4]
cmp edi, eax
jne 0x6011cb
jmp 0x6011ee
mov dword [esp + 0x24], ebx
mov dword [esp + 0x28], ecx
mov dword [esp + 0x2c], edi
mov esi, dword [esp]
test eax, eax
je 0x6011fb
push eax
call fcn.0064cd6e
add esp, 4
mov edx, dword [esi + 0xc]
mov ecx, dword [esi + 0x10]
lea esi, [ecx + 1]
cmp esi, edx
ja 0x601269
nop dword [eax + eax]
mov eax, dword [esp]
mov eax, dword [eax + 8]
movzx ebx, byte [eax + ecx]
movsx edi, bl
cmp edi, 0x20
jne 0x601231
mov eax, dword [esp]
mov dword [eax + 0x10], esi
mov ecx, esi
inc esi
cmp esi, edx
jbe 0x601210
jmp case.0x601239.11
add edi, 0xfffffff7
cmp edi, 0x26
ja case.0x601239.11
jmp dword [edi*4 + 0x7930e4]
mov edi, dword [esp]
mov dword [edi + 0x1c], ecx
cmp bl, 0xa
jne 0x60125e
test ecx, ecx
jle 0x60125e
dec ecx
cmp edx, ecx
jbe 0x6015ea
cmp byte [eax + ecx], 0xd
je case.0x601239.9
mov eax, dword [esp]
inc dword [eax + 0x18]
jmp case.0x601239.9
lea esi, [ecx + 1]
cmp esi, edx
ja 0x60156e
mov esi, dword [esp]
mov eax, dword [esi + 8]
movsx eax, byte [eax + ecx]
mov edi, 3
mov bl, 1
cmp eax, 0x5c
jg 0x6012b9
lea edi, [eax - 0x22]
cmp edi, 0x18
ja case.default.0x601293
jmp dword [edi*4 + 0x793180]
inc ecx
cmp ecx, edx
ja 0x6012a2
mov dword [esi + 0x10], ecx
mov ecx, esi
call fcn.006004f0
cmp eax, 3
je 0x601705
mov edi, eax
jmp 0x60139d
cmp eax, 0x73
jg 0x6013ba
cmp eax, 0x5d
je 0x60139d
jmp 0x60153b
mov ecx, edi
lea eax, [esp + 0x54]
push eax
call fcn.005efd90
add edi, 0x14
mov dword [esp + 0x28], edi
jmp 0x6011fb
mov ecx, esi
lea eax, [esp + 0x50]
push eax
call fcn.00600ff0
jmp 0x6010d8
lea eax, [esp + 0x74]
movdqu xmmword [eax], xmm0
mov dword [eax + 0x10], 0xffffffff
xor eax, eax
mov dword [esp + 0x6c], eax
mov dword [esp + 0x70], eax
mov byte [esp + 0x74], 0
mov ecx, esi
lea eax, [esp + 0x6c]
push eax
call fcn.00601a40
test al, al
je 0x6016d7
cmp byte [esp + 0x74], 0
mov dword [esp + 4], edi
jne 0x60154a
mov ebx, dword [esp + 0x70]
cmp ebx, 0xfffffff0
jae 0x6015ed
mov eax, dword [esp + 0x6c]
cmp ebx, 0xb
jae 0x6013cf
mov byte [esp + 0x3b], bl
lea edi, [esp + 0x30]
test ebx, ebx
jne 0x6013fd
jmp 0x601408
mov edi, 4
xor edx, edx
inc edx
mov dword [esi + 0x20], edx
mov eax, dword [esi + 0x18]
mov dword [esi + 0x24], eax
sub ecx, dword [esi + 0x1c]
cmp ecx, 2
cmovl ecx, edx
mov dword [esi + 0x28], ecx
mov eax, dword [ebp + 8]
mov byte [eax], 0
mov eax, dword [esp + 0x10]
pxor xmm0, xmm0
movdqu xmmword [eax], xmm0
mov dword [eax + 0x10], 0
xor ebx, ebx
cmp byte [esp + 0x50], 0
je 0x6013ad
lea ecx, [esp + 0x54]
call fcn.005f16e0
test bl, bl
jne 0x60109f
jmp 0x6014db
cmp eax, 0x7d
je 0x601520
xor edi, edi
cmp eax, 0x7b
je 0x60136a
jmp 0x601528
lea esi, [ebx + 0x10]
and esi, 0xfffffff0
push esi
mov dword [esp + 0xc], eax
call fcn.0064cd3e
add esp, 4
mov edi, eax
mov eax, dword [esp + 8]
mov dword [esp + 0x30], edi
or esi, 0x80000000
mov dword [esp + 0x38], esi
mov esi, dword [esp]
mov dword [esp + 0x34], ebx
push ebx
push eax
push edi
call fcn.00650080
add esp, 0xc
mov byte [edi + ebx], 0
lea edi, [esp + 0x3c]
mov ecx, edi
lea eax, [esp + 0x30]
push eax
call fcn.005f0160
mov byte [esp + 0x50], 1
lea ecx, [esp + 0x54]
push edi
call fcn.005efd90
mov ecx, edi
call fcn.005f16e0
cmp byte [esp + 0x3b], 0
js 0x6016f4
mov edi, dword [esp + 4]
cmp byte [esp + 0x74], 0
je 0x6010d8
cmp byte [esp + 0x83], 0
jns 0x6010d8
jmp 0x60173c
mov edi, 5
jmp 0x60136a
mov edi, 0xa
jmp 0x60136a
mov ecx, esi
lea eax, [esp + 0x50]
push eax
call fcn.0056d200
jmp 0x6010d8
cmp eax, 0x5b
jne case.0x601293.35
mov edi, 2
jmp 0x60136a
mov ecx, esi
lea eax, [esp + 0x50]
push eax
call fcn.00600600
jmp 0x6010d8
mov eax, dword [esi + 0x10]
inc eax
cmp eax, dword [esi + 0xc]
ja 0x6014b4
mov dword [esi + 0x10], eax
lea eax, [esp + 0x24]
lea esi, [esp + 0x6c]
mov ecx, esi
push eax
call fcn.005f0700
mov eax, dword [ebp + 8]
mov byte [eax], 1
mov ecx, dword [esp + 0x10]
push esi
call fcn.005efd90
mov ecx, esi
call fcn.005f16e0
mov edi, dword [esp + 0x24]
test edi, edi
jne 0x60169b
mov edi, dword [esp + 0x20]
mov eax, dword [edi]
dec eax
mov dword [edi], eax
mov eax, dword [esp + 0x1c]
mov ecx, dword [esp + 0x18]
test dword [ecx*4 + 0x7b1224], eax
jne 0x6016c9
mov ecx, dword [esp + 0x88]
xor ecx, ebp
call fcn.0064d372
mov eax, dword [ebp + 8]
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret 4
xor edi, edi
inc edi
jmp 0x60136a
cmp eax, 0x74
jne case.0x601293.35
mov edi, 6
jmp 0x60136a
cmp eax, 0x66
jne 0x60159a
mov edi, 7
jmp 0x60136a
lea ecx, [esp + 0x78]
mov eax, dword [ecx + 8]
mov dword [esp + 0x38], eax
movq xmm0, qword [ecx]
movq qword [esp + 0x30], xmm0
xor eax, eax
mov dword [ecx + 4], eax
mov dword [ecx], eax
mov dword [ecx + 8], eax
jmp 0x60140c
mov edi, 0xb
mov esi, dword [esp]
jmp 0x60136a
mov esi, dword [esp]
mov ecx, esi
call fcn.0056cee0
mov edx, dword [esi + 0xc]
mov esi, dword [esi + 0x10]
mov ecx, esi
test al, al
jne 0x601228
jmp case.0x601239.11
cmp eax, 0x6e
jne case.0x601293.35
mov edi, 8
jmp 0x60136a
mov dword [esi + 0x20], 3
mov eax, dword [esi + 0x10]
mov ecx, dword [esi + 0x18]
mov dword [esi + 0x24], ecx
sub eax, dword [esi + 0x1c]
xor ecx, ecx
inc ecx
cmp eax, 2
cmovge ecx, eax
mov dword [esi + 0x28], ecx
mov byte [esp + 0x50], 0
pxor xmm0, xmm0
lea eax, [esp + 0x54]
movdqu xmmword [eax], xmm0
mov dword [eax + 0x10], 0
jmp 0x601382
call fcn.0067fe60
int3
call fcn.006626d0
mov edi, 0xc
jmp 0x60136a
xor esi, esi
jmp 0x601162
mov eax, ecx
mov dword [esi + 0x20], 3
mov ecx, dword [esi + 0x18]
mov dword [esi + 0x24], ecx
sub eax, dword [esi + 0x1c]
xor ecx, ecx
inc ecx
cmp eax, 2
cmovge ecx, eax
mov dword [esi + 0x28], ecx
mov esi, dword [ebp + 8]
mov byte [esi], 0
pxor xmm0, xmm0
movdqu xmmword [esi + 4], xmm0
mov dword [esi + 0x14], 0
mov ecx, dword [esp + 0x88]
xor ecx, ebp
call fcn.0064d372
mov eax, esi
jmp 0x601516
push edi
call fcn.005e5030
add esp, 4
jmp 0x60106a
mov esi, dword [esp]
mov dword [esi + 0x20], 5
mov ecx, dword [esi + 0x18]
mov edx, dword [esi + 0x1c]
mov dword [esi + 0x24], ecx
not edx
add edx, dword [esi + 0x10]
cmp edx, 2
mov ecx, 1
cmovge ecx, edx
mov dword [esi + 0x28], ecx
mov ecx, dword [ebp + 8]
mov byte [ecx], 0
pxor xmm0, xmm0
movdqu xmmword [ecx + 4], xmm0
mov dword [ecx + 0x14], 0
jmp 0x6014ed
mov esi, dword [esp + 0x28]
mov eax, edi
cmp esi, edi
je 0x6016b7
add esi, 0xffffffec
mov ecx, esi
call fcn.005f16e0
cmp esi, edi
jne 0x6016a5
mov eax, dword [esp + 0x24]
mov dword [esp + 0x28], edi
push eax
call fcn.0064cd6e
add esp, 4
jmp 0x6014e7
push edi
call fcn.005e5140
add esp, 4
jmp 0x601505
mov byte [esp + 0x50], 0
pxor xmm0, xmm0
lea eax, [esp + 0x54]
movdqu xmmword [eax], xmm0
mov dword [eax + 0x10], 0
jmp 0x601441
push dword [esp + 0x30]
call fcn.0064cd6e
add esp, 4
jmp 0x60143d
test byte [esi], 1
mov edi, 3
jne 0x60139d
mov dword [esi + 0x20], 4
mov eax, dword [esi + 0x10]
mov ecx, dword [esi + 0x18]
mov dword [esi + 0x24], ecx
sub eax, dword [esi + 0x1c]
xor ecx, ecx
inc ecx
cmp eax, 2
cmovge ecx, eax
mov dword [esi + 0x28], ecx
mov edi, 3
jmp 0x601382
push dword [esp + 0x78]
call fcn.0064cd6e
add esp, 4
jmp 0x6010d8