Function at 0x1401c5a3a
Capabilities:
Get socket status

Disassembly:
jmp 0x140344f70
mov qword [rsp + 8], rcx
push rbp
push rdi
mov eax, 0x86f8
call fcn.1401c038c
sub rsp, rax
lea rbp, [rsp + 0x30]
lea rdi, [rsp + 0x30]
mov ecx, 0x2032
mov eax, 0xcccccccc
rep stosd dword [rdi], eax
mov rcx, qword [rsp + 0x8718]
mov rax, qword [0x140646600]
xor rax, rbp
mov qword [rbp + 0x86b0], rax
lea rcx, reloc.WS2_32.dll_accept
call fcn.1401ca792
call fcn.1401c1002
mov rax, qword [rbp + 0x86e0]
cqo
mov ecx, 0x3e8
idiv rcx
mov dword [rbp + 0x8038], eax
mov rax, qword [rbp + 0x86e0]
cqo
mov ecx, 0x3e8
idiv rcx
mov rax, rdx
imul rax, rax, 0x3e8
mov dword [rbp + 0x803c], eax
mov r8d, 0x8008
lea rdx, [0x140663560]
lea rcx, [rbp + 0x10]
call fcn.1401c412b
lea rax, [rbp + 0x8038]
mov qword [rsp + 0x20], rax
xor r9d, r9d
xor r8d, r8d
lea rdx, [rbp + 0x10]
mov ecx, dword [0x140663510]
call qword [sym.imp.WS2_32.dll_select]
mov dword [rbp + 0x8054], eax
cmp dword [rbp + 0x8054], 0xffffffff
jne 0x140345075
call qword [sym.imp.WS2_32.dll_WSAGetLastError]
cmp eax, 0x2714
je 0x14034506e
call fcn.1401c8e4c
mov rdx, rax
lea rcx, str.do_sockets:_select___failed___s__n
call fcn.1401c1a2f
mov ecx, 1
call fcn.1401bee33
xor eax, eax
jmp 0x1403453f4
xor ecx, ecx
call fcn.140348050
mov qword [0x140663518], rax
mov dword [rbp + 0x8074], 0
jmp 0x14034509d
mov eax, dword [rbp + 0x8074]
inc eax
mov dword [rbp + 0x8074], eax
mov eax, dword [rbp + 0x10]
cmp dword [rbp + 0x8074], eax
jge 0x1403450ff
movsxd rax, dword [rbp + 0x8074]
mov rcx, qword [rbp + rax*8 + 0x18]
call fcn.1401c8e1a
mov dword [rbp + 0x8094], eax
movsxd rax, dword [rbp + 0x8094]
lea rcx, [0x14065b510]
cmp qword [rcx + rax*8], 0
je 0x1403450fd
movsxd rax, dword [rbp + 0x8094]
lea rcx, [0x14065b510]
mov rax, qword [rcx + rax*8]
mov rax, qword [rax + 0x50]
mov qword [rbp + 0x86a8], rax
mov ecx, dword [rbp + 0x8094]
call qword [rbp + 0x86a8]
jmp 0x14034508f
call fcn.1401c1002
mov dword [rbp + 0x8074], 1
jmp 0x14034511e
mov eax, dword [rbp + 0x8074]
inc eax
mov dword [rbp + 0x8074], eax
mov eax, dword [0x140663510]
cmp dword [rbp + 0x8074], eax
jge 0x1403453f2
movsxd rax, dword [rbp + 0x8074]
lea rcx, [0x14065b510]
cmp qword [rcx + rax*8], 0
jne 0x140345147
jmp 0x140345110
movsxd rax, dword [rbp + 0x8074]
lea rcx, [0x14065b510]
mov rax, qword [rcx + rax*8]
cmp qword [rax + 0x40], 0
je 0x140345221
movsxd rax, dword [rbp + 0x8074]
lea rcx, [0x14065b510]
mov rax, qword [rcx + rax*8]
mov rdx, qword [rax + 0x40]
mov rcx, qword [0x140663518]
call fcn.140347ff0
cmp rax, qword [0x140646450]
jle 0x140345221
movsxd rax, dword [rbp + 0x8074]
lea rcx, [0x14065b510]
mov rax, qword [rcx + rax*8]
movzx eax, byte [rax]
shr al, 1
and al, 1
movzx eax, al
test eax, eax
je 0x140345204
movsxd rax, dword [rbp + 0x8074]
lea rcx, [0x14065b510]
mov rax, qword [rcx + rax*8]
movzx eax, byte [rax]
shr al, 2
and al, 3
movzx eax, al
cmp eax, 2
je 0x140345202
movsxd rax, dword [rbp + 0x8074]
lea rcx, [0x14065b510]
mov rax, qword [rcx + rax*8]
movzx eax, byte [rax]
and al, 0xf3
or al, 4
movsxd rcx, dword [rbp + 0x8074]
lea rdx, [0x14065b510]
mov rcx, qword [rdx + rcx*8]
mov byte [rcx], al
jmp 0x140345221
mov edx, dword [rbp + 0x8074]
lea rcx, str.Session__d_timed_out_n
call fcn.1401c860e
mov ecx, dword [rbp + 0x8074]
call fcn.1401bfce8
movsxd rax, dword [rbp + 0x8074]
lea rcx, [0x14065b510]
mov rax, qword [rcx + rax*8]
mov rax, qword [rax + 0x60]
mov qword [rbp + 0x86a8], rax
mov ecx, dword [rbp + 0x8074]
call qword [rbp + 0x86a8]
movsxd rax, dword [rbp + 0x8074]
lea rcx, [0x14065b510]
cmp qword [rcx + rax*8], 0
jne 0x140345264
jmp 0x140345110
movsxd rax, dword [rbp + 0x8074]
lea rcx, [0x14065b510]
mov rax, qword [rcx + rax*8]
cmp qword [rax + 0x28], 0x800
jne 0x1403452ac
movsxd rax, dword [rbp + 0x8074]
lea rcx, [0x14065b510]
mov rax, qword [rcx + rax*8]
cmp qword [rax + 0x18], 0x800
jne 0x1403452ac
mov ecx, dword [rbp + 0x8074]
call fcn.1401bfce8
jmp 0x140345110
movsxd rax, dword [rbp + 0x8074]
lea rcx, [0x14065b510]
mov rax, qword [rcx + rax*8]
movsxd rcx, dword [rbp + 0x8074]
lea rdx, [0x14065b510]
mov rcx, qword [rdx + rcx*8]
mov rcx, qword [rcx + 0x38]
cmp qword [rax + 0x28], rcx
jne 0x140345313
movsxd rax, dword [rbp + 0x8074]
lea rcx, [0x14065b510]
mov rax, qword [rcx + rax*8]
mov qword [rax + 0x38], 0
movsxd rax, dword [rbp + 0x8074]
lea rcx, [0x14065b510]
mov rax, qword [rcx + rax*8]
mov qword [rax + 0x28], 0
jmp 0x1403453e3
movsxd rax, dword [rbp + 0x8074]
lea rcx, [0x14065b510]
mov rax, qword [rcx + rax*8]
movsxd rcx, dword [rbp + 0x8074]
lea rdx, [0x14065b510]
mov rcx, qword [rdx + rcx*8]
mov rax, qword [rax + 0x38]
mov rcx, qword [rcx + 0x28]
sub rcx, rax
mov rax, rcx
movsxd rcx, dword [rbp + 0x8074]
lea rdx, [0x14065b510]
mov rcx, qword [rdx + rcx*8]
mov qword [rcx + 0x28], rax
movsxd rax, dword [rbp + 0x8074]
lea rcx, [0x14065b510]
mov rax, qword [rcx + rax*8]
movsxd rcx, dword [rbp + 0x8074]
lea rdx, [0x14065b510]
mov rcx, qword [rdx + rcx*8]
movsxd rdx, dword [rbp + 0x8074]
lea r8, [0x14065b510]
mov rdx, qword [r8 + rdx*8]
mov rcx, qword [rcx + 8]
add rcx, qword [rdx + 0x38]
movsxd rdx, dword [rbp + 0x8074]
lea r8, [0x14065b510]
mov rdx, qword [r8 + rdx*8]
mov qword [rbp + 0x86a8], rdx
mov r8, qword [rax + 0x28]
mov rdx, rcx
mov rax, qword [rbp + 0x86a8]
mov rcx, qword [rax + 8]
call fcn.1401cb5de
movsxd rax, dword [rbp + 0x8074]
lea rcx, [0x14065b510]
mov rax, qword [rcx + rax*8]
mov qword [rax + 0x38], 0
xor eax, eax
test eax, eax
jne 0x1403452ac
jmp 0x140345110
xor eax, eax
mov rdi, rax
lea rcx, [rbp - 0x30]
lea rdx, reloc.WS2_32.dll_bind
call fcn.1401c8505
mov rax, rdi
mov rcx, qword [rbp + 0x86b0]
xor rcx, rbp
call fcn.1401c40e5
lea rsp, [rbp + 0x86c8]
pop rdi
pop rbp
ret