Function at 0x1400014a0
Capabilities:
Convert ip address from string
Initialize winsock library
Receive data
Receive data on socket
Terminate process

Disassembly:
sub rsp, 0x648
mov rax, qword [0x140005008]
xor rax, rsp
mov qword [rsp + 0x630], rax
mov ecx, 0x202
lea rdx, [rsp + 0x70]
call qword [sym.imp.WS2_32.dll_WSAStartup]
test eax, eax
je 0x140001505
mov rcx, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cerr]
lea rdx, str.WSAStartup_failed
call fcn.1400017d0
mov rcx, rax
call fcn.1400019a0
mov eax, 1
mov rcx, qword [rsp + 0x630]
xor rcx, rsp
call fcn.140001c70
add rsp, 0x648
ret
mov qword [rsp + 0x650], rbx
mov ebx, 2
mov edx, ebx
mov qword [rsp + 0x640], rdi
mov ecx, ebx
lea r8d, [rbx + 0xf]
call qword [sym.imp.WS2_32.dll_socket]
mov rdi, rax
cmp rax, 0xffffffffffffffff
jne 0x14000156d
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.Error_creating_socket:
mov ebx, eax
call fcn.1400017d0
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, rax
call fcn.1400019a0
call qword [sym.imp.WS2_32.dll_WSACleanup]
lea eax, [rdi + 2]
jmp 0x140001729
mov ecx, 0x2329
mov word [rsp + 0x48], bx
call qword [sym.imp.WS2_32.dll_htons]
lea r8, [rsp + 0x4c]
mov ecx, ebx
lea rdx, str.127.0.0.1
mov word [rsp + 0x4a], ax
call qword [sym.imp.WS2_32.dll_inet_pton]
cmp eax, 1
je 0x1400015bf
mov rcx, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cerr]
lea rdx, str.Invalid_address:
call fcn.1400017d0
mov rcx, rax
lea rdx, str.127.0.0.1
call fcn.1400017d0
jmp 0x14000161b
mov ecx, 0x2329
mov word [rsp + 0x38], bx
call qword [sym.imp.WS2_32.dll_htons]
mov r8d, recvfrom
mov dword [rsp + 0x3c], 0
lea rdx, [rsp + 0x38]
mov word [rsp + 0x3a], ax
mov rcx, rdi
call qword [sym.imp.WS2_32.dll_bind]
cmp eax, 0xffffffff
jne 0x140001640
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.Error_binding_socket:
mov ebx, eax
call fcn.1400017d0
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, rax
call fcn.1400019a0
mov rcx, rdi
call qword [sym.imp.WS2_32.dll_closesocket]
call qword [sym.imp.WS2_32.dll_WSACleanup]
mov eax, 1
jmp 0x140001729
lea rax, [rsp + 0x30]
mov dword [rsp + 0x30], recvfrom
mov qword [rsp + 0x28], rax
lea rdx, [rsp + 0x230]
lea rax, [rsp + 0x58]
xor r9d, r9d
mov r8d, 0x400
mov qword [rsp + 0x20], rax
mov rcx, rdi
call qword [sym.imp.WS2_32.dll_recvfrom]
test eax, eax
jle 0x140001718
cdqe
cmp rax, 0x400
jae 0x140001751
mov r9d, socket
mov byte [rsp + rax + 0x230], 0
lea r8, [rsp + 0x210]
mov ecx, ebx
lea rdx, [rsp + 0x5c]
call qword [sym.imp.WS2_32.dll_inet_ntop]
test rax, rax
je 0x140001640
mov rcx, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
lea rdx, [rsp + 0x230]
call fcn.1400017d0
mov rcx, rax
lea rdx, [0x140003510]
call fcn.1400017d0
cmp byte [rsp + 0x230], 0x2d
jne 0x140001640
mov rcx, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
lea rdx, [0x140003514]
call fcn.1400017d0
mov rcx, rax
lea rdx, [0x140003510]
call fcn.1400017d0
call fcn.1400010e0
mov ecx, 1
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll_exit]
int3
mov rcx, rdi
call qword [sym.imp.WS2_32.dll_closesocket]
call qword [sym.imp.WS2_32.dll_WSACleanup]
xor eax, eax
mov rbx, qword [rsp + 0x650]
mov rdi, qword [rsp + 0x640]
mov rcx, qword [rsp + 0x630]
xor rcx, rsp
call fcn.140001c70
add rsp, 0x648
ret
call fcn.140001d98
int3