Function at 0x140014610
Capabilities:
Hash data using fnv

Disassembly:
mov qword [rsp + 0x20], rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x50
mov rax, qword [rsp + 0xb8]
movzx r12d, r9b
mov rsi, qword [rsp + 0xb0]
mov rbx, r8
mov r13d, edx
mov r15, rcx
mov edx, edx
mov qword [rsp + 0x38], rax
mov qword [rsp + 0x30], rcx
call fcn.14003c2f0
mov r11, qword [rbx]
mov r14, rax
mov r9, qword [rbx + 0x18]
movabs r8, 0x100000001b3
movzx edx, al
xor ebp, ebp
mov qword [rsp + 0x20], rax
mov dil, 1
movabs rax, 0xcbf29ce484222325
xor rdx, rax
mov rax, r14
shr rax, 8
movzx ecx, al
mov rax, r14
imul rdx, r8
shr rax, 0x10
xor rdx, rcx
movzx ecx, al
imul rdx, r8
mov rax, r14
xor rdx, rcx
shr rax, 0x18
movzx ecx, al
mov rax, r14
imul rdx, r8
shr rax, 0x20
xor rdx, rcx
movzx ecx, al
imul rdx, r8
mov rax, r14
shr rax, 0x28
xor rdx, rcx
movzx ecx, al
mov rax, r14
imul rdx, r8
shr rax, 0x30
xor rdx, rcx
movzx ecx, al
imul rdx, r8
mov rax, r14
shr rax, 0x38
xor rdx, rcx
imul rdx, r8
xor rdx, rax
mov rax, r11
imul rdx, r8
shr rax, 5
mov r8, r9
xor rax, rdx
shr rax, 7
and r8, rax
and dl, 0x7f
movsx eax, dl
movd xmm2, eax
punpcklbw xmm2, xmm2
punpcklwd xmm2, xmm2
pshufd xmm2, xmm2, 0
movdqu xmm1, xmmword [r8 + r11]
movdqa xmm0, xmm1
pcmpeqb xmm0, xmm2
pmovmskb eax, xmm0
test eax, eax
jne 0x140014973
pcmpeqb xmm1, xmmword [0x1401b02a0]
pmovmskb eax, xmm1
test eax, eax
je 0x1400149a2
mov rcx, qword [rsp + 0x38]
movzx eax, dil
test al, al
je 0x1400149ef
xor dil, dil
mov eax, dword [rbx + 0x34]
mov edx, eax
and edx, r14d
cmp edx, dword [rbx + 0x30]
jb 0x1400812ee
mov ecx, dword [rbx + 0x4c]
mov eax, edx
shr eax, cl
mov ecx, dword [rbx + 0x48]
and ecx, edx
mov edx, eax
mov rax, qword [rbx + 0x60]
mov rax, qword [rax + rdx*8]
mov rbp, qword [rax + rcx*8]
lea r15, [rax + rcx*8]
test dil, dil
jne 0x1400812fd
test r12b, r12b
je 0x14001496f
mov rax, qword [rsp + 0x38]
mov rbp, qword [0x1401f7128]
add rbp, 0x10
mov byte [rax], 1
cmp byte [rbx + 0x52], 0
jne 0x140014ac0
mov rdi, qword [rbx + 0x68]
test rdi, rdi
je 0x14008134b
mov rcx, qword [rdi + 8]
mov rax, qword [rdi + 0x18]
sub rax, rcx
cmp rbp, rax
ja 0x14008134b
mov rax, qword [rdi + 0x10]
sub rax, rcx
cmp rbp, rax
ja 0x140014a43
mov rcx, qword [rdi + 8]
lea rax, [rcx + rbp]
mov qword [rdi + 8], rax
add rdi, rcx
mov rcx, qword [rsi + 8]
mov rax, qword [rsi + 0x10]
sub rax, rcx
cmp rax, 4
jb 0x140014aab
mov rax, qword [rsi]
lea rbp, [r13 + 1]
mov dword [rcx + rax], r13d
add qword [rsi + 8], 4
mov qword [rdi + 8], r14
mov rcx, qword [rsi + 8]
mov rax, qword [rsi + 0x10]
sub rax, rcx
cmp rbp, rax
ja 0x140014a96
add rcx, qword [rsi]
mov r8, rbp
mov rdx, qword [rsp + 0x30]
call sub.VCRUNTIME140.dll_memcpy
add qword [rsi + 8], rbp
movabs rcx, 0x100000001b3
mov rax, qword [rsi + 8]
xor esi, esi
sub eax, ebp
movzx edx, r14b
mov dword [rdi + 0x14], eax
mov rax, qword [r15]
mov qword [rdi], rax
movabs rax, 0xcbf29ce484222325
xor rdx, rax
mov qword [r15], rdi
movzx eax, byte [rsp + 0x21]
inc dword [rbx + 0x3c]
mov r10, qword [rbx]
mov r11, qword [rbx + 0x18]
mov r9, r10
imul rdx, rcx
shr r9, 5
xor rdx, rax
movzx eax, byte [rsp + 0x22]
imul rdx, rcx
xor rdx, rax
movzx eax, byte [rsp + 0x23]
imul rdx, rcx
xor rdx, rax
movzx eax, byte [rsp + 0x24]
imul rdx, rcx
xor rdx, rax
movzx eax, byte [rsp + 0x25]
imul rdx, rcx
xor rdx, rax
movzx eax, byte [rsp + 0x26]
imul rdx, rcx
xor rdx, rax
movzx eax, byte [rsp + 0x27]
imul rdx, rcx
xor rdx, rax
imul rdx, rcx
xor r9, rdx
movzx eax, dl
shr r9, 7
and r9, r11
and al, 0x7f
movsx eax, al
movd xmm1, eax
punpcklbw xmm1, xmm1
punpcklwd xmm1, xmm1
pshufd xmm1, xmm1, 0
movdqu xmm2, xmmword [r10 + r9]
movdqa xmm0, xmm1
pcmpeqb xmm0, xmm2
pmovmskb eax, xmm0
test eax, eax
jne 0x1400149c0
movdqa xmm0, xmmword [0x1401b02a0]
pcmpeqb xmm0, xmm2
pmovmskb eax, xmm0
test eax, eax
je 0x1400149b1
mov rcx, rbx
call fcn.140014ae0
shl rax, 4
add rax, qword [rbx + 8]
mov qword [rax], r14
mov qword [rax + 8], rdi
mov rax, rdi
mov rbx, qword [rsp + 0xa8]
add rsp, 0x50
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret
xor eax, eax
jmp 0x140014957
mov r10, qword [rbx + 8]
bsf edx, eax
mov dword [rsp + 0x28], 0
movsxd rcx, edx
add rcx, r8
and rcx, r9
add rcx, rcx
cmp qword [r10 + rcx*8], r14
je 0x140014a20
lea ecx, [rax - 1]
and eax, ecx
jmp 0x140014735
add rbp, 0x10
add r8, rbp
and r8, r9
jmp 0x140014723
add rsi, 0x10
add r9, rsi
and r9, r11
jmp 0x14001490f
bsf ecx, eax
mov dword [rsp + 0x28], 0
movsxd r8, ecx
add r8, r9
and r8, r11
shl r8, 4
add r8, qword [rbx + 8]
cmp qword [r8], r14
je 0x140014954
lea ecx, [rax - 1]
and eax, ecx
jmp 0x140014921
mov rbp, qword [rcx + 8]
mov ecx, dword [rbp + 0x14]
add rcx, qword [rsi]
mov eax, dword [rcx - 4]
cmp eax, r13d
jne 0x140014765
mov r8d, eax
mov rdx, r15
call fcn.14004e884
test eax, eax
jne 0x140014765
mov rax, rbp
jmp 0x140014957
movsxd rax, edx
add rax, r8
and rax, r9
mov rcx, rax
shl rcx, 4
add rcx, r10
cmp rax, r9
je 0x140014756
xor al, al
jmp 0x14001475a
lea r12, [rcx + rbp]
mov r9d, 4
add rcx, rdi
mov r8d, 0x1000
mov rdx, rbp
call qword [sym.imp.KERNEL32.dll_VirtualAlloc]
test rax, rax
je 0x14008133e
mov r9, qword [rdi + 0x10]
xor edx, edx
mov ecx, dword [0x1401fb6a8]
mov r8d, ecx
sub r8, r9
dec r8
add r8, r12
mov rax, r8
div rcx
sub r8, rdx
lea rax, [r9 + r8]
mov qword [rdi + 0x10], rax
jmp 0x1400147f4
lea rdx, [rcx + rbp]
mov rcx, rsi
call fcn.14000a1cc
mov rcx, qword [rsi + 8]
jmp 0x140014840
lea rdx, [rcx + 4]
mov rcx, rsi
call fcn.14000a1cc
mov rcx, qword [rsi + 8]
jmp 0x140014818
mov rcx, rbp
call fcn.1400114a4
mov r8, rbp
xor edx, edx
mov rcx, rax
mov rdi, rax
call sub.VCRUNTIME140.dll_memset
jmp 0x140014803
lea edx, [rax*2 + 1]
and edx, r14d
jmp 0x140014776
test rbp, rbp
je 0x14001479d
mov rdi, qword [rsp + 0x30]
cmp qword [rbp + 8], r14
jne 0x140081330
mov edx, dword [rbp + 0x14]
add rdx, qword [rsi]
cmp dword [rdx - 4], r13d
jne 0x140081330
mov r8, r13
mov rcx, rdi
call fcn.14004e884
test eax, eax
je 0x140014a18
mov rbp, qword [rbp]
test rbp, rbp
jne 0x14008130b
jmp 0x14001479d
mov edx, 0x44e
xor ecx, ecx
call fcn.14005e3e8
int3
lea rcx, [rbp + 0x40001f]
mov rdx, rbp
and rcx, 0xffffffffffc00000
call fcn.14004fd54
test rdi, rdi
je 0x140081369
mov qword [rax], rdi
mov qword [rbx + 0x68], rax
mov rdi, rax
jmp 0x1400147f4