Function at 0x18005eec0
Capabilities:
Get socket status

Disassembly:
mov qword [rsp + 0x20], r9
mov qword [rsp + 0x18], r8
mov qword [rsp + 0x10], rdx
mov qword [rsp + 8], rcx
push rsi
push rdi
sub rsp, 0x728
mov rax, qword [0x180173200]
xor rax, rsp
mov qword [rsp + 0x710], rax
mov qword [rsp + 0xd0], 0
mov dword [rsp + 0xd8], 0
mov dword [rsp + 0x50], 0
cmp qword [rsp + 0x758], 0x7fffffff
jl 0x18005ef28
mov qword [rsp + 0x758], 0x7fffffff
cmp qword [rsp + 0x740], 0xffffffffffffffff
jne 0x18005ef62
cmp qword [rsp + 0x748], 0xffffffffffffffff
jne 0x18005ef62
cmp qword [rsp + 0x750], 0xffffffffffffffff
jne 0x18005ef62
mov ecx, dword [rsp + 0x758]
call fcn.18005fe10
mov dword [rsp + 0x34], eax
mov eax, dword [rsp + 0x34]
jmp 0x18005f613
cmp qword [rsp + 0x758], 0
jle 0x18005ef9a
mov eax, dword [rsp + 0x758]
mov dword [rsp + 0x50], eax
lea rcx, [rsp + 0xb0]
call fcn.180080fe0
lea rcx, [rsp + 0xd0]
mov rdi, rcx
mov rsi, rax
mov ecx, reloc.WS2_32.dll_recv
rep movsb byte [rdi], byte [rsi]
mov dword [rsp + 0xe0], 0
mov qword [rsp + 0x58], 0xffffffffffffffff
mov dword [rsp + 0x2f0], 0
cmp qword [rsp + 0x740], 0xffffffffffffffff
je 0x18005f0d3
xor eax, eax
test eax, eax
jne 0x18005efc8
mov dword [rsp + 0x38], 0
jmp 0x18005efe2
mov eax, dword [rsp + 0x38]
inc eax
mov dword [rsp + 0x38], eax
mov eax, dword [rsp + 0x2f0]
cmp dword [rsp + 0x38], eax
jae 0x18005f009
mov eax, dword [rsp + 0x38]
mov rcx, qword [rsp + 0x740]
cmp qword [rsp + rax*8 + 0x2f8], rcx
jne 0x18005f007
jmp 0x18005f009
jmp 0x18005efd8
mov eax, dword [rsp + 0x2f0]
cmp dword [rsp + 0x38], eax
jne 0x18005f044
cmp dword [rsp + 0x2f0], 0x40
jae 0x18005f044
mov eax, dword [rsp + 0x38]
mov rcx, qword [rsp + 0x740]
mov qword [rsp + rax*8 + 0x2f8], rcx
mov eax, dword [rsp + 0x2f0]
inc eax
mov dword [rsp + 0x2f0], eax
xor eax, eax
test eax, eax
jne 0x18005efce
mov dword [rsp + 0x3c], 0
jmp 0x18005f05e
mov eax, dword [rsp + 0x3c]
inc eax
mov dword [rsp + 0x3c], eax
mov eax, dword [rsp + 0xe0]
cmp dword [rsp + 0x3c], eax
jae 0x18005f085
mov eax, dword [rsp + 0x3c]
mov rcx, qword [rsp + 0x740]
cmp qword [rsp + rax*8 + 0xe8], rcx
jne 0x18005f083
jmp 0x18005f085
jmp 0x18005f054
mov eax, dword [rsp + 0xe0]
cmp dword [rsp + 0x3c], eax
jne 0x18005f0c0
cmp dword [rsp + 0xe0], 0x40
jae 0x18005f0c0
mov eax, dword [rsp + 0x3c]
mov rcx, qword [rsp + 0x740]
mov qword [rsp + rax*8 + 0xe8], rcx
mov eax, dword [rsp + 0xe0]
inc eax
mov dword [rsp + 0xe0], eax
xor eax, eax
test eax, eax
jne 0x18005f04a
mov rax, qword [rsp + 0x740]
mov qword [rsp + 0x58], rax
cmp qword [rsp + 0x748], 0xffffffffffffffff
je 0x18005f1fc
xor eax, eax
test eax, eax
jne 0x18005f0e2
mov dword [rsp + 0x40], 0
jmp 0x18005f0fc
mov eax, dword [rsp + 0x40]
inc eax
mov dword [rsp + 0x40], eax
mov eax, dword [rsp + 0x2f0]
cmp dword [rsp + 0x40], eax
jae 0x18005f123
mov eax, dword [rsp + 0x40]
mov rcx, qword [rsp + 0x748]
cmp qword [rsp + rax*8 + 0x2f8], rcx
jne 0x18005f121
jmp 0x18005f123
jmp 0x18005f0f2
mov eax, dword [rsp + 0x2f0]
cmp dword [rsp + 0x40], eax
jne 0x18005f15e
cmp dword [rsp + 0x2f0], 0x40
jae 0x18005f15e
mov eax, dword [rsp + 0x40]
mov rcx, qword [rsp + 0x748]
mov qword [rsp + rax*8 + 0x2f8], rcx
mov eax, dword [rsp + 0x2f0]
inc eax
mov dword [rsp + 0x2f0], eax
xor eax, eax
test eax, eax
jne 0x18005f0e8
mov dword [rsp + 0x44], 0
jmp 0x18005f178
mov eax, dword [rsp + 0x44]
inc eax
mov dword [rsp + 0x44], eax
mov eax, dword [rsp + 0xe0]
cmp dword [rsp + 0x44], eax
jae 0x18005f19f
mov eax, dword [rsp + 0x44]
mov rcx, qword [rsp + 0x748]
cmp qword [rsp + rax*8 + 0xe8], rcx
jne 0x18005f19d
jmp 0x18005f19f
jmp 0x18005f16e
mov eax, dword [rsp + 0xe0]
cmp dword [rsp + 0x44], eax
jne 0x18005f1da
cmp dword [rsp + 0xe0], 0x40
jae 0x18005f1da
mov eax, dword [rsp + 0x44]
mov rcx, qword [rsp + 0x748]
mov qword [rsp + rax*8 + 0xe8], rcx
mov eax, dword [rsp + 0xe0]
inc eax
mov dword [rsp + 0xe0], eax
xor eax, eax
test eax, eax
jne 0x18005f164
mov rax, qword [rsp + 0x58]
cmp qword [rsp + 0x748], rax
jbe 0x18005f1fc
mov rax, qword [rsp + 0x748]
mov qword [rsp + 0x58], rax
mov dword [rsp + 0x500], 0
cmp qword [rsp + 0x750], 0xffffffffffffffff
je 0x18005f330
xor eax, eax
test eax, eax
jne 0x18005f216
mov dword [rsp + 0x48], 0
jmp 0x18005f230
mov eax, dword [rsp + 0x48]
inc eax
mov dword [rsp + 0x48], eax
mov eax, dword [rsp + 0x500]
cmp dword [rsp + 0x48], eax
jae 0x18005f257
mov eax, dword [rsp + 0x48]
mov rcx, qword [rsp + 0x750]
cmp qword [rsp + rax*8 + 0x508], rcx
jne 0x18005f255
jmp 0x18005f257
jmp 0x18005f226
mov eax, dword [rsp + 0x500]
cmp dword [rsp + 0x48], eax
jne 0x18005f292
cmp dword [rsp + 0x500], 0x40
jae 0x18005f292
mov eax, dword [rsp + 0x48]
mov rcx, qword [rsp + 0x750]
mov qword [rsp + rax*8 + 0x508], rcx
mov eax, dword [rsp + 0x500]
inc eax
mov dword [rsp + 0x500], eax
xor eax, eax
test eax, eax
jne 0x18005f21c
mov dword [rsp + 0x4c], 0
jmp 0x18005f2ac
mov eax, dword [rsp + 0x4c]
inc eax
mov dword [rsp + 0x4c], eax
mov eax, dword [rsp + 0xe0]
cmp dword [rsp + 0x4c], eax
jae 0x18005f2d3
mov eax, dword [rsp + 0x4c]
mov rcx, qword [rsp + 0x750]
cmp qword [rsp + rax*8 + 0xe8], rcx
jne 0x18005f2d1
jmp 0x18005f2d3
jmp 0x18005f2a2
mov eax, dword [rsp + 0xe0]
cmp dword [rsp + 0x4c], eax
jne 0x18005f30e
cmp dword [rsp + 0xe0], 0x40
jae 0x18005f30e
mov eax, dword [rsp + 0x4c]
mov rcx, qword [rsp + 0x750]
mov qword [rsp + rax*8 + 0xe8], rcx
mov eax, dword [rsp + 0xe0]
inc eax
mov dword [rsp + 0xe0], eax
xor eax, eax
test eax, eax
jne 0x18005f298
mov rax, qword [rsp + 0x58]
cmp qword [rsp + 0x750], rax
jbe 0x18005f330
mov rax, qword [rsp + 0x750]
mov qword [rsp + 0x58], rax
cmp qword [rsp + 0x758], 0
jge 0x18005f346
mov qword [rsp + 0x70], 0
jmp 0x18005f350
lea rax, [rsp + 0x68]
mov qword [rsp + 0x70], rax
mov rax, qword [rsp + 0x70]
mov qword [rsp + 0x88], rax
cmp qword [rsp + 0x758], 0
jle 0x18005f392
mov eax, dword [rsp + 0x50]
cdq
mov ecx, 0x3e8
idiv ecx
mov dword [rsp + 0x68], eax
mov eax, dword [rsp + 0x50]
cdq
mov ecx, 0x3e8
idiv ecx
mov eax, edx
imul eax, eax, 0x3e8
mov dword [rsp + 0x6c], eax
jmp 0x18005f3ad
cmp qword [rsp + 0x758], 0
jne 0x18005f3ad
mov dword [rsp + 0x68], 0
mov dword [rsp + 0x6c], 0
cmp dword [rsp + 0x500], 0
je 0x18005f3c6
lea rax, [rsp + 0x500]
mov qword [rsp + 0x78], rax
jmp 0x18005f3cf
mov qword [rsp + 0x78], 0
cmp dword [rsp + 0x2f0], 0
je 0x18005f3eb
lea rax, [rsp + 0x2f0]
mov qword [rsp + 0x80], rax
jmp 0x18005f3f7
mov qword [rsp + 0x80], 0
mov eax, dword [rsp + 0x58]
inc eax
mov rcx, qword [rsp + 0x88]
mov qword [rsp + 0x20], rcx
lea r9, [rsp + 0xe0]
mov r8, qword [rsp + 0x78]
mov rdx, qword [rsp + 0x80]
mov ecx, eax
call qword [sym.imp.WS2_32.dll_select]
mov dword [rsp + 0x34], eax
cmp dword [rsp + 0x34], 0xffffffff
je 0x18005f437
jmp 0x18005f4ef
call qword [sym.imp.WS2_32.dll_WSAGetLastError]
mov dword [rsp + 0x60], eax
cmp dword [rsp + 0x60], 0
je 0x18005f460
cmp dword [0x1801759dc], 0
jne 0x18005f45b
cmp dword [rsp + 0x60], 0x2714
je 0x18005f460
jmp 0x18005f4ef
cmp qword [rsp + 0x758], 0
jle 0x18005f4e4
lea rax, [rsp + 0x90]
lea rcx, [rsp + 0xd0]
mov rdi, rax
mov rsi, rcx
mov ecx, reloc.WS2_32.dll_recv
rep movsb byte [rdi], byte [rsi]
lea rcx, [rsp + 0xc0]
call fcn.180080fe0
lea rcx, [rsp + 0xa0]
mov rdi, rcx
mov rsi, rax
mov ecx, reloc.WS2_32.dll_recv
rep movsb byte [rdi], byte [rsi]
lea rdx, [rsp + 0x90]
lea rcx, [rsp + 0xa0]
call fcn.1800810c0
cdqe
mov rcx, qword [rsp + 0x758]
sub rcx, rax
mov rax, rcx
mov dword [rsp + 0x50], eax
cmp dword [rsp + 0x50], 0
jg 0x18005f4e4
mov dword [rsp + 0x34], 0
jmp 0x18005f4ef
cmp dword [rsp + 0x34], 0xffffffff
je 0x18005f35d
cmp dword [rsp + 0x34], 0
jge 0x18005f500
mov eax, 0xffffffff
jmp 0x18005f613
cmp dword [rsp + 0x34], 0
jne 0x18005f50e
xor eax, eax
jmp 0x18005f613
mov dword [rsp + 0x30], 0
cmp qword [rsp + 0x740], 0xffffffffffffffff
je 0x18005f569
lea rdx, [rsp + 0x2f0]
mov rcx, qword [rsp + 0x740]
call sub.WS2_32.dll___WSAFDIsSet
test eax, eax
je 0x18005f545
mov eax, dword [rsp + 0x30]
or eax, 1
mov dword [rsp + 0x30], eax
lea rdx, [rsp + 0xe0]
mov rcx, qword [rsp + 0x740]
call sub.WS2_32.dll___WSAFDIsSet
test eax, eax
je 0x18005f569
mov eax, dword [rsp + 0x30]
or eax, 4
mov dword [rsp + 0x30], eax
cmp qword [rsp + 0x748], 0xffffffffffffffff
je 0x18005f5bc
lea rdx, [rsp + 0x2f0]
mov rcx, qword [rsp + 0x748]
call sub.WS2_32.dll___WSAFDIsSet
test eax, eax
je 0x18005f598
mov eax, dword [rsp + 0x30]
or eax, 8
mov dword [rsp + 0x30], eax
lea rdx, [rsp + 0xe0]
mov rcx, qword [rsp + 0x748]
call sub.WS2_32.dll___WSAFDIsSet
test eax, eax
je 0x18005f5bc
mov eax, dword [rsp + 0x30]
or eax, 4
mov dword [rsp + 0x30], eax
cmp qword [rsp + 0x750], 0xffffffffffffffff
je 0x18005f60f
lea rdx, [rsp + 0x500]
mov rcx, qword [rsp + 0x750]
call sub.WS2_32.dll___WSAFDIsSet
test eax, eax
je 0x18005f5eb
mov eax, dword [rsp + 0x30]
or eax, 2
mov dword [rsp + 0x30], eax
lea rdx, [rsp + 0xe0]
mov rcx, qword [rsp + 0x750]
call sub.WS2_32.dll___WSAFDIsSet
test eax, eax
je 0x18005f60f
mov eax, dword [rsp + 0x30]
or eax, 4
mov dword [rsp + 0x30], eax
mov eax, dword [rsp + 0x30]
mov rcx, qword [rsp + 0x710]
xor rcx, rsp
call fcn.1800e95d0
add rsp, 0x728
pop rdi
pop rsi
ret