Function at 0x140041860
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 r13, r8
mov r12, rdx
mov rdi, rcx
lea rcx, [rsp + 0x30]
mov rdx, rdi
call fcn.140041e90
mov eax, dword [rsp + 0x30]
cmp eax, 2
jne 0x1400418a1
mov rdx, qword [rsp + 0x38]
mov esi, 1
jmp 0x140041a9d
mov esi, 1
test eax, eax
je 0x1400419e9
mov rdx, qword [rdi + 0x60]
mov rbx, qword [rdi + 0x68]
cmp rbx, rdx
jne 0x140041a25
mov r14, qword [rsp + 0x38]
mov r15d, r14d
shr r14, 0x20
cmp r13, r14
cmovb r14, r13
mov ebp, dword [rsp + 0x34]
lea r13, [r14 + rbp]
add r15, r13
sub r15, rbx
jbe 0x140041928
mov rax, qword [rdi + 0x50]
sub rax, rbx
cmp rax, r15
jb 0x140041ab4
mov rax, qword [rdi + 0x58]
lea rcx, [rax + rbx]
cmp r15, 2
jb 0x14004191e
lea r8, [r15 - 1]
xor edx, edx
mov qword [rsp + 0x70], rax
call sub.VCRUNTIME140.dll_memset
add rbx, r15
dec rbx
mov rcx, qword [rsp + 0x70]
add rcx, rbx
mov byte [rcx], 0
inc rbx
mov qword [rdi + 0x60], rbx
cmp r13, rbx
ja 0x140041b14
mov rcx, qword [rdi + 0x58]
add rcx, rbp
mov rdx, r12
mov r8, r14
call sub.VCRUNTIME140.dll_memcpy
mov rdx, qword [rdi + 0x60]
cmp rdx, rbp
jb 0x140041b26
cmp rdx, r13
jb 0x140041b35
mov rax, qword [rdi + 0x58]
lea rcx, [rax + rbp]
sub edx, r13d
add r13, rax
mov dword [rsp + 0x30], ebp
mov dword [rsp + 0x34], 7
mov qword [rsp + 0x38], rax
mov dword [rsp + 0x40], r14d
mov dword [rsp + 0x44], 1
mov qword [rsp + 0x48], rcx
mov dword [rsp + 0x50], edx
mov dword [rsp + 0x54], 6
mov qword [rsp + 0x58], r13
xorps xmm0, xmm0
movups xmmword [rsp + 0x60], xmm0
movabs rax, 0x400000000
mov qword [rsp + 0x78], rax
lea rax, [rsp + 0x30]
mov qword [rsp + 0x80], rax
lea rcx, [rdi + 0xe8]
lea r8, [rsp + 0x78]
xor edx, edx
xor r9d, r9d
call qword [sym.imp.secur32.dll_EncryptMessage]
test eax, eax
je 0x1400419f8
mov edx, eax
shl rdx, 0x20
or rdx, 2
jmp 0x140041a9d
movabs rdx, 0x8009031700000002
jmp 0x140041a9d
mov eax, dword [rsp + 0x40]
add eax, dword [rsp + 0x30]
add eax, dword [rsp + 0x50]
mov rdx, qword [rdi + 0x60]
cmp rdx, rax
jb 0x140041a14
mov qword [rdi + 0x60], rax
mov rdx, rax
mov qword [rdi + 0x68], 0
mov qword [rdi + 0x110], r14
xor ebx, ebx
cmp rbx, rdx
je 0x140041a80
lea r14, [rdi + 0xc0]
nop word cs:[rax + rax]
mov r9, rdx
sub r9, rbx
jb 0x140041b05
mov rdx, qword [rdi + 0xe0]
test rdx, rdx
je 0x140041aed
mov r8, qword [rdi + 0x58]
add r8, rbx
mov rcx, r14
call fcn.14015db00
test rax, rax
jne 0x140041a8b
add rbx, rdx
mov qword [rdi + 0x68], rbx
mov rdx, qword [rdi + 0x60]
cmp rbx, rdx
jne 0x140041a40
mov rdx, qword [rdi + 0x110]
xor esi, esi
jmp 0x140041a9d
cmp rax, 2
movabs rax, 0xd00000003
cmove rdx, rax
mov rax, rsi
add rsp, 0x88
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
lea rcx, [rdi + 0x50]
mov qword [rsp + 0x20], 1
mov r9d, 1
mov rdx, rbx
mov r8, r15
call fcn.1401b0330
mov rbx, qword [rdi + 0x60]
mov rax, qword [rdi + 0x58]
lea rcx, [rax + rbx]
cmp r15, 2
jae 0x140041900
jmp 0x14004191e
lea rcx, str.assertion_failed:__self.context.is_null__
lea r8, [0x1401c7710]
mov edx, 0x29
call fcn.1401b76f0
lea r8, str.C:Usersdenni.cargo_registry_srcindex.crates.io_6f17d22bba15001f_schannel_0.1.26_src_tls_stream.rsassertion_failed:_pos___self.dec_in.get_ref__.len___as_u64X
mov rcx, rbx
call fcn.1401b7af0
lea r8, str.C:Usersdenni.cargo_registry_srcindex.crates.io_6f17d22bba15001f_schannel_0.1.26_src_tls_stream.rsassertion_failed:_pos___self.dec_in.get_ref__.len___as_u64X
mov rcx, r13
mov rdx, rbx
call fcn.1401b7b60
lea r8, str.C:Usersdenni.cargo_registry_srcindex.crates.io_6f17d22bba15001f_schannel_0.1.26_src_tls_stream.rsassertion_failed:_pos___self.dec_in.get_ref__.len___as_u64X
mov rcx, rbp
call fcn.1401b7b60
lea r8, str.C:Usersdenni.cargo_registry_srcindex.crates.io_6f17d22bba15001f_schannel_0.1.26_src_tls_stream.rsassertion_failed:_pos___self.dec_in.get_ref__.len___as_u64X
mov rcx, r13
call fcn.1401b7b60
int3