Function at 0x14007ad90
Capabilities:
Encrypt data using dpapi

Disassembly:
mov rax, rsp
mov qword [rax + 8], rbx
mov qword [rax + 0x10], rsi
mov qword [rax + 0x18], rdi
mov qword [rax + 0x20], r13
push rbp
push r14
push r15
mov rbp, rsp
sub rsp, 0x70
mov edi, r9d
mov rsi, r8
mov r14, rdx
mov r15, rcx
xor ebx, ebx
mov rcx, qword [0x14009b020]
lea r13, [0x14009b020]
cmp rcx, r13
je 0x14007adef
test byte [rcx + 0x1c], 2
je 0x14007adef
cmp byte [rcx + 0x19], 5
jb 0x14007adef
mov rcx, qword [rcx + 0x10]
lea edx, [rbx + 0xa]
lea r8, [0x14008fb78]
call fcn.1400042fc
lea rax, [0x14008fb88]
mov qword [rbp - 8], rsi
mov qword [rbp - 0x18], rax
lea r8, [rbp - 0x20]
lea rax, [rbp - 0x30]
mov dword [rbp - 0x10], edi
mov qword [rsp + 0x30], rax
lea rdx, str.Description
xorps xmm0, xmm0
mov dword [rsp + 0x28], 1
xor r9d, r9d
mov qword [rsp + 0x20], rbx
lea rcx, [rbp - 0x10]
mov dword [rbp - 0x20], 0x14
movups xmmword [rbp - 0x30], xmm0
call qword [sym.imp.CRYPT32.dll_CryptProtectData]
nop dword [rax + rax]
test eax, eax
jne 0x14007ae8a
call qword [sym.imp.KERNEL32.dll_GetLastError]
nop dword [rax + rax]
mov rcx, qword [0x14009b020]
cmp rcx, r13
je 0x14007ae83
test byte [rcx + 0x1c], 2
je 0x14007ae83
cmp byte [rcx + 0x19], 2
jb 0x14007ae83
mov rcx, qword [rcx + 0x10]
lea r8, [0x14008fb78]
mov edx, 0xb
mov r9d, eax
call fcn.1400046fc
xor eax, eax
jmp 0x14007b00e
mov eax, dword [rbp - 0x30]
add eax, 0x4c
cmp eax, 0x4c
jb 0x14007afb4
mov edx, eax
mov ecx, 0x40
mov esi, eax
call qword [sym.imp.KERNEL32.dll_LocalAlloc]
nop dword [rax + rax]
mov rdi, rax
test rax, rax
jne 0x14007af01
call qword [sym.imp.KERNEL32.dll_GetLastError]
nop dword [rax + rax]
mov rcx, qword [0x14009b020]
cmp rcx, r13
je 0x14007affc
test byte [rcx + 0x1c], 2
je 0x14007affc
cmp byte [rcx + 0x19], 2
jb 0x14007affc
lea edx, [rdi + 0xd]
mov rcx, qword [rcx + 0x10]
lea r8, [0x14008fb78]
mov r9d, eax
call fcn.1400046fc
jmp 0x14007affc
movaps xmm0, xmmword [str.5b04adaa_5e01_4160_a61e_02d27d44f9db]
lea rcx, [rdi + 0x4c]
movups xmmword [rax], xmm0
movaps xmm1, xmmword [0x14008f4f0]
movups xmmword [rax + 0x10], xmm1
movaps xmm0, xmmword [0x14008f500]
movups xmmword [rax + 0x20], xmm0
movaps xmm1, xmmword [0x14008f510]
movups xmmword [rax + 0x30], xmm1
movsd xmm0, qword [0x14008f520]
movsd qword [rax + 0x40], xmm0
mov eax, dword [0x14008f528]
mov dword [rdi + 0x48], eax
mov r8d, dword [rbp - 0x30]
mov rdx, qword [rbp - 0x28]
call sub.msvcrt.dll_memcpy
mov rcx, qword [rbp - 0x28]
call qword [sym.imp.KERNEL32.dll_LocalFree]
nop dword [rax + rax]
mov r9d, esi
mov qword [rbp - 0x28], rdi
mov r8, rdi
mov dword [rbp - 0x30], esi
mov rdx, r14
mov rcx, r15
call fcn.14006ecf8
test eax, eax
jne 0x14007afad
call qword [sym.imp.KERNEL32.dll_GetLastError]
nop dword [rax + rax]
mov rcx, qword [0x14009b020]
cmp rcx, r13
je 0x14007affc
test byte [rcx + 0x1c], 2
je 0x14007affc
cmp byte [rcx + 0x19], 2
jb 0x14007affc
mov edx, 0xe
jmp 0x14007aee9
mov ebx, 1
jmp 0x14007affc
mov esi, 0x80070216
mov edi, 0x216
mov rcx, qword [0x14009b020]
cmp rcx, r13
je 0x14007afee
test byte [rcx + 0x1c], 2
je 0x14007afee
cmp byte [rcx + 0x19], 2
jb 0x14007afee
mov rcx, qword [rcx + 0x10]
lea r8, [0x14008fb78]
mov edx, 0xc
mov r9d, esi
call fcn.140004328
mov ecx, edi
call qword [sym.imp.KERNEL32.dll_SetLastError]
nop dword [rax + rax]
mov rcx, qword [rbp - 0x28]
call qword [sym.imp.KERNEL32.dll_LocalFree]
nop dword [rax + rax]
mov eax, ebx
lea r11, [rsp + 0x70]
mov rbx, qword [r11 + 0x20]
mov rsi, qword [r11 + 0x28]
mov rdi, qword [r11 + 0x30]
mov r13, qword [r11 + 0x38]
mov rsp, r11
pop r15
pop r14
pop rbp
ret