Function at 0x14001165e
Capabilities:
Act as tcp client
Connect socket
Connect tcp socket
Convert ip address from string
Create tcp socket
Get socket status
Initialize winsock library
Reference google public dns server
Set socket configuration

Disassembly:
jmp 0x14001ee70
push rbp
push rdi
sub rsp, 0xa88
lea rbp, [rsp + 0x30]
lea rdi, [rsp + 0x30]
mov ecx, 0x1d6
mov eax, 0xcccccccc
rep stosd dword [rdi], eax
mov rax, qword [0x14003f040]
xor rax, rbp
mov qword [rbp + 0xa48], rax
lea rcx, [0x140047114]
call fcn.140011d7f
nop
mov dword [rbp + 0x24], 0x2710
mov byte [rbp + 0x44], 1
lea rdx, [rbp + 0x70]
mov cx, 0x202
call qword [sym.imp.WS2_32.dll_WSAStartup]
mov dword [rbp + 4], eax
cmp dword [rbp + 4], 0
je 0x14001eee7
mov edx, dword [rbp + 4]
lea rcx, str.WSAStartup_failed:__d_n
call fcn.14001166d
nop
xor al, al
jmp 0x14001f242
lea rax, [rbp + 0x228]
mov rdi, rax
xor eax, eax
mov ecx, select
rep stosb byte [rdi], al
mov qword [rbp + 0x258], 0xffffffffffffffff
mov r8d, select
xor edx, edx
lea rcx, [rbp + 0x228]
call fcn.140011a64
nop
mov eax, 2
mov word [rbp + 0x228], ax
mov cx, 0x50
call qword [sym.imp.WS2_32.dll_htons]
mov word [rbp + 0x22a], ax
lea r8, [rbp + 0x22c]
lea rdx, str.8.8.8.8
mov ecx, 2
call qword [sym.imp.WS2_32.dll_inet_pton]
mov dword [rbp + 4], eax
cmp dword [rbp + 4], 1
je 0x14001ef77
call qword [sym.imp.WS2_32.dll_WSAGetLastError]
mov edx, eax
lea rcx, str.inet_pton_failed:__d_n
call fcn.14001166d
nop
mov byte [rbp + 0x44], 0
jmp 0x14001f212
mov r8d, 6
mov edx, 1
mov ecx, 2
call qword [sym.imp.WS2_32.dll_socket]
mov qword [rbp + 0x258], rax
cmp qword [rbp + 0x258], 0xffffffffffffffff
jne 0x14001efbc
call qword [sym.imp.WS2_32.dll_WSAGetLastError]
mov edx, eax
lea rcx, str.Socket_creation_failed:__d_n
call fcn.14001166d
nop
mov byte [rbp + 0x44], 0
jmp 0x14001f212
mov dword [rbp + 0x274], 1
lea r8, [rbp + 0x274]
mov edx, 0x8004667e
mov rcx, qword [rbp + 0x258]
call qword [sym.imp.WS2_32.dll_ioctlsocket]
mov dword [rbp + 4], eax
cmp dword [rbp + 4], 0
je 0x14001f006
call qword [sym.imp.WS2_32.dll_WSAGetLastError]
mov edx, eax
lea rcx, str.ioctlsocket_failed:__d_n
call fcn.14001166d
nop
mov byte [rbp + 0x44], 0
jmp 0x14001f212
mov r8d, select
lea rdx, [rbp + 0x228]
mov rcx, qword [rbp + 0x258]
call qword [sym.imp.WS2_32.dll_connect]
mov dword [rbp + 4], eax
cmp dword [rbp + 4], 0xffffffff
jne 0x14001f054
call qword [sym.imp.WS2_32.dll_WSAGetLastError]
cmp eax, 0x2733
je 0x14001f054
call qword [sym.imp.WS2_32.dll_WSAGetLastError]
mov edx, eax
lea rcx, str.Connect_failed:__d_n
call fcn.14001166d
nop
mov byte [rbp + 0x44], 0
jmp 0x14001f212
mov dword [rbp + 0x2a0], 0
mov dword [rbp + 0x4d0], 0
mov dword [rbp + 0x6f4], 0
jmp 0x14001f082
mov eax, dword [rbp + 0x6f4]
inc eax
mov dword [rbp + 0x6f4], eax
mov eax, dword [rbp + 0x2a0]
cmp dword [rbp + 0x6f4], eax
jae 0x14001f0ab
mov eax, dword [rbp + 0x6f4]
mov rcx, qword [rbp + 0x258]
cmp qword [rbp + rax*8 + 0x2a8], rcx
jne 0x14001f0a9
jmp 0x14001f0ab
jmp 0x14001f074
mov eax, dword [rbp + 0x2a0]
cmp dword [rbp + 0x6f4], eax
jne 0x14001f0e5
cmp dword [rbp + 0x2a0], 0x40
jae 0x14001f0e5
mov eax, dword [rbp + 0x6f4]
mov rcx, qword [rbp + 0x258]
mov qword [rbp + rax*8 + 0x2a8], rcx
mov eax, dword [rbp + 0x2a0]
inc eax
mov dword [rbp + 0x2a0], eax
xor eax, eax
test eax, eax
jne 0x14001f068
mov dword [rbp + 0x714], 0
jmp 0x14001f109
mov eax, dword [rbp + 0x714]
inc eax
mov dword [rbp + 0x714], eax
mov eax, dword [rbp + 0x4d0]
cmp dword [rbp + 0x714], eax
jae 0x14001f132
mov eax, dword [rbp + 0x714]
mov rcx, qword [rbp + 0x258]
cmp qword [rbp + rax*8 + 0x4d8], rcx
jne 0x14001f130
jmp 0x14001f132
jmp 0x14001f0fb
mov eax, dword [rbp + 0x4d0]
cmp dword [rbp + 0x714], eax
jne 0x14001f16c
cmp dword [rbp + 0x4d0], 0x40
jae 0x14001f16c
mov eax, dword [rbp + 0x714]
mov rcx, qword [rbp + 0x258]
mov qword [rbp + rax*8 + 0x4d8], rcx
mov eax, dword [rbp + 0x4d0]
inc eax
mov dword [rbp + 0x4d0], eax
xor eax, eax
test eax, eax
jne 0x14001f0ef
lea rax, [rbp + 0x738]
mov rdi, rax
xor eax, eax
mov ecx, 8
rep stosb byte [rdi], al
imul eax, dword [rbp + 0x24], 0x3e8
mov dword [rbp + 0x73c], eax
lea rax, [rbp + 0x738]
mov qword [rsp + 0x20], rax
lea r9, [rbp + 0x4d0]
lea r8, [rbp + 0x2a0]
xor edx, edx
xor ecx, ecx
call qword [sym.imp.WS2_32.dll_select]
mov dword [rbp + 4], eax
cmp dword [rbp + 4], 0xffffffff
jne 0x14001f1de
call qword [sym.imp.WS2_32.dll_WSAGetLastError]
mov edx, eax
lea rcx, str.Select_failed:__d_n
call fcn.14001166d
nop
mov byte [rbp + 0x44], 0
jmp 0x14001f212
lea rdx, [rbp + 0x4d0]
mov rcx, qword [rbp + 0x258]
call fcn.140011041
test eax, eax
je 0x14001f208
lea rcx, str.Socket_error._n
call fcn.14001166d
nop
mov byte [rbp + 0x44], 0
jmp 0x14001f212
xor eax, eax
test eax, eax
jne 0x14001ef05
cmp qword [rbp + 0x258], 0xffffffffffffffff
je 0x14001f22a
mov rcx, qword [rbp + 0x258]
call qword [sym.imp.WS2_32.dll_closesocket]
nop
call qword [sym.imp.WS2_32.dll_WSACleanup]
nop
lea rcx, [0x140035a74]
call fcn.14001166d
nop
movzx eax, byte [rbp + 0x44]
mov rdi, rax
lea rcx, [rbp - 0x30]
lea rdx, [0x140033320]
call fcn.140011b40
mov rax, rdi
mov rcx, qword [rbp + 0xa48]
xor rcx, rbp
call fcn.14001169a
lea rsp, [rbp + 0xa58]
pop rdi
pop rbp
ret