Function at 0x1801e3a60
Capabilities:
Hash data using fnv

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rbp
mov qword [rsp + 0x18], rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x80
mov rax, qword [0x18029e198]
xor rax, rsp
mov qword [rsp + 0x78], rax
mov r11, rcx
mov qword [rsp + 0x48], rcx
mov r10, qword [rdx]
mov qword [rsp + 0x28], r10
mov rax, qword [rdx + 8]
mov qword [rsp + 0x50], rax
cmp r10, rax
je 0x1801e3dd3
xor r14d, r14d
movabs r15, 0x7fffffffffffffff
movabs r9, 0x100000001b3
movabs rcx, 0xcbf29ce484222325
mov r8d, dword [r10]
mov eax, r8d
shr eax, 8
movzx edx, al
movzx eax, r8b
xor rax, rcx
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 [r11 + 0xa0]
add rdx, rdx
mov rax, qword [r11 + 0x88]
mov r9, qword [rax + rdx*8 + 8]
mov rcx, qword [r11 + 0x78]
cmp r9, rcx
je 0x1801e3dbf
mov rax, qword [rax + rdx*8]
cmp r8d, dword [r9 + 0x10]
je 0x1801e3b53
nop word [rax + rax]
cmp r9, rax
je 0x1801e3dbf
mov r9, qword [r9 + 8]
cmp r8d, dword [r9 + 0x10]
jne 0x1801e3b40
test r9, r9
cmove r9, rcx
mov qword [rsp + 0x38], r9
cmp r9, rcx
je 0x1801e3dbf
mov r13, qword [r10 + 8]
mov qword [rsp + 0x20], r13
mov rax, qword [r10 + 0x10]
mov qword [rsp + 0x40], rax
cmp r13, rax
je 0x1801e3dbf
nop dword [rax]
nop word [rax + rax]
mov rsi, qword [r9 + 0x18]
mov rax, qword [r9 + 0x20]
mov qword [rsp + 0x30], rax
cmp rsi, rax
je 0x1801e3da1
nop word [rax + rax]
mov qword [rsp + 0x68], r14
mov qword [rsp + 0x70], r14
mov rbx, qword [rsi + 0x10]
mov rbp, rsi
cmp qword [rsi + 0x18], 0x10
jb 0x1801e3bcb
mov rbp, qword [rsi]
cmp rbx, 0x10
jae 0x1801e3be1
movups xmm0, xmmword [rbp]
movups xmmword [rsp + 0x58], xmm0
mov edi, select
jmp 0x1801e3c4e
mov rdi, rbx
or rdi, 0xf
cmp rdi, r15
cmova rdi, r15
lea rcx, [rdi + 1]
cmp rcx, 0x1000
jb 0x1801e3c2b
lea rax, [rcx + 0x27]
cmp rax, rcx
jbe 0x1801e3e55
mov rcx, rax
call fcn.1801e60b0
mov rcx, rax
test rax, rax
je 0x1801e3e4f
add rax, 0x27
and rax, 0xffffffffffffffe0
mov qword [rax - 8], rcx
jmp 0x1801e3c3a
test rcx, rcx
je 0x1801e3c37
call fcn.1801e60b0
jmp 0x1801e3c3a
mov rax, r14
mov qword [rsp + 0x58], rax
lea r8, [rbx + 1]
mov rdx, rbp
mov rcx, rax
call fcn.18020b760
mov qword [rsp + 0x70], rdi
mov qword [rsp + 0x68], rbx
lea r14, [rsp + 0x58]
mov r15, qword [rsp + 0x58]
cmp rdi, 0x10
cmovae r14, r15
lea rbp, [rsp + 0x58]
cmovae rbp, r15
add rbp, rbx
lea rbx, [rsp + 0x58]
cmp rdi, 0x10
cmovae rbx, r15
cmp rbx, rbp
je 0x1801e3cae
sub r14, rbx
nop dword [rax + rax]
movsx ecx, byte [rbx]
call fcn.180114fc0
mov byte [r14 + rbx], al
inc rbx
cmp rbx, rbp
jne 0x1801e3c90
mov rdi, qword [rsp + 0x70]
mov r15, qword [rsp + 0x58]
mov r14, r13
cmp qword [r13 + 0x18], 0x10
jb 0x1801e3cbc
mov r14, qword [r13]
mov r12, rsi
cmp qword [rsi + 0x18], 0x10
jb 0x1801e3cc9
mov r12, qword [rsi]
mov rbp, qword [r13 + 0x10]
mov rax, qword [rsi + 0x10]
cmp rbp, rax
ja 0x1801e3d45
test rbp, rbp
je 0x1801e3e03
sub rax, rbp
lea r13, [rax + r12]
movsx edx, byte [r14]
lea r8, [r13 + 1]
sub r8, r12
mov rcx, r12
call fcn.18020c090
mov rbx, rax
test rax, rax
je 0x1801e3d40
mov r8, rbp
mov rdx, r14
mov rcx, rbx
call fcn.18020bfb0
test eax, eax
je 0x1801e3d33
inc rbx
lea r8, [r13 + 1]
sub r8, rbx
movsx edx, byte [r14]
mov rcx, rbx
call fcn.18020c090
mov rbx, rax
test rax, rax
jne 0x1801e3d01
jmp 0x1801e3d40
sub rbx, r12
cmp rbx, 0xffffffffffffffff
jne 0x1801e3e03
mov r13, qword [rsp + 0x20]
cmp rdi, 0x10
jb 0x1801e3d7d
lea rdx, [rdi + 1]
mov rax, r15
cmp rdx, 0x1000
jb 0x1801e3d74
add rdx, 0x27
mov r15, qword [r15 - 8]
sub rax, r15
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1801e3e49
mov rcx, r15
call fcn.1801e60f0
nop
add rsi, 0x20
cmp rsi, qword [rsp + 0x30]
mov r14d, 0
movabs r15, 0x7fffffffffffffff
jne 0x1801e3bb0
mov r9, qword [rsp + 0x38]
add r13, 0x20
mov qword [rsp + 0x20], r13
cmp r13, qword [rsp + 0x40]
jne 0x1801e3b90
mov r10, qword [rsp + 0x28]
mov r11, qword [rsp + 0x48]
add r10, 0x28
mov qword [rsp + 0x28], r10
cmp r10, qword [rsp + 0x50]
jne 0x1801e3abd
xor eax, eax
mov rcx, qword [rsp + 0x78]
xor rcx, rsp
call fcn.1801e67e0
lea r11, [rsp + 0x80]
mov rbx, qword [r11 + 0x30]
mov rbp, qword [r11 + 0x38]
mov rsi, qword [r11 + 0x40]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rdi
ret
mov rax, qword [rsp + 0x28]
mov ebx, dword [rax + 0x20]
cmp rdi, 0x10
jb 0x1801e3e3f
lea rdx, [rdi + 1]
mov rax, r15
cmp rdx, 0x1000
jb 0x1801e3e36
add rdx, 0x27
mov r15, qword [r15 - 8]
sub rax, r15
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1801e3e43
mov rcx, r15
call fcn.1801e60f0
nop
mov eax, ebx
jmp 0x1801e3dd5
call fcn.18010f960
nop
call fcn.18010f960
nop
call fcn.18010f960
int3
call fcn.180099270
int3