Function at 0x140030b90
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 0x140030e01
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.140027ba0
test al, al
je 0x140030d79
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.1400310c0
mov r14, rax
test rax, rax
je 0x140030d79
lea rcx, [rax + 0x10]
mov rdx, rsi
cmp qword [rsi + 0x18], 0xf
jbe 0x140030c21
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 0x140030d79
mov rax, qword [0x1401ac660]
test byte [rax + 0x68], 0x10
ja 0x140030d61
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 0x140030cf0
mov rcx, qword [rcx]
cmp edi, dword [rax + 0x10]
je 0x140030cf2
nop dword [rax + rax]
cmp rax, rcx
je 0x140030cf0
mov rax, qword [rax + 8]
cmp edi, dword [rax + 0x10]
jne 0x140030ce0
jmp 0x140030cf2
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 + Ordinal_17]
mov rbx, rax
mov qword [rsp + 0x50], rax
mov rcx, rax
call sub.MSVCP140.dll__Mtx_lock
test eax, eax
jne 0x140030e28
mov eax, dword [rbx + 0x4c]
cmp eax, 0x7fffffff
je 0x140030e18
lea r8, [r15 + 0x2a0]
lea r9, str.logFlushThreshold
mov edx, edi
mov rcx, r15
call fcn.140028a30
mov rdi, rax
mov rcx, rbx
call sub.MSVCP140.dll__Mtx_unlock
mov ecx, dword [r12 + 0x14]
cmp rcx, rdi
jb 0x140030d79
mov rax, qword [rbp + 0xf0]
mov rcx, qword [rax]
mov r8, r14
mov edx, dword [rcx]
mov rcx, qword [rcx + 0x58]
call fcn.1400312e0
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.140027ba0
test al, al
je 0x140030e01
mov rax, qword [0x1401ac660]
test byte [rax + 0x68], 0x40
jbe 0x140030dd4
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.14002ffb0
mov r8, qword [rsi + 0x10]
cmp qword [rsi + 0x18], 0xf
jbe 0x140030de2
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.14000bfa0
lea rdx, [0x140027af0]
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