Function at 0x1801e3b40
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 0x1801e3eb3
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 0x1801e3e9f
mov rax, qword [rax + rdx*8]
cmp r8d, dword [r9 + 0x10]
je 0x1801e3c33
nop word [rax + rax]
cmp r9, rax
je 0x1801e3e9f
mov r9, qword [r9 + 8]
cmp r8d, dword [r9 + 0x10]
jne 0x1801e3c20
test r9, r9
cmove r9, rcx
mov qword [rsp + 0x38], r9
cmp r9, rcx
je 0x1801e3e9f
mov r13, qword [r10 + 8]
mov qword [rsp + 0x20], r13
mov rax, qword [r10 + 0x10]
mov qword [rsp + 0x40], rax
cmp r13, rax
je 0x1801e3e9f
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 0x1801e3e81
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 0x1801e3cab
mov rbp, qword [rsi]
cmp rbx, 0x10
jae 0x1801e3cc1
movups xmm0, xmmword [rbp]
movups xmmword [rsp + 0x58], xmm0
mov edi, select
jmp 0x1801e3d2e
mov rdi, rbx
or rdi, 0xf
cmp rdi, r15
cmova rdi, r15
lea rcx, [rdi + 1]
cmp rcx, 0x1000
jb 0x1801e3d0b
lea rax, [rcx + 0x27]
cmp rax, rcx
jbe 0x1801e3f35
mov rcx, rax
call fcn.1801e6190
mov rcx, rax
test rax, rax
je 0x1801e3f2f
add rax, 0x27
and rax, 0xffffffffffffffe0
mov qword [rax - 8], rcx
jmp 0x1801e3d1a
test rcx, rcx
je 0x1801e3d17
call fcn.1801e6190
jmp 0x1801e3d1a
mov rax, r14
mov qword [rsp + 0x58], rax
lea r8, [rbx + 1]
mov rdx, rbp
mov rcx, rax
call fcn.18020b840
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 0x1801e3d8e
sub r14, rbx
nop dword [rax + rax]
movsx ecx, byte [rbx]
call fcn.1801150a0
mov byte [r14 + rbx], al
inc rbx
cmp rbx, rbp
jne 0x1801e3d70
mov rdi, qword [rsp + 0x70]
mov r15, qword [rsp + 0x58]
mov r14, r13
cmp qword [r13 + 0x18], 0x10
jb 0x1801e3d9c
mov r14, qword [r13]
mov r12, rsi
cmp qword [rsi + 0x18], 0x10
jb 0x1801e3da9
mov r12, qword [rsi]
mov rbp, qword [r13 + 0x10]
mov rax, qword [rsi + 0x10]
cmp rbp, rax
ja 0x1801e3e25
test rbp, rbp
je 0x1801e3ee3
sub rax, rbp
lea r13, [rax + r12]
movsx edx, byte [r14]
lea r8, [r13 + 1]
sub r8, r12
mov rcx, r12
call fcn.18020c170
mov rbx, rax
test rax, rax
je 0x1801e3e20
mov r8, rbp
mov rdx, r14
mov rcx, rbx
call fcn.18020c090
test eax, eax
je 0x1801e3e13
inc rbx
lea r8, [r13 + 1]
sub r8, rbx
movsx edx, byte [r14]
mov rcx, rbx
call fcn.18020c170
mov rbx, rax
test rax, rax
jne 0x1801e3de1
jmp 0x1801e3e20
sub rbx, r12
cmp rbx, 0xffffffffffffffff
jne 0x1801e3ee3
mov r13, qword [rsp + 0x20]
cmp rdi, 0x10
jb 0x1801e3e5d
lea rdx, [rdi + 1]
mov rax, r15
cmp rdx, 0x1000
jb 0x1801e3e54
add rdx, 0x27
mov r15, qword [r15 - 8]
sub rax, r15
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1801e3f29
mov rcx, r15
call fcn.1801e61d0
nop
add rsi, 0x20
cmp rsi, qword [rsp + 0x30]
mov r14d, 0
movabs r15, 0x7fffffffffffffff
jne 0x1801e3c90
mov r9, qword [rsp + 0x38]
add r13, 0x20
mov qword [rsp + 0x20], r13
cmp r13, qword [rsp + 0x40]
jne 0x1801e3c70
mov r10, qword [rsp + 0x28]
mov r11, qword [rsp + 0x48]
add r10, 0x28
mov qword [rsp + 0x28], r10
cmp r10, qword [rsp + 0x50]
jne 0x1801e3b9d
xor eax, eax
mov rcx, qword [rsp + 0x78]
xor rcx, rsp
call fcn.1801e68c0
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 0x1801e3f1f
lea rdx, [rdi + 1]
mov rax, r15
cmp rdx, 0x1000
jb 0x1801e3f16
add rdx, 0x27
mov r15, qword [r15 - 8]
sub rax, r15
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1801e3f23
mov rcx, r15
call fcn.1801e61d0
nop
mov eax, ebx
jmp 0x1801e3eb5
call fcn.18010fa40
nop
call fcn.18010fa40
nop
call fcn.18010fa40
int3
call fcn.180099270
int3