Function at 0x140039b30
Capabilities:
Connect socket
Get socket status

Disassembly:
push rbp
push rbx
push rsi
push rdi
push r12
push r14
push r15
lea rbp, [rsp - 0x3a0]
sub rsp, 0x4a0
mov rax, qword [0x1400f0010]
xor rax, rsp
mov qword [rbp + 0x390], rax
xor r15d, r15d
lea r14, [0x1400f00b0]
mov rdi, r9
mov rsi, rcx
movabs r12, 0x4d54ee85da812030
cmp rcx, 0xffffffffffffffff
jne 0x140039bd4
mov rcx, qword [0x1400f00b8]
add rcx, r12
mov dword [rsp + 0x34], r15d
cmp rcx, 1
jbe 0x140039ba4
mov rax, qword [0x1400f00b0]
mov edx, 0x2719
mov rcx, r14
call qword [rax + 0x30]
jmp 0x140039ba6
mov al, 1
movzx eax, al
mov dword [rsp + 0x30], 0x2719
add rax, 2
mov qword [rsp + 0x38], r14
movups xmm0, xmmword [rsp + 0x30]
mov qword [rsp + 0x40], rax
movsd xmm1, qword [rsp + 0x40]
movups xmmword [rdi], xmm0
movsd qword [rdi + 0x10], xmm1
jmp 0x140039be7
call qword [sym.imp.WS2_32.dll_connect]
test eax, eax
mov rcx, rdi
setne dl
call fcn.140039870
mov rbx, qword [0x1400f00b8]
mov dword [rsp + 0x34], r15d
lea rax, [rbx + r12]
cmp rax, 1
jbe 0x140039c18
mov rax, qword [0x1400f00b0]
mov edx, 0x2734
mov rcx, r14
call qword [rax + 0x30]
mov rbx, qword [0x1400f00b8]
jmp 0x140039c1a
mov al, 1
movzx eax, al
lea rdx, [rsp + 0x48]
add rax, 2
mov dword [rsp + 0x30], 0x2734
mov qword [rsp + 0x40], rax
mov rcx, rdi
movsd xmm1, qword [rsp + 0x40]
mov qword [rsp + 0x38], r14
movups xmm0, xmmword [rsp + 0x30]
movsd qword [rsp + 0x58], xmm1
movups xmmword [rsp + 0x48], xmm0
call fcn.140037090
test al, al
jne 0x140039cca
lea rax, [rbx + r12]
mov dword [rsp + 0x34], r15d
cmp rax, 1
jbe 0x140039c84
mov rax, qword [0x1400f00b0]
mov edx, 0x2733
mov rcx, r14
call qword [rax + 0x30]
mov rbx, qword [0x1400f00b8]
jmp 0x140039c86
mov al, 1
movzx eax, al
lea rdx, [rsp + 0x48]
add rax, 2
mov dword [rsp + 0x30], 0x2733
mov qword [rsp + 0x40], rax
mov rcx, rdi
movsd xmm1, qword [rsp + 0x40]
mov qword [rsp + 0x38], r14
movups xmm0, xmmword [rsp + 0x30]
movsd qword [rsp + 0x58], xmm1
movups xmmword [rsp + 0x48], xmm0
call fcn.140037090
test al, al
je 0x140039e36
cmp rsi, 0xffffffffffffffff
jne 0x140039d0d
lea rax, [rbx + r12]
mov dword [rsp + 0x34], r15d
cmp rax, 1
jbe 0x140039cfe
mov rax, qword [0x1400f00b0]
mov edx, 0x2719
mov rcx, r14
call qword [rax + 0x30]
mov dword [rsp + 0x30], 0x2719
jmp 0x140039e12
mov al, 1
mov dword [rsp + 0x30], 0x2719
jmp 0x140039e12
lea ecx, [rsi + 1]
mov qword [rbp + 0x188], rsi
lea r9, [rsp + 0x70]
mov dword [rbp + 0x180], 1
lea r8, [rbp + 0x180]
mov qword [rsp + 0x78], rsi
xor edx, edx
mov dword [rsp + 0x70], 1
mov qword [rsp + 0x20], r15
call qword [sym.imp.WS2_32.dll_select]
test eax, eax
js 0x140039dd7
xorps xmm0, xmm0
mov qword [rsp + 0x58], r15
movups xmmword [rdi], xmm0
lea rax, [rsp + 0x64]
mov edx, 0xffff
movsd xmm0, qword [rsp + 0x58]
lea r9, [rsp + 0x60]
mov r8d, 0x1007
movsd qword [rdi + 0x10], xmm0
mov rcx, rsi
mov dword [rsp + 0x60], r15d
mov dword [rsp + 0x64], 4
mov qword [rsp + 0x20], rax
call qword [sym.imp.WS2_32.dll_getsockopt]
test eax, eax
mov rcx, rdi
mov ebx, eax
setne dl
call fcn.140039870
cmp ebx, 0xffffffff
je 0x140039e36
mov rcx, qword [0x1400f00b8]
mov ebx, dword [rsp + 0x60]
add rcx, r12
mov dword [rsp + 0x34], r15d
cmp rcx, 1
jbe 0x140039e09
mov rax, qword [0x1400f00b0]
mov edx, ebx
mov rcx, r14
call qword [rax + 0x30]
jmp 0x140039e0e
call qword [sym.imp.WS2_32.dll_WSAGetLastError]
mov rdx, qword [0x1400f00b8]
mov ebx, eax
add rdx, r12
mov dword [rsp + 0x34], r15d
cmp rdx, 1
jbe 0x140039e09
mov rcx, qword [0x1400f00b0]
mov edx, eax
mov r8, qword [rcx + 0x30]
mov rcx, r14
call r8
jmp 0x140039e0e
test ebx, ebx
setne al
mov dword [rsp + 0x30], ebx
movzx eax, al
mov qword [rsp + 0x38], r14
add rax, 2
movups xmm0, xmmword [rsp + 0x30]
mov qword [rsp + 0x40], rax
movsd xmm1, qword [rsp + 0x40]
movups xmmword [rdi], xmm0
movsd qword [rdi + 0x10], xmm1
mov rcx, qword [rbp + 0x390]
xor rcx, rsp
call fcn.140067ef0
add rsp, 0x4a0
pop r15
pop r14
pop r12
pop rdi
pop rsi
pop rbx
pop rbp
ret