Function at 0x1400a0f00
Capabilities:
Hash data using fnv

Disassembly:
lea r12, [rsp - 0xe8]
cmp r12, qword [r14 + 0x10]
jbe 0x1400a1a59
sub rsp, 0x168
mov qword [rsp + 0x160], rbp
lea rbp, [rsp + 0x160]
mov qword [rsp + 0x178], rbx
mov qword [rsp + 0x180], rcx
nop dword [rax]
test rax, rax
jl 0x1400a1a45
mov rdx, qword [0x140b4e7d0]
lea rsi, [0x140b4e7c8]
nop word [rax + rax]
cmp rbx, rsi
jne 0x1400a1a2e
mov qword [rsp + 0x180], rcx
mov qword [rsp + 0x100], rbx
mov qword [rsp + 0x170], rax
movups xmmword [rsp + 0x120], xmm15
movups xmmword [rsp + 0x130], xmm15
mov qword [rsp + 0x120], 0x11
mov qword [rsp + 0x128], rcx
mov qword [rsp + 0x130], 0
mov qword [rsp + 0x138], rax
mov qword [rsp + 0x140], 0x11
mov qword [rsp + 0x148], rcx
mov qword [rsp + 0x150], 0
mov qword [rsp + 0x158], rax
lea rbx, [0x140975d40]
lea rax, [0x1411e1420]
lea rcx, [rsp + 0x140]
call fcn.1400894c0
nop
test cl, cl
jne 0x1400a1088
mov rax, qword [rsp + 0x170]
mov ebx, 0xa
call fcn.1400867c0
mov qword [rsp + 0xb0], rax
mov qword [rsp + 0x48], rbx
mov rax, qword [rsp + 0x180]
call fcn.140095dc0
mov ecx, 1
mov rdi, qword [rsp + 0xb0]
mov rsi, qword [rsp + 0x48]
lea r8, [0x140b37078]
mov r9, rcx
mov r10, rax
mov r11, rbx
lea rax, [rsp + 0x90]
lea rbx, [0x140b37050]
call fcn.140053b20
mov qword [rsp + 0xc8], rax
mov qword [rsp + 0x70], rbx
call fcn.14009a6a0
mov rcx, qword [rsp + 0x180]
xor edx, edx
jmp 0x1400a10ba
mov qword [rsp + 0xd0], rbx
mov rbx, rax
lea rax, [0x1409b4b20]
call fcn.14000c6a0
mov rbx, qword [rsp + 0xd0]
mov rbp, qword [rsp + 0x160]
add rsp, 0x168
ret
inc rdx
cmp rbx, rdx
jle 0x1400a113d
mov rsi, qword [rax + rdx*8]
cmp qword [rsi + 0x30], rcx
jne 0x1400a10b7
mov qword [rsp + 0xc0], rsi
lea rax, [0x140975d40]
lea rbx, [rsp + 0x120]
call fcn.14000c0c0
lea rbx, [0x140975d40]
mov rcx, rax
lea rdi, [0x1409d6e60]
mov rsi, qword [rsp + 0xc0]
lea rax, [0x1411e1420]
call fcn.1400898e0
mov qword [rsp + 0xe8], rbx
mov rcx, rax
lea rax, [0x1409b4b20]
mov rbx, rcx
nop
call fcn.14000c6a0
mov rbx, qword [rsp + 0xe8]
mov rbp, qword [rsp + 0x160]
add rsp, 0x168
ret
lea rcx, [0x1408b2fc0]
mov qword [rsp + 0x110], rcx
mov qword [rsp + 0x118], 0
mov rcx, qword [rsp + 0x110]
mov qword [rsp + 0xb8], rcx
lea rax, [0x140975bc0]
call fcn.14000ece0
mov qword [rsp + 0x108], rax
mov rcx, qword [rsp + 0xb8]
test byte [rcx], al
cmp dword [0x1412390d0], 0
jne 0x1400a11b7
mov rdx, qword [rcx]
mov qword [rax], rdx
movups xmm0, xmmword [rcx + 8]
movups xmmword [rax + 8], xmm0
movups xmm0, xmmword [rcx + 0x18]
movups xmmword [rax + 0x18], xmm0
movups xmm0, xmmword [rcx + 0x28]
movups xmmword [rax + 0x28], xmm0
movups xmm0, xmmword [rcx + 0x38]
movups xmmword [rax + 0x38], xmm0
jmp 0x1400a11ce
mov rbx, rax
lea rax, [0x140975bc0]
call fcn.1400153a0
mov rax, qword [rsp + 0x108]
mov rdx, qword [rsp + 0x180]
movzx r9d, byte [rdx + 0x14]
and r9d, 8
mov byte [rax + 0x14], r9b
mov rbx, qword [rsp + 0x70]
xor ecx, ecx
xor edi, edi
xor esi, esi
mov r8d, esi
mov rax, qword [rsp + 0xc8]
call fcn.140095860
nop
nop
call fcn.140068ee0
mov rdi, qword [rsp + 0x108]
mov dword [rdi + 0x28], eax
mov rbx, qword [rsp + 0x180]
mov edx, dword [rbx + 0x10]
xor eax, eax
jmp 0x1400a122d
imul edx, edx, 0x1000193
xor edx, 0x5b
mov eax, 1
cmp rax, 1
jl 0x1400a121f
mov dword [rdi + 0x10], edx
mov rax, qword [rsp + 0x170]
mov rcx, rax
jmp 0x1400a1249
mov dword [rdi + 0x10], edx
shr eax, 8
test eax, eax
jbe 0x1400a1257
mov edx, dword [rdi + 0x10]
xor esi, esi
jmp 0x1400a1a23
mov edx, dword [rdi + 0x10]
xor eax, eax
jmp 0x1400a126c
imul edx, edx, 0x1000193
xor edx, 0x5d
mov eax, 1
cmp rax, 1
jl 0x1400a125e
mov dword [rdi + 0x10], edx
cmp dword [0x1412390d0], 0
jne 0x1400a1284
mov qword [rdi + 0x30], rbx
jmp 0x1400a1296
lea rdx, [rdi + 0x30]
mov rax, rdi
mov rdi, rdx
call fcn.14006e3c0
mov rdi, rax
mov dword [rdi + 0x2c], 0
mov rdx, qword [rbx]
test rdx, rdx
jbe 0x1400a12be
mov rax, 0xffffffffffffffff
mov rsi, rdx
xor edx, edx
div rsi
cmp rax, rcx
jae 0x1400a12c1
jmp 0x1400a19fe
mov rsi, rdx
imul rsi, rcx
mov qword [rdi], rsi
test rcx, rcx
jle 0x1400a12e8
mov rdx, qword [rbx + 8]
test rdx, rdx
je 0x1400a12e8
mov rsi, qword [rbx]
lea r8, [rcx - 1]
imul r8, rsi
add rdx, r8
mov qword [rdi + 8], rdx
movzx edx, byte [rbx + 0x15]
mov byte [rdi + 0x15], dl
movzx edx, byte [rbx + 0x16]
mov byte [rdi + 0x16], dl
mov qword [rdi + 0x40], rcx
mov rax, qword [rsp + 0x100]
call fcn.14009d6c0
mov rcx, qword [0x140b4e7d0]
lea rdx, [0x140b4e7c8]
cmp rax, rdx
jne 0x1400a19ef
cmp dword [0x1412390d0], 0
jne 0x1400a1335
mov rdi, qword [rsp + 0x108]
mov qword [rdi + 0x38], rbx
jmp 0x1400a134f
mov rdi, qword [rsp + 0x108]
lea rdx, [rdi + 0x38]
mov rax, rdi
mov rdi, rdx
call fcn.14006e3c0
mov rdi, rax
mov rdx, qword [rsp + 0x180]
cmp qword [rdx + 8], 0
nop dword [rax]
je 0x1400a1592
mov rsi, qword [rdi]
test rsi, rsi
je 0x1400a1592
mov r8, qword [rsp + 0x170]
nop word [rax + rax]
cmp r8, 1
je 0x1400a1551
movzx r9d, byte [rdx + 0x17]
test r9b, 0x40
jne 0x1400a1469
nop dword [rax]
cmp rsi, 0x20000
ja 0x1400a1469
mov rcx, qword [rdi + 8]
shr rcx, 3
add rcx, 7
shr rcx, 3
add rcx, 7
and rcx, 0xfffffffffffffff8
mov qword [rsp + 0x78], rcx
lea rax, [0x1408adf80]
mov rbx, rcx
call fcn.14004fa60
mov qword [rsp + 0xf8], rax
mov rdx, qword [rsp + 0x108]
mov r8, qword [rdx + 0x40]
mov rbx, qword [rsp + 0x78]
mov rcx, rbx
xor edi, edi
mov rsi, qword [rsp + 0x180]
nop
call fcn.14009d260
mov rdx, qword [rsp + 0x78]
test rdx, rdx
jbe 0x1400a19e5
cmp dword [0x1412390d0], 0
jne 0x1400a1432
mov rcx, qword [rsp + 0xf8]
mov rdi, qword [rsp + 0x108]
mov qword [rdi + 0x20], rcx
jmp 0x1400a1454
mov rdi, qword [rsp + 0x108]
lea rcx, [rdi + 0x20]
mov rax, rdi
mov rdi, rcx
mov rdx, qword [rsp + 0xf8]
call fcn.14006e3a0
mov rdi, rax
mov rdx, qword [rsp + 0x180]
mov r8, qword [rsp + 0x170]
jmp 0x1400a15c9
lea rax, [0x1408b4d00]
call fcn.14000ece0
mov ebx, 4
mov rcx, rbx
mov rdi, qword [rsp + 0x180]
call fcn.14009d3c0
mov rdx, qword [rsp + 0x180]
mov rsi, qword [rdx + 8]
shr rsi, 3
mov rdi, qword [rdx]
shr rdi, 3
mov qword [rsp + 0x88], rdi
cmp rdi, rsi
jbe 0x1400a1740
mov qword [rsp + 0x80], rsi
add rbx, 2
nop
cmp rcx, rbx
jae 0x1400a14ee
mov edi, 2
lea rsi, [0x1408adf80]
call fcn.14004fb40
mov rdx, qword [rsp + 0x180]
mov rsi, qword [rsp + 0x80]
mov rdi, qword [rsp + 0x88]
mov word [rbx + rax - 2], 1
lea r8, [rsi + 1]
nop dword [rax]
cmp rdi, r8
jbe 0x1400a1740
inc rbx
cmp rcx, rbx
jae 0x1400a153d
mov edi, 1
lea rsi, [0x1408adf80]
nop dword [rax]
call fcn.14004fb40
mov rdx, qword [rsp + 0x180]
mov rsi, qword [rsp + 0x80]
mov rdi, qword [rsp + 0x88]
mov byte [rbx + rax - 1], 0x81
mov r8, rdi
sub rdi, rsi
lea r9, [rdi - 1]
jmp 0x1400a1968
movzx ecx, byte [rdi + 0x17]
movzx esi, byte [rdx + 0x17]
and esi, 0x40
or ecx, esi
mov byte [rdi + 0x17], cl
mov rcx, qword [rdx + 0x20]
cmp dword [0x1412390d0], 0
jne 0x1400a1574
mov qword [rdi + 0x20], rcx
jmp 0x1400a1588
lea rsi, [rdi + 0x20]
mov rax, rdi
mov rdi, rsi
nop
call fcn.14006e380
mov rdi, rax
mov rcx, qword [rdx + 8]
mov qword [rdi + 8], rcx
jmp 0x1400a15c9
cmp dword [0x1412390d0], 0
jne 0x1400a15a5
mov qword [rdi + 0x20], 0
jmp 0x1400a15b9
lea rcx, [rdi + 0x20]
mov rax, rdi
mov rdi, rcx
xor esi, esi
call fcn.14006e3e0
mov rdi, rax
mov qword [rdi + 8], 0
mov r8, qword [rsp + 0x170]
nop
lea rcx, [rdi + 0x18]
mov rsi, qword [rdx]
cmp dword [0x1412390d0], 0
jne 0x1400a15e4
mov qword [rdi + 0x18], 0
jmp 0x1400a15f5
mov rax, rdi
mov rdi, rcx
xor r9d, r9d
call fcn.14006e420
mov rdi, rax
mov r9, qword [rdx + 0x18]
nop dword [rax]
test r9, r9
je 0x1400a16a5
mov qword [rsp + 0x50], rsi
mov qword [rsp + 0xf0], rcx
mov qword [rsp + 0xd8], r9
lea rax, [0x140967520]
call fcn.14000ece0
lea rcx, [0x1400a1aa0]
mov qword [rax], rcx
mov rcx, qword [rsp + 0x170]
mov qword [rax + 8], rcx
mov rdx, qword [rsp + 0x50]
mov qword [rax + 0x10], rdx
cmp dword [0x1412390d0], 0
jne 0x1400a166c
mov rdx, qword [rsp + 0xd8]
mov qword [rax + 0x18], rdx
mov rdx, qword [rsp + 0x108]
mov qword [rdx + 0x18], rax
jmp 0x1400a1692
lea rdi, [rax + 0x18]
mov rdx, qword [rsp + 0xd8]
call fcn.14006e3a0
mov rdi, qword [rsp + 0xf0]
call fcn.14006e280
mov rdx, qword [rsp + 0x108]
mov rdx, qword [rsp + 0x180]
mov rdi, qword [rsp + 0x108]
mov r8, rcx
cmp r8, 1
jne 0x1400a16c2
nop
movzx ecx, byte [rdx + 0x17]
test cl, 0x20
je 0x1400a16c2
movzx ecx, byte [rdi + 0x17]
or ecx, 0x20
mov byte [rdi + 0x17], cl
nop
jmp 0x1400a16cc
movzx ecx, byte [rdi + 0x17]
and ecx, 0xffffffdf
mov byte [rdi + 0x17], cl
lea rax, [0x140975d40]
lea rbx, [rsp + 0x120]
nop dword [rax + rax]
call fcn.14000c0c0
lea rbx, [0x140975d40]
mov rcx, rax
lea rdi, [0x1409d6e60]
mov rsi, qword [rsp + 0x108]
lea rax, [0x1411e1420]
call fcn.1400898e0
mov qword [rsp + 0xe0], rbx
mov rcx, rax
lea rax, [0x1409b4b20]
mov rbx, rcx
nop
call fcn.14000c6a0
mov rbx, qword [rsp + 0xe0]
mov rbp, qword [rsp + 0x160]
add rsp, 0x168
ret
cmp rdi, 0x80
jae 0x1400a1785
inc rbx
cmp rcx, rbx
jae 0x1400a1775
mov edi, 1
lea rsi, [0x1408adf80]
nop dword [rax]
call fcn.14004fb40
mov rdx, qword [rsp + 0x180]
mov rdi, qword [rsp + 0x88]
bts rdi, 7
mov byte [rbx + rax - 1], dil
nop
jmp 0x1400a1830
inc rbx
cmp rcx, rbx
jae 0x1400a17ae
mov edi, 1
lea rsi, [0x1408adf80]
call fcn.14004fb40
mov rdx, qword [rsp + 0x180]
mov rdi, qword [rsp + 0x88]
mov byte [rbx + rax - 1], pe_nt_image_headers64
nop
jmp 0x1400a17ca
mov r8, rdi
bts rdi, 7
mov byte [rbx + rax - 1], dil
shr r8, 7
mov rdi, r8
mov qword [rsp + 0x60], rdi
cmp rdi, 0x80
jb 0x1400a1805
inc rbx
nop dword [rax + rax]
cmp rcx, rbx
jae 0x1400a17b6
mov edi, 1
lea rsi, [0x1408adf80]
call fcn.14004fb40
mov rdx, qword [rsp + 0x180]
mov rdi, qword [rsp + 0x60]
jmp 0x1400a17b6
inc rbx
cmp rcx, rbx
jae 0x1400a182b
mov edi, 1
lea rsi, [0x1408adf80]
call fcn.14004fb40
mov rdx, qword [rsp + 0x180]
mov rdi, qword [rsp + 0x60]
mov byte [rbx + rax - 1], dil
nop
mov r8, qword [rsp + 0x170]
lea r9, [r8 - 1]
jmp 0x1400a1853
mov r10, r9
bts r9, 7
mov byte [rbx + rax - 1], r9b
shr r10, 7
mov r9, r10
mov qword [rsp + 0x58], r9
nop dword [rax + rax]
cmp r9, 0x80
jb 0x1400a189c
inc rbx
cmp rcx, rbx
jae 0x1400a183f
mov edi, 1
lea rsi, [0x1408adf80]
nop dword [rax]
call fcn.14004fb40
mov rdx, qword [rsp + 0x180]
mov r8, qword [rsp + 0x170]
mov r9, qword [rsp + 0x58]
jmp 0x1400a183f
inc rbx
nop
cmp rcx, rbx
jae 0x1400a18cb
mov edi, 1
lea rsi, [0x1408adf80]
call fcn.14004fb40
mov rdx, qword [rsp + 0x180]
mov r8, qword [rsp + 0x170]
mov r9, qword [rsp + 0x58]
mov byte [rbx + rax - 1], r9b
inc rbx
cmp rcx, rbx
jae 0x1400a18f9
mov edi, 1
lea rsi, [0x1408adf80]
call fcn.14004fb40
mov rdx, qword [rsp + 0x180]
mov r8, qword [rsp + 0x170]
mov byte [rbx + rax - 1], 0
nop
test rbx, rbx
jbe 0x1400a194a
lea rcx, [rbx - 4]
mov dword [rax], ecx
mov rdi, qword [rsp + 0x108]
movzx ecx, byte [rdi + 0x17]
or ecx, 0x40
mov byte [rdi + 0x17], cl
cmp dword [0x1412390d0], 0
jne 0x1400a192c
mov qword [rdi + 0x20], rax
jmp 0x1400a193e
lea rcx, [rdi + 0x20]
mov rbx, rdi
mov rdi, rcx
call fcn.14006e280
mov rdi, rbx
mov rcx, qword [rdi]
mov qword [rdi + 8], rcx
jmp 0x1400a15c9
xor eax, eax
mov rcx, rax
call fcn.14006e720
mov r10, r9
bts r9, 7
mov byte [rbx + rax - 1], r9b
shr r10, 7
mov r9, r10
mov qword [rsp + 0x68], r9
cmp r9, 0x80
jb 0x1400a19a6
inc rbx
cmp rcx, rbx
jae 0x1400a1954
mov edi, 1
lea rsi, [0x1408adf80]
call fcn.14004fb40
mov rdx, qword [rsp + 0x180]
mov r8, qword [rsp + 0x88]
mov r9, qword [rsp + 0x68]
jmp 0x1400a1954
inc rbx
cmp rcx, rbx
jae 0x1400a19d4
mov edi, 1
lea rsi, [0x1408adf80]
call fcn.14004fb40
mov rdx, qword [rsp + 0x180]
mov r8, qword [rsp + 0x88]
mov r9, qword [rsp + 0x68]
mov byte [rbx + rax - 1], r9b
mov rdi, r8
nop dword [rax]
jmp 0x1400a1740
xor eax, eax
mov rcx, rax
call fcn.14006e720
mov rbx, rcx
lea rcx, [0x1409b4b20]
call fcn.14000bfe0
lea rax, [0x1408adbc0]
lea rbx, [0x140b3bf60]
call fcn.140039ee0
imul edx, edx, 0x1000193
movzx r8d, al
xor edx, r8d
mov esi, 1
cmp rsi, 1
jl 0x1400a1a11
jmp 0x1400a1243
mov rax, rbx
mov rbx, rdx
lea rcx, [0x1409b4b20]
nop dword [rax + rax]
call fcn.14000bfe0
lea rax, [0x1408adbc0]
lea rbx, [0x140b3bf50]
call fcn.140039ee0
nop
mov qword [rsp + 8], rax
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rcx
call fcn.14006c0a0
mov rax, qword [rsp + 8]
mov rbx, qword [rsp + 0x10]
mov rcx, qword [rsp + 0x18]
nop dword [rax]
jmp fcn.1400a0f00