Function at 0x14005cc60
Capabilities:
Resolve dns

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rbp
push rsi
push rdi
push r14
sub rsp, 0x4d0
mov rax, qword [0x1400ec008]
xor rax, rsp
mov qword [rsp + 0x4c0], rax
cmp qword [rcx + 0x10], 0
mov rsi, rcx
je 0x14005cf04
lea r14, str.Address_already_in_use
lea rbp, [0x1400ff560]
mov rcx, qword [rsi + 0x10]
mov edx, dword [rcx + 4]
sub edx, 1
je 0x14005cd0b
sub edx, 1
je 0x14005ccbd
cmp edx, 0x15
jne 0x14005ceef
mov edx, dword [rcx + 0x10]
lea rax, [rsp + 0x40]
mov rcx, qword [rcx + 0x20]
lea r8, [rsp + 0xb0]
mov dword [rsp + 0x30], 0xa
mov r9d, 0x401
mov dword [rsp + 0x28], WSAGetLastError
mov qword [rsp + 0x20], rax
call qword [sym.imp.WS2_32.dll_getnameinfo]
test eax, eax
je 0x14005cd9b
lea rcx, str.connect_next:_getnameinfo_failed
call fcn.140046b30
jmp 0x14005ceef
mov r9, qword [rcx + 0x20]
lea rdx, [rsp + 0xb0]
lea rcx, str.unix
mov r8d, 0x400
nop dword [rax]
nop dword [rax + rax]
movzx eax, byte [rcx]
inc rcx
mov byte [rdx], al
lea rdx, [rdx + 1]
test al, al
je 0x14005cd48
sub r8, 1
jne 0x14005cd30
jmp 0x14005cd4d
test r8, r8
jne 0x14005cd5b
mov byte [rdx], 0
movzx eax, byte [rcx]
lea rcx, [rcx + 1]
test al, al
jne 0x14005cd50
lea rdx, [rsp + 0x40]
mov r8d, WSAGetLastError
lea rax, [r9 + 2]
nop word [rax + rax]
movzx ecx, byte [rax]
inc rax
mov byte [rdx], cl
lea rdx, [rdx + 1]
test cl, cl
je 0x14005cd88
sub r8, 1
jne 0x14005cd70
jmp 0x14005cd8d
test r8, r8
jne 0x14005cd9b
mov byte [rdx], 0
movzx ecx, byte [rax]
lea rax, [rax + 1]
test cl, cl
jne 0x14005cd90
mov rax, qword [rsi + 0x10]
mov r8d, dword [rax + 0xc]
mov edx, dword [rax + 8]
mov ecx, dword [rax + 4]
call fcn.14002dd40
mov edi, eax
cmp eax, 0xffffffff
jne 0x14005ce56
mov rax, qword [rsi + 0x10]
cmp qword [rax + 0x28], 0
jne 0x14005ce0d
call fcn.140084fc0
mov r8d, dword [rax]
lea eax, [r8 - 0x64]
cmp eax, 0x28
ja 0x14005cdec
cdqe
lea rcx, str.socket:__.100s
mov rdx, qword [r14 + rax*8]
call fcn.140046b30
jmp 0x14005ceef
mov edx, 0x5e
mov rcx, rbp
call fcn.14008b31c
mov rdx, rbp
lea rcx, str.socket:__.100s
call fcn.140046b30
jmp 0x14005ceef
call fcn.140084fc0
mov r8d, dword [rax]
lea eax, [r8 - 0x64]
cmp eax, 0x28
ja 0x14005ce35
cdqe
lea rcx, str.socket:__.100s
mov rdx, qword [r14 + rax*8]
call fcn.140046be0
jmp 0x14005ceef
mov edx, 0x5e
mov rcx, rbp
call fcn.14008b31c
mov rdx, rbp
lea rcx, str.socket:__.100s
call fcn.140046be0
jmp 0x14005ceef
mov ecx, edi
call fcn.14003d7d0
cmp eax, 0xffffffff
je 0x14005cf70
mov rdx, qword [rsi + 0x10]
mov ecx, edi
mov r8d, dword [rdx + 0x10]
mov rdx, qword [rdx + 0x20]
call fcn.14002e640
cmp eax, 0xffffffff
jne 0x14005cf2f
call fcn.140084fc0
cmp dword [rax], 0x70
je 0x14005cf2f
call fcn.140084fc0
mov r8d, dword [rax]
lea eax, [r8 - 0x64]
cmp eax, 0x28
ja 0x14005cea9
cdqe
mov rcx, qword [r14 + rax*8]
jmp 0x14005ceb9
mov edx, 0x5e
mov rcx, rbp
call fcn.14008b31c
mov rcx, rbp
mov rdx, qword [rsi]
lea r9, [rsp + 0x40]
mov qword [rsp + 0x20], rcx
lea r8, [rsp + 0xb0]
lea rcx, str.connect_next:_host__.100s____.100s_:_s_:__.100s
call fcn.140046c10
call fcn.140084fc0
mov ecx, edi
mov ebx, dword [rax]
call fcn.14002ed90
call fcn.140084fc0
mov dword [rax], ebx
mov rax, qword [rsi + 0x10]
mov rcx, qword [rax + 0x28]
mov qword [rsi + 0x10], rcx
test rcx, rcx
jne 0x14005cca3
or eax, 0xffffffff
mov rcx, qword [rsp + 0x4c0]
xor rcx, rsp
call fcn.140078840
lea r11, [rsp + 0x4d0]
mov rbx, qword [r11 + 0x28]
mov rbp, qword [r11 + 0x30]
mov rsp, r11
pop r14
pop rdi
pop rsi
ret
mov rax, qword [rsi + 0x10]
cmp dword [rax + 4], 1
je 0x14005cf40
mov ecx, edi
call fcn.14003da60
mov rdx, qword [rsi]
lea r9, [rsp + 0x40]
lea r8, [rsp + 0xb0]
mov dword [rsp + 0x20], edi
lea rcx, str.connect_next:_host__.100s____.100s_:_s__in_progress__fd_d
call fcn.140046c10
mov rax, qword [rsi + 0x10]
mov rcx, qword [rax + 0x28]
mov eax, edi
mov qword [rsi + 0x10], rcx
jmp 0x14005cf07
mov r8d, edi
lea rdx, str.connect_next
lea rcx, str._s:_set_nonblock__d_
call fcn.14004db00
int3