Function at 0x14004f4c0
Capabilities:
Hash data using fnv

Disassembly:
push rbp
push rbx
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x17]
sub rsp, 0xa8
mov rax, qword [0x1400ce568]
xor rax, rsp
mov qword [rbp - 1], rax
mov rdi, r9
mov esi, r8d
mov rbx, rdx
mov r14, rcx
mov qword [rbp - 0x29], rcx
mov r15d, dword [rcx + 0x128]
mov dword [rbp - 0x31], r15d
lea eax, [r15 + 1]
mov dword [rcx + 0x128], eax
add rcx, 0x1b8
lea rdx, [r14 + 0x130]
call fcn.140048c70
mov r12, rax
mov r8, rbx
mov rdx, rax
mov rcx, r14
call fcn.140046990
mov dl, 9
mov rcx, r12
call fcn.1400233e0
xor ebx, ebx
cmp byte [rdi], bl
je 0x14004f75c
mov r8, rdi
mov rdx, r12
mov rcx, r14
call fcn.140047140
mov r8d, r15d
lea rdx, [rbp - 0x51]
mov rcx, r14
call fcn.140063a70
nop
mov r9b, 0x20
xor edx, edx
lea r8d, [rbx + 1]
mov rcx, rax
call fcn.140063d50
movups xmm0, xmmword [rax]
movups xmmword [rbp - 0x71], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rbp - 0x61], xmm1
mov qword [rax + 0x10], rbx
mov qword [rax + 0x18], 0xf
mov byte [rax], bl
lea rdx, [rbp - 0x71]
movq rcx, xmm0
movdqa xmm0, xmm1
psrldq xmm0, 8
movq rax, xmm0
cmp rax, 0x10
cmovae rdx, rcx
movq r8, xmm1
mov rcx, r12
call fcn.14001c9d0
nop
mov rdx, qword [rbp - 0x59]
cmp rdx, 0x10
jb 0x14004f5f9
inc rdx
mov rcx, qword [rbp - 0x71]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14004f5f3
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14004fb34
call fcn.140078bb0
nop
mov rdx, qword [rbp - 0x39]
cmp rdx, 0x10
jb 0x14004f634
inc rdx
mov rcx, qword [rbp - 0x51]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14004f62f
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14004fb3a
call fcn.140078bb0
mov edx, dword [rdi + 0x10]
test edx, edx
je 0x14004f747
lea rcx, [rbp - 0x21]
call fcn.140064670
nop
mov r9b, 0x5b
xor edx, edx
lea r8d, [rdx + 1]
mov rcx, rax
call fcn.140063d50
movups xmm0, xmmword [rax]
movups xmmword [rbp - 0x71], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rbp - 0x61], xmm1
mov qword [rax + 0x10], rbx
mov qword [rax + 0x18], 0xf
mov byte [rax], 0
mov dl, 0x5d
lea rcx, [rbp - 0x71]
call fcn.1400233e0
movups xmm0, xmmword [rbp - 0x71]
movups xmmword [rbp - 0x51], xmm0
movups xmm1, xmmword [rbp - 0x61]
movups xmmword [rbp - 0x41], xmm1
mov qword [rbp - 0x61], rbx
mov qword [rbp - 0x59], 0xf
mov byte [rbp - 0x71], 0
lea rdx, [rbp - 0x51]
movq rcx, xmm0
movdqa xmm0, xmm1
psrldq xmm0, 8
movq rax, xmm0
cmp rax, 0x10
cmovae rdx, rcx
movq r8, xmm1
mov rcx, r12
call fcn.14001c9d0
nop
mov rdx, qword [rbp - 0x39]
cmp rdx, 0x10
jb 0x14004f70c
inc rdx
mov rcx, qword [rbp - 0x51]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14004f706
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14004fb40
call fcn.140078bb0
nop
mov rdx, qword [rbp - 9]
cmp rdx, 0x10
jb 0x14004f747
inc rdx
mov rcx, qword [rbp - 0x21]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14004f742
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14004fb46
call fcn.140078bb0
mov r8d, 3
lea rdx, [0x1400ac918]
mov rcx, r12
call fcn.14001c9d0
mov r8d, esi
lea rdx, [rbp - 0x51]
mov rdi, qword [rbp - 0x29]
mov rcx, rdi
call fcn.140063a70
mov rbx, rax
mov dl, 0x28
mov rcx, rax
call fcn.1400233e0
movups xmm0, xmmword [rbx]
movups xmmword [rbp - 0x71], xmm0
movups xmm1, xmmword [rbx + 0x10]
movups xmmword [rbp - 0x61], xmm1
xor esi, esi
mov qword [rbx + 0x10], rsi
mov qword [rbx + 0x18], 0xf
mov byte [rbx], sil
lea rdx, [rbp - 0x71]
movq rcx, xmm0
movdqa xmm0, xmm1
psrldq xmm0, 8
movq rax, xmm0
cmp rax, 0x10
cmovae rdx, rcx
movq r8, xmm1
mov rcx, r12
call fcn.14001c9d0
nop
mov rdx, qword [rbp - 0x59]
cmp rdx, 0x10
jb 0x14004f805
inc rdx
mov rcx, qword [rbp - 0x71]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14004f7ff
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14004fb4c
call fcn.140078bb0
nop
mov rdx, qword [rbp - 0x39]
cmp rdx, 0x10
jb 0x14004f840
inc rdx
mov rcx, qword [rbp - 0x51]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14004f83b
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14004fb52
call fcn.140078bb0
mov r14, rsi
mov r8, qword [rbp + 0x7f]
mov rcx, qword [r8 + 8]
sub rcx, qword [r8]
movabs rax, 0x4924924924924925
imul rcx
mov r15, rdx
sar r15, 6
mov rax, r15
shr rax, 0x3f
add r15, rax
je 0x14004faf6
mov r13, rsi
movabs r9, 0x7fffffffffffffff
movabs r10, 0x100000001b3
movabs rdx, 0xcbf29ce484222325
mov rax, qword [r8]
mov ecx, dword [rax + r13]
mov eax, ecx
shr eax, 8
movzx r8d, al
movzx eax, cl
xor rax, rdx
imul rax, r10
xor r8, rax
imul r8, r10
mov eax, ecx
shr eax, 0x10
movzx edx, al
xor r8, rdx
imul r8, r10
mov eax, ecx
shr rax, 0x18
xor r8, rax
imul r8, r10
mov rdx, qword [rdi + 0x1a8]
and rdx, r8
shl rdx, 4
add rdx, qword [rdi + 0x190]
mov rax, qword [rdx + 8]
mov r8, qword [rdi + 0x180]
cmp rax, r8
je 0x14004f98b
mov rdx, qword [rdx]
cmp ecx, dword [rax + 0x10]
je 0x14004f913
cmp rax, rdx
je 0x14004f98b
mov rax, qword [rax + 8]
cmp ecx, dword [rax + 0x10]
jne 0x14004f901
test rax, rax
cmove rax, r8
cmp rax, r8
je 0x14004f98b
lea rsi, [rax + 0x18]
mov rdi, qword [rsi + 0x10]
cmp qword [rsi + 0x18], 0x10
jb 0x14004f931
mov rsi, qword [rsi]
cmp rdi, 0x10
jae 0x14004f952
movups xmm0, xmmword [rsi]
movups xmmword [rbp - 0x51], xmm0
mov qword [rbp - 0x41], rdi
mov ebx, 0xf
mov qword [rbp - 0x39], rbx
xor esi, esi
jmp 0x14004fa6c
mov rbx, rdi
or rbx, 0xf
cmp rbx, r9
cmova rbx, r9
lea rcx, [rbx + 1]
call fcn.1400110b0
mov qword [rbp - 0x51], rax
lea r8, [rdi + 1]
mov rdx, rsi
mov rcx, rax
call fcn.14007c660
mov qword [rbp - 0x41], rdi
mov qword [rbp - 0x39], rbx
xor esi, esi
jmp 0x14004fa6c
lea r9, [rbp - 0xc]
nop
dec r9
mov eax, 0xcccccccd
mul ecx
shr edx, 3
movzx eax, dl
shl al, 2
lea r8d, [rax + rdx]
add r8b, r8b
sub cl, r8b
add cl, 0x30
mov byte [r9], cl
mov ecx, edx
test edx, edx
jne 0x14004f990
mov qword [rbp - 0x71], rsi
mov qword [rbp - 0x61], rsi
mov qword [rbp - 0x59], 0xf
mov byte [rbp - 0x71], dl
lea rax, [rbp - 0xc]
cmp r9, rax
je 0x14004f9e9
lea r8, [rbp - 0xc]
sub r8, r9
mov rdx, r9
lea rcx, [rbp - 0x71]
call fcn.14001cd70
nop
mov r9b, 0x5f
xor edx, edx
lea r8d, [rdx + 1]
lea rcx, [rbp - 0x71]
call fcn.140063d50
movups xmm0, xmmword [rax]
movups xmmword [rbp - 0x51], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rbp - 0x41], xmm1
mov qword [rax + 0x10], rsi
mov qword [rax + 0x18], 0xf
mov byte [rax], 0
mov rdx, qword [rbp - 0x59]
cmp rdx, 0x10
jb 0x14004fa54
inc rdx
mov rcx, qword [rbp - 0x71]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14004fa4f
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14004fb58
call fcn.140078bb0
mov qword [rbp - 0x61], rsi
mov qword [rbp - 0x59], 0xf
mov byte [rbp - 0x71], 0
mov rbx, qword [rbp - 0x39]
mov rdi, qword [rbp - 0x41]
lea rdx, [rbp - 0x51]
cmp rbx, 0x10
cmovae rdx, qword [rbp - 0x51]
mov r8, rdi
mov rcx, r12
call fcn.14001c9d0
nop
mov rdx, qword [rbp - 0x39]
cmp rdx, 0x10
jb 0x14004fabc
inc rdx
mov rcx, qword [rbp - 0x51]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14004fab7
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14004fb2e
call fcn.140078bb0
lea rax, [r15 - 1]
cmp r14, rax
jae 0x14004fada
mov r8d, 2
lea rdx, [0x1400aa498]
mov rcx, r12
call fcn.14001c9d0
inc r14
add r13, 0xe0
cmp r14, r15
jae 0x14004faf6
mov rdi, qword [rbp - 0x29]
mov r8, qword [rbp + 0x7f]
jmp 0x14004f875
mov r8d, 3
lea rdx, [0x1400ac7d0]
mov rcx, r12
call fcn.14001c9d0
mov eax, dword [rbp - 0x31]
mov rcx, qword [rbp - 1]
xor rcx, rsp
call fcn.1400787f0
add rsp, 0xa8
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbx
pop rbp
ret
call fcn.140080ae0
nop
call fcn.140080ae0
nop
call fcn.140080ae0
nop
call fcn.140080ae0
nop
call fcn.140080ae0
nop
call fcn.140080ae0
nop
call fcn.140080ae0
int3
call fcn.140080ae0
int3