Function at 0x18009e740
Capabilities:
Hash data using fnv

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rsi
push rdi
sub rsp, 0x40
mov rax, qword [0x1800ec040]
xor rax, rsp
mov qword [rsp + 0x30], rax
mov rsi, rcx
mov rax, qword [rcx]
movsxd r9, dword [0x1800ee258]
movzx r8d, byte [0x1800ee266]
test r8b, r8b
jne 0x18009e79e
mov rdx, qword [r9 + rax]
test rdx, rdx
je 0x18009e79e
mov rcx, r9
add rcx, rdx
je 0x18009e79e
xor ebx, ebx
test r8b, r8b
mov ecx, ebx
jne 0x18009e795
mov rcx, rdx
movsxd rdx, dword [0x1800ee1a0]
jmp 0x18009e7b5
xor ebx, ebx
test r8b, r8b
je 0x18009e7ab
mov rcx, qword [rax + 8]
jmp 0x18009e7ae
mov rcx, rbx
movsxd rdx, dword [0x1800ec0c0]
mov rdx, qword [rdx + rcx]
movzx ecx, dl
shr cl, 6
test cl, 1
jne 0x18009ebd0
mov rcx, rdx
shr rcx, 0x12
test cl, 1
jne 0x18009ebc9
mov rcx, rdx
shr rcx, 0xb
test cl, 1
jne 0x18009ebc2
mov rcx, rdx
shr rcx, 9
test cl, 1
jne 0x18009ebbb
movzx ecx, dl
shr cl, 1
test cl, 1
jne 0x18009ebd0
mov rcx, rdx
shr rcx, 0x1f
test cl, 1
jne 0x18009ebc9
movzx ecx, dl
shr cl, 7
test cl, 1
jne 0x18009ebc2
mov rcx, rdx
shr rcx, 0x16
test cl, 1
jne 0x18009ebbb
mov rcx, rdx
shr rcx, 8
test cl, 1
jne 0x18009ebc2
mov rcx, rdx
shr rcx, 0x20
test cl, 1
jne 0x18009ebbb
mov rcx, rdx
shr rcx, 0xa
test cl, 1
jne 0x18009ebbb
mov rcx, rdx
shr rcx, 0xd
test cl, 1
jne 0x18009ebc2
mov rcx, rdx
shr rcx, 0xe
test cl, 1
jne 0x18009ebbb
mov rcx, rdx
shr rcx, 0x1e
test cl, 1
jne 0x18009ebbb
mov rcx, rdx
shr rcx, 0x11
test cl, 1
jne 0x18009ebd0
mov rcx, rdx
shr rcx, 0x14
test cl, 1
je 0x18009e8cb
movsxd rcx, dword [0x1800ee194]
movsxd rdx, dword [0x1800ee17c]
mov rax, qword [rcx + rax]
mov eax, dword [rdx + rax]
jmp 0x18009ebd5
mov rcx, rdx
shr rcx, 0x15
test cl, 1
jne 0x18009ebbb
mov rcx, rdx
shr rcx, 0x17
test cl, 1
jne 0x18009ebc2
mov rcx, rdx
shr rcx, 0x1b
test cl, 1
jne 0x18009ebc2
mov rcx, rdx
shr rcx, 0x1c
test cl, 1
jne 0x18009ebc2
mov rcx, rdx
shr rcx, 0x21
test cl, 1
jne 0x18009ebbb
mov rcx, rdx
shr rcx, 0x1d
test cl, 1
jne 0x18009ebbb
mov rcx, rdx
shr rcx, 0x10
test cl, 1
jne 0x18009ebbb
mov rcx, rdx
shr rcx, 0x2e
test cl, 1
jne 0x18009ebbb
mov rcx, rdx
shr rcx, 0x2f
test cl, 1
jne 0x18009ebbb
mov rcx, rdx
shr rcx, 0x30
test cl, 1
je 0x18009e9a4
movsxd rcx, dword [0x1800ee174]
mov rdx, qword [rcx + rax]
mov qword [rsp + 0x20], rdx
test rdx, rdx
je 0x18009ebd0
mov rax, r9
add rax, rdx
jne 0x18009e995
lea rax, [rdx + 8]
test rax, rax
je 0x18009ebd0
lea rcx, [rsp + 0x20]
call fcn.18009e740
jmp 0x18009ebd5
mov rcx, rdx
shr rcx, 0xc
test cl, 1
jne 0x18009ebbb
mov rcx, rdx
shr rcx, 0x34
test cl, 1
jne 0x18009ebbb
shr rdx, 0x38
test dl, 1
je 0x18009e9f8
movsxd rcx, dword [0x1800ee1b8]
mov rdx, qword [rcx + rax]
mov qword [rsp + 0x20], rdx
movsxd rcx, dword [0x1800ee220]
mov r8d, dword [rcx + rdx]
mov eax, dword [rax + rcx]
cmp r8d, eax
je 0x18009e995
sub eax, r8d
jmp 0x18009ebd5
test r8b, r8b
je 0x18009ebab
mov ecx, dword [0x1800ee114]
mov rax, qword gs:[0x58]
mov edx, 0x10
mov rdi, qword [rax + rcx*8]
add rdi, rdx
mov eax, dword [rdi]
cmp dword [0x1800ef570], eax
jle 0x18009ea80
lea rcx, [0x1800ef570]
call fcn.1800a1104
cmp dword [0x1800ef570], 0xffffffff
jne 0x18009ea78
xorps xmm0, xmm0
movups xmmword [0x1800ef520], xmm0
movups xmmword [0x1800ef530], xmm0
movups xmmword [0x1800ef540], xmm0
movups xmmword [0x1800ef550], xmm0
call fcn.18009ef50
lea rcx, [0x1800aa830]
call fcn.1800a178c
nop
lea rcx, [0x1800ef570]
call fcn.1800a1098
movzx r8d, byte [0x1800ee266]
mov eax, dword [rdi]
cmp dword [0x1800ef518], eax
jle 0x18009eab3
lea rcx, [0x1800ef518]
call fcn.1800a1104
cmp dword [0x1800ef518], 0xffffffff
jne 0x18009eaab
lea rcx, [0x1800ef518]
call fcn.1800a1098
movzx r8d, byte [0x1800ee266]
mov rax, qword [rsi]
test r8b, r8b
je 0x18009eac6
mov r9, qword [rax + 8]
mov qword [rsp + 0x28], r9
jmp 0x18009ead0
mov r9, rbx
mov qword [rsp + 0x28], rbx
nop
movzx edx, r9b
movabs rcx, 0xcbf29ce484222325
xor rdx, rcx
movabs r10, 0x100000001b3
imul rdx, r10
movzx ecx, byte [rsp + 0x29]
xor rdx, rcx
imul rdx, r10
movzx ecx, byte [rsp + 0x2a]
xor rdx, rcx
imul rdx, r10
movzx ecx, byte [rsp + 0x2b]
xor rdx, rcx
imul rdx, r10
movzx ecx, byte [rsp + 0x2c]
xor rdx, rcx
imul rdx, r10
movzx ecx, byte [rsp + 0x2d]
xor rdx, rcx
imul rdx, r10
movzx ecx, byte [rsp + 0x2e]
xor rdx, rcx
imul rdx, r10
movzx ecx, byte [rsp + 0x2f]
xor rdx, rcx
imul rdx, r10
and rdx, qword [0x1800ef550]
shl rdx, 4
add rdx, qword [0x1800ef538]
mov rcx, qword [rdx + 8]
mov r10, qword [0x1800ef528]
cmp rcx, r10
je 0x18009eb81
mov rdx, qword [rdx]
cmp r9, qword [rcx + 0x10]
je 0x18009eb84
nop
cmp rcx, rdx
je 0x18009eb81
mov rcx, qword [rcx + 8]
cmp r9, qword [rcx + 0x10]
jne 0x18009eb70
jmp 0x18009eb84
mov rcx, rbx
mov rdx, r10
test rcx, rcx
cmovne rdx, rcx
cmp rdx, r10
jne 0x18009eba6
test r8b, r8b
je 0x18009eb9c
mov rbx, qword [rax + 8]
mov r8, rbx
call fcn.18009ec00
jmp 0x18009ebd5
mov eax, dword [rdx + 0x18]
jmp 0x18009ebd5
mov rax, qword [r9 + rax]
movsxd rcx, dword [0x1800ee17c]
mov eax, dword [rcx + rax]
jmp 0x18009ebd5
mov eax, 8
jmp 0x18009ebd5
mov eax, 4
jmp 0x18009ebd5
mov eax, 2
jmp 0x18009ebd5
mov eax, 1
mov rcx, qword [rsp + 0x30]
xor rcx, rsp
call fcn.1800a0da0
mov rbx, qword [rsp + 0x50]
mov rsi, qword [rsp + 0x58]
add rsp, 0x40
pop rdi
ret