Function at 0x656c8900
Capabilities:
Encode data using base64

Disassembly:
mov rcx, qword gs:[0x28]
mov rcx, qword [rcx]
cmp rsp, qword [rcx + 0x10]
jbe 0x656c9258
add rsp, 0xffffffffffffff80
mov qword [rsp + 0x78], rbp
lea rbp, [rsp + 0x78]
mov rdx, qword [rsp + 0xc0]
mov rdx, qword [rdx]
lea rcx, [rdx - 0x3c]
neg rcx
cmp rcx, 0x40
sbb rdx, rdx
mov rbx, qword [rsp + 0xb0]
test rbx, rbx
mov rsi, qword [rsp + 0xb8]
mov edi, 0
cmove rsi, rdi
shl rbx, cl
and rbx, rdx
jmp 0x656c896b
shl rbx, 1
dec rsi
test rbx, rbx
je 0x656c8977
bt rbx, 0x3c
jae 0x656c8965
mov rcx, qword [rsp + 0xa0]
nop
cmp rcx, 0xf
jae 0x656c924d
mov rdx, rcx
shl rcx, 2
cmp rcx, 0x40
sbb rdi, rdi
lea r8, [rcx - 0x3c]
neg r8
cmp r8, 0x40
sbb r9, r9
mov r10, rbx
shl rbx, cl
and rbx, rdi
movabs rdi, 0xfffffffffffffff
and rdi, rbx
mov rcx, r8
shr r10, cl
and r10, r9
mov rbx, r10
and r10, 1
or rdi, r10
movabs r10, 0x800000000000000
nop dword [rax]
cmp rdi, r10
jbe 0x656c9245
lea r10, [rbx + 1]
shl r10, cl
and r10, r9
bt r10, 0x3d
jae 0x656c8a00
shr r10, 1
inc rsi
movzx ecx, byte [rsp + 0xa8]
cmp cl, 0x58
jne 0x656c9239
lea rax, [0x6574d154]
mov qword [rsp + 0x70], rax
mov qword [rsp + 0xb8], rsi
mov qword [rsp + 0xb0], r10
movzx ebx, byte [rsp + 0xa9]
test bl, bl
je 0x656c921c
mov rbx, qword [rsp + 0x90]
lea rdi, [rbx + 1]
mov r8, qword [rsp + 0x98]
cmp r8, rdi
jb 0x656c91ab
mov r9, qword [rsp + 0x88]
mov byte [r9 + rbx], 0x2d
lea rbx, [rdi + 3]
cmp rbx, r8
ja 0x656c913a
mov qword [rsp + 0x90], rbx
mov byte [r9 + rdi], 0x30
mov byte [r9 + rdi + 1], cl
mov r11, r10
shr r10, 0x3c
and r10, 1
add r10d, 0x30
mov byte [r9 + rdi + 2], r10b
shl r11, 4
mov qword [rsp + 0x68], r11
test rdx, rdx
jge 0x656c8ff0
test r11, r11
je 0x656c8fed
lea rdx, [rbx + 1]
nop dword [rax]
cmp r8, rdx
jb 0x656c8f8f
mov byte [r9 + rbx], 0x2e
jmp 0x656c8ae0
mov byte [r9 + rdx], r10b
shl rdi, 4
mov r11, rdi
mov rdx, rbx
nop
test r11, r11
je 0x656c8b75
lea rbx, [rdx + 1]
mov rdi, r11
shr r11, 0x3c
and r11, 0xf
movzx r10d, byte [rax + r11]
nop dword [rax]
cmp rbx, r8
jbe 0x656c8ad0
mov qword [rsp + 0x60], rdx
mov qword [rsp + 0x68], rdi
mov byte [rsp + 0x47], r10b
lea rax, [0x6572f300]
mov qword [rsp], rax
mov qword [rsp + 8], r9
mov qword [rsp + 0x10], rdx
mov qword [rsp + 0x18], r8
mov qword [rsp + 0x20], rbx
call fcn.6568a2c0
mov r9, qword [rsp + 0x28]
mov rax, qword [rsp + 0x30]
mov r8, qword [rsp + 0x38]
lea rbx, [rax + 1]
mov rax, qword [rsp + 0x70]
movzx ecx, byte [rsp + 0xa8]
mov rdx, qword [rsp + 0x60]
mov rsi, qword [rsp + 0xb8]
mov rdi, qword [rsp + 0x68]
movzx r10d, byte [rsp + 0x47]
jmp 0x656c8ad0
mov ebx, ecx
or ecx, 0x20
nop word [rax + rax]
cmp bl, cl
jne 0x656c8f85
mov eax, 0x70
lea rcx, [rdx + 1]
cmp rcx, r8
ja 0x656c8f25
mov byte [r9 + rdx], al
nop
test rsi, rsi
jge 0x656c8f19
neg rsi
mov eax, 0x2d
mov qword [rsp + 0xb8], rsi
lea rdx, [rcx + 1]
nop dword [rax]
cmp r8, rdx
jb 0x656c8ebc
mov qword [rsp + 0x90], rdx
mov byte [r9 + rcx], al
cmp rsi, 0x64
jge 0x656c8ca0
lea rcx, [rdx + 2]
movabs rax, 0xcccccccccccccccd
mov rbx, rdx
imul rsi
add rdx, rsi
sar rdx, 3
mov rdi, rsi
sar rsi, 0x3f
sub rdx, rsi
lea rsi, [rdx + rdx*4]
shl rsi, 1
sub rdi, rsi
cmp r8, rcx
jb 0x656c8c44
lea eax, [rdx + 0x30]
mov byte [r9 + rbx], al
lea eax, [rdi + 0x30]
mov byte [r9 + rbx + 1], al
mov qword [rsp + 0xc8], r9
mov qword [rsp + 0xd0], rcx
mov qword [rsp + 0xd8], r8
mov rbp, qword [rsp + 0x78]
sub rsp, 0xffffffffffffff80
ret
mov qword [rsp + 0x60], rdx
mov qword [rsp + 0x58], rdi
lea rax, [0x6572f300]
mov qword [rsp], rax
mov qword [rsp + 8], r9
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], r8
mov qword [rsp + 0x20], rcx
call fcn.6568a2c0
mov r9, qword [rsp + 0x28]
mov rax, qword [rsp + 0x30]
mov r8, qword [rsp + 0x38]
lea rcx, [rax + 2]
mov rdx, qword [rsp + 0x60]
mov rbx, qword [rsp + 0x90]
mov rdi, qword [rsp + 0x58]
jmp 0x656c8c13
cmp rsi, 0x3e8
jge 0x656c8d98
lea rcx, [rdx + 3]
movabs rax, 0xa3d70a3d70a3d70b
mov rbx, rdx
imul rsi
add rdx, rsi
movabs rax, 0xcccccccccccccccd
mov rdi, rdx
imul rsi
add rdx, rsi
mov r10, rdx
sar rdx, 3
movabs rax, 0xcccccccccccccccd
mov r11, rdx
imul rdx
sar r10, 0x3f
add rdx, r11
sar rdx, 3
sub rdx, r10
lea rdx, [rdx + rdx*4]
shl rdx, 1
mov r10, r11
sub r11, rdx
lea rdx, [r10 + r10*4]
shl rdx, 1
sub rsi, rdx
cmp r8, rcx
jb 0x656c8d39
sar rdi, 6
lea eax, [rdi + 0x30]
mov byte [r9 + rbx], al
lea eax, [r11 + 0x30]
mov byte [r9 + rbx + 1], al
lea eax, [rsi + 0x30]
mov byte [r9 + rbx + 2], al
jmp 0x656c8c22
mov qword [rsp + 0x60], r11
mov qword [rsp + 0x58], rdi
mov qword [rsp + 0x50], rsi
lea rax, [0x6572f300]
mov qword [rsp], rax
mov qword [rsp + 8], r9
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], r8
mov qword [rsp + 0x20], rcx
call fcn.6568a2c0
mov r9, qword [rsp + 0x28]
mov rax, qword [rsp + 0x30]
mov r8, qword [rsp + 0x38]
lea rcx, [rax + 3]
mov rbx, qword [rsp + 0x90]
mov rsi, qword [rsp + 0x50]
mov rdi, qword [rsp + 0x58]
mov r11, qword [rsp + 0x60]
jmp 0x656c8d18
lea rcx, [rdx + 4]
movabs rax, 0xa3d70a3d70a3d70b
mov rbx, rdx
imul rsi
add rdx, rsi
sar rdx, 6
movzx edi, dl
imul edi, edi, 0x19a
shr edi, 0xc
lea edi, [rdi + rdi*4]
shl edi, 1
sub edx, edi
movabs rax, 0xcccccccccccccccd
mov edi, edx
imul rsi
add rdx, rsi
mov r10, rdx
sar rdx, 3
movabs rax, 0xcccccccccccccccd
mov r11, rdx
imul rdx
add rdx, r11
sar rdx, 3
sar r10, 0x3f
sub rdx, r10
lea rdx, [rdx + rdx*4]
shl rdx, 1
mov r10, r11
sub r11, rdx
lea rdx, [r10 + r10*4]
shl rdx, 1
mov r10, rsi
sub rsi, rdx
cmp r8, rcx
jb 0x656c8e52
movabs rax, 0x4189374bc6a7ef9e
imul r10
sar rdx, 8
add edx, 0x30
mov byte [r9 + rbx], dl
lea edx, [rdi + 0x30]
mov byte [r9 + rbx + 1], dl
lea edx, [r11 + 0x30]
mov byte [r9 + rbx + 2], dl
lea edx, [rsi + 0x30]
mov byte [r9 + rbx + 3], dl
jmp 0x656c8c22
mov qword [rsp + 0x60], r11
mov qword [rsp + 0x58], rsi
mov byte [rsp + 0x46], dil
lea rax, [0x6572f300]
mov qword [rsp], rax
mov qword [rsp + 8], r9
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], r8
mov qword [rsp + 0x20], rcx
call fcn.6568a2c0
mov r9, qword [rsp + 0x28]
mov rax, qword [rsp + 0x30]
mov r8, qword [rsp + 0x38]
lea rcx, [rax + 4]
mov rbx, qword [rsp + 0x90]
mov rsi, qword [rsp + 0x58]
movzx edi, byte [rsp + 0x46]
mov r10, qword [rsp + 0xb8]
mov r11, qword [rsp + 0x60]
jmp 0x656c8e1c
mov qword [rsp + 0x90], rcx
mov byte [rsp + 0x45], al
lea rax, [0x6572f300]
mov qword [rsp], rax
mov qword [rsp + 8], r9
mov qword [rsp + 0x10], rcx
mov qword [rsp + 0x18], r8
mov qword [rsp + 0x20], rdx
call fcn.6568a2c0
mov r9, qword [rsp + 0x28]
mov rax, qword [rsp + 0x30]
mov r8, qword [rsp + 0x38]
lea rdx, [rax + 1]
movzx eax, byte [rsp + 0x45]
mov rcx, qword [rsp + 0x90]
mov rsi, qword [rsp + 0xb8]
jmp 0x656c8bc9
mov eax, 0x2b
nop
jmp 0x656c8bb1
mov qword [rsp + 0x90], rdx
mov byte [rsp + 0x45], al
lea rax, [0x6572f300]
mov qword [rsp], rax
mov qword [rsp + 8], r9
mov qword [rsp + 0x10], rdx
mov qword [rsp + 0x18], r8
mov qword [rsp + 0x20], rcx
call fcn.6568a2c0
mov r9, qword [rsp + 0x28]
mov rax, qword [rsp + 0x30]
mov r8, qword [rsp + 0x38]
lea rcx, [rax + 1]
movzx eax, byte [rsp + 0x45]
mov rdx, qword [rsp + 0x90]
mov rsi, qword [rsp + 0xb8]
nop dword [rax]
jmp 0x656c8b9a
mov eax, 0x50
jmp 0x656c8b8d
lea rax, [0x6572f300]
mov qword [rsp], rax
mov qword [rsp + 8], r9
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], r8
mov qword [rsp + 0x20], rdx
call fcn.6568a2c0
mov r9, qword [rsp + 0x28]
mov rax, qword [rsp + 0x30]
mov r8, qword [rsp + 0x38]
lea rdx, [rax + 1]
mov rax, qword [rsp + 0x70]
movzx ecx, byte [rsp + 0xa8]
mov rbx, qword [rsp + 0x90]
mov rsi, qword [rsp + 0xb8]
mov r11, qword [rsp + 0x68]
jmp 0x656c8ac9
test rdx, rdx
jle 0x656c9135
lea rdi, [rbx + 1]
nop word [rax + rax]
cmp r8, rdi
jb 0x656c90cf
mov byte [r9 + rbx], 0x2e
xor ebx, ebx
jmp 0x656c9023
mov byte [r9 + rdi], r11b
inc rbx
shl r12, 4
mov r11, r12
mov rdi, r10
cmp rdx, rbx
jle 0x656c90c7
lea r10, [rdi + 1]
mov r12, r11
shr r11, 0x3c
and r11, 0xf
movzx r11d, byte [rax + r11]
cmp r10, r8
jbe 0x656c9012
mov qword [rsp + 0x48], rbx
mov byte [rsp + 0x47], r11b
mov qword [rsp + 0x60], rdi
mov qword [rsp + 0x68], r12
lea rax, [0x6572f300]
mov qword [rsp], rax
mov qword [rsp + 8], r9
mov qword [rsp + 0x10], rdi
mov qword [rsp + 0x18], r8
mov qword [rsp + 0x20], r10
call fcn.6568a2c0
mov r9, qword [rsp + 0x28]
mov rax, qword [rsp + 0x30]
mov r8, qword [rsp + 0x38]
lea r10, [rax + 1]
mov rax, qword [rsp + 0x70]
movzx ecx, byte [rsp + 0xa8]
mov rdx, qword [rsp + 0xa0]
mov rbx, qword [rsp + 0x48]
mov rsi, qword [rsp + 0xb8]
mov rdi, qword [rsp + 0x60]
movzx r11d, byte [rsp + 0x47]
mov r12, qword [rsp + 0x68]
jmp 0x656c9012
mov rdx, rdi
jmp 0x656c8b75
lea rax, [0x6572f300]
mov qword [rsp], rax
mov qword [rsp + 8], r9
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], r8
mov qword [rsp + 0x20], rdi
call fcn.6568a2c0
mov r9, qword [rsp + 0x28]
mov rax, qword [rsp + 0x30]
mov r8, qword [rsp + 0x38]
lea rdi, [rax + 1]
mov rax, qword [rsp + 0x70]
movzx ecx, byte [rsp + 0xa8]
mov rdx, qword [rsp + 0xa0]
mov rbx, qword [rsp + 0x90]
mov rsi, qword [rsp + 0xb8]
mov r11, qword [rsp + 0x68]
jmp 0x656c9009
mov rdi, rbx
jmp 0x656c90c7
mov qword [rsp + 0x90], rdi
lea rax, [0x6572f300]
mov qword [rsp], rax
mov qword [rsp + 8], r9
mov qword [rsp + 0x10], rdi
mov qword [rsp + 0x18], r8
mov qword [rsp + 0x20], rbx
call fcn.6568a2c0
mov r9, qword [rsp + 0x28]
mov rax, qword [rsp + 0x30]
mov r8, qword [rsp + 0x38]
lea rbx, [rax + 3]
mov rax, qword [rsp + 0x70]
movzx ecx, byte [rsp + 0xa8]
mov rdx, qword [rsp + 0xa0]
mov rsi, qword [rsp + 0xb8]
mov rdi, qword [rsp + 0x90]
mov r10, qword [rsp + 0xb0]
jmp 0x656c8a74
lea rax, [0x6572f300]
mov qword [rsp], rax
mov rcx, qword [rsp + 0x88]
mov qword [rsp + 8], rcx
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], r8
mov qword [rsp + 0x20], rdi
call fcn.6568a2c0
mov r9, qword [rsp + 0x28]
mov rax, qword [rsp + 0x30]
mov r8, qword [rsp + 0x38]
lea rdi, [rax + 1]
mov rax, qword [rsp + 0x70]
movzx ecx, byte [rsp + 0xa8]
mov rdx, qword [rsp + 0xa0]
mov rbx, qword [rsp + 0x90]
mov rsi, qword [rsp + 0xb8]
mov r10, qword [rsp + 0xb0]
jmp 0x656c8a62
mov rdi, qword [rsp + 0x90]
mov r8, qword [rsp + 0x98]
mov r9, qword [rsp + 0x88]
jmp 0x656c8a67
lea rax, [0x6574d164]
jmp 0x656c8a18
mov r10, rbx
jmp 0x656c89ed
mov rdx, rcx
mov r10, rbx
jmp 0x656c8a00
call fcn.656a5840
nop dword [rax]
jmp fcn.656c8900