Function at 0x140047470
Capabilities:
Encode data using base64

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rbp
mov qword [rsp + 0x18], rsi
mov qword [rsp + 0x20], rdi
push r14
mov r11, qword [rcx]
mov rax, rcx
mov rsi, r11
mov r10d, edx
movabs rcx, 0xaaaaaaaaaaaaaaaa
mov edi, edx
and rsi, rcx
mov r9d, edx
mov r14, r8
cmp edx, 0x3f
je 0x1400478e2
inc r10d
mov ebx, r10d
test r10b, 1
je 0x1400474da
lea ecx, [r10 - 2]
mov r8d, r10d
btr r11, r8
mov dword [r14], ecx
mov qword [rax], r11
mov rcx, qword [rax + r10*8]
mov qword [rax + rdi*8], rcx
jmp 0x140047a02
bt r11, rdi
jae 0x140047502
btr r11, r9
mov dword [r8], edi
mov qword [rax], r11
lea ecx, [rdi - 1]
mov rcx, qword [rax + rcx*8 + 0x200]
mov qword [rax + r9*8 + 0x200], rcx
jmp 0x140047a02
lea edx, [r10 + 1]
mov ecx, edx
bt r11, rcx
jae 0x140047553
btr r11, rdx
mov qword [rax], r11
lea ecx, [r10 - 3]
mov rbx, qword [rax + rdx*8]
lea r11, [rax + r10*8]
mov dword [r8], ecx
lea r8, [rax + r10*8]
lea r9, [rax + r9*8]
cmp r10d, 2
je 0x14004753d
mov rcx, qword [r8]
lea edx, [r10 - 2]
mov qword [rax + rdx*8], rcx
mov qword [r8], rbx
mov rax, qword [r11 + 0x200]
mov qword [r9 + 0x200], rax
jmp 0x140047a02
mov ecx, r10d
mov r8, 0xffffffffffffffff
shl r8, cl
mov ebp, 1
and r8, rsi
je 0x1400477d4
lea rdx, [r8 - 1]
not r8
and rdx, r8
movabs r8, 0x5555555555555555
mov rcx, rdx
shr rcx, 1
and rcx, r8
movabs r8, 0x3333333333333333
sub rdx, rcx
mov rcx, rdx
and rdx, r8
shr rcx, 2
and rcx, r8
add rcx, rdx
mov edx, ebp
mov r8, rcx
shr r8, 4
add r8, rcx
movabs rcx, 0xf0f0f0f0f0f0f0f
and r8, rcx
movabs rcx, 0x101010101010101
imul r8, rcx
shr r8, 0x38
mov ecx, r8d
mov edi, r8d
shl rdx, cl
sub edi, r10d
mov ecx, r10d
shl rbp, cl
mov ecx, edi
sub rdx, rbp
shr rdx, cl
and rsi, rdx
je 0x1400476d4
mov rcx, rsi
mov dword [r14], r9d
shr rcx, 0x20
mov r8d, 0x20
neg rcx
shr rcx, 0x20
and ecx, 0x20
shr rsi, cl
sub r8, rcx
lea rcx, [rsi - 0x10000]
shr rcx, 0x20
and ecx, 0x10
shl rsi, cl
add r8, rcx
lea rcx, [rsi - 0x1000000]
shr rcx, 0x20
and ecx, 8
shl rsi, cl
add r8, rcx
lea rcx, [rsi - 0x10000000]
shr rcx, 0x20
and ecx, 4
shl rsi, cl
add r8, rcx
lea rdx, [rsi - 0x40000000]
shr rdx, 0x20
and edx, 2
mov ecx, edx
shl rsi, cl
shr rsi, 0x1e
mov rcx, rsi
shr rcx, 1
not ecx
and ecx, esi
sub edx, ecx
add edx, 2
add edx, r8d
xor edx, 0x3f
sub r10d, edx
mov ecx, edx
btr r11, rcx
add r10d, 0xfffffffd
shr r10d, 1
mov qword [rax], r11
je 0x1400478af
nop word [rax + rax]
lea r8, [rax + r9*8]
lea ecx, [r9 - 2]
dec r9d
mov rcx, qword [rax + rcx*8 + 0x200]
mov qword [r8 + 0x200], rcx
lea ecx, [r9 - 2]
mov rcx, qword [rax + rcx*8]
mov qword [rax + r9*8], rcx
dec r9d
add r10d, 0xffffffff
jne 0x1400476a0
jmp 0x1400478af
mov ecx, r8d
btr r11, rcx
shr edi, 1
mov qword [rax], r11
cmp r10d, 2
je 0x140047767
add r10d, 0xfffffffe
lea ecx, [r10 - 1]
mov dword [r14], ecx
test edi, edi
je 0x14004772c
nop dword [rax]
mov ecx, ebx
inc ebx
mov rcx, qword [rax + rcx*8]
mov qword [rax + r10*8], rcx
inc r10d
mov rdx, qword [rax + rbx*8 + 0x200]
inc ebx
lea r8, [rax + r10*8]
inc r10d
mov qword [r8 + 0x200], rdx
add edi, 0xffffffff
jne 0x140047700
lea ecx, [r10 + 2]
mov rcx, qword [rax + rcx*8]
mov qword [rax + r10*8], rcx
lea r10d, [r10 + 1]
lea ecx, [r10 + 1]
mov r8d, ecx
lea rdx, [rax + r10*8]
mov rcx, qword [rax + rcx*8 + 0x200]
mov qword [rdx + 0x200], rcx
lea ecx, [r10 + 2]
mov rcx, qword [rax + rcx*8]
mov qword [rax + r8*8], rcx
jmp 0x140047a02
lea ecx, [r9 - 2]
mov dword [r14], ecx
test edi, edi
je 0x1400477ac
lea r10d, [r9 + 2]
nop word [rax + rax]
mov rdx, qword [rax + r10*8 + 0x200]
lea r8, [rax + r9*8]
inc r10d
mov qword [r8 + 0x200], rdx
inc r9d
mov rcx, qword [rax + r10*8]
inc r10d
mov qword [rax + r9*8], rcx
inc r9d
add edi, 0xffffffff
jne 0x140047780
lea r8d, [r9 + 1]
mov rcx, qword [rax + r8*8 + 0x200]
lea rdx, [rax + r9*8]
mov qword [rdx + 0x200], rcx
lea ecx, [r9 + 2]
mov rcx, qword [rax + rcx*8]
mov qword [rax + r8*8], rcx
jmp 0x140047a02
shl rbp, cl
mov r8d, 0x20
dec rbp
mov dword [r14], r9d
and rbp, rsi
mov rcx, rbp
shr rcx, 0x20
neg rcx
shr rcx, 0x20
and ecx, 0x20
shr rbp, cl
sub r8, rcx
lea rcx, [rbp - 0x10000]
shr rcx, 0x20
and ecx, 0x10
shl rbp, cl
add r8, rcx
lea rcx, [rbp - 0x1000000]
shr rcx, 0x20
and ecx, 8
shl rbp, cl
add r8, rcx
lea rcx, [rbp - 0x10000000]
shr rcx, 0x20
and ecx, 4
shl rbp, cl
add r8, rcx
lea rdx, [rbp - 0x40000000]
shr rdx, 0x20
and edx, 2
mov ecx, edx
shl rbp, cl
shr rbp, 0x1e
mov rcx, rbp
shr rcx, 1
not ecx
and ecx, ebp
sub edx, ecx
add edx, 2
add edx, r8d
xor edx, 0x3f
sub r10d, edx
mov ecx, edx
btr r11, rcx
add r10d, 0xfffffffd
shr r10d, 1
mov qword [rax], r11
je 0x1400478af
nop word [rax + rax]
lea r8, [rax + r9*8]
lea ecx, [r9 - 2]
dec r9d
mov rcx, qword [rax + rcx*8 + 0x200]
mov qword [r8 + 0x200], rcx
lea ecx, [r9 - 2]
mov rcx, qword [rax + rcx*8]
mov qword [rax + r9*8], rcx
dec r9d
add r10d, 0xffffffff
jne 0x140047880
lea r8, [rax + r9*8]
lea ecx, [r9 - 2]
mov rcx, qword [rax + rcx*8 + 0x200]
lea r9d, [r9 - 1]
mov qword [r8 + 0x200], rcx
lea ecx, [r9 - 1]
mov r8d, ecx
mov rcx, qword [rax + rcx*8]
mov qword [rax + r9*8], rcx
lea ecx, [r9 - 2]
jmp 0x1400479e2
mov rcx, rsi
mov dword [r14], 0x3f
shr rcx, 0x20
mov r8d, 0x20
neg rcx
shr rcx, 0x20
and ecx, 0x20
shr rsi, cl
sub r8, rcx
lea rcx, [rsi - 0x10000]
shr rcx, 0x20
and ecx, 0x10
shl rsi, cl
add r8, rcx
lea rcx, [rsi - 0x1000000]
shr rcx, 0x20
and ecx, 8
shl rsi, cl
add r8, rcx
lea rcx, [rsi - 0x10000000]
shr rcx, 0x20
and ecx, 4
shl rsi, cl
add r8, rcx
lea rdx, [rsi - 0x40000000]
shr rdx, 0x20
and edx, 2
mov ecx, edx
shl rsi, cl
shr rsi, 0x1e
mov rcx, rsi
shr rcx, 1
not ecx
and ecx, esi
sub edx, ecx
lea ecx, [r8 + 2]
add ecx, edx
mov r8d, ecx
xor r8d, 0x3f
mov edx, r8d
btr r11, rdx
mov qword [rax], r11
test ecx, ecx
je 0x1400479f4
mov rcx, qword [rax + 0x3e8]
mov r9d, 0x3d
sub r9d, r8d
mov qword [rax + 0x3f8], rcx
dec r10d
shr r9d, 1
je 0x1400479cf
nop
lea ecx, [r10 - 2]
mov rcx, qword [rax + rcx*8]
mov qword [rax + r10*8], rcx
dec r10d
lea r8, [rax + r10*8]
lea ecx, [r10 - 2]
dec r10d
mov rcx, qword [rax + rcx*8 + 0x200]
mov qword [r8 + 0x200], rcx
add r9d, 0xffffffff
jne 0x1400479a0
lea ecx, [r10 - 1]
mov r8d, ecx
mov rcx, qword [rax + rcx*8]
mov qword [rax + r10*8], rcx
lea ecx, [r10 - 2]
mov rcx, qword [rax + rcx*8 + 0x200]
mov qword [rax + r8*8 + 0x200], rcx
jmp 0x140047a02
mov rcx, qword [rax + 0x3f0]
mov qword [rax + 0x3f8], rcx
mov rbx, qword [rsp + 0x10]
xor eax, eax
mov rbp, qword [rsp + 0x18]
mov rsi, qword [rsp + 0x20]
mov rdi, qword [rsp + 0x28]
pop r14
ret