Function at 0x140001580
Capabilities:
Encode data using base64

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, 0x80
mov rax, qword [0x140007010]
xor rax, rsp
mov qword [rbp - 8], rax
mov rbx, rdx
mov r12, rcx
mov qword [rbp - 0x48], rcx
mov r15, qword [rdx + 0x10]
test r15, r15
jne 0x1400015d6
xor r13d, r13d
mov qword [rcx], r13
mov qword [rcx + 0x10], r13
mov edx, 0xf
mov qword [rcx + 0x18], rdx
mov byte [rcx], r13b
jmp 0x140001a54
test r8b, r8b
je 0x140001710
lea rcx, [rbp - 0x28]
call fcn.140001320
nop
lea r15, [rbp - 0x28]
mov rsi, qword [rbp - 0x28]
mov r14, qword [rbp - 0x10]
cmp r14, 0x10
cmovae r15, rsi
mov rdi, qword [rbp - 0x18]
add r15, rdi
lea rbx, [rbp - 0x28]
cmp r14, 0x10
cmovae rbx, rsi
add rbx, rdi
lea rcx, [rbp - 0x28]
cmp r14, 0x10
cmovae rcx, rsi
mov r8, rbx
sub r8, rcx
mov edx, 0xa
call sub.VCRUNTIME140.dll_memchr
mov rcx, rbx
test rax, rax
cmovne rcx, rax
mov r8, rcx
cmp rcx, rbx
je 0x140001671
inc rcx
cmp rcx, rbx
je 0x140001671
nop dword [rax]
movzx eax, byte [rcx]
cmp al, 0xa
je 0x14000165d
mov byte [r8], al
inc r8
inc rcx
cmp rcx, rbx
jne 0x140001650
mov r14, qword [rbp - 0x10]
mov rdi, qword [rbp - 0x18]
mov rsi, qword [rbp - 0x28]
lea rax, [rbp - 0x28]
cmp r14, 0x10
cmovae rax, rsi
mov rdx, r8
sub rdx, rax
sub r15, r8
mov rax, rdi
sub rax, rdx
cmp rax, r15
cmovb r15, rax
lea rcx, [rbp - 0x28]
cmp r14, 0x10
cmovae rcx, rsi
add rcx, rdx
sub rdi, r15
mov qword [rbp - 0x18], rdi
sub rdi, rdx
lea r8, [rdi + 1]
lea rdx, [rcx + r15]
call sub.VCRUNTIME140.dll_memmove
xor r8d, r8d
lea rdx, [rbp - 0x28]
mov rcx, r12
call fcn.1400012a0
nop
mov rdx, qword [rbp - 0x10]
cmp rdx, 0x10
jb 0x140001a54
inc rdx
mov rcx, qword [rbp - 0x28]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140001706
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x140001706
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.140002ccc
jmp 0x140001a54
mov rax, r15
shr rax, 2
lea rcx, [rax + rax*2]
xor r13d, r13d
mov qword [rbp - 0x28], r13
mov r8d, r13d
mov qword [rbp - 0x18], r13
mov edx, 0xf
mov qword [rbp - 0x10], rdx
mov byte [rbp - 0x28], r8b
cmp rcx, 0x10
jb 0x140001753
mov rdx, rcx
lea rcx, [rbp - 0x28]
call fcn.140001af0
mov r8d, r13d
mov qword [rbp - 0x18], r13
mov rdx, qword [rbp - 0x10]
test r15, r15
je 0x140001a41
mov esi, 2
mov r9, qword [rbx + 0x10]
lea rax, [rsi - 1]
cmp r9, rax
jbe 0x140001a7e
mov rcx, rbx
mov r10, qword [rbx + 0x18]
cmp r10, 0x10
jb 0x140001782
mov rcx, qword [rbx]
movzx ecx, byte [rax + rcx]
lea eax, [rcx - 0x41]
cmp al, 0x19
ja 0x140001793
lea rax, [rcx - 0x41]
jmp 0x1400017ce
lea eax, [rcx - 0x61]
cmp al, 0x19
ja 0x1400017a0
lea rax, [rcx - 0x47]
jmp 0x1400017ce
lea eax, [rcx - 0x30]
cmp al, 9
ja 0x1400017ad
lea rax, [rcx + 4]
jmp 0x1400017ce
lea eax, [rcx - 0x2b]
test al, 0xfd
je 0x1400017c9
cmp cl, 0x2f
je 0x1400017c2
cmp cl, 0x5f
jne 0x140001a84
mov eax, 0x3f
jmp 0x1400017ce
mov eax, 0x3e
mov r14d, eax
lea rcx, [rsi - 2]
cmp r9, rcx
jbe 0x140001a7e
mov rax, rbx
cmp r10, 0x10
jb 0x1400017ea
mov rax, qword [rbx]
movzx ecx, byte [rcx + rax]
lea eax, [rcx - 0x41]
cmp al, 0x19
ja 0x1400017fa
sub cl, 0x41
jmp 0x14000182d
lea eax, [rcx - 0x61]
cmp al, 0x19
ja 0x140001806
sub cl, 0x47
jmp 0x14000182d
lea eax, [rcx - 0x30]
cmp al, 9
ja 0x140001812
add cl, 4
jmp 0x14000182d
lea eax, [rcx - 0x2b]
test al, 0xfd
je 0x14000182b
cmp cl, 0x2f
je 0x140001827
cmp cl, 0x5f
jne 0x140001a9e
mov cl, 0x3f
jmp 0x14000182d
mov cl, 0x3e
movzx r9d, r14b
shr r9b, 4
and r9b, 3
shl cl, 2
add r9b, cl
cmp r8, rdx
jae 0x140001865
lea rax, [r8 + 1]
mov qword [rbp - 0x18], rax
lea rax, [rbp - 0x28]
cmp rdx, 0x10
cmovae rax, qword [rbp - 0x28]
mov byte [rax + r8], r9b
mov byte [rax + r8 + 1], 0
jmp 0x14000186e
lea rcx, [rbp - 0x28]
call fcn.140001c40
cmp rsi, r15
jae 0x140001a27
cmp qword [rbx + 0x10], rsi
jbe 0x140001a7e
mov rcx, rbx
mov rax, qword [rbx + 0x18]
cmp rax, 0x10
jb 0x140001891
mov rcx, qword [rbx]
cmp byte [rsi + rcx], 0x3d
je 0x140001a27
mov rcx, rbx
cmp rax, 0x10
jb 0x1400018a7
mov rcx, qword [rbx]
cmp byte [rsi + rcx], 0x2e
je 0x140001a27
mov rcx, rbx
cmp rax, 0x10
jb 0x1400018bd
mov rcx, qword [rbx]
movzx ecx, byte [rsi + rcx]
lea eax, [rcx - 0x41]
cmp al, 0x19
ja 0x1400018cd
lea edi, [rcx - 0x41]
jmp 0x140001906
lea eax, [rcx - 0x61]
cmp al, 0x19
ja 0x1400018d9
lea edi, [rcx - 0x47]
jmp 0x140001906
lea eax, [rcx - 0x30]
cmp al, 9
ja 0x1400018e5
lea edi, [rcx + 4]
jmp 0x140001906
lea eax, [rcx - 0x2b]
test al, 0xfd
je 0x140001901
cmp cl, 0x2f
je 0x1400018fa
cmp cl, 0x5f
jne 0x140001ab8
mov edi, 0x3f
jmp 0x140001906
mov edi, 0x3e
shl r14b, 4
mov ecx, edi
shr ecx, 2
xor cl, r14b
and cl, 0xf
xor cl, r14b
mov rdx, qword [rbp - 0x18]
mov r8, qword [rbp - 0x10]
cmp rdx, r8
jae 0x140001944
lea rax, [rdx + 1]
mov qword [rbp - 0x18], rax
lea rax, [rbp - 0x28]
cmp r8, 0x10
cmovae rax, qword [rbp - 0x28]
mov byte [rax + rdx], cl
mov byte [rax + rdx + 1], 0
jmp 0x140001951
movzx r9d, cl
lea rcx, [rbp - 0x28]
call fcn.140001c40
lea rax, [rsi + 1]
cmp rax, r15
jae 0x140001a27
cmp qword [rbx + 0x10], rax
jbe 0x140001a7e
mov rdx, rbx
mov rcx, qword [rbx + 0x18]
cmp rcx, 0x10
jb 0x140001978
mov rdx, qword [rbx]
cmp byte [rax + rdx], 0x3d
je 0x140001a27
mov rdx, rbx
cmp rcx, 0x10
jb 0x14000198e
mov rdx, qword [rbx]
cmp byte [rax + rdx], 0x2e
je 0x140001a27
mov rdx, rbx
cmp rcx, 0x10
jb 0x1400019a4
mov rdx, qword [rbx]
movzx eax, byte [rax + rdx]
lea ecx, [rax - 0x41]
cmp cl, 0x19
ja 0x1400019b4
sub al, 0x41
jmp 0x1400019e6
lea ecx, [rax - 0x61]
cmp cl, 0x19
ja 0x1400019c0
sub al, 0x47
jmp 0x1400019e6
lea ecx, [rax - 0x30]
cmp cl, 9
ja 0x1400019cc
add al, 4
jmp 0x1400019e6
lea ecx, [rax - 0x2b]
test cl, 0xfd
je 0x1400019e4
cmp al, 0x2f
je 0x1400019e0
cmp al, 0x5f
jne 0x140001ad2
mov al, 0x3f
jmp 0x1400019e6
mov al, 0x3e
shl dil, 6
add dil, al
mov rcx, qword [rbp - 0x18]
mov rdx, qword [rbp - 0x10]
cmp rcx, rdx
jae 0x140001a1a
lea rax, [rcx + 1]
mov qword [rbp - 0x18], rax
lea rax, [rbp - 0x28]
cmp rdx, 0x10
cmovae rax, qword [rbp - 0x28]
mov byte [rax + rcx], dil
mov byte [rax + rcx + 1], 0
jmp 0x140001a27
movzx r9d, dil
lea rcx, [rbp - 0x28]
call fcn.140001c40
add rsi, 4
lea rax, [rsi - 2]
cmp rax, r15
jae 0x140001a41
mov rdx, qword [rbp - 0x10]
mov r8, qword [rbp - 0x18]
jmp 0x140001761
movups xmm0, xmmword [rbp - 0x28]
movups xmmword [r12], xmm0
movups xmm1, xmmword [rbp - 0x18]
movups xmmword [r12 + 0x10], xmm1
mov rax, r12
mov rcx, qword [rbp - 8]
xor rcx, rsp
call fcn.140002c70
mov rbx, qword [rsp + 0xd0]
add rsp, 0x80
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret
call fcn.140001560
nop
lea rcx, [rbp - 0x60]
call fcn.1400011f0
lea rdx, [0x140005a40]
lea rcx, [rbp - 0x60]
call sub.VCRUNTIME140.dll__CxxThrowException
int3
lea rcx, [rbp - 0x60]
call fcn.1400011f0
lea rdx, [0x140005a40]
lea rcx, [rbp - 0x60]
call sub.VCRUNTIME140.dll__CxxThrowException
int3
lea rcx, [rbp - 0x60]
call fcn.1400011f0
lea rdx, [0x140005a40]
lea rcx, [rbp - 0x60]
call sub.VCRUNTIME140.dll__CxxThrowException
int3
lea rcx, [rbp - 0x40]
call fcn.1400011f0
lea rdx, [0x140005a40]
lea rcx, [rbp - 0x40]
call sub.VCRUNTIME140.dll__CxxThrowException
int3