Function at 0x140001517
Capabilities:
Connect socket
Initialize winsock library
Receive data
Receive data on socket
Resolve dns
Send data
Send data on socket

Disassembly:
push rbp
push rbx
sub rsp, 0x368
lea rbp, [rsp + 0x80]
mov dword [rbp + 0x300], ecx
mov qword [rbp + 0x308], rdx
call fcn.1400019e0
lea rax, [rbp + 0x130]
mov rdx, rax
mov ecx, 0x202
mov rax, qword [sym.imp.WS2_32.dll_WSAStartup]
call rax
mov dword [rbp + 0x2cc], eax
cmp dword [rbp + 0x2cc], 0
je 0x14000156b
mov eax, 1
jmp 0x140001823
cmp dword [rbp + 0x300], 3
je 0x1400015b4
mov rax, qword [rbp + 0x308]
mov rbx, qword [rax]
mov ecx, 2
mov rax, qword [fcn.140007870]
call rax
mov rcx, rax
mov r8, rbx
lea rax, str.Usage:__s_ip_command_n
mov rdx, rax
call fcn.140001480
mov rax, qword [sym.imp.WS2_32.dll_WSACleanup]
call rax
mov ecx, 1
call sub.msvcrt.dll_exit
lea rax, [rbp + 0x100]
mov r8d, 0x30
mov edx, 0
mov rcx, rax
call sub.msvcrt.dll_memset
mov dword [rbp + 0x104], 0
mov dword [rbp + 0x108], 1
mov dword [rbp + 0x100], 0
mov dword [rbp + 0x10c], 0
mov qword [rbp + 0x118], 0
mov qword [rbp + 0x120], 0
mov qword [rbp + 0x128], 0
mov rax, qword [rbp + 0x308]
add rax, 8
mov rax, qword [rax]
lea rcx, [rbp + 0xf8]
lea rdx, [rbp + 0x100]
mov r9, rcx
mov r8, rdx
lea rdx, str.51597
mov rcx, rax
mov rax, qword [sym.imp.WS2_32.dll_getaddrinfo]
call rax
mov dword [rbp + 0x2c8], eax
cmp dword [rbp + 0x2c8], 0
je 0x1400016a1
mov eax, dword [rbp + 0x2c8]
mov ecx, eax
call fcn.140001880
mov rbx, rax
mov ecx, 2
mov rax, qword [fcn.140007870]
call rax
mov rcx, rax
mov r8, rbx
lea rax, str.getaddrinfo:__s_n
mov rdx, rax
call fcn.140001480
mov rax, qword [sym.imp.WS2_32.dll_WSACleanup]
call rax
mov ecx, 1
call sub.msvcrt.dll_exit
mov rax, qword [rbp + 0xf8]
mov qword [rbp + 0x2d0], rax
jmp 0x140001756
mov rax, qword [rbp + 0x2d0]
mov ecx, dword [rax + 0xc]
mov rax, qword [rbp + 0x2d0]
mov edx, dword [rax + 8]
mov rax, qword [rbp + 0x2d0]
mov eax, dword [rax + 4]
mov r8d, ecx
mov ecx, eax
mov rax, qword [sym.imp.WS2_32.dll_socket]
call rax
mov qword [rbp + 0x2d8], rax
cmp qword [rbp + 0x2d8], 0xffffffffffffffff
je 0x140001743
mov rax, qword [rbp + 0x2d0]
mov rax, qword [rax + 0x10]
mov ecx, eax
mov rax, qword [rbp + 0x2d0]
mov rdx, qword [rax + 0x20]
mov rax, qword [rbp + 0x2d8]
mov r8d, ecx
mov rcx, rax
mov rax, qword [sym.imp.WS2_32.dll_connect]
call rax
test eax, eax
je 0x140001766
mov rax, qword [rbp + 0x2d8]
mov rcx, rax
mov rax, qword [sym.imp.WS2_32.dll_closesocket]
call rax
mov qword [rbp + 0x2d8], 0xffffffffffffffff
jmp 0x140001744
nop
mov rax, qword [rbp + 0x2d0]
mov rax, qword [rax + 0x28]
mov qword [rbp + 0x2d0], rax
cmp qword [rbp + 0x2d0], 0
jne 0x1400016b4
jmp 0x140001767
nop
mov rax, qword [rbp + 0xf8]
mov rcx, rax
mov rax, qword [sym.imp.WS2_32.dll_freeaddrinfo]
call rax
cmp qword [rbp + 0x2d8], 0xffffffffffffffff
jne 0x14000178e
mov eax, 1
jmp 0x140001823
mov rax, qword [rbp + 0x308]
add rax, 0x10
mov rax, qword [rax]
mov rcx, rax
call sub.msvcrt.dll_strlen
add eax, 1
mov ecx, eax
mov rax, qword [rbp + 0x308]
add rax, 0x10
mov rdx, qword [rax]
mov rax, qword [rbp + 0x2d8]
mov r9d, 0
mov r8d, ecx
mov rcx, rax
mov rax, qword [sym.imp.WS2_32.dll_send]
call rax
lea rdx, [rbp - 0x60]
mov rax, qword [rbp + 0x2d8]
mov r9d, 0
mov r8d, 0xc7
mov rcx, rax
mov rax, qword [sym.imp.WS2_32.dll_recv]
call rax
mov rax, qword [rbp + 0x2d8]
mov rcx, rax
mov rax, qword [sym.imp.WS2_32.dll_closesocket]
call rax
lea rax, [rbp - 0x60]
mov rcx, rax
call fcn.1400014c3
mov rax, qword [sym.imp.WS2_32.dll_WSACleanup]
call rax
mov eax, 0
add rsp, 0x368
pop rbx
pop rbp
ret