Function at 0x605925
Capabilities:
Connect socket
Send data
Send data on socket

Disassembly:
push rbp
mov rbp, rsp
sub rsp, 0x40
mov rcx, qword [rbp + 0x28]
mov edx, 0x30
sub rsp, 0x20
call qword [sym.imp.KERNEL32.DLL_RtlZeroMemory]
add rsp, 0x20
cmp dword [rbp + 0x18], 0
jne 0x605956
mov eax, 0xffffb1df
leave
ret 0x20
push rax
push qword [rbp + 0x20]
call fcn.0049413d
pop rcx
mov byte [rbp - 1], al
push rax
test byte [rbp - 1], 0xff
je 0x605971
mov eax, 0x17
jmp 0x605976
mov eax, 2
push rax
push 1
push 6
call fcn.0042c889
pop rcx
mov qword [rbp - 0x10], rax
cmp qword [rbp - 0x10], 0
jge 0x605993
mov eax, dword [rbp - 0x10]
leave
ret 0x20
mov eax, dword [rbp + 0x18]
shl eax, 8
mov ebx, dword [rbp + 0x18]
sar ebx, 8
add eax, ebx
mov word [rbp - 4], ax
sub rsp, 0x20
call qword [sym.imp.ws2_32.dll_WSACreateEvent]
add rsp, 0x20
mov qword [rbp - 0x18], rax
cmp qword [rbp - 0x18], 0
jne 0x6059e2
call fcn.0042464b
mov dword [rbp - 8], eax
sub rsp, 0x18
push qword [rbp - 0x10]
mov rcx, qword [rsp]
call qword [sym.imp.ws2_32.dll_closesocket]
add rsp, 0x20
mov eax, dword [rbp - 8]
leave
ret 0x20
push rax
push 0x33
push qword [rbp - 0x18]
push qword [rbp - 0x10]
mov rcx, qword [rsp]
mov rdx, qword [rsp + 8]
mov r8d, dword [rsp + 0x10]
call qword [sym.imp.ws2_32.dll_WSAEventSelect]
add rsp, 0x20
cmp eax, 0
je 0x605a41
call fcn.0042464b
mov dword [rbp - 8], eax
sub rsp, 0x18
push qword [rbp - 0x10]
mov rcx, qword [rsp]
call qword [sym.imp.ws2_32.dll_closesocket]
add rsp, 0x20
sub rsp, 0x18
push qword [rbp - 0x18]
mov rcx, qword [rsp]
call qword [sym.imp.ws2_32.dll_WSACloseEvent]
add rsp, 0x20
mov eax, dword [rbp - 8]
leave
ret 0x20
test byte [rbp - 1], 0xff
je 0x605a9e
mov word [rbp - 0x38], 0x17
movzx eax, word [rbp - 4]
mov word [rbp - 0x36], ax
mov dword [rbp - 0x34], 0
mov rax, qword [rbp + 0x20]
mov rbx, qword [rax]
mov rsi, qword [rax + 8]
mov qword [rbp - 0x30], rbx
mov qword [rbp - 0x28], rsi
mov dword [rbp - 0x20], 0
push rax
push 0x1c
lea rax, [rbp - 0x38]
push rax
push qword [rbp - 0x10]
mov rcx, qword [rsp]
mov rdx, qword [rsp + 8]
mov r8d, dword [rsp + 0x10]
call qword [sym.imp.ws2_32.dll_connect]
add rsp, 0x20
mov dword [rbp - 8], eax
jmp 0x605ae7
mov word [rbp - 0x30], 2
movzx eax, word [rbp - 4]
mov word [rbp - 0x2e], ax
mov rax, qword [rbp + 0x20]
mov ebx, dword [rax + 0xc]
mov dword [rbp - 0x2c], ebx
mov rax, qword [0x006e0789]
mov qword [rbp - 0x28], rax
push rax
push 0x10
lea rax, [rbp - 0x30]
push rax
push qword [rbp - 0x10]
mov rcx, qword [rsp]
mov rdx, qword [rsp + 8]
mov r8d, dword [rsp + 0x10]
call qword [sym.imp.ws2_32.dll_connect]
add rsp, 0x20
mov dword [rbp - 8], eax
cmp dword [rbp - 8], 0
je 0x605bdc
call fcn.0042464b
mov dword [rbp - 8], eax
cmp dword [rbp - 8], 0xffffd8cd
jne 0x605b72
push rax
push 0
mov eax, dword [rbp + 0x10]
shl eax, 0xa
push rax
push 0
lea rax, [rbp - 0x18]
push rax
push 1
mov ecx, dword [rsp]
mov rdx, qword [rsp + 8]
mov r8d, dword [rsp + 0x10]
mov r9d, dword [rsp + 0x18]
call qword [sym.imp.ws2_32.dll_WSAWaitForMultipleEvents]
add rsp, 0x30
mov dword [rbp - 8], eax
cmp dword [rbp - 8], 0x102
jne 0x605b70
sub rsp, 0x18
push qword [rbp - 0x10]
mov rcx, qword [rsp]
call qword [sym.imp.ws2_32.dll_closesocket]
add rsp, 0x20
sub rsp, 0x18
push qword [rbp - 0x18]
mov rcx, qword [rsp]
call qword [sym.imp.ws2_32.dll_WSACloseEvent]
add rsp, 0x20
mov eax, 0xffffb1d7
leave
ret 0x20
jmp 0x605bdc
mov eax, dword [rbp - 8]
cmp eax, 0xffffd8da
jge 0x605b8f
sub eax, 0xffffd8af
cmp eax, 0x1a
ja case.0x605b88.10063
jmp qword [rax*8 + 0x74ebe0]
cmp eax, 0xffffd8da
jne case.0x605b88.10063
mov dword [rbp - 8], 0xffffb1d2
jmp 0x605bab
mov dword [rbp - 8], 0xffffb1d1
jmp 0x605bab
jmp 0x605bab
sub rsp, 0x18
push qword [rbp - 0x10]
mov rcx, qword [rsp]
call qword [sym.imp.ws2_32.dll_closesocket]
add rsp, 0x20
sub rsp, 0x18
push qword [rbp - 0x18]
mov rcx, qword [rsp]
call qword [sym.imp.ws2_32.dll_WSACloseEvent]
add rsp, 0x20
mov eax, dword [rbp - 8]
leave
ret 0x20
push 0
push 0
lea rax, [rbp - 0x10]
push rax
push qword [rbp - 0x10]
mov rcx, qword [rsp]
mov rdx, qword [rsp + 8]
mov r8d, dword [rsp + 0x10]
mov r9d, dword [rsp + 0x18]
call qword [sym.imp.ws2_32.dll_send]
add rsp, 0x20
cmp eax, 0xffffffff
jne 0x605c3d
sub rsp, 0x18
push qword [rbp - 0x10]
mov rcx, qword [rsp]
call qword [sym.imp.ws2_32.dll_closesocket]
add rsp, 0x20
sub rsp, 0x18
push qword [rbp - 0x18]
mov rcx, qword [rsp]
call qword [sym.imp.ws2_32.dll_WSACloseEvent]
add rsp, 0x20
mov eax, 0xffffb1d8
leave
ret 0x20
mov rax, qword [rbp + 0x28]
mov rbx, qword [rbp - 0x10]
mov qword [rax], rbx
mov rbx, qword [rbp - 0x18]
mov qword [rax + 8], rbx
mov bl, byte [rbp - 1]
mov byte [rax + 0x10], bl
mov rbx, qword [0x0074ecc0]
mov rsi, qword [0x0074ecc8]
mov rdi, qword [0x0074ecd0]
mov ecx, dword [0x0074ecd8]
mov qword [rax + 0x14], rbx
mov qword [rax + 0x1c], rsi
mov qword [rax + 0x24], rdi
mov dword [rax + 0x2c], ecx
xor eax, eax
leave
ret 0x20