Function at 0x1400046c0
Capabilities:
Hash data using fnv

Disassembly:
push rbp
push rbx
push rsi
mov rbp, rsp
sub rsp, 0x70
mov rax, qword [0x140022008]
xor rax, rsp
mov qword [rbp - 0x10], rax
mov r8, rdx
mov qword [rbp - 0x28], rdx
mov rax, rdx
mov rsi, rcx
shr rax, 8
movabs r9, 0x100000001b3
movzx edx, al
movabs rcx, 0xcbf29ce484222325
movzx eax, r8b
xor ebx, ebx
xor rax, rcx
imul rax, r9
xor rdx, rax
mov rax, r8
imul rdx, r9
shr rax, 0x10
movzx ecx, al
mov rax, r8
xor rdx, rcx
shr rax, 0x18
imul rdx, r9
movzx ecx, al
mov rax, r8
xor rdx, rcx
shr rax, 0x20
imul rdx, r9
movzx ecx, al
mov rax, r8
xor rdx, rcx
shr rax, 0x28
imul rdx, r9
movzx ecx, al
mov rax, r8
xor rdx, rcx
shr rax, 0x30
imul rdx, r9
movzx ecx, al
mov rax, r8
xor rdx, rcx
shr rax, 0x38
mov rcx, qword [rsi + 0x40]
imul rdx, r9
xor rdx, rax
imul rdx, r9
and rcx, rdx
mov rdx, qword [rsi + 0x18]
shl rcx, 4
add rcx, qword [rsi + 0x28]
mov rax, qword [rcx + 8]
cmp rax, rdx
je 0x1400047b1
mov rcx, qword [rcx]
cmp r8, qword [rax + 0x10]
je 0x1400047b4
nop dword [rax]
cmp rax, rcx
je 0x1400047b1
mov rax, qword [rax + 8]
cmp r8, qword [rax + 0x10]
jne 0x1400047a0
jmp 0x1400047b4
mov rax, rbx
test rax, rax
cmove rax, rdx
cmp rax, rdx
je 0x1400047c9
mov rax, qword [rax + 0x18]
jmp 0x140004a6a
xor cl, cl
cmp byte [r8], 0xe9
jne 0x1400047e6
mov rax, qword [r8 + 1]
add r8, 5
add r8, rax
mov qword [rbp - 0x28], r8
cmp byte [r8], 0xe9
je 0x1400047d1
movzx eax, word [r8]
mov edx, 0x25ff
cmp ax, dx
jne 0x140004812
mov cl, 1
nop word [rax + rax]
mov r8, qword [r8 + 6]
mov qword [rbp - 0x28], r8
cmp word [r8], dx
je 0x140004800
movzx eax, word [r8]
mov edx, 0xb848
cmp ax, dx
jne 0x140004836
mov eax, 0xe0ff
cmp word [r8 + 5], ax
je 0x140004836
mov r8, qword [r8 + 2]
mov qword [rbp - 0x28], r8
cmp word [r8], dx
je 0x140004821
test cl, cl
je 0x14000486a
nop word [rax + rax]
cmp byte [r8], 0x48
jne 0x140004854
cmp byte [r8 + 1], 0xff
jne 0x140004854
cmp byte [r8 + 2], 0x25
je 0x14000485d
inc r8
mov qword [rbp - 0x28], r8
jmp 0x140004840
movsxd rax, dword [r8 + 3]
mov r8, qword [rax + r8 + 7]
mov qword [rbp - 0x28], r8
xorps xmm0, xmm0
lea rdx, [rbp - 0x50]
xor eax, eax
mov rcx, r8
movups xmmword [rbp - 0x50], xmm0
mov dword [rbp - 0x30], eax
movups xmmword [rbp - 0x40], xmm0
mov byte [rbp - 0x2c], al
call section..text
test dword [rbp - 0x2f], 0x1000
jne 0x140004a68
movzx edx, byte [rbp - 0x50]
test dl, dl
je 0x140004a68
movzx eax, byte [rbp - 0x43]
and al, 0xc7
cmp al, 5
je 0x140004a68
mov r9, qword [rbp - 0x28]
lea rcx, [rdx + 0xe]
mov eax, dword [rsi + 8]
add rcx, rax
lea r10, [r9 + rdx]
mov qword [rbp - 0x1a], r10
cmp rcx, 0x100000
ja 0x140004a68
mov qword [rsp + 0xa0], rdi
test dl, dl
je 0x140004903
nop
mov edx, dword [rsi + 8]
mov rcx, qword [rsi]
add edx, ebx
mov r8d, ebx
inc ebx
movzx eax, byte [r8 + r9]
mov byte [rdx + rcx], al
movzx edx, byte [rbp - 0x50]
cmp ebx, edx
jae 0x140004903
mov r9, qword [rbp - 0x28]
jmp 0x1400048e0
mov rax, qword [rsi]
movzx ecx, dl
add ecx, dword [rsi + 8]
mov byte [rcx + rax], 0xff
movzx ecx, byte [rbp - 0x50]
mov rax, qword [rsi]
inc ecx
add ecx, dword [rsi + 8]
mov byte [rcx + rax], 0x25
movzx ecx, byte [rbp - 0x50]
mov rax, qword [rsi]
add ecx, 2
add ecx, dword [rsi + 8]
mov byte [rcx + rax], 0
movzx ecx, byte [rbp - 0x50]
mov rax, qword [rsi]
add ecx, 3
add ecx, dword [rsi + 8]
mov byte [rcx + rax], 0
movzx ecx, byte [rbp - 0x50]
mov rax, qword [rsi]
add ecx, 4
add ecx, dword [rsi + 8]
mov byte [rcx + rax], 0
movzx ecx, byte [rbp - 0x50]
mov rax, qword [rsi]
add ecx, 5
add ecx, dword [rsi + 8]
mov byte [rcx + rax], 0
movzx ecx, byte [rbp - 0x50]
mov rax, qword [rsi]
add ecx, 6
add ecx, dword [rsi + 8]
mov byte [rcx + rax], r10b
movzx ecx, byte [rbp - 0x50]
mov edx, dword [rsi + 8]
add ecx, 7
add edx, ecx
movzx eax, byte [rbp - 0x19]
mov rcx, qword [rsi]
mov byte [rdx + rcx], al
movzx ecx, byte [rbp - 0x50]
mov edx, dword [rsi + 8]
add ecx, 8
movzx eax, byte [rbp - 0x18]
add edx, ecx
mov rcx, qword [rsi]
mov byte [rdx + rcx], al
movzx ecx, byte [rbp - 0x50]
mov edx, dword [rsi + 8]
add ecx, 9
movzx eax, byte [rbp - 0x17]
add edx, ecx
mov rcx, qword [rsi]
mov byte [rdx + rcx], al
movzx ecx, byte [rbp - 0x50]
mov edx, dword [rsi + 8]
add ecx, 0xa
movzx eax, byte [rbp - 0x16]
add edx, ecx
mov rcx, qword [rsi]
mov byte [rdx + rcx], al
movzx ecx, byte [rbp - 0x50]
mov edx, dword [rsi + 8]
add ecx, 0xb
movzx eax, byte [rbp - 0x15]
add edx, ecx
mov rcx, qword [rsi]
mov byte [rdx + rcx], al
movzx ecx, byte [rbp - 0x50]
mov edx, dword [rsi + 8]
add ecx, 0xc
movzx eax, byte [rbp - 0x14]
add edx, ecx
mov rcx, qword [rsi]
mov byte [rdx + rcx], al
movzx ecx, byte [rbp - 0x50]
mov edx, dword [rsi + 8]
add ecx, 0xd
add edx, ecx
mov rcx, qword [rsi]
movzx eax, byte [rbp - 0x13]
mov byte [rdx + rcx], al
lea rdx, [rbp - 0x20]
mov r8d, dword [rsi + 8]
movzx ecx, byte [rbp - 0x50]
mov edi, r8d
mov rax, qword [rsi]
add ecx, 0xe
add ecx, r8d
mov dword [rsi + 8], ecx
mov byte [rcx + rax], 0x90
mov ecx, dword [rsi + 8]
mov rax, qword [rsi]
inc ecx
mov byte [rcx + rax], 0xcc
lea rcx, [rsi + 0x10]
mov rbx, qword [rsi]
add dword [rsi + 8], 2
add rbx, r8
lea r8, [rbp - 0x28]
call fcn.140004e10
mov rcx, qword [rax]
mov qword [rcx + 0x18], rbx
mov rax, qword [rsi]
add rax, rdi
mov rdi, qword [rsp + 0xa0]
jmp 0x140004a6a
xor eax, eax
mov rcx, qword [rbp - 0x10]
xor rcx, rsp
call fcn.140005710
add rsp, 0x70
pop rsi
pop rbx
pop rbp
ret