Function at 0x140054bb0
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 - 0x5f]
sub rsp, 0x100
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
mov rax, qword [0x1401c0040]
xor rax, rsp
mov qword [rbp - 0x39], rax
mov rsi, r9
mov byte [rsp + 0x40], dl
mov r12, rcx
mov rbx, qword [0x1402c18d0]
mov r15, rbx
mov rax, qword [rbx + 0x3ed8]
mov byte [rax + 0xb8], 1
mov r14, qword [rbx + 0x3ed8]
cmp byte [r14 + 0xbb], 0
jne 0x14005533d
movsxd r8, dword [r14 + 0xf0]
mov rax, qword [r14 + 0xf8]
mov r8d, dword [rax + r8*4 - 4]
xor edx, edx
call fcn.140013b00
mov edi, eax
mov dword [rsp + 0x44], edi
mov rcx, qword [r14]
cmp dword [rcx + 0x3f20], eax
jne 0x140054c78
mov r8, r12
mov edx, 0xb
mov ecx, edi
call fcn.14002bdd0
mov rbx, qword [0x1402c18d0]
mov rcx, r12
cmp r12, 0xffffffffffffffff
jae 0x140054c9e
movzx edx, byte [rcx]
test dl, dl
je 0x140054c9e
lea rax, [rcx + 1]
cmp dl, 0x23
jne 0x140054c95
cmp byte [rax], dl
je 0x140054c9e
mov rcx, rax
cmp rax, 0xffffffffffffffff
jb 0x140054c81
movss xmm8, dword [rbx + 0x3c10]
xorps xmm9, xmm9
cmp r12, rcx
jne 0x140054cb5
xorps xmm7, xmm7
jmp 0x140054d09
mov qword [rsp + 0x30], rcx
mov qword [rsp + 0x28], r12
movss xmm0, dword [0x1401a1c98]
movss dword [rsp + 0x20], xmm0
movss xmm3, dword [0x1401a1c7c]
movaps xmm2, xmm8
lea rdx, [rsp + 0x48]
mov rcx, qword [rbx + 0x3c08]
call fcn.14003d590
movss xmm0, dword [rsp + 0x48]
addss xmm0, dword [0x1401a1a70]
cvttss2si eax, xmm0
movd xmm7, eax
cvtdq2ps xmm7, xmm7
movss xmm8, dword [rbp - 0x7d]
movss dword [rbp - 0x65], xmm8
movss dword [rbp - 0x69], xmm7
movss xmm0, dword [rsi + 4]
ucomiss xmm0, xmm9
jp 0x140054d21
je 0x140054d25
movaps xmm8, xmm0
movss xmm6, dword [rsi]
ucomiss xmm6, xmm9
jp 0x140054d34
jne 0x140054d34
movaps xmm6, xmm7
movss dword [rsp + 0x48], xmm6
movss dword [rbp - 0x7d], xmm8
movss xmm11, dword [r14 + 0x100]
movss xmm10, dword [r14 + 0x104]
addss xmm10, dword [r14 + 0x138]
xorps xmm1, xmm1
lea rcx, [rsp + 0x48]
call fcn.1400236e0
movss xmm1, dword [r14 + 0x220]
movss xmm0, dword [rsi]
ucomiss xmm0, xmm9
jp 0x140054d89
jne 0x140054d89
subss xmm1, xmm11
movaps xmm6, xmm7
maxss xmm6, xmm1
movaps xmm7, xmm10
addss xmm7, xmm8
movaps xmm5, xmm11
addss xmm5, xmm6
movss dword [rbp - 0x41], xmm5
movss dword [rbp - 0x3d], xmm7
movss xmm4, dword [r15 + 0x3814]
movss xmm6, dword [r15 + 0x3818]
movaps xmm0, xmm4
movss xmm8, dword [0x1401a1a3c]
mulss xmm0, xmm8
cvttss2si eax, xmm0
movd xmm2, eax
cvtdq2ps xmm2, xmm2
movaps xmm0, xmm6
mulss xmm0, xmm8
cvttss2si eax, xmm0
movd xmm3, eax
cvtdq2ps xmm3, xmm3
movaps xmm1, xmm11
subss xmm1, xmm2
movss dword [rbp - 0x51], xmm1
movaps xmm0, xmm10
subss xmm0, xmm3
movss dword [rbp - 0x4d], xmm0
subss xmm4, xmm2
addss xmm4, xmm5
movss dword [rbp - 0x49], xmm4
subss xmm6, xmm3
addss xmm6, xmm7
movss dword [rbp - 0x45], xmm6
xor r9d, r9d
xor r8d, r8d
mov edx, edi
lea rcx, [rbp - 0x51]
call fcn.140023850
test al, al
je 0x14005533d
mov eax, dword [r15 + 0x477c]
and eax, 0x200
shl eax, 3
mov dword [rsp + 0x20], eax
lea r9, [rbp - 0x71]
lea r8, [rsp + 0x41]
mov edx, edi
lea rcx, [rbp - 0x51]
call fcn.140042bc0
movzx r13d, al
test al, al
je 0x140054fa2
mov r8, qword [0x1402c18d0]
cmp byte [r15 + 0x490f], 0
jne 0x140054f76
cmp qword [r15 + 0x48d0], r14
jne 0x140054f76
movsxd rcx, dword [r14 + 0x158]
cmp dword [r15 + 0x4908], ecx
jne 0x140054f76
movss xmm1, dword [r14 + 0x110]
movss xmm0, dword [r14 + 0x114]
movss xmm5, dword [rbp - 0x45]
subss xmm5, xmm0
movss xmm3, dword [rbp - 0x49]
subss xmm3, xmm1
movss xmm2, dword [rbp - 0x4d]
subss xmm2, xmm0
movss xmm4, dword [rbp - 0x51]
subss xmm4, xmm1
mov eax, dword [r15 + 0x4754]
mov dword [r8 + 0x48d8], edi
mov dword [r8 + 0x4908], ecx
mov dword [r8 + 0x48dc], eax
mov rax, qword [r8 + 0x48d0]
mov dword [rax + rcx*4 + 0x3a0], edi
add rcx, rcx
mov rax, qword [r8 + 0x48d0]
shufps xmm4, xmm4, 0xe1
movss xmm4, xmm2
shufps xmm4, xmm4, 0xc6
movss xmm4, xmm3
shufps xmm4, xmm4, 0x27
movss xmm4, xmm5
shufps xmm4, xmm4, 0x39
movups xmmword [rsp + 0x48], xmm4
movups xmmword [rax + rcx*8 + 0x3a8], xmm4
movsxd rdx, dword [r8 + 0x4908]
mov rax, qword [r8 + 0x48d0]
mov rcx, qword [rax + 0x390]
mov dword [rcx + rdx*8 + 0x3c8], 0x7f7fffff
movsxd rdx, dword [r8 + 0x4908]
mov rax, qword [r8 + 0x48d0]
mov rcx, qword [rax + 0x390]
mov dword [rcx + rdx*8 + 0x3cc], 0x7f7fffff
mov byte [r15 + 0x490e], 1
cmp word [r8 + 0x5bc2], 0
jg 0x140054fa2
mov eax, dword [r8 + 0x3f38]
cmp eax, edi
je 0x140054f90
test eax, eax
jne 0x140054f9a
mov word [r8 + 0x3f48], 0x101
or dword [r8 + 0x4780], 4
mov ecx, 4
mov rax, qword gs:[0x58]
mov rax, qword [rax]
xor esi, esi
movss xmm6, dword [0x1401a1a78]
mov eax, dword [rcx + rax]
cmp dword [0x1402c1f00], eax
jle 0x140055090
lea rcx, [0x1402c1f00]
call fcn.14014fe18
cmp dword [0x1402c1f00], 0xffffffff
jne 0x140055090
xorps xmm0, xmm0
movups xmmword [0x1402c1fa0], xmm0
movups xmmword [0x1402c1fb0], xmm0
movups xmmword [0x1402c1fc0], xmm0
movups xmmword [0x1402c1fd0], xmm0
mov dword [0x1402c1fa0], esi
mov qword [0x1402c1fa8], rsi
mov qword [0x1402c1fb0], rsi
lea ecx, [rsi + 0x18]
call fcn.14015012c
mov qword [rax], rax
mov qword [rax + 8], rax
mov qword [0x1402c1fa8], rax
mov qword [0x1402c1fb8], rsi
xorps xmm0, xmm0
movdqa xmmword [0x1402c1fc0], xmm0
mov qword [0x1402c1fd0], 7
mov qword [0x1402c1fd8], 8
mov dword [0x1402c1fa0], 0x3f800000
mov r8, rax
lea edx, [rsi + 0x10]
lea rcx, [0x1402c1fb8]
call fcn.140055730
nop
lea rcx, [0x140154160]
call fcn.140150390
nop
lea rcx, [0x1402c1f00]
call fcn.14014fdac
nop dword [rax]
movzx ecx, dil
movabs rax, 0xcbf29ce484222325
xor rcx, rax
movabs rdx, 0x100000001b3
imul rcx, rdx
movzx eax, byte [rsp + 0x45]
xor rcx, rax
imul rcx, rdx
movzx eax, byte [rsp + 0x46]
xor rcx, rax
imul rcx, rdx
movzx eax, byte [rsp + 0x47]
xor rcx, rax
imul rcx, rdx
and rcx, qword [0x1402c1fd0]
add rcx, rcx
mov rdx, qword [0x1402c1fb8]
mov rax, qword [rdx + rcx*8 + 8]
mov r8, qword [0x1402c1fa8]
cmp rax, r8
je 0x140055110
mov rdx, qword [rdx + rcx*8]
cmp edi, dword [rax + 0x10]
je 0x140055113
nop
cmp rax, rdx
je 0x140055110
mov rax, qword [rax + 8]
cmp edi, dword [rax + 0x10]
jne 0x140055100
jmp 0x140055113
mov rax, rsi
mov rbx, r8
test rax, rax
cmovne rbx, rax
cmp rbx, r8
jne 0x1400551cc
mov dword [rsp + 0x48], edi
mov dword [rbp - 0x7d], 0
lea r8, [rsp + 0x48]
lea rdx, [rbp - 0x61]
lea rcx, [0x1402c1fa0]
call fcn.140059af0
movzx ecx, dil
movabs rax, 0xcbf29ce484222325
xor rcx, rax
movabs rdx, 0x100000001b3
imul rcx, rdx
movzx eax, byte [rsp + 0x45]
xor rcx, rax
imul rcx, rdx
movzx eax, byte [rsp + 0x46]
xor rcx, rax
imul rcx, rdx
movzx eax, byte [rsp + 0x47]
xor rcx, rax
imul rcx, rdx
and rcx, qword [0x1402c1fd0]
add rcx, rcx
mov rdx, qword [0x1402c1fb8]
mov rax, qword [rdx + rcx*8 + 8]
mov rbx, qword [0x1402c1fa8]
cmp rax, rbx
je 0x1400551c5
mov rdx, qword [rdx + rcx*8]
cmp edi, dword [rax + 0x10]
je 0x1400551c2
cmp rax, rdx
je 0x1400551c5
mov rax, qword [rax + 8]
cmp edi, dword [rax + 0x10]
jne 0x1400551b4
mov rsi, rax
test rsi, rsi
cmovne rbx, rsi
cmp byte [rsp + 0x40], 0
jne 0x1400551e4
cmp byte [rsp + 0x41], 0
je 0x1400551e0
movaps xmm6, xmm8
jmp 0x1400551e4
movaps xmm6, xmm9
subss xmm6, dword [rbx + 0x14]
mulss xmm6, dword [0x1401a19d8]
addss xmm6, dword [rbx + 0x14]
movss dword [rbx + 0x14], xmm6
mov dword [rsp + 0x48], 0x3f800000
mov dword [rbp - 0x7d], 0x3f800000
mov dword [rbp - 0x79], 0x3f800000
mulss xmm6, dword [0x1401a19c8]
mulss xmm6, dword [r15 + 0x37c8]
movss dword [rbp - 0x75], xmm6
lea rcx, [rsp + 0x48]
call fcn.140014090
mov r8d, eax
movss dword [rsp + 0x20], xmm9
mov r9b, 1
mov rdx, qword [rbp - 0x49]
mov rcx, qword [rbp - 0x51]
call fcn.1400155c0
mov rax, qword [0x1402c18d0]
movups xmm1, xmmword [rax + 0x38a4]
movups xmmword [rsp + 0x48], xmm1
movss xmm0, dword [rbx + 0x14]
maxss xmm0, dword [0x1401a1a28]
mulss xmm0, dword [rax + 0x37c8]
shufps xmm1, xmm1, 0xff
mulss xmm1, xmm0
movss dword [rbp - 0x75], xmm1
lea rcx, [rsp + 0x48]
call fcn.140014090
mov edx, eax
call fcn.140014560
addss xmm11, dword [0x1401a1aec]
movss dword [rsp + 0x48], xmm11
addss xmm10, xmm9
movss dword [rbp - 0x7d], xmm10
lea rax, [r15 + 0x3868]
lea rcx, [rbp - 0x51]
mov qword [rsp + 0x30], rcx
mov qword [rsp + 0x28], rax
lea rax, [rbp - 0x69]
mov qword [rsp + 0x20], rax
xor r9d, r9d
mov r8, r12
lea rdx, [rbp - 0x41]
lea rcx, [rsp + 0x48]
call fcn.140015330
mov r8, qword [0x1402c18d0]
movsxd rax, dword [r8 + 0x4828]
cmp eax, 1
jl 0x140055319
lea rdx, [rax + rax*4]
mov rcx, qword [r8 + 0x4830]
movsxd rax, dword [rcx + rdx*4 - 0x14]
add rax, rax
movups xmm0, xmmword [rcx + rdx*4 - 0x10]
movups xmmword [r8 + rax*8 + 0x38a4], xmm0
dec dword [r8 + 0x4828]
test r13b, r13b
je 0x140055337
test dword [r14 + 0x14], 0x4000000
je 0x140055337
test byte [r15 + 0x477c], 0x20
jne 0x140055337
call fcn.140024fe0
movzx eax, r13b
jmp 0x14005533f
xor al, al
mov rcx, qword [rbp - 0x39]
xor rcx, rsp
call fcn.14014fd50
lea r11, [rsp + 0x100]
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]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rbp
ret