Function at 0x180150bb0
Capabilities:
Hash data using fnv

Disassembly:
mov qword [rsp + 0x20], r9
push rbp
push rbx
push rsi
push rdi
push r12
push r14
push r15
lea rbp, [rsp - 0x1120]
mov eax, 0x1220
call fcn.18019d910
sub rsp, rax
mov rax, qword [0x180222270]
xor rax, rsp
mov qword [rbp + 0x1110], rax
mov r14, r8
mov r15d, edx
mov rsi, rcx
xor r12d, r12d
call qword [fcn.1801ae0d8]
mov r8d, eax
shr eax, 8
movzx edx, al
movzx eax, r8b
movabs rcx, 0xcbf29ce484222325
xor rax, rcx
movabs r9, 0x100000001b3
imul rax, r9
xor rdx, rax
imul rdx, r9
mov eax, r8d
shr eax, 0x10
movzx ecx, al
xor rdx, rcx
imul rdx, r9
mov eax, r8d
shr rax, 0x18
xor rdx, rax
imul rdx, r9
and rdx, qword [0x18031c860]
mov rax, rdx
add rax, rax
mov rcx, qword [0x18031c848]
mov rax, qword [rcx + rax*8 + 8]
mov r9, qword [0x18031c838]
cmp rax, r9
je 0x180150c87
add rdx, rdx
mov rcx, qword [rcx + rdx*8]
cmp r8d, dword [rax + 0x10]
je 0x180150c8a
cmp rax, rcx
je 0x180150c87
mov rax, qword [rax + 8]
cmp r8d, dword [rax + 0x10]
jne 0x180150c76
jmp 0x180150c8a
mov rax, r12
mov rcx, r9
test rax, rax
cmovne rcx, rax
cmp rcx, r9
jne 0x180150ce1
mov ecx, 0x1000
call fcn.18019d364
mov rbx, rax
call qword [fcn.1801ae0d8]
mov dword [rsp + 0x30], eax
lea r8, [rsp + 0x30]
lea rdx, [rsp + 0x38]
lea rcx, [0x18031c830]
call fcn.180150fc0
mov rdx, qword [rax]
mov qword [rdx + 0x18], rbx
call qword [fcn.1801ae0d8]
mov edx, eax
lea rcx, [0x1801ebf90]
call fcn.1800fcdf0
call qword [fcn.1801ae0d8]
mov dword [rsp + 0x30], eax
lea r8, [rsp + 0x30]
lea rdx, [rsp + 0x38]
lea rcx, [0x18031c830]
call fcn.180150fc0
mov rcx, qword [rax]
mov rbx, qword [rcx + 0x18]
xor edx, edx
mov r8d, 0x1000
mov rcx, rbx
call fcn.18019ddfc
lea rdi, [rbp + 0x1180]
call fcn.1800351a0
mov rcx, qword [rax]
or rcx, 1
mov qword [rsp + 0x28], rdi
mov qword [rsp + 0x20], r12
mov r9, qword [rbp + 0x1178]
mov rdi, 0xffffffffffffffff
mov r8, rdi
mov rdx, rbx
call qword [fcn.1801aea30]
lea rdx, [rbp + 0x70]
mov rcx, qword [rsi + 8]
call qword [0x1801ae0b0]
movzx edx, word [rbp + 0x78]
mov eax, 0xfff0
and dx, ax
or dx, r15w
mov rcx, qword [rsi + 8]
call qword [0x1801ae0b8]
mov r8, rbx
mov rdx, r14
lea rcx, [0x1801ebf80]
call fcn.1800fcdf0
lea rdx, [rbp + 0x70]
mov rcx, qword [rsi + 8]
call qword [0x1801ae0b0]
movzx edx, word [rbp + 0x78]
or dx, 0xf
mov rcx, qword [rsi + 8]
call qword [0x1801ae0b8]
lea rcx, [rbp + 0x90]
call qword [0x1801aeb10]
lea rcx, [rbp + 0x90]
call qword [0x1801aeb18]
mov r9, rax
lea r8, [0x1801ebfc8]
lea edx, [rdi + 0x65]
lea rcx, [rbp + 0xa0]
call qword [0x1801aeb08]
mov qword [rsp + 0x28], rbx
mov qword [rsp + 0x20], r14
lea r9, [rbp + 0xa0]
lea r8, [0x1801ebfb8]
mov edx, 0x1000
lea rcx, [rbp + 0x110]
call fcn.1800539f0
xorps xmm0, xmm0
movups xmmword [rbp + 0x70], xmm0
mov qword [rbp + 0x80], r12
mov qword [rbp + 0x88], r12
lea rax, [rbp + 0x110]
mov r8, rdi
inc r8
cmp byte [rax + r8], r12b
jne 0x180150e25
lea rdx, [rbp + 0x110]
lea rcx, [rbp + 0x70]
call fcn.1800333c0
lea rax, [rbp + 0x70]
mov qword [rsp + 0x30], rax
xor edx, edx
mov r8d, 0x108
lea rcx, [rsp + 0x60]
call fcn.18019ddfc
xorps xmm0, xmm0
movups xmmword [rsp + 0x38], xmm0
mov qword [rsp + 0x48], r12
mov qword [rsp + 0x50], r12
lea rdx, [0x180328ef0]
inc rdi
cmp byte [rdx + rdi], 0
jne 0x180150e72
mov r8, rdi
lea rcx, [rsp + 0x38]
call fcn.1800333c0
nop
lea rdx, [rsp + 0x38]
cmp qword [rsp + 0x50], 0x10
cmovae rdx, qword [rsp + 0x38]
mov r8d, 8
lea rcx, [rsp + 0x60]
call fcn.180058210
mov rax, qword [rsp + 0x60]
movsxd rcx, dword [rax + 4]
lea rbx, [0x1801d91f0]
mov qword [rsp + rcx + 0x60], rbx
mov rax, qword [rsp + 0x60]
movsxd rcx, dword [rax + 4]
lea edx, [rcx - 0xa8]
mov dword [rsp + rcx + 0x5c], edx
lea rcx, [rsp + 0x38]
call fcn.1800339d0
mov rax, qword [rsp + 0x60]
movsxd rcx, dword [rax + 4]
lea rax, [rsp + 0x60]
add rcx, rax
call qword [fcn.1801ae4c8]
test al, al
je 0x180150f47
lea rdx, [rbp + 0x70]
cmp qword [rbp + 0x88], 0x10
cmovae rdx, qword [rbp + 0x70]
mov r8, qword [rbp + 0x80]
lea rcx, [rsp + 0x60]
call fcn.180035f20
lea rcx, [rsp + 0x68]
call fcn.180058930
test rax, rax
jne 0x180150f47
mov rax, qword [rsp + 0x60]
movsxd rcx, dword [rax + 4]
lea rax, [rsp + 0x60]
add rcx, rax
xor r8d, r8d
lea edx, [r8 + 2]
call qword [fcn.1801ae4b0]
nop
mov rax, qword [rsp + 0x60]
movsxd rcx, dword [rax + 4]
mov qword [rsp + rcx + 0x60], rbx
mov rax, qword [rsp + 0x60]
movsxd rcx, dword [rax + 4]
lea edx, [rcx - 0xa8]
mov dword [rsp + rcx + 0x5c], edx
lea rcx, [rsp + 0x68]
call fcn.180057160
lea rcx, [rsp + 0x70]
call qword [fcn.1801ae3d0]
lea rcx, [rbp + 8]
call qword [fcn.1801ae548]
nop
lea rcx, [rbp + 0x70]
call fcn.1800339d0
mov rcx, qword [rbp + 0x1110]
xor rcx, rsp
call fcn.18019ca50
add rsp, 0x1220
pop r15
pop r14
pop r12
pop rdi
pop rsi
pop rbx
pop rbp
ret