Function at 0x1400b9220
Capabilities:
Hash data using fnv

Disassembly:
lea r12, [rsp - 0x140]
cmp r12, qword [r14 + 0x10]
jbe 0x1400b9e75
sub rsp, 0x1c0
mov qword [rsp + 0x1b8], rbp
lea rbp, [rsp + 0x1b8]
mov qword [rsp + 0x1d0], rbx
mov qword [rsp + 0x1d8], rcx
nop dword [rax]
test rax, rax
jge 0x1400b9348
movabs rdx, 0x226406d3d1d13364
mov qword [rsp + 0xde], rdx
movabs rdx, 0xa4820d7823de5040
mov qword [rsp + 0xe6], rdx
movabs rdx, 0xc9eaa4820d7823de
mov qword [rsp + 0xe8], rdx
movabs rdx, 0x7d5f83282498f592
mov qword [rsp + 0xf0], rdx
movabs rdx, 0x33831b88ba97c886
mov qword [rsp + 0xf8], rdx
movabs rdx, 0xc52fc93f1e0dcff9
mov qword [rsp + 0x100], rdx
movabs rdx, 0x5cd869383d3798d6
mov qword [rsp + 0xb4], rdx
movabs rdx, 0x1aeb81d98a43be60
mov qword [rsp + 0xbc], rdx
movabs rdx, 0xe94f1aeb81d98a43
mov qword [rsp + 0xbe], rdx
movabs rdx, 0xed7feb9c8b065afe
mov qword [rsp + 0xc6], rdx
movabs rdx, 0xa2f73bec1f0a3be7
mov qword [rsp + 0xce], rdx
movabs rdx, 0x2b7e42a0907f1019
mov qword [rsp + 0xd6], rdx
xor eax, eax
jmp 0x1400b9e45
mov rdx, qword [0x14098bcb0]
lea rsi, [0x14098bca8]
cmp rbx, rsi
jne 0x1400b9e16
mov qword [rsp + 0x1c8], rax
mov qword [rsp + 0x158], rbx
mov qword [rsp + 0x1d8], rcx
movups xmmword [rsp + 0x178], xmm15
movups xmmword [rsp + 0x188], xmm15
mov qword [rsp + 0x178], 0x11
mov qword [rsp + 0x180], rcx
mov qword [rsp + 0x188], 0
mov qword [rsp + 0x190], rax
mov qword [rsp + 0x198], 0x11
mov qword [rsp + 0x1a0], rcx
mov qword [rsp + 0x1a8], 0
mov qword [rsp + 0x1b0], rax
lea rbx, [0x1408a5520]
lea rax, [0x140be1d60]
lea rcx, [rsp + 0x198]
call fcn.14006da00
test cl, cl
jne 0x1400b947c
mov rax, qword [rsp + 0x1c8]
mov ebx, 0xa
call fcn.1400a1a80
mov qword [rsp + 0x108], rax
mov qword [rsp + 0x48], rbx
mov rax, qword [rsp + 0x1d8]
call fcn.1400ae6c0
mov ecx, 1
mov rdi, qword [rsp + 0x108]
mov rsi, qword [rsp + 0x48]
lea r8, [0x14096aca0]
mov r9, rcx
mov r10, rax
mov r11, rbx
lea rax, [rsp + 0x94]
lea rbx, [0x14096ac90]
call fcn.140047c40
mov qword [rsp + 0x120], rax
mov qword [rsp + 0x60], rbx
call fcn.1400b33e0
mov rcx, qword [rsp + 0x1d8]
xor edx, edx
jmp 0x1400b94ae
mov qword [rsp + 0x130], rbx
mov rbx, rax
lea rax, [0x1408b7b40]
call fcn.14000b800
mov rbx, qword [rsp + 0x130]
mov rbp, qword [rsp + 0x1b8]
add rsp, 0x1c0
ret
inc rdx
cmp rbx, rdx
jle 0x1400b9530
mov rsi, qword [rax + rdx*8]
cmp qword [rsi + 0x30], rcx
jne 0x1400b94ab
mov qword [rsp + 0x118], rsi
lea rax, [0x1408a5520]
lea rbx, [rsp + 0x178]
call fcn.14000b220
lea rbx, [0x1408a5520]
mov rcx, rax
lea rdi, [0x1408c28c0]
mov rsi, qword [rsp + 0x118]
lea rax, [0x140be1d60]
call fcn.14006dbc0
mov qword [rsp + 0x140], rbx
mov rcx, rax
lea rax, [0x1408b7b40]
mov rbx, rcx
call fcn.14000b800
mov rbx, qword [rsp + 0x140]
mov rbp, qword [rsp + 0x1b8]
add rsp, 0x1c0
ret
lea rcx, [0x1408188a0]
mov qword [rsp + 0x168], rcx
mov qword [rsp + 0x170], 0
mov rcx, qword [rsp + 0x168]
mov qword [rsp + 0x110], rcx
lea rax, [0x1408a53a0]
call fcn.14000daa0
mov qword [rsp + 0x160], rax
mov rcx, qword [rsp + 0x110]
test byte [rcx], al
cmp dword [0x140c37b50], 0
jne 0x1400b95aa
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 0x1400b95c1
mov rbx, rax
lea rax, [0x1408a53a0]
call fcn.140013fa0
mov rax, qword [rsp + 0x160]
mov rdx, qword [rsp + 0x1d8]
movzx r9d, byte [rdx + 0x14]
and r9d, 8
mov byte [rax + 0x14], r9b
mov rbx, qword [rsp + 0x60]
xor ecx, ecx
xor edi, edi
xor esi, esi
mov r8d, esi
mov rax, qword [rsp + 0x120]
call fcn.1400adb00
nop
call fcn.140057580
mov rdi, qword [rsp + 0x160]
mov dword [rdi + 0x28], eax
mov rbx, qword [rsp + 0x1d8]
mov edx, dword [rbx + 0x10]
xor eax, eax
jmp 0x1400b9620
imul edx, edx, 0x1000193
xor edx, 0x5b
mov eax, 1
nop
cmp rax, 1
jl 0x1400b9611
mov dword [rdi + 0x10], edx
mov rax, qword [rsp + 0x1c8]
mov rcx, rax
jmp 0x1400b9640
mov dword [rdi + 0x10], edx
shr eax, 8
nop dword [rax]
test eax, eax
jbe 0x1400b964e
mov edx, dword [rdi + 0x10]
xor esi, esi
jmp 0x1400b9e0b
mov edx, dword [rdi + 0x10]
xor eax, eax
jmp 0x1400b9663
imul edx, edx, 0x1000193
xor edx, 0x5d
mov eax, 1
cmp rax, 1
jl 0x1400b9655
mov dword [rdi + 0x10], edx
cmp dword [0x140c37b50], 0
jne 0x1400b967b
mov qword [rdi + 0x30], rbx
jmp 0x1400b968d
lea rdx, [rdi + 0x30]
mov rax, rdi
mov rdi, rdx
call fcn.14005c460
mov rdi, rax
mov dword [rdi + 0x2c], 0
mov rdx, qword [rbx]
test rdx, rdx
jbe 0x1400b96b5
mov rax, 0xffffffffffffffff
mov rsi, rdx
xor edx, edx
div rsi
cmp rax, rcx
jae 0x1400b96b8
jmp 0x1400b9de0
mov rsi, rdx
imul rsi, rcx
mov qword [rdi], rsi
nop
test rcx, rcx
jle 0x1400b96e0
mov rdx, qword [rbx + 8]
test rdx, rdx
je 0x1400b96e0
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 + 0x158]
call fcn.1400b52c0
mov rcx, qword [0x14098bcb0]
lea rdx, [0x14098bca8]
cmp rax, rdx
jne 0x1400b9dcf
cmp dword [0x140c37b50], 0
jne 0x1400b972d
mov rdi, qword [rsp + 0x160]
mov qword [rdi + 0x38], rbx
jmp 0x1400b9748
mov rdi, qword [rsp + 0x160]
lea rdx, [rdi + 0x38]
mov rax, rdi
mov rdi, rdx
nop
call fcn.14005c460
mov rdi, rax
mov rdx, qword [rsp + 0x1d8]
cmp qword [rdx + 8], 0
je 0x1400b997b
mov rsi, qword [rdi]
nop
test rsi, rsi
je 0x1400b997b
mov r8, qword [rsp + 0x1c8]
cmp r8, 1
je 0x1400b993c
movzx r9d, byte [rdx + 0x17]
test r9b, 0x40
jne 0x1400b9854
cmp rsi, 0x20000
ja 0x1400b9854
mov rcx, qword [rdi + 8]
shr rcx, 3
add rcx, 7
shr rcx, 3
add rcx, 7
and rcx, 0xfffffffffffffff8
mov qword [rsp + 0x58], rcx
lea rax, [0x140816260]
mov rbx, rcx
nop
call fcn.140044820
mov qword [rsp + 0x150], rax
mov rdx, qword [rsp + 0x160]
mov r8, qword [rdx + 0x40]
mov rbx, qword [rsp + 0x58]
mov rcx, rbx
xor edi, edi
mov rsi, qword [rsp + 0x1d8]
call fcn.1400b4e60
mov rdx, qword [rsp + 0x58]
test rdx, rdx
jbe 0x1400b9dc5
cmp dword [0x140c37b50], 0
jne 0x1400b981d
mov rcx, qword [rsp + 0x150]
mov rdi, qword [rsp + 0x160]
mov qword [rdi + 0x20], rcx
jmp 0x1400b983f
mov rdi, qword [rsp + 0x160]
lea rcx, [rdi + 0x20]
mov rax, rdi
mov rdi, rcx
mov rdx, qword [rsp + 0x150]
call fcn.14005c440
mov rdi, rax
mov rdx, qword [rsp + 0x1d8]
mov r8, qword [rsp + 0x1c8]
jmp 0x1400b99b2
lea rax, [0x140819bc0]
nop dword [rax + rax]
call fcn.14000daa0
mov ebx, 4
mov rcx, rbx
mov rdi, qword [rsp + 0x1d8]
call fcn.1400b4fc0
mov rdx, qword [rsp + 0x1d8]
mov rsi, qword [rdx + 8]
shr rsi, 3
mov rdi, qword [rdx]
shr rdi, 3
mov qword [rsp + 0x88], rdi
nop dword [rax]
cmp rdi, rsi
jbe 0x1400b9b20
mov qword [rsp + 0x80], rsi
add rbx, 2
cmp rcx, rbx
jae 0x1400b98e3
mov edi, 2
lea rsi, [0x140816260]
call fcn.140044900
mov rdx, qword [rsp + 0x1d8]
mov rsi, qword [rsp + 0x80]
mov rdi, qword [rsp + 0x88]
mov word [rbx + rax - 2], 1
lea r8, [rsi + 1]
cmp rdi, r8
jbe 0x1400b9b20
inc rbx
cmp rcx, rbx
jae 0x1400b9928
mov edi, 1
lea rsi, [0x140816260]
call fcn.140044900
mov rdx, qword [rsp + 0x1d8]
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 0x1400b9d48
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 [0x140c37b50], 0
jne 0x1400b995f
mov qword [rdi + 0x20], rcx
jmp 0x1400b9971
lea rsi, [rdi + 0x20]
mov rax, rdi
mov rdi, rsi
call fcn.14005c420
mov rdi, rax
mov rcx, qword [rdx + 8]
mov qword [rdi + 8], rcx
jmp 0x1400b99b2
cmp dword [0x140c37b50], 0
jne 0x1400b998e
mov qword [rdi + 0x20], 0
jmp 0x1400b99a2
lea rcx, [rdi + 0x20]
mov rax, rdi
mov rdi, rcx
xor esi, esi
call fcn.14005c480
mov rdi, rax
mov qword [rdi + 8], 0
mov r8, qword [rsp + 0x1c8]
nop
lea rcx, [rdi + 0x18]
mov rsi, qword [rdx]
cmp dword [0x140c37b50], 0
jne 0x1400b99cd
mov qword [rdi + 0x18], 0
jmp 0x1400b99de
mov rax, rdi
mov rdi, rcx
xor r9d, r9d
call fcn.14005c4c0
mov rdi, rax
mov r9, qword [rdx + 0x18]
test r9, r9
je 0x1400b9a87
mov qword [rsp + 0x50], rsi
mov qword [rsp + 0x148], rcx
mov qword [rsp + 0x128], r9
lea rax, [0x14089d080]
call fcn.14000daa0
lea rcx, [0x1400b9ea0]
mov qword [rax], rcx
mov rcx, qword [rsp + 0x1c8]
mov qword [rax + 8], rcx
mov rdx, qword [rsp + 0x50]
mov qword [rax + 0x10], rdx
cmp dword [0x140c37b50], 0
jne 0x1400b9a4e
mov rdx, qword [rsp + 0x128]
mov qword [rax + 0x18], rdx
mov rdx, qword [rsp + 0x160]
mov qword [rdx + 0x18], rax
jmp 0x1400b9a74
lea rdi, [rax + 0x18]
mov rdx, qword [rsp + 0x128]
call fcn.14005c440
mov rdi, qword [rsp + 0x148]
call fcn.14005c320
mov rdx, qword [rsp + 0x160]
mov rdx, qword [rsp + 0x1d8]
mov rdi, qword [rsp + 0x160]
mov r8, rcx
cmp r8, 1
jne 0x1400b9aa3
nop
movzx ecx, byte [rdx + 0x17]
test cl, 0x20
je 0x1400b9aa3
movzx ecx, byte [rdi + 0x17]
or ecx, 0x20
mov byte [rdi + 0x17], cl
jmp 0x1400b9aad
movzx ecx, byte [rdi + 0x17]
and ecx, 0xffffffdf
mov byte [rdi + 0x17], cl
lea rax, [0x1408a5520]
lea rbx, [rsp + 0x178]
nop dword [rax]
call fcn.14000b220
lea rbx, [0x1408a5520]
mov rcx, rax
lea rdi, [0x1408c28c0]
mov rsi, qword [rsp + 0x160]
lea rax, [0x140be1d60]
call fcn.14006dbc0
mov qword [rsp + 0x138], rbx
mov rcx, rax
lea rax, [0x1408b7b40]
mov rbx, rcx
nop
call fcn.14000b800
mov rbx, qword [rsp + 0x138]
mov rbp, qword [rsp + 0x1b8]
add rsp, 0x1c0
ret
cmp rdi, 0x80
jae 0x1400b9b65
inc rbx
cmp rcx, rbx
jae 0x1400b9b55
mov edi, 1
lea rsi, [0x140816260]
nop dword [rax]
call fcn.140044900
mov rdx, qword [rsp + 0x1d8]
mov rdi, qword [rsp + 0x88]
bts rdi, 7
mov byte [rbx + rax - 1], dil
nop
jmp 0x1400b9c10
inc rbx
cmp rcx, rbx
jae 0x1400b9b8e
mov edi, 1
lea rsi, [0x140816260]
call fcn.140044900
mov rdx, qword [rsp + 0x1d8]
mov rdi, qword [rsp + 0x88]
mov byte [rbx + rax - 1], pe_nt_image_headers64
nop
jmp 0x1400b9baa
mov r8, rdi
bts rdi, 7
mov byte [rbx + rax - 1], dil
shr r8, 7
mov rdi, r8
mov qword [rsp + 0x70], rdi
cmp rdi, 0x80
jb 0x1400b9be5
inc rbx
nop dword [rax + rax]
cmp rcx, rbx
jae 0x1400b9b96
mov edi, 1
lea rsi, [0x140816260]
call fcn.140044900
mov rdx, qword [rsp + 0x1d8]
mov rdi, qword [rsp + 0x70]
jmp 0x1400b9b96
inc rbx
cmp rcx, rbx
jae 0x1400b9c0b
mov edi, 1
lea rsi, [0x140816260]
call fcn.140044900
mov rdx, qword [rsp + 0x1d8]
mov rdi, qword [rsp + 0x70]
mov byte [rbx + rax - 1], dil
nop
mov r8, qword [rsp + 0x1c8]
lea r9, [r8 - 1]
jmp 0x1400b9c33
mov r10, r9
bts r9, 7
mov byte [rbx + rax - 1], r9b
shr r10, 7
mov r9, r10
mov qword [rsp + 0x68], r9
nop dword [rax + rax]
cmp r9, 0x80
jb 0x1400b9c7c
inc rbx
cmp rcx, rbx
jae 0x1400b9c1f
mov edi, 1
lea rsi, [0x140816260]
nop dword [rax]
call fcn.140044900
mov rdx, qword [rsp + 0x1d8]
mov r8, qword [rsp + 0x1c8]
mov r9, qword [rsp + 0x68]
jmp 0x1400b9c1f
inc rbx
nop
cmp rcx, rbx
jae 0x1400b9cab
mov edi, 1
lea rsi, [0x140816260]
call fcn.140044900
mov rdx, qword [rsp + 0x1d8]
mov r8, qword [rsp + 0x1c8]
mov r9, qword [rsp + 0x68]
mov byte [rbx + rax - 1], r9b
inc rbx
cmp rcx, rbx
jae 0x1400b9cd9
mov edi, 1
lea rsi, [0x140816260]
call fcn.140044900
mov rdx, qword [rsp + 0x1d8]
mov r8, qword [rsp + 0x1c8]
mov byte [rbx + rax - 1], 0
nop
test rbx, rbx
jbe 0x1400b9d2a
lea rcx, [rbx - 4]
mov dword [rax], ecx
mov rdi, qword [rsp + 0x160]
movzx ecx, byte [rdi + 0x17]
or ecx, 0x40
mov byte [rdi + 0x17], cl
cmp dword [0x140c37b50], 0
jne 0x1400b9d0c
mov qword [rdi + 0x20], rax
jmp 0x1400b9d1e
lea rcx, [rdi + 0x20]
mov rbx, rdi
mov rdi, rcx
call fcn.14005c320
mov rdi, rbx
mov rcx, qword [rdi]
mov qword [rdi + 8], rcx
jmp 0x1400b99b2
xor eax, eax
mov rcx, rax
call fcn.14005c7c0
mov r10, r9
bts r9, 7
mov byte [rbx + rax - 1], r9b
shr r10, 7
mov r9, r10
mov qword [rsp + 0x78], r9
cmp r9, 0x80
jb 0x1400b9d86
inc rbx
cmp rcx, rbx
jae 0x1400b9d34
mov edi, 1
lea rsi, [0x140816260]
call fcn.140044900
mov rdx, qword [rsp + 0x1d8]
mov r8, qword [rsp + 0x88]
mov r9, qword [rsp + 0x78]
jmp 0x1400b9d34
inc rbx
cmp rcx, rbx
jae 0x1400b9db4
mov edi, 1
lea rsi, [0x140816260]
call fcn.140044900
mov rdx, qword [rsp + 0x1d8]
mov r8, qword [rsp + 0x88]
mov r9, qword [rsp + 0x78]
mov byte [rbx + rax - 1], r9b
mov rdi, r8
nop dword [rax]
jmp 0x1400b9b20
xor eax, eax
mov rcx, rax
call fcn.14005c7c0
mov rbx, rcx
lea rcx, [0x1408b7b40]
call fcn.14000b140
nop
call fcn.1400d79c0
call fcn.14000b4a0
mov rbx, rax
lea rax, [0x1408160a0]
call fcn.140032ec0
imul edx, edx, 0x1000193
movzx r8d, al
xor edx, r8d
mov esi, 1
cmp rsi, 1
jl 0x1400b9df9
jmp 0x1400b9636
mov rax, rbx
mov rbx, rdx
lea rcx, [0x1408b7b40]
call fcn.14000b140
movzx edx, byte [rsp + rax + 0xde]
movzx esi, byte [rsp + rax + 0xb4]
sub esi, edx
mov byte [rsp + rax + 0xb4], sil
inc rax
cmp rax, 0x2a
jl 0x1400b9e28
xor eax, eax
lea rbx, [rsp + 0xb4]
mov ecx, 0x2a
call fcn.140047e60
nop
call fcn.14000b4a0
mov rbx, rax
lea rax, [0x1408160a0]
call fcn.140032ec0
nop
mov qword [rsp + 8], rax
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rcx
call fcn.14005a140
mov rax, qword [rsp + 8]
mov rbx, qword [rsp + 0x10]
mov rcx, qword [rsp + 0x18]
jmp fcn.1400b9220