Function at 0x1401099c0
Capabilities:
Get socket status

Disassembly:
mov r11, rsp
push rbp
push rsi
push r12
push r15
lea rbp, [r11 - 0x5a8]
sub rsp, 0x688
mov rax, qword [0x14023c9c0]
xor rax, rsp
mov qword [rbp + 0x570], rax
mov r12d, r8d
mov rsi, rdx
mov r15, rcx
test rcx, rcx
je 0x140109c3f
mov qword [r11 + 0x10], rbx
xor ebx, ebx
mov qword [r11 + 0x20], rdi
mov r9d, ebx
mov dword [rsp + 0x40], ebx
mov r8d, ebx
mov dword [rbp + 0x150], ebx
mov edx, ebx
mov dword [rbp + 0x360], ebx
test rsi, rsi
je 0x140109b2f
mov qword [r11 - 0x28], r14
mov r10, rcx
mov r14, rsi
nop
mov edi, dword [r10 + 8]
test edi, 0x300
je 0x140109a81
mov ecx, ebx
test r9d, r9d
je 0x140109a5e
mov rax, qword [r10]
mov r11, qword [rax]
nop dword [rax]
cmp qword [rsp + rcx*8 + 0x48], r11
je 0x140109a5e
inc ecx
cmp ecx, r9d
jb 0x140109a50
cmp ecx, r9d
jne 0x140109a81
cmp r9d, 0x40
jae 0x140109a81
mov rax, qword [r10]
mov rax, qword [rax]
mov qword [rsp + rcx*8 + 0x48], rax
mov r9d, dword [rsp + 0x40]
inc r9d
mov dword [rsp + 0x40], r9d
test dil, 0x10
je 0x140109acf
mov ecx, ebx
test r8d, r8d
je 0x140109aa5
mov rax, qword [r10]
mov r11, qword [rax]
cmp qword [rbp + rcx*8 + 0x158], r11
je 0x140109aa5
inc ecx
cmp ecx, r8d
jb 0x140109a94
cmp ecx, r8d
jne 0x140109acf
cmp r8d, 0x40
jae 0x140109acf
mov rax, qword [r10]
mov rax, qword [rax]
mov qword [rbp + rcx*8 + 0x158], rax
mov r8d, dword [rbp + 0x150]
inc r8d
mov dword [rbp + 0x150], r8d
mov eax, ebx
test edx, edx
je 0x140109af2
mov rcx, qword [r10]
mov r11, qword [rcx]
nop dword [rax + rax]
mov ecx, eax
cmp qword [rbp + rcx*8 + 0x368], r11
je 0x140109af2
inc eax
cmp eax, edx
jb 0x140109ae0
cmp eax, edx
jne 0x140109b19
cmp edx, 0x40
jae 0x140109b19
mov rcx, qword [r10]
mov edx, eax
mov rax, qword [rcx]
mov qword [rbp + rdx*8 + 0x368], rax
mov edx, dword [rbp + 0x360]
inc edx
mov dword [rbp + 0x360], edx
add r10, 0x10
sub r14, 1
jne 0x140109a30
mov r14, qword [rsp + 0x680]
mov eax, 0x10624dd3
lea r9, [rbp + 0x360]
imul r12d
lea r8, [rbp + 0x150]
xor ecx, ecx
sar edx, 6
mov eax, edx
shr eax, 0x1f
add edx, eax
imul eax, edx, 0x3e8
mov dword [rsp + 0x30], edx
lea rdx, [rsp + 0x40]
sub r12d, eax
imul eax, r12d, 0x3e8
mov dword [rsp + 0x34], eax
lea rax, [rsp + 0x30]
mov qword [rsp + 0x20], rax
call qword [sym.imp.WS2_32.dll_select]
movsxd rdi, eax
cmp edi, 0xffffffff
jne 0x140109b9f
call fcn.140095b0c
mov rbx, rax
call qword [sym.imp.WS2_32.dll_WSAGetLastError]
mov dword [rbx], eax
mov rax, 0xffffffffffffffff
jmp 0x140109c12
test rsi, rsi
je 0x140109c0f
mov rcx, qword [rbx + r15]
lea rdx, [rsp + 0x40]
mov rcx, qword [rcx]
call sub.WS2_32.dll___WSAFDIsSet
test eax, eax
je 0x140109bc4
mov dword [rbx + r15 + 0xc], 0x300
jmp 0x140109c05
mov rcx, qword [rbx + r15]
lea rdx, [rbp + 0x150]
mov rcx, qword [rcx]
call sub.WS2_32.dll___WSAFDIsSet
test eax, eax
je 0x140109be6
mov dword [rbx + r15 + 0xc], reloc.WS2_32.dll_recv
jmp 0x140109c05
mov rcx, qword [rbx + r15]
lea rdx, [rbp + 0x360]
mov rcx, qword [rcx]
call sub.WS2_32.dll___WSAFDIsSet
neg eax
sbb ecx, ecx
and ecx, 2
mov dword [rbx + r15 + 0xc], ecx
add rbx, 0x10
sub rsi, 1
jne 0x140109ba4
mov rax, rdi
mov rbx, qword [rsp + 0x6b8]
mov rdi, qword [rsp + 0x6c8]
mov rcx, qword [rbp + 0x570]
xor rcx, rsp
call fcn.140088190
add rsp, 0x688
pop r15
pop r12
pop rsi
pop rbp
ret
mov ecx, 2
call fcn.14008fab0
mov rcx, rax
lea r8, str.C:Userslxrs_vcpkg_buildtreesmongo_c_driver_src1.26.1_690bc2849a.clean_srclibmongoc_srcmongocmongoc_socket.c
lea rax, [0x1401a4844]
mov r9d, 0x12a
mov qword [rsp + 0x28], rax
lea rdx, str._s:_d__s__:_precondition_failed:__s_n
lea rax, str.mongoc_socket_poll
mov qword [rsp + 0x20], rax
call fcn.140009138
call fcn.14009594c
int3