Function at 0x1400b8dec
Capabilities:
Hash data with md5
Read file on windows

Disassembly:
mov qword [rsp + 0x18], rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x3fd0]
mov eax, 0x40d0
call fcn.140001a50
sub rsp, rax
mov rax, qword [section..data]
xor rax, rsp
mov qword [rbp + 0x3fc0], rax
mov rax, qword [rbp + 0x4030]
mov r12, qword [rbp + 0x4038]
xor r15d, r15d
mov qword [rsp + 0x40], r9
mov rbx, rcx
mov r9, rcx
mov dword [rsp + 0x34], r8d
mov rsi, rdx
lea r13d, [r15 + 1]
lea rcx, [rbp - 0x40]
mov r8d, 0x4000
mov edx, r13d
mov qword [rsp + 0x38], rax
mov r14d, r15d
mov qword [r12], r15
call qword [sym.imp.msvcrt.dll_fread]
mov rcx, rbx
mov rdi, rax
call qword [sym.imp.msvcrt.dll_fclose]
cmp rdi, 0x4000
je 0x1400b9158
lea rax, str.file_format_error
mov qword [r12], rax
cmp rdi, r13
jb 0x1400b9163
cmp byte [rbp - 0x40], r15b
jne 0x1400b9163
lea rax, [rdi - 1]
cmp rax, r13
jb 0x1400b9163
movzx eax, byte [rbp - 0x3f]
mov dword [rsp + 0x30], eax
test eax, eax
je 0x1400b8ec2
cmp eax, 3
jne 0x1400b9163
lea rax, [rdi - 2]
cmp rax, 4
jb 0x1400b9163
cmp byte [rbp - 0x3e], r15b
jne 0x1400b9163
cmp byte [rbp - 0x3d], r15b
jne 0x1400b9163
cmp byte [rbp - 0x3c], r15b
jne 0x1400b9163
cmp byte [rbp - 0x3b], r15b
jne 0x1400b9163
lea rcx, [rbp - 0x3a]
xor r9d, r9d
mov r8, rsi
mov edx, edi
mov dword [rsp + 0x20], r13d
call fcn.1400ba5d8
mov ebx, eax
add ebx, 6
js 0x1400b9163
movsxd rcx, ebx
add ebx, 4
movzx eax, byte [rbp + rcx - 0x3f]
movzx r13d, byte [rbp + rcx - 0x40]
movsxd rdx, ebx
shl r13d, 8
or r13d, eax
movzx eax, byte [rbp + rcx - 0x3e]
shl r13d, 8
or r13d, eax
movzx eax, byte [rbp + rcx - 0x3d]
shl r13d, 8
or r13d, eax
mov rax, rdi
sub rax, rdx
movsxd rcx, r13d
cmp rax, rcx
jb 0x1400b9163
lea eax, [r13 + 1]
mov edx, 1
movsxd rcx, eax
call fcn.1400a159c
mov r15, rax
test rax, rax
je 0x1400b8f94
movsxd rax, ebx
lea rdx, [rbp - 0x40]
movsxd r8, r13d
add rdx, rax
mov rcx, r15
call qword [sym.imp.msvcrt.dll_memcpy]
movsxd rax, r13d
mov byte [rax + r15], r14b
add ebx, r13d
mov r13, qword [rsp + 0x40]
test r13, r13
je 0x1400b8fad
mov rcx, r15
call fcn.1400a1310
mov qword [r13], rax
xor r13d, r13d
test rsi, rsi
je 0x1400b8fbb
mov qword [rsi + 0x38], r15
jmp 0x1400b8fc9
test r15, r15
je 0x1400b8fc9
mov rcx, r15
call qword [sym.imp.msvcrt.dll_free]
cmp dword [rsp + 0x34], r13d
jne 0x1400b9143
test rsi, rsi
jne 0x1400b8feb
cmp dword [rsp + 0x30], r13d
mov qword [r12], r13
setne r14b
jmp 0x1400b9163
cmp dword [rsp + 0x30], r13d
je 0x1400b907a
mov rcx, qword [rsp + 0x38]
mov dword [rsp + 0x50], 0x67452301
mov dword [rsp + 0x54], 0xefcdab89
mov dword [rsp + 0x58], 0x98badcfe
mov dword [rsp + 0x5c], 0x10325476
mov qword [rbp - 0x60], r13
mov dword [rbp - 0x58], r13d
call qword [sym.imp.msvcrt.dll_strlen]
mov rdx, qword [rsp + 0x38]
lea rcx, [rsp + 0x50]
mov r8, rax
call fcn.1400b8760
lea rdx, [rsp + 0x50]
lea rcx, [rbp - 0x50]
call fcn.1400b8868
mov r8d, edi
movsxd rax, ebx
sub r8d, ebx
lea rdx, [rbp - 0x40]
lea rcx, [rbp - 0x50]
add r8d, 7
add rdx, rax
and r8d, 0xfffffff8
call fcn.1400b6284
xor edx, edx
lea rcx, [rbp - 0x50]
lea r8d, [rdx + 0x10]
call qword [sym.imp.msvcrt.dll_memset]
movsxd rcx, ebx
mov rax, rdi
sub rax, rcx
cmp rax, 4
jb 0x1400b9163
mov al, byte [rbp + rcx - 0x3e]
cmp byte [rbp + rcx - 0x40], al
jne 0x1400b914b
mov al, byte [rbp + rcx - 0x3d]
cmp byte [rbp + rcx - 0x3f], al
jne 0x1400b914b
add ebx, 4
mov edx, edi
lea rcx, [rbp - 0x40]
movsxd rax, ebx
lea r8, [rsi + 0x18]
sub edx, ebx
add rcx, rax
call fcn.1400b3a8c
test eax, eax
js 0x1400b9163
add ebx, eax
mov edx, edi
lea rcx, [rbp - 0x40]
movsxd rax, ebx
lea r8, [rsi + 0x30]
sub edx, ebx
add rcx, rax
call fcn.1400b3a8c
test eax, eax
js 0x1400b9163
add ebx, eax
mov edx, edi
lea rcx, [rbp - 0x40]
movsxd rax, ebx
lea r8, [rsi + 0x28]
sub edx, ebx
add rcx, rax
call fcn.1400b3a8c
test eax, eax
js 0x1400b9163
add ebx, eax
lea rcx, [rbp - 0x40]
lea r8, [rsi + 0x20]
movsxd rax, ebx
sub edi, ebx
add rcx, rax
mov edx, edi
call fcn.1400b3a8c
test eax, eax
js 0x1400b9163
mov rcx, rsi
call fcn.1400bb118
test eax, eax
jne 0x1400b9143
lea rax, str.rsa_verify_failed
mov rcx, rsi
mov qword [r12], rax
call fcn.1400bb390
jmp 0x1400b9163
mov r14d, 1
jmp 0x1400b9163
lea rax, str.wrong_passphrase
or r14d, 0xffffffff
jmp 0x1400b915f
lea rax, str.error_reading_file
mov qword [r12], rax
lea rcx, [rbp - 0x40]
xor edx, edx
mov r8d, 0x4000
call qword [sym.imp.msvcrt.dll_memset]
mov eax, r14d
mov rcx, qword [rbp + 0x3fc0]
xor rcx, rsp
call fcn.140001010
mov rbx, qword [rsp + 0x4120]
add rsp, 0x40d0
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret