Function at 0x140036320
Capabilities:
Hash data using fnv

Disassembly:
push rbp
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbx
sub rsp, 0x8d8
lea rbp, [rsp + 0x80]
movaps xmmword [rbp + 0x840], xmm6
mov qword [rbp + 0x838], 0xfffffffffffffffe
mov rdi, rcx
movabs rax, 0x93125ed497d99e6d
mov qword [rbp - 0x50], rax
mov rax, qword [rbp - 0x50]
mov qword [rbp + 0x810], rax
movabs r15, 0x81e858d41f85aa0
mov qword [rbp - 0x50], r15
mov rax, qword [rbp - 0x50]
mov qword [rbp + 0x818], rax
movabs r12, 0x93125e8897b59e03
mov qword [rbp - 0x50], r12
mov rax, qword [rbp - 0x50]
mov qword [rbp - 0x50], rax
mov qword [rbp + 0x680], r15
mov rax, qword [rbp + 0x680]
mov qword [rbp - 0x48], rax
lea rax, [rbp - 0x50]
mov qword [rbp + 0x680], rax
mov rax, qword [rbp + 0x680]
movaps xmm0, xmmword [rbp + 0x810]
xorps xmm0, xmmword [rax]
movaps xmmword [rbp + 0x810], xmm0
mov dword [rbp + 0x7f0], 0
mov eax, dword [0x1406b5590]
mov ecx, dword [0x1406b55b0]
mov rdx, qword gs:[0x58]
mov rcx, qword [rdx + rcx*8]
cmp eax, dword [rcx + 4]
jg 0x140036c13
lea rax, str.Ht7_
mov qword [rbp + 0x7f8], rax
lea rcx, [rbp + 0x680]
lea rbx, [rbp + 0x7f0]
mov rdx, rbx
call fcn.14003abb0
cmp dword [rbp + 0x7f0], 0
jne 0x140036c49
lea rcx, [rbp + 0x680]
lea r14, [rbp - 0x50]
mov rdx, r14
call fcn.140040c30
lea rsi, [rbp + 0x810]
mov rcx, rsi
call fcn.14035e25c
mov rcx, qword [rbp - 0x40]
mov rdx, qword [rbp - 0x38]
mov r8, rdx
sub r8, rcx
cmp r8, rax
jae 0x14003647f
mov qword [rsp + 0x20], rax
lea rcx, [rbp - 0x50]
lea r9, [rbp + 0x810]
mov rdx, rax
call fcn.14003fae0
mov r14, rax
jmp 0x1400364c7
mov r15, rsi
mov rsi, r12
lea r13, [rcx + rax]
mov qword [rbp - 0x40], r13
mov r12, r14
cmp rdx, 8
jb 0x14003649a
mov r12, qword [rbp - 0x50]
lea rcx, [r12 + rcx*2]
add rax, rax
lea rdx, [rbp + 0x810]
mov r8, rax
call fcn.14033b090
mov word [r12 + r13*2], 0
mov r12, rsi
mov rsi, r15
movabs r15, 0x81e858d41f85aa0
movups xmm0, xmmword [r14]
movups xmm1, xmmword [r14 + 0x10]
movaps xmmword [rbp + 0x800], xmm1
movaps xmmword [rbp + 0x7f0], xmm0
mov qword [r14 + 0x10], 0
mov qword [r14 + 0x18], 7
mov word [r14], 0
mov rax, qword [rbp - 0x38]
cmp rax, 8
jb 0x14003653a
mov rcx, qword [rbp - 0x50]
lea rdx, [rax + rax]
add rdx, 2
cmp rdx, 0x1000
jb 0x140036535
mov r8, qword [rcx - 8]
add rcx, 0xfffffffffffffff8
sub rcx, r8
cmp rcx, 0x20
jae 0x140036c0e
add rax, rax
add rax, 0x29
mov rdx, rax
mov rcx, r8
call fcn.14016e098
mov qword [rbp - 0x40], 0
mov qword [rbp - 0x38], 7
mov word [rbp - 0x50], 0
mov rax, qword [rbp + 0x698]
cmp rax, 8
jb 0x14003659c
mov rcx, qword [rbp + 0x680]
lea rdx, [rax + rax]
add rdx, 2
cmp rdx, 0x1000
jb 0x140036597
mov r8, qword [rcx - 8]
add rcx, 0xfffffffffffffff8
sub rcx, r8
cmp rcx, 0x20
jae 0x140036c0e
add rax, rax
add rax, 0x29
mov rdx, rax
mov rcx, r8
call fcn.14016e098
mov rax, qword [rbp + 0x800]
cmp qword [rbp + 0x808], 8
jb 0x1400365b4
mov rbx, qword [rbp + 0x7f0]
mov qword [rbp + 0x680], rbx
mov qword [rbp + 0x688], rax
lea r14, [rbp - 0x50]
lea rbx, [rbp + 0x680]
mov rcx, r14
mov rdx, rbx
call fcn.140045490
cmp qword [rbp - 0x38], 8
jb 0x1400365e3
mov r14, qword [rbp - 0x50]
mov rcx, r14
call fcn.14017008c
shr rax, 0x20
jne 0x140036c63
mov rax, qword [rbp - 0x38]
cmp rax, 8
jb 0x14003663b
mov rcx, qword [rbp - 0x50]
lea rdx, [rax + rax]
add rdx, 2
cmp rdx, 0x1000
jb 0x140036636
mov r8, qword [rcx - 8]
add rcx, 0xfffffffffffffff8
sub rcx, r8
cmp rcx, 0x20
jae 0x140036c0e
add rax, rax
add rax, 0x29
mov rdx, rax
mov rcx, r8
call fcn.14016e098
movabs rax, 0xf67e27fce4eaf26d
mov qword [rbp - 0x50], rax
mov rax, qword [rbp - 0x50]
mov qword [rbp + 0x680], rax
mov qword [rbp - 0x50], r15
mov rax, qword [rbp - 0x50]
mov qword [rbp + 0x688], rax
mov qword [rbp - 0x50], r12
mov rax, qword [rbp - 0x50]
mov qword [rbp - 0x50], rax
mov qword [rbp + 0x810], r15
mov rax, qword [rbp + 0x810]
mov qword [rbp - 0x48], rax
lea rax, [rbp - 0x50]
mov qword [rbp + 0x810], rax
mov rax, qword [rbp + 0x810]
movaps xmm0, xmmword [rbp + 0x680]
xorps xmm0, xmmword [rax]
movaps xmmword [rbp + 0x680], xmm0
mov qword [rbp + 0x790], rbx
mov rcx, rbx
call fcn.14035cc10
mov qword [rbp + 0x798], rax
lea r14, [rbp - 0x50]
lea rdx, [rbp + 0x790]
mov rcx, r14
call fcn.14005bc60
mov rbx, qword [rbp + 0x800]
cmp qword [rbp + 0x808], 8
jb 0x1400366e7
mov r15, qword [rbp + 0x7f0]
jmp 0x1400366ee
lea r15, [rbp + 0x7f0]
mov rax, qword [rbp - 0x40]
mov rcx, qword [rbp - 0x38]
mov rdx, rcx
sub rdx, rax
cmp rdx, rbx
jae 0x14003671c
mov qword [rsp + 0x28], rbx
mov qword [rsp + 0x20], r15
lea rcx, [rbp - 0x50]
mov rdx, rbx
xor r9d, r9d
call fcn.140038f00
jmp 0x140036795
lea rdx, [rax + rbx]
mov qword [rbp - 0x40], rdx
cmp rcx, 8
jb 0x14003672e
mov r14, qword [rbp - 0x50]
lea r12, [r15 + rbx*2]
mov r13, rbx
cmp r12, r14
jbe 0x140036756
lea rcx, [r14 + rax*2]
mov r13, rbx
cmp rcx, r15
jb 0x140036756
mov r13, r14
sub r13, r15
jbe 0x140036753
sar r13, 1
jmp 0x140036756
xor r13d, r13d
lea rcx, [r14 + rbx*2]
lea r8, [rax + rax]
add r8, 2
mov rdx, r14
call fcn.14033b090
mov r8, r13
add r8, r13
mov rcx, r14
mov rdx, r15
call fcn.14033b090
sub rbx, r13
lea rdx, [r12 + r13*2]
lea rcx, [r14 + r13*2]
add rbx, rbx
mov r8, rbx
call fcn.14033b090
lea rax, [rbp - 0x50]
movups xmm0, xmmword [rax]
movups xmm1, xmmword [rax + 0x10]
movaps xmmword [rbp + 0x820], xmm1
movaps xmmword [rbp + 0x810], xmm0
mov qword [rax + 0x10], 0
mov qword [rax + 0x18], 7
mov word [rax], 0
mov rax, qword [rbp - 0x38]
cmp rax, 8
jb 0x140036805
mov rcx, qword [rbp - 0x50]
lea rdx, [rax + rax]
add rdx, 2
cmp rdx, 0x1000
jb 0x140036800
mov r8, qword [rcx - 8]
add rcx, 0xfffffffffffffff8
sub rcx, r8
cmp rcx, 0x20
jae 0x140036c0e
add rax, rax
add rax, 0x29
mov rdx, rax
mov rcx, r8
call fcn.14016e098
lea rcx, [rbp - 0x50]
call fcn.14005e0d0
mov eax, dword [rdi]
mov rcx, qword [rdi + 0x10]
mov rdx, qword [rdi + 8]
sub rcx, rdx
shr rcx, 4
imul ecx, ecx, 0x677d46cf
cmp eax, ecx
jge 0x14003683a
cdqe
imul rax, rax, 0x2f0
add rdx, rax
jmp 0x1400368c7
movzx ecx, ah
mov rdx, rax
shr rdx, 0x18
mov r8d, eax
shr r8d, 0x10
movzx r9d, al
movabs r10, 0xcbf29ce484222325
xor r10, r9
movabs r9, 0x100000001b3
imul r10, r9
xor r10, rcx
imul r10, r9
movzx r8d, r8b
xor r8, r10
imul r8, r9
xor r8, rdx
imul r8, r9
and r8, qword [rdi + 0x50]
mov rcx, qword [rdi + 0x28]
mov r9, qword [rdi + 0x38]
mov rdx, r8
shl rdx, 4
mov rdx, qword [r9 + rdx + 8]
cmp rdx, rcx
je 0x1400368d9
cmp eax, dword [rdx + 0x10]
je 0x1400368be
add r8, r8
mov r8, qword [r9 + r8*8]
nop dword [rax]
cmp rdx, r8
je 0x1400368d9
mov rdx, qword [rdx + 8]
cmp eax, dword [rdx + 0x10]
jne 0x1400368b0
cmp rdx, rcx
je 0x1400368d9
add rdx, 0x18
lea rcx, [rbp + 0x80]
mov r8d, 0x2d0
call fcn.14033b090
mov byte [rbp + 0x7e0], 0
lea rdi, [rbp + 0x7e8]
mov qword [rbp + 0x7e8], 0
mov r13d, 0xd0
lea rbx, [rbp + 0x688]
xorps xmm6, xmm6
lea r14, [rbp + 0x680]
lea r15, [rbp + 0x7a0]
lea r12, [rbp + 0x7e0]
nop word [rax + rax]
movups xmm0, xmmword [rbp + r13 - 0x50]
movaps xmmword [rbp + 0x7a0], xmm0
movaps xmmword [rbp + 0x680], xmm6
mov rcx, r14
mov rdx, r15
call fcn.14002f030
mov rcx, r12
mov rdx, r14
call fcn.14003aaa0
movzx edx, byte [rbp + 0x680]
mov rcx, rbx
call fcn.1400220c0
add r13, 0x10
cmp r13, 0x390
jne 0x140036920
xorps xmm0, xmm0
movaps xmmword [rbp + 0x7c0], xmm0
mov qword [rbp + 0x7d0], 0
mov ecx, 0x20
call fcn.14016e054
movabs rcx, 0x100000001
mov qword [rax + 8], rcx
lea rcx, vtable.std::_Ref_count_obj2_class_nlohmann::json_abi_v3_11_2::detail::output_vector_adapter_unsigned_char__class_std::allocator_unsigned_char___.0
mov qword [rax], rcx
mov rcx, rax
add rcx, 0x10
lea rdx, vtable.nlohmann::json_abi_v3_11_2::detail::output_vector_adapter_unsigned_char__class_std::allocator_unsigned_char__.0
mov qword [rax + 0x10], rdx
lea rdx, [rbp + 0x7c0]
mov qword [rax + 0x18], rdx
mov qword [rbp + 0x680], rcx
mov qword [rbp + 0x688], rax
lea rcx, [rbp + 0x7e0]
lea rdx, [rbp + 0x680]
call fcn.14003a970
mov rdx, qword [rbp + 0x7c0]
mov r8, qword [rbp + 0x7c8]
lea rbx, [rbp + 0x7a0]
mov rcx, rbx
call fcn.140030c30
cmp qword [rbp + 0x828], 8
jb 0x140036a09
mov rsi, qword [rbp + 0x810]
mov dword [rsp + 0x20], 1
lea rcx, [rbp + 0x680]
mov rdx, rsi
mov r8d, 2
mov r9d, 0x40
call fcn.140040660
mov rax, qword [rbp + 0x680]
movsxd rax, dword [rax + 4]
cmp dword [rbp + rax + 0x690], 0
jne 0x140036a7f
mov r8, qword [rbp + 0x7b0]
cmp qword [rbp + 0x7b8], 0x10
jb 0x140036a59
mov rbx, qword [rbp + 0x7a0]
lea rcx, [rbp + 0x680]
mov rdx, rbx
call fcn.1400235f0
lea rcx, [rbp + 0x680]
call fcn.140020960
mov rax, qword [rbp + 0x680]
movsxd rax, dword [rax + 4]
lea rsi, [rbp + 0x728]
lea rcx, vtable.std::basic_ofstream_char__struct_std::char_traits_char__.0
mov qword [rbp + rax + 0x680], rcx
mov rax, qword [rbp + 0x680]
movsxd rax, dword [rax + 4]
lea ecx, [rax - 0xa8]
mov dword [rbp + rax + 0x67c], ecx
lea rcx, [rbp + 0x688]
call fcn.14001b750
lea rax, vtable.std::ios_base.0
mov qword [rbp + 0x728], rax
mov rcx, rsi
call fcn.14016e680
mov rax, qword [rbp + 0x7b8]
cmp rax, 0x10
jb 0x140036b14
mov rcx, qword [rbp + 0x7a0]
lea rdx, [rax + 1]
cmp rdx, 0x1000
jb 0x140036b0f
mov r8, qword [rcx - 8]
add rcx, 0xfffffffffffffff8
sub rcx, r8
cmp rcx, 0x20
jae 0x140036c0e
add rax, 0x28
mov rdx, rax
mov rcx, r8
call fcn.14016e098
mov rcx, qword [rbp + 0x7c0]
test rcx, rcx
je 0x140036b54
mov rdx, qword [rbp + 0x7d0]
sub rdx, rcx
cmp rdx, 0x1000
jb 0x140036b4f
mov rax, qword [rcx - 8]
add rcx, 0xfffffffffffffff8
sub rcx, rax
cmp rcx, 0x20
jae 0x140036c0e
add rdx, 0x27
mov rcx, rax
call fcn.14016e098
movzx edx, byte [rbp + 0x7e0]
mov rcx, rdi
call fcn.1400220c0
mov rax, qword [rbp + 0x828]
cmp rax, 8
jb 0x140036bab
mov rcx, qword [rbp + 0x810]
lea rdx, [rax + rax]
add rdx, 2
cmp rdx, 0x1000
jb 0x140036ba6
mov r8, qword [rcx - 8]
add rcx, 0xfffffffffffffff8
sub rcx, r8
cmp rcx, 0x20
jae 0x140036c0e
add rax, rax
add rax, 0x29
mov rdx, rax
mov rcx, r8
call fcn.14016e098
mov rax, qword [rbp + 0x808]
cmp rax, 8
jb 0x140036bf3
mov rcx, qword [rbp + 0x7f0]
lea rdx, [rax + rax]
add rdx, 2
cmp rdx, 0x1000
jb 0x140036bee
mov r8, qword [rcx - 8]
add rcx, 0xfffffffffffffff8
sub rcx, r8
cmp rcx, 0x20
jae 0x140036c0e
add rax, rax
add rax, 0x29
mov rdx, rax
mov rcx, r8
call fcn.14016e098
movaps xmm6, xmmword [rbp + 0x840]
add rsp, 0x8d8
pop rbx
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
pop rbp
ret
call fcn.14034f94c
lea rcx, [0x1406b5590]
call fcn.14016e0d4
cmp dword [0x1406b5590], 0xffffffff
jne 0x1400363fc
lea rcx, [fcn.140001000]
call fcn.14016e230
lea rcx, [0x1406b5590]
call fcn.14016e188
jmp 0x1400363fc
lea rcx, str.temp_directory_path
lea rdx, [rbp + 0x7f0]
lea r8, [rbp + 0x680]
call fcn.140032150
lea rcx, [0x1403fb3ed]
lea r8, [rbp - 0x50]
mov edx, eax
call fcn.1400306b0
int3