Function at 0x140001000
Capabilities:
Connect socket
Convert ip address from string
Initialize winsock library
Receive data
Receive data on socket
Send data
Send data on socket

Disassembly:
push rbx
sub rsp, 0x5e0
mov rax, qword [0x140005008]
xor rax, rsp
mov qword [rsp + 0x5d0], rax
mov ecx, 0x202
lea rdx, [rsp + 0x30]
call qword [sym.imp.WS2_32.dll_WSAStartup]
test eax, eax
je 0x14000105f
call qword [sym.imp.WS2_32.dll_WSAGetLastError]
mov rcx, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cerr]
lea rdx, str.Failed_to_initialize_Winsock._Error_Code_:
mov ebx, eax
call fcn.140001290
mov rcx, rax
mov edx, ebx
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___int____ptr64]
mov eax, 1
jmp 0x1400011f7
xor r8d, r8d
mov qword [rsp + 0x5f0], rdi
mov ebx, 2
mov ecx, ebx
lea edx, [r8 + 1]
call qword [sym.imp.WS2_32.dll_socket]
mov rdi, rax
cmp rax, 0xffffffffffffffff
jne 0x1400010b8
call qword [sym.imp.WS2_32.dll_WSAGetLastError]
mov rcx, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cerr]
lea rdx, str.Could_not_create_socket:
mov ebx, eax
call fcn.140001290
mov rcx, rax
mov edx, ebx
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___int____ptr64]
call qword [sym.imp.WS2_32.dll_WSACleanup]
lea eax, [rdi + 2]
jmp 0x1400011ef
mov ecx, 0x1f90
mov word [rsp + 0x20], bx
call qword [sym.imp.WS2_32.dll_htons]
lea r8, [rsp + 0x24]
mov ecx, ebx
lea rdx, str.127.0.0.1
mov word [rsp + 0x22], ax
call qword [sym.imp.WS2_32.dll_inet_pton]
mov r8d, reloc.WS2_32.dll_recv
lea rdx, [rsp + 0x20]
mov rcx, rdi
call qword [sym.imp.WS2_32.dll_connect]
test eax, eax
jns 0x140001138
call qword [sym.imp.WS2_32.dll_WSAGetLastError]
mov rcx, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cerr]
lea rdx, str.Connection_failed:
mov ebx, eax
call fcn.140001290
mov rcx, rax
mov edx, ebx
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___int____ptr64]
mov rcx, rdi
call qword [sym.imp.WS2_32.dll_closesocket]
call qword [sym.imp.WS2_32.dll_WSACleanup]
mov eax, 1
jmp 0x1400011ef
xor r9d, r9d
lea rdx, str.Hello_Server_
mov rcx, rdi
lea r8d, [r9 + 0xd]
call qword [sym.imp.WS2_32.dll_send]
xor r9d, r9d
lea rdx, [rsp + 0x1d0]
mov r8d, 0x3ff
mov rcx, rdi
call qword [sym.imp.WS2_32.dll_recv]
test eax, eax
jle 0x1400011b8
cdqe
cmp rax, 0x400
jae 0x140001210
mov rcx, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
lea rdx, str.Server_replied:
mov byte [rsp + rax + 0x1d0], 0
call fcn.140001290
mov rcx, rax
lea rdx, [rsp + 0x1d0]
call fcn.140001290
mov rcx, rax
lea rdx, [0x140001460]
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]
jmp 0x1400011de
call qword [sym.imp.WS2_32.dll_WSAGetLastError]
mov rcx, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cerr]
lea rdx, str.Failed_to_receive_data:
mov ebx, eax
call fcn.140001290
mov rcx, rax
mov edx, ebx
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___int____ptr64]
mov rcx, rdi
call qword [sym.imp.WS2_32.dll_closesocket]
call qword [sym.imp.WS2_32.dll_WSACleanup]
xor eax, eax
mov rdi, qword [rsp + 0x5f0]
mov rcx, qword [rsp + 0x5d0]
xor rcx, rsp
call fcn.1400014b0
add rsp, 0x5e0
pop rbx
ret
call fcn.1400015d8
int3