Function at 0x180129160
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 0x1801292b3
test rdx, rdx
je 0x1801292f7
test r8, r8
je 0x18012933b
mov eax, 0xffffffff
cmp r8, rax
ja 0x18012937f
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 0x1801292a1
mov qword [rsp + 0x68], rbx
call qword [sym.imp.WS2_32.dll_WSAGetLastError]
mov ebx, eax
mov dword [r14 + 8], eax
call fcn.180175c18
mov dword [rax], ebx
cmp dword [r14 + 8], 0x2738
jne 0x180129298
mov ebx, esi
test rbp, rbp
je 0x180129240
nop word [rax + rax]
mov r8, qword [rdi]
cmp r8, 0x7fffffff
ja 0x1801293c3
mov rdx, qword [rdi + 8]
xor r9d, r9d
mov rcx, qword [r14]
call qword [sym.imp.WS2_32.dll_send]
cmp eax, 0xffffffff
je 0x180129256
cdqe
add rsi, rax
test rax, rax
js 0x180129240
cmp rax, qword [rdi]
jne 0x180129240
inc rbx
add rdi, 0x10
cmp rbx, rbp
jb 0x180129200
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.180175c18
mov dword [rax], ebx
mov eax, dword [r14 + 8]
cmp eax, 0xb
je 0x180129285
add eax, 0xffffd8cd
cmp eax, 1
jbe 0x180129285
mov rsi, 0xffffffffffffffff
jmp 0x180129240
test rsi, rsi
mov rax, 0xffffffffffffffff
cmovne rax, rsi
mov rsi, rax
jmp 0x180129240
mov rax, 0xffffffffffffffff
jmp 0x180129243
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.180167c6c
mov rcx, rax
lea r8, str.C:Usersprocr_vcpkg_buildtreesmongo_c_driver_src1.24.3_56c7a21808.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.18007d3a0
call fcn.180177210
int3
mov ecx, 2
call fcn.180167c6c
mov rcx, rax
lea r8, str.C:Usersprocr_vcpkg_buildtreesmongo_c_driver_src1.24.3_56c7a21808.clean_srclibmongoc_srcmongocmongoc_socket.c
lea rax, [0x1801c9038]
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.18007d3a0
call fcn.180177210
int3
mov ecx, 2
call fcn.180167c6c
mov rcx, rax
lea r8, str.C:Usersprocr_vcpkg_buildtreesmongo_c_driver_src1.24.3_56c7a21808.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.18007d3a0
call fcn.180177210
int3
mov ecx, 2
call fcn.180167c6c
mov rcx, rax
lea r8, str.C:Usersprocr_vcpkg_buildtreesmongo_c_driver_src1.24.3_56c7a21808.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.18007d3a0
call fcn.180177210
int3
mov ecx, 2
call fcn.180167c6c
mov rcx, rax
lea r8, str.C:Usersprocr_vcpkg_buildtreesmongo_c_driver_src1.24.3_56c7a21808.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.18007d3a0
call fcn.180177210
int3