Function at 0x1401ad200
Capabilities:
Get socket status

Disassembly:
mov rax, rsp
push rbp
push rbx
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rax - 0x608]
sub rsp, 0x6c8
movaps xmmword [rax - 0x58], xmm6
mov rax, qword [0x1403f80a0]
xor rax, rsp
mov qword [rbp + 0x5a0], rax
xor r11d, r11d
mov eax, 0x7fffffff
cmp r9, rax
mov qword [rbp + 0x380], r11
mov rbx, r9
mov dword [rbp + 0x388], r11d
cmovge rbx, rax
mov rdi, r8
or r15, 0xffffffffffffffff
mov rsi, rdx
mov r14, rcx
mov r13d, r11d
cmp rcx, r15
jne 0x1401ad27d
cmp rdx, r15
jne 0x1401ad27d
cmp r8, r15
jne 0x1401ad27d
mov ecx, ebx
call fcn.1401ad590
jmp 0x1401ad564
test rbx, rbx
jle 0x1401ad297
lea rcx, [rsp + 0x30]
mov r13d, ebx
call fcn.1401b01d0
xor r11d, r11d
movups xmm6, xmmword [rax]
jmp 0x1401ad29e
movaps xmm6, xmmword [rbp + 0x380]
mov dword [rsp + 0x60], r11d
mov r9d, r11d
mov r12d, 1
cmp r14, r15
je 0x1401ad2c5
mov qword [rsp + 0x68], r14
mov r9d, r12d
mov dword [rsp + 0x60], r12d
mov qword [rbp + 0x398], r14
mov rdx, r14
mov ecx, r9d
cmove rdx, r15
mov dword [rbp + 0x390], ecx
mov r10d, r9d
cmp rsi, r15
je 0x1401ad371
mov ecx, r11d
test r9d, r9d
je 0x1401ad2fa
mov eax, ecx
cmp qword [rsp + rax*8 + 0x68], rsi
je 0x1401ad2fa
add ecx, r12d
cmp ecx, r9d
jb 0x1401ad2e9
cmp ecx, r9d
jne 0x1401ad319
cmp r9d, 0x40
jae 0x1401ad319
mov eax, ecx
mov qword [rsp + rax*8 + 0x68], rsi
mov r9d, dword [rsp + 0x60]
add r9d, r12d
mov dword [rsp + 0x60], r9d
mov r8d, r11d
test r10d, r10d
je 0x1401ad336
mov eax, r8d
cmp qword [rbp + rax*8 + 0x398], rsi
je 0x1401ad336
add r8d, r12d
cmp r8d, r10d
jb 0x1401ad321
mov ecx, r10d
mov dword [rbp + 0x390], ecx
cmp r8d, r10d
jne 0x1401ad36a
mov dword [rbp + 0x390], ecx
cmp r10d, 0x40
jae 0x1401ad36a
mov eax, r8d
mov qword [rbp + rax*8 + 0x398], rsi
mov ecx, dword [rbp + 0x390]
add ecx, r12d
mov dword [rbp + 0x390], ecx
cmp rsi, rdx
cmova rdx, rsi
mov dword [rbp + 0x170], r11d
cmp rdi, r15
je 0x1401ad3ca
mov qword [rbp + 0x178], rdi
mov r8d, r11d
mov dword [rbp + 0x170], r12d
test ecx, ecx
je 0x1401ad3a7
mov eax, r8d
cmp qword [rbp + rax*8 + 0x398], rdi
je 0x1401ad3a7
add r8d, r12d
cmp r8d, ecx
jb 0x1401ad392
cmp r8d, ecx
jne 0x1401ad3c3
cmp ecx, 0x40
jae 0x1401ad3c3
mov eax, r8d
mov qword [rbp + rax*8 + 0x398], rdi
add dword [rbp + 0x390], r12d
cmp rdi, rdx
cmova rdx, rdi
test rbx, rbx
lea r15, [rbp + 0x380]
lea r12d, [rdx + 1]
cmovs r15, r11
test rbx, rbx
jle 0x1401ad412
mov eax, 0x10624dd3
mov ecx, r13d
imul r13d
sar edx, 6
mov eax, edx
shr eax, 0x1f
add edx, eax
imul eax, edx, 0x3e8
mov dword [rbp + 0x380], edx
sub ecx, eax
imul eax, ecx, 0x3e8
mov dword [rbp + 0x384], eax
jmp 0x1401ad41c
jne 0x1401ad41c
and qword [rbp + 0x380], 0
mov eax, dword [rbp + 0x170]
mov ecx, r12d
neg eax
mov qword [rsp + 0x20], r15
lea rax, [rbp + 0x170]
sbb r8, r8
and r8, rax
lea rax, [rsp + 0x60]
neg r9d
lea r9, [rbp + 0x390]
sbb rdx, rdx
and rdx, rax
call qword [sym.imp.WS2_32.dll_select]
cmp eax, 0xffffffff
jne 0x1401ad4b8
call qword [sym.imp.WS2_32.dll_WSAGetLastError]
xor r11d, r11d
test eax, eax
je 0x1401ad476
cmp dword [0x140408bcc], r11d
jne 0x1401ad4bc
cmp eax, 0x2714
jne 0x1401ad4bc
test rbx, rbx
jle 0x1401ad4ae
lea rcx, [rsp + 0x50]
movdqa xmmword [rsp + 0x40], xmm6
call fcn.1401b01d0
lea rdx, [rsp + 0x40]
lea rcx, [rsp + 0x30]
movups xmm0, xmmword [rax]
movdqu xmmword [rsp + 0x30], xmm0
call fcn.1401b02b0
mov r13d, ebx
sub r13d, eax
test r13d, r13d
jle 0x1401ad4c6
mov r9d, dword [rsp + 0x60]
jmp 0x1401ad3dc
test eax, eax
jns 0x1401ad4c4
or eax, 0xffffffff
jmp 0x1401ad564
jne 0x1401ad4cd
xor eax, eax
jmp 0x1401ad564
xor ebx, ebx
cmp r14, 0xffffffffffffffff
je 0x1401ad500
lea rdx, [rsp + 0x60]
mov rcx, r14
call sub.WS2_32.dll___WSAFDIsSet
test eax, eax
lea rdx, [rbp + 0x390]
lea eax, [rbx + 1]
mov rcx, r14
cmovne ebx, eax
call sub.WS2_32.dll___WSAFDIsSet
test eax, eax
je 0x1401ad500
or ebx, 4
cmp rsi, 0xffffffffffffffff
je 0x1401ad530
lea rdx, [rsp + 0x60]
mov rcx, rsi
call sub.WS2_32.dll___WSAFDIsSet
test eax, eax
je 0x1401ad51a
or ebx, 8
lea rdx, [rbp + 0x390]
mov rcx, rsi
call sub.WS2_32.dll___WSAFDIsSet
test eax, eax
je 0x1401ad530
or ebx, 4
cmp rdi, 0xffffffffffffffff
je 0x1401ad562
lea rdx, [rbp + 0x170]
mov rcx, rdi
call sub.WS2_32.dll___WSAFDIsSet
test eax, eax
je 0x1401ad54c
or ebx, 2
lea rdx, [rbp + 0x390]
mov rcx, rdi
call sub.WS2_32.dll___WSAFDIsSet
test eax, eax
je 0x1401ad562
or ebx, 4
mov eax, ebx
mov rcx, qword [rbp + 0x5a0]
xor rcx, rsp
call fcn.1401304f0
movaps xmm6, xmmword [rsp + 0x6b0]
add rsp, 0x6c8
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbx
pop rbp
ret