Function at 0x18008da50
Capabilities:
Get socket status

Disassembly:
mov rax, rsp
mov dword [rax + 0x18], r8d
push rbp
push rsi
push rdi
push r13
push r15
sub rsp, 0x670
xor esi, esi
mov edi, edx
mov r15, rcx
mov dword [rax + 8], esi
mov dword [rax + 0xc], esi
mov r13d, esi
test rcx, rcx
je 0x18008da96
mov r9d, esi
test edx, edx
je 0x18008da96
mov rax, rcx
cmp qword [rax], 0xffffffffffffffff
jne 0x18008daad
inc r9d
add rax, 0x10
cmp r9d, edi
jb 0x18008da84
mov ecx, r8d
call fcn.18008d6c0
add rsp, 0x670
pop r15
pop r13
pop rdi
pop rsi
pop rbp
ret
mov qword [rsp + 0x6a8], rbx
mov qword [rsp + 0x668], r12
mov qword [rsp + 0x660], r14
test r8d, r8d
jle 0x18008dad7
mov r13d, r8d
call fcn.180097f10
mov rbx, rax
jmp 0x18008dadf
mov rbx, qword [rsp + 0x6a0]
xor ebp, ebp
mov rsi, r15
mov r14, rdi
mov r10d, ebp
mov dword [rsp + 0x240], ebp
mov r11d, ebp
mov dword [rsp + 0x30], ebp
mov r8d, ebp
mov dword [rsp + 0x450], ebp
or r12, 0xffffffffffffffff
nop word [rax + rax]
mov rdx, qword [rsi]
mov word [rsi + 0xa], bp
cmp rdx, 0xffffffffffffffff
je 0x18008dc1a
movzx r9d, word [rsi + 8]
test r9b, 7
je 0x18008dc1a
cmp rdx, r12
cmova r12, rdx
test r9b, 1
je 0x18008db8a
mov ecx, ebp
mov rax, rbp
test r10d, r10d
je 0x18008db64
nop word [rax + rax]
cmp qword [rsp + rax*8 + 0x248], rdx
je 0x18008db64
inc ecx
inc rax
cmp ecx, r10d
jb 0x18008db50
cmp ecx, r10d
jne 0x18008db8a
cmp r10d, 0x40
jae 0x18008db8a
mov qword [rsp + rax*8 + 0x248], rdx
mov r10d, dword [rsp + 0x240]
inc r10d
mov dword [rsp + 0x240], r10d
test r9b, 4
je 0x18008dbce
mov ecx, ebp
mov rax, rbp
test r11d, r11d
je 0x18008dbb1
nop word [rax + rax]
cmp qword [rsp + rax*8 + 0x38], rdx
je 0x18008dbb1
inc ecx
inc rax
cmp ecx, r11d
jb 0x18008dba0
cmp ecx, r11d
jne 0x18008dbce
cmp r11d, 0x40
jae 0x18008dbce
mov qword [rsp + rax*8 + 0x38], rdx
mov r11d, dword [rsp + 0x30]
inc r11d
mov dword [rsp + 0x30], r11d
test r9b, 2
je 0x18008dc1a
mov ecx, ebp
mov rax, rbp
test r8d, r8d
je 0x18008dbf4
nop
cmp qword [rsp + rax*8 + 0x458], rdx
je 0x18008dbf4
inc ecx
inc rax
cmp ecx, r8d
jb 0x18008dbe0
cmp ecx, r8d
jne 0x18008dc1a
cmp r8d, 0x40
jae 0x18008dc1a
mov qword [rsp + rax*8 + 0x458], rdx
mov r8d, dword [rsp + 0x450]
inc r8d
mov dword [rsp + 0x450], r8d
add rsi, 0x10
sub rdi, 1
jne 0x18008db10
mov ebp, dword [rsp + 0x6b0]
test r10d, r10d
jne 0x18008dc6c
test r11d, r11d
jne 0x18008dc6c
test r8d, r8d
jne 0x18008dc6c
mov ecx, ebp
call fcn.18008d6c0
mov r12, qword [rsp + 0x668]
mov rbx, qword [rsp + 0x6a8]
mov r14, qword [rsp + 0x660]
add rsp, 0x670
pop r15
pop r13
pop rdi
pop rsi
pop rbp
ret
lea rdi, [rsp + 0x6a0]
test ebp, ebp
mov ecx, 0
cmovs rdi, rcx
nop
test ebp, ebp
jle 0x18008dcb7
mov eax, 0x10624dd3
imul r13d
sar edx, 6
mov eax, edx
shr eax, 0x1f
add edx, eax
mov eax, r13d
mov dword [rsp + 0x6a0], edx
imul edx, edx, 0x3e8
sub eax, edx
imul eax, eax, 0x3e8
mov dword [rsp + 0x6a4], eax
jmp 0x18008dcc9
test ebp, ebp
jne 0x18008dcc9
mov dword [rsp + 0x6a0], ecx
mov dword [rsp + 0x6a4], ecx
test r8d, r8d
lea r9, [rsp + 0x450]
lea r8, [rsp + 0x30]
cmove r9, rcx
test r11d, r11d
lea rdx, [rsp + 0x240]
cmove r8, rcx
test r10d, r10d
mov qword [rsp + 0x20], rdi
cmove rdx, rcx
lea ecx, [r12 + 1]
call qword [sym.imp.WS2_32.dll_select]
cmp eax, 0xffffffff
jne 0x18008dd79
call qword [sym.imp.WS2_32.dll_WSAGetLastError]
test eax, eax
je 0x18008dd22
cmp dword [0x18010d854], 0
jne 0x18008dd7d
cmp eax, 0x2714
jne 0x18008dd7d
test ebp, ebp
jg 0x18008dd42
mov r10d, dword [rsp + 0x240]
mov r11d, dword [rsp + 0x30]
mov r8d, dword [rsp + 0x450]
xor ecx, ecx
jmp 0x18008dc80
call fcn.180097f10
mov rdx, rbx
mov rcx, rax
call fcn.180097f50
mov r13d, ebp
sub r13d, eax
test r13d, r13d
jle 0x18008dd89
mov r10d, dword [rsp + 0x240]
mov r11d, dword [rsp + 0x30]
mov r8d, dword [rsp + 0x450]
xor ecx, ecx
jmp 0x18008dc80
test eax, eax
jns 0x18008dd85
or eax, 0xffffffff
jmp 0x18008dc45
test eax, eax
jne 0x18008dd90
xor eax, eax
jmp 0x18008dc45
xor esi, esi
lea rbx, [r15 + 0xa]
mov edi, esi
nop dword [rax + rax]
mov rcx, qword [rbx - 0xa]
mov word [rbx], si
cmp rcx, 0xffffffffffffffff
je 0x18008ddf8
lea rdx, [rsp + 0x240]
call sub.WS2_32.dll___WSAFDIsSet
test eax, eax
je 0x18008ddc2
or word [rbx], 1
mov rcx, qword [rbx - 0xa]
lea rdx, [rsp + 0x30]
call sub.WS2_32.dll___WSAFDIsSet
test eax, eax
je 0x18008ddd8
or word [rbx], 4
mov rcx, qword [rbx - 0xa]
lea rdx, [rsp + 0x450]
call sub.WS2_32.dll___WSAFDIsSet
test eax, eax
je 0x18008ddf1
or word [rbx], 2
cmp word [rbx], si
je 0x18008ddf8
inc edi
add rbx, 0x10
sub r14, 1
jne 0x18008dda0
mov eax, edi
jmp 0x18008dc45