Function at 0x140004ca0
Capabilities:
Connect socket
Get socket status

Disassembly:
push rbp
push rbx
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x388]
sub rsp, 0x488
mov rax, qword [0x140012040]
xor rax, rsp
mov qword [rbp + 0x370], rax
lea r12, [0x140012128]
mov rbx, r9
mov r15, rcx
movabs r13, 0x4d54ee85da812030
cmp rcx, 0xffffffffffffffff
jne 0x140004d28
mov rcx, qword [0x140012130]
xor edi, edi
add rcx, r13
mov dword [rsp + 0x34], edi
cmp rcx, 1
jbe 0x140004d1c
mov rax, qword [0x140012128]
mov edx, 0x2719
mov rcx, r12
call qword [rax + 0x30]
mov dword [rsp + 0x30], 0x2719
jmp 0x140004d85
mov al, 1
mov dword [rsp + 0x30], 0x2719
jmp 0x140004d85
call qword [sym.imp.WS2_32.dll_connect]
test eax, eax
jne 0x140004d4c
xorps xmm0, xmm0
xor edi, edi
movups xmmword [rbx], xmm0
mov qword [rsp + 0x40], rdi
movsd xmm0, qword [rsp + 0x40]
movsd qword [rbx + 0x10], xmm0
jmp 0x140004da9
call qword [sym.imp.WS2_32.dll_WSAGetLastError]
mov rdx, qword [0x140012130]
xor edi, edi
add rdx, r13
mov dword [rsp + 0x34], edi
mov esi, eax
cmp rdx, 1
jbe 0x140004d7c
mov r8, qword [0x140012128]
mov edx, eax
mov rcx, r12
call qword [r8 + 0x30]
jmp 0x140004d81
test esi, esi
setne al
mov dword [rsp + 0x30], esi
movzx eax, al
mov qword [rsp + 0x38], r12
add rax, 2
movups xmm0, xmmword [rsp + 0x30]
mov qword [rsp + 0x40], rax
movsd xmm1, qword [rsp + 0x40]
movups xmmword [rbx], xmm0
movsd qword [rbx + 0x10], xmm1
mov r9, qword [0x140012130]
mov r14d, 0x2734
lea rax, [r9 + r13]
cmp rax, 1
jbe 0x140004dd9
mov rax, qword [0x140012128]
mov edx, r14d
mov rcx, r12
call qword [rax + 0x30]
mov r9, qword [0x140012130]
jmp 0x140004ddb
mov al, 1
mov r10, qword [rbx + 0x10]
lea rsi, [0x1400120f0]
movzx r8d, al
movabs rdx, 0x4800144005b3
add r8, 2
cmp r8, 1
sete cl
cmp r10, 1
sete al
cmp al, cl
jne 0x140004ef0
cmp r10, 1
jne 0x140004e68
cmp r8, r10
jne 0x140004e38
mov rax, qword [rbx + 8]
cmp qword [rax + 8], r9
jne 0x140004e31
cmp dword [rbx], r14d
jne 0x140004e31
movzx eax, r10b
jmp 0x140004ee8
xor al, al
jmp 0x140004ee8
mov rcx, qword [rbx + 8]
mov rax, rdx
mul rcx
mov rax, rcx
sub rax, rdx
shr rax, 1
add rax, rdx
shr rax, 0x14
imul rax, rax, 0x1ffff7
sub rcx, rax
imul r11d, ecx, 0x3e8
add r11d, dword [rbx]
jmp 0x140004ea2
mov r11d, dword [rbx]
cmp r8, 1
jne 0x140004ea2
mov rax, rdx
mov rcx, r12
mul r12
mov rax, r12
sub rax, rdx
shr rax, 1
add rax, rdx
shr rax, 0x14
imul rax, rax, 0x1ffff7
sub rcx, rax
imul r14d, ecx, 0x3e8
add r14d, 0x2734
cmp r11d, r14d
jne 0x140004ef0
test r8, r8
jne 0x140004eb1
mov rax, r12
jmp 0x140004ebc
cmp r8, 1
mov rax, rsi
cmovne rax, r12
test r10, r10
jne 0x140004ec6
mov rcx, r12
jmp 0x140004ed3
mov rcx, rsi
cmp r10, 1
je 0x140004ed3
mov rcx, qword [rbx + 8]
mov rdx, qword [rax + 8]
test rdx, rdx
jne 0x140004ee1
cmp rcx, rax
jmp 0x140004ee5
cmp qword [rcx + 8], rdx
sete al
test al, al
jne 0x14000502e
lea rax, [r9 + r13]
mov r14d, 0x2733
cmp rax, 1
jbe 0x140004f19
mov rax, qword [0x140012128]
mov edx, r14d
mov rcx, r12
call qword [rax + 0x30]
mov r9, qword [0x140012130]
jmp 0x140004f1b
mov al, 1
mov r10, qword [rbx + 0x10]
movzx r8d, al
add r8, 2
cmp r8, 1
sete cl
cmp r10, 1
sete al
cmp al, cl
jne 0x140005200
cmp r10, 1
jne 0x140004f9e
cmp r8, r10
jne 0x140004f67
mov rax, qword [rbx + 8]
cmp qword [rax + 8], r9
jne 0x140004f60
cmp dword [rbx], r14d
jne 0x140004f60
movzx eax, r10b
jmp 0x140005026
xor al, al
jmp 0x140005026
mov rcx, qword [rbx + 8]
movabs rax, 0x4800144005b3
mul rcx
mov rax, rcx
sub rax, rdx
shr rax, 1
add rax, rdx
shr rax, 0x14
imul rax, rax, 0x1ffff7
sub rcx, rax
imul r11d, ecx, 0x3e8
add r11d, dword [rbx]
jmp 0x140004fdf
mov r11d, dword [rbx]
cmp r8, 1
jne 0x140004fdf
movabs rax, 0x4800144005b3
mov rcx, r12
mul r12
mov rax, r12
sub rax, rdx
shr rax, 1
add rax, rdx
shr rax, 0x14
imul rax, rax, 0x1ffff7
sub rcx, rax
imul r14d, ecx, 0x3e8
add r14d, 0x2733
cmp r11d, r14d
jne 0x140005200
test r8, r8
jne 0x140004ff2
mov rax, r12
jmp 0x140004ffd
cmp r8, 1
mov rax, rsi
cmovne rax, r12
test r10, r10
jne 0x140005007
mov rsi, r12
jmp 0x140005011
cmp r10, 1
je 0x140005011
mov rsi, qword [rbx + 8]
mov rcx, qword [rax + 8]
test rcx, rcx
jne 0x14000501f
cmp rsi, rax
jmp 0x140005023
cmp qword [rsi + 8], rcx
sete al
test al, al
je 0x140005200
cmp r15, 0xffffffffffffffff
jne 0x140005070
lea rax, [r9 + r13]
mov dword [rsp + 0x34], edi
cmp rax, 1
jbe 0x140005061
mov rax, qword [0x140012128]
mov edx, 0x2719
mov rcx, r12
call qword [rax + 0x30]
mov dword [rsp + 0x30], 0x2719
jmp 0x1400051dc
mov al, 1
mov dword [rsp + 0x30], 0x2719
jmp 0x1400051dc
lea ecx, [r15 + 1]
mov qword [rbp + 0x168], r15
lea r9, [rsp + 0x50]
mov dword [rbp + 0x160], 1
lea r8, [rbp + 0x160]
mov qword [rsp + 0x58], r15
xor edx, edx
mov dword [rsp + 0x50], 1
mov qword [rsp + 0x20], rdi
call qword [sym.imp.WS2_32.dll_select]
test eax, eax
js 0x1400051a5
xorps xmm0, xmm0
mov qword [rsp + 0x40], rdi
movups xmmword [rbx], xmm0
lea rax, [rsp + 0x4c]
mov edx, 0xffff
movsd xmm0, qword [rsp + 0x40]
lea r9, [rsp + 0x48]
mov r8d, 0x1007
movsd qword [rbx + 0x10], xmm0
mov rcx, r15
mov dword [rsp + 0x48], edi
mov dword [rsp + 0x4c], 4
mov qword [rsp + 0x20], rax
call qword [sym.imp.WS2_32.dll_getsockopt]
mov r14d, eax
test eax, eax
jne 0x140005117
xorps xmm0, xmm0
mov qword [rsp + 0x40], rdi
movups xmmword [rbx], xmm0
movsd xmm0, qword [rsp + 0x40]
movsd qword [rbx + 0x10], xmm0
jmp 0x14000517c
call qword [sym.imp.WS2_32.dll_WSAGetLastError]
mov rdx, qword [0x140012130]
mov esi, eax
add rdx, r13
mov dword [rsp + 0x34], edi
cmp rdx, 1
jbe 0x140005145
mov r8, qword [0x140012128]
mov edx, eax
mov rcx, r12
call qword [r8 + 0x30]
jmp 0x14000514a
test esi, esi
setne al
movzx eax, al
add rax, 2
mov dword [rsp + 0x30], esi
mov qword [rsp + 0x38], r12
mov qword [rsp + 0x40], rax
movsd xmm1, qword [rsp + 0x40]
movups xmm0, xmmword [rsp + 0x30]
movups xmmword [rbx], xmm0
movsd qword [rbx + 0x10], xmm1
cmp r14d, 0xffffffff
je 0x140005200
mov rcx, qword [0x140012130]
mov esi, dword [rsp + 0x48]
add rcx, r13
mov dword [rsp + 0x34], edi
cmp rcx, 1
jbe 0x1400051d3
mov rax, qword [0x140012128]
mov edx, esi
mov rcx, r12
call qword [rax + 0x30]
jmp 0x1400051d8
call qword [sym.imp.WS2_32.dll_WSAGetLastError]
mov rdx, qword [0x140012130]
mov esi, eax
add rdx, r13
mov dword [rsp + 0x34], edi
cmp rdx, 1
jbe 0x1400051d3
mov r8, qword [0x140012128]
mov edx, eax
mov rcx, r12
call qword [r8 + 0x30]
jmp 0x1400051d8
test esi, esi
setne al
mov dword [rsp + 0x30], esi
movzx eax, al
mov qword [rsp + 0x38], r12
add rax, 2
movups xmm0, xmmword [rsp + 0x30]
mov qword [rsp + 0x40], rax
movsd xmm1, qword [rsp + 0x40]
movups xmmword [rbx], xmm0
movsd qword [rbx + 0x10], xmm1
mov rcx, qword [rbp + 0x370]
xor rcx, rsp
call fcn.14000a570
add rsp, 0x488
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbx
pop rbp
ret