Function at 0x1400f6590
Capabilities:
Hash data using fnv

Disassembly:
mov rax, rsp
mov qword [rax + 0x10], rbx
mov qword [rax + 0x18], rsi
mov qword [rax + 0x20], rdi
push rbp
push r12
push r13
push r14
push r15
lea rbp, [rax - 0x7a8]
sub rsp, 0x880
movaps xmmword [rax - 0x38], xmm6
movaps xmmword [rax - 0x48], xmm7
movaps xmmword [rax - 0x58], xmm8
movaps xmmword [rax - 0x68], xmm9
movaps xmmword [rax - 0x78], xmm10
movaps xmmword [rax - 0x88], xmm11
movaps xmmword [rax - 0x98], xmm12
movaps xmmword [rax - 0xa8], xmm13
movaps xmmword [rax - 0xb8], xmm14
movaps xmmword [rax - 0xc8], xmm15
mov rax, qword [0x1402f2018]
xor rax, rsp
mov qword [rbp + 0x6d8], rax
mov r15, rcx
mov qword [rsp + 0x70], rcx
mov rax, qword [rcx + 0x28]
movss xmm8, dword [0x1402c1a14]
cmp byte [rax + 0x2b0], 0
je 0x1400f6703
mov rbx, qword [0x1402fb580]
cmp dword [rbx + 0x2a8], 0
jbe 0x1400f6645
cmp dword [rbx + 0x2a4], 0
je 0x1400f670a
movss xmm0, dword [0x1402fb3b0]
comiss xmm0, dword [rbx + 0x2b0]
jb 0x1400f670a
mov eax, dword [rbx + 0x2a0]
test eax, eax
je 0x1400f670a
dec eax
movss xmm0, dword [rbx + 0x30]
comiss xmm0, dword [rbx + rax*4 + 0x2d8]
jb 0x1400f670a
comiss xmm0, dword [0x1402c18fc]
jb 0x1400f670a
movaps xmm1, xmm8
call fcn.1401c2e00
mov rbx, rax
test rax, rax
je 0x1400f6703
cmp byte [rax + 0xa7], 0
je 0x1400f6703
mov rcx, rax
call fcn.14006a560
test al, al
jne 0x1400f6703
cmp byte [rbx + 0xa5], al
je 0x1400f6703
cmp byte [rbx + 0xa4], al
je 0x1400f6703
mov rax, qword [r15 + 0x30]
cmp byte [rax + 0x2b0], 0
je 0x1400f66f1
mov rbx, qword [0x1402fb4f0]
mov rcx, rbx
call fcn.140158480
test al, al
jne 0x1400f6703
cmp dword [rbx + 0x154], 0
je 0x1400f6703
cmp byte [rbx + 0x183], al
jne 0x1400f6703
call fcn.14013edd0
xor r8d, r8d
xor edx, edx
mov rcx, rax
call fcn.14006db10
mov rbx, qword [0x1402fb580]
mov rax, qword [r15 + 0x40]
movss xmm15, dword [0x1402c19c4]
movss xmm12, dword [0x1402c1908]
xorps xmm9, xmm9
movss xmm7, dword [0x1402c1aa0]
cmp byte [rax + 0x2b0], 0
je 0x1400f7529
cmp dword [rbx + 0x310], 0
jbe 0x1400f674f
cmp dword [rbx + 0x30c], 0
je 0x1400f7529
movss xmm0, dword [0x1402fb3b0]
comiss xmm0, dword [rbx + 0x318]
jb 0x1400f7529
mov eax, dword [rbx + 0x308]
test eax, eax
je 0x1400f7529
dec eax
movss xmm0, dword [rbx + 0x30]
comiss xmm0, dword [rbx + rax*4 + 0x340]
jb 0x1400f7529
mov eax, dword [rbx + 0x308]
dec eax
comiss xmm0, dword [r15 + rax*4 + 0xc]
jbe 0x1400f7529
cmp byte [rbx + 0xe8], 0
je 0x1400f67ba
cmp byte [rbx + 0x130], 0
je 0x1400f67ba
cmp dword [rbx + 0x138], 1
je 0x1400f7529
movss xmm1, dword [r15 + 0x20]
addss xmm1, dword [0x1402c1a68]
movss xmm0, dword [0x1402fb394]
comiss xmm0, xmm1
jbe 0x1400f7529
cmp dword [r15 + 0x60], 1
jne 0x1400f6b45
movss xmm1, dword [rbx + 0xd4]
comiss xmm1, xmm15
jbe 0x1400f67f6
movaps xmm1, xmm12
addss xmm1, dword [rbx + 0x4c]
call fcn.1401c2e00
mov rbx, rax
test rax, rax
je 0x1400f6b3e
cmp byte [rax + 0xa7], 0
je 0x1400f6b3e
mov rcx, rax
call fcn.14006a560
test al, al
jne 0x1400f6b3e
cmp byte [rbx + 0xa5], al
je 0x1400f6b3e
cmp byte [rbx + 0xa4], al
je 0x1400f6b3e
movaps xmm6, xmmword [0x1402c2bd0]
movaps xmmword [rbp + 0x140], xmm6
mov dword [rbp + 0x150], 0
mov dword [rbp + 0x154], 1
mov byte [rbp + 0x158], 1
movsd xmm1, qword [0x1402fba30]
movaps xmm5, xmm1
movsd qword [rbp + 0x15c], xmm1
mov eax, dword [0x1402fba38]
mov dword [rbp + 0x164], eax
xor edx, edx
mov dword [rbp + 0x168], edx
mov byte [rbp + 0x16c], dl
mov dword [rbp + 0x170], 0xffffffff
movaps xmm4, xmm1
movsd qword [rbp + 0x174], xmm1
mov dword [rbp + 0x17c], eax
mov qword [rbp + 0x180], rdx
movaps xmm3, xmm1
movsd qword [rbp + 0x188], xmm1
mov dword [rbp + 0x190], eax
movaps xmm2, xmm1
movsd qword [rbp + 0x194], xmm1
mov dword [rbp + 0x19c], eax
movss dword [rbp + 0x1a0], xmm9
xorps xmm0, xmm0
movups xmmword [rbp + 0x1a8], xmm0
movups xmmword [rbp + 0x1b8], xmm0
mov qword [rbp + 0x1c8], rdx
movdqa xmmword [rbp + 0x1d0], xmm0
mov qword [rbp + 0x1e0], rdx
mov byte [rbp + 0x1e8], dl
xor ecx, ecx
mov qword [rbp + 0x1ec], rcx
mov byte [rbp + 0x1f4], cl
mov dword [rbp + 0x1f8], ecx
mov byte [rbp + 0x1fc], cl
mov dword [rbp + 0x200], 0x42820000
movss dword [rbp - 0x60], xmm6
movaps xmm0, xmm6
shufps xmm0, xmm6, 0x55
movss dword [rbp - 0x5c], xmm0
movaps xmm1, xmm6
shufps xmm1, xmm6, 0xaa
movss dword [rbp - 0x58], xmm1
shufps xmm6, xmm6, 0xff
movss dword [rbp - 0x54], xmm6
mov dword [rbp - 0x50], ecx
mov dword [rbp - 0x4c], 1
mov byte [rbp - 0x48], 1
movsd qword [rbp - 0x44], xmm2
mov dword [rbp - 0x3c], eax
mov dword [rbp - 0x38], edx
mov byte [rbp - 0x34], cl
mov dword [rbp - 0x30], 0xffffffff
movsd qword [rbp - 0x2c], xmm2
mov dword [rbp - 0x24], eax
mov qword [rbp - 0x20], rcx
movsd qword [rbp - 0x18], xmm2
mov dword [rbp - 0x10], eax
movsd qword [rbp - 0xc], xmm2
mov dword [rbp - 4], eax
movss dword [rbp], xmm9
lea rdx, [rbp + 0x1a8]
lea rcx, [rbp + 8]
call fcn.140031c00
mov eax, dword [rbp + 0x1f8]
mov dword [rbp + 0x58], eax
movzx eax, byte [rbp + 0x1fc]
mov byte [rbp + 0x5c], al
movss xmm0, dword [rbp + 0x200]
movss dword [rbp + 0x60], xmm0
lea rax, [rbp - 0x60]
mov qword [rsp + 0x40], rax
mov qword [rbp - 0x20], rbx
lea r8, [rbp - 0x60]
lea rdx, [rbp + 0x240]
mov rcx, qword [0x1402fb4e8]
call fcn.14015e510
nop
lea rcx, [rbp + 0x30]
call fcn.140034070
nop
movss xmm0, dword [rbp + 0x340]
ucomiss xmm0, dword [0x1402fba30]
jp 0x1400f6a3d
jne 0x1400f6a3d
movss xmm0, dword [rbp + 0x344]
ucomiss xmm0, dword [0x1402fba34]
jp 0x1400f6a3d
jne 0x1400f6a3d
movss xmm0, dword [rbp + 0x348]
ucomiss xmm0, dword [0x1402fba38]
jp 0x1400f6a3d
je 0x1400f6b0d
cmp dword [rbp + 0x358], 6
jl 0x1400f6b0d
mov rdi, qword [0x1402fb4f0]
mov rcx, rdi
call fcn.140158480
test al, al
jne 0x1400f6b0d
cmp dword [rdi + 0x154], 0
je 0x1400f6b0d
cmp byte [rdi + 0x183], al
jne 0x1400f6b0d
movss xmm0, dword [rbp + 0x340]
subss xmm0, dword [rbx + 8]
movss xmm1, dword [rbp + 0x348]
subss xmm1, dword [rbx + 0x10]
mulss xmm1, xmm1
mulss xmm0, xmm0
addss xmm1, xmm0
xorps xmm0, xmm0
ucomiss xmm0, xmm1
ja 0x1400f6ab1
xorps xmm0, xmm0
sqrtss xmm0, xmm1
jmp 0x1400f6ab9
movaps xmm0, xmm1
call sub.api_ms_win_crt_math_l1_1_0.dll_sqrtf
comiss xmm15, xmm0
jb 0x1400f6b0d
call fcn.14013edd0
movsd xmm0, qword [rbp + 0x340]
movsd qword [rsp + 0x30], xmm0
mov ecx, dword [rbp + 0x348]
mov dword [rsp + 0x38], ecx
mov byte [rsp + 0x28], 0
mov byte [rsp + 0x20], 0
mov r9b, 1
lea r8, [rsp + 0x30]
mov edx, 1
mov rcx, rax
call fcn.14006dc10
test al, al
je 0x1400f6b0d
movss xmm0, dword [0x1402fb394]
movss dword [r15 + 0x20], xmm0
lea rcx, [rbp + 0x308]
call fcn.140034070
lea rcx, [rbp + 0x258]
call fcn.140033e60
lea rcx, [rbp + 0x240]
call fcn.140033e60
nop
lea rcx, [rbp + 0x1d0]
call fcn.140034070
mov rbx, qword [0x1402fb580]
cmp dword [r15 + 0x60], 0
jne 0x1400f6e8a
movaps xmm1, xmm7
call fcn.1401c2e00
mov rdi, rax
test rax, rax
je 0x1400f6e83
cmp byte [rax + 0xa7], 0
je 0x1400f6e83
mov rcx, rax
call fcn.14006a560
test al, al
jne 0x1400f6e83
cmp byte [rdi + 0xa5], al
je 0x1400f6e83
cmp byte [rdi + 0xa4], al
je 0x1400f6e83
mov rbx, qword [0x1402fb580]
movss xmm6, dword [rbx + 0xd4]
comiss xmm6, xmm15
jbe 0x1400f6bb2
movaps xmm6, xmm12
movsd xmm0, qword [rdi + 8]
movss xmm1, dword [rbx + 8]
movsd qword [rsp + 0x60], xmm0
subss xmm1, xmm0
movss xmm2, dword [rbx + 0x10]
subss xmm2, dword [rdi + 0x10]
mulss xmm2, xmm2
mulss xmm1, xmm1
addss xmm2, xmm1
xorps xmm0, xmm0
ucomiss xmm0, xmm2
ja 0x1400f6bed
xorps xmm0, xmm0
sqrtss xmm0, xmm2
jmp 0x1400f6bf5
movaps xmm0, xmm2
call sub.api_ms_win_crt_math_l1_1_0.dll_sqrtf
addss xmm6, dword [rbx + 0x4c]
comiss xmm0, xmm6
jbe 0x1400f6e8a
movaps xmm6, xmmword [0x1402c2bd0]
movaps xmmword [rbp + 0x140], xmm6
mov dword [rbp + 0x150], 0
mov dword [rbp + 0x154], 1
mov byte [rbp + 0x158], 1
movsd xmm1, qword [0x1402fba30]
movaps xmm5, xmm1
movsd qword [rbp + 0x15c], xmm1
mov eax, dword [0x1402fba38]
mov dword [rbp + 0x164], eax
xor edx, edx
mov dword [rbp + 0x168], edx
mov byte [rbp + 0x16c], dl
mov dword [rbp + 0x170], 0xffffffff
movaps xmm4, xmm1
movsd qword [rbp + 0x174], xmm1
mov dword [rbp + 0x17c], eax
mov qword [rbp + 0x180], rdx
movaps xmm3, xmm1
movsd qword [rbp + 0x188], xmm1
mov dword [rbp + 0x190], eax
movaps xmm2, xmm1
movsd qword [rbp + 0x194], xmm1
mov dword [rbp + 0x19c], eax
movss dword [rbp + 0x1a0], xmm9
xorps xmm0, xmm0
movups xmmword [rbp + 0x1a8], xmm0
movups xmmword [rbp + 0x1b8], xmm0
mov qword [rbp + 0x1c8], rdx
movdqa xmmword [rbp + 0x1d0], xmm0
mov qword [rbp + 0x1e0], rdx
mov byte [rbp + 0x1e8], dl
xor ecx, ecx
mov qword [rbp + 0x1ec], rcx
mov byte [rbp + 0x1f4], cl
mov dword [rbp + 0x1f8], ecx
mov byte [rbp + 0x1fc], cl
mov dword [rbp + 0x200], 0x42820000
movss dword [rbp - 0x60], xmm6
movaps xmm0, xmm6
shufps xmm0, xmm6, 0x55
movss dword [rbp - 0x5c], xmm0
movaps xmm1, xmm6
shufps xmm1, xmm6, 0xaa
movss dword [rbp - 0x58], xmm1
shufps xmm6, xmm6, 0xff
movss dword [rbp - 0x54], xmm6
mov dword [rbp - 0x50], ecx
mov dword [rbp - 0x4c], 1
mov byte [rbp - 0x48], 1
movsd qword [rbp - 0x44], xmm2
mov dword [rbp - 0x3c], eax
mov dword [rbp - 0x38], edx
mov byte [rbp - 0x34], cl
mov dword [rbp - 0x30], 0xffffffff
movsd qword [rbp - 0x2c], xmm2
mov dword [rbp - 0x24], eax
mov qword [rbp - 0x20], rcx
movsd qword [rbp - 0x18], xmm2
mov dword [rbp - 0x10], eax
movsd qword [rbp - 0xc], xmm2
mov dword [rbp - 4], eax
movss dword [rbp], xmm9
lea rdx, [rbp + 0x1a8]
lea rcx, [rbp + 8]
call fcn.140031c00
mov eax, dword [rbp + 0x1f8]
mov dword [rbp + 0x58], eax
movzx eax, byte [rbp + 0x1fc]
mov byte [rbp + 0x5c], al
movss xmm0, dword [rbp + 0x200]
movss dword [rbp + 0x60], xmm0
lea rax, [rbp - 0x60]
mov qword [rsp + 0x40], rax
mov qword [rbp - 0x20], rdi
lea r8, [rbp - 0x60]
lea rdx, [rbp + 0x360]
mov rcx, qword [0x1402fb4e8]
call fcn.14015e510
nop
lea rcx, [rbp + 0x30]
call fcn.140034070
nop
movss xmm0, dword [rbp + 0x460]
ucomiss xmm0, dword [0x1402fba30]
jp 0x1400f6dfb
jne 0x1400f6dfb
movss xmm0, dword [rbp + 0x464]
ucomiss xmm0, dword [0x1402fba34]
jp 0x1400f6dfb
jne 0x1400f6dfb
movss xmm0, dword [rbp + 0x468]
ucomiss xmm0, dword [0x1402fba38]
jp 0x1400f6dfb
je 0x1400f6e52
cmp dword [rbp + 0x478], 6
jl 0x1400f6e52
call fcn.14013edd0
movsd xmm0, qword [rbp + 0x460]
movsd qword [rsp + 0x30], xmm0
mov ecx, dword [rbp + 0x468]
mov dword [rsp + 0x38], ecx
mov byte [rsp + 0x28], 0
mov byte [rsp + 0x20], 0
mov r9b, 1
lea r8, [rsp + 0x30]
mov edx, 1
mov rcx, rax
call fcn.14006dc10
test al, al
je 0x1400f6e52
movss xmm0, dword [0x1402fb394]
movss dword [r15 + 0x20], xmm0
lea rcx, [rbp + 0x428]
call fcn.140034070
lea rcx, [rbp + 0x378]
call fcn.140033e60
lea rcx, [rbp + 0x360]
call fcn.140033e60
nop
lea rcx, [rbp + 0x1d0]
call fcn.140034070
mov rbx, qword [0x1402fb580]
cmp dword [r15 + 0x60], 2
jne 0x1400f7529
movaps xmm1, xmm7
call fcn.1401c2e00
mov rdi, rax
test rax, rax
je 0x1400f7522
cmp byte [rax + 0xa7], 0
je 0x1400f71f5
mov rcx, rax
call fcn.14006a560
test al, al
jne 0x1400f71f5
lea r14, [rdi + 0xa5]
cmp byte [r14], al
je 0x1400f71f5
lea rsi, [rdi + 0xa4]
mov rbx, qword [0x1402fb580]
cmp byte [rsi], al
je 0x1400f720a
movsd xmm0, qword [rdi + 8]
movss xmm1, dword [rbx + 8]
movsd qword [rsp + 0x60], xmm0
subss xmm1, xmm0
movss xmm2, dword [rbx + 0x10]
subss xmm2, dword [rdi + 0x10]
mulss xmm2, xmm2
mulss xmm1, xmm1
addss xmm2, xmm1
xorps xmm0, xmm0
ucomiss xmm0, xmm2
ja 0x1400f6f27
xorps xmm0, xmm0
sqrtss xmm0, xmm2
jmp 0x1400f6f2f
movaps xmm0, xmm2
call sub.api_ms_win_crt_math_l1_1_0.dll_sqrtf
movss xmm1, dword [rbx + 0xd4]
comiss xmm1, xmm15
jbe 0x1400f6f41
movaps xmm1, xmm12
addss xmm1, dword [rbx + 0x4c]
comiss xmm1, xmm0
jb 0x1400f720a
movaps xmm6, xmmword [0x1402c2bd0]
movaps xmmword [rbp + 0x140], xmm6
mov dword [rbp + 0x150], 0
mov dword [rbp + 0x154], 1
mov byte [rbp + 0x158], 1
movsd xmm1, qword [0x1402fba30]
movaps xmm5, xmm1
movsd qword [rbp + 0x15c], xmm1
mov eax, dword [0x1402fba38]
mov dword [rbp + 0x164], eax
xor edx, edx
mov dword [rbp + 0x168], edx
mov byte [rbp + 0x16c], dl
mov dword [rbp + 0x170], 0xffffffff
movaps xmm4, xmm1
movsd qword [rbp + 0x174], xmm1
mov dword [rbp + 0x17c], eax
mov qword [rbp + 0x180], rdx
movaps xmm3, xmm1
movsd qword [rbp + 0x188], xmm1
mov dword [rbp + 0x190], eax
movaps xmm2, xmm1
movsd qword [rbp + 0x194], xmm1
mov dword [rbp + 0x19c], eax
movss dword [rbp + 0x1a0], xmm9
xorps xmm0, xmm0
movups xmmword [rbp + 0x1a8], xmm0
movups xmmword [rbp + 0x1b8], xmm0
mov qword [rbp + 0x1c8], rdx
movdqa xmmword [rbp + 0x1d0], xmm0
mov qword [rbp + 0x1e0], rdx
mov byte [rbp + 0x1e8], dl
xor ecx, ecx
mov qword [rbp + 0x1ec], rcx
mov byte [rbp + 0x1f4], cl
mov dword [rbp + 0x1f8], ecx
mov byte [rbp + 0x1fc], cl
mov dword [rbp + 0x200], 0x42820000
movss dword [rbp - 0x60], xmm6
movaps xmm0, xmm6
shufps xmm0, xmm6, 0x55
movss dword [rbp - 0x5c], xmm0
movaps xmm1, xmm6
shufps xmm1, xmm6, 0xaa
movss dword [rbp - 0x58], xmm1
shufps xmm6, xmm6, 0xff
movss dword [rbp - 0x54], xmm6
mov dword [rbp - 0x50], ecx
mov dword [rbp - 0x4c], 1
mov byte [rbp - 0x48], 1
movsd qword [rbp - 0x44], xmm2
mov dword [rbp - 0x3c], eax
mov dword [rbp - 0x38], edx
mov byte [rbp - 0x34], cl
mov dword [rbp - 0x30], 0xffffffff
movsd qword [rbp - 0x2c], xmm2
mov dword [rbp - 0x24], eax
mov qword [rbp - 0x20], rcx
movsd qword [rbp - 0x18], xmm2
mov dword [rbp - 0x10], eax
movsd qword [rbp - 0xc], xmm2
mov dword [rbp - 4], eax
movss dword [rbp], xmm9
lea rdx, [rbp + 0x1a8]
lea rcx, [rbp + 8]
call fcn.140031c00
mov eax, dword [rbp + 0x1f8]
mov dword [rbp + 0x58], eax
movzx eax, byte [rbp + 0x1fc]
mov byte [rbp + 0x5c], al
movss xmm0, dword [rbp + 0x200]
movss dword [rbp + 0x60], xmm0
lea rax, [rbp - 0x60]
mov qword [rsp + 0x40], rax
mov qword [rbp - 0x20], rdi
lea r8, [rbp - 0x60]
lea rdx, [rbp + 0x480]
mov rcx, qword [0x1402fb4e8]
call fcn.14015e510
nop
lea rcx, [rbp + 0x30]
call fcn.140034070
nop
movss xmm0, dword [rbp + 0x580]
ucomiss xmm0, dword [0x1402fba30]
jp 0x1400f7147
jne 0x1400f7147
movss xmm0, dword [rbp + 0x584]
ucomiss xmm0, dword [0x1402fba34]
jp 0x1400f7147
jne 0x1400f7147
movss xmm0, dword [rbp + 0x588]
ucomiss xmm0, dword [0x1402fba38]
jp 0x1400f7147
je 0x1400f71c2
cmp dword [rbp + 0x598], 6
jl 0x1400f71c2
mov rbx, qword [0x1402fb4f0]
mov rcx, rbx
call fcn.140158480
test al, al
jne 0x1400f71c2
cmp dword [rbx + 0x154], 0
je 0x1400f71c2
cmp byte [rbx + 0x183], al
jne 0x1400f71c2
call fcn.14013edd0
movsd xmm0, qword [rbp + 0x580]
movsd qword [rsp + 0x30], xmm0
mov ecx, dword [rbp + 0x588]
mov dword [rsp + 0x38], ecx
mov byte [rsp + 0x28], 0
mov byte [rsp + 0x20], 0
mov r9b, 1
lea r8, [rsp + 0x30]
mov edx, 1
mov rcx, rax
call fcn.14006dc10
test al, al
je 0x1400f71c2
movss xmm0, dword [0x1402fb394]
movss dword [r15 + 0x20], xmm0
lea rcx, [rbp + 0x548]
call fcn.140034070
lea rcx, [rbp + 0x498]
call fcn.140033e60
lea rcx, [rbp + 0x480]
call fcn.140033e60
nop
lea rcx, [rbp + 0x1d0]
call fcn.140034070
jmp 0x1400f7203
lea r14, [rdi + 0xa5]
lea rsi, [rdi + 0xa4]
mov rbx, qword [0x1402fb580]
cmp byte [rdi + 0xa7], 0
je 0x1400f7529
mov rcx, rdi
call fcn.14006a560
test al, al
jne 0x1400f7522
cmp byte [r14], al
je 0x1400f7522
cmp byte [rsi], al
je 0x1400f7522
mov rbx, qword [0x1402fb580]
movss xmm6, dword [rbx + 0xd4]
comiss xmm6, xmm15
jbe 0x1400f7251
movaps xmm6, xmm12
movsd xmm0, qword [rdi + 8]
movss xmm1, dword [rbx + 8]
movsd qword [rsp + 0x60], xmm0
subss xmm1, xmm0
movss xmm2, dword [rbx + 0x10]
subss xmm2, dword [rdi + 0x10]
mulss xmm2, xmm2
mulss xmm1, xmm1
addss xmm2, xmm1
xorps xmm0, xmm0
ucomiss xmm0, xmm2
ja 0x1400f728c
xorps xmm0, xmm0
sqrtss xmm0, xmm2
jmp 0x1400f7294
movaps xmm0, xmm2
call sub.api_ms_win_crt_math_l1_1_0.dll_sqrtf
addss xmm6, dword [rbx + 0x4c]
comiss xmm0, xmm6
jbe 0x1400f7529
movaps xmm6, xmmword [0x1402c2bd0]
movaps xmmword [rbp + 0x140], xmm6
mov dword [rbp + 0x150], 0
mov dword [rbp + 0x154], 1
mov byte [rbp + 0x158], 1
movsd xmm1, qword [0x1402fba30]
movaps xmm5, xmm1
movsd qword [rbp + 0x15c], xmm1
mov eax, dword [0x1402fba38]
mov dword [rbp + 0x164], eax
xor edx, edx
mov dword [rbp + 0x168], edx
mov byte [rbp + 0x16c], dl
mov dword [rbp + 0x170], 0xffffffff
movaps xmm4, xmm1
movsd qword [rbp + 0x174], xmm1
mov dword [rbp + 0x17c], eax
mov qword [rbp + 0x180], rdx
movaps xmm3, xmm1
movsd qword [rbp + 0x188], xmm1
mov dword [rbp + 0x190], eax
movaps xmm2, xmm1
movsd qword [rbp + 0x194], xmm1
mov dword [rbp + 0x19c], eax
movss dword [rbp + 0x1a0], xmm9
xorps xmm0, xmm0
movups xmmword [rbp + 0x1a8], xmm0
movups xmmword [rbp + 0x1b8], xmm0
mov qword [rbp + 0x1c8], rdx
movdqa xmmword [rbp + 0x1d0], xmm0
mov qword [rbp + 0x1e0], rdx
mov byte [rbp + 0x1e8], dl
xor ecx, ecx
mov qword [rbp + 0x1ec], rcx
mov byte [rbp + 0x1f4], cl
mov dword [rbp + 0x1f8], ecx
mov byte [rbp + 0x1fc], cl
mov dword [rbp + 0x200], 0x42820000
movss dword [rbp - 0x60], xmm6
movaps xmm0, xmm6
shufps xmm0, xmm6, 0x55
movss dword [rbp - 0x5c], xmm0
movaps xmm1, xmm6
shufps xmm1, xmm6, 0xaa
movss dword [rbp - 0x58], xmm1
shufps xmm6, xmm6, 0xff
movss dword [rbp - 0x54], xmm6
mov dword [rbp - 0x50], ecx
mov dword [rbp - 0x4c], 1
mov byte [rbp - 0x48], 1
movsd qword [rbp - 0x44], xmm2
mov dword [rbp - 0x3c], eax
mov dword [rbp - 0x38], edx
mov byte [rbp - 0x34], cl
mov dword [rbp - 0x30], 0xffffffff
movsd qword [rbp - 0x2c], xmm2
mov dword [rbp - 0x24], eax
mov qword [rbp - 0x20], rcx
movsd qword [rbp - 0x18], xmm2
mov dword [rbp - 0x10], eax
movsd qword [rbp - 0xc], xmm2
mov dword [rbp - 4], eax
movss dword [rbp], xmm9
lea rdx, [rbp + 0x1a8]
lea rcx, [rbp + 8]
call fcn.140031c00
mov eax, dword [rbp + 0x1f8]
mov dword [rbp + 0x58], eax
movzx eax, byte [rbp + 0x1fc]
mov byte [rbp + 0x5c], al
movss xmm0, dword [rbp + 0x200]
movss dword [rbp + 0x60], xmm0
lea rax, [rbp - 0x60]
mov qword [rsp + 0x40], rax
mov qword [rbp - 0x20], rdi
lea r8, [rbp - 0x60]
lea rdx, [rbp + 0x5a0]
mov rcx, qword [0x1402fb4e8]
call fcn.14015e510
nop
lea rcx, [rbp + 0x30]
call fcn.140034070
nop
movss xmm0, dword [rbp + 0x6a0]
ucomiss xmm0, dword [0x1402fba30]
jp 0x1400f749a
jne 0x1400f749a
movss xmm0, dword [rbp + 0x6a4]
ucomiss xmm0, dword [0x1402fba34]
jp 0x1400f749a
jne 0x1400f749a
movss xmm0, dword [rbp + 0x6a8]
ucomiss xmm0, dword [0x1402fba38]
jp 0x1400f749a
je 0x1400f74f1
cmp dword [rbp + 0x6b8], 6
jl 0x1400f74f1
call fcn.14013edd0
movsd xmm0, qword [rbp + 0x6a0]
movsd qword [rsp + 0x30], xmm0
mov ecx, dword [rbp + 0x6a8]
mov dword [rsp + 0x38], ecx
mov byte [rsp + 0x28], 0
mov byte [rsp + 0x20], 0
mov r9b, 1
lea r8, [rsp + 0x30]
mov edx, 1
mov rcx, rax
call fcn.14006dc10
test al, al
je 0x1400f74f1
movss xmm0, dword [0x1402fb394]
movss dword [r15 + 0x20], xmm0
lea rcx, [rbp + 0x668]
call fcn.140034070
lea rcx, [rbp + 0x5b8]
call fcn.140033e60
lea rcx, [rbp + 0x5a0]
call fcn.140033e60
nop
lea rcx, [rbp + 0x1d0]
call fcn.140034070
mov rbx, qword [0x1402fb580]
mov rax, qword [r15 + 0x70]
movss xmm7, dword [0x1402c18cc]
cmp byte [rax + 0x2b0], 0
je 0x1400f76cb
cmp dword [rbx + 0x378], 0
jbe 0x1400f7558
cmp dword [rbx + 0x374], 0
je 0x1400f76cb
movss xmm0, dword [0x1402fb3b0]
comiss xmm0, dword [rbx + 0x380]
jb 0x1400f76cb
mov eax, dword [rbx + 0x370]
test eax, eax
je 0x1400f76cb
dec eax
movss xmm0, dword [rbx + 0x30]
comiss xmm0, dword [rbx + rax*4 + 0x3a8]
jb 0x1400f76cb
comiss xmm0, xmm7
jbe 0x1400f76cb
call fcn.14013e9d0
mov r14, qword [rax + 8]
mov rsi, qword [rax]
mov rbx, qword [0x1402fb580]
cmp rsi, r14
je 0x1400f76cb
lea rdi, [rsi + 0x10]
movss xmm6, dword [0x1402c19d0]
mov eax, dword [rbx + 0x1c]
cmp dword [rdi + 0xc], eax
je 0x1400f76b4
movsd xmm0, qword [rbx + 8]
movss xmm1, dword [rdi - 8]
movsd qword [rsp + 0x60], xmm0
subss xmm1, xmm0
movss xmm2, dword [rdi]
subss xmm2, dword [rbx + 0x10]
mulss xmm2, xmm2
mulss xmm1, xmm1
addss xmm2, xmm1
xorps xmm0, xmm0
ucomiss xmm0, xmm2
ja 0x1400f7607
xorps xmm0, xmm0
sqrtss xmm0, xmm2
jmp 0x1400f760f
movaps xmm0, xmm2
call sub.api_ms_win_crt_math_l1_1_0.dll_sqrtf
comiss xmm0, xmm8
ja 0x1400f76b4
cmp byte [rdi + 0x97], 0
je 0x1400f76b4
mov rcx, rsi
call fcn.14006a560
test al, al
jne 0x1400f76ad
cmp byte [rdi + 0x95], al
je 0x1400f76ad
cmp byte [rdi + 0x94], al
je 0x1400f76ad
cmp dword [rdi + 0x9c], 1
jne 0x1400f76ad
mov rbx, qword [0x1402fb580]
movsd xmm0, qword [rbx + 8]
movss xmm1, dword [rdi - 8]
movsd qword [rsp + 0x60], xmm0
subss xmm1, xmm0
movss xmm2, dword [rdi]
subss xmm2, dword [rbx + 0x10]
mulss xmm2, xmm2
mulss xmm1, xmm1
addss xmm2, xmm1
xorps xmm0, xmm0
ucomiss xmm0, xmm2
ja 0x1400f768c
xorps xmm0, xmm0
sqrtss xmm0, xmm2
jmp 0x1400f7694
movaps xmm0, xmm2
call sub.api_ms_win_crt_math_l1_1_0.dll_sqrtf
comiss xmm6, xmm0
jbe 0x1400f76b4
call fcn.14013edd0
xor r8d, r8d
lea edx, [r8 + 2]
mov rcx, rax
call fcn.14006db10
mov rbx, qword [0x1402fb580]
add rsi, 0x5e0
add rdi, 0x5e0
cmp rsi, r14
jne 0x1400f75c1
mov rax, qword [r15 + 0x78]
movss xmm14, dword [0x1402c1930]
cmp byte [rax + 0x2b0], 0
je 0x1400f7a5f
cmp dword [rbx + 0x378], 0
jbe 0x1400f76fb
cmp dword [rbx + 0x374], 0
je 0x1400f7a5f
movss xmm0, dword [0x1402fb3b0]
comiss xmm0, dword [rbx + 0x380]
jb 0x1400f7a5f
mov eax, dword [rbx + 0x370]
test eax, eax
je 0x1400f7a5f
dec eax
movss xmm0, dword [rbx + 0x30]
comiss xmm0, dword [rbx + rax*4 + 0x3a8]
jb 0x1400f7a5f
comiss xmm0, xmm7
jbe 0x1400f7a5f
movss xmm1, dword [rbx + 0xd4]
comiss xmm1, xmm15
jbe 0x1400f774e
movaps xmm1, xmm12
addss xmm1, dword [rbx + 0x4c]
addss xmm1, xmm15
call fcn.1401c2e00
mov rbx, rax
test rax, rax
je 0x1400f7a58
cmp byte [rax + 0xa7], 0
je 0x1400f7a58
mov rcx, rax
call fcn.14006a560
test al, al
jne 0x1400f7a58
cmp byte [rbx + 0xa5], al
je 0x1400f7a58
cmp byte [rbx + 0xa4], al
je 0x1400f7a58
movss xmm1, dword [rbx + 0x28]
divss xmm1, dword [rbx + 0x2c]
mulss xmm1, xmm14
movss xmm0, dword [0x1402c18d8]
comiss xmm0, xmm1
jbe 0x1400f7a58
movss dword [rsp + 0x78], xmm9
movaps xmm10, xmm9
movss dword [rsp + 0x7c], xmm9
movaps xmm6, xmm9
movss dword [rbp - 0x80], xmm6
xorps xmm0, xmm0
xor eax, eax
movups xmmword [rbp + 0x228], xmm0
mov qword [rbp + 0x238], rax
lea rcx, [rbx + 0x238]
lea rdx, [rbp + 0x228]
call fcn.140036100
nop
mov rcx, qword [rbp + 0x230]
mov r10, qword [rbp + 0x228]
sub rcx, r10
movabs rax, 0x2aaaaaaaaaaaaaab
imul rcx
sar rdx, 1
mov rax, rdx
shr rax, 0x3f
add rdx, rax
je 0x1400f7a4c
xor r9d, r9d
lea rax, [rdx - 1]
movss xmm11, dword [0x1402fba38]
movss xmm13, dword [0x1402fba34]
movss xmm12, dword [0x1402fba30]
movss xmm7, dword [0x1402c1b34]
movss xmm8, dword [0x1402c1880]
test rax, rax
je 0x1400f794b
lea r11, [rdx - 1]
lea r8, [r10 + 8]
nop word [rax + rax]
movss xmm1, dword [r8 - 8]
ucomiss xmm1, xmm12
jp 0x1400f78ab
jne 0x1400f78ab
lea rax, [r8 - 4]
movss xmm0, dword [rax]
ucomiss xmm0, xmm13
jp 0x1400f78ab
jne 0x1400f78ab
movss xmm0, dword [r8]
ucomiss xmm0, xmm11
jp 0x1400f78ab
je 0x1400f78d9
lea rax, [r8 - 4]
comiss xmm1, xmm7
jbe 0x1400f78d9
movss xmm0, dword [rax]
comiss xmm0, xmm7
jbe 0x1400f78d9
movss xmm2, dword [r8]
comiss xmm2, xmm7
jbe 0x1400f78d9
comiss xmm8, xmm1
jbe 0x1400f78d9
comiss xmm8, xmm0
jbe 0x1400f78d9
comiss xmm8, xmm2
ja 0x1400f78fa
ucomiss xmm1, xmm12
jp 0x1400f78fa
jne 0x1400f78fa
movss xmm0, dword [rax]
ucomiss xmm0, xmm13
jp 0x1400f78fa
jne 0x1400f78fa
movss xmm0, dword [r8]
ucomiss xmm0, xmm11
jp 0x1400f78fa
je 0x1400f7925
lea eax, [r9 + 1]
movsxd rcx, eax
lea rax, [rcx + rcx*2]
lea rcx, [r10 + rax*4]
call fcn.1401ca920
test al, al
je 0x1400f7925
movsd xmm0, qword [r8 + 4]
movsd qword [rsp + 0x78], xmm0
mov eax, dword [r8 + 0xc]
mov dword [rbp - 0x80], eax
inc r9d
add r8, 0xc
movsxd rax, r9d
cmp rax, r11
jb 0x1400f7880
movss xmm6, dword [rbp - 0x80]
movss xmm10, dword [rsp + 0x7c]
movss xmm9, dword [rsp + 0x78]
ucomiss xmm9, xmm12
jp 0x1400f7963
jne 0x1400f7963
ucomiss xmm10, xmm13
jp 0x1400f7963
jne 0x1400f7963
ucomiss xmm6, xmm11
jp 0x1400f7963
je 0x1400f7986
comiss xmm9, xmm7
jbe 0x1400f7986
comiss xmm10, xmm7
jbe 0x1400f7986
comiss xmm6, xmm7
jbe 0x1400f7986
comiss xmm8, xmm9
jbe 0x1400f7986
comiss xmm8, xmm10
jbe 0x1400f7986
comiss xmm8, xmm6
ja 0x1400f79a2
ucomiss xmm9, xmm12
jp 0x1400f79a2
jne 0x1400f79a2
ucomiss xmm10, xmm13
jp 0x1400f79a2
jne 0x1400f79a2
ucomiss xmm6, xmm11
jp 0x1400f79a2
je 0x1400f7a43
mov rax, qword [0x1402fb580]
movsd xmm0, qword [rbx + 8]
movss xmm8, dword [rax + 8]
movaps xmm1, xmm8
movsd qword [rsp + 0x60], xmm0
subss xmm1, xmm0
movss xmm10, dword [rax + 0x10]
movaps xmm2, xmm10
subss xmm2, dword [rbx + 0x10]
mulss xmm2, xmm2
mulss xmm1, xmm1
addss xmm2, xmm1
xorps xmm0, xmm0
ucomiss xmm0, xmm2
ja 0x1400f79ee
xorps xmm7, xmm7
sqrtss xmm7, xmm2
jmp 0x1400f79f9
movaps xmm0, xmm2
call sub.api_ms_win_crt_math_l1_1_0.dll_sqrtf
movaps xmm7, xmm0
subss xmm9, xmm8
subss xmm6, xmm10
mulss xmm6, xmm6
mulss xmm9, xmm9
addss xmm6, xmm9
xorps xmm0, xmm0
ucomiss xmm0, xmm6
ja 0x1400f7a22
xorps xmm0, xmm0
sqrtss xmm0, xmm6
jmp 0x1400f7a2a
movaps xmm0, xmm6
call sub.api_ms_win_crt_math_l1_1_0.dll_sqrtf
comiss xmm0, xmm7
jbe 0x1400f7a43
call fcn.14013edd0
xor r8d, r8d
lea edx, [r8 + 2]
mov rcx, rax
call fcn.14006db10
movss xmm12, dword [0x1402c1908]
lea rcx, [rbp + 0x228]
call fcn.140034100
mov rbx, qword [0x1402fb580]
mov rax, qword [r15 + 0x80]
movss xmm11, dword [0x1402c1998]
movss xmm10, dword [0x1402c19fc]
cmp byte [rax + 0x2b0], 0
je 0x1400f8380
cmp dword [rbx + 0x3e0], 0
jbe 0x1400f7a9b
cmp dword [rbx + 0x3dc], 0
je 0x1400f8380
movss xmm0, dword [0x1402fb3b0]
comiss xmm0, dword [rbx + 0x3e8]
jb 0x1400f8380
mov eax, dword [rbx + 0x3d8]
test eax, eax
je 0x1400f8380
dec eax
movss xmm0, dword [rbx + 0x30]
comiss xmm0, dword [rbx + rax*4 + 0x410]
jb 0x1400f8380
comiss xmm0, xmm14
jb 0x1400f8380
mov al, 0x6b
mov dword [rsp + 0x50], 0x7369616b
mov dword [rsp + 0x54], 0x6561
movzx eax, al
xor eax, 0x811c9dc5
imul edx, eax, 0x1000193
lea rcx, [rsp + 0x51]
call fcn.1400356d0
mov rcx, qword [rbx + 0x180]
mov rdx, qword [rbx + 0x188]
cmp rcx, rdx
je 0x1400f7b32
nop word [rax + rax]
cmp dword [rcx + 0x30], eax
je 0x1400f8380
add rcx, 0x50
cmp rcx, rdx
jne 0x1400f7b20
cmp byte [rbx + 0xe8], 0
je 0x1400f7b51
cmp byte [rbx + 0x130], 0
je 0x1400f7b51
cmp dword [rbx + 0x138], 1
jne 0x1400f7b51
mov al, 1
jmp 0x1400f7b53
xor al, al
test al, al
jne 0x1400f8380
call fcn.14013e9d0
mov rcx, qword [0x1402fb580]
movsd xmm0, qword [rcx + 8]
movsd qword [rsp + 0x30], xmm0
mov ecx, dword [rcx + 0x10]
mov dword [rsp + 0x38], ecx
lea r9, [rsp + 0x30]
movss xmm2, dword [0x1402c1a3c]
lea rdx, [rbp + 0x210]
mov rcx, rax
call fcn.1401b61b0
nop
mov rsi, qword [rbp + 0x210]
mov r13, qword [rbp + 0x218]
cmp rsi, r13
je 0x1400f836d
movss xmm9, dword [0x1402c18a8]
movss xmm7, dword [0x1402c1a10]
movss xmm8, dword [0x1402c1a1c]
nop word [rax + rax]
mov rbx, qword [rsi]
test rbx, rbx
je 0x1400f835b
cmp byte [rbx + 0xa7], 0
je 0x1400f835b
mov rcx, rbx
call fcn.14006a560
test al, al
jne 0x1400f835b
cmp byte [rbx + 0xa5], al
je 0x1400f835b
cmp byte [rbx + 0xa4], al
je 0x1400f835b
mov rbx, qword [0x1402fb580]
movss xmm0, dword [rbx + 0x28]
divss xmm0, dword [rbx + 0x2c]
mulss xmm0, xmm14
comiss xmm9, xmm0
jbe 0x1400f835b
mov rdi, qword [rsi]
movdqa xmm0, xmmword [0x1402c2df0]
movdqu xmmword [rbp + 0x6c0], xmm0
mov dword [rbp + 0x6d0], 0x7265
movd eax, xmm0
test al, al
jne 0x1400f7c5d
mov eax, 0x811c9dc5
jmp 0x1400f7c77
movzx eax, al
xor eax, 0x811c9dc5
imul edx, eax, 0x1000193
lea rcx, [rbp + 0x6c1]
call fcn.1400356d0
mov rcx, qword [rdi + 0x180]
mov rdx, qword [rdi + 0x188]
cmp rcx, rdx
je 0x1400f835b
nop
cmp dword [rcx + 0x30], eax
je 0x1400f7ca3
add rcx, 0x50
cmp rcx, rdx
jne 0x1400f7c90
jmp 0x1400f835b
cmp dword [rdi + 0xac], 1
jne 0x1400f800d
movsd xmm0, qword [rbx + 8]
movss xmm1, dword [rdi + 8]
movsd qword [rsp + 0x40], xmm0
subss xmm1, xmm0
movss xmm2, dword [rdi + 0x10]
subss xmm2, dword [rbx + 0x10]
mulss xmm2, xmm2
mulss xmm1, xmm1
addss xmm2, xmm1
xorps xmm0, xmm0
ucomiss xmm0, xmm2
ja 0x1400f7ceb
xorps xmm0, xmm0
sqrtss xmm0, xmm2
jmp 0x1400f7cf3
movaps xmm0, xmm2
call sub.api_ms_win_crt_math_l1_1_0.dll_sqrtf
comiss xmm11, xmm0
jb 0x1400f800d
mov r9b, 1
mov r8, rdi
lea rdx, [rbp + 0x68]
call fcn.1400f8940
movss xmm1, dword [rbp + 0x70]
movss xmm2, dword [rbp + 0x68]
ucomiss xmm2, dword [0x1402fba30]
jp 0x1400f7d40
jne 0x1400f7d40
movss xmm0, dword [rbp + 0x6c]
ucomiss xmm0, dword [0x1402fba34]
jp 0x1400f7d40
jne 0x1400f7d40
ucomiss xmm1, dword [0x1402fba38]
jp 0x1400f7d40
je 0x1400f7e83
mov rax, qword [rsi]
subss xmm2, dword [rax + 8]
subss xmm1, dword [rax + 0x10]
mulss xmm1, xmm1
mulss xmm2, xmm2
addss xmm1, xmm2
xorps xmm0, xmm0
ucomiss xmm0, xmm1
ja 0x1400f7d6a
xorps xmm0, xmm0
sqrtss xmm0, xmm1
jmp 0x1400f7d72
movaps xmm0, xmm1
call sub.api_ms_win_crt_math_l1_1_0.dll_sqrtf
comiss xmm10, xmm0
jb 0x1400f7e83
call fcn.14013edd0
mov r15, rax
mov rcx, qword [0x1402fb490]
cmp byte [rcx + 0x6c], 0
jne 0x1400f8006
mov r14, qword [0x1402fb580]
xorps xmm0, xmm0
movdqu xmmword [rbp + 0x90], xmm0
mov qword [rbp + 0xa0], 0
mov rdx, qword [0x1402fe798]
sub rdx, qword [0x1402fe790]
je 0x1400f7dfc
lea rcx, [rbp + 0x90]
call fcn.140014500
mov rdi, qword [rbp + 0x90]
mov rdx, qword [0x1402fe790]
mov rbx, qword [0x1402fe798]
sub rbx, rdx
mov r8, rbx
mov rcx, rdi
call sub.VCRUNTIME140.dll_memmove
lea rax, [rbx + rdi]
mov qword [rbp + 0x98], rax
lea rdx, [rbp + 0x90]
lea rcx, [r14 + 0x170]
call fcn.140066940
test al, al
jne 0x1400f8006
mov rax, qword [0x1402fb4f0]
cmp dword [rax + 0x154], 1
je 0x1400f8006
mov rcx, qword [0x1402fb9c0]
test rcx, rcx
jne 0x1400f7e5a
mov ecx, 0x36e490
call fcn.14022869c
mov qword [rbp + 0x110], rax
mov rcx, rax
call fcn.1401d6670
mov rcx, rax
mov qword [0x1402fb9c0], rax
movsd xmm0, qword [rbp + 0x68]
movsd qword [rbp + 0xf0], xmm0
mov eax, dword [rbp + 0x70]
mov dword [rbp + 0xf8], eax
lea r8, [rbp + 0xf0]
lea rdx, [rbp + 0x118]
jmp 0x1400f7fdd
mov rax, qword [rsi]
mov rbx, qword [0x1402fb580]
movsd xmm0, qword [rbx + 8]
movss xmm1, dword [rax + 8]
movsd qword [rsp + 0x40], xmm0
subss xmm1, xmm0
movss xmm2, dword [rax + 0x10]
subss xmm2, dword [rbx + 0x10]
mulss xmm2, xmm2
mulss xmm1, xmm1
addss xmm2, xmm1
xorps xmm0, xmm0
ucomiss xmm0, xmm2
ja 0x1400f7ec8
xorps xmm0, xmm0
sqrtss xmm0, xmm2
jmp 0x1400f7ed0
movaps xmm0, xmm2
call sub.api_ms_win_crt_math_l1_1_0.dll_sqrtf
comiss xmm7, xmm0
jb 0x1400f800d
call fcn.14013edd0
mov r15, rax
mov rbx, qword [0x1402fb580]
movsd xmm6, qword [rbx + 8]
mov r12d, dword [rbx + 0x10]
mov rcx, qword [0x1402fb490]
cmp byte [rcx + 0x6c], 0
jne 0x1400f800d
lea r14, [rbx + 0x170]
xorps xmm0, xmm0
movdqu xmmword [rbp + 0xa8], xmm0
mov qword [rbp + 0xb8], 0
mov rdx, qword [0x1402fe798]
sub rdx, qword [0x1402fe790]
je 0x1400f7f69
lea rcx, [rbp + 0xa8]
call fcn.140014500
mov rdi, qword [rbp + 0xa8]
mov rdx, qword [0x1402fe790]
mov rbx, qword [0x1402fe798]
sub rbx, rdx
mov r8, rbx
mov rcx, rdi
call sub.VCRUNTIME140.dll_memmove
lea rax, [rdi + rbx]
mov qword [rbp + 0xb0], rax
lea rdx, [rbp + 0xa8]
mov rcx, r14
call fcn.140066940
test al, al
jne 0x1400f8006
mov rax, qword [0x1402fb4f0]
cmp dword [rax + 0x154], 1
je 0x1400f8006
mov rax, qword [0x1402fb9c0]
test rax, rax
jne 0x1400f7fbd
mov ecx, 0x36e490
call fcn.14022869c
mov qword [rbp + 0x120], rax
mov rcx, rax
call fcn.1401d6670
nop
mov qword [0x1402fb9c0], rax
movsd qword [rbp + 0x100], xmm6
mov dword [rbp + 0x108], r12d
lea r8, [rbp + 0x100]
lea rdx, [rbp + 0x128]
mov rcx, rax
call fcn.1401d5b90
xor r9d, r9d
mov r8, qword [rax]
lea edx, [r9 + 3]
mov rcx, r15
call fcn.14006d7b0
test al, al
je 0x1400f8006
mov rax, qword [0x1402fb4f0]
mov byte [rax + 0x180], 1
mov rbx, qword [0x1402fb580]
mov rdi, qword [rsi]
cmp dword [rdi + 0xac], 1
je 0x1400f835b
movsd xmm0, qword [rbx + 8]
movss xmm1, dword [rdi + 8]
movsd qword [rsp + 0x40], xmm0
subss xmm1, xmm0
movss xmm2, dword [rdi + 0x10]
subss xmm2, dword [rbx + 0x10]
mulss xmm2, xmm2
mulss xmm1, xmm1
addss xmm2, xmm1
xorps xmm0, xmm0
ucomiss xmm0, xmm2
ja 0x1400f8058
xorps xmm0, xmm0
sqrtss xmm0, xmm2
jmp 0x1400f8060
movaps xmm0, xmm2
call sub.api_ms_win_crt_math_l1_1_0.dll_sqrtf
comiss xmm8, xmm0
jb 0x1400f835b
mov r9b, 1
mov r8, rdi
lea rdx, [rsp + 0x30]
call fcn.1400f8940
movss xmm1, dword [rsp + 0x38]
movss xmm2, dword [rsp + 0x30]
ucomiss xmm2, dword [0x1402fba30]
jp 0x1400f80b1
jne 0x1400f80b1
movss xmm0, dword [rsp + 0x34]
ucomiss xmm0, dword [0x1402fba34]
jp 0x1400f80b1
jne 0x1400f80b1
ucomiss xmm1, dword [0x1402fba38]
jp 0x1400f80b1
je 0x1400f81f6
mov rax, qword [rsi]
subss xmm2, dword [rax + 8]
subss xmm1, dword [rax + 0x10]
mulss xmm1, xmm1
mulss xmm2, xmm2
addss xmm1, xmm2
xorps xmm0, xmm0
ucomiss xmm0, xmm1
ja 0x1400f80db
xorps xmm0, xmm0
sqrtss xmm0, xmm1
jmp 0x1400f80e3
movaps xmm0, xmm1
call sub.api_ms_win_crt_math_l1_1_0.dll_sqrtf
comiss xmm10, xmm0
jb 0x1400f81f6
call fcn.14013edd0
mov r15, rax
mov rcx, qword [0x1402fb490]
cmp byte [rcx + 0x6c], 0
jne 0x1400f835b
mov r14, qword [0x1402fb580]
xorps xmm0, xmm0
movdqu xmmword [rbp + 0xc0], xmm0
mov qword [rbp + 0xd0], 0
mov rdx, qword [0x1402fe798]
sub rdx, qword [0x1402fe790]
je 0x1400f816d
lea rcx, [rbp + 0xc0]
call fcn.140014500
mov rdi, qword [rbp + 0xc0]
mov rdx, qword [0x1402fe790]
mov rbx, qword [0x1402fe798]
sub rbx, rdx
mov r8, rbx
mov rcx, rdi
call sub.VCRUNTIME140.dll_memmove
lea rax, [rbx + rdi]
mov qword [rbp + 0xc8], rax
lea rdx, [rbp + 0xc0]
lea rcx, [r14 + 0x170]
call fcn.140066940
test al, al
jne 0x1400f835b
mov rax, qword [0x1402fb4f0]
cmp dword [rax + 0x154], 1
je 0x1400f835b
mov rcx, qword [0x1402fb9c0]
test rcx, rcx
jne 0x1400f81cb
mov ecx, 0x36e490
call fcn.14022869c
mov qword [rbp + 0x130], rax
mov rcx, rax
call fcn.1401d6670
mov rcx, rax
mov qword [0x1402fb9c0], rax
movsd xmm0, qword [rsp + 0x30]
movsd qword [rbp + 0x80], xmm0
mov eax, dword [rsp + 0x38]
mov dword [rbp + 0x88], eax
lea r8, [rbp + 0x80]
lea rdx, [rbp + 0xd8]
jmp 0x1400f8332
mov rcx, qword [rsi]
mov rax, qword [0x1402fb580]
movsd xmm0, qword [rax + 8]
movss xmm1, dword [rcx + 8]
movsd qword [rsp + 0x40], xmm0
subss xmm1, xmm0
movss xmm2, dword [rcx + 0x10]
subss xmm2, dword [rax + 0x10]
mulss xmm2, xmm2
mulss xmm1, xmm1
addss xmm2, xmm1
xorps xmm0, xmm0
ucomiss xmm0, xmm2
ja 0x1400f823b
xorps xmm0, xmm0
sqrtss xmm0, xmm2
jmp 0x1400f8243
movaps xmm0, xmm2
call sub.api_ms_win_crt_math_l1_1_0.dll_sqrtf
comiss xmm7, xmm0
jb 0x1400f835b
call fcn.14013edd0
mov r15, rax
mov rdx, qword [0x1402fb580]
movsd xmm6, qword [rdx + 8]
mov r12d, dword [rdx + 0x10]
mov rcx, qword [0x1402fb490]
cmp byte [rcx + 0x6c], 0
jne 0x1400f835b
lea r14, [rdx + 0x170]
xorps xmm0, xmm0
movdqu xmmword [rbp - 0x78], xmm0
mov qword [rbp - 0x68], 0
mov rdx, qword [0x1402fe798]
sub rdx, qword [0x1402fe790]
je 0x1400f82cd
lea rcx, [rbp - 0x78]
call fcn.140014500
mov rdi, qword [rbp - 0x78]
mov rdx, qword [0x1402fe790]
mov rbx, qword [0x1402fe798]
sub rbx, rdx
mov r8, rbx
mov rcx, rdi
call sub.VCRUNTIME140.dll_memmove
lea rax, [rbx + rdi]
mov qword [rbp - 0x70], rax
lea rdx, [rbp - 0x78]
mov rcx, r14
call fcn.140066940
test al, al
jne 0x1400f835b
mov rax, qword [0x1402fb4f0]
cmp dword [rax + 0x154], 1
je 0x1400f835b
mov rax, qword [0x1402fb9c0]
test rax, rax
jne 0x1400f831a
mov ecx, 0x36e490
call fcn.14022869c
mov qword [rbp + 0xe0], rax
mov rcx, rax
call fcn.1401d6670
nop
mov qword [0x1402fb9c0], rax
movsd qword [rsp + 0x60], xmm6
mov dword [rsp + 0x68], r12d
lea r8, [rsp + 0x60]
lea rdx, [rsp + 0x78]
mov rcx, rax
call fcn.1401d5b90
xor r9d, r9d
mov r8, qword [rax]
lea edx, [r9 + 3]
mov rcx, r15
call fcn.14006d7b0
test al, al
je 0x1400f835b
mov rax, qword [0x1402fb4f0]
mov byte [rax + 0x180], 1
add rsi, 8
cmp rsi, r13
jne 0x1400f7bd0
mov r15, qword [rsp + 0x70]
lea rcx, [rbp + 0x210]
call fcn.140033e60
mov rbx, qword [0x1402fb580]
mov rax, qword [r15 + 0x88]
cmp byte [rax + 0x2b0], 0
je 0x1400f88cf
cmp dword [rbx + 0x3e0], 0
jbe 0x1400f83aa
cmp dword [rbx + 0x3dc], 0
je 0x1400f88cf
movss xmm0, dword [0x1402fb3b0]
comiss xmm0, dword [rbx + 0x3e8]
jb 0x1400f88cf
mov eax, dword [rbx + 0x3d8]
test eax, eax
je 0x1400f88cf
dec eax
movss xmm0, dword [rbx + 0x30]
comiss xmm0, dword [rbx + rax*4 + 0x410]
jb 0x1400f88cf
comiss xmm0, xmm14
jb 0x1400f88cf
mov al, 0x6b
mov dword [rsp + 0x40], 0x7369616b
mov dword [rsp + 0x44], 0x6561
movzx eax, al
xor eax, 0x811c9dc5
imul edx, eax, 0x1000193
lea rcx, [rsp + 0x41]
call fcn.1400356d0
mov rcx, qword [rbx + 0x180]
mov rdx, qword [rbx + 0x188]
cmp rcx, rdx
je 0x1400f8442
nop dword [rax]
cmp dword [rcx + 0x30], eax
je 0x1400f88cf
add rcx, 0x50
cmp rcx, rdx
jne 0x1400f8430
cmp byte [rbx + 0xe8], 0
je 0x1400f8461
cmp byte [rbx + 0x130], 0
je 0x1400f8461
cmp dword [rbx + 0x138], 1
jne 0x1400f8461
mov al, 1
jmp 0x1400f8463
xor al, al
test al, al
jne 0x1400f88cf
mov dword [rbp + 0x6c0], 0x44bb8000
movaps xmm0, xmmword [0x1402c1b80]
movups xmmword [rbp + 0x6c4], xmm0
mov eax, dword [rbx + 0x3d8]
dec eax
movss xmm9, dword [rbp + rax*4 + 0x6c0]
call fcn.14013e9d0
mov rcx, qword [0x1402fb580]
movsd xmm0, qword [rcx + 8]
movsd qword [rsp + 0x60], xmm0
mov ecx, dword [rcx + 0x10]
mov dword [rsp + 0x68], ecx
lea r9, [rsp + 0x60]
movss xmm2, dword [0x1402c1ad8]
lea rdx, [rbp + 0x210]
mov rcx, rax
call fcn.1401b61b0
nop
mov r14, qword [rbp + 0x210]
mov r12, qword [rbp + 0x218]
cmp r14, r12
je 0x1400f88c3
movss xmm8, dword [0x1402c1a48]
mov rbx, qword [r14]
test rbx, rbx
je 0x1400f88b6
cmp byte [rbx + 0xa7], 0
je 0x1400f88b6
mov rcx, rbx
call fcn.14006a560
test al, al
jne 0x1400f88b6
cmp byte [rbx + 0xa5], al
je 0x1400f88b6
cmp byte [rbx + 0xa4], al
je 0x1400f88b6
mov rdi, qword [0x1402fb580]
movss xmm1, dword [rdi + 0x28]
divss xmm1, dword [rdi + 0x2c]
mulss xmm1, xmm14
mov rax, qword [r15 + 0xa0]
movd xmm0, dword [rax + 0x2b0]
cvtdq2ps xmm0, xmm0
comiss xmm1, xmm0
jbe 0x1400f88b6
mov rbx, qword [r14]
movdqa xmm0, xmmword [0x1402c2df0]
movdqu xmmword [rbp + 0x6c0], xmm0
mov dword [rbp + 0x6d0], 0x7265
movd eax, xmm0
test al, al
jne 0x1400f858e
mov eax, 0x811c9dc5
jmp 0x1400f85a8
movzx eax, al
xor eax, 0x811c9dc5
imul edx, eax, 0x1000193
lea rcx, [rbp + 0x6c1]
call fcn.1400356d0
mov rcx, qword [rbx + 0x180]
mov rdx, qword [rbx + 0x188]
cmp rcx, rdx
je 0x1400f88b6
nop
cmp dword [rcx + 0x30], eax
je 0x1400f85d3
add rcx, 0x50
cmp rcx, rdx
jne 0x1400f85c0
jmp 0x1400f88b6
movsd xmm0, qword [rdi + 8]
movss xmm1, dword [rbx + 8]
subss xmm1, xmm0
movss xmm2, dword [rbx + 0x10]
subss xmm2, dword [rdi + 0x10]
mulss xmm2, xmm2
mulss xmm1, xmm1
addss xmm2, xmm1
xorps xmm0, xmm0
ucomiss xmm0, xmm2
ja 0x1400f8608
xorps xmm0, xmm0
sqrtss xmm0, xmm2
jmp 0x1400f8610
movaps xmm0, xmm2
call sub.api_ms_win_crt_math_l1_1_0.dll_sqrtf
movss xmm1, dword [rdi + 0xd4]
comiss xmm1, xmm15
jbe 0x1400f8622
movaps xmm1, xmm12
addss xmm1, dword [rdi + 0x4c]
addss xmm1, xmm11
comiss xmm0, xmm1
jbe 0x1400f88b6
movss xmm1, dword [rbx + 0x28]
divss xmm1, dword [rbx + 0x2c]
mulss xmm1, xmm14
mov rax, qword [r15 + 0x90]
movd xmm0, dword [rax + 0x2b0]
cvtdq2ps xmm0, xmm0
comiss xmm0, xmm1
jbe 0x1400f88b6
xor r9d, r9d
mov r8, rbx
lea rdx, [rsp + 0x30]
call fcn.1400f8940
movss xmm6, dword [rsp + 0x38]
movss xmm7, dword [rsp + 0x30]
ucomiss xmm7, dword [0x1402fba30]
jp 0x1400f86a6
jne 0x1400f86a6
movss xmm0, dword [rsp + 0x34]
ucomiss xmm0, dword [0x1402fba34]
jp 0x1400f86a6
jne 0x1400f86a6
ucomiss xmm6, dword [0x1402fba38]
jp 0x1400f86a6
je 0x1400f88b6
call fcn.14013e9d0
mov rbx, qword [rax + 0x18]
mov rsi, qword [rax + 0x20]
mov rdi, qword [0x1402fb580]
cmp rbx, rsi
je 0x1400f871e
nop
cmp byte [rbx + 0xa7], 0
je 0x1400f8712
mov eax, dword [rdi + 0x1c]
cmp dword [rbx + 0x1c], eax
je 0x1400f8712
movss xmm0, dword [rbx + 8]
subss xmm0, xmm7
movss xmm1, dword [rbx + 0x10]
subss xmm1, xmm6
mulss xmm1, xmm1
mulss xmm0, xmm0
addss xmm1, xmm0
xorps xmm0, xmm0
ucomiss xmm0, xmm1
ja 0x1400f8700
xorps xmm0, xmm0
sqrtss xmm0, xmm1
jmp 0x1400f8708
movaps xmm0, xmm1
call sub.api_ms_win_crt_math_l1_1_0.dll_sqrtf
comiss xmm8, xmm0
jae 0x1400f88b6
add rbx, 0x230
cmp rbx, rsi
jne 0x1400f86c0
movaps xmm1, xmm7
subss xmm1, dword [rdi + 8]
movaps xmm0, xmm6
subss xmm0, dword [rdi + 0x10]
mulss xmm1, xmm1
mulss xmm0, xmm0
addss xmm1, xmm0
xorps xmm0, xmm0
ucomiss xmm0, xmm1
ja 0x1400f874b
xorps xmm0, xmm0
sqrtss xmm0, xmm1
jmp 0x1400f8753
movaps xmm0, xmm1
call sub.api_ms_win_crt_math_l1_1_0.dll_sqrtf
comiss xmm9, xmm0
jbe 0x1400f88b6
mov rax, qword [r14]
subss xmm7, dword [rax + 8]
subss xmm6, dword [rax + 0x10]
mulss xmm6, xmm6
mulss xmm7, xmm7
addss xmm6, xmm7
xorps xmm0, xmm0
ucomiss xmm0, xmm6
ja 0x1400f8787
xorps xmm0, xmm0
sqrtss xmm0, xmm6
jmp 0x1400f878f
movaps xmm0, xmm6
call sub.api_ms_win_crt_math_l1_1_0.dll_sqrtf
comiss xmm10, xmm0
jb 0x1400f88b6
call fcn.14013edd0
mov r15, rax
mov rcx, qword [0x1402fb490]
cmp byte [rcx + 0x6c], 0
jne 0x1400f88b1
mov rsi, qword [0x1402fb580]
xorps xmm0, xmm0
movdqu xmmword [rbp - 0x78], xmm0
mov qword [rbp - 0x68], 0
mov rdx, qword [0x1402fe798]
sub rdx, qword [0x1402fe790]
je 0x1400f880a
lea rcx, [rbp - 0x78]
call fcn.140014500
mov rdi, qword [rbp - 0x78]
mov rdx, qword [0x1402fe790]
mov rbx, qword [0x1402fe798]
sub rbx, rdx
mov r8, rbx
mov rcx, rdi
call sub.VCRUNTIME140.dll_memmove
lea rax, [rdi + rbx]
mov qword [rbp - 0x70], rax
lea rdx, [rbp - 0x78]
lea rcx, [rsi + 0x170]
call fcn.140066940
test al, al
jne 0x1400f88b1
mov rax, qword [0x1402fb4f0]
cmp dword [rax + 0x154], 1
je 0x1400f88b1
mov rcx, qword [0x1402fb9c0]
test rcx, rcx
jne 0x1400f8861
mov ecx, 0x36e490
call fcn.14022869c
mov qword [rbp + 0xe0], rax
mov rcx, rax
call fcn.1401d6670
mov rcx, rax
mov qword [0x1402fb9c0], rax
movsd xmm0, qword [rsp + 0x30]
movsd qword [rsp + 0x60], xmm0
mov eax, dword [rsp + 0x38]
mov dword [rsp + 0x68], eax
lea r8, [rsp + 0x60]
lea rdx, [rbp + 0xd8]
call fcn.1401d5b90
xor r9d, r9d
mov r8, qword [rax]
lea edx, [r9 + 3]
mov rcx, r15
call fcn.14006d7b0
mov r15, qword [rsp + 0x70]
test al, al
je 0x1400f88b6
mov rax, qword [0x1402fb4f0]
mov byte [rax + 0x180], 1
jmp 0x1400f88b6
mov r15, qword [rsp + 0x70]
add r14, 8
cmp r14, r12
jne 0x1400f84f0
lea rcx, [rbp + 0x210]
call fcn.140033e60
mov rcx, qword [rbp + 0x6d8]
xor rcx, rsp
call fcn.1402283f0
lea r11, [rsp + 0x880]
mov rbx, qword [r11 + 0x38]
mov rsi, qword [r11 + 0x40]
mov rdi, qword [r11 + 0x48]
movaps xmm6, xmmword [r11 - 0x10]
movaps xmm7, xmmword [r11 - 0x20]
movaps xmm8, xmmword [r11 - 0x30]
movaps xmm9, xmmword [r11 - 0x40]
movaps xmm10, xmmword [r11 - 0x50]
movaps xmm11, xmmword [r11 - 0x60]
movaps xmm12, xmmword [r11 - 0x70]
movaps xmm13, xmmword [r11 - 0x80]
movaps xmm14, xmmword [r11 - 0x90]
movaps xmm15, xmmword [r11 - 0xa0]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rbp
ret