Function at 0x140020c40
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, 0x70
mov rdi, r9
mov r14, r8
mov r15, rdx
mov r13, rcx
mov r12d, dword [rsp + 0xc8]
cmp r12d, 6
jne 0x140020c7d
mov eax, 0x188
jmp 0x140020c99
cmp r12d, 7
jne 0x140020c8a
mov eax, 0x148
jmp 0x140020c99
cmp r12d, 9
jne 0x140020e1f
mov eax, 0x1c8
lea rbx, [rax + rcx]
mov qword [rsp + 0x38], rbx
mov esi, 0x1000
movabs rax, 0xffffffffffff
test word [r9 + 0xe], si
je 0x140020cbd
mov rcx, rdi
jmp 0x140020cc4
mov rcx, qword [r9 + 8]
and rcx, rax
xor edx, edx
lea r8d, [rdx + 0x10]
call fcn.140121044
mov rbp, rax
mov qword [rsp + 0x30], rax
test rax, rax
je 0x1400210aa
cmp byte [r13 + 0x208], 0
je 0x1400210aa
mov rdx, qword [r15]
mov rcx, r15
call qword [rdx + 0x68]
movzx edx, bpl
movabs rax, 0xcbf29ce484222325
xor rdx, rax
movabs rcx, 0x100000001b3
imul rdx, rcx
movzx eax, byte [rsp + 0x31]
xor rdx, rax
imul rdx, rcx
movzx eax, byte [rsp + 0x32]
xor rdx, rax
imul rdx, rcx
movzx eax, byte [rsp + 0x33]
xor rdx, rax
imul rdx, rcx
movzx eax, byte [rsp + 0x34]
xor rdx, rax
imul rdx, rcx
movzx eax, byte [rsp + 0x35]
xor rdx, rax
imul rdx, rcx
movzx eax, byte [rsp + 0x36]
xor rdx, rax
imul rdx, rcx
movzx eax, byte [rsp + 0x37]
xor rdx, rax
imul rdx, rcx
mov rcx, qword [rbx + 0x30]
and rcx, rdx
shl rcx, 4
mov rdx, qword [rbx + 0x18]
add rdx, rcx
mov rbx, qword [rdx + 8]
mov rax, qword [rsp + 0x38]
mov rcx, qword [rax + 8]
cmp rbx, rcx
jne 0x140020d93
mov rbx, rcx
jmp 0x140020dbf
mov rax, qword [rdx]
cmp rbp, qword [rbx + 0x10]
je 0x140020daf
nop dword [rax]
cmp rbx, rax
je 0x140020d8e
mov rbx, qword [rbx + 8]
cmp rbp, qword [rbx + 0x10]
jne 0x140020da0
test rbx, rbx
cmove rbx, rcx
cmp rbx, rcx
jne 0x140020e91
test word [rdi + 0xe], si
je 0x140020dca
mov rdx, rdi
jmp 0x140020ddb
mov rdx, qword [rdi + 8]
movabs rax, 0xffffffffffff
and rdx, rax
mov rsi, qword [rsp + 0xc0]
mov rcx, rsi
call fcn.14001a300
test al, al
je 0x140020e91
mov ecx, r12d
sub ecx, 6
je 0x140020e57
sub ecx, 1
je 0x140020e3f
cmp ecx, 2
jne 0x140020e1f
mov qword [rsp + 0x20], rdi
mov r9, rsi
mov r8, r14
mov rdx, r15
mov rcx, r13
call fcn.140028d80
test al, al
jne 0x140020e71
xor al, al
lea r11, [rsp + 0x70]
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 qword [rsp + 0x20], rdi
mov r9, rsi
mov r8, r14
mov rdx, r15
mov rcx, r13
call fcn.14001f0a0
jmp 0x140020e1b
mov qword [rsp + 0x20], rdi
mov r9, rsi
mov r8, r14
mov rdx, r15
mov rcx, r13
call fcn.140022be0
test al, al
je 0x140020e1f
mov rax, qword [r15]
mov rcx, r15
call qword [rax + 0x68]
lea r8, [rsp + 0x30]
lea rdx, [rsp + 0x48]
mov rcx, qword [rsp + 0x38]
call fcn.140018090
mov rbx, qword [rax]
mov rax, qword [rsp + 0x38]
cmp rbx, qword [rax + 8]
jne 0x140021033
xor edi, edi
mov qword [rsp + 0x40], rdi
test r14, r14
je 0x140021096
mov rax, qword [r14]
mov dword [rsp + 0x28], edi
mov qword [rsp + 0x20], rdi
lea r9, [rsp + 0x40]
mov r8, rbp
mov edx, r12d
mov rcx, r14
call qword [rax + 0x10]
test al, al
je 0x140021096
mov rbx, qword [rsp + 0x40]
xorps xmm0, xmm0
movdqu xmmword [rsp + 0x58], xmm0
mov esi, edi
mov qword [rsp + 0x68], rdi
test rbx, rbx
je 0x140020f64
movabs rax, 0x7fffffffffffffff
cmp rbx, rax
ja 0x1400210c2
cmp rbx, 0x1000
jb 0x140020f34
lea rcx, [rbx + 0x27]
cmp rcx, rbx
jbe 0x1400210c8
call fcn.140116b34
test rax, rax
je 0x1400210bc
lea rdi, [rax + 0x27]
and rdi, 0xffffffffffffffe0
mov qword [rdi - 8], rax
jmp 0x140020f3f
mov rcx, rbx
call fcn.140116b34
mov rdi, rax
mov qword [rsp + 0x58], rdi
lea rsi, [rdi + rbx]
mov qword [rsp + 0x68], rsi
mov r8, rbx
xor edx, edx
mov rcx, rdi
call fcn.140119350
mov rbx, rsi
mov qword [rsp + 0x60], rbx
jmp 0x140020f69
mov rbx, qword [rsp + 0x60]
mov rax, qword [r14]
mov dword [rsp + 0x28], 0
mov rcx, qword [rsp + 0x58]
mov qword [rsp + 0x20], rcx
lea r9, [rsp + 0x40]
mov r8, rbp
mov edx, r12d
mov rcx, r14
call qword [rax + 0x10]
test al, al
je 0x140021049
sub rbx, rdi
mov qword [rsp + 0x20], rbx
mov r9, qword [rsp + 0x58]
mov r8, r14
mov rdx, r15
mov rcx, r13
call fcn.14001c2d0
test al, al
je 0x140021059
mov rax, qword [r15]
mov rcx, r15
call qword [rax + 0x68]
lea r8, [rsp + 0x30]
lea rdx, [rsp + 0x50]
mov r14, qword [rsp + 0x38]
mov rcx, r14
call fcn.140018090
mov rbx, qword [rax]
cmp rbx, qword [r14 + 8]
je 0x140021049
cmp qword [rbx + 0x18], 0
jne 0x140020ffb
mov rdx, rbp
lea rcx, str.Base_pipeline
call fcn.14001c100
jmp 0x140021059
test rdi, rdi
je 0x140021033
sub rsi, rdi
cmp rsi, 0x1000
jb 0x140021028
add rsi, 0x27
mov rax, qword [rdi - 8]
sub rdi, rax
add rdi, 0xfffffffffffffff8
cmp rdi, 0x1f
ja 0x1400210bc
mov rdi, rax
mov rdx, rsi
mov rcx, rdi
call fcn.140116b70
mov rcx, qword [rbx + 0x18]
mov rax, qword [rsp + 0xd0]
mov qword [rax], rcx
mov al, 1
jmp 0x140020e21
mov rdx, rbp
lea rcx, str.Base_pipeline
call fcn.14001c180
nop
test rdi, rdi
je 0x140020e1f
sub rsi, rdi
cmp rsi, 0x1000
jb 0x140021086
add rsi, 0x27
mov rax, qword [rdi - 8]
sub rdi, rax
add rdi, 0xfffffffffffffff8
cmp rdi, 0x1f
ja 0x1400210bc
mov rdi, rax
mov rdx, rsi
mov rcx, rdi
call fcn.140116b70
jmp 0x140020e1f
mov rdx, rbp
lea rcx, str.Base_pipeline
call fcn.14001c180
jmp 0x140020e1f
mov rax, qword [rsp + 0xd0]
mov qword [rax], rbp
mov al, 1
jmp 0x140020e21
call fcn.14011d1bc
int3
call fcn.140002a20
int3
call fcn.140001a90
int3