Function at 0x1401b2330
Capabilities:
Read file on windows

Disassembly:
mov qword [rsp + 0x18], rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
mov rbp, rsp
sub rsp, 0x70
mov rax, qword [0x1404779b8]
xor rax, rsp
mov qword [rbp - 8], rax
mov rsi, rdx
mov rdi, rcx
mov qword [rbp - 0x38], rcx
mov qword [rbp - 0x30], rdx
xor ecx, ecx
mov dword [rbp - 0x48], ecx
mov r13, qword [rdx + 0x10]
movabs rdx, 0x7fffffffffffffff
mov rax, rdx
sub rax, r13
cmp rax, 0x24
jb 0x1401b2715
mov r12, rsi
cmp qword [rsi + 0x18], 0x10
jb 0x1401b2393
mov r12, qword [rsi]
mov qword [rbp - 0x28], rcx
mov qword [rbp - 0x18], rcx
mov qword [rbp - 0x10], rcx
lea r15, [r13 + 0x24]
mov ebx, SafeArrayGetLBound
lea r14, [rbp - 0x28]
cmp r15, rbx
jbe 0x1401b23de
mov rbx, r15
or rbx, 0xf
cmp rbx, rdx
jbe 0x1401b23c2
mov rbx, rdx
jmp 0x1401b23ce
mov eax, SafeArrayPutElement
cmp rbx, rax
cmovb rbx, rax
lea rcx, [rbx + 1]
call fcn.1400eb1a0
mov r14, rax
mov qword [rbp - 0x28], rax
mov qword [rbp - 0x18], r15
mov qword [rbp - 0x10], rbx
movups xmm0, xmmword [str._base64_FileEncode__Start_filename:]
movups xmmword [r14], xmm0
movups xmm1, xmmword [0x14035c300]
movups xmmword [r14 + 0x10], xmm1
mov eax, dword [0x14035c310]
mov dword [r14 + 0x20], eax
lea rcx, [r14 + 0x24]
mov r8, r13
mov rdx, r12
call fcn.140253310
mov byte [r14 + r15], 0
mov dword [rbp - 0x48], 2
lea rcx, [rbp - 0x28]
call fcn.1401a7f60
mov rdx, rsi
cmp qword [rsi + 0x18], 0x10
jb 0x1401b2438
mov rdx, qword [rsi]
lea r8, [0x140353924]
lea rcx, [rbp - 0x50]
call fcn.14028c01c
xor r12d, r12d
mov qword [rdi], r12
mov qword [rdi + 0x18], SafeArrayLock
mov qword [rdi + 0x10], 1
mov word [rdi], 0x20
mov dword [rbp - 0x48], 3
cmp qword [rbp - 0x50], r12
je 0x1401b264a
mov qword [rbp - 0x28], r12
mov qword [rbp - 0x18], r12
mov qword [rbp - 0x10], SafeArrayLock
lea ecx, [r12 + 0x30]
call fcn.1400eb1a0
mov rcx, rax
mov qword [rbp - 0x18], 0x22
mov qword [rbp - 0x10], 0x2f
movups xmm0, xmmword [str._base64_FileEncode__File_not_null]
movups xmmword [rax], xmm0
movups xmm1, xmmword [0x14035c328]
movups xmmword [rax + 0x10], xmm1
movzx eax, word [0x14035c338]
mov word [rcx + 0x20], ax
mov byte [rcx + 0x22], r12b
mov qword [rbp - 0x28], rcx
lea rcx, [rbp - 0x28]
call fcn.1401a7f60
xor edx, edx
lea r8d, [r12 + 2]
mov rcx, qword [rbp - 0x50]
call fcn.1402869cc
mov rcx, qword [rbp - 0x50]
call fcn.140290f68
movsxd rbx, eax
mov rcx, rbx
call fcn.14021f4ec
mov r14, rax
xor r8d, r8d
xor edx, edx
mov rcx, qword [rbp - 0x50]
call fcn.1402869cc
mov r9, qword [rbp - 0x50]
mov r8, rbx
lea edx, [r12 + 1]
mov rcx, r14
call fcn.1402865ec
cmp eax, ebx
je 0x1401b257c
mov qword [rbp - 0x28], r12
mov qword [rbp - 0x18], r12
mov qword [rbp - 0x10], SafeArrayLock
lea ecx, [r12 + 0x30]
call fcn.1400eb1a0
mov qword [rbp - 0x18], 0x28
mov qword [rbp - 0x10], 0x2f
movups xmm0, xmmword [str._base64_FileEncode__result___totalsize]
movups xmmword [rax], xmm0
movups xmm1, xmmword [0x14035c350]
movups xmmword [rax + 0x10], xmm1
movsd xmm0, qword [0x14035c360]
movsd qword [rax + 0x20], xmm0
mov byte [rax + 0x28], r12b
mov qword [rbp - 0x28], rax
lea rcx, [rbp - 0x28]
call fcn.1401a7f60
mov r8, rbx
mov rdx, r14
lea rcx, [rbp - 0x28]
call fcn.1401b29c0
mov rbx, rax
cmp rdi, rax
je 0x1401b25f9
mov rdx, qword [rdi + 0x18]
cmp rdx, 0x10
jb 0x1401b25cd
mov rcx, qword [rdi]
inc rdx
cmp rdx, 0x1000
jb 0x1401b25c8
add rdx, 0x27
mov r8, qword [rcx - 8]
sub rcx, r8
lea rax, [rcx - 8]
cmp rax, 0x1f
ja 0x1401b2709
mov rcx, r8
call fcn.14021ecec
mov qword [rdi + 0x10], r12
mov qword [rdi + 0x18], SafeArrayLock
mov byte [rdi], 0
movups xmm0, xmmword [rbx]
movups xmmword [rdi], xmm0
movups xmm1, xmmword [rbx + 0x10]
movups xmmword [rdi + 0x10], xmm1
mov qword [rbx + 0x10], r12
mov qword [rbx + 0x18], SafeArrayLock
mov byte [rbx], 0
mov rdx, qword [rbp - 0x10]
cmp rdx, 0x10
jb 0x1401b2634
inc rdx
mov rcx, qword [rbp - 0x28]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1401b262f
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1401b2709
call fcn.14021ecec
mov edx, 1
mov rcx, r14
call fcn.14021ecec
mov rcx, qword [rbp - 0x50]
call fcn.1402858fc
mov qword [rbp - 0x28], r12
mov qword [rbp - 0x18], r12
mov qword [rbp - 0x10], SafeArrayLock
mov ecx, 0x20
call fcn.1400eb1a0
mov qword [rbp - SafeArrayPutElement], 0x18
mov qword [rbp - 0x10], 0x1f
movups xmm0, xmmword [str._base64_FileEncode__End]
movups xmmword [rax], xmm0
movsd xmm1, qword [0x14035c380]
movsd qword [rax + 0x10], xmm1
mov byte [rax + 0x18], 0
mov qword [rbp - 0x28], rax
lea rcx, [rbp - 0x28]
call fcn.1401a7f60
nop
mov rdx, qword [rsi + 0x18]
cmp rdx, 0x10
jb 0x1401b26d3
inc rdx
mov rcx, qword [rsi]
cmp rdx, 0x1000
jb 0x1401b26ce
add rdx, 0x27
mov r8, qword [rcx - 8]
sub rcx, r8
lea rax, [rcx - 8]
cmp rax, 0x1f
ja 0x1401b270f
mov rcx, r8
call fcn.14021ecec
mov qword [rsi + 0x10], r12
mov qword [rsi + 0x18], SafeArrayLock
mov byte [rsi], 0
mov rax, rdi
mov rcx, qword [rbp - 8]
xor rcx, rsp
call fcn.14021f250
mov rbx, qword [rsp + 0xc0]
add rsp, 0x70
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret
call fcn.140260f54
nop
call fcn.140260f54
nop
call fcn.140101a70
int3