Function at 0x1800d55b0
Capabilities:
Get socket status

Disassembly:
push rbp
push rbx
push rsi
push rdi
push r12
push r15
lea rbp, [rsp - 0x5e8]
sub rsp, 0x6e8
mov rax, qword [0x18016f298]
xor rax, rsp
mov qword [rbp + 0x5c0], rax
xor edi, edi
mov dword [rsp + 0x30], r8d
mov ebx, edx
mov rsi, rcx
mov qword [rsp + 0x50], rcx
mov r12d, edi
mov qword [rsp + 0x40], rdi
mov dword [rsp + 0x48], edi
test rcx, rcx
je 0x1800d5614
mov edx, edi
test ebx, ebx
je 0x1800d5614
mov rax, rcx
cmp qword [rax], 0xffffffffffffffff
jne 0x1800d5638
inc edx
add rax, 0x10
cmp edx, ebx
jb 0x1800d5604
test r8d, r8d
je 0x1800d59c3
jns 0x1800d59ba
mov ecx, 0x2726
call qword [sym.imp.WS2_32.dll_WSASetLastError]
or edi, 0xffffffff
mov eax, edi
jmp 0x1800d57ff
mov qword [rsp + 0x728], r13
mov qword [rsp + 0x6e0], r14
movaps xmmword [rsp + 0x6d0], xmm6
test r8d, r8d
jle 0x1800d5667
lea rcx, [rsp + 0x60]
mov r12d, r8d
call fcn.1800ca870
movups xmm6, xmmword [rax]
jmp 0x1800d566c
movaps xmm6, xmmword [rsp + 0x40]
or r14, 0xffffffffffffffff
mov dword [rbp - 0x70], edi
add rsi, 8
mov dword [rbp + 0x1a0], edi
mov r10d, edi
mov dword [rbp + 0x3b0], edi
mov r11d, edi
mov r8d, edi
mov r13, rbx
mov eax, 0x710
mov ecx, 0x600
mov r15d, 0x300
nop
mov rdx, qword [rsi - 8]
mov word [rsi + 2], di
cmp rdx, 0xffffffffffffffff
je 0x1800d57a3
movzx r9d, word [rsi]
test ax, r9w
je 0x1800d57a3
cmp rdx, r14
cmova r14, rdx
test r15w, r9w
je 0x1800d5706
mov ecx, edi
test r10d, r10d
je 0x1800d56e4
mov eax, ecx
cmp qword [rbp + rax*8 - 0x68], rdx
je 0x1800d56e4
inc ecx
cmp ecx, r10d
jb 0x1800d56d4
cmp ecx, r10d
jne 0x1800d5701
cmp r10d, 0x40
jae 0x1800d5701
mov eax, ecx
mov qword [rbp + rax*8 - 0x68], rdx
mov r10d, dword [rbp - 0x70]
inc r10d
mov dword [rbp - 0x70], r10d
mov ecx, 0x600
test r9b, 0x10
je 0x1800d5751
mov ecx, edi
test r11d, r11d
je 0x1800d5726
mov eax, ecx
cmp qword [rbp + rax*8 + 0x1a8], rdx
je 0x1800d5726
inc ecx
cmp ecx, r11d
jb 0x1800d5713
cmp ecx, r11d
jne 0x1800d574c
cmp r11d, 0x40
jae 0x1800d574c
mov eax, ecx
mov qword [rbp + rax*8 + 0x1a8], rdx
mov r11d, dword [rbp + 0x1a0]
inc r11d
mov dword [rbp + 0x1a0], r11d
mov ecx, 0x600
test cx, r9w
je 0x1800d579e
mov ecx, edi
test r8d, r8d
je 0x1800d5773
nop
mov eax, ecx
cmp qword [rbp + rax*8 + 0x3b8], rdx
je 0x1800d5773
inc ecx
cmp ecx, r8d
jb 0x1800d5760
cmp ecx, r8d
jne 0x1800d5799
cmp r8d, 0x40
jae 0x1800d5799
mov eax, ecx
mov qword [rbp + rax*8 + 0x3b8], rdx
mov r8d, dword [rbp + 0x3b0]
inc r8d
mov dword [rbp + 0x3b0], r8d
mov ecx, 0x600
mov eax, 0x710
add rsi, 0x10
sub rbx, 1
jne 0x1800d56a0
mov r15d, dword [rsp + 0x30]
test r10d, r10d
jne 0x1800d581e
test r11d, r11d
jne 0x1800d581e
test r8d, r8d
jne 0x1800d581e
test r15d, r15d
je 0x1800d57e5
jns 0x1800d57dc
mov ecx, 0x2726
call qword [sym.imp.WS2_32.dll_WSASetLastError]
or edi, 0xffffffff
jmp 0x1800d57e5
mov ecx, r15d
call qword [sym.imp.KERNEL32.dll_Sleep]
mov eax, edi
mov r14, qword [rsp + 0x6e0]
mov r13, qword [rsp + 0x728]
movaps xmm6, xmmword [rsp + 0x6d0]
mov rcx, qword [rbp + 0x5c0]
xor rcx, rsp
call fcn.180107470
add rsp, 0x6e8
pop r15
pop r12
pop rdi
pop rsi
pop rbx
pop rbp
ret
test r15d, r15d
lea rsi, [rsp + 0x40]
cmovs rsi, rdi
nop word [rax + rax]
test r15d, r15d
jle 0x1800d5862
mov eax, 0x10624dd3
mov ecx, r12d
imul r12d
sar edx, 6
mov eax, edx
shr eax, 0x1f
add edx, eax
imul eax, edx, 0x3e8
mov dword [rsp + 0x40], edx
sub ecx, eax
imul eax, ecx, 0x3e8
mov dword [rsp + 0x44], eax
jmp 0x1800d5869
jne 0x1800d5869
mov qword [rsp + 0x40], rdi
test r8d, r8d
mov qword [rsp + 0x20], rsi
lea r9, [rbp + 0x3b0]
cmove r9, rdi
lea r8, [rbp + 0x1a0]
test r11d, r11d
lea rdx, [rbp - 0x70]
lea ecx, [r14 + 1]
cmove r8, rdi
test r10d, r10d
cmove rdx, rdi
call qword [sym.imp.WS2_32.dll_select]
cmp eax, 0xffffffff
jne 0x1800d5921
call qword [sym.imp.WS2_32.dll_WSAGetLastError]
test eax, eax
je 0x1800d58bd
cmp dword [0x1803e3880], edi
jne 0x1800d5925
cmp eax, 0x2714
jne 0x1800d5925
test r15d, r15d
jg 0x1800d58d9
mov r10d, dword [rbp - 0x70]
mov r11d, dword [rbp + 0x1a0]
mov r8d, dword [rbp + 0x3b0]
jmp 0x1800d5830
lea rcx, [rbp - 0x80]
movdqa xmmword [rsp + 0x70], xmm6
call fcn.1800ca870
lea rdx, [rsp + 0x70]
lea rcx, [rsp + 0x60]
movups xmm0, xmmword [rax]
movaps xmmword [rsp + 0x60], xmm0
call fcn.1800ca8c0
mov r12d, r15d
sub r12d, eax
test r12d, r12d
jle 0x1800d592f
mov r10d, dword [rbp - 0x70]
mov r11d, dword [rbp + 0x1a0]
mov r8d, dword [rbp + 0x3b0]
jmp 0x1800d5830
test eax, eax
jns 0x1800d592d
or eax, 0xffffffff
jmp 0x1800d57e7
jne 0x1800d5936
xor eax, eax
jmp 0x1800d57e7
mov rbx, qword [rsp + 0x50]
mov esi, edi
add rbx, 0xa
mov r14d, 0x400
nop word [rax + rax]
mov rcx, qword [rbx - 0xa]
mov word [rbx], di
cmp rcx, 0xffffffffffffffff
je 0x1800d59a9
lea rdx, [rbp - 0x70]
call sub.WS2_32.dll___WSAFDIsSet
test eax, eax
je 0x1800d5972
mov eax, 0x300
or word [rbx], ax
mov rcx, qword [rbx - 0xa]
lea rdx, [rbp + 0x1a0]
call sub.WS2_32.dll___WSAFDIsSet
test eax, eax
je 0x1800d598a
or word [rbx], 0x10
mov rcx, qword [rbx - 0xa]
lea rdx, [rbp + 0x3b0]
call sub.WS2_32.dll___WSAFDIsSet
test eax, eax
je 0x1800d59a2
or word [rbx], r14w
cmp word [rbx], di
je 0x1800d59a9
inc esi
add rbx, 0x10
sub r13, 1
jne 0x1800d5950
mov eax, esi
jmp 0x1800d57e7
mov ecx, r8d
call qword [sym.imp.KERNEL32.dll_Sleep]
mov eax, edi
jmp 0x1800d57ff