Function at 0x14002b130
Capabilities:
Hash data using fnv

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rbp
push rsi
push rdi
push r12
push r14
push r15
sub rsp, 0x20
mov rsi, rdx
mov rbp, rcx
mov rdx, qword [rcx + 0xf0]
cmp dword [rdx + 8], 2
jne 0x14002b3a1
mov rdx, qword [rdx]
mov rax, qword [rdx + 0x58]
mov rcx, qword [rax + 0x80]
lea r8, [rcx + 0xa0]
lea r9, str.toFile
mov edx, dword [rdx]
call fcn.140020ab0
test al, al
je 0x14002b319
mov rax, qword [rbp + 0xf0]
mov rdx, qword [rax]
mov rax, qword [rdx + 0x58]
mov edx, dword [rdx]
mov rcx, qword [rax + 0x80]
call fcn.14002b660
mov r14, rax
test rax, rax
je 0x14002b319
lea rcx, [rax + 0x10]
mov rdx, rsi
cmp qword [rsi + 0x18], 0xf
jbe 0x14002b1c1
mov rdx, qword [rsi]
mov r8, qword [rsi + 0x10]
call qword [sym.imp.MSVCP140.dll_public:_class_std::basic_ostream_char__struct_std::char_traits_char______ptr64___cdecl_std::basic_ostream_char__struct_std::char_traits_char__::write_char_const____ptr64__long_long___int64_____ptr64]
mov rax, qword [r14]
movsxd rcx, dword [rax + 4]
add rcx, r14
call qword [sym.imp.MSVCP140.dll_public:_bool___cdecl_std::ios_base::fail_void_const___ptr64]
test al, al
jne 0x14002b319
mov rax, qword [0x14009a7f8]
test byte [rax + 0x68], 0x10
ja 0x14002b301
mov rax, qword [rbp + 0xf0]
mov rcx, qword [rax]
mov r15, qword [rcx + 0x58]
mov edi, dword [rcx]
mov eax, edi
shr eax, 8
movzx edx, al
movzx eax, dil
movabs rcx, 0xcbf29ce484222325
xor rax, rcx
movabs r8, 0x100000001b3
imul rax, r8
xor rdx, rax
imul rdx, r8
mov eax, edi
shr eax, 0x10
movzx ecx, al
xor rdx, rcx
imul rdx, r8
mov eax, edi
shr rax, 0x18
xor rdx, rax
imul rdx, r8
mov rcx, qword [r15 + 0x270]
and rcx, rdx
shl rcx, 4
add rcx, qword [r15 + 0x258]
mov rax, qword [rcx + 8]
mov r12, qword [r15 + 0x248]
cmp rax, r12
je 0x14002b290
mov rcx, qword [rcx]
cmp edi, dword [rax + 0x10]
je 0x14002b292
nop dword [rax + rax]
cmp rax, rcx
je 0x14002b290
mov rax, qword [rax + 8]
cmp edi, dword [rax + 0x10]
jne 0x14002b280
jmp 0x14002b292
xor eax, eax
test rax, rax
cmovne r12, rax
inc dword [r12 + 0x14]
mov r15, qword [r15 + 0x80]
mov rax, qword [r15]
mov rcx, r15
call qword [rax + 0x10]
mov rbx, rax
mov qword [rsp + 0x50], rax
mov rcx, rax
call sub.MSVCP140.dll__Mtx_lock
test eax, eax
jne 0x14002b3c8
mov eax, dword [rbx + 0x4c]
cmp eax, 0x7fffffff
je 0x14002b3b8
lea r8, [r15 + 0x2a0]
lea r9, str.logFlushThreshold
mov edx, edi
mov rcx, r15
call fcn.140021940
mov rdi, rax
mov rcx, rbx
call fcn.140072c8b
mov ecx, dword [r12 + 0x14]
cmp rcx, rdi
jb 0x14002b319
mov rax, qword [rbp + 0xf0]
mov rcx, qword [rax]
mov r8, r14
mov edx, dword [rcx]
mov rcx, qword [rcx + 0x58]
call fcn.14002b880
mov rax, qword [rbp + 0xf0]
mov rdx, qword [rax]
mov rax, qword [rdx + 0x58]
mov rcx, qword [rax + 0x80]
lea r8, [rcx + 0x120]
lea r9, str.toStandardOutput
mov edx, dword [rdx]
call fcn.140020ab0
test al, al
je 0x14002b3a1
mov rax, qword [0x14009a7f8]
test byte [rax + 0x68], 0x40
jbe 0x14002b374
mov rax, qword [rbp + 0xf0]
mov r8, qword [rax]
mov rcx, qword [r8 + 0x58]
mov r8d, dword [r8]
mov rdx, rsi
mov rcx, qword [rcx + 0x290]
call fcn.14002a4a0
mov r8, qword [rsi + 0x10]
cmp qword [rsi + 0x18], 0xf
jbe 0x14002b382
mov rsi, qword [rsi]
mov rdx, rsi
mov rcx, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
call fcn.14001ddd0
lea rdx, [0x140020a00]
mov rcx, rax
call qword [sym.imp.MSVCP140.dll_public:_class_std::basic_ostream_char__struct_std::char_traits_char______ptr64___cdecl_std::basic_ostream_char__struct_std::char_traits_char__::operator___class_std::basic_ostream_char__struct_std::char_traits_char______ptr64____cdecl___class_std::basic_ostream_char__struct_std::char_traits_char______ptr64_____ptr64]
mov rbx, qword [rsp + 0x58]
mov rbp, qword [rsp + 0x60]
add rsp, 0x20
pop r15
pop r14
pop r12
pop rdi
pop rsi
ret
dec eax
mov dword [rbx + 0x4c], eax
mov ecx, 6
call sub.MSVCP140.dll_void___cdecl_std::_Throw_Cpp_error_int_
int3
mov ecx, 5
call sub.MSVCP140.dll_void___cdecl_std::_Throw_Cpp_error_int_
int3