Function at 0x140068894
Capabilities:
Encode data using base64

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x18], r8
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x20
xor r14d, r14d
mov r13, r9
mov esi, edx
mov r12, rcx
test r9, r9
je 0x140068976
or rdi, 0xffffffffffffffff
inc rdi
cmp word [rcx + rdi*2], r14w
jne 0x1400688c5
mov ebp, edi
mov r15d, 0x80070216
cmp rdi, rbp
je 0x1400688e6
mov ecx, r15d
call fcn.140079c40
jmp 0x1400688ed
xor ecx, ecx
call fcn.140079c60
mov rax, rdi
sub rax, rbp
neg rax
sbb ebx, ebx
and ebx, r15d
mov ecx, ebx
call fcn.140079c60
cmp rdi, rbp
je 0x14006890b
mov ecx, ebx
jmp 0x14006897d
cmp edi, esi
lea rcx, str.________________________________________________456789:_________
mov ebp, r14d
mov eax, 0x100
cmovb esi, edi
lea r15, [r12 + rsi*2]
mov rsi, r12
cmp r12, r15
jae 0x1400689eb
mov r14d, ebp
cmp word [rsi], ax
jae 0x140068976
movzx eax, word [rsi]
cmp byte [rax + rcx], 0x3f
jbe 0x1400689a1
cmp word [rsi], 0x20
ja 0x140068959
movzx eax, word [rsi]
movabs rcx, 0x100002600
bt rcx, rax
jb 0x1400689d1
xor r15d, r15d
test ebp, ebp
je 0x140068976
mov eax, ebp
and eax, 3
je 0x1400689ee
cmp word [rsi], 0x3d
jne 0x140068976
cmp eax, 1
jne 0x1400689ee
mov ecx, 0x80070057
mov ebx, ecx
call fcn.140079c40
mov ecx, ebx
call fcn.140079c60
mov eax, ebx
mov rbx, qword [rsp + 0x60]
add rsp, 0x20
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret
lea edi, [rbp + 1]
cmp edi, ebp
jb 0x1400689ac
mov ebp, edi
jmp 0x1400689b6
mov ecx, 0x80070216
call fcn.140079c40
cmp edi, r14d
sbb ebx, ebx
and ebx, 0x80070216
mov ecx, ebx
call fcn.140079c60
cmp edi, r14d
jb 0x140068907
add rsi, 2
cmp rsi, r15
jae 0x1400689eb
lea rcx, str.________________________________________________456789:_________
mov eax, 0x100
jmp 0x14006892f
xor r15d, r15d
mov ecx, ebp
mov ebx, r15d
shr ecx, 2
test ecx, ecx
je 0x140068a1e
lea esi, [rcx + rcx*2]
mov eax, 0xaaaaaaab
mul esi
shr edx, 1
cmp edx, ecx
je 0x140068a21
mov eax, 0x80070216
mov ecx, eax
mov ebx, eax
call fcn.140079c40
mov esi, dword [rsp + 0x78]
jmp 0x140068a21
mov esi, r15d
mov ecx, ebx
mov r14d, esi
call fcn.140079c60
test ebx, ebx
js 0x140068907
mov eax, ebp
and eax, 3
sub eax, 1
je 0x140068976
sub eax, 1
je 0x140068a7b
cmp eax, 1
jne 0x140068aae
lea edi, [rsi + 1]
cmp edi, esi
jb 0x140068a56
mov esi, edi
jmp 0x140068a60
mov ecx, 0x80070216
call fcn.140079c40
cmp edi, r14d
sbb ebx, ebx
and ebx, 0x80070216
mov ecx, ebx
call fcn.140079c60
cmp edi, r14d
jb 0x140068907
lea edi, [rsi + 1]
mov r14d, esi
cmp edi, esi
jb 0x140068a89
mov esi, edi
jmp 0x140068a93
mov ecx, 0x80070216
call fcn.140079c40
cmp edi, r14d
sbb ebx, ebx
and ebx, 0x80070216
mov ecx, ebx
call fcn.140079c60
cmp edi, r14d
jb 0x140068907
mov rax, qword [rsp + 0x70]
test rax, rax
jne 0x140068ac4
mov dword [r13], esi
mov ebx, r15d
jmp 0x140068982
cmp dword [r13], esi
jae 0x140068ad4
mov ebx, 0x8007007a
jmp 0x140068907
mov r14d, esi
mov rdi, rax
add r14, rax
test ebp, ebp
je 0x140068c05
xor eax, eax
mov ecx, ebp
mov edx, 4
mov dword [rsp + 0x78], eax
xor r8d, r8d
mov r15d, ebp
cmp ebp, edx
cmova ecx, edx
test rcx, rcx
je 0x140068b47
xor edx, edx
lea r9, str.________________________________________________456789:_________
mov r10d, 0x100
jmp 0x140068b21
movzx eax, ax
cmp byte [rax + r9], 0x3f
jbe 0x140068b2c
add r12, 2
movzx eax, word [r12]
cmp r10w, ax
ja 0x140068b13
mov al, byte [r12]
inc r8d
mov byte [rsp + rdx + 0x78], al
add r12, 2
mov edx, r8d
cmp rdx, rcx
jb 0x140068b21
mov eax, dword [rsp + 0x78]
cmp rdi, r14
jae 0x140068c1f
movzx ecx, byte [rsp + 0x79]
lea r10, str.________________________________________________456789:_________
mov r9b, byte [rcx + r10]
movzx ecx, al
mov al, r9b
shr al, 4
mov dl, byte [rcx + r10]
shl dl, 2
or dl, al
mov byte [rdi], dl
inc rdi
cmp r8d, 2
jbe 0x140068b9e
cmp rdi, r14
jae 0x140068c1f
movzx eax, byte [rsp + 0x7a]
shl r9b, 4
mov cl, byte [rax + r10]
shr cl, 2
or cl, r9b
mov byte [rdi], cl
inc rdi
cmp r8d, 3
jbe 0x140068bc3
cmp rdi, r14
jae 0x140068c1f
movzx eax, byte [rsp + 0x7a]
mov cl, byte [rax + r10]
movzx eax, byte [rsp + 0x7b]
shl cl, 6
or cl, byte [rax + r10]
mov byte [rdi], cl
inc rdi
mov esi, ebp
sub esi, r8d
cmp esi, ebp
ja 0x140068bd0
mov ebp, esi
jmp 0x140068bda
mov ecx, 0x80070216
call fcn.140079c40
cmp r15d, esi
sbb ebx, ebx
and ebx, 0x80070216
mov ecx, ebx
call fcn.140079c60
cmp esi, r15d
ja 0x140068907
xor r15d, r15d
test ebp, ebp
jne 0x140068ae5
mov rax, qword [rsp + 0x70]
sub rdi, rax
mov eax, edi
cmp rdi, rax
je 0x140068c29
mov eax, 0x80070216
mov ebx, eax
mov ecx, eax
call fcn.140079c40
jmp 0x140068c58
mov ecx, 0x8000ffff
jmp 0x14006897b
test rdi, rdi
jns 0x140068c38
mov ecx, 0x80070216
call fcn.140079c40
test rdi, rdi
mov ebx, 0x80070216
cmovns ebx, r15d
mov ecx, ebx
call fcn.140079c60
test rdi, rdi
jns 0x140068c54
mov ecx, ebx
jmp 0x140068c18
mov dword [r13], edi
mov ecx, ebx
call fcn.140079c60
test ebx, ebx
jns 0x140068982
jmp 0x140068907