Function at 0x140044000
Capabilities:
Hash data using fnv

Disassembly:
mov qword [rsp + 8], rcx
push rbp
push rbx
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x1f]
sub rsp, 0xa8
mov r12, rcx
mov edx, 2
mov rcx, qword [rcx]
call fcn.140055480
mov rdx, qword [r12 + 8]
mov r13, qword [rdx + 8]
mov rbx, qword [r13]
xor r14d, r14d
movabs r10, 0xcbf29ce484222325
movabs r9, 0x100000001b3
cmp rbx, r13
je 0x1400441f1
nop word [rax + rax]
mov r15, qword [rbx + 0x18]
test r15, r15
je 0x1400441dd
mov rsi, qword [r12]
mov edi, r14d
cmp dword [r15 + 0x14], r14d
jbe 0x1400441dd
nop
mov eax, edi
lea rcx, [rax + rax*2]
add rcx, rcx
mov rax, qword [r15 + 0x18]
mov r8, qword [rax + rcx*8 + 0x18]
mov qword [rbp + 0x6f], r8
mov rax, r8
shr rax, 8
movzx edx, al
movzx eax, r8b
xor rax, r10
imul rax, r9
xor rdx, rax
imul rdx, r9
mov rax, r8
shr rax, 0x10
movzx ecx, al
xor rdx, rcx
imul rdx, r9
mov rax, r8
shr rax, 0x18
movzx ecx, al
xor rdx, rcx
imul rdx, r9
mov rax, r8
shr rax, 0x20
movzx ecx, al
xor rdx, rcx
imul rdx, r9
mov rax, r8
shr rax, 0x28
movzx ecx, al
xor rdx, rcx
imul rdx, r9
mov rax, r8
shr rax, 0x30
movzx ecx, al
xor rdx, rcx
imul rdx, r9
mov rax, r8
shr rax, 0x38
xor rdx, rax
imul rdx, r9
mov rcx, qword [rsi + 0x3f8]
and rcx, rdx
shl rcx, 4
add rcx, qword [rsi + 0x3e0]
mov rax, qword [rcx + 8]
cmp rax, qword [rsi + 0x3d0]
je 0x140044151
mov rcx, qword [rcx]
cmp r8, qword [rax + 0x10]
je 0x140044154
cmp rax, rcx
je 0x140044151
mov rax, qword [rax + 8]
cmp r8, qword [rax + 0x10]
jne 0x140044140
jmp 0x140044154
mov rax, r14
test rax, rax
jne 0x1400441cd
mov rcx, qword [rsi + 0x110]
test rcx, rcx
je 0x140044173
mov eax, 1
lock xadd dword [rcx + 0x48], eax
mov r8, qword [rbp + 0x6f]
mov qword [rbp - 0x11], 4
mov word [rbp - 5], 1
xorps xmm0, xmm0
xor eax, eax
movups xmmword [rbp - 1], xmm0
mov qword [rbp + 0xf], rax
mov qword [rbp - 0x19], r8
mov dword [rbp - 9], 3
lea rdx, [rbp - 0x19]
mov rcx, rsi
call fcn.14004a2b0
lea r8, [rbp + 0x6f]
lea rdx, [rbp - 0x69]
lea rcx, [rsi + 0x3c8]
call fcn.140023390
movabs r9, 0x100000001b3
movabs r10, 0xcbf29ce484222325
inc edi
cmp edi, dword [r15 + 0x14]
jb 0x140044080
mov r12, qword [rbp + 0x67]
mov rax, qword [rbx]
mov rbx, rax
cmp rax, r13
jne 0x140044060
mov rdx, qword [r12 + 8]
mov rax, qword [r12]
mov rcx, qword [rax + 0x110]
test rcx, rcx
je 0x14004420d
mov eax, dword [rdx + 0x10]
lock xadd dword [rcx + 0x40], eax
mov rax, qword [r12]
mov edx, 3
mov rcx, rax
call fcn.140055480
mov rcx, qword [r12 + 8]
mov rsi, qword [rcx + 8]
mov rdi, qword [rsi]
cmp rdi, rsi
je 0x1400444b9
movabs r13, 0x100000001b3
nop dword [rax]
mov r9, qword [rdi + 0x18]
test r9, r9
je 0x1400444a8
mov r15, qword [r12]
mov r10d, r14d
cmp dword [r9 + 0x14], r14d
jbe 0x1400443dd
movabs r12, 0xcbf29ce484222325
nop dword [rax + rax]
mov eax, r10d
lea r11, [rax + rax*2]
add r11, r11
mov rax, qword [r9 + 0x18]
mov r8, qword [rax + r11*8 + 0x18]
movzx edx, r8b
xor rdx, r12
imul rdx, r13
mov rax, r8
shr rax, 8
movzx ecx, al
xor rdx, rcx
imul rdx, r13
mov rax, r8
shr rax, 0x10
movzx ecx, al
xor rdx, rcx
imul rdx, r13
mov rax, r8
shr rax, 0x18
movzx ecx, al
xor rdx, rcx
imul rdx, r13
mov rax, r8
shr rax, 0x20
movzx ecx, al
xor rdx, rcx
imul rdx, r13
mov rax, r8
shr rax, 0x28
movzx ecx, al
xor rdx, rcx
imul rdx, r13
mov rax, r8
shr rax, 0x30
movzx ecx, al
xor rdx, rcx
imul rdx, r13
mov rax, r8
shr rax, 0x38
xor rdx, rax
imul rdx, r13
mov rcx, qword [r15 + 0x268]
and rcx, rdx
shl rcx, 4
add rcx, qword [r15 + 0x250]
mov rax, qword [rcx + 8]
mov rdx, qword [r15 + 0x240]
cmp rax, rdx
je 0x140044341
mov rcx, qword [rcx]
cmp r8, qword [rax + 0x10]
je 0x140044344
cmp rax, rcx
je 0x140044341
mov rax, qword [rax + 8]
cmp r8, qword [rax + 0x10]
jne 0x140044330
jmp 0x140044344
mov rax, r14
test rax, rax
cmove rax, rdx
cmp rax, rdx
jne 0x140044355
mov rcx, r14
jmp 0x1400443bb
mov rcx, qword [rax + 0x18]
mov rdx, qword [rcx + 8]
mov r8, qword [rcx]
test r8, r8
je 0x14004436b
mov qword [r8 + 8], rdx
jmp 0x140044372
mov qword [r15 + 0x278], rdx
test rdx, rdx
je 0x14004437c
mov qword [rdx], r8
jmp 0x140044383
mov qword [r15 + 0x280], r8
mov rdx, qword [r15 + 0x278]
test rdx, rdx
je 0x14004439b
mov qword [rdx], rcx
mov rdx, qword [r15 + 0x278]
jmp 0x1400443a5
mov qword [r15 + 0x280], rcx
mov rdx, r14
mov qword [rcx + 8], rdx
mov qword [rcx], r14
mov qword [r15 + 0x278], rcx
mov rcx, qword [rax + 0x18]
mov rcx, qword [rcx + 0x10]
mov rax, qword [r9 + 0x18]
mov qword [rax + r11*8 + 0x18], rcx
inc r10d
cmp r10d, dword [r9 + 0x14]
jb 0x140044270
mov r12, qword [rbp + 0x67]
mov r15, qword [r12]
mov r9, qword [rdi + 0x18]
mov r10d, dword [rdi + 0x30]
add r10d, dword [r12 + 0x14]
add r10d, dword [r12 + 0x10]
mov rbx, qword [rdi + 0x28]
mov r11, qword [rdi + 0x20]
mov qword [rbp + 0x77], r11
mov al, 1
mov ecx, dword [r9 + 0x14]
test ecx, ecx
je 0x140044429
mov rdx, qword [r9 + 0x18]
add rdx, 0x18
mov r8d, ecx
nop dword [rax]
mov ecx, r14d
movzx eax, al
cmp qword [rdx], rcx
cmovne ecx, eax
movzx eax, cl
lea rdx, [rdx + 0x30]
sub r8, 1
jne 0x140044410
mov word [rbp - 0x35], 0
xorps xmm0, xmm0
xor ecx, ecx
movups xmmword [rbp - 0x31], xmm0
mov qword [rbp - 0x21], rcx
mov qword [rbp - 0x49], r11
mov dword [rbp - 0x41], 6
mov qword [rbp - 0x29], rbx
mov dword [rbp - 0x3d], r10d
mov dword [rbp - 0x39], 2
test al, al
je 0x14004449c
mov qword [rbp - 0x31], r9
lea rbx, [r15 + 0x630]
mov qword [rbp + 0x7f], rbx
mov rcx, rbx
call fcn.1400e9ba0
test eax, eax
jne 0x1400444e9
lea rcx, [r15 + 0x308]
lea r8, [rbp + 0x77]
lea rdx, [rbp - 0x59]
call fcn.14000d240
mov rdx, qword [rax]
add rdx, 0x18
mov qword [rbp - 0x21], rdx
mov rcx, rbx
call fcn.1400e9bc4
lea rdx, [rbp - 0x49]
mov rcx, r15
call fcn.14004a2b0
mov rdi, qword [rdi]
cmp rdi, rsi
jne 0x140044240
mov rcx, qword [r12 + 8]
call fcn.140048710
nop
mov edx, r14d
mov rcx, qword [r12]
call fcn.140055480
inc r14d
cmp r14d, 2
jb 0x1400444c0
add rsp, 0xa8
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbx
pop rbp
ret
mov ecx, eax
call fcn.1400e9ff0
int3
add rcx, 8
jmp 0x140044000