Function at 0x1400110f5
Capabilities:
Encrypt or decrypt via wincrypt
Get file size
Read file on windows
Write file on windows

Disassembly:
jmp 0x140011900
mov qword [rsp + 0x18], r8
mov qword [rsp + 0x10], rdx
mov qword [rsp + 8], rcx
push rbp
push rdi
sub rsp, 0x1c8
lea rbp, [rsp + 0x40]
lea rdi, [rsp + 0x40]
mov ecx, 0x32
mov eax, 0xcccccccc
rep stosd dword [rdi], eax
mov rcx, qword [rsp + 0x1e8]
mov rax, qword [0x14001f008]
xor rax, rbp
mov qword [rbp + 0x178], rax
lea rcx, [0x1400250a4]
call fcn.1400113d4
xor edx, edx
mov rcx, qword [rbp + 0x1a8]
call qword [sym.imp.KERNEL32.dll_GetFileSize]
mov dword [rbp + 4], eax
cmp dword [rbp + 4], 0xffffffff
jne 0x140011997
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov r9d, eax
lea r8, str.GetFileSize_for_source_failed_with_code__d
mov edx, 0x400
lea rcx, [0x14001f8e0]
call fcn.140011230
call qword [sym.imp.KERNEL32.dll_GetLastError]
jmp 0x140011bab
mov eax, dword [rbp + 4]
add eax, 0x10
mov dword [rbp + 0x24], eax
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov qword [rbp + 0x88], rax
cmp qword [rbp + 0x88], 0xffffffffffffffff
jne 0x1400119e3
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov r9d, eax
lea r8, str.GetProcessHeap_for_source_failed_with_code__d
mov edx, 0x400
lea rcx, [0x14001f8e0]
call fcn.140011230
call qword [sym.imp.KERNEL32.dll_GetLastError]
jmp 0x140011bab
mov eax, dword [rbp + 0x24]
mov r8d, eax
mov edx, 4
mov rcx, qword [rbp + 0x88]
call qword [sym.imp.KERNEL32.dll_HeapAlloc]
mov qword [rbp + 0xa8], rax
mov eax, 0xc0000017
cmp qword [rbp + 0xa8], rax
jne 0x140011a35
lea r8, str.HeapAlloc_failed:_Not_enough_memory__STATUS_NO_MEMORY_
mov edx, 0x400
lea rcx, [0x14001f8e0]
call fcn.140011230
mov eax, dword [rbp + 0xa8]
jmp 0x140011bab
mov eax, 0xc0000005
cmp qword [rbp + 0xa8], rax
jne 0x140011a66
lea r8, str.HeapAlloc_failed:_heap_corruption___improper_function_parameter__STATUS_ACCESS_VIOLATION_
mov edx, 0x400
lea rcx, [0x14001f8e0]
call fcn.140011230
mov eax, dword [rbp + 0xa8]
jmp 0x140011bab
mov qword [rsp + 0x20], 0
lea r9, [rbp + 0x44]
mov r8d, dword [rbp + 4]
mov rdx, qword [rbp + 0xa8]
mov rcx, qword [rbp + 0x1a8]
call qword [sym.imp.KERNEL32.dll_ReadFile]
test eax, eax
jne 0x140011abb
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov r9d, eax
lea r8, str.ReadFile_failed_with_code__d
mov edx, 0x400
lea rcx, [0x14001f8e0]
call fcn.140011230
call qword [sym.imp.KERNEL32.dll_GetLastError]
jmp 0x140011bab
mov eax, dword [rbp + 0x24]
mov dword [rsp + 0x30], eax
lea rax, [rbp + 4]
mov qword [rsp + 0x28], rax
mov rax, qword [rbp + 0xa8]
mov qword [rsp + 0x20], rax
xor r9d, r9d
mov r8d, 1
xor edx, edx
mov rax, qword [rbp + 0x1a0]
mov rcx, qword [rax + 8]
call qword [sym.imp.ADVAPI32.dll_CryptEncrypt]
test eax, eax
jne 0x140011b23
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov r9d, eax
lea r8, str.CryptEncrypt_failed_with_code__d
mov edx, 0x400
lea rcx, [0x14001f8e0]
call fcn.140011230
call qword [sym.imp.KERNEL32.dll_GetLastError]
jmp 0x140011bab
mov qword [rsp + 0x20], 0
lea r9, [rbp + 0x64]
mov r8d, dword [rbp + 0x24]
mov rdx, qword [rbp + 0xa8]
mov rcx, qword [rbp + 0x1b0]
call qword [sym.imp.KERNEL32.dll_WriteFile]
test eax, eax
jne 0x140011b75
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov r9d, eax
lea r8, str.WriteFile_failed_with_code__d
mov edx, 0x400
lea rcx, [0x14001f8e0]
call fcn.140011230
call qword [sym.imp.KERNEL32.dll_GetLastError]
jmp 0x140011bab
mov r8, qword [rbp + 0xa8]
xor edx, edx
mov rcx, qword [rbp + 0x88]
call qword [sym.imp.KERNEL32.dll_HeapFree]
test eax, eax
jne 0x140011b9b
mov dword [rbp + 0x174], 1
jmp 0x140011ba5
mov dword [rbp + 0x174], 0
mov eax, dword [rbp + 0x174]
mov rdi, rax
lea rcx, [rbp - 0x40]
lea rdx, [0x14001bf80]
call fcn.140011357
mov rax, rdi
mov rcx, qword [rbp + 0x178]
xor rcx, rbp
call fcn.1400111d1
lea rsp, [rbp + 0x188]
pop rdi
pop rbp
ret