Function at 0x18000c5e0
Capabilities:
Hash data using fnv

Disassembly:
mov rax, rsp
mov qword [rax + 0x18], rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rax - 0x528]
sub rsp, 0x5f0
movaps xmmword [rax - 0x48], xmm6
movaps xmmword [rax - 0x58], xmm7
movaps xmmword [rax - 0x68], xmm8
movaps xmmword [rax - 0x78], xmm9
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 [0x1801d11f0]
xor rax, rsp
mov qword [rbp + 0x450], rax
mov r13, qword [0x1801ebaf8]
mov r12d, 8
mov r14, rdx
mov qword [rbp + 0x3e0], rcx
mov rdi, rcx
mov qword [rbp - 0x80], r13
lea rcx, [rbp - 0x50]
mov edx, r12d
lea rax, [r13 + 0x37e0]
nop word [rax + rax]
lea rcx, [rcx + 0x80]
movups xmm0, xmmword [rax]
movups xmm1, xmmword [rax + 0x10]
lea rax, [rax + 0x80]
movups xmmword [rcx - 0x80], xmm0
movups xmm0, xmmword [rax - 0x60]
movups xmmword [rcx - 0x70], xmm1
movups xmm1, xmmword [rax - 0x50]
movups xmmword [rcx - 0x60], xmm0
movups xmm0, xmmword [rax - 0x40]
movups xmmword [rcx - 0x50], xmm1
movups xmm1, xmmword [rax - 0x30]
movups xmmword [rcx - 0x40], xmm0
movups xmm0, xmmword [rax - 0x20]
movups xmmword [rcx - 0x30], xmm1
movups xmm1, xmmword [rax - 0x10]
movups xmmword [rcx - 0x20], xmm0
movups xmmword [rcx - 0x10], xmm1
sub rdx, 1
jne 0x18000c680
movups xmm0, xmmword [rax]
movups xmm1, xmmword [rax + 0x10]
mov rax, qword [rax + 0x20]
movss xmm2, dword [0x1801b317c]
xorps xmm9, xmm9
movss xmm13, dword [0x1801b2f0c]
movups xmmword [rcx], xmm0
movups xmmword [rcx + 0x10], xmm1
mov qword [rcx + 0x20], rax
mov rax, qword [r13 + 0x3eb0]
mov byte [rax + 0xb0], 1
mov r15, qword [r13 + 0x3eb0]
movss xmm5, dword [r14]
comiss xmm5, xmm9
mov qword [rsp + 0x78], r15
movss xmm0, dword [r15 + 0xf8]
movss xmm3, dword [r14 + 4]
movss xmm4, dword [r14 + 8]
movss xmm1, dword [r14 + 0xc]
movss dword [rsp + 0x70], xmm0
movss dword [rsp + 0x60], xmm5
movss dword [rsp + 0x64], xmm3
movss dword [rsp + 0x68], xmm4
movss dword [rsp + 0x6c], xmm1
jb 0x18000c762
movaps xmm6, xmm13
jmp 0x18000c765
movaps xmm6, xmm2
comiss xmm3, xmm9
movss xmm11, dword [0x1801b3124]
movaps xmm0, xmm5
mulss xmm0, xmm11
addss xmm0, xmm6
cvttss2si eax, xmm0
mov dword [rbp + 0x400], eax
jb 0x18000c790
movaps xmm6, xmm13
jmp 0x18000c793
movaps xmm6, xmm2
comiss xmm4, xmm9
movaps xmm0, xmm3
mulss xmm0, xmm11
addss xmm0, xmm6
cvttss2si eax, xmm0
mov dword [rbp + 0x404], eax
jb 0x18000c7b5
movaps xmm6, xmm13
jmp 0x18000c7b8
movaps xmm6, xmm2
comiss xmm1, xmm9
movaps xmm0, xmm4
mulss xmm0, xmm11
addss xmm0, xmm6
cvttss2si eax, xmm0
mov dword [rbp + 0x408], eax
jb 0x18000c7d8
movaps xmm2, xmm13
comiss xmm4, xmm3
mov byte [rsp + 0x40], 0
movss xmm15, dword [0x1801b3188]
movaps xmm6, xmm3
mulss xmm1, xmm11
movaps xmm8, xmm5
addss xmm1, xmm2
xorps xmm2, xmm2
cvttss2si eax, xmm1
movaps xmm1, xmm4
mov dword [rbp + 0x40c], eax
jbe 0x18000c815
movaps xmm2, xmm15
movaps xmm6, xmm4
movaps xmm1, xmm3
comiss xmm6, xmm5
movss xmm12, dword [0x1801b3178]
jbe 0x18000c835
movaps xmm0, xmm12
movaps xmm8, xmm6
subss xmm0, xmm2
movaps xmm6, xmm5
movaps xmm2, xmm0
movss xmm14, dword [0x1801b2ea4]
lea rcx, [rsp + 0x48]
movaps xmm0, xmm6
movss dword [rsp + 0x5c], xmm8
minss xmm0, xmm1
movss dword [rsp + 0x48], xmm5
subss xmm6, xmm1
movss dword [rsp + 0x4c], xmm3
movaps xmm7, xmm8
movss dword [rsp + 0x50], xmm4
mov dword [rsp + 0x54], 0
subss xmm7, xmm0
movaps xmm0, xmm7
mulss xmm0, dword [0x1801b3038]
addss xmm0, xmm14
divss xmm6, xmm0
movaps xmm0, xmm8
addss xmm0, xmm14
addss xmm6, xmm2
divss xmm7, xmm0
andps xmm6, xmmword [0x1801b5240]
movss dword [rsp + 0x58], xmm7
call fcn.180018a20
cmp dword [r13 + 0x5ad8], eax
jne 0x18000c90b
ucomiss xmm7, xmm9
jp 0x18000c8bf
je 0x18000c8e1
ucomiss xmm6, xmm9
movss xmm7, dword [0x1801b2f58]
jp 0x18000c8f2
jne 0x18000c8f2
movss xmm0, dword [r13 + 0x5ad0]
ucomiss xmm0, xmm7
jp 0x18000c8f2
jne 0x18000c8f2
jmp 0x18000c8e9
movss xmm7, dword [0x1801b2f58]
movss xmm6, dword [r13 + 0x5ad0]
ucomiss xmm8, xmm9
jp 0x18000c913
jne 0x18000c913
movss xmm0, dword [r13 + 0x5ad4]
movss dword [rsp + 0x58], xmm0
jmp 0x18000c913
movss xmm7, dword [0x1801b2f58]
mov ecx, dword [0x1801eadf4]
mov rax, qword gs:[0x58]
mov edx, 8
mov rax, qword [rax + rcx*8]
mov ecx, dword [rdx + rax]
cmp dword [0x1801f4320], ecx
jle 0x18000c987
lea rcx, [0x1801f4320]
call fcn.180146b28
cmp dword [0x1801f4320], 0xffffffff
jne 0x18000c987
xorps xmm0, xmm0
movups xmmword [0x1801f42e0], xmm0
movups xmmword [0x1801f42f0], xmm0
movups xmmword [0x1801f4300], xmm0
movups xmmword [0x1801f4310], xmm0
call fcn.18000d540
lea rcx, [0x180184530]
call fcn.180146fa0
lea rcx, [0x1801f4320]
call fcn.180146ac8
mov rdx, qword [0x1801f42f8]
movabs rcx, 0x100000001b3
movabs rax, 0xcbf29ce484222325
movzx esi, dil
xor rsi, rax
movzx eax, byte [rbp + 0x3e1]
imul rsi, rcx
xor rsi, rax
movzx eax, byte [rbp + 0x3e2]
imul rsi, rcx
xor rsi, rax
movzx eax, byte [rbp + 0x3e3]
imul rsi, rcx
xor rsi, rax
movzx eax, byte [rbp + 0x3e4]
imul rsi, rcx
xor rsi, rax
movzx eax, byte [rbp + 0x3e5]
imul rsi, rcx
xor rsi, rax
movzx eax, byte [rbp + 0x3e6]
imul rsi, rcx
xor rsi, rax
movzx eax, byte [rbp + 0x3e7]
imul rsi, rcx
xor rsi, rax
imul rsi, rcx
mov rcx, qword [0x1801f42e8]
mov rax, rsi
and rax, qword [0x1801f4310]
add rax, rax
mov rbx, qword [rdx + rax*8 + 8]
cmp rbx, rcx
je 0x18000ca4b
mov rax, qword [rdx + rax*8]
cmp rdi, qword [rbx + 0x10]
je 0x18000ca46
cmp rbx, rax
je 0x18000ca4b
mov rbx, qword [rbx + 8]
cmp rdi, qword [rbx + 0x10]
jne 0x18000ca37
test rbx, rbx
jne 0x18000ca4e
mov rbx, rcx
cmp rbx, rcx
jne 0x18000cab7
lea r8, [rsp + 0x48]
mov qword [rsp + 0x48], rdi
lea rdx, [rbp + 0x3e0]
mov dword [rsp + 0x50], 0xffffffff
call fcn.18000f4e0
and rsi, qword [0x1801f4310]
mov rax, qword [0x1801f42f8]
add rsi, rsi
mov rcx, qword [0x1801f42e8]
mov rbx, qword [rax + rsi*8 + 8]
cmp rbx, rcx
je 0x18000cab4
mov rax, qword [rax + rsi*8]
cmp rdi, qword [rbx + 0x10]
je 0x18000caaf
nop dword [rax]
cmp rbx, rax
je 0x18000cab4
mov rbx, qword [rbx + 8]
cmp rdi, qword [rbx + 0x10]
jne 0x18000caa0
test rbx, rbx
jne 0x18000cab7
mov rbx, rcx
mov rcx, qword [0x1801f4330]
movabs rax, 0x2aaaaaaaaaaaaaab
sub rcx, qword [0x1801f4328]
movaps xmm3, xmm9
movss xmm0, dword [0x1801e5934]
mulss xmm0, dword [0x1801b2f68]
imul rcx
movss dword [rsp + 0x28], xmm0
movss dword [rsp + 0x20], xmm7
mov rcx, rdi
sar rdx, 2
mov rax, rdx
shr rax, 0x3f
add rdx, rax
setne r8b
xor edx, edx
call fcn.1800125f0
movss xmm8, dword [rbp - 0x48]
movaps xmm7, xmm0
comiss xmm7, dword [0x1801b2eb8]
jbe 0x18000cda6
movaps xmm1, xmm0
xor ecx, ecx
call fcn.180019160
movss xmm0, dword [r15 + 0x20]
movaps xmm1, xmm8
mov rdi, qword [0x1801ebaf8]
xor edx, edx
mulss xmm1, dword [0x1801b2fa0]
mov dword [rbp + 0x3e4], 0
mov rax, qword [rdi + 0x3eb0]
subss xmm0, xmm1
mov byte [rax + 0xb0], 1
mov rax, qword [rdi + 0x3eb0]
movss dword [rbp + 0x3e0], xmm0
movsxd rcx, dword [rax + 0xe8]
mov rax, qword [rax + 0xf0]
mov r8d, dword [rax + rcx*4 - 4]
lea rcx, str.pcolors
call fcn.180018410
mov esi, eax
cmp dword [rdi + 0x3ef8], eax
jne 0x18000cbb0
lea r8, str.pcolors
mov edx, ntohl
mov ecx, eax
call fcn.18002eb40
xor r9d, r9d
mov dword [rsp + 0x20], Ordinal_143
lea r8, [rbp + 0x3e0]
mov edx, esi
lea rcx, str.pcolors
call fcn.18001e890
mov rcx, qword [0x1801ebaf8]
lea rdx, [rbp + 0x3e0]
xor r8d, r8d
mov dword [rbp + 0x3e0], 0
mov rax, qword [rcx + 0x3eb0]
mov byte [rax + 0xb0], 1
mov rax, qword [rcx + 0x3eb0]
mov rcx, rax
movss xmm0, dword [rax + 0x34]
addss xmm0, dword [0x1801b2fa0]
mulss xmm0, xmm7
movss dword [rbp + 0x3e4], xmm0
call fcn.180024520
lea rcx, str.Project_Colors
call fcn.180043670
call fcn.1800274a0
mov rcx, qword [0x1801f4330]
movabs rax, 0x2aaaaaaaaaaaaaab
mov r8, qword [0x1801f4328]
mov esi, 1
sub rcx, r8
imul rcx
sar rdx, 2
mov rax, rdx
shr rax, 0x3f
inc rax
add rax, rdx
cmp rax, rsi
jbe 0x18000cd92
movss xmm7, dword [0x1801b3030]
lea r15d, [rsi + 0x17]
mov dword [rsp + 0x54], 0x3f800000
movabs r13, 0x2aaaaaaaaaaaaaab
nop dword [rax]
mov rax, qword [r15 + r8 - 0x18]
lea rcx, [rbp - 0x78]
cmp dword [rbx + 0x18], esi
mov edx, esi
sete dil
movss xmm0, dword [rax]
movss xmm1, dword [rax + 4]
movss dword [rsp + 0x48], xmm0
movss xmm0, dword [rax + 8]
movss dword [rsp + 0x50], xmm0
movss dword [rsp + 0x4c], xmm1
call fcn.180007bf0
cmp qword [rax + 0x18], 0x10
jb 0x18000ccd1
mov rax, qword [rax]
movups xmm0, xmmword [rsp + 0x48]
movzx r8d, dil
lea rdx, [rbp + 0x3e0]
mov rcx, rax
movdqa xmmword [rbp + 0x3e0], xmm0
call fcn.18000c2e0
lea rcx, [rbp - 0x78]
movzx edi, al
call fcn.18000da30
test dil, dil
je 0x18000cd2b
mov dword [rbx + 0x18], esi
mov rax, qword [0x1801f4328]
mov rcx, qword [r15 + rax - 0x18]
mov eax, dword [rcx]
mov dword [r14], eax
mov eax, dword [rcx + 4]
mov dword [r14 + 4], eax
mov eax, dword [rcx + 8]
mov dword [r14 + 8], eax
mov eax, dword [rcx + 0xc]
mov dword [r14 + 0xc], eax
mov eax, esi
and eax, 0x80000007
jge 0x18000cd3b
dec eax
or eax, 0xfffffff8
inc eax
test eax, eax
jne 0x18000cd43
test esi, esi
jne 0x18000cd4f
movaps xmm1, xmm7
movaps xmm0, xmm9
call fcn.1800271d0
mov rcx, qword [0x1801f4330]
inc esi
mov r8, qword [0x1801f4328]
mov rax, r13
sub rcx, r8
add r15, 0x18
imul rcx
movsxd rax, esi
sar rdx, 2
mov rcx, rdx
shr rcx, 0x3f
inc rcx
add rcx, rdx
cmp rax, rcx
jb 0x18000cc90
mov r13, qword [rbp - 0x80]
mov r15, qword [rsp + 0x78]
call fcn.1800275d0
call fcn.18001ebc0
mov ecx, 1
call fcn.180019330
mov edx, dword [rbp + 0x40c]
mov r8d, 0xff
test edx, edx
jns 0x18000cdba
xor edx, edx
jmp 0x18000cdc1
cmp edx, r8d
cmovg edx, r8d
mov ecx, dword [rbp + 0x408]
test ecx, ecx
jns 0x18000cdcf
xor ecx, ecx
jmp 0x18000cdd6
cmp ecx, r8d
cmovg ecx, r8d
mov eax, dword [rbp + 0x404]
test eax, eax
jns 0x18000cde4
xor eax, eax
jmp 0x18000cdeb
cmp eax, r8d
cmovg eax, r8d
mov r9d, dword [rbp + 0x400]
test r9d, r9d
jns 0x18000cdfc
xor r9d, r9d
jmp 0x18000ce03
cmp r9d, r8d
cmovg r9d, r8d
mov dword [rsp + 0x30], edx
lea r8, str._02X_02X_02X_02X
mov dword [rsp + 0x28], ecx
mov edx, 0x40
lea rcx, [rbp + 0x410]
mov dword [rsp + 0x20], eax
call fcn.1800182a0
movss xmm0, dword [0x1801b3090]
lea rdx, [rbp + 0x3e0]
mov rax, qword [0x1801ebaf8]
mov ecx, ntohl
movss dword [rbp + 0x3e0], xmm0
movss xmm0, dword [0x1801b307c]
movss xmm1, dword [rax + 0x3c10]
mulss xmm1, xmm13
subss xmm0, xmm1
movss dword [rbp + 0x3e4], xmm0
call fcn.180019240
movss xmm0, dword [rbp - 0x50]
mulss xmm0, dword [0x1801b2ecc]
mov rsi, qword [0x1801ebaf8]
mov dword [rsp + 0x48], 0x3f800000
mov dword [rsp + 0x4c], 0x3f800000
movss dword [rsp + 0x54], xmm0
movups xmm0, xmmword [rsi + 0x3928]
lea rdi, [rsi + 0x47f8]
mov dword [rsp + 0x50], 0x3f800000
mov r8d, dword [rdi + 4]
mov eax, dword [rdi]
mov dword [rbp + 0x3e0], r12d
movups xmmword [rbp + 0x3e4], xmm0
cmp eax, r8d
jne 0x18000cef0
lea ecx, [rax + 1]
test r8d, r8d
je 0x18000cedd
mov eax, r8d
cdq
sub eax, edx
sar eax, 1
lea r12d, [r8 + rax]
cmp r12d, ecx
cmovg ecx, r12d
mov edx, ecx
mov rcx, rdi
call fcn.18000ee60
mov eax, dword [rdi]
mov rcx, qword [rdi + 8]
lea r8, [rbp + 0x410]
movups xmm0, xmmword [rbp + 0x3e0]
xor r12d, r12d
cdqe
mulss xmm8, dword [0x1801b2fa0]
mov qword [rsp + 0x38], r12
mov qword [rsp + 0x30], r12
lea rdx, [rax + rax*4]
mov dword [rsp + 0x28], r12d
mov eax, dword [rbp + 0x3f0]
lea r9d, [r12 + 0x40]
movups xmmword [rcx + rdx*4], xmm0
mov dword [rcx + rdx*4 + 0x10], eax
lea rax, [rbp + 0x3e0]
movups xmm0, xmmword [rsp + 0x48]
inc dword [rdi]
lea rdx, [0x1801a7088]
lea rcx, str.Input
mov qword [rsp + 0x20], rax
movups xmmword [rsi + 0x3928], xmm0
movss xmm0, dword [r15 + 0x20]
subss xmm0, xmm8
movss dword [rbp + 0x3e0], xmm0
movss xmm0, dword [0x1801b30a8]
movss dword [rbp + 0x3e4], xmm0
call fcn.18004a5a0
test al, al
je 0x18000d0b6
mov byte [rsp + 0x40], 1
lea rcx, [rbp + 0x410]
nop word [rax + rax]
movzx eax, byte [rcx]
cmp al, 0x23
je 0x18000cfaf
cmp al, 0x20
je 0x18000cfaf
cmp al, 9
jne 0x18000cfb4
inc rcx
jmp 0x18000cfa0
lea rax, [rbp + 0x40c]
mov qword [rbp + 0x404], r12
mov qword [rsp + 0x28], rax
lea r9, [rbp + 0x404]
lea rax, [rbp + 0x408]
mov dword [rbp + 0x400], r12d
lea r8, [rbp + 0x400]
mov qword [rsp + 0x20], rax
lea rdx, str._02X_02X_02X_02X
mov dword [rbp + 0x40c], 0xff
call fcn.180007a00
movd xmm1, dword [rbp + 0x404]
movaps xmm4, xmm9
movd xmm2, dword [rbp + 0x408]
movd xmm0, dword [rbp + 0x400]
cvtdq2ps xmm1, xmm1
cvtdq2ps xmm2, xmm2
divss xmm1, xmm11
divss xmm2, xmm11
cvtdq2ps xmm0, xmm0
comiss xmm2, xmm1
divss xmm0, xmm11
movss dword [rsp + 0x64], xmm1
movaps xmm6, xmm1
movss dword [rsp + 0x60], xmm0
movss dword [rsp + 0x68], xmm2
jbe 0x18000d056
movaps xmm6, xmm2
movaps xmm4, xmm15
movaps xmm2, xmm1
comiss xmm6, xmm0
movaps xmm3, xmm0
jbe 0x18000d06d
subss xmm12, xmm4
movaps xmm3, xmm6
movaps xmm6, xmm0
movaps xmm4, xmm12
movaps xmm0, xmm6
movss dword [rsp + 0x5c], xmm3
minss xmm0, xmm2
movaps xmm1, xmm3
subss xmm6, xmm2
subss xmm1, xmm0
movaps xmm0, xmm1
mulss xmm0, dword [0x1801b3038]
addss xmm0, xmm14
divss xmm6, xmm0
movaps xmm0, xmm3
addss xmm0, xmm14
addss xmm6, xmm4
divss xmm1, xmm0
andps xmm6, xmmword [0x1801b5240]
movss dword [rsp + 0x58], xmm1
mov r8, qword [0x1801ebaf8]
cmp dword [r8 + 0x47f8], 1
jl 0x18000d0f6
movsxd rax, dword [r8 + 0x47f8]
mov rcx, qword [r8 + 0x4800]
lea rdx, [rax + rax*4]
movsxd rax, dword [rcx + rdx*4 - 0x14]
movups xmm0, xmmword [rcx + rdx*4 - 0x10]
add rax, rax
movups xmmword [r8 + rax*8 + 0x38a8], xmm0
dec dword [r8 + 0x47f8]
movups xmm0, xmmword [r8 + 0x38c8]
lea rcx, [rsp + 0x48]
movups xmmword [rsp + 0x48], xmm0
shufps xmm0, xmm0, 0xff
mulss xmm0, dword [r8 + 0x37e0]
movss dword [rsp + 0x54], xmm0
call fcn.180018a20
mov edx, eax
call fcn.180018f50
mov rdi, qword [0x1801ebaf8]
lea rsi, [0x1801a708c]
movss xmm3, dword [0x1801b3174]
lea rdx, [rsp + 0x78]
mov qword [rsp + 0x30], r12
mov qword [rsp + 0x28], rsi
movss xmm2, dword [rdi + 0x3c10]
mov rcx, qword [rdi + 0x3c08]
movss dword [rsp + 0x20], xmm15
call fcn.18003d2b0
movss xmm0, dword [rsp + 0x78]
mov r9b, 1
addss xmm0, dword [0x1801b2f50]
movss xmm2, dword [rdi + 0x381c]
xor r8d, r8d
movss xmm7, dword [rbp]
mov rdx, rsi
mulss xmm2, xmm13
cvttss2si eax, xmm0
addss xmm2, dword [rsp + 0x70]
movss xmm0, dword [rdi + 0x3820]
addss xmm0, xmm0
movd xmm1, eax
cvtdq2ps xmm1, xmm1
addss xmm0, dword [rdi + 0x3c10]
mulss xmm1, xmm13
subss xmm2, xmm1
movss xmm1, dword [r15 + 0xfc]
subss xmm1, xmm0
addss xmm2, dword [0x1801b2f58]
subss xmm1, xmm7
movaps xmm0, xmm2
addss xmm1, dword [rdi + 0x3820]
unpcklps xmm0, xmm1
movq rcx, xmm0
call fcn.1800195b0
mov r9, qword [0x1801ebaf8]
cmp dword [r9 + 0x47f8], 1
jl 0x18000d230
movsxd rax, dword [r9 + 0x47f8]
mov rdx, qword [r9 + 0x4800]
lea r8, [rax + rax*4]
movsxd rax, dword [rdx + r8*4 - 0x14]
movups xmm0, xmmword [rdx + r8*4 - 0x10]
add rax, rax
movups xmmword [r9 + rax*8 + 0x38a8], xmm0
dec dword [r9 + 0x47f8]
mov ecx, 1
call fcn.180019330
lea rax, [rsp + 0x40]
movaps xmm1, xmm6
lea r9, [rsp + 0x5c]
mov qword [rsp + 0x20], rax
lea r8, [rsp + 0x58]
mov rcx, r14
call fcn.1800097d0
addss xmm7, dword [0x1801b3084]
lea rdx, [rbp + 0x3e0]
lea rcx, [0x1801a70d8]
movss dword [rbp + 0x3e0], xmm7
movss dword [rbp + 0x3e4], xmm7
call fcn.180043ea0
test al, al
je 0x18000d38f
movups xmm0, xmmword [r14]
mov ecx, reloc.WS2_32.dll_recv
movups xmmword [rsp + 0x48], xmm0
call fcn.180146960
mov r8d, reloc.WS2_32.dll_recv
mov qword [rbp + 0x3e0], rax
lea rdx, [rsp + 0x48]
mov rcx, rax
lea rdi, [rax + 0x10]
mov qword [rbp + 0x3f0], rdi
call fcn.1801480b0
mov rdx, qword [0x1801f4330]
cmp rdx, qword [0x1801f4338]
mov qword [rbp + 0x3e8], rdi
je 0x18000d313
mov rcx, qword [rbp + 0x3f0]
mov rax, qword [rbp + 0x3e0]
mov qword [rbp + 0x3f0], r12
mov qword [rbp + 0x3e0], r12
mov qword [rbp + 0x3e8], r12
mov qword [rdx], rax
mov qword [rdx + 8], rdi
mov qword [rdx + 0x10], rcx
add qword [0x1801f4330], 0x18
jmp 0x18000d31f
lea r8, [rbp + 0x3e0]
call fcn.18000f0e0
mov rcx, qword [rbp + 0x3e0]
test rcx, rcx
je 0x18000d363
mov rdx, qword [rbp + 0x3f0]
mov rax, rcx
sub rdx, rcx
and rdx, 0xfffffffffffffffc
cmp rdx, 0x1000
jb 0x18000d35e
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18000d4d5
call fcn.18014699c
mov rcx, qword [0x1801f4330]
movabs rax, 0x2aaaaaaaaaaaaaab
sub rcx, qword [0x1801f4328]
imul rcx
sar rdx, 2
mov rax, rdx
shr rax, 0x3f
add rdx, rax
mov dword [rbx + 0x18], edx
movaps xmm1, xmm15
movaps xmm0, xmm9
call fcn.1800271d0
call fcn.1800274a0
lea r8, [rsp + 0x40]
movaps xmm1, xmm6
call fcn.1800085b0
lea r8, [rsp + 0x40]
mov rcx, r14
lea rdx, [rsp + 0x6c]
movaps xmm6, xmm0
call fcn.1800091c0
call fcn.1800275d0
movss xmm7, dword [rsp + 0x58]
lea rax, [rsp + 0x68]
movss xmm2, dword [rsp + 0x5c]
lea r9, [rsp + 0x60]
mov qword [rsp + 0x28], rax
movaps xmm1, xmm7
lea rax, [rsp + 0x64]
movaps xmm0, xmm6
mov qword [rsp + 0x20], rax
call fcn.180018b80
cmp byte [rsp + 0x40], r12b
je 0x18000d479
movss dword [r13 + 0x5ad0], xmm6
lea rcx, [rsp + 0x48]
movss dword [r13 + 0x5ad4], xmm7
movss xmm0, dword [r14]
movss xmm1, dword [r14 + 4]
movss dword [rsp + 0x48], xmm0
movss xmm0, dword [r14 + 8]
movss dword [rsp + 0x50], xmm0
movss dword [rsp + 0x4c], xmm1
mov dword [rsp + 0x54], r12d
call fcn.180018a20
movss xmm0, dword [rsp + 0x60]
movss xmm1, dword [rsp + 0x64]
mov dword [r13 + 0x5ad8], eax
movss dword [r14], xmm0
movss xmm0, dword [rsp + 0x68]
movss dword [r14 + 4], xmm1
movss xmm1, dword [rsp + 0x6c]
movss dword [r14 + 8], xmm0
movss dword [r14 + 0xc], xmm1
mov al, 1
mov rcx, qword [rbp + 0x450]
xor rcx, rsp
call fcn.180146940
lea r11, [rsp + 0x5f0]
mov rbx, qword [r11 + 0x50]
movaps xmm6, xmmword [r11 - 0x10]
movaps xmm7, xmmword [r11 - 0x20]
movaps xmm8, xmmword [r11 - 0x30]
movaps xmm9, xmmword [r11 - 0x40]
movaps xmm11, xmmword [r11 - 0x50]
movaps xmm12, xmmword [r11 - 0x60]
movaps xmm13, xmmword [r11 - 0x70]
movaps xmm14, xmmword [r11 - 0x80]
movaps xmm15, xmmword [r11 - 0x90]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret
call fcn.180156dbc
int3