Function at 0x1400292a4
Capabilities:
Get socket status

Disassembly:
mov rax, rsp
mov qword [rax + 0x10], rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rax - 0x5f8]
sub rsp, 0x6c0
movaps xmmword [rax - 0x48], xmm6
mov rax, qword [0x14016a100]
xor rax, rsp
mov qword [rbp + 0x5a0], rax
xor r9d, r9d
mov ebx, edx
mov qword [rsp + 0x30], r9
mov edi, r8d
mov dword [rsp + 0x38], r9d
mov r15, rcx
mov r12d, r9d
test rcx, rcx
je 0x140029310
mov eax, r9d
test edx, edx
je 0x140029310
lea edx, [r9 + 0x10]
cmp qword [rcx], 0xffffffffffffffff
jne 0x140029346
inc eax
add rcx, rdx
cmp eax, ebx
jb 0x140029301
mov ecx, edi
call fcn.1400299fc
mov rcx, qword [rbp + 0x5a0]
xor rcx, rsp
call fcn.140085010
lea r11, [rsp + 0x6c0]
mov rbx, qword [r11 + 0x48]
movaps xmm6, xmmword [r11 - 0x10]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret
test edi, edi
jle 0x14002935f
lea rcx, [rsp + 0x40]
mov r12d, edi
call fcn.14002f888
xor r9d, r9d
movups xmm6, xmmword [rax]
jmp 0x140029364
movaps xmm6, xmmword [rsp + 0x30]
mov r10d, r9d
mov dword [rsp + 0x70], r9d
mov r11d, r9d
mov dword [rbp + 0x180], r9d
mov r8d, r9d
mov dword [rbp + 0x390], r9d
or r14, 0xffffffffffffffff
mov rsi, r15
mov r13, rbx
mov ecx, 0x300
mov rdx, qword [rsi]
mov word [rsi + 0xa], r9w
cmp rdx, 0xffffffffffffffff
je 0x1400294a6
movzx r9d, word [rsi + 8]
mov eax, 0x710
test ax, r9w
je 0x140029499
cmp rdx, r14
mov rax, rdx
cmovbe rax, r14
mov r14, rax
test cx, r9w
je 0x140029400
xor eax, eax
mov ecx, eax
test r10d, r10d
je 0x1400293e1
mov eax, ecx
cmp qword [rsp + rax*8 + 0x78], rdx
je 0x1400293e1
inc ecx
cmp ecx, r10d
jb 0x1400293d1
cmp ecx, r10d
jne 0x140029400
cmp r10d, 0x40
jae 0x140029400
mov eax, ecx
mov qword [rsp + rax*8 + 0x78], rdx
mov r10d, dword [rsp + 0x70]
inc r10d
mov dword [rsp + 0x70], r10d
test r9b, 0x10
je 0x140029448
xor eax, eax
mov ecx, eax
test r11d, r11d
je 0x140029422
mov eax, ecx
cmp qword [rbp + rax*8 + 0x188], rdx
je 0x140029422
inc ecx
cmp ecx, r11d
jb 0x14002940f
cmp ecx, r11d
jne 0x140029448
cmp r11d, 0x40
jae 0x140029448
mov eax, ecx
mov qword [rbp + rax*8 + 0x188], rdx
mov r11d, dword [rbp + 0x180]
inc r11d
mov dword [rbp + 0x180], r11d
mov eax, 0x600
test ax, r9w
je 0x14002949e
xor r9d, r9d
mov ecx, r9d
test r8d, r8d
je 0x140029471
mov eax, ecx
cmp qword [rbp + rax*8 + 0x398], rdx
je 0x140029471
inc ecx
cmp ecx, r8d
jb 0x14002945e
cmp ecx, r8d
jne 0x1400294a1
cmp r8d, 0x40
jae 0x1400294a1
mov eax, ecx
mov qword [rbp + rax*8 + 0x398], rdx
mov r8d, dword [rbp + 0x390]
inc r8d
mov dword [rbp + 0x390], r8d
jmp 0x1400294a1
xor r9d, r9d
jmp 0x1400294a6
xor r9d, r9d
mov ecx, 0x300
add rsi, 0x10
sub rbx, 1
jne 0x14002938f
test r10d, r10d
jne 0x1400294c7
test r11d, r11d
jne 0x1400294c7
test r8d, r8d
je 0x140029310
test edi, edi
lea rbx, [rsp + 0x30]
cmovs rbx, r9
test edi, edi
jle 0x140029503
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 + 0x30], edx
sub ecx, eax
imul eax, ecx, 0x3e8
mov dword [rsp + 0x34], eax
jmp 0x14002950b
jne 0x14002950b
and qword [rsp + 0x30], 0
neg r8d
mov qword [rsp + 0x20], rbx
lea rax, [rbp + 0x390]
sbb r9, r9
lea ecx, [r14 + 1]
and r9, rax
lea rax, [rbp + 0x180]
neg r11d
sbb r8, r8
and r8, rax
lea rax, [rsp + 0x70]
neg r10d
sbb rdx, rdx
and rdx, rax
call qword [sym.imp.WS2_32.dll_select]
cmp eax, 0xffffffff
jne 0x1400295c1
call qword [sym.imp.WS2_32.dll_WSAGetLastError]
xor r9d, r9d
test eax, eax
je 0x14002956a
cmp dword [0x14016be70], r9d
jne 0x1400295c8
cmp eax, 0x2714
jne 0x1400295c8
test edi, edi
jle 0x1400295a4
lea rcx, [rsp + 0x60]
movdqa xmmword [rsp + 0x50], xmm6
call fcn.14002f888
lea rdx, [rsp + 0x50]
lea rcx, [rsp + 0x40]
movups xmm0, xmmword [rax]
movdqu xmmword [rsp + 0x40], xmm0
call fcn.14002f900
mov r12d, edi
xor r9d, r9d
sub r12d, eax
test r12d, r12d
jle 0x1400295bc
mov r10d, dword [rsp + 0x70]
mov r11d, dword [rbp + 0x180]
mov r8d, dword [rbp + 0x390]
jmp 0x1400294d2
mov eax, r9d
jmp 0x1400295c4
xor r9d, r9d
test eax, eax
jns 0x1400295d0
or eax, 0xffffffff
jmp 0x140029317
jne 0x1400295d9
xor eax, eax
jmp 0x140029317
mov edi, r9d
lea rbx, [r15 + 0xa]
mov eax, reloc.WS2_32.dll_recv
mov esi, 0x300
mov rcx, qword [rbx - 0xa]
mov word [rbx], r9w
cmp rcx, 0xffffffffffffffff
je 0x140029653
lea rdx, [rsp + 0x70]
call sub.WS2_32.dll___WSAFDIsSet
test eax, eax
je 0x140029609
or word [rbx], si
mov rcx, qword [rbx - 0xa]
lea rdx, [rbp + 0x180]
call sub.WS2_32.dll___WSAFDIsSet
test eax, eax
je 0x140029625
mov eax, reloc.WS2_32.dll_recv
or word [rbx], ax
mov rcx, qword [rbx - 0xa]
lea rdx, [rbp + 0x390]
call sub.WS2_32.dll___WSAFDIsSet
xor r9d, r9d
test eax, eax
je 0x140029644
mov eax, 0x400
or word [rbx], ax
movzx eax, word [rbx]
test ax, ax
mov eax, reloc.WS2_32.dll_recv
je 0x140029653
inc edi
add rbx, rax
sub r13, 1
jne 0x1400295ea
mov eax, edi
jmp 0x140029317