Function at 0x140077490
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 [0x14009b028]
lea r13, [0x14009b028]
cmp rcx, r13
je 0x1400774ef
test byte [rcx + 0x1c], 2
je 0x1400774ef
cmp byte [rcx + 0x19], 5
jb 0x1400774ef
mov rcx, qword [rcx + 0x10]
lea edx, [rbx + 0xa]
lea r8, [0x14008c658]
call fcn.140001024
lea rax, [0x14008c668]
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 0x14007758a
call qword [sym.imp.KERNEL32.dll_GetLastError]
nop dword [rax + rax]
mov rcx, qword [0x14009b028]
cmp rcx, r13
je 0x140077583
test byte [rcx + 0x1c], 2
je 0x140077583
cmp byte [rcx + 0x19], 2
jb 0x140077583
mov rcx, qword [rcx + 0x10]
lea r8, [0x14008c658]
mov edx, VariantTimeToDosDateTime
mov r9d, eax
call fcn.140001050
xor eax, eax
jmp 0x140077708
mov esi, dword [rbp - 0x30]
add esi, 0x4c
cmp esi, 0x4c
jb 0x1400776b2
mov edx, esi
mov ecx, 0x40
call qword [sym.imp.KERNEL32.dll_LocalAlloc]
nop dword [rax + rax]
mov rdi, rax
test rax, rax
jne 0x1400775ff
call qword [sym.imp.KERNEL32.dll_GetLastError]
nop dword [rax + rax]
mov rcx, qword [0x14009b028]
cmp rcx, r13
je 0x1400776f6
test byte [rcx + 0x1c], 2
je 0x1400776f6
cmp byte [rcx + 0x19], 2
jb 0x1400776f6
lea edx, [rdi + 0xd]
mov rcx, qword [rcx + 0x10]
lea r8, [0x14008c658]
mov r9d, eax
call fcn.140001050
jmp 0x1400776f6
movaps xmm0, xmmword [str.5b04adaa_5e01_4160_a61e_02d27d44f9db]
lea rcx, [rdi + 0x4c]
movups xmmword [rax], xmm0
movaps xmm1, xmmword [0x14008bfd0]
movups xmmword [rax + 0x10], xmm1
movaps xmm0, xmmword [0x14008bfe0]
movups xmmword [rax + 0x20], xmm0
movaps xmm1, xmmword [0x14008bff0]
movups xmmword [rax + 0x30], xmm1
movsd xmm0, qword [0x14008c000]
movsd qword [rax + 0x40], xmm0
mov eax, dword [0x14008c008]
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.14006b204
test eax, eax
jne 0x1400776ab
call qword [sym.imp.KERNEL32.dll_GetLastError]
nop dword [rax + rax]
mov rcx, qword [0x14009b028]
cmp rcx, r13
je 0x1400776f6
test byte [rcx + 0x1c], 2
je 0x1400776f6
cmp byte [rcx + 0x19], 2
jb 0x1400776f6
mov edx, 0xe
jmp 0x1400775e7
mov ebx, 1
jmp 0x1400776f6
mov rcx, qword [0x14009b028]
cmp rcx, r13
je 0x1400776e5
test byte [rcx + 0x1c], 2
je 0x1400776e5
cmp byte [rcx + 0x19], 2
jb 0x1400776e5
mov rcx, qword [rcx + 0x10]
lea r8, [0x14008c658]
mov edx, reloc.OLEAUT32.dll_VariantTimeToDosDateTime
mov r9d, 0x80070216
call fcn.140001050
mov ecx, 0x216
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