Function at 0x140109230
Capabilities:
Send data
Send data on socket

Disassembly:
mov qword [rsp + 0x18], rbp
push rsi
push rdi
push r14
sub rsp, 0x40
xor esi, esi
mov rbp, r8
mov dword [rsp + 0x60], esi
mov rdi, rdx
mov r14, rcx
test rcx, rcx
je 0x140109383
test rdx, rdx
je 0x1401093c7
test r8, r8
je 0x14010940b
mov eax, 0xffffffff
cmp r8, rax
ja 0x14010944f
mov rcx, qword [rcx]
lea r9, [rsp + 0x60]
mov qword [rsp + 0x30], rsi
mov qword [rsp + 0x28], rsi
mov dword [rsp + 0x20], esi
call qword [sym.imp.WS2_32.dll_WSASend]
cmp eax, 0xffffffff
jne 0x140109371
mov qword [rsp + 0x68], rbx
call qword [sym.imp.WS2_32.dll_WSAGetLastError]
mov ebx, eax
mov dword [r14 + 8], eax
call fcn.14009602c
mov dword [rax], ebx
cmp dword [r14 + 8], 0x2738
jne 0x140109368
mov ebx, esi
test rbp, rbp
je 0x140109310
nop word [rax + rax]
mov r8, qword [rdi]
cmp r8, 0x7fffffff
ja 0x140109493
mov rdx, qword [rdi + 8]
xor r9d, r9d
mov rcx, qword [r14]
call qword [sym.imp.WS2_32.dll_send]
cmp eax, 0xffffffff
je 0x140109326
cdqe
add rsi, rax
test rax, rax
js 0x140109310
cmp rax, qword [rdi]
jne 0x140109310
inc rbx
add rdi, 0x10
cmp rbx, rbp
jb 0x1401092d0
mov rax, rsi
mov rbx, qword [rsp + 0x68]
mov rbp, qword [rsp + 0x70]
add rsp, 0x40
pop r14
pop rdi
pop rsi
ret
call qword [sym.imp.WS2_32.dll_WSAGetLastError]
mov ebx, eax
mov dword [r14 + 8], eax
call fcn.14009602c
mov dword [rax], ebx
mov eax, dword [r14 + 8]
cmp eax, 0xb
je 0x140109355
add eax, 0xffffd8cd
cmp eax, 1
jbe 0x140109355
mov rsi, 0xffffffffffffffff
jmp 0x140109310
test rsi, rsi
mov rax, 0xffffffffffffffff
cmovne rax, rsi
mov rsi, rax
jmp 0x140109310
mov rax, 0xffffffffffffffff
jmp 0x140109313
mov eax, dword [rsp + 0x60]
mov rbp, qword [rsp + 0x70]
add rsp, 0x40
pop r14
pop rdi
pop rsi
ret
mov ecx, 2
call fcn.14008ffd0
mov rcx, rax
lea r8, str.C:Userslxrs_vcpkg_buildtreesmongo_c_driver_src1.26.1_690bc2849a.clean_srclibmongoc_srcmongocmongoc_socket.c
lea rax, str.sock
mov r9d, 0x506
mov qword [rsp + 0x28], rax
lea rdx, str._s:_d__s__:_precondition_failed:__s_n
lea rax, str._mongoc_socket_try_sendv
mov qword [rsp + 0x20], rax
call fcn.140009568
call fcn.140095e6c
int3
mov ecx, 2
call fcn.14008ffd0
mov rcx, rax
lea r8, str.C:Userslxrs_vcpkg_buildtreesmongo_c_driver_src1.26.1_690bc2849a.clean_srclibmongoc_srcmongocmongoc_socket.c
lea rax, [0x1401a4998]
mov r9d, 0x507
mov qword [rsp + 0x28], rax
lea rdx, str._s:_d__s__:_precondition_failed:__s_n
lea rax, str._mongoc_socket_try_sendv
mov qword [rsp + 0x20], rax
call fcn.140009568
call fcn.140095e6c
int3
mov ecx, 2
call fcn.14008ffd0
mov rcx, rax
lea r8, str.C:Userslxrs_vcpkg_buildtreesmongo_c_driver_src1.26.1_690bc2849a.clean_srclibmongoc_srcmongocmongoc_socket.c
lea rax, str.iovcnt
mov r9d, 0x508
mov qword [rsp + 0x28], rax
lea rdx, str._s:_d__s__:_precondition_failed:__s_n
lea rax, str._mongoc_socket_try_sendv
mov qword [rsp + 0x20], rax
call fcn.140009568
call fcn.140095e6c
int3
mov ecx, 2
call fcn.14008ffd0
mov rcx, rax
lea r8, str.C:Userslxrs_vcpkg_buildtreesmongo_c_driver_src1.26.1_690bc2849a.clean_srclibmongoc_srcmongocmongoc_socket.c
lea rax, str.bson_in_range_unsigned__unsigned_long__iovcnt_
mov r9d, 0x50d
mov qword [rsp + 0x28], rax
lea rdx, str._s:_d__s__:_precondition_failed:__s_n
lea rax, str._mongoc_socket_try_sendv
mov qword [rsp + 0x20], rax
call fcn.140009568
call fcn.140095e6c
int3
mov ecx, 2
call fcn.14008ffd0
mov rcx, rax
lea r8, str.C:Userslxrs_vcpkg_buildtreesmongo_c_driver_src1.26.1_690bc2849a.clean_srclibmongoc_srcmongocmongoc_socket.c
lea rax, str.bson_in_range_unsigned__int__iov_i_.iov_len_
mov r9d, 0x4ca
mov qword [rsp + 0x28], rax
lea rdx, str._s:_d__s__:_precondition_failed:__s_n
lea rax, str._mongoc_socket_try_sendv_slow
mov qword [rsp + 0x20], rax
call fcn.140009568
call fcn.140095e6c
int3