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

Disassembly:
mov dword [rsp + 0x10], edx
mov qword [rsp + 8], rcx
push rbp
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x38
mov r15, qword [rcx + 0x58]
mov r13, rcx
movsxd rbp, edx
mov rdx, rbp
mov qword [rsp + 0x80], rbp
mov rdi, rbp
mov rcx, qword [r15 + 0x40]
call fcn.140001e70
mov rcx, qword [r15 + 0x30]
mov rdx, rbp
mov r14, rax
call fcn.140001e70
mov r12, rax
test r14, r14
je 0x14000bcd8
mov qword [rsp + 0x88], rbx
mov qword [rsp + 0x30], rsi
mov rsi, qword [r14 + 0x20]
lea rdx, str.ss.sendq__p__resume_send_to_fd_d_len_zd
mov rbx, qword [r14 + 0x18]
mov rax, rsi
sub rax, rbx
mov r9d, ebp
mov r8, r14
mov qword [rsp + 0x20], rax
mov rcx, r13
call fcn.14000adb0
cmp rbx, rsi
jae 0x14000ba94
mov r8d, esi
mov rdx, rbx
sub r8d, ebx
test r12, r12
jne 0x14000ba48
xor r9d, r9d
mov rcx, rdi
call qword [sym.imp.WS2_32.dll_send]
movsxd rdi, eax
test eax, eax
jg 0x14000ba58
je 0x14000ba8c
call qword [sym.imp.WS2_32.dll_WSAGetLastError]
cmp eax, 0x2733
je 0x14000ba8c
call qword [sym.imp.WS2_32.dll_WSAGetLastError]
lea ecx, [r12 + 2]
mov ebx, eax
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll___acrt_iob_func]
mov r8d, ebx
lea rdx, str.sendq_retry_failed_with_error:__d_n
mov rcx, rax
call fcn.1400016b0
mov edx, ebp
mov rcx, r13
call qword [r13 + htons]
jmp 0x14000bccb
mov rcx, r12
call qword [sym.imp.SSLEAY32.dll_Ordinal_108]
movsxd rdi, eax
test eax, eax
jle 0x14000ba68
add rbx, rdi
mov rdi, qword [rsp + 0x80]
jmp 0x14000b9d8
mov edx, edi
mov rcx, r12
call qword [sym.imp.SSLEAY32.dll_Ordinal_58]
cmp eax, 2
je 0x14000ba8c
mov edx, edi
mov rcx, r12
call qword [sym.imp.SSLEAY32.dll_Ordinal_58]
cmp eax, 3
jne 0x14000bc9e
mov rdi, qword [rsp + 0x80]
mov qword [r14 + 0x18], rbx
mov rcx, r13
cmp rbx, rsi
jb 0x14000bcb6
mov r9, qword [r14 + 0x10]
mov edx, ebp
mov r8, qword [r14]
sub rsi, r9
mov qword [rsp + 0x20], rsi
call qword [r13 + 0x40]
mov r13, qword [r14 + 0x28]
mov rdx, rdi
mov rcx, qword [r15 + 0x40]
mov r8, r13
call fcn.140002010
test r13, r13
jne 0x14000bb24
mov rdx, qword [r15 + 0x20]
xor ecx, ecx
mov r8d, dword [rdx]
test r8d, r8d
je 0x14000bb24
nop
cmp qword [rdx + rcx*8 + 8], rdi
je 0x14000baf0
inc ecx
cmp ecx, r8d
jb 0x14000bae0
jmp 0x14000bb24
lea eax, [r8 - 1]
cmp ecx, eax
jae 0x14000bb22
nop dword [rax + rax]
mov rdx, qword [r15 + 0x20]
lea r8d, [rcx + 1]
mov rax, qword [rdx + r8*8 + 8]
mov qword [rdx + rcx*8 + 8], rax
mov rdx, qword [r15 + 0x20]
mov ecx, r8d
mov eax, dword [rdx]
dec eax
cmp r8d, eax
jb 0x14000bb00
dec dword [rdx]
movsxd rsi, dword [r14 + 8]
test esi, esi
je 0x14000bc4e
mov rdx, qword [r15 + 8]
mov rcx, rsi
call qword [sym.imp.WS2_32.dll___WSAFDIsSet]
test eax, eax
je 0x14000bc4a
mov rdi, qword [r15 + 0x40]
xor bl, bl
mov rcx, qword [rdi + 0x10]
test rcx, rcx
je 0x14000bbec
inc rcx
mov edx, 8
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_calloc]
mov r10, rax
test rax, rax
je 0x14000bbad
xor r9d, r9d
mov r8, rax
cmp qword [rdi + 0x20], r9
jbe 0x14000bbad
nop word [rax + rax]
mov rcx, qword [rdi + 0x18]
mov rdx, qword [rcx + r9*8]
test rdx, rdx
je 0x14000bba4
nop dword [rax]
mov rax, qword [rdx + 0x10]
mov qword [r8], rax
add r8, 8
mov rdx, qword [rdx + 0x18]
test rdx, rdx
jne 0x14000bb90
inc r9
cmp r9, qword [rdi + 0x20]
jb 0x14000bb80
cmp qword [r10], 0
mov rcx, r10
je 0x14000bbdf
test bl, bl
jne 0x14000bbdf
mov rax, qword [rcx]
test rax, rax
je 0x14000bbd5
test bl, bl
jne 0x14000bbd5
cmp dword [rax + 8], esi
mov rax, qword [rax + 0x28]
sete bl
test rax, rax
jne 0x14000bbc2
add rcx, 8
cmp qword [rcx], 0
jne 0x14000bbb6
mov rcx, r10
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
test bl, bl
jne 0x14000bc42
mov rbx, qword [rsp + 0x70]
lea rdx, str.ss.sendq__p__re_enable_recv_fd_d
mov rcx, rbx
mov r9d, esi
mov r8, r14
call fcn.14000adb0
mov r8, qword [r15 + 0x28]
xor ecx, ecx
mov edx, dword [r8]
test edx, edx
je 0x14000bc20
cmp qword [r8 + rcx*8 + 8], rsi
je 0x14000bc20
inc ecx
cmp ecx, edx
jb 0x14000bc13
cmp ecx, edx
jne 0x14000bc34
cmp edx, 0x40
jae 0x14000bc34
mov qword [r8 + rcx*8 + 8], rsi
mov rax, qword [r15 + 0x28]
inc dword [rax]
mov rdi, qword [rsp + 0x80]
mov ebp, dword [rsp + 0x78]
jmp 0x14000bc53
mov rdi, qword [rsp + 0x80]
mov ebp, dword [rsp + 0x78]
mov rbx, qword [rsp + 0x70]
mov r9, r13
lea rdx, str.ss.sendq__p__free__next__p_
mov r8, r14
mov rcx, rbx
call fcn.14000adb0
mov rcx, qword [r14 + 0x10]
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
xorps xmm0, xmm0
mov rcx, r14
movups xmmword [r14], xmm0
movups xmmword [r14 + 0x10], xmm0
movups xmmword [r14 + 0x20], xmm0
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
mov r14, r13
test r13, r13
je 0x14000bccb
mov r13, qword [rsp + 0x70]
jmp 0x14000b9b0
lea rcx, str.ssl_sendq_retry_failed
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll_perror]
mov edx, ebp
mov rcx, r13
call qword [r13 + htons]
jmp 0x14000bccb
sub rsi, rbx
lea rdx, str.ss.sendq__p__defer_len_zd
mov r9, rsi
mov r8, r14
call fcn.14000adb0
mov rbx, qword [rsp + 0x88]
mov rsi, qword [rsp + 0x30]
add rsp, 0x38
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rbp
ret