Function at 0x1400bf950
Capabilities:
Encrypt data via sspi

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x88
mov r12, r9
mov rsi, rdx
mov r13, rcx
mov qword [rdx + 0x210], r8
lea rcx, [rsp + 0x30]
call fcn.1400bfcc0
mov eax, dword [rsp + 0x30]
cmp eax, 2
jne case.default.0x1400bf99e
mov rbx, qword [rsp + 0x38]
mov eax, ebx
and eax, 3
lea rcx, [0x1400bfcb0]
movsxd rax, dword [rcx + rax*4]
add rax, rcx
jmp rax
test eax, eax
je 0x1400bfa2d
mov rbp, qword [rsi + 0x40]
cmp rbp, qword [rsi + 0x58]
jne 0x1400bfb95
mov rax, qword [rsp + 0xf0]
mov ecx, dword [rsp + 0x34]
mov r14, qword [rsp + 0x38]
mov ebx, r14d
shr r14, 0x20
cmp rax, r14
cmovb r14, rax
mov qword [rsp + 0x28], rcx
lea rdx, [r14 + rcx]
add rbx, rdx
mov rdi, rbx
sub rdi, rbp
jbe 0x1400bfa50
mov qword [rsp + 0x70], r13
mov rax, qword [rsi + 0x48]
sub rax, rbp
mov r13, rbp
cmp rax, rdi
jb 0x1400bfa5b
mov r15, qword [rsi + 0x50]
lea rcx, [r15 + r13]
cmp rdi, 2
jb 0x1400bfa82
lea r8, [rdi - 1]
mov rbx, rdx
xor edx, edx
call sub.VCRUNTIME140.dll_memset
mov rdx, rbx
add r13, rdi
dec r13
lea rcx, [r15 + r13]
mov rdi, qword [rsp + 0x28]
jmp 0x1400bfa8c
movabs rbx, 0x8009031700000002
mov rcx, rbx
shr rcx, 0x20
call fcn.1400e2f90
cmp al, 0xd
je 0x1400bfc41
jmp 0x1400bfc4b
mov r15, qword [rsi + 0x50]
mov rdi, qword [rsp + 0x28]
jmp 0x1400bfa9e
lea rcx, [rsi + 0x48]
mov r15, rdx
mov rdx, rbp
mov r8, rdi
call fcn.14010fe50
mov rdx, r15
mov r13, qword [rsi + 0x58]
mov r15, qword [rsi + 0x50]
lea rcx, [r15 + r13]
cmp rdi, 2
jae 0x1400bfa0b
cmp rbx, rbp
mov rdi, qword [rsp + 0x28]
je 0x1400bfa92
mov byte [rcx], 0
inc r13
mov qword [rsi + 0x58], r13
mov rbp, r13
mov r13, qword [rsp + 0x70]
mov qword [rsp + 0x28], rdx
cmp rbp, rdx
jb 0x1400bfc8b
lea rbx, [r15 + rdi]
mov rcx, rbx
mov rdx, r12
mov r8, r14
call sub.VCRUNTIME140.dll_memcpy
cmp rbp, rdi
jb 0x1400bfc99
mov rdx, qword [rsp + 0x28]
sub ebp, edx
add rdx, r15
xor eax, eax
test r15, r15
cmove edi, eax
mov ecx, r14d
cmove ecx, eax
cmove ebp, eax
xorps xmm0, xmm0
movups xmmword [rsp + 0x60], xmm0
mov dword [rsp + 0x30], edi
mov dword [rsp + 0x34], 7
mov qword [rsp + 0x38], r15
mov dword [rsp + 0x40], ecx
mov dword [rsp + 0x44], 1
mov qword [rsp + 0x48], rbx
mov dword [rsp + 0x50], ebp
mov dword [rsp + 0x54], 6
mov qword [rsp + 0x58], rdx
movabs rax, 0x400000000
mov qword [rsp + 0x78], rax
lea rax, [rsp + 0x30]
mov qword [rsp + 0x80], rax
lea rcx, [rsi + 0x60]
lea r8, [rsp + 0x78]
xor edx, edx
xor r9d, r9d
call qword [sym.imp.secur32.dll_EncryptMessage]
test eax, eax
je 0x1400bfb70
mov ebx, eax
shl rbx, 0x20
or rbx, 2
mov eax, ebx
and eax, 3
lea rcx, [0x1400bfcb0]
movsxd rax, dword [rcx + rax*4]
add rax, rcx
jmp rax
mov eax, dword [rsp + 0x40]
add eax, dword [rsp + 0x30]
add eax, dword [rsp + 0x50]
cmp qword [rsi + 0x58], rax
jb 0x1400bfb86
mov qword [rsi + 0x58], rax
mov qword [rsi + 0x40], 0
mov qword [rsi + 0xb0], r14
lea rcx, [rsp + 0x30]
mov rdx, rsi
call fcn.1400c0f10
cmp qword [rsp + 0x30], 0
je case.default.0x1400bfbc6
mov rbx, qword [rsp + 0x38]
mov eax, ebx
and eax, 3
lea rcx, [0x1400bfcb0]
movsxd rax, dword [rcx + rax*4]
add rax, rcx
jmp rax
movzx eax, byte [rbx + 0x10]
cmp al, 0xd
je 0x1400bfc41
jmp 0x1400bfc4b
cmp byte [rbx + 0xf], 0xd
jne 0x1400bfc4b
lea r14, [rbx - 1]
mov qword [r13], 2
mov qword [rsi + 0x210], 0
mov rcx, qword [rbx - 1]
mov rax, qword [rbx + 7]
call qword [rax]
mov rax, qword [rbx + 7]
cmp qword [rax + 8], 0
je 0x1400bfc21
mov r8, qword [r14]
cmp qword [rax + 0x10], 0x11
jb 0x1400bfc12
mov r8, qword [r8 - 8]
mov rcx, qword [0x14017e260]
xor edx, edx
call qword [sym.imp.kernel32.dll_HeapFree]
mov rcx, qword [0x14017e260]
xor edx, edx
mov r8, r14
call qword [sym.imp.kernel32.dll_HeapFree]
jmp 0x1400bfc62
mov rax, rbx
shr rax, 0x20
cmp eax, 0xd
jne 0x1400bfc4b
mov qword [r13], 2
jmp 0x1400bfc57
mov qword [r13], 1
mov qword [r13 + 8], rbx
mov qword [rsi + 0x210], 0
add rsp, 0x88
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
mov rax, qword [rsi + 0xb0]
mov qword [r13], 0
mov qword [r13 + 8], rax
jmp 0x1400bfc57
lea r8, str.C:Usersmixer.cargo_registry_srcindex.crates.io_6f17d22bba15001f_schannel_0.1.20_src_tls_stream.rsPoisonErrorC:Usersmixer.cargo_registry_srcindex.crates.io_6f17d22bba15001f_bytes_1.2.1_src_buf_take.rsassertion_failed:_cnt___self.limit
mov rcx, qword [rsp + 0x28]
jmp 0x1400bfca3
lea r8, str.C:Usersmixer.cargo_registry_srcindex.crates.io_6f17d22bba15001f_schannel_0.1.20_src_tls_stream.rsPoisonErrorC:Usersmixer.cargo_registry_srcindex.crates.io_6f17d22bba15001f_bytes_1.2.1_src_buf_take.rsassertion_failed:_cnt___self.limit
mov rcx, rdi
mov rdx, rbp
call fcn.14010b510
ud2