Function at 0x140001320
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
push rsi
push r12
sub rsp, 0x440
mov rax, qword [section..data]
xor rax, rsp
mov qword [rsp + 0x430], rax
mov ecx, 0x202
lea rdx, [rsp + 0x30]
call qword [sym.imp.WS2_32.dll_WSAStartup]
mov r12d, 2
mov ecx, r12d
test eax, eax
je 0x140001375
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll___acrt_iob_func]
mov rcx, rax
lea rdx, str.WSAStartup_failed._n
call fcn.140001010
jmp 0x140001426
xor r8d, r8d
mov edx, 1
call qword [sym.imp.WS2_32.dll_socket]
mov rsi, rax
cmp rax, 0xffffffffffffffff
jne 0x1400013b1
call qword [sym.imp.WS2_32.dll_WSAGetLastError]
mov ecx, r12d
mov ebx, eax
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll___acrt_iob_func]
mov r8d, ebx
lea rdx, str.Could_not_create_socket_:__d_n
mov rcx, rax
call fcn.140001010
jmp 0x140001420
mov ecx, 0x1167
mov word [rsp + 0x20], r12w
call qword [sym.imp.WS2_32.dll_htons]
lea r8, [rsp + 0x24]
mov ecx, r12d
lea rdx, str.192.168.1.115
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, rsi
call qword [sym.imp.WS2_32.dll_connect]
test eax, eax
je 0x140001448
call qword [sym.imp.WS2_32.dll_WSAGetLastError]
mov ecx, r12d
mov ebx, eax
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll___acrt_iob_func]
mov r8d, ebx
lea rdx, str.Connect_failed_with_error_code_:__d_n
mov rcx, rax
call fcn.140001010
mov rcx, rsi
call qword [sym.imp.WS2_32.dll_closesocket]
call qword [sym.imp.WS2_32.dll_WSACleanup]
mov ecx, r12d
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll___acrt_iob_func]
mov rcx, rax
lea rdx, str.Failed_to_initialize_socket._n
call fcn.140001010
mov eax, 1
jmp 0x140001617
xor r9d, r9d
mov qword [rsp + 0x478], r15
mov r8d, ntohl
lea rdx, str.Hello__World_
mov rcx, rsi
call qword [sym.imp.WS2_32.dll_send]
lea rdx, str.Hello__World_
lea rcx, str.Message_sent:__s_n
call fcn.140001060
xor edx, edx
lea rcx, [rsp + 0x30]
mov r8d, 0x400
call sub.VCRUNTIME140.dll_memset
xor r9d, r9d
lea rdx, [rsp + 0x30]
mov r8d, 0x400
mov rcx, rsi
call qword [sym.imp.WS2_32.dll_recv]
mov r15d, eax
test eax, eax
jle 0x1400015c8
mov qword [rsp + 0x460], rbp
mov rbp, rsi
mov qword [rsp + 0x468], rdi
mov qword [rsp + 0x470], r14
nop dword [rax + rax]
lea rdx, [rsp + 0x30]
lea rcx, str.Server_reply_:__s_n
call fcn.140001060
xor edi, edi
nop dword [rax]
nop word [rax + rax]
movsxd rsi, edi
movzx ecx, word [rsp + rsi + 0x30]
call qword [sym.imp.WS2_32.dll_ntohs]
movzx ecx, word [rsp + rsi + 0x32]
movzx ebx, ax
call qword [sym.imp.WS2_32.dll_ntohs]
movzx r14d, ax
cmp ebx, 0x6468
je 0x140001562
cmp ebx, 0x7373
je 0x140001549
xor r9d, r9d
lea rdx, str.BAD_CMD_
mov r8d, 8
mov rcx, rbp
call qword [sym.imp.WS2_32.dll_send]
mov edx, ebx
lea rcx, str.Unhandled_type:__d_n
call fcn.140001060
jmp 0x14000156a
lea r8, [rsp + 0x34]
mov edx, r14d
add r8, rsi
lea rcx, str.Type_2_Handler:__.s_n
call fcn.140001060
jmp 0x14000156a
mov rcx, rbp
call fcn.1400010c0
add edi, 4
mov rsi, rbp
add edi, r14d
cmp edi, r15d
jl 0x1400014f0
xor edx, edx
lea rcx, [rsp + 0x30]
mov r8d, 0x400
call sub.VCRUNTIME140.dll_memset
xor r9d, r9d
lea rdx, [rsp + 0x30]
mov r8d, 0x400
mov rcx, rbp
call qword [sym.imp.WS2_32.dll_recv]
mov r15d, eax
test eax, eax
jg 0x1400014d0
mov r14, qword [rsp + 0x470]
mov rdi, qword [rsp + 0x468]
mov rbp, qword [rsp + 0x460]
test r15d, r15d
mov r15, qword [rsp + 0x478]
jne 0x1400015e3
lea rcx, str.Connection_closed_n
call fcn.140001060
jmp 0x140001606
call qword [sym.imp.WS2_32.dll_WSAGetLastError]
mov ecx, r12d
mov ebx, eax
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll___acrt_iob_func]
mov r8d, ebx
lea rdx, str.recv_failed_with_error_code:__d_n
mov rcx, rax
call fcn.140001010
mov rcx, rsi
call qword [sym.imp.WS2_32.dll_closesocket]
call qword [sym.imp.WS2_32.dll_WSACleanup]
xor eax, eax
mov rcx, qword [rsp + 0x430]
xor rcx, rsp
call fcn.140001650
add rsp, 0x440
pop r12
pop rsi
pop rbx
ret