Function at 0x1400731e2
Capabilities:
Read file on windows

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
mov eax, 0x40b8
call fcn.1400a8e00
sub rsp, rax
mov rsi, r9
mov ebp, r8d
mov r15, rdx
mov rbx, rcx
mov r14, qword [rsp + 0x4128]
mov rax, qword [0x14002e420]
mov qword [rsp + 0x40b0], rax
mov qword [r14], 0
lea rcx, [rsp + 0xb0]
mov edx, 1
mov r8d, 0x4000
mov r9, rbx
call fcn.1400b8288
mov rdi, rax
mov rcx, rbx
call fcn.1400b795c
test edi, edi
js 0x14007338f
mov eax, edi
cmp rax, 0x4000
je 0x14007338f
lea rax, str.file_format_error
mov qword [r14], rax
xor ebx, ebx
test edi, edi
jle 0x14007339b
cmp edi, 1
je 0x14007339b
mov al, byte [rsp + 0xb0]
test al, al
jne 0x14007339b
mov r13b, byte [rsp + 0xb1]
cmp r13b, 3
je 0x1400732a4
test r13b, r13b
jne 0x14007339b
cmp edi, 6
jl 0x14007339b
cmp byte [rsp + 0xb2], 0
jne 0x14007339b
cmp byte [rsp + 0xb3], 0
jne 0x14007339b
cmp byte [rsp + 0xb4], 0
jne 0x14007339b
cmp byte [rsp + 0xb5], 0
jne 0x14007339b
lea edx, [rdi - 6]
lea rcx, [rsp + 0xb6]
mov dword [rsp + 0x20], 1
xor r9d, r9d
mov r8, r15
call fcn.140075774
mov r12d, eax
test r12d, r12d
js 0x140073399
movsxd rax, r12d
mov ecx, dword [rsp + rax + 0xb6]
bswap ecx
call fcn.140042250
test eax, eax
js 0x140073399
add r12d, 0xa
mov ecx, edi
sub ecx, r12d
cmp ecx, eax
jl 0x140073399
mov qword [rsp + 0x30], rax
lea eax, [rax + 1]
movsxd rcx, eax
mov edx, 1
call fcn.14004723d
mov rbx, rax
test rbx, rbx
je 0x140073374
movsxd rax, r12d
lea rdx, [rsp + rax + 0xb0]
movsxd r8, dword [rsp + 0x30]
mov qword [rsp + 0x38], r8
mov rcx, rbx
call fcn.1400a9f50
mov rax, qword [rsp + 0x38]
mov byte [rbx + rax], 0
test rsi, rsi
je 0x140073384
mov rcx, rbx
call fcn.1400471aa
mov qword [rsi], rax
test r15, r15
je 0x1400733d0
mov qword [r15 + 0x38], rbx
jmp 0x1400733d8
lea rax, str.error_reading_file
mov qword [r14], rax
xor ebx, ebx
lea rcx, [rsp + 0xb0]
mov edx, 0x4000
call fcn.14009f467
mov rcx, qword [rsp + 0x40b0]
call fcn.1400a8e70
mov eax, ebx
add rsp, 0x40b8
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
mov rcx, rbx
call fcn.140047430
mov ebx, 1
test ebp, ebp
jne 0x14007339b
test r15, r15
je 0x140073550
mov rsi, qword [rsp + 0x30]
add esi, r12d
test r13b, r13b
je 0x140073460
mov r12, qword [rsp + 0x4120]
lea rbp, [rsp + 0x40]
mov rcx, rbp
call fcn.140072204
mov rcx, r12
call fcn.1400b93d0
mov rcx, rbp
mov rdx, r12
mov r8d, eax
call fcn.14007221e
lea r12, [rsp + 0xa0]
mov rcx, r12
mov rdx, rbp
call fcn.140072bb7
lea r8d, [rdi + 7]
sub r8d, esi
and r8d, 0xfffffff8
movsxd rax, esi
lea rdx, [rsp + rax + 0xb0]
mov rcx, r12
call fcn.14006a6d0
mov edx, 0x10
mov rcx, r12
call fcn.14009f467
mov eax, edi
mov rdx, rsi
sub eax, esi
cmp eax, 4
jl 0x140073399
movsxd rax, edx
mov cl, byte [rsp + rax + 0xb0]
cmp cl, byte [rsp + rax + 0xb2]
jne 0x140073564
mov cl, byte [rsp + rax + 0xb1]
cmp cl, byte [rsp + rax + 0xb3]
jne 0x140073564
mov rcx, rdx
add ecx, 4
mov edx, edi
mov rbp, rcx
sub edx, ecx
lea rcx, [rsp + rax + 0xb4]
mov r8, r15
call fcn.140075883
mov esi, eax
test esi, esi
js 0x140073399
add esi, ebp
lea r8, [r15 + 0x30]
mov edx, edi
sub edx, esi
movsxd rax, esi
lea rcx, [rsp + rax + 0xb0]
call fcn.1400689fb
mov ebp, eax
test ebp, ebp
js 0x140073399
add ebp, esi
lea r8, [r15 + 0x28]
mov edx, edi
sub edx, ebp
movsxd rax, ebp
lea rcx, [rsp + rax + 0xb0]
call fcn.1400689fb
test eax, eax
js 0x140073399
add eax, ebp
lea r8, [r15 + 0x20]
sub edi, eax
cdqe
lea rcx, [rsp + rax + 0xb0]
mov edx, edi
call fcn.1400689fb
test eax, eax
js 0x140073399
mov rcx, r15
call fcn.1400760a3
test eax, eax
jne 0x14007339b
lea rax, str.rsa_verify_failed
mov qword [r14], rax
mov rcx, r15
call fcn.140076299
jmp 0x140073399
xor ebx, ebx
test r13b, r13b
setne bl
mov qword [r14], 0
jmp 0x14007339b
lea rax, str.wrong_passphrase
mov qword [r14], rax
mov ebx, 0xffffffff
jmp 0x14007339b