Function at 0x1400e6a50
Capabilities:
Encode data using base64

Disassembly:
push rbp
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbx
sub rsp, 0xe8
lea rbp, [rsp + 0x80]
mov qword [rbp + 0x60], 0xfffffffffffffffe
mov ebx, r8d
mov r13, rdx
mov rsi, rcx
mov qword [rcx], 0
mov qword [rcx + 8], 8
mov qword [rcx + 0x10], 0
movzx eax, byte [rdx + 0x225]
xor edi, edi
mov r12d, 0
cmp eax, 7
mov qword [rbp], rcx
ja 0x1400e6bb7
mov ecx, 0x83
bt ecx, eax
jae 0x1400e6bb7
cmp qword [r13], 0
jne 0x1400e6ad8
cmp dword [r13 + 0x21c], 0x110000
jne 0x1400e6ad8
xor edi, edi
jmp 0x1400e6bac
cmp qword [r13 + 0x1e8], 0
je 0x1400e72a3
mov rax, qword [r13 + 0x1f0]
test byte [r13 + 0x219], 0x20
jne 0x1400e6b3f
test rax, rax
je 0x1400e71bc
mov ecx, 1
mov edx, 1
call fcn.14000e8b0
test rax, rax
je 0x1400e72ce
mov byte [rax], 0x20
mov qword [rbp + 0x38], 1
mov qword [rbp + 0x40], rax
mov qword [rbp + 0x48], 1
mov byte [rbp + 0x30], 2
mov rcx, rsi
xor edx, edx
call fcn.140028530
jmp 0x1400e6b85
test rax, rax
je 0x1400e71fd
mov ecx, 1
mov edx, 1
call fcn.14000e8b0
test rax, rax
je 0x1400e72df
mov byte [rax], 0x3d
mov qword [rbp + 0x38], 1
mov qword [rbp + 0x40], rax
mov qword [rbp + 0x48], 1
mov byte [rbp + 0x30], 1
mov rcx, rsi
xor edx, edx
call fcn.140028530
mov rax, qword [rsi + 8]
mov rdi, qword [rsi + 0x10]
mov rcx, rdi
shl rcx, 5
movups xmm0, xmmword [rbp + 0x30]
movups xmm1, xmmword [rbp + 0x40]
movups xmmword [rax + rcx + 0x10], xmm1
movups xmmword [rax + rcx], xmm0
inc rdi
mov qword [rsi + 0x10], rdi
xor r12d, r12d
movzx eax, byte [r13 + 0x225]
cmp al, 7
ja 0x1400e708d
movzx ecx, al
mov edx, 0x83
bt edx, ecx
jae 0x1400e708d
cmp bl, 2
jne 0x1400e6bde
mov edi, dword [r13 + 0x218]
jmp 0x1400e6be1
movzx edi, bl
mov qword [rbp + 0x18], 0
mov qword [rbp + 0x20], 1
mov qword [rbp + 0x28], 0
cmp qword [r13 + 0x1e8], 0
mov r14d, 1
mov esi, 1
je 0x1400e6c1c
mov r14, qword [r13 + 0x1f0]
mov rsi, qword [r13 + 0x1f8]
cmp qword [r13 + 0x180], 0
mov qword [rbp - 0x28], r12
mov qword [rbp - 0x20], rsi
je 0x1400e6c54
lea rdx, [r13 + 0x170]
lea rcx, [rbp - 0x18]
call fcn.1401068e0
mov r15, qword [rbp - 8]
cmp r15, 1
je 0x1400e6c88
mov r12, r13
mov rsi, qword [rbp - 0x10]
jmp 0x1400e6dcf
mov ecx, 0x10
mov edx, 8
call fcn.14000e8b0
test rax, rax
je 0x1400e72bd
movups xmm0, xmmword [r13 + 0x20]
movups xmmword [rax], xmm0
mov qword [rbp - 0x18], 1
mov qword [rbp - 0x10], rax
mov qword [rbp - 8], 1
cmp r14, 2
mov r15d, 1
cmovae r15, r14
mov qword [rbp - 8], 0
mov rax, qword [rbp - 0x10]
mov rsi, qword [rax]
test rsi, rsi
je 0x1400e726b
mov dword [rbp + 0x14], edi
xor edi, edi
mov rcx, r15
shr rcx, 0x3b
sete cl
jne 0x1400e7288
mov qword [rbp + 8], r15
shl r15, 4
mov dil, cl
shl rdi, 3
mov rbx, qword [rax + 8]
test r15, r15
je 0x1400e71a0
mov rcx, r15
mov rdx, rdi
call fcn.14000e8b0
test rax, rax
je 0x1400e71ac
mov r15, rax
mov rcx, rax
cmp r14, 2
jb 0x1400e6d90
mov rax, qword [rbp + 8]
lea rdx, [rax - 1]
lea rdi, [rax - 2]
mov eax, edx
and eax, 7
mov rcx, r15
cmp rdi, 7
jb 0x1400e6d79
and rdx, 0xfffffffffffffff8
mov rcx, r15
nop word cs:[rax + rax]
mov qword [rcx], rsi
mov qword [rcx + 8], rbx
mov qword [rcx + 0x10], rsi
mov qword [rcx + 0x18], rbx
mov qword [rcx + 0x20], rsi
mov qword [rcx + 0x28], rbx
mov qword [rcx + 0x30], rsi
mov qword [rcx + 0x38], rbx
mov qword [rcx + 0x40], rsi
mov qword [rcx + 0x48], rbx
mov qword [rcx + 0x50], rsi
mov qword [rcx + 0x58], rbx
mov qword [rcx + 0x60], rsi
mov qword [rcx + 0x68], rbx
mov qword [rcx + 0x70], rsi
mov qword [rcx + 0x78], rbx
sub rcx, 0xffffffffffffff80
add rdx, 0xfffffffffffffff8
jne 0x1400e6d30
test rax, rax
je 0x1400e6d90
nop
mov qword [rcx], rsi
mov qword [rcx + 8], rbx
add rcx, 0x10
dec rax
jne 0x1400e6d80
mov r12, r13
mov qword [rcx], rsi
mov qword [rcx + 8], rbx
mov rdx, qword [rbp - 0x18]
test rdx, rdx
je 0x1400e6db6
mov rcx, qword [rbp - 0x10]
shl rdx, 4
mov r8d, 8
call fcn.14000e8c0
mov rax, qword [rbp + 8]
mov qword [rbp - 0x18], rax
mov rsi, r15
mov r15, rax
mov qword [rbp - 0x10], rsi
mov qword [rbp - 8], rax
mov edi, dword [rbp + 0x14]
mov qword [rbp + 8], r15
shl r15, 4
add r15, rsi
test r14, r14
setne al
and al, dil
mov byte [rbp + 0x14], al
xor r13d, r13d
mov qword [rbp - 0x48], rsi
jmp 0x1400e6df7
add rsi, 0x10
inc r13
cmp rsi, r15
je 0x1400e6f71
mov rcx, r12
cmp qword [r12], 0
setne al
cmp dword [r12 + 0x21c], 0x110000
mov qword [rbp - 0x30], rsi
setne cl
or cl, al
or cl, byte [rbp + 0x14]
je 0x1400e6e80
lea rax, [rbp - 0x30]
mov qword [rbp - 0x40], rax
lea rax, [0x1400e5a10]
mov qword [rbp - 0x38], rax
mov qword [rbp + 0x30], 0
lea rax, [0x14021f048]
mov qword [rbp + 0x40], rax
mov qword [rbp + 0x48], 2
lea rax, [rbp - 0x40]
mov qword [rbp + 0x50], rax
mov qword [rbp + 0x58], 1
lea rcx, [rbp - 0x60]
lea rdx, [rbp + 0x30]
call fcn.140173db0
jmp 0x1400e6ecb
lea rax, [rbp - 0x30]
mov qword [rbp - 0x40], rax
lea rax, [0x1400e5a10]
mov qword [rbp - 0x38], rax
mov qword [rbp + 0x30], 0
lea rax, [0x14021f020]
mov qword [rbp + 0x40], rax
mov qword [rbp + 0x48], 2
lea rax, [rbp - 0x40]
mov qword [rbp + 0x50], rax
mov qword [rbp + 0x58], 1
lea rcx, [rbp - 0x60]
lea rdx, [rbp + 0x30]
call fcn.140173db0
movups xmm0, xmmword [rbp - 0x60]
movaps xmmword [rbp + 0x30], xmm0
mov rax, qword [rbp - 0x50]
mov qword [rbp + 0x40], rax
mov rbx, qword [rbp + 0x28]
test r13, r13
je 0x1400e6f0d
cmp rbx, qword [rbp + 0x18]
jne 0x1400e6efa
lea rcx, [rbp + 0x18]
mov rdx, rbx
call fcn.140010bf0
mov rbx, qword [rbp + 0x28]
mov rax, qword [rbp + 0x20]
mov byte [rax + rbx], 0x20
mov rbx, qword [rbp + 0x28]
inc rbx
mov qword [rbp + 0x28], rbx
mov rdi, qword [rbp + 0x38]
mov r14, qword [rbp + 0x40]
mov rax, qword [rbp + 0x18]
sub rax, rbx
cmp rax, r14
jae 0x1400e6f34
lea rcx, [rbp + 0x18]
mov rdx, rbx
mov r8, r14
call fcn.140188d30
mov rbx, qword [rbp + 0x28]
mov rcx, qword [rbp + 0x20]
add rcx, rbx
mov rdx, rdi
mov r8, r14
call sub.VCRUNTIME140.dll_memcpy
add rbx, r14
mov qword [rbp + 0x28], rbx
mov rdx, qword [rbp + 0x30]
test rdx, rdx
je 0x1400e6df0
mov r8, rdx
not r8
shr r8, 0x3f
mov rcx, rdi
call fcn.14000e8c0
jmp 0x1400e6df0
cmp qword [r12], 0
jne 0x1400e6fa5
cmp dword [r12 + 0x21c], 0x110000
jne 0x1400e6fa5
cmp byte [r12 + 0x225], 1
mov rsi, qword [rbp]
mov r12, qword [rbp - 0x28]
mov rax, qword [rbp + 8]
je 0x1400e6fb7
cmp rax, qword [rbp - 0x20]
jae 0x1400e6ff6
jmp 0x1400e6fb7
mov rax, qword [rbp + 8]
cmp rax, qword [rbp - 0x20]
mov rsi, qword [rbp]
mov r12, qword [rbp - 0x28]
jae 0x1400e6ff6
mov rax, qword [rbp + 0x18]
mov rdx, qword [rbp + 0x28]
sub rax, rdx
cmp rax, 2
ja 0x1400e6fdf
lea rcx, [rbp + 0x18]
mov r8d, 3
call fcn.140188d30
mov rdx, qword [rbp + 0x28]
mov rsi, qword [rbp]
mov rax, qword [rbp + 0x20]
mov byte [rax + rdx + 2], 0x2e
mov word [rax + rdx], 0x2e2e
add rdx, 3
mov qword [rbp + 0x28], rdx
mov rdx, qword [rbp - 0x18]
test rdx, rdx
je 0x1400e7012
shl rdx, 4
mov r8d, 8
mov rcx, qword [rbp - 0x48]
call fcn.14000e8c0
mov rdx, qword [rbp + 0x18]
mov rcx, qword [rbp + 0x20]
mov rax, qword [rbp + 0x28]
test rax, rax
je 0x1400e7070
mov qword [rbp + 0x38], rdx
mov qword [rbp + 0x40], rcx
mov qword [rbp + 0x48], rax
mov byte [rbp + 0x30], 2
mov rdx, qword [rsi + 0x10]
cmp rdx, qword [rsi]
jne 0x1400e7048
mov rcx, rsi
call fcn.140028530
mov rdx, qword [rsi + 0x10]
mov rax, qword [rsi + 8]
mov rcx, rdx
shl rcx, 5
movups xmm0, xmmword [rbp + 0x30]
movups xmm1, xmmword [rbp + 0x40]
movups xmmword [rax + rcx + 0x10], xmm1
movups xmmword [rax + rcx], xmm0
inc rdx
mov qword [rsi + 0x10], rdx
jmp 0x1400e7119
test rdx, rdx
je 0x1400e7119
mov r8, rdx
not r8
shr r8, 0x3f
call fcn.14000e8c0
jmp 0x1400e7119
cmp qword [r13], 0
jne 0x1400e70a5
cmp dword [r13 + 0x21c], 0x110000
je 0x1400e6bd0
cmp al, 4
jne 0x1400e7119
mov ecx, 3
mov edx, 1
call fcn.14000e8b0
test rax, rax
je 0x1400e7312
mov byte [rax + 2], 0x2e
mov word [rax], 0x2e2e
mov qword [rbp + 0x38], 3
mov qword [rbp + 0x40], rax
mov qword [rbp + 0x48], 3
mov byte [rbp + 0x30], 2
cmp rdi, qword [rsi]
jne 0x1400e70f6
mov rcx, rsi
mov rdx, rdi
call fcn.140028530
mov rdi, qword [rsi + 0x10]
mov rax, qword [rsi + 8]
mov rcx, rdi
shl rcx, 5
movups xmm0, xmmword [rbp + 0x30]
movups xmm1, xmmword [rbp + 0x40]
movups xmmword [rax + rcx + 0x10], xmm1
movups xmmword [rax + rcx], xmm0
inc rdi
mov qword [rsi + 0x10], rdi
test r12b, r12b
je 0x1400e7189
mov ecx, 1
mov edx, 1
call fcn.14000e8b0
test rax, rax
je 0x1400e7292
mov byte [rax], 0x5d
mov qword [rbp + 0x38], 1
mov qword [rbp + 0x40], rax
mov qword [rbp + 0x48], 1
mov byte [rbp + 0x30], 2
mov rdx, qword [rsi + 0x10]
cmp rdx, qword [rsi]
jne 0x1400e7166
mov rcx, rsi
call fcn.140028530
mov rdx, qword [rsi + 0x10]
mov rax, qword [rsi + 8]
mov rcx, rdx
shl rcx, 5
movups xmm0, xmmword [rbp + 0x30]
movups xmm1, xmmword [rbp + 0x40]
movups xmmword [rax + rcx + 0x10], xmm1
movups xmmword [rax + rcx], xmm0
inc rdx
mov qword [rsi + 0x10], rdx
mov rax, rsi
add rsp, 0xe8
pop rbx
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
pop rbp
ret
mov rax, rdi
test rax, rax
jne 0x1400e6cf3
mov rcx, r15
mov rdx, rdi
call fcn.14018fcb0
jmp 0x1400e7321
mov ecx, 2
mov edx, 1
call fcn.14000e8b0
test rax, rax
je 0x1400e72f0
mov word [rax], 0x5b20
mov qword [rbp + 0x38], 2
mov qword [rbp + 0x40], rax
mov qword [rbp + 0x48], 2
mov byte [rbp + 0x30], 2
mov rcx, rsi
xor edx, edx
call fcn.140028530
jmp 0x1400e723c
mov ecx, 2
mov edx, 1
call fcn.14000e8b0
test rax, rax
je 0x1400e7301
mov word [rax], 0x3d5b
mov qword [rbp + 0x38], 2
mov qword [rbp + 0x40], rax
mov qword [rbp + 0x48], 2
mov byte [rbp + 0x30], 2
mov rcx, rsi
xor edx, edx
call fcn.140028530
mov rax, qword [rsi + 8]
mov rdi, qword [rsi + 0x10]
mov rcx, rdi
shl rcx, 5
movups xmm0, xmmword [rbp + 0x30]
movups xmm1, xmmword [rbp + 0x40]
movups xmmword [rax + rcx + 0x10], xmm1
movups xmmword [rax + rcx], xmm0
inc rdi
mov qword [rsi + 0x10], rdi
mov r12b, 1
jmp 0x1400e6baf
lea rcx, [0x14021f068]
lea r8, [0x14021f098]
mov edx, 0x2b
call fcn.14018feb0
jmp 0x1400e7321
call fcn.140173890
jmp 0x1400e7321
mov ecx, 1
mov edx, 1
call fcn.14018fcb0
jmp 0x1400e7321
lea rcx, [0x14021ef28]
lea r8, [0x14021efe8]
mov edx, 0x63
call fcn.14018fdc0
jmp 0x1400e7321
mov ecx, 0x10
mov edx, 8
call fcn.14018fcb0
jmp 0x1400e7321
mov ecx, 1
mov edx, 1
call fcn.14018fcb0
jmp 0x1400e7321
mov ecx, 1
mov edx, 1
call fcn.14018fcb0
jmp 0x1400e7321
mov ecx, 2
mov edx, 1
call fcn.14018fcb0
jmp 0x1400e7321
mov ecx, 2
mov edx, 1
call fcn.14018fcb0
jmp 0x1400e7321
mov ecx, 3
mov edx, 1
call fcn.14018fcb0
ud2