Function at 0x18002d540
Capabilities:
Hash data using fnv

Disassembly:
mov r11, rsp
push rbp
lea rbp, [r11 - 0x188]
sub rsp, 0x280
cmp byte [0x18000184c], 0
je 0x18002e7cd
mov qword [r11 + 8], rbx
lea rax, [0x18000184c]
mov rbx, qword [0x18009d550]
mov qword [r11 - 0x18], rdi
mov rdi, qword [0x18009d548]
mov qword [rsp + 0x30], rax
cmp rbx, rdi
je 0x18002e7bd
mov qword [r11 - 0x10], rsi
movabs rdx, 0x7ffffffdfffe
mov qword [r11 - 0x20], r12
movabs rsi, 0xd0ea5d71c7107112
mov qword [r11 - 0x30], r14
movabs r8, 0xcbf29ce484222325
mov qword [r11 - 0x38], r15
movabs r9, 0x100000001b3
movaps xmmword [r11 - 0x48], xmm6
xor r12d, r12d
movaps xmmword [r11 - 0x58], xmm7
movss xmm7, dword [0x18000d4ec]
movaps xmmword [r11 - 0x78], xmm9
xorps xmm9, xmm9
movaps xmmword [r11 - 0x88], xmm10
movss xmm10, dword [0x18000d4f8]
movaps xmmword [r11 - 0x98], xmm11
movss xmm11, dword [0x18000d4b4]
movaps xmmword [r11 - 0xa8], xmm12
movss xmm12, dword [0x18000a6dc]
movaps xmmword [r11 - 0xb8], xmm13
movss xmm13, dword [0x18000a6d4]
movaps xmmword [r11 - 0xc8], xmm14
movss xmm14, dword [0x18000d4f4]
movaps xmmword [r11 - 0xd8], xmm15
movss xmm15, dword [0x18000d4d0]
mov qword [r11 - 0x28], r13
movaps xmmword [r11 - 0x68], xmm8
nop
movups xmm1, xmmword [rbx - 0x20]
mov rcx, qword [0x18009b3e0]
lea rax, [rbx - 0x20]
movups xmm0, xmmword [rax + 0x10]
mov rbx, rax
movq r15, xmm1
movups xmmword [rsp + 0x40], xmm1
movups xmmword [rsp + 0x50], xmm0
cmp r15, rcx
jbe 0x18002d686
add rcx, qword [0x18009b3e8]
cmp r15, rcx
jb 0x18002d696
lea rax, [r15 - 0x10000]
cmp rax, rdx
ja 0x18002e6fb
mov rax, qword [r15]
mov rcx, qword [rax + 0x10]
movsx rax, byte [rcx]
test al, al
je 0x18002ddcf
mov rdx, rax
xor rdx, r8
imul rdx, r9
inc rcx
call fcn.18001e970
cmp rax, rsi
jne 0x18002ddcf
movd xmm0, dword [0x18000185c]
lea r9, [0x18000192c]
cvtdq2ps xmm0, xmm0
lea r8, [rsp + 0x40]
lea rdx, [0x18000d0f8]
lea rcx, [rsp + 0x30]
movss dword [rsp + 0x28], xmm10
movss dword [rsp + 0x20], xmm0
call fcn.180029ac0
cmp byte [0x18000193c], 0
je 0x18002e73d
movss xmm0, dword [rsp + 0x4c]
ucomiss xmm0, xmm9
jp 0x18002d734
jne 0x18002d734
movss xmm0, dword [rsp + 0x50]
ucomiss xmm0, xmm9
jp 0x18002d734
jne 0x18002d734
movss xmm0, dword [rsp + 0x54]
ucomiss xmm0, xmm9
jp 0x18002d734
je 0x18002e73d
movd xmm0, dword [0x18000185c]
movss xmm11, dword [rsp + 0x58]
cvtdq2ps xmm0, xmm0
comiss xmm11, xmm0
ja 0x18002e73d
movsd xmm0, qword [rsp + 0x4c]
lea r8, [rsp + 0x38]
mov eax, dword [rsp + 0x54]
lea rdx, [rbp + 0x70]
mov rcx, qword [0x18009b400]
movsd qword [rbp + 0x70], xmm0
mov qword [rsp + 0x38], 0
mov dword [rbp + 0x78], eax
call fcn.180024610
test al, al
je 0x18002e6fb
movups xmm6, xmmword [0x18000192c]
lea rdx, [0x18000d108]
xor r9d, r9d
movss xmm7, dword [rsp + 0x38]
lea rcx, [rbp + 0x60]
movss xmm8, dword [rsp + 0x3c]
xor r8d, r8d
movss dword [rsp + 0x20], xmm10
call fcn.180044a80
movss xmm0, dword [rbp + 0x60]
lea r9, [0x18000d108]
mulss xmm0, xmm13
lea r8, [rbp + 0xa0]
lea rdx, [rsp + 0x70]
movdqa xmmword [rsp + 0x70], xmm6
subss xmm7, xmm0
movdqa xmm0, xmmword [0x18000d590]
movdqa xmmword [rbp + 0xa0], xmm0
unpcklps xmm7, xmm8
movq rcx, xmm7
call fcn.18003ee00
cvttss2si r8d, xmm11
lea rdx, [0x18000d114]
lea rcx, [rbp - 0x68]
call fcn.1800298e0
movss xmm8, dword [rsp + 0x3c]
lea rdx, [rbp - 0x68]
addss xmm8, dword [0x18000d4ec]
movups xmm6, xmmword [0x18000192c]
lea rcx, [rbp + 0x68]
xor r9d, r9d
movss xmm7, dword [rsp + 0x38]
xor r8d, r8d
movss dword [rsp + 0x20], xmm10
movss dword [rsp + 0x3c], xmm8
call fcn.180044a80
movss xmm0, dword [rbp + 0x68]
lea r9, [rbp - 0x68]
mulss xmm0, xmm13
lea r8, [rsp + 0x70]
lea rdx, [rbp + 0xa0]
movdqa xmmword [rbp + 0xa0], xmm6
subss xmm7, xmm0
movdqa xmm0, xmmword [0x18000d590]
movdqa xmmword [rsp + 0x70], xmm0
unpcklps xmm7, xmm8
movq rcx, xmm7
call fcn.18003ee00
mov rax, qword [0x180001c58]
cmp rax, 0x402402
jne 0x18002d8cb
mov r9b, 1
mov byte [rsp + 0x20], 0
lea r8, [0x180009b70]
lea rdx, [0x18000d480]
lea rcx, [0x18000d490]
call fcn.18002ee90
mov qword [0x180001c58], rax
mov r15, qword [rsp + 0x40]
mov r14, qword [rax + r15]
test r14, r14
je 0x18002e73d
mov r12d, dword [r14 + 0x18]
cmp r12d, 1
jl 0x18002e73d
mov rax, qword [0x180001c50]
movaps xmm11, xmm9
mov rcx, qword [0x180001c48]
movaps xmm6, xmm9
movaps xmm8, xmm9
movaps xmm7, xmm9
xor edx, edx
nop dword [rax + rax]
mov rsi, qword [r14 + rdx*8 + 0x20]
test rsi, rsi
je 0x18002da2d
test rdx, rdx
jne 0x18002d9b4
cmp rcx, 0x402402
jne 0x18002d962
mov byte [rsp + 0x20], dl
lea r8, [0x180009b70]
lea rdx, [0x18000d444]
mov r9b, 1
lea rcx, [0x18000d450]
call fcn.18002ee90
mov rcx, rax
mov qword [0x180001c48], rax
mov rax, qword [0x180001c50]
movss xmm6, dword [rcx + rsi]
cmp rax, 0x402402
jne 0x18002d99f
mov r9b, 1
mov byte [rsp + 0x20], 0
lea r8, [0x180009b70]
lea rdx, [0x18000d470]
lea rcx, [0x18000d450]
call fcn.18002ee90
mov rcx, qword [0x180001c48]
mov qword [0x180001c50], rax
movss xmm7, dword [rax + rsi]
mov edx, 1
cmp r12d, edx
jg 0x18002d910
jmp 0x18002da2d
cmp rcx, 0x402402
jne 0x18002d9f0
mov r9b, 1
mov byte [rsp + 0x20], 0
lea r8, [0x180009b70]
lea rdx, [0x18000d444]
lea rcx, [0x18000d450]
call fcn.18002ee90
mov rcx, rax
mov qword [0x180001c48], rax
mov rax, qword [0x180001c50]
movss xmm11, dword [rcx + rsi]
cmp rax, 0x402402
jne 0x18002da27
mov r9b, 1
mov byte [rsp + 0x20], 0
lea r8, [0x180009b70]
lea rdx, [0x18000d470]
lea rcx, [0x18000d450]
call fcn.18002ee90
mov qword [0x180001c50], rax
movss xmm8, dword [rax + rsi]
comiss xmm12, xmm6
jb 0x18002da43
ucomiss xmm11, dword [0x18000d4f0]
jp 0x18002da43
je 0x18002e73d
divss xmm6, xmm7
mov r12d, 0xff
mov r13d, 0xff
divss xmm11, xmm8
movaps xmm0, xmm6
movss dword [rbp + 0x1a0], xmm6
mulss xmm0, xmm14
movss dword [rbp - 0x70], xmm11
mulss xmm0, xmm15
cvttss2si eax, xmm0
movaps xmm0, xmm11
sub r12d, eax
mov dword [rbp - 0x80], eax
mulss xmm0, xmm14
mulss xmm0, xmm15
cvttss2si eax, xmm0
sub r13d, eax
mov dword [rbp - 0x78], eax
mov eax, dword [0x18009d920]
test al, 1
jne 0x18002dac8
or eax, 1
movss dword [rsp + 0x20], xmm10
xor r9d, r9d
mov dword [0x18009d920], eax
xor r8d, r8d
lea rdx, [0x18000d118]
lea rcx, [0x18009d918]
call fcn.180044a80
movss xmm0, dword [0x18009d918]
lea rax, [rbp + 0x1a0]
movss xmm1, dword [0x18009d91c]
lea rsi, [rbp + 0x198]
movss xmm7, dword [rsp + 0x38]
lea r14, [rbp + 0x1a8]
comiss xmm9, xmm6
lea rcx, [rsp + 0x70]
mov dword [rbp - 0x7c], 0x3f800000
mov dword [rbp + 0x198], 0
mov dword [rbp - 0x74], 0x3f800000
mov dword [rbp + 0x1a8], 0
mulss xmm0, xmm13
movaps xmm8, xmm1
addss xmm8, dword [rsp + 0x3c]
cmovbe rsi, rax
mulss xmm1, xmm13
lea rax, [rbp - 0x70]
comiss xmm9, xmm11
subss xmm7, xmm0
movdqa xmm0, xmmword [0x18000d590]
addss xmm8, xmm1
cmovbe r14, rax
movups xmmword [rsp + 0x70], xmm0
call fcn.1800457c0
mov rcx, qword [0x18009d4e0]
lea r8, [rbp - 0x60]
movaps xmm0, xmm7
mov dword [rsp + 0x28], 0
addss xmm0, dword [0x18009d918]
movaps xmm1, xmm8
movss dword [rbp - 0x58], xmm7
subss xmm1, dword [0x18000d4d4]
mov r9d, eax
movss dword [rsp + 0x20], xmm9
lea rdx, [rbp - 0x58]
addss xmm0, xmm12
movss dword [rbp - 0x54], xmm1
movss dword [rbp - 0x60], xmm0
movaps xmm0, xmm8
addss xmm0, dword [0x18000d4d4]
movss dword [rbp - 0x5c], xmm0
call fcn.18005be90
movd xmm1, dword [rbp - 0x80]
lea rcx, [rbp + 0x20]
movd xmm0, r12d
cvtdq2ps xmm0, xmm0
mov dword [rbp + 0x28], 0
mov dword [rbp + 0x2c], 0x3f800000
cvtdq2ps xmm1, xmm1
mulss xmm0, dword [0x18000d4b4]
mulss xmm1, dword [0x18000d4b4]
movss dword [rbp + 0x20], xmm0
movss dword [rbp + 0x24], xmm1
call fcn.1800457c0
movss xmm0, dword [0x18009d918]
lea rcx, [rbp - 0x7c]
comiss xmm6, xmm12
lea r8, [rbp - 0x50]
mov r9d, eax
movaps xmm1, xmm12
movaps xmm6, xmm7
addss xmm6, xmm12
cmovbe rcx, rsi
xor r12d, r12d
mov dword [rsp + 0x28], r12d
movss dword [rsp + 0x20], xmm9
mulss xmm0, dword [rcx]
movss dword [rbp - 0x48], xmm6
subss xmm0, xmm12
maxss xmm1, xmm0
movaps xmm0, xmm9
addss xmm1, xmm6
maxss xmm0, xmm1
movaps xmm1, xmm8
addss xmm1, dword [0x18000d4cc]
movss dword [rbp - 0x50], xmm0
movaps xmm0, xmm8
subss xmm0, dword [0x18000d4cc]
movss dword [rbp - 0x4c], xmm1
movss dword [rbp - 0x44], xmm0
mov rcx, qword [0x18009d4e0]
lea rdx, [rbp - 0x48]
call fcn.18005be90
movdqa xmm0, xmmword [0x18000d590]
lea rcx, [rsp + 0x70]
movups xmmword [rsp + 0x70], xmm0
call fcn.1800457c0
mov rcx, qword [0x18009d4e0]
lea r8, [rbp - 0x40]
movaps xmm0, xmm7
mov dword [rsp + 0x28], r12d
addss xmm0, dword [0x18009d918]
movaps xmm1, xmm8
movss dword [rbp - 0x38], xmm7
addss xmm1, dword [0x18000d4d8]
mov r9d, eax
movss dword [rsp + 0x20], xmm9
lea rdx, [rbp - 0x38]
addss xmm0, xmm12
movss dword [rbp - 0x34], xmm1
movss dword [rbp - 0x40], xmm0
movaps xmm0, xmm8
addss xmm0, dword [0x18000d4e8]
movss dword [rbp - 0x3c], xmm0
call fcn.18005be90
movd xmm1, dword [rbp - 0x78]
lea rcx, [rbp + 0x30]
movd xmm0, r13d
cvtdq2ps xmm0, xmm0
mov dword [rbp + 0x38], r12d
mov dword [rbp + 0x3c], 0x3f800000
cvtdq2ps xmm1, xmm1
mulss xmm0, dword [0x18000d4b4]
mulss xmm1, dword [0x18000d4b4]
movss dword [rbp + 0x30], xmm0
movss dword [rbp + 0x34], xmm1
call fcn.1800457c0
movss xmm0, dword [0x18009d918]
lea rcx, [rbp - 0x74]
movaps xmm1, xmm12
mov dword [rsp + 0x28], r12d
comiss xmm11, xmm12
mov r9d, eax
lea r8, [rbp - 0x30]
lea rdx, [rbp - 0x28]
movss dword [rbp - 0x28], xmm6
movss dword [rsp + 0x20], xmm9
cmovbe rcx, r14
mulss xmm0, dword [rcx]
mov rcx, qword [0x18009d4e0]
subss xmm0, xmm12
maxss xmm1, xmm0
movaps xmm0, xmm9
addss xmm1, xmm6
maxss xmm0, xmm1
movaps xmm1, xmm8
addss xmm1, dword [0x18000d4e4]
addss xmm8, dword [0x18000d4dc]
movss dword [rbp - 0x30], xmm0
movss dword [rbp - 0x2c], xmm1
movss dword [rbp - 0x24], xmm8
call fcn.18005be90
movss xmm7, dword [0x18000d4ec]
movss xmm11, dword [0x18000d4b4]
mov eax, dword [rsp + 0x48]
cmp eax, 0x84b70bde
ja 0x18002e2d7
je 0x18002e29d
cmp eax, 0x1004b109
je 0x18002e263
cmp eax, 0x35d805af
je 0x18002e229
cmp eax, 0x4c7dddae
je 0x18002e1ef
cmp eax, 0x56d5c50c
je 0x18002de51
cmp eax, 0x5a43a965
jne 0x18002e6fb
movd xmm0, dword [0x18000185c]
lea r9, [0x180001954]
cvtdq2ps xmm0, xmm0
lea r8, [rsp + 0x40]
lea rdx, [0x18000d1a8]
lea rcx, [rsp + 0x30]
movss dword [rsp + 0x28], xmm10
movss dword [rsp + 0x20], xmm0
call fcn.180029ac0
jmp 0x18002e6fb
mov rax, qword [0x180001c30]
cmp rax, 0x402402
jne 0x18002de89
mov r9b, 1
mov byte [rsp + 0x20], 0
lea r8, [0x180009b70]
lea rdx, [0x18000d3c8]
lea rcx, [0x18000d3f8]
call fcn.18002ee90
mov qword [0x180001c30], rax
movss xmm6, dword [rax + r15]
mov rax, qword [0x180001c38]
cmp rax, 0x402402
jne 0x18002dec7
mov r9b, 1
mov byte [rsp + 0x20], 0
lea r8, [0x180009b70]
lea rdx, [0x18000d410]
lea rcx, [0x18000d3f8]
call fcn.18002ee90
mov qword [0x180001c38], rax
movss xmm0, dword [rax + r15]
subss xmm6, xmm9
subss xmm0, xmm9
divss xmm6, xmm0
comiss xmm6, xmm12
jbe 0x18002dee7
movaps xmm6, xmm9
jmp 0x18002defd
comiss xmm9, xmm6
jbe 0x18002def3
movaps xmm6, xmm9
jmp 0x18002defd
mulss xmm6, xmm9
addss xmm6, xmm9
movd xmm0, dword [0x18000185c]
lea r9, [0x180001940]
cvtdq2ps xmm0, xmm0
lea r8, [rsp + 0x40]
lea rdx, [0x18000d1b0]
lea rcx, [rsp + 0x30]
movss dword [rsp + 0x28], xmm6
movss dword [rsp + 0x20], xmm0
call fcn.180029ac0
cmp byte [0x180001950], 0
je 0x18002e6fb
movss xmm0, dword [rsp + 0x58]
comiss xmm0, xmm0
ja 0x18002e6fb
movsd xmm0, qword [rsp + 0x4c]
lea r8, [rsp + 0x60]
mov eax, dword [rsp + 0x54]
lea rdx, [rbp + 0x80]
mov rcx, qword [0x18009b400]
movsd qword [rbp + 0x80], xmm0
mov qword [rsp + 0x60], 0
mov dword [rbp + 0x88], eax
call fcn.180024610
test al, al
je 0x18002e6fb
movss xmm0, dword [rsp + 0x64]
mov rax, qword [0x180001c30]
addss xmm0, xmm7
movss dword [rsp + 0x64], xmm0
cmp rax, 0x402402
jne 0x18002dfd6
mov r9b, 1
mov byte [rsp + 0x20], 0
lea r8, [0x180009b70]
lea rdx, [0x18000d3c8]
lea rcx, [0x18000d3f8]
call fcn.18002ee90
mov qword [0x180001c30], rax
mov rsi, qword [rsp + 0x40]
movss xmm8, dword [rax + rsi]
mov rax, qword [0x180001c38]
cmp rax, 0x402402
jne 0x18002e019
mov r9b, 1
mov byte [rsp + 0x20], 0
lea r8, [0x180009b70]
lea rdx, [0x18000d410]
lea rcx, [0x18000d3f8]
call fcn.18002ee90
mov qword [0x180001c38], rax
divss xmm8, dword [rax + rsi]
mov eax, dword [0x18009d920]
mov r14d, 0xff
movaps xmm0, xmm8
movss dword [rbp + 0x1a0], xmm8
mulss xmm0, xmm14
mulss xmm0, xmm15
cvttss2si r15d, xmm0
sub r14d, r15d
test al, 4
jne 0x18002e077
or eax, 4
movss dword [rsp + 0x20], xmm10
xor r9d, r9d
mov dword [0x18009d920], eax
xor r8d, r8d
lea rdx, [0x18000d1c0]
lea rcx, [0x18009d930]
call fcn.180044a80
movss xmm0, dword [0x18009d930]
lea rax, [rbp + 0x1a0]
movss xmm1, dword [0x18009d934]
lea rsi, [rbp + 0x198]
movss xmm7, dword [rsp + 0x60]
lea rcx, [rsp + 0x70]
mulss xmm0, xmm13
movaps xmm6, xmm1
mov dword [rbp + 0x1a8], 0x3f800000
addss xmm1, dword [rsp + 0x64]
comiss xmm9, xmm8
mov dword [rbp + 0x198], 0
mulss xmm6, xmm13
subss xmm7, xmm0
movdqa xmm0, xmmword [0x18000d590]
cmovbe rsi, rax
movups xmmword [rsp + 0x70], xmm0
addss xmm6, xmm1
call fcn.1800457c0
movss xmm0, dword [0x18009d930]
lea r8, [rbp + 0x10]
mov rcx, qword [0x18009d4e0]
addss xmm0, xmm7
movaps xmm1, xmm6
mov dword [rsp + 0x28], r12d
subss xmm1, dword [0x18000d4d4]
mov r9d, eax
movss dword [rbp + 0x18], xmm7
lea rdx, [rbp + 0x18]
movss dword [rsp + 0x20], xmm9
addss xmm0, xmm12
movss dword [rbp + 0x1c], xmm1
movss dword [rbp + 0x10], xmm0
movaps xmm0, xmm6
addss xmm0, dword [0x18000d4d4]
movss dword [rbp + 0x14], xmm0
call fcn.18005be90
movd xmm0, r14d
lea rcx, [rbp + 0x40]
movd xmm1, r15d
cvtdq2ps xmm0, xmm0
mov dword [rbp + 0x48], 0
mov dword [rbp + 0x4c], 0x3f800000
cvtdq2ps xmm1, xmm1
mulss xmm0, xmm11
mulss xmm1, xmm11
movss dword [rbp + 0x40], xmm0
movss dword [rbp + 0x44], xmm1
call fcn.1800457c0
movss xmm0, dword [0x18009d930]
addss xmm7, xmm12
movaps xmm1, xmm12
lea rcx, [rbp + 0x1a8]
comiss xmm8, xmm12
lea r8, [rbp - 0x20]
lea rdx, [rbp - 0x18]
movss dword [rbp - 0x18], xmm7
cmovbe rcx, rsi
mulss xmm0, dword [rcx]
subss xmm0, xmm12
maxss xmm1, xmm0
movaps xmm0, xmm9
addss xmm1, xmm7
maxss xmm0, xmm1
movaps xmm1, xmm6
addss xmm1, dword [0x18000d4cc]
subss xmm6, dword [0x18000d4cc]
movss dword [rbp - 0x20], xmm0
movss dword [rbp - 0x1c], xmm1
movss dword [rbp - 0x14], xmm6
jmp 0x18002e6e0
movd xmm0, dword [0x180001858]
lea r9, [0x1800018a0]
cvtdq2ps xmm0, xmm0
lea r8, [rsp + 0x40]
lea rdx, [0x18000d154]
lea rcx, [rsp + 0x30]
movss dword [rsp + 0x28], xmm10
movss dword [rsp + 0x20], xmm0
call fcn.180029ac0
jmp 0x18002e6fb
movd xmm0, dword [0x180001858]
lea r9, [0x1800018f0]
cvtdq2ps xmm0, xmm0
lea r8, [rsp + 0x40]
lea rdx, [0x18000d180]
lea rcx, [rsp + 0x30]
movss dword [rsp + 0x28], xmm10
movss dword [rsp + 0x20], xmm0
call fcn.180029ac0
jmp 0x18002e6fb
movd xmm0, dword [0x180001858]
lea r9, [0x1800018c8]
cvtdq2ps xmm0, xmm0
lea r8, [rsp + 0x40]
lea rdx, [0x18000d168]
lea rcx, [rsp + 0x30]
movss dword [rsp + 0x28], xmm10
movss dword [rsp + 0x20], xmm0
call fcn.180029ac0
jmp 0x18002e6fb
movd xmm0, dword [0x180001858]
lea r9, [0x1800018b4]
cvtdq2ps xmm0, xmm0
lea r8, [rsp + 0x40]
lea rdx, [0x18000d15c]
lea rcx, [rsp + 0x30]
movss dword [rsp + 0x28], xmm10
movss dword [rsp + 0x20], xmm0
call fcn.180029ac0
jmp 0x18002e6fb
cmp eax, 0x87cf2604
je 0x18002e3f2
cmp eax, 0x90570c97
je 0x18002e3b8
cmp eax, 0xb971b527
je 0x18002e37e
cmp eax, 0xcfac1e35
je 0x18002e344
cmp eax, 0xd801b73c
jne 0x18002e6fb
movd xmm0, dword [0x180001858]
lea r9, [0x1800018dc]
cvtdq2ps xmm0, xmm0
lea r8, [rsp + 0x40]
lea rdx, [0x18000d170]
lea rcx, [rsp + 0x30]
movss dword [rsp + 0x28], xmm10
movss dword [rsp + 0x20], xmm0
call fcn.180029ac0
jmp 0x18002e6fb
movd xmm0, dword [0x180001854]
lea r9, [0x18000188c]
cvtdq2ps xmm0, xmm0
lea r8, [rsp + 0x40]
lea rdx, [0x18000d148]
lea rcx, [rsp + 0x30]
movss dword [rsp + 0x28], xmm10
movss dword [rsp + 0x20], xmm0
call fcn.180029ac0
jmp 0x18002e6fb
movd xmm0, dword [0x180001860]
lea r9, [0x180001918]
cvtdq2ps xmm0, xmm0
lea r8, [rsp + 0x40]
lea rdx, [0x18000d198]
lea rcx, [rsp + 0x30]
movss dword [rsp + 0x28], xmm10
movss dword [rsp + 0x20], xmm0
call fcn.180029ac0
jmp 0x18002e6fb
movd xmm0, dword [0x180001860]
lea r9, [0x180001904]
cvtdq2ps xmm0, xmm0
lea r8, [rsp + 0x40]
lea rdx, [0x18000d190]
lea rcx, [rsp + 0x30]
movss dword [rsp + 0x28], xmm10
movss dword [rsp + 0x20], xmm0
call fcn.180029ac0
jmp 0x18002e6fb
movd xmm0, dword [0x180001854]
lea r9, [0x180001864]
cvtdq2ps xmm0, xmm0
lea r8, [rsp + 0x40]
lea rdx, [0x18000d128]
lea rcx, [rsp + 0x30]
movss dword [rsp + 0x28], xmm10
movss dword [rsp + 0x20], xmm0
call fcn.180029ac0
cmp byte [0x180001874], 0
je 0x18002e6fb
movss xmm0, dword [rsp + 0x58]
comiss xmm0, xmm0
ja 0x18002e6fb
movsd xmm0, qword [rsp + 0x4c]
lea r8, [rsp + 0x68]
mov eax, dword [rsp + 0x54]
lea rdx, [rbp + 0x90]
mov rcx, qword [0x18009b400]
movsd qword [rbp + 0x90], xmm0
mov qword [rsp + 0x68], 0
mov dword [rbp + 0x98], eax
call fcn.180024610
test al, al
je 0x18002e6fb
movss xmm0, dword [rsp + 0x6c]
mov rax, qword [0x180001c30]
addss xmm0, xmm7
movss dword [rsp + 0x6c], xmm0
cmp rax, 0x402402
jne 0x18002e4cc
mov r9b, 1
mov byte [rsp + 0x20], 0
lea r8, [0x180009b70]
lea rdx, [0x18000d3c8]
lea rcx, [0x18000d3f8]
call fcn.18002ee90
mov qword [0x180001c30], rax
mov rsi, qword [rsp + 0x40]
movss xmm8, dword [rax + rsi]
mov rax, qword [0x180001c38]
cmp rax, 0x402402
jne 0x18002e50f
mov r9b, 1
mov byte [rsp + 0x20], 0
lea r8, [0x180009b70]
lea rdx, [0x18000d410]
lea rcx, [0x18000d3f8]
call fcn.18002ee90
mov qword [0x180001c38], rax
divss xmm8, dword [rax + rsi]
mov eax, dword [0x18009d920]
mov r14d, 0xff
movaps xmm0, xmm8
movss dword [rbp + 0x1a0], xmm8
mulss xmm0, xmm14
mulss xmm0, xmm15
cvttss2si r15d, xmm0
sub r14d, r15d
test al, 2
jne 0x18002e56d
or eax, 2
movss dword [rsp + 0x20], xmm10
xor r9d, r9d
mov dword [0x18009d920], eax
xor r8d, r8d
lea rdx, [0x18000d138]
lea rcx, [0x18009d928]
call fcn.180044a80
movss xmm0, dword [0x18009d928]
lea rax, [rbp + 0x1a0]
movss xmm6, dword [rsp + 0x68]
lea rsi, [rbp + 0x198]
movss xmm7, dword [rsp + 0x6c]
lea rcx, [rsp + 0x70]
mulss xmm0, xmm13
mov dword [rbp + 0x1a8], 0x3f800000
comiss xmm9, xmm8
mov dword [rbp + 0x198], 0
subss xmm6, xmm0
movss xmm0, dword [0x18009d92c]
addss xmm7, xmm0
mulss xmm0, xmm13
cmovbe rsi, rax
addss xmm7, xmm0
movdqa xmm0, xmmword [0x18000d590]
movups xmmword [rsp + 0x70], xmm0
call fcn.1800457c0
mov rcx, qword [0x18009d4e0]
lea r8, [rbp - 0x10]
movaps xmm0, xmm6
mov dword [rsp + 0x28], r12d
addss xmm0, dword [0x18009d928]
movaps xmm1, xmm7
movss dword [rbp - 8], xmm6
subss xmm1, dword [0x18000d4d4]
mov r9d, eax
movss dword [rsp + 0x20], xmm9
lea rdx, [rbp - 8]
addss xmm0, xmm12
movss dword [rbp - 4], xmm1
movss dword [rbp - 0x10], xmm0
movaps xmm0, xmm7
addss xmm0, dword [0x18000d4d4]
movss dword [rbp - 0xc], xmm0
call fcn.18005be90
movd xmm0, r14d
lea rcx, [rbp + 0x50]
movd xmm1, r15d
cvtdq2ps xmm0, xmm0
mov dword [rbp + 0x58], 0
mov dword [rbp + 0x5c], 0x3f800000
cvtdq2ps xmm1, xmm1
mulss xmm0, xmm11
mulss xmm1, xmm11
movss dword [rbp + 0x50], xmm0
movss dword [rbp + 0x54], xmm1
call fcn.1800457c0
movss xmm0, dword [0x18009d928]
addss xmm6, xmm12
movaps xmm1, xmm12
lea rcx, [rbp + 0x1a8]
comiss xmm8, xmm12
lea r8, [rbp]
lea rdx, [rbp + 8]
movss dword [rbp + 8], xmm6
cmovbe rcx, rsi
mulss xmm0, dword [rcx]
subss xmm0, xmm12
maxss xmm1, xmm0
movaps xmm0, xmm9
addss xmm1, xmm6
maxss xmm0, xmm1
movaps xmm1, xmm7
addss xmm1, dword [0x18000d4cc]
subss xmm7, dword [0x18000d4cc]
movss dword [rbp], xmm0
movss dword [rbp + 4], xmm1
movss dword [rbp + 0xc], xmm7
mov rcx, qword [0x18009d4e0]
mov r9d, eax
mov dword [rsp + 0x28], r12d
movss dword [rsp + 0x20], xmm9
call fcn.18005be90
movss xmm7, dword [0x18000d4ec]
movabs rdx, 0x7ffffffdfffe
movss xmm11, dword [0x18000d4b4]
movabs rsi, 0xd0ea5d71c7107112
movabs r8, 0xcbf29ce484222325
movabs r9, 0x100000001b3
cmp rbx, rdi
jne 0x18002d650
movaps xmm8, xmmword [rsp + 0x220]
mov r13, qword [rsp + 0x260]
movaps xmm12, xmmword [rsp + 0x1e0]
movaps xmm11, xmmword [rsp + 0x1f0]
movaps xmm10, xmmword [rsp + 0x200]
movaps xmm9, xmmword [rsp + 0x210]
movaps xmm13, xmmword [rsp + 0x1d0]
movaps xmm7, xmmword [rsp + 0x230]
movaps xmm6, xmmword [rsp + 0x240]
mov r15, qword [rsp + 0x250]
mov r14, qword [rsp + 0x258]
movaps xmm14, xmmword [rsp + 0x1c0]
mov r12, qword [rsp + 0x268]
mov rsi, qword [rsp + 0x278]
movaps xmm15, xmmword [rsp + 0x1b0]
mov rbx, qword [rsp + 0x290]
mov rdi, qword [rsp + 0x270]
add rsp, 0x280
pop rbp
ret