Function at 0x14008d040
Capabilities:
Access peb ldr_data
Encode data using xor
Hash data using fnv
Resolve function by parsing pe exports

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 8], rcx
push rsi
push rdi
push r12
push r14
push r15
sub rsp, 0x30
movzx r12d, dl
mov rsi, rcx
xor ebx, ebx
mov dword [rsp + 0x70], ebx
mov r15, rcx
mov qword [rsp + 0x20], rcx
mov rax, qword [rcx]
movsxd rcx, dword [rax + 4]
add rcx, r15
call qword [sym.imp.MSVCP140.dll_public:_class_std::basic_streambuf_char__struct_std::char_traits_char______ptr64___cdecl_std::basic_ios_char__struct_std::char_traits_char__::rdbuf_void_const___ptr64]
test rax, rax
je 0x140074daa
mov rdx, qword [rax]
mov rcx, rax
call qword [rdx + reloc.WS2_32.dll_htonl]
nop
mov rax, qword [rsi]
movsxd rcx, dword [rax + 4]
add rcx, rsi
call qword [sym.imp.MSVCP140.dll_public:_bool___cdecl_std::ios_base::good_void_const___ptr64]
test al, al
je 0x140074df5
mov rax, qword [rsi]
movsxd rcx, dword [rax + 4]
add rcx, rsi
call qword [sym.imp.MSVCP140.dll_public:_class_std::basic_ostream_char__struct_std::char_traits_char______ptr64___cdecl_std::basic_ios_char__struct_std::char_traits_char__::tie_void_const___ptr64]
test rax, rax
je 0x140074df3
cmp rax, rsi
je 0x140074df3
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__::flush_void____ptr64]
mov rax, qword [rsi]
movsxd rcx, dword [rax + 4]
add rcx, rsi
call qword [sym.imp.MSVCP140.dll_public:_bool___cdecl_std::ios_base::good_void_const___ptr64]
jmp 0x140074df5
mov al, 1
mov byte [rsp + 0x28], al
test al, al
je 0x140074f2e
mov rax, qword [rsi]
movsxd rcx, dword [rax + 4]
add rcx, rsi
call qword [sym.imp.MSVCP140.dll_public:_long_long___int64____cdecl_std::ios_base::width_void_const___ptr64]
cmp rax, 1
jg 0x140074e1c
mov r14, rbx
jmp 0x140074e30
mov rax, qword [rsi]
movsxd rcx, dword [rax + 4]
add rcx, rsi
call qword [sym.imp.MSVCP140.dll_public:_long_long___int64____cdecl_std::ios_base::width_void_const___ptr64]
lea r14, [rax - 1]
mov rcx, qword [rsi]
movsxd rcx, dword [rcx + 4]
add rcx, rsi
call qword [sym.imp.MSVCP140.dll_public:_int___cdecl_std::ios_base::flags_void_const___ptr64]
and eax, 0x1c0
cmp eax, 0x40
je 0x140074ea2
nop word [rax + rax]
test ebx, ebx
jne 0x140074f1e
test r14, r14
jle 0x140074ea2
mov rax, qword [rsi]
movsxd rcx, dword [rax + 4]
add rcx, rsi
call qword [sym.imp.MSVCP140.dll_public:_class_std::basic_streambuf_char__struct_std::char_traits_char______ptr64___cdecl_std::basic_ios_char__struct_std::char_traits_char__::rdbuf_void_const___ptr64]
mov rdi, rax
mov rcx, qword [rsi]
movsxd rcx, dword [rcx + 4]
add rcx, rsi
call qword [sym.imp.MSVCP140.dll_public:_char___cdecl_std::basic_ios_char__struct_std::char_traits_char__::fill_void_const___ptr64]
movzx edx, al
mov rcx, rdi
call qword [sym.imp.MSVCP140.dll_public:_int___cdecl_std::basic_streambuf_char__struct_std::char_traits_char__::sputc_char____ptr64]
dec r14
mov ecx, ebx
or ecx, 4
cmp eax, 0xffffffff
cmovne ecx, ebx
mov ebx, ecx
mov dword [rsp + 0x70], ecx
jmp 0x140074e50
mov rax, qword [rsi]
movsxd rcx, dword [rax + 4]
add rcx, rsi
call qword [sym.imp.MSVCP140.dll_public:_class_std::basic_streambuf_char__struct_std::char_traits_char______ptr64___cdecl_std::basic_ios_char__struct_std::char_traits_char__::rdbuf_void_const___ptr64]
movzx edx, r12b
mov rcx, rax
call qword [sym.imp.MSVCP140.dll_public:_int___cdecl_std::basic_streambuf_char__struct_std::char_traits_char__::sputc_char____ptr64]
mov ecx, 4
cmp eax, 0xffffffff
cmove ebx, ecx
mov dword [rsp + 0x70], ebx
nop
test ebx, ebx
jne 0x140074f1e
test r14, r14
jle 0x140074f1e
mov rax, qword [rsi]
movsxd rcx, dword [rax + 4]
add rcx, rsi
call qword [sym.imp.MSVCP140.dll_public:_class_std::basic_streambuf_char__struct_std::char_traits_char______ptr64___cdecl_std::basic_ios_char__struct_std::char_traits_char__::rdbuf_void_const___ptr64]
mov rdi, rax
mov rcx, qword [rsi]
movsxd rcx, dword [rcx + 4]
add rcx, rsi
call qword [sym.imp.MSVCP140.dll_public:_char___cdecl_std::basic_ios_char__struct_std::char_traits_char__::fill_void_const___ptr64]
movzx edx, al
mov rcx, rdi
call qword [sym.imp.MSVCP140.dll_public:_int___cdecl_std::basic_streambuf_char__struct_std::char_traits_char__::sputc_char____ptr64]
dec r14
mov ecx, ebx
or ecx, 4
cmp eax, 0xffffffff
cmovne ecx, ebx
mov ebx, ecx
mov dword [rsp + 0x70], ecx
jmp 0x140074ed0
jmp 0x140074f2e
mov rax, qword [rsi]
movsxd rcx, dword [rax + 4]
add rcx, rsi
xor edx, edx
call qword [sym.imp.MSVCP140.dll_public:_long_long___int64____cdecl_std::ios_base::width_long_long___int64_____ptr64]
mov rax, qword [rsi]
movsxd rcx, dword [rax + 4]
add rcx, rsi
xor r8d, r8d
mov edx, ebx
call qword [sym.imp.MSVCP140.dll_public:_void___cdecl_std::basic_ios_char__struct_std::char_traits_char__::setstate_int__bool____ptr64]
nop
call sub.MSVCP140.dll_int___cdecl_std::uncaught_exceptions_void_
test eax, eax
jne 0x140074f69
mov rcx, r15
call qword [sym.imp.MSVCP140.dll_public:_void___cdecl_std::basic_ostream_char__struct_std::char_traits_char__::_Osfx_void____ptr64]
nop
mov rax, qword [r15]
movsxd rcx, dword [rax + 4]
add rcx, r15
call qword [sym.imp.MSVCP140.dll_public:_class_std::basic_streambuf_char__struct_std::char_traits_char______ptr64___cdecl_std::basic_ios_char__struct_std::char_traits_char__::rdbuf_void_const___ptr64]
test rax, rax
je 0x140074f88
mov rdx, qword [rax]
mov rcx, rax
call qword [rdx + reloc.WS2_32.dll_recv]
nop
mov rax, rsi
mov rbx, qword [rsp + 0x68]
add rsp, 0x30
pop r15
pop r14
pop r12
pop rdi
pop rsi
ret
mov qword [rsp + 8], rbx
push rdi
sub rsp, 0x20
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
nop dword [rax + rax]
mov r10, qword [rax + 0x30]
movsxd rcx, dword [r10 + 0x3c]
mov ebx, dword [rcx + r10 + 0x88]
add rbx, r10
cmp rbx, r10
je 0x14008d0d7
mov r9d, dword [rbx + 0x18]
test r9d, r9d
je 0x14008d0d7
mov edi, dword [rbx + 0x20]
nop dword [rax]
nop dword [rax + rax]
dec r9d
mov r8d, 0x811c9dc5
lea rcx, [rdi + r9*4]
mov ecx, dword [rcx + r10]
add rcx, r10
movzx edx, byte [rcx]
inc rcx
test dl, dl
je 0x14008d0d2
nop
movsx edx, dl
lea rcx, [rcx + 1]
xor edx, r8d
imul r8d, edx, 0x1000193
movzx edx, byte [rcx - 1]
test dl, dl
jne 0x14008d0b0
cmp r8d, 0xbc0e3315
je 0x14008d0dc
test r9d, r9d
jne 0x14008d090
mov rax, qword [rax]
jmp 0x14008d060
mov ecx, dword [rbx + 0x24]
add rcx, r10
movzx edx, word [rcx + r9*2]
mov ecx, dword [rbx + 0x1c]
add rcx, r10
mov eax, dword [rcx + rdx*4]
mov edx, 2
mov rcx, qword [0x1404098a8]
add rax, r10
call rax
mov rcx, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
lea rdx, str._n__________________________________________________________________n_______________________________________________________n_____________________________________________________n_______________________________________________________n_____________________________________________________n______________________________________________________n______________________________n
call fcn.140072810
mov rcx, rax
mov dl, 0xa
mov rbx, qword [rsp + 0x30]
add rsp, 0x20
pop rdi
jmp 0x140074d60