Function at 0x14000dca0
Capabilities:
Connect socket
Get socket status
Set socket configuration

Disassembly:
mov r11, rsp
push rbx
push rsi
push rdi
sub rsp, 0x280
mov rax, qword [0x140042010]
xor rax, rsp
mov qword [rsp + 0x260], rax
movzx esi, r8w
mov r8, rdx
mov rbx, rcx
test rcx, rcx
je 0x14000dedd
mov eax, dword [rcx + 8]
cmp eax, 1
je 0x14000dedd
mov eax, dword [rcx + 0xc]
cmp eax, 1
je 0x14000dedd
mov rax, qword [rcx]
xor edi, edi
dec rax
mov edx, edi
cmp rax, 0xfffffffffffffffd
setbe dl
cmp edx, 1
jne 0x14000dedd
mov qword [r11 - 0x20], rbp
lea rdx, [rcx + 0x2c]
mov ebp, 2
mov qword [r11 - 0x28], r14
mov word [rcx + 0x28], bp
mov rcx, r8
call sym.Launcher.exe_ip4_str2num
movzx ecx, si
call qword [sym.imp.WS2_32.dll_htons]
xor edx, edx
lea rcx, [rsp + 0x50]
mov r8d, 0x208
mov word [rbx + 0x2a], ax
call fcn.140013cf0
mov eax, dword [rbx + 8]
mov dword [rsp + 0x38], ebp
mov rbp, qword [rsp + 0x278]
mov dword [rsp + 0x3c], 0x7a120
mov dword [rsp + 0x40], 1
cmp eax, 1
je 0x14000dd9b
mov eax, dword [rbx + 0xc]
cmp eax, 1
je 0x14000dd9b
mov rax, qword [rbx]
mov ecx, edi
dec rax
cmp rax, 0xfffffffffffffffd
setbe cl
cmp ecx, 1
jne 0x14000dd9b
lock inc dword [rbx + 0x14]
mov rcx, qword [rbx]
lea r8, [rsp + 0x40]
mov edx, 0x8004667e
call qword [sym.imp.WS2_32.dll_ioctlsocket]
lock dec dword [rbx + 0x14]
mov rcx, qword [rbx]
lea rdx, [rbx + 0x28]
mov r8d, reloc.WS2_32.dll_recv
call qword [sym.imp.WS2_32.dll_connect]
mov dword [rsp + 0x30], eax
call qword [sym.imp.WS2_32.dll_WSAGetLastError]
mov ecx, dword [rbx + 8]
mov esi, eax
mov r14, qword [rsp + 0x270]
neg esi
mov dword [rsp + 0x48], edi
cmp ecx, 1
je 0x14000de0a
mov ecx, dword [rbx + 0xc]
cmp ecx, 1
je 0x14000de0a
mov rcx, qword [rbx]
mov r8d, edi
dec rcx
cmp rcx, 0xfffffffffffffffd
setbe r8b
cmp r8d, 1
jne 0x14000de0a
lock inc dword [rbx + 0x14]
mov rcx, qword [rbx]
lea r8, [rsp + 0x48]
mov edx, 0x8004667e
call qword [sym.imp.WS2_32.dll_ioctlsocket]
lock dec dword [rbx + 0x14]
mov eax, dword [rsp + 0x30]
test eax, eax
je 0x14000ded9
cmp esi, 0xffffff90
jne 0x14000dee2
mov rax, qword [rbx]
lea r8, [rsp + 0x50]
mov qword [rsp + 0x58], rax
xor r9d, r9d
xor edx, edx
mov dword [rsp + 0x50], 1
lea ecx, [rax + 1]
lea rax, [rsp + 0x38]
mov qword [rsp + 0x20], rax
call qword [sym.imp.WS2_32.dll_select]
test eax, eax
jle 0x14000dedd
mov rcx, qword [rbx]
lea rdx, [rsp + 0x50]
call qword [sym.imp.WS2_32.dll___WSAFDIsSet]
test eax, eax
je 0x14000dedd
mov eax, dword [rbx + 8]
mov dword [rsp + 0x38], 4
cmp eax, 1
je 0x14000dedd
mov eax, dword [rbx + 0xc]
cmp eax, 1
je 0x14000dedd
mov rax, qword [rbx]
mov ecx, edi
dec rax
cmp rax, 0xfffffffffffffffd
setbe cl
cmp ecx, 1
jne 0x14000dedd
lock inc dword [rbx + 0x14]
mov rcx, qword [rbx]
lea rax, [rsp + 0x38]
lea r9, [rsp + 0x30]
mov qword [rsp + 0x20], rax
mov edx, 0xffff
mov r8d, 0x1007
call qword [sym.imp.WS2_32.dll_getsockopt]
test eax, eax
je 0x14000dec7
call qword [sym.imp.WS2_32.dll_WSAGetLastError]
mov edi, eax
neg edi
lock dec dword [rbx + 0x14]
test edi, edi
js 0x14000dedd
mov eax, dword [rsp + 0x30]
neg eax
sbb eax, eax
jmp 0x14000dee2
mov eax, edi
jmp 0x14000dee2
mov eax, 0xffffffff
mov rcx, qword [rsp + 0x260]
xor rcx, rsp
call fcn.140012f80
add rsp, 0x280
pop rdi
pop rsi
pop rbx
ret