Function at 0x1400798a0
Capabilities:
Hash data using fnv

Disassembly:
push r14
push r13
push r12
push rbp
push rdi
push rsi
push rbx
sub rsp, 0x20
mov rbx, r9
mov r9, qword [rcx + 0x10]
mov rsi, rcx
mov rdi, r8
lea rax, [r9 + 0x10]
mov ebp, dword [r9 + 4]
sub rdx, rax
mov r11, rdx
lea r12, [r9 + rdx + 0x10]
cmp ebp, 0x12
jbe 0x140079b58
mov r10, qword [r12 + 0x18]
mov r8d, dword [r12 + 0x20]
movabs rax, 0xcbf29ce484222325
add rax, qword [r9 + 8]
add r8, r10
cmp r10, r8
je 0x14007991c
movabs rdi, 0x100000001b3
mov rcx, r10
nop dword [rax]
movsx rdx, byte [rcx]
add rcx, 1
xor rax, rdx
imul rax, rdi
cmp r8, rcx
jne 0x140079908
mov ecx, ebp
xor edx, edx
sar r11, 3
div rcx
lea r8, [rcx + rcx*4]
lea rax, [rdx*4]
lea rdx, [rax + r8*8 + 0x10]
mov r8d, dword [r12 + 0x24]
movabs rax, 0xcccccccccccccccd
imul r11, rax
add rdx, r9
mov eax, dword [rdx]
mov ecx, r11d
cmp r11d, eax
je 0x140079984
lea rax, [rax + rax*4]
lea rdx, [r9 + rax*8 + 0x10]
mov eax, dword [rdx + 0x24]
cmp r11d, eax
je 0x140079980
nop dword [rax]
lea rax, [rax + rax*4]
lea rdx, [r9 + rax*8 + 0x10]
mov eax, dword [rdx + 0x24]
cmp eax, ecx
jne 0x140079970
add rdx, 0x24
mov rax, qword [r12]
mov dword [rdx], r8d
mov rdx, rax
and edx, 3
cmp rdx, 2
je 0x140079b48
lea rdx, [0x140565f68]
cmp r10, rdx
je 0x140079b48
mov rcx, rax
mov edx, dword [r12 + 0x20]
mov r9d, 1
and rcx, 0xfffffffffffffffc
test rax, rax
lea rax, [0x140548480]
cmove rcx, rax
lea r8d, [rdx + 1]
mov rdx, r10
mov rax, qword [rcx]
call qword [rax + 0x18]
mov rcx, r12
call fcn.140078250
mov rdx, qword [rsi + 0x10]
mov eax, dword [rdx]
sub eax, 1
mov dword [rdx], eax
lea rax, [rax + rax*4]
lea rax, [rdx + rax*8 + 0x10]
cmp r12, rax
je 0x140079b2a
mov r10, qword [rbx + 0x10]
mov eax, dword [r10]
lea rax, [rax + rax*4]
lea rax, [r10 + rax*8 + 0x10]
cmp r12, rax
je 0x140079b2a
mov rcx, r12
lea rbp, [r10 + 0x10]
movabs rsi, 0xcbf29ce484222325
movabs r9, 0x100000001b3
movabs r11, 0xcccccccccccccccd
nop dword [rax + rax]
mov r8, rcx
mov rdi, qword [rcx + 0x40]
mov r13d, dword [rcx + 0x48]
add rcx, 0x28
mov rax, qword [r10 + 8]
add r13, rdi
add rax, rsi
cmp rdi, r13
je 0x140079a74
nop
movsx rdx, byte [rdi]
add rdi, 1
xor rax, rdx
imul rax, r9
cmp r13, rdi
jne 0x140079a60
mov edi, dword [r10 + 4]
xor edx, edx
mov r14, rcx
sub r14, rbp
mov ebp, dword [rcx + 0x24]
div rdi
lea r13, [rdi + rdi*4]
sar r14, 3
imul r14, r11
lea rax, [rdx*4]
lea rdx, [rax + r13*8 + 0x10]
mov r13d, r14d
add rdx, r10
mov eax, dword [rdx]
cmp r14d, eax
je 0x140079b40
lea rax, [rax + rax*4]
lea rdi, [r10 + rax*8 + 0x10]
mov eax, dword [rdi + 0x24]
cmp eax, r14d
je 0x140079ad9
nop dword [rax]
lea rax, [rax + rax*4]
lea rdi, [r10 + rax*8 + 0x10]
mov eax, dword [rdi + 0x24]
cmp eax, r13d
jne 0x140079ac8
mov dword [rdi + 0x24], ebp
add rdi, 0x24
movdqu xmm0, xmmword [rcx]
movups xmmword [r8], xmm0
movdqu xmm1, xmmword [rcx + 0x10]
movups xmmword [r8 + 0x10], xmm1
mov rax, qword [rcx + 0x20]
mov qword [r8 + 0x20], rax
mov r10, qword [rbx + 0x10]
mov eax, dword [rdx]
lea rbp, [r10 + 0x10]
sub r8, rbp
mov dword [rcx - 4], eax
sar r8, 3
imul r8, r11
mov dword [rdx], r8d
mov eax, dword [r10]
lea rax, [rax + rax*4]
lea rax, [r10 + rax*8 + 0x10]
cmp rcx, rax
jne 0x140079a40
mov rax, r12
add rsp, 0x20
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
pop r14
ret
mov dword [rdx], ebp
jmp 0x140079ae0
mov rcx, r12
call fcn.140078250
jmp 0x1400799e0
mov rcx, r12
call fcn.14044ed30
mov rdx, qword [rsi + 0x10]
mov eax, dword [rdx]
sub eax, 1
mov dword [rdx], eax
lea rax, [rax + rax*4]
lea rax, [rdx + rax*8 + 0x10]
cmp r12, rax
je 0x140079b2a
mov rax, qword [rdi + 0x10]
mov rcx, r12
mov edx, dword [rax]
lea rdx, [rdx + rdx*4]
lea r8, [rax + rdx*8 + 0x10]
lea rdx, [r12 + 0x28]
sub r8, r12
call sub.msvcrt.dll_memmove
jmp 0x140079b2a