Function at 0x14000158b
Capabilities:
Write file on windows

Disassembly:
push rbp
mov rbp, rsp
sub rsp, 0x90
mov qword [rbp + 0x10], rcx
mov qword [rbp + 0x18], rdx
mov qword [rbp + 0x20], r8
mov qword [rbp + 0x28], r9
call sym.EVP_CIPHER_CTX_new
mov qword [rbp - 8], rax
cmp qword [rbp - 8], 0
jne 0x1400015e6
mov ecx, 2
mov rax, qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll___acrt_iob_func]
call rax
mov r9, rax
mov r8d, 0x1e
mov edx, 1
lea rax, str.Error_creating_cipher_context_n
mov rcx, rax
call sym.fwrite
jmp 0x140001800
call sym.EVP_aes_128_cbc
mov rdx, rax
mov rcx, qword [rbp + 0x10]
mov rax, qword [rbp - 8]
mov qword [rsp + 0x20], 0
mov r9, rcx
mov r8d, 0
mov rcx, rax
call sym.EVP_EncryptInit_ex
cmp eax, 1
je 0x140001651
mov ecx, 2
mov rax, qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll___acrt_iob_func]
call rax
mov r9, rax
mov r8d, 0x1e
mov edx, 1
lea rax, str.Error_initialising_encryption_n
mov rcx, rax
call sym.fwrite
mov rax, qword [rbp - 8]
mov rcx, rax
call sym.EVP_CIPHER_CTX_free
jmp 0x140001800
mov rax, qword [rbp + 0x18]
mov rcx, rax
call sym.strlen
mov qword [rbp - 0x10], rax
mov rax, qword [rbp - 0x10]
add rax, 0x10
and rax, 0xfffffffffffffff0
mov qword [rbp - 0x18], rax
mov rax, qword [rbp - 0x18]
mov edx, 1
mov rcx, rax
call sym.calloc
mov qword [rbp - 0x20], rax
cmp qword [rbp - 0x20], 0
jne 0x1400016bd
mov ecx, 2
mov rax, qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll___acrt_iob_func]
call rax
mov r9, rax
mov r8d, 0x18
mov edx, 1
lea rax, str.Memory_allocation_error_n
mov rcx, rax
call sym.fwrite
jmp 0x140001800
mov rcx, qword [rbp - 0x10]
mov rdx, qword [rbp + 0x18]
mov rax, qword [rbp - 0x20]
mov r8, rcx
mov rcx, rax
call sym.memcpy
mov rax, qword [rbp - 0x18]
mov edx, eax
mov rax, qword [rbp - 0x10]
mov ecx, eax
mov eax, edx
sub eax, ecx
mov byte [rbp - 0x21], al
movzx r8d, byte [rbp - 0x21]
movzx eax, byte [rbp - 0x21]
mov rcx, qword [rbp - 0x20]
mov rdx, qword [rbp - 0x10]
add rcx, rdx
mov edx, eax
call sym.memset
lea rax, [rbp - 0x50]
mov edx, 0x10
mov rcx, rax
call sym.RAND_bytes
test eax, eax
jne 0x14000175f
mov ecx, 2
mov rax, qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll___acrt_iob_func]
call rax
mov r9, rax
mov r8d, 0x14
mov edx, 1
lea rax, str.Error_generating_IV_n
mov rcx, rax
call sym.fwrite
mov rax, qword [rbp - 0x20]
mov rcx, rax
call sym.free
mov rax, qword [rbp - 8]
mov rcx, rax
call sym.EVP_CIPHER_CTX_free
jmp 0x140001800
mov rax, qword [rbp - 0x50]
mov rdx, qword [rbp - 0x48]
mov rcx, qword [rbp + 0x20]
mov qword [rcx], rax
mov qword [rcx + 8], rdx
mov rax, qword [rbp + 0x20]
add rax, 0x10
mov qword [rbp - 0x30], rax
mov rax, qword [rbp - 0x50]
mov rdx, qword [rbp - 0x48]
mov qword [rbp - 0x60], rax
mov qword [rbp - 0x58], rdx
mov rax, qword [rbp - 0x18]
mov r9d, eax
mov r8, qword [rbp - 0x20]
lea rcx, [rbp - 0x34]
mov rdx, qword [rbp - 0x30]
mov rax, qword [rbp - 8]
mov dword [rsp + 0x20], r9d
mov r9, r8
mov r8, rcx
mov rcx, rax
call sym.EVP_EncryptUpdate
mov eax, dword [rbp - 0x34]
movsxd rdx, eax
mov rax, qword [rbp - 0x30]
add rdx, rax
lea rcx, [rbp - 0x34]
mov rax, qword [rbp - 8]
mov r8, rcx
mov rcx, rax
call sym.EVP_EncryptFinal_ex
mov rax, qword [rbp - 0x18]
lea rdx, [rax + 0x10]
mov rax, qword [rbp + 0x28]
mov qword [rax], rdx
mov rax, qword [rbp - 0x20]
mov rcx, rax
call sym.free
mov rax, qword [rbp - 8]
mov rcx, rax
call sym.EVP_CIPHER_CTX_free
nop
add rsp, 0x90
pop rbp
ret