Function at 0x18003e990
Capabilities:
Connect socket
Get socket status

Disassembly:
mov dword [rsp + 0x10], edx
mov qword [rsp + 8], rcx
mov eax, 0x8098
call fcn.180012ac0
sub rsp, rax
mov rax, qword [0x180135070]
xor rax, rsp
mov qword [rsp + 0x8088], rax
mov dword [rsp + 0x30], 0
mov dword [rsp + 0x3c], 1
xor r8d, r8d
mov edx, 1
mov rax, qword [rsp + 0x80a0]
mov ecx, dword [rax + 4]
call qword [sym.imp.WSOCK32.dll_socket]
mov dword [rsp + 0x34], eax
cmp dword [rsp + 0x34], 0xffffffff
jne 0x18003e9f6
mov eax, 1
jmp 0x18003ec9e
movsxd rax, dword [rsp + 0x34]
mov rcx, qword [rsp + 0x80a0]
mov r8d, dword [rcx + 0x10]
mov rcx, qword [rsp + 0x80a0]
mov rdx, qword [rcx + 0x20]
mov rcx, rax
call qword [sym.imp.WSOCK32.dll_connect]
mov dword [rsp + 0x38], eax
cmp dword [rsp + 0x38], 0
jne 0x18003ea47
mov dword [rsp + 0x30], 0
movsxd rax, dword [rsp + 0x34]
mov edx, 2
mov rcx, rax
call qword [sym.imp.WSOCK32.dll_shutdown]
jmp 0x18003ec8c
call qword [sym.imp.WSOCK32.dll_WSAGetLastError]
mov dword [rsp + 0x8078], eax
cmp dword [rsp + 0x8078], 0x2743
jg 0x18003eaa7
cmp dword [rsp + 0x8078], 0x2743
je 0x18003eb16
cmp dword [rsp + 0x8078], 0
je 0x18003eb30
cmp dword [rsp + 0x8078], 0x2734
je 0x18003eb30
cmp dword [rsp + 0x8078], 0x2742
je 0x18003eb23
jmp 0x18003ec5d
cmp dword [rsp + 0x8078], 0x274c
je 0x18003eb23
cmp dword [rsp + 0x8078], 0x274d
je 0x18003eae4
cmp dword [rsp + 0x8078], 0x274f
jle 0x18003ec5d
cmp dword [rsp + 0x8078], 0x2751
jle 0x18003eb23
jmp 0x18003ec5d
cmp dword [rsp + 0x80a8], 0
je 0x18003eafb
mov dword [rsp + 0x807c], 0x274d
jmp 0x18003eb06
mov dword [rsp + 0x807c], 0
mov eax, dword [rsp + 0x807c]
mov dword [rsp + 0x30], eax
jmp 0x18003ec8c
mov dword [rsp + 0x30], 0xfffffffe
jmp 0x18003ec8c
mov dword [rsp + 0x30], 0xffffffff
jmp 0x18003ec8c
mov dword [rsp + 0x8070], 5
call qword [sym.imp.WSOCK32.dll_WSAGetLastError]
test eax, eax
jne 0x18003eb50
mov dword [rsp + 0x8070], 1
mov dword [rsp + 0x50], 0
mov dword [rsp + 0x8074], 0
jmp 0x18003eb75
mov eax, dword [rsp + 0x8074]
inc eax
mov dword [rsp + 0x8074], eax
mov eax, dword [rsp + 0x50]
cmp dword [rsp + 0x8074], eax
jae 0x18003eb99
mov eax, dword [rsp + 0x8074]
movsxd rcx, dword [rsp + 0x34]
cmp qword [rsp + rax*8 + 0x58], rcx
jne 0x18003eb97
jmp 0x18003eb99
jmp 0x18003eb65
mov eax, dword [rsp + 0x50]
cmp dword [rsp + 0x8074], eax
jne 0x18003ebcb
cmp dword [rsp + 0x50], 0x1000
jae 0x18003ebcb
mov eax, dword [rsp + 0x8074]
movsxd rcx, dword [rsp + 0x34]
mov qword [rsp + rax*8 + 0x58], rcx
mov eax, dword [rsp + 0x50]
inc eax
mov dword [rsp + 0x50], eax
xor eax, eax
test eax, eax
jne 0x18003eb58
mov dword [rsp + 0x8068], 5
mov dword [rsp + 0x806c], 0
mov dword [rsp + 0x40], 0
jmp 0x18003ebfb
mov eax, dword [rsp + 0x40]
inc eax
mov dword [rsp + 0x40], eax
mov eax, dword [rsp + 0x8070]
cmp dword [rsp + 0x40], eax
jge 0x18003ec3f
lea rax, [rsp + 0x8068]
mov qword [rsp + 0x20], rax
xor r9d, r9d
lea r8, [rsp + 0x50]
xor edx, edx
mov ecx, 0x1000
call qword [sym.imp.WSOCK32.dll_select]
mov dword [rsp + 0x8060], eax
cmp dword [rsp + 0x8060], 0
jle 0x18003ec3d
jmp 0x18003ec3f
jmp 0x18003ebf1
cmp dword [rsp + 0x8060], 0
jg 0x18003ec53
mov dword [rsp + 0x30], 0xffffffff
jmp 0x18003ec5b
mov dword [rsp + 0x30], 0
jmp 0x18003ec8c
cmp dword [rsp + 0x80a8], 0
je 0x18003ec74
mov dword [rsp + 0x8080], 0xfffffffd
jmp 0x18003ec81
call qword [sym.imp.WSOCK32.dll_WSAGetLastError]
mov dword [rsp + 0x8080], eax
mov eax, dword [rsp + 0x8080]
mov dword [rsp + 0x30], eax
movsxd rax, dword [rsp + 0x34]
mov rcx, rax
call qword [sym.imp.WSOCK32.dll_closesocket]
mov eax, dword [rsp + 0x30]
mov rcx, qword [rsp + 0x8088]
xor rcx, rsp
call fcn.180005860
add rsp, 0x8098
ret