Function at 0x1400f2110
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 - 0x2d8]
sub rsp, 0x3b0
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
mov rax, qword [0x1402e8018]
xor rax, rsp
mov qword [rbp + 0x210], rax
mov r13, rcx
mov qword [rsp + 0x48], rcx
mov rax, qword [rcx + 0x28]
movss xmm10, dword [0x1402b87a8]
cmp byte [rax + 0x2b0], 0
je 0x1400f227b
mov rbx, qword [0x1402f0cc0]
cmp dword [rbx + 0x2b8], 0
jbe 0x1400f21bd
cmp dword [rbx + 0x2b4], 0
je 0x1400f2282
movss xmm0, dword [0x1402f0af0]
comiss xmm0, dword [rbx + 0x2c0]
jb 0x1400f2282
mov eax, dword [rbx + 0x2b0]
test eax, eax
je 0x1400f2282
dec eax
movss xmm0, dword [rbx + 0x30]
comiss xmm0, dword [rbx + rax*4 + 0x2e8]
jb 0x1400f2282
comiss xmm0, dword [0x1402b8690]
jb 0x1400f2282
movaps xmm1, xmm10
call fcn.1401bc430
mov rbx, rax
test rax, rax
je 0x1400f227b
cmp byte [rax + 0xa7], 0
je 0x1400f227b
mov rcx, rax
call fcn.140066ad0
test al, al
jne 0x1400f227b
cmp byte [rbx + 0xa5], al
je 0x1400f227b
cmp byte [rbx + 0xa4], al
je 0x1400f227b
mov rax, qword [r13 + 0x30]
cmp byte [rax + 0x2b0], 0
je 0x1400f2269
mov rbx, qword [0x1402f0c20]
mov rcx, rbx
call fcn.140153900
test al, al
jne 0x1400f227b
cmp dword [rbx + 0x154], 0
je 0x1400f227b
cmp byte [rbx + 0x183], al
jne 0x1400f227b
call fcn.140139ee0
xor r8d, r8d
xor edx, edx
mov rcx, rax
call fcn.140069dd0
mov rbx, qword [0x1402f0cc0]
mov rax, qword [r13 + 0x40]
movss xmm13, dword [0x1402b8758]
movss xmm14, dword [0x1402b869c]
xorps xmm9, xmm9
movss xmm8, dword [0x1402b8834]
cmp byte [rax + 0x2b0], 0
je 0x1400f2ee7
cmp dword [rbx + 0x320], 0
jbe 0x1400f22c8
cmp dword [rbx + 0x31c], 0
je 0x1400f2ee7
movss xmm0, dword [0x1402f0af0]
comiss xmm0, dword [rbx + 0x328]
jb 0x1400f2ee7
mov eax, dword [rbx + 0x318]
test eax, eax
je 0x1400f2ee7
dec eax
movss xmm0, dword [rbx + 0x30]
comiss xmm0, dword [rbx + rax*4 + 0x350]
jb 0x1400f2ee7
mov eax, dword [rbx + 0x318]
dec eax
comiss xmm0, dword [r13 + rax*4 + 0xc]
jbe 0x1400f2ee7
cmp byte [rbx + 0xe8], 0
je 0x1400f2333
cmp byte [rbx + 0x130], 0
je 0x1400f2333
cmp dword [rbx + 0x138], 1
je 0x1400f2ee7
movss xmm1, dword [r13 + 0x20]
addss xmm1, dword [0x1402b87fc]
movss xmm0, dword [0x1402f0ad4]
comiss xmm0, xmm1
jbe 0x1400f2ee7
cmp dword [r13 + 0x60], 1
jne 0x1400f2628
movss xmm1, dword [rbx + 0xd4]
comiss xmm1, xmm13
jbe 0x1400f236f
movaps xmm1, xmm14
addss xmm1, dword [rbx + 0x4c]
call fcn.1401bc430
mov rbx, rax
test rax, rax
je 0x1400f2621
cmp byte [rax + 0xa7], 0
je 0x1400f2621
mov rcx, rax
call fcn.140066ad0
test al, al
jne 0x1400f2621
cmp byte [rbx + 0xa5], al
je 0x1400f2621
cmp byte [rbx + 0xa4], al
je 0x1400f2621
movaps xmm0, xmmword [0x1402b9990]
mov dword [rbp - 0x80], 0
mov dword [rbp - 0x7c], 1
mov byte [rbp - 0x78], 1
movss xmm1, dword [0x1402f1148]
movss xmm2, dword [0x1402f114c]
movss xmm3, dword [0x1402f1150]
mov qword [rbp - 0x68], 0
mov qword [rbp - 0x60], 0
mov byte [rbp - 0x58], al
mov dword [rbp - 0x54], 0
movaps xmmword [rbp + 0x10], xmm0
movaps xmm0, xmmword [rbp - 0x80]
shufps xmm0, xmm0, 0x93
movss xmm0, xmm1
shufps xmm0, xmm0, 0x39
movaps xmmword [rbp - 0x80], xmm0
movaps xmmword [rbp + 0x20], xmm0
movaps xmm1, xmmword [rbp - 0x70]
movss xmm1, xmm2
shufps xmm1, xmm1, 0xe1
movss xmm1, xmm3
shufps xmm1, xmm1, 0xe1
movaps xmmword [rbp - 0x70], xmm1
movaps xmmword [rbp + 0x30], xmm1
movaps xmm0, xmmword [rbp - 0x60]
movaps xmmword [rbp + 0x40], xmm0
lea r9, [rbp + 0x10]
mov r8, rbx
lea rdx, [rsp + 0x70]
mov rcx, qword [0x1402f0c18]
call fcn.140157c60
movss xmm6, dword [rbp - 0x48]
movss xmm7, dword [rbp - 0x50]
ucomiss xmm7, dword [0x1402f1148]
jp 0x1400f2491
jne 0x1400f2491
movss xmm0, dword [rbp - 0x4c]
ucomiss xmm0, dword [0x1402f114c]
jp 0x1400f2491
jne 0x1400f2491
ucomiss xmm6, dword [0x1402f1150]
jp 0x1400f2491
je 0x1400f2621
cmp dword [rbp - 0x44], 6
jl 0x1400f2621
mov rdi, qword [0x1402f0c20]
mov rcx, rdi
call fcn.140153900
test al, al
jne 0x1400f2621
cmp dword [rdi + 0x154], 0
je 0x1400f2621
cmp byte [rdi + 0x183], al
jne 0x1400f2621
subss xmm7, dword [rbx + 8]
subss xmm6, dword [rbx + 0x10]
mulss xmm6, xmm6
mulss xmm7, xmm7
addss xmm6, xmm7
xorps xmm0, xmm0
ucomiss xmm0, xmm6
ja 0x1400f24f2
xorps xmm0, xmm0
sqrtss xmm0, xmm6
jmp 0x1400f24fa
movaps xmm0, xmm6
call sub.api_ms_win_crt_math_l1_1_0.dll_sqrtf
comiss xmm13, xmm0
jb 0x1400f2621
call fcn.140139ee0
mov r14, rax
mov rcx, qword [0x1402f0bc0]
cmp byte [rcx + 0x6c], 0
jne 0x1400f2621
mov rsi, qword [0x1402f0cc0]
xorps xmm0, xmm0
movdqu xmmword [rbp + 0xe0], xmm0
mov qword [rbp + 0xf0], 0
mov rdx, qword [0x1402f3eb8]
sub rdx, qword [0x1402f3eb0]
je 0x1400f2584
lea rcx, [rbp + 0xe0]
call fcn.140012e50
mov rdi, qword [rbp + 0xe0]
mov rbx, qword [0x1402f3eb8]
mov rdx, qword [0x1402f3eb0]
sub rbx, rdx
mov r8, rbx
mov rcx, rdi
call sub.VCRUNTIME140.dll_memmove
lea rax, [rdi + rbx]
mov qword [rbp + 0xe8], rax
lea rdx, [rbp + 0xe0]
lea rcx, [rsi + 0x170]
call fcn.140062b20
test al, al
jne 0x1400f2621
mov rax, qword [0x1402f0c20]
cmp dword [rax + 0x154], 1
je 0x1400f2621
mov rcx, qword [0x1402f10d8]
test rcx, rcx
jne 0x1400f25dc
mov ecx, 0x36e490
call fcn.14022033c
mov qword [rsp + 0x40], rax
mov rcx, rax
call fcn.1401cf6f0
mov rcx, rax
mov qword [0x1402f10d8], rax
movsd xmm0, qword [rbp - 0x50]
movsd qword [rsp + 0x30], xmm0
mov eax, dword [rbp - 0x48]
mov dword [rsp + 0x38], eax
lea r8, [rsp + 0x30]
lea rdx, [rbp + 0x1c0]
call fcn.1401cec00
mov r8, qword [rax]
mov edx, 1
mov rcx, r14
call fcn.140069d30
test al, al
je 0x1400f2621
movss xmm0, dword [0x1402f0ad4]
movss dword [r13 + 0x20], xmm0
mov rbx, qword [0x1402f0cc0]
cmp dword [r13 + 0x60], 0
jne 0x1400f2901
movaps xmm1, xmm8
call fcn.1401bc430
mov rdi, rax
test rax, rax
je 0x1400f28fa
cmp byte [rax + 0xa7], 0
je 0x1400f28fa
mov rcx, rax
call fcn.140066ad0
test al, al
jne 0x1400f28fa
cmp byte [rdi + 0xa5], al
je 0x1400f28fa
cmp byte [rdi + 0xa4], al
je 0x1400f28fa
mov rbx, qword [0x1402f0cc0]
movss xmm6, dword [rbx + 0xd4]
comiss xmm6, xmm13
jbe 0x1400f2696
movaps xmm6, xmm14
movsd xmm0, qword [rdi + 8]
movss xmm1, dword [rbx + 8]
movsd qword [rsp + 0x50], 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 0x1400f26d1
xorps xmm0, xmm0
sqrtss xmm0, xmm2
jmp 0x1400f26d9
movaps xmm0, xmm2
call sub.api_ms_win_crt_math_l1_1_0.dll_sqrtf
addss xmm6, dword [rbx + 0x4c]
comiss xmm0, xmm6
jbe 0x1400f2901
movaps xmm0, xmmword [0x1402b9990]
mov dword [rbp - 0x80], 0
mov dword [rbp - 0x7c], 1
mov byte [rbp - 0x78], 1
movss xmm1, dword [0x1402f1148]
movss xmm2, dword [0x1402f114c]
movss xmm3, dword [0x1402f1150]
mov qword [rbp - 0x68], 0
mov qword [rbp - 0x60], 0
mov byte [rbp - 0x58], 0
mov dword [rbp - 0x54], 0
movaps xmmword [rbp + 0x10], xmm0
movaps xmm0, xmmword [rbp - 0x80]
shufps xmm0, xmm0, 0x93
movss xmm0, xmm1
shufps xmm0, xmm0, 0x39
movaps xmmword [rbp - 0x80], xmm0
movaps xmmword [rbp + 0x20], xmm0
movaps xmm1, xmmword [rbp - 0x70]
movss xmm1, xmm2
shufps xmm1, xmm1, 0xe1
movss xmm1, xmm3
shufps xmm1, xmm1, 0xe1
movaps xmmword [rbp - 0x70], xmm1
movaps xmmword [rbp + 0x30], xmm1
movaps xmm0, xmmword [rbp - 0x60]
movaps xmmword [rbp + 0x40], xmm0
lea r9, [rbp + 0x10]
mov r8, rdi
lea rdx, [rbp + 0x100]
mov rcx, qword [0x1402f0c18]
call fcn.140157c60
movss xmm0, dword [rbp + 0x140]
ucomiss xmm0, dword [0x1402f1148]
jp 0x1400f27ca
jne 0x1400f27ca
movss xmm0, dword [rbp + 0x144]
ucomiss xmm0, dword [0x1402f114c]
jp 0x1400f27ca
jne 0x1400f27ca
movss xmm0, dword [rbp + 0x148]
ucomiss xmm0, dword [0x1402f1150]
jp 0x1400f27ca
je 0x1400f28fa
cmp dword [rbp + 0x14c], 6
jl 0x1400f28fa
call fcn.140139ee0
mov r14, rax
mov rcx, qword [0x1402f0bc0]
cmp byte [rcx + 0x6c], 0
jne 0x1400f28fa
mov rsi, qword [0x1402f0cc0]
xorps xmm0, xmm0
movdqu xmmword [rbp + 0xc8], xmm0
mov qword [rbp + 0xd8], 0
mov rdx, qword [0x1402f3eb8]
sub rdx, qword [0x1402f3eb0]
je 0x1400f2857
lea rcx, [rbp + 0xc8]
call fcn.140012e50
mov rdi, qword [rbp + 0xc8]
mov rbx, qword [0x1402f3eb8]
mov rdx, qword [0x1402f3eb0]
sub rbx, rdx
mov r8, rbx
mov rcx, rdi
call sub.VCRUNTIME140.dll_memmove
lea rax, [rbx + rdi]
mov qword [rbp + 0xd0], rax
lea rdx, [rbp + 0xc8]
lea rcx, [rsi + 0x170]
call fcn.140062b20
test al, al
jne 0x1400f28fa
mov rax, qword [0x1402f0c20]
cmp dword [rax + 0x154], 1
je 0x1400f28fa
mov rcx, qword [0x1402f10d8]
test rcx, rcx
jne 0x1400f28af
mov ecx, 0x36e490
call fcn.14022033c
mov qword [rsp + 0x40], rax
mov rcx, rax
call fcn.1401cf6f0
mov rcx, rax
mov qword [0x1402f10d8], rax
movsd xmm0, qword [rbp + 0x140]
movsd qword [rsp + 0x30], xmm0
mov eax, dword [rbp + 0x148]
mov dword [rsp + 0x38], eax
lea r8, [rsp + 0x30]
lea rdx, [rbp + 0x1b8]
call fcn.1401cec00
mov r8, qword [rax]
mov edx, 1
mov rcx, r14
call fcn.140069d30
test al, al
je 0x1400f28fa
movss xmm0, dword [0x1402f0ad4]
movss dword [r13 + 0x20], xmm0
mov rbx, qword [0x1402f0cc0]
cmp dword [r13 + 0x60], 2
jne 0x1400f2ee7
movaps xmm1, xmm8
call fcn.1401bc430
mov rsi, rax
test rax, rax
je 0x1400f2ee0
cmp byte [rax + 0xa7], 0
je 0x1400f2c28
mov rcx, rax
call fcn.140066ad0
test al, al
jne 0x1400f2c28
lea r12, [rsi + 0xa5]
cmp byte [r12], al
je 0x1400f2c28
lea r15, [rsi + 0xa4]
mov rbx, qword [0x1402f0cc0]
cmp byte [r15], al
jne 0x1400f296d
mov rdi, r12
mov r14, r15
jmp 0x1400f2c3d
movsd xmm0, qword [rsi + 8]
movss xmm1, dword [rbx + 8]
movsd qword [rsp + 0x50], xmm0
subss xmm1, xmm0
movss xmm2, dword [rbx + 0x10]
subss xmm2, dword [rsi + 0x10]
mulss xmm2, xmm2
mulss xmm1, xmm1
addss xmm2, xmm1
xorps xmm0, xmm0
ucomiss xmm0, xmm2
ja 0x1400f29a8
xorps xmm0, xmm0
sqrtss xmm0, xmm2
jmp 0x1400f29b0
movaps xmm0, xmm2
call sub.api_ms_win_crt_math_l1_1_0.dll_sqrtf
movss xmm1, dword [rbx + 0xd4]
comiss xmm1, xmm13
jbe 0x1400f29c2
movaps xmm1, xmm14
mov rdi, r12
mov r14, r15
addss xmm1, dword [rbx + 0x4c]
comiss xmm1, xmm0
jb 0x1400f2c3d
movaps xmm0, xmmword [0x1402b9990]
xor eax, eax
mov dword [rbp - 0x80], eax
mov dword [rbp - 0x7c], 1
mov byte [rbp - 0x78], 1
movss xmm1, dword [0x1402f1148]
movss xmm2, dword [0x1402f114c]
movss xmm3, dword [0x1402f1150]
mov qword [rbp - 0x68], rax
mov qword [rbp - 0x60], rax
mov byte [rbp - 0x58], al
mov dword [rbp - 0x54], eax
movaps xmmword [rbp + 0x10], xmm0
movaps xmm0, xmmword [rbp - 0x80]
shufps xmm0, xmm0, 0x93
movss xmm0, xmm1
shufps xmm0, xmm0, 0x39
movaps xmmword [rbp - 0x80], xmm0
movaps xmmword [rbp + 0x20], xmm0
movaps xmm1, xmmword [rbp - 0x70]
movss xmm1, xmm2
shufps xmm1, xmm1, 0xe1
movss xmm1, xmm3
shufps xmm1, xmm1, 0xe1
movaps xmmword [rbp - 0x70], xmm1
movaps xmmword [rbp + 0x30], xmm1
movaps xmm0, xmmword [rbp - 0x60]
movaps xmmword [rbp + 0x40], xmm0
lea r9, [rbp + 0x10]
mov r8, rsi
lea rdx, [rbp + 0x100]
mov rcx, qword [0x1402f0c18]
call fcn.140157c60
movss xmm0, dword [rbp + 0x140]
ucomiss xmm0, dword [0x1402f1148]
jp 0x1400f2aaa
jne 0x1400f2aaa
movss xmm0, dword [rbp + 0x144]
ucomiss xmm0, dword [0x1402f114c]
jp 0x1400f2aaa
jne 0x1400f2aaa
movss xmm0, dword [rbp + 0x148]
ucomiss xmm0, dword [0x1402f1150]
jp 0x1400f2aaa
je 0x1400f2c36
cmp dword [rbp + 0x14c], 6
jl 0x1400f2c36
mov rbx, qword [0x1402f0c20]
mov rcx, rbx
call fcn.140153900
test al, al
jne 0x1400f2c36
cmp dword [rbx + 0x154], 0
je 0x1400f2c36
cmp byte [rbx + 0x183], al
jne 0x1400f2c36
call fcn.140139ee0
mov r13, rax
mov rcx, qword [0x1402f0bc0]
cmp byte [rcx + 0x6c], 0
jne 0x1400f2c1b
mov r14, qword [0x1402f0cc0]
xorps xmm0, xmm0
movdqu xmmword [rbp + 0xb0], xmm0
mov qword [rbp + 0xc0], 0
mov rdx, qword [0x1402f3eb8]
sub rdx, qword [0x1402f3eb0]
je 0x1400f2b67
lea rcx, [rbp + 0xb0]
call fcn.140012e50
mov rdi, qword [rbp + 0xb0]
mov rbx, qword [0x1402f3eb8]
mov rdx, qword [0x1402f3eb0]
sub rbx, rdx
mov r8, rbx
mov rcx, rdi
call sub.VCRUNTIME140.dll_memmove
lea rax, [rdi + rbx]
mov qword [rbp + 0xb8], rax
lea rdx, [rbp + 0xb0]
lea rcx, [r14 + 0x170]
call fcn.140062b20
test al, al
jne 0x1400f2c1b
mov rax, qword [0x1402f0c20]
cmp dword [rax + 0x154], 1
je 0x1400f2c1b
mov rcx, qword [0x1402f10d8]
test rcx, rcx
jne 0x1400f2bc3
mov ecx, 0x36e490
call fcn.14022033c
mov qword [rsp + 0x40], rax
mov rcx, rax
call fcn.1401cf6f0
mov rcx, rax
mov qword [0x1402f10d8], rax
movsd xmm0, qword [rbp + 0x140]
movsd qword [rsp + 0x30], xmm0
mov eax, dword [rbp + 0x148]
mov dword [rsp + 0x38], eax
lea r8, [rsp + 0x30]
lea rdx, [rbp + 0x1b0]
call fcn.1401cec00
mov r8, qword [rax]
mov edx, 1
mov rcx, r13
call fcn.140069d30
mov rdi, r12
mov r14, r15
mov r13, qword [rsp + 0x48]
test al, al
je 0x1400f2c36
movss xmm0, dword [0x1402f0ad4]
movss dword [r13 + 0x20], xmm0
jmp 0x1400f2c36
mov rdi, r12
mov r14, r15
mov r13, qword [rsp + 0x48]
jmp 0x1400f2c36
lea rdi, [rsi + 0xa5]
lea r14, [rsi + 0xa4]
mov rbx, qword [0x1402f0cc0]
cmp byte [rsi + 0xa7], 0
je 0x1400f2ee7
mov rcx, rsi
call fcn.140066ad0
test al, al
jne 0x1400f2ee0
cmp byte [rdi], al
je 0x1400f2ee0
cmp byte [r14], al
je 0x1400f2ee0
mov rbx, qword [0x1402f0cc0]
movsd xmm0, qword [rsi + 8]
movss xmm1, dword [rbx + 8]
movsd qword [rsp + 0x50], xmm0
subss xmm1, xmm0
movss xmm2, dword [rbx + 0x10]
subss xmm2, dword [rsi + 0x10]
mulss xmm2, xmm2
mulss xmm1, xmm1
addss xmm2, xmm1
xorps xmm0, xmm0
ucomiss xmm0, xmm2
ja 0x1400f2cad
xorps xmm0, xmm0
sqrtss xmm0, xmm2
jmp 0x1400f2cb5
movaps xmm0, xmm2
call sub.api_ms_win_crt_math_l1_1_0.dll_sqrtf
movss xmm1, dword [rbx + 0xd4]
comiss xmm1, xmm13
jbe 0x1400f2cc7
movaps xmm1, xmm14
addss xmm1, dword [rbx + 0x4c]
comiss xmm0, xmm1
jbe 0x1400f2ee7
movaps xmm0, xmmword [0x1402b9990]
mov dword [rbp - 0x80], 0
mov dword [rbp - 0x7c], 1
mov byte [rbp - 0x78], 1
movss xmm1, dword [0x1402f1148]
movss xmm2, dword [0x1402f114c]
movss xmm3, dword [0x1402f1150]
mov qword [rbp - 0x68], 0
mov qword [rbp - 0x60], 0
mov byte [rbp - 0x58], 0
mov dword [rbp - 0x54], 0
movaps xmmword [rbp + 0x10], xmm0
movaps xmm0, xmmword [rbp - 0x80]
shufps xmm0, xmm0, 0x93
movss xmm0, xmm1
shufps xmm0, xmm0, 0x39
movaps xmmword [rbp + 0x20], xmm0
movaps xmm1, xmmword [rbp - 0x70]
movss xmm1, xmm2
shufps xmm1, xmm1, 0xe1
movss xmm1, xmm3
shufps xmm1, xmm1, 0xe1
movaps xmmword [rbp + 0x30], xmm1
movaps xmm0, xmmword [rbp - 0x60]
movaps xmmword [rbp + 0x40], xmm0
lea r9, [rbp + 0x10]
mov r8, rsi
lea rdx, [rbp + 0x100]
mov rcx, qword [0x1402f0c18]
call fcn.140157c60
movss xmm0, dword [rbp + 0x140]
ucomiss xmm0, dword [0x1402f1148]
jp 0x1400f2db0
jne 0x1400f2db0
movss xmm0, dword [rbp + 0x144]
ucomiss xmm0, dword [0x1402f114c]
jp 0x1400f2db0
jne 0x1400f2db0
movss xmm0, dword [rbp + 0x148]
ucomiss xmm0, dword [0x1402f1150]
jp 0x1400f2db0
je 0x1400f2ee0
cmp dword [rbp + 0x14c], 6
jl 0x1400f2ee0
call fcn.140139ee0
mov r14, rax
mov rcx, qword [0x1402f0bc0]
cmp byte [rcx + 0x6c], 0
jne 0x1400f2ee0
mov rsi, qword [0x1402f0cc0]
xorps xmm0, xmm0
movdqu xmmword [rbp + 0x98], xmm0
mov qword [rbp + 0xa8], 0
mov rdx, qword [0x1402f3eb8]
sub rdx, qword [0x1402f3eb0]
je 0x1400f2e3d
lea rcx, [rbp + 0x98]
call fcn.140012e50
mov rdi, qword [rbp + 0x98]
mov rbx, qword [0x1402f3eb8]
mov rdx, qword [0x1402f3eb0]
sub rbx, rdx
mov r8, rbx
mov rcx, rdi
call sub.VCRUNTIME140.dll_memmove
lea rax, [rbx + rdi]
mov qword [rbp + 0xa0], rax
lea rdx, [rbp + 0x98]
lea rcx, [rsi + 0x170]
call fcn.140062b20
test al, al
jne 0x1400f2ee0
mov rax, qword [0x1402f0c20]
cmp dword [rax + 0x154], 1
je 0x1400f2ee0
mov rcx, qword [0x1402f10d8]
test rcx, rcx
jne 0x1400f2e95
mov ecx, 0x36e490
call fcn.14022033c
mov qword [rsp + 0x40], rax
mov rcx, rax
call fcn.1401cf6f0
mov rcx, rax
mov qword [0x1402f10d8], rax
movsd xmm0, qword [rbp + 0x140]
movsd qword [rsp + 0x30], xmm0
mov eax, dword [rbp + 0x148]
mov dword [rsp + 0x38], eax
lea r8, [rsp + 0x30]
lea rdx, [rbp + 0x1a8]
call fcn.1401cec00
mov r8, qword [rax]
mov edx, 1
mov rcx, r14
call fcn.140069d30
test al, al
je 0x1400f2ee0
movss xmm0, dword [0x1402f0ad4]
movss dword [r13 + 0x20], xmm0
mov rbx, qword [0x1402f0cc0]
mov rax, qword [r13 + 0x70]
movss xmm7, dword [0x1402b8654]
cmp byte [rax + 0x2b0], 0
je 0x1400f308a
cmp dword [rbx + 0x388], 0
jbe 0x1400f2f16
cmp dword [rbx + 0x384], 0
je 0x1400f308a
movss xmm0, dword [0x1402f0af0]
comiss xmm0, dword [rbx + 0x390]
jb 0x1400f308a
mov eax, dword [rbx + 0x380]
test eax, eax
je 0x1400f308a
dec eax
movss xmm0, dword [rbx + 0x30]
comiss xmm0, dword [rbx + rax*4 + 0x3b8]
jb 0x1400f308a
comiss xmm0, xmm7
jbe 0x1400f308a
call fcn.140139aa0
mov r14, qword [rax + 8]
mov rsi, qword [rax]
mov rbx, qword [0x1402f0cc0]
cmp rsi, r14
je 0x1400f308a
lea rdi, [rsi + 0x10]
movss xmm6, dword [0x1402b8764]
nop
mov eax, dword [rbx + 0x1c]
cmp dword [rdi + 0xc], eax
je 0x1400f3073
movsd xmm0, qword [rbx + 8]
movss xmm1, dword [rdi - 8]
movsd qword [rsp + 0x50], 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 0x1400f2fc6
xorps xmm0, xmm0
sqrtss xmm0, xmm2
jmp 0x1400f2fce
movaps xmm0, xmm2
call sub.api_ms_win_crt_math_l1_1_0.dll_sqrtf
comiss xmm0, xmm10
ja 0x1400f3073
cmp byte [rdi + 0x97], 0
je 0x1400f3073
mov rcx, rsi
call fcn.140066ad0
test al, al
jne 0x1400f306c
cmp byte [rdi + 0x95], al
je 0x1400f306c
cmp byte [rdi + 0x94], al
je 0x1400f306c
cmp dword [rdi + 0x9c], 1
jne 0x1400f306c
mov rbx, qword [0x1402f0cc0]
movsd xmm0, qword [rbx + 8]
movss xmm1, dword [rdi - 8]
movsd qword [rsp + 0x50], 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 0x1400f304b
xorps xmm0, xmm0
sqrtss xmm0, xmm2
jmp 0x1400f3053
movaps xmm0, xmm2
call sub.api_ms_win_crt_math_l1_1_0.dll_sqrtf
comiss xmm6, xmm0
jbe 0x1400f3073
call fcn.140139ee0
xor r8d, r8d
lea edx, [r8 + 2]
mov rcx, rax
call fcn.140069dd0
mov rbx, qword [0x1402f0cc0]
add rsi, 0x5f0
add rdi, 0x5f0
cmp rsi, r14
jne 0x1400f2f80
mov rax, qword [r13 + 0x78]
movss xmm11, dword [0x1402b86c8]
cmp byte [rax + 0x2b0], 0
je 0x1400f3397
cmp dword [rbx + 0x388], 0
jbe 0x1400f30ba
cmp dword [rbx + 0x384], 0
je 0x1400f3397
movss xmm0, dword [0x1402f0af0]
comiss xmm0, dword [rbx + 0x390]
jb 0x1400f3397
mov eax, dword [rbx + 0x380]
test eax, eax
je 0x1400f3397
dec eax
movss xmm0, dword [rbx + 0x30]
comiss xmm0, dword [rbx + rax*4 + 0x3b8]
jb 0x1400f3397
comiss xmm0, xmm7
jbe 0x1400f3397
movss xmm1, dword [rbx + 0xd4]
comiss xmm1, xmm13
jbe 0x1400f310d
movaps xmm1, xmm14
addss xmm1, dword [rbx + 0x4c]
addss xmm1, xmm13
call fcn.1401bc430
mov rbx, rax
test rax, rax
je 0x1400f3390
cmp byte [rax + 0xa7], 0
je 0x1400f3390
mov rcx, rax
call fcn.140066ad0
test al, al
jne 0x1400f3390
cmp byte [rbx + 0xa5], al
je 0x1400f3390
cmp byte [rbx + 0xa4], al
je 0x1400f3390
movss xmm1, dword [rbx + 0x28]
divss xmm1, dword [rbx + 0x2c]
mulss xmm1, xmm11
movss xmm0, dword [0x1402b8664]
comiss xmm0, xmm1
jbe 0x1400f3390
movss dword [rsp + 0x60], xmm9
movaps xmm7, xmm9
movss dword [rsp + 0x64], xmm7
movaps xmm6, xmm9
movss dword [rsp + 0x68], xmm6
xorps xmm0, xmm0
xor eax, eax
movups xmmword [rbp + 0x1e0], xmm0
mov qword [rbp + 0x1f0], rax
lea rcx, [rbx + 0x238]
lea rdx, [rbp + 0x1e0]
call fcn.140034260
nop
mov rcx, qword [rbp + 0x1e8]
mov r10, qword [rbp + 0x1e0]
sub rcx, r10
movabs rax, 0x2aaaaaaaaaaaaaab
imul rcx
sar rdx, 1
mov rax, rdx
shr rax, 0x3f
add rdx, rax
je 0x1400f3384
xor r9d, r9d
lea rax, [rdx - 1]
test rax, rax
je 0x1400f326e
xor eax, eax
lea r11, [rdx - 1]
lea r8, [r10 + 0xc]
nop word [rax + rax]
lea rax, [rax + rax*2]
lea rcx, [r10 + rax*4]
call fcn.1401c3f50
test al, al
je 0x1400f324c
lea eax, [r9 + 1]
movsxd rcx, eax
lea rax, [rcx + rcx*2]
lea rcx, [r10 + rax*4]
call fcn.1401c3f50
test al, al
je 0x1400f324c
movsd xmm0, qword [r8]
movsd qword [rsp + 0x60], xmm0
mov eax, dword [r8 + 8]
mov dword [rsp + 0x68], eax
inc r9d
add r8, 0xc
movsxd rax, r9d
cmp rax, r11
jb 0x1400f3210
movss xmm6, dword [rsp + 0x68]
movss xmm7, dword [rsp + 0x64]
movss xmm9, dword [rsp + 0x60]
movss xmm3, dword [0x1402f1148]
movss xmm1, dword [0x1402f114c]
movss xmm2, dword [0x1402f1150]
ucomiss xmm9, xmm3
jp 0x1400f329c
jne 0x1400f329c
ucomiss xmm7, xmm1
jp 0x1400f329c
jne 0x1400f329c
ucomiss xmm6, xmm2
jp 0x1400f329c
je 0x1400f32cc
movss xmm0, dword [0x1402b88c0]
comiss xmm9, xmm0
jbe 0x1400f32cc
comiss xmm7, xmm0
jbe 0x1400f32cc
comiss xmm6, xmm0
jbe 0x1400f32cc
movss xmm0, dword [0x1402b8608]
comiss xmm0, xmm9
jbe 0x1400f32cc
comiss xmm0, xmm7
jbe 0x1400f32cc
comiss xmm0, xmm6
ja 0x1400f32e6
ucomiss xmm9, xmm3
jp 0x1400f32e6
jne 0x1400f32e6
ucomiss xmm7, xmm1
jp 0x1400f32e6
jne 0x1400f32e6
ucomiss xmm6, xmm2
jp 0x1400f32e6
je 0x1400f3384
mov rax, qword [0x1402f0cc0]
movss xmm8, dword [rax + 8]
subss xmm9, xmm8
movss xmm7, dword [rax + 0x10]
subss xmm6, xmm7
mulss xmm9, xmm9
mulss xmm6, xmm6
addss xmm9, xmm6
xorps xmm0, xmm0
ucomiss xmm0, xmm9
ja 0x1400f3322
xorps xmm6, xmm6
sqrtss xmm6, xmm9
jmp 0x1400f332e
movaps xmm0, xmm9
call sub.api_ms_win_crt_math_l1_1_0.dll_sqrtf
movaps xmm6, xmm0
movsd xmm1, qword [rbx + 8]
movsd qword [rsp + 0x50], xmm1
subss xmm8, xmm1
subss xmm7, dword [rbx + 0x10]
mulss xmm7, xmm7
mulss xmm8, xmm8
addss xmm7, xmm8
xorps xmm0, xmm0
ucomiss xmm0, xmm7
ja 0x1400f3362
xorps xmm0, xmm0
sqrtss xmm0, xmm7
jmp 0x1400f336a
movaps xmm0, xmm7
call sub.api_ms_win_crt_math_l1_1_0.dll_sqrtf
comiss xmm6, xmm0
jbe 0x1400f3384
call fcn.140139ee0
xor r8d, r8d
lea edx, [r8 + 2]
mov rcx, rax
call fcn.140069dd0
nop
lea rcx, [rbp + 0x1e0]
call fcn.140032370
mov rbx, qword [0x1402f0cc0]
mov rax, qword [r13 + 0x80]
movss xmm12, dword [0x1402b8730]
movss xmm10, dword [0x1402b8790]
cmp byte [rax + 0x2b0], 0
je 0x1400f3c6c
cmp dword [rbx + 0x3f0], 0
jbe 0x1400f33d3
cmp dword [rbx + 0x3ec], 0
je 0x1400f3c6c
movss xmm0, dword [0x1402f0af0]
comiss xmm0, dword [rbx + 0x3f8]
jb 0x1400f3c6c
mov eax, dword [rbx + 0x3e8]
test eax, eax
je 0x1400f3c6c
dec eax
movss xmm0, dword [rbx + 0x30]
comiss xmm0, dword [rbx + rax*4 + 0x420]
jb 0x1400f3c6c
comiss xmm0, xmm11
jb 0x1400f3c6c
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.140033860
mov rcx, qword [rbx + 0x180]
mov rdx, qword [rbx + 0x188]
cmp rcx, rdx
je 0x1400f3464
cmp dword [rcx + 0x30], eax
je 0x1400f3c6c
add rcx, 0x50
cmp rcx, rdx
jne 0x1400f3452
cmp byte [rbx + 0xe8], 0
je 0x1400f3483
cmp byte [rbx + 0x130], 0
je 0x1400f3483
cmp dword [rbx + 0x138], 1
jne 0x1400f3483
mov al, 1
jmp 0x1400f3485
xor al, al
test al, al
jne 0x1400f3c6c
call fcn.140139aa0
mov rcx, qword [0x1402f0cc0]
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 [0x1402b87d0]
lea rdx, [rbp + 0x1c8]
mov rcx, rax
call fcn.1401afdc0
nop
mov r12, qword [rbp + 0x1c8]
mov r13, qword [rbp + 0x1d0]
cmp r12, r13
je 0x1400f3c54
movss xmm9, dword [0x1402b8630]
movss xmm7, dword [0x1402b87a4]
movss xmm8, dword [0x1402b87b0]
nop dword [rax]
mov rbx, qword [r12]
test rbx, rbx
je 0x1400f3c47
cmp byte [rbx + 0xa7], 0
je 0x1400f3c47
mov rcx, rbx
call fcn.140066ad0
test al, al
jne 0x1400f3c47
cmp byte [rbx + 0xa5], al
je 0x1400f3c47
cmp byte [rbx + 0xa4], al
je 0x1400f3c47
mov rbx, qword [0x1402f0cc0]
movss xmm0, dword [rbx + 0x28]
divss xmm0, dword [rbx + 0x2c]
mulss xmm0, xmm11
comiss xmm9, xmm0
jbe 0x1400f3c47
mov rdi, qword [r12]
movdqa xmm0, xmmword [0x1402b9bb0]
movdqu xmmword [rbp + 0x1f8], xmm0
mov dword [rbp + 0x208], 0x7265
movd eax, xmm0
test al, al
jne 0x1400f358f
mov eax, 0x811c9dc5
jmp 0x1400f35a9
movzx eax, al
xor eax, 0x811c9dc5
imul edx, eax, 0x1000193
lea rcx, [rbp + 0x1f9]
call fcn.140033860
mov rcx, qword [rdi + 0x180]
mov rdx, qword [rdi + 0x188]
cmp rcx, rdx
je 0x1400f3c47
cmp dword [rcx + 0x30], eax
je 0x1400f35d3
add rcx, 0x50
cmp rcx, rdx
jne 0x1400f35c0
jmp 0x1400f3c47
cmp dword [rdi + 0xac], 1
jne 0x1400f391f
movsd xmm0, qword [rbx + 8]
movss xmm1, dword [rdi + 8]
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 0x1400f3615
xorps xmm0, xmm0
sqrtss xmm0, xmm2
jmp 0x1400f361d
movaps xmm0, xmm2
call sub.api_ms_win_crt_math_l1_1_0.dll_sqrtf
comiss xmm12, xmm0
jb 0x1400f391f
mov r9b, 1
mov r8, rdi
lea rdx, [rbp - 0x18]
call fcn.1400f4220
movss xmm1, dword [rbp - 0x10]
movss xmm2, dword [rbp - 0x18]
ucomiss xmm2, dword [0x1402f1148]
jp 0x1400f366a
jne 0x1400f366a
movss xmm0, dword [rbp - 0x14]
ucomiss xmm0, dword [0x1402f114c]
jp 0x1400f366a
jne 0x1400f366a
ucomiss xmm1, dword [0x1402f1150]
jp 0x1400f366a
je 0x1400f37ae
mov rax, qword [r12]
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 0x1400f3695
xorps xmm0, xmm0
sqrtss xmm0, xmm1
jmp 0x1400f369d
movaps xmm0, xmm1
call sub.api_ms_win_crt_math_l1_1_0.dll_sqrtf
comiss xmm10, xmm0
jb 0x1400f37ae
call fcn.140139ee0
mov r14, rax
mov rcx, qword [0x1402f0bc0]
cmp byte [rcx + 0x6c], 0
jne 0x1400f3918
mov rsi, qword [0x1402f0cc0]
xorps xmm0, xmm0
movdqu xmmword [rbp + 0x80], xmm0
mov qword [rbp + 0x90], 0
mov rdx, qword [0x1402f3eb8]
sub rdx, qword [0x1402f3eb0]
je 0x1400f3727
lea rcx, [rbp + 0x80]
call fcn.140012e50
mov rdi, qword [rbp + 0x80]
mov rdx, qword [0x1402f3eb0]
mov rbx, qword [0x1402f3eb8]
sub rbx, rdx
mov r8, rbx
mov rcx, rdi
call sub.VCRUNTIME140.dll_memmove
lea rax, [rdi + rbx]
mov qword [rbp + 0x88], rax
lea rdx, [rbp + 0x80]
lea rcx, [rsi + 0x170]
call fcn.140062b20
test al, al
jne 0x1400f3918
mov rax, qword [0x1402f0c20]
cmp dword [rax + 0x154], 1
je 0x1400f3918
mov rcx, qword [0x1402f10d8]
test rcx, rcx
jne 0x1400f3785
mov ecx, 0x36e490
call fcn.14022033c
mov qword [rbp + 0x1a0], rax
mov rcx, rax
call fcn.1401cf6f0
mov rcx, rax
mov qword [0x1402f10d8], rax
movsd xmm0, qword [rbp - 0x18]
movsd qword [rbp + 0x170], xmm0
mov eax, dword [rbp - 0x10]
mov dword [rbp + 0x178], eax
lea r8, [rbp + 0x170]
lea rdx, [rbp + 0x198]
jmp 0x1400f38f1
mov rax, qword [r12]
mov rbx, qword [0x1402f0cc0]
movsd xmm0, qword [rbx + 8]
movss xmm1, dword [rax + 8]
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 0x1400f37ee
xorps xmm0, xmm0
sqrtss xmm0, xmm2
jmp 0x1400f37f6
movaps xmm0, xmm2
call sub.api_ms_win_crt_math_l1_1_0.dll_sqrtf
comiss xmm7, xmm0
jb 0x1400f391f
call fcn.140139ee0
mov r14, rax
mov rbx, qword [0x1402f0cc0]
movsd xmm6, qword [rbx + 8]
mov r15d, dword [rbx + 0x10]
mov rcx, qword [0x1402f0bc0]
cmp byte [rcx + 0x6c], 0
jne 0x1400f391f
lea rsi, [rbx + 0x170]
xorps xmm0, xmm0
movdqu xmmword [rbp + 0x68], xmm0
mov qword [rbp + 0x78], 0
mov rdx, qword [0x1402f3eb8]
sub rdx, qword [0x1402f3eb0]
je 0x1400f3880
lea rcx, [rbp + 0x68]
call fcn.140012e50
mov rdi, qword [rbp + 0x68]
mov rdx, qword [0x1402f3eb0]
mov rbx, qword [0x1402f3eb8]
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 + 0x68]
mov rcx, rsi
call fcn.140062b20
test al, al
jne 0x1400f3918
mov rax, qword [0x1402f0c20]
cmp dword [rax + 0x154], 1
je 0x1400f3918
mov rax, qword [0x1402f10d8]
test rax, rax
jne 0x1400f38d1
mov ecx, 0x36e490
call fcn.14022033c
mov qword [rbp + 0x190], rax
mov rcx, rax
call fcn.1401cf6f0
nop
mov qword [0x1402f10d8], rax
movsd qword [rbp + 0x160], xmm6
mov dword [rbp + 0x168], r15d
lea r8, [rbp + 0x160]
lea rdx, [rbp + 0x188]
mov rcx, rax
call fcn.1401cec00
mov r8, qword [rax]
mov edx, 3
mov rcx, r14
call fcn.140069d30
test al, al
je 0x1400f3918
mov rax, qword [0x1402f0c20]
mov byte [rax + 0x180], 1
mov rbx, qword [0x1402f0cc0]
mov rdi, qword [r12]
cmp dword [rdi + 0xac], 1
je 0x1400f3c47
movsd xmm0, qword [rbx + 8]
movss xmm1, dword [rdi + 8]
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 0x1400f3965
xorps xmm0, xmm0
sqrtss xmm0, xmm2
jmp 0x1400f396d
movaps xmm0, xmm2
call sub.api_ms_win_crt_math_l1_1_0.dll_sqrtf
comiss xmm8, xmm0
jb 0x1400f3c47
mov r9b, 1
mov r8, rdi
lea rdx, [rsp + 0x30]
call fcn.1400f4220
movss xmm1, dword [rsp + 0x38]
movss xmm2, dword [rsp + 0x30]
ucomiss xmm2, dword [0x1402f1148]
jp 0x1400f39be
jne 0x1400f39be
movss xmm0, dword [rsp + 0x34]
ucomiss xmm0, dword [0x1402f114c]
jp 0x1400f39be
jne 0x1400f39be
ucomiss xmm1, dword [0x1402f1150]
jp 0x1400f39be
je 0x1400f3ae9
mov rax, qword [r12]
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 0x1400f39e9
xorps xmm0, xmm0
sqrtss xmm0, xmm1
jmp 0x1400f39f1
movaps xmm0, xmm1
call sub.api_ms_win_crt_math_l1_1_0.dll_sqrtf
comiss xmm10, xmm0
jb 0x1400f3ae9
call fcn.140139ee0
mov r14, rax
mov rcx, qword [0x1402f0bc0]
cmp byte [rcx + 0x6c], 0
jne 0x1400f3c47
mov rsi, qword [0x1402f0cc0]
xorps xmm0, xmm0
movdqu xmmword [rbp + 0x50], xmm0
mov qword [rbp + 0x60], 0
mov rdx, qword [0x1402f3eb8]
sub rdx, qword [0x1402f3eb0]
je 0x1400f3a6c
lea rcx, [rbp + 0x50]
call fcn.140012e50
mov rdi, qword [rbp + 0x50]
mov rdx, qword [0x1402f3eb0]
mov rbx, qword [0x1402f3eb8]
sub rbx, rdx
mov r8, rbx
mov rcx, rdi
call sub.VCRUNTIME140.dll_memmove
lea rax, [rdi + rbx]
mov qword [rbp + 0x58], rax
lea rdx, [rbp + 0x50]
lea rcx, [rsi + 0x170]
call fcn.140062b20
test al, al
jne 0x1400f3c47
mov rax, qword [0x1402f0c20]
cmp dword [rax + 0x154], 1
je 0x1400f3c47
mov rcx, qword [0x1402f10d8]
test rcx, rcx
jne 0x1400f3ac7
mov ecx, 0x36e490
call fcn.14022033c
mov qword [rbp + 0x180], rax
mov rcx, rax
call fcn.1401cf6f0
mov rcx, rax
mov qword [0x1402f10d8], rax
movsd xmm0, qword [rsp + 0x30]
movsd qword [rbp], xmm0
mov eax, dword [rsp + 0x38]
mov dword [rbp + 8], eax
lea r8, [rbp]
lea rdx, [rbp + 0x158]
jmp 0x1400f3c20
mov rcx, qword [r12]
mov rax, qword [0x1402f0cc0]
movsd xmm0, qword [rax + 8]
movss xmm1, dword [rcx + 8]
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 0x1400f3b29
xorps xmm0, xmm0
sqrtss xmm0, xmm2
jmp 0x1400f3b31
movaps xmm0, xmm2
call sub.api_ms_win_crt_math_l1_1_0.dll_sqrtf
comiss xmm7, xmm0
jb 0x1400f3c47
call fcn.140139ee0
mov r14, rax
mov rdx, qword [0x1402f0cc0]
movsd xmm6, qword [rdx + 8]
mov r15d, dword [rdx + 0x10]
mov rcx, qword [0x1402f0bc0]
cmp byte [rcx + 0x6c], 0
jne 0x1400f3c47
lea rsi, [rdx + 0x170]
xorps xmm0, xmm0
movdqu xmmword [rbp - 0x30], xmm0
mov qword [rbp - 0x20], 0
mov rdx, qword [0x1402f3eb8]
sub rdx, qword [0x1402f3eb0]
je 0x1400f3bbb
lea rcx, [rbp - 0x30]
call fcn.140012e50
mov rdi, qword [rbp - 0x30]
mov rdx, qword [0x1402f3eb0]
mov rbx, qword [0x1402f3eb8]
sub rbx, rdx
mov r8, rbx
mov rcx, rdi
call sub.VCRUNTIME140.dll_memmove
lea rax, [rdi + rbx]
mov qword [rbp - 0x28], rax
lea rdx, [rbp - 0x30]
mov rcx, rsi
call fcn.140062b20
test al, al
jne 0x1400f3c47
mov rax, qword [0x1402f0c20]
cmp dword [rax + 0x154], 1
je 0x1400f3c47
mov rax, qword [0x1402f10d8]
test rax, rax
jne 0x1400f3c08
mov ecx, 0x36e490
call fcn.14022033c
mov qword [rbp + 0x150], rax
mov rcx, rax
call fcn.1401cf6f0
nop
mov qword [0x1402f10d8], rax
movsd qword [rsp + 0x50], xmm6
mov dword [rsp + 0x58], r15d
lea r8, [rsp + 0x50]
lea rdx, [rsp + 0x60]
mov rcx, rax
call fcn.1401cec00
mov r8, qword [rax]
mov edx, 3
mov rcx, r14
call fcn.140069d30
test al, al
je 0x1400f3c47
mov rax, qword [0x1402f0c20]
mov byte [rax + 0x180], 1
add r12, 8
cmp r12, r13
jne 0x1400f3500
lea rcx, [rbp + 0x1c8]
call fcn.140032160
mov rbx, qword [0x1402f0cc0]
mov r13, qword [rsp + 0x48]
mov rax, qword [r13 + 0x88]
cmp byte [rax + 0x2b0], 0
je 0x1400f41b1
cmp dword [rbx + 0x3f0], 0
jbe 0x1400f3c96
cmp dword [rbx + 0x3ec], 0
je 0x1400f41b1
movss xmm0, dword [0x1402f0af0]
comiss xmm0, dword [rbx + 0x3f8]
jb 0x1400f41b1
mov eax, dword [rbx + 0x3e8]
test eax, eax
je 0x1400f41b1
dec eax
movss xmm0, dword [rbx + 0x30]
comiss xmm0, dword [rbx + rax*4 + 0x420]
jb 0x1400f41b1
comiss xmm0, xmm11
jb 0x1400f41b1
mov al, 0x6b
mov dword [rsp + 0x48], 0x7369616b
mov dword [rsp + 0x4c], 0x6561
movzx eax, al
xor eax, 0x811c9dc5
imul edx, eax, 0x1000193
lea rcx, [rsp + 0x49]
call fcn.140033860
mov rcx, qword [rbx + 0x180]
mov rdx, qword [rbx + 0x188]
cmp rcx, rdx
je 0x1400f3d27
cmp dword [rcx + 0x30], eax
je 0x1400f41b1
add rcx, 0x50
cmp rcx, rdx
jne 0x1400f3d15
cmp byte [rbx + 0xe8], 0
je 0x1400f3d46
cmp byte [rbx + 0x130], 0
je 0x1400f3d46
cmp dword [rbx + 0x138], 1
jne 0x1400f3d46
mov al, 1
jmp 0x1400f3d48
xor al, al
test al, al
jne 0x1400f41b1
mov dword [rbp + 0x1f8], 0x44bb8000
movaps xmm0, xmmword [0x1402b8910]
movups xmmword [rbp + 0x1fc], xmm0
mov eax, dword [rbx + 0x3e8]
dec eax
movss xmm9, dword [rbp + rax*4 + 0x1f8]
call fcn.140139aa0
mov rcx, qword [0x1402f0cc0]
movsd xmm0, qword [rcx + 8]
movsd qword [rsp + 0x50], xmm0
mov ecx, dword [rcx + 0x10]
mov dword [rsp + 0x58], ecx
lea r9, [rsp + 0x50]
movss xmm2, dword [0x1402b8868]
lea rdx, [rbp + 0x1c8]
mov rcx, rax
call fcn.1401afdc0
nop
mov r15, qword [rbp + 0x1c8]
mov r12, qword [rbp + 0x1d0]
cmp r15, r12
je 0x1400f41a5
movss xmm8, dword [0x1402b87dc]
nop word [rax + rax]
mov rbx, qword [r15]
test rbx, rbx
je 0x1400f4198
cmp byte [rbx + 0xa7], 0
je 0x1400f4198
mov rcx, rbx
call fcn.140066ad0
test al, al
jne 0x1400f4198
cmp byte [rbx + 0xa5], al
je 0x1400f4198
cmp byte [rbx + 0xa4], al
je 0x1400f4198
mov rdi, qword [0x1402f0cc0]
movss xmm1, dword [rdi + 0x28]
divss xmm1, dword [rdi + 0x2c]
mulss xmm1, xmm11
mov rax, qword [r13 + 0xa0]
movd xmm0, dword [rax + 0x2b0]
cvtdq2ps xmm0, xmm0
comiss xmm1, xmm0
jbe 0x1400f4198
mov rbx, qword [r15]
movdqa xmm0, xmmword [0x1402b9bb0]
movdqu xmmword [rbp + 0x1f8], xmm0
mov dword [rbp + 0x208], 0x7265
movd eax, xmm0
test al, al
jne 0x1400f3e7e
mov eax, 0x811c9dc5
jmp 0x1400f3e98
movzx eax, al
xor eax, 0x811c9dc5
imul edx, eax, 0x1000193
lea rcx, [rbp + 0x1f9]
call fcn.140033860
mov rcx, qword [rbx + 0x180]
mov rdx, qword [rbx + 0x188]
cmp rcx, rdx
je 0x1400f4198
nop
cmp dword [rcx + 0x30], eax
je 0x1400f3ec3
add rcx, 0x50
cmp rcx, rdx
jne 0x1400f3eb0
jmp 0x1400f4198
movss xmm6, dword [rdi + 0xd4]
comiss xmm6, xmm13
jbe 0x1400f3ed5
movaps xmm6, xmm14
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 0x1400f3f0a
xorps xmm0, xmm0
sqrtss xmm0, xmm2
jmp 0x1400f3f12
movaps xmm0, xmm2
call sub.api_ms_win_crt_math_l1_1_0.dll_sqrtf
addss xmm6, dword [rdi + 0x4c]
addss xmm6, xmm12
comiss xmm0, xmm6
jbe 0x1400f4198
movss xmm1, dword [rbx + 0x28]
divss xmm1, dword [rbx + 0x2c]
mulss xmm1, xmm11
mov rax, qword [r13 + 0x90]
movd xmm0, dword [rax + 0x2b0]
cvtdq2ps xmm0, xmm0
comiss xmm0, xmm1
jbe 0x1400f4198
xor r9d, r9d
mov r8, rbx
lea rdx, [rsp + 0x30]
call fcn.1400f4220
movss xmm6, dword [rsp + 0x38]
movss xmm7, dword [rsp + 0x30]
ucomiss xmm7, dword [0x1402f1148]
jp 0x1400f3f96
jne 0x1400f3f96
movss xmm0, dword [rsp + 0x34]
ucomiss xmm0, dword [0x1402f114c]
jp 0x1400f3f96
jne 0x1400f3f96
ucomiss xmm6, dword [0x1402f1150]
jp 0x1400f3f96
je 0x1400f4198
call fcn.140139aa0
mov rbx, qword [rax + 0x18]
mov rsi, qword [rax + 0x20]
mov rdi, qword [0x1402f0cc0]
cmp rbx, rsi
je 0x1400f400e
nop
cmp byte [rbx + 0xa7], 0
je 0x1400f4002
mov eax, dword [rdi + 0x1c]
cmp dword [rbx + 0x1c], eax
je 0x1400f4002
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 0x1400f3ff0
xorps xmm0, xmm0
sqrtss xmm0, xmm1
jmp 0x1400f3ff8
movaps xmm0, xmm1
call sub.api_ms_win_crt_math_l1_1_0.dll_sqrtf
comiss xmm8, xmm0
jae 0x1400f4198
add rbx, 0x230
cmp rbx, rsi
jne 0x1400f3fb0
movaps xmm0, xmm7
subss xmm0, dword [rdi + 8]
movaps xmm1, xmm6
subss xmm1, dword [rdi + 0x10]
mulss xmm1, xmm1
mulss xmm0, xmm0
addss xmm1, xmm0
xorps xmm0, xmm0
ucomiss xmm0, xmm1
ja 0x1400f403b
xorps xmm0, xmm0
sqrtss xmm0, xmm1
jmp 0x1400f4043
movaps xmm0, xmm1
call sub.api_ms_win_crt_math_l1_1_0.dll_sqrtf
comiss xmm9, xmm0
jbe 0x1400f4198
mov rax, qword [r15]
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 0x1400f4077
xorps xmm0, xmm0
sqrtss xmm0, xmm6
jmp 0x1400f407f
movaps xmm0, xmm6
call sub.api_ms_win_crt_math_l1_1_0.dll_sqrtf
comiss xmm10, xmm0
jb 0x1400f4198
call fcn.140139ee0
mov r14, rax
mov rcx, qword [0x1402f0bc0]
cmp byte [rcx + 0x6c], 0
jne 0x1400f4198
mov rsi, qword [0x1402f0cc0]
xorps xmm0, xmm0
movdqu xmmword [rbp - 0x30], xmm0
mov qword [rbp - 0x20], 0
mov rdx, qword [0x1402f3eb8]
sub rdx, qword [0x1402f3eb0]
je 0x1400f40fa
lea rcx, [rbp - 0x30]
call fcn.140012e50
mov rdi, qword [rbp - 0x30]
mov rdx, qword [0x1402f3eb0]
mov rbx, qword [0x1402f3eb8]
sub rbx, rdx
mov r8, rbx
mov rcx, rdi
call sub.VCRUNTIME140.dll_memmove
lea rax, [rbx + rdi]
mov qword [rbp - 0x28], rax
lea rdx, [rbp - 0x30]
lea rcx, [rsi + 0x170]
call fcn.140062b20
test al, al
jne 0x1400f4198
mov rax, qword [0x1402f0c20]
cmp dword [rax + 0x154], 1
je 0x1400f4198
mov rcx, qword [0x1402f10d8]
test rcx, rcx
jne 0x1400f4151
mov ecx, 0x36e490
call fcn.14022033c
mov qword [rbp + 0x150], rax
mov rcx, rax
call fcn.1401cf6f0
mov rcx, rax
mov qword [0x1402f10d8], rax
movsd xmm0, qword [rsp + 0x30]
movsd qword [rsp + 0x50], xmm0
mov eax, dword [rsp + 0x38]
mov dword [rsp + 0x58], eax
lea r8, [rsp + 0x50]
lea rdx, [rbp + 0x158]
call fcn.1401cec00
mov r8, qword [rax]
mov edx, 3
mov rcx, r14
call fcn.140069d30
test al, al
je 0x1400f4198
mov rax, qword [0x1402f0c20]
mov byte [rax + 0x180], 1
add r15, 8
cmp r15, r12
jne 0x1400f3de0
lea rcx, [rbp + 0x1c8]
call fcn.140032160
mov rcx, qword [rbp + 0x210]
xor rcx, rsp
call fcn.140220090
lea r11, [rsp + 0x3b0]
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]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rbp
ret