Function at 0x47e0e0
Capabilities:
Encode data using base64

Disassembly:
mov rcx, qword gs:[0x28]
mov rcx, qword [rcx]
cmp rsp, qword [rcx + 0x10]
jbe 0x47ea2a
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 0x47e14b
shl rbx, 1
dec rsi
test rbx, rbx
je 0x47e157
bt rbx, 0x3c
jae 0x47e145
mov rcx, qword [rsp + 0xa0]
nop
cmp rcx, 0xf
jae 0x47ea1f
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
cmp rdi, r10
jbe 0x47e1c1
inc rbx
shl rbx, cl
and rbx, r9
bt rbx, 0x3d
jae 0x47ea17
shr rbx, 1
lea rcx, [rsi + 1]
movzx esi, byte [rsp + 0xa8]
cmp sil, 0x58
jne 0x47ea0b
lea rax, [0x004f2643]
mov qword [rsp + 0x70], rax
mov qword [rsp + 0xb8], rcx
mov qword [rsp + 0xb0], rbx
movzx edi, byte [rsp + 0xa9]
test dil, dil
je 0x47e9ee
mov rdi, qword [rsp + 0x90]
lea r8, [rdi + 1]
mov r9, qword [rsp + 0x98]
cmp r8, r9
ja 0x47e97d
mov r10, qword [rsp + 0x88]
mov byte [r10 + rdi], 0x2d
lea rdi, [r8 + 3]
cmp rdi, r9
ja 0x47e90c
mov qword [rsp + 0x90], rdi
mov byte [r10 + r8], 0x30
mov byte [r10 + r8 + 1], sil
mov r11, rbx
shr rbx, 0x3c
and rbx, 1
add ebx, 0x30
mov byte [r10 + r8 + 2], bl
shl r11, 4
mov qword [rsp + 0x68], r11
nop dword [rax]
test rdx, rdx
jge 0x47e7c3
test r11, r11
je 0x47e7c0
lea rdx, [rdi + 1]
cmp r9, rdx
jb 0x47e75d
mov byte [r10 + rdi], 0x2e
jmp 0x47e2b4
mov byte [r10 + rdx], r8b
shl rdi, 4
mov r11, rdi
mov rdx, rbx
test r11, r11
je 0x47e346
lea rbx, [rdx + 1]
mov rdi, r11
shr r11, 0x3c
and r11, 0xf
movzx r8d, byte [rax + r11]
cmp rbx, r9
jbe 0x47e2a6
mov qword [rsp + 0x60], rdx
mov qword [rsp + 0x68], rdi
mov byte [rsp + 0x47], r8b
lea rax, [0x004d4d00]
mov qword [rsp], rax
mov qword [rsp + 8], r10
mov qword [rsp + 0x10], rdx
mov qword [rsp + 0x18], r9
mov qword [rsp + 0x20], rbx
call fcn.00448680
mov r10, qword [rsp + 0x28]
mov rax, qword [rsp + 0x30]
mov r9, qword [rsp + 0x38]
lea rbx, [rax + 1]
mov rax, qword [rsp + 0x70]
mov rcx, qword [rsp + 0xb8]
mov rdx, qword [rsp + 0x60]
movzx esi, byte [rsp + 0xa8]
mov rdi, qword [rsp + 0x68]
movzx r8d, byte [rsp + 0x47]
jmp 0x47e2a6
mov ebx, esi
or esi, 0x20
cmp bl, sil
jne 0x47e753
mov eax, 0x70
lea rbx, [rdx + 1]
nop dword [rax]
cmp rbx, r9
ja 0x47e6f6
mov byte [r10 + rdx], al
test rcx, rcx
jge 0x47e6ec
neg rcx
mov eax, 0x2d
mov qword [rsp + 0xb8], rcx
lea rdx, [rbx + 1]
cmp r9, rdx
jb 0x47e68f
mov qword [rsp + 0x90], rdx
mov byte [r10 + rbx], al
nop
cmp rcx, 0x64
jge 0x47e467
lea rbx, [rdx + 2]
movabs rax, 0xcccccccccccccccd
mov rsi, rdx
imul rcx
add rdx, rcx
sar rdx, 3
mov rdi, rcx
sar rcx, 0x3f
sub rdx, rcx
lea rcx, [rdx + rdx*4]
shl rcx, 1
sub rdi, rcx
cmp r9, rbx
jb 0x47e40f
lea eax, [rdx + 0x30]
mov byte [r10 + rsi], al
lea eax, [rdi + 0x30]
mov byte [r10 + rsi + 1], al
mov qword [rsp + 0xc8], r10
mov qword [rsp + 0xd0], rbx
mov qword [rsp + 0xd8], r9
mov rbp, qword [rsp + 0x78]
sub rsp, 0xffffffffffffff80
ret
mov qword [rsp + 0x60], rdx
mov qword [rsp + 0x58], rdi
lea rax, [0x004d4d00]
mov qword [rsp], rax
mov qword [rsp + 8], r10
mov qword [rsp + 0x10], rsi
mov qword [rsp + 0x18], r9
mov qword [rsp + 0x20], rbx
call fcn.00448680
mov r10, qword [rsp + 0x28]
mov rax, qword [rsp + 0x30]
mov r9, qword [rsp + 0x38]
lea rbx, [rax + 2]
mov rdx, qword [rsp + 0x60]
mov rsi, qword [rsp + 0x90]
mov rdi, qword [rsp + 0x58]
jmp 0x47e3de
cmp rcx, 0x3e8
jge 0x47e567
lea rbx, [rdx + 3]
movabs rax, 0xa3d70a3d70a3d70b
mov rsi, rdx
imul rcx
add rdx, rcx
movabs rax, 0xcccccccccccccccd
mov rdi, rdx
imul rcx
add rdx, rcx
mov r8, rdx
sar rdx, 3
movabs rax, 0xcccccccccccccccd
mov r11, rdx
imul rdx
add rdx, r11
sar rdx, 3
sar r8, 0x3f
sub rdx, r8
lea rdx, [rdx + rdx*4]
shl rdx, 1
mov r8, r11
sub r11, rdx
lea rdx, [r8 + r8*4]
shl rdx, 1
sub rcx, rdx
cmp r9, rbx
jb 0x47e505
sar rdi, 6
lea eax, [rdi + 0x30]
mov byte [r10 + rsi], al
lea eax, [r11 + 0x30]
mov byte [r10 + rsi + 1], al
lea eax, [rcx + 0x30]
mov byte [r10 + rsi + 2], al
nop dword [rax + rax]
jmp 0x47e3ed
mov qword [rsp + 0x60], r11
mov qword [rsp + 0x58], rcx
mov qword [rsp + 0x50], rdi
lea rax, [0x004d4d00]
mov qword [rsp], rax
mov qword [rsp + 8], r10
mov qword [rsp + 0x10], rsi
mov qword [rsp + 0x18], r9
mov qword [rsp + 0x20], rbx
call fcn.00448680
mov r10, qword [rsp + 0x28]
mov rax, qword [rsp + 0x30]
mov r9, qword [rsp + 0x38]
lea rbx, [rax + 3]
mov rcx, qword [rsp + 0x58]
mov rsi, qword [rsp + 0x90]
mov rdi, qword [rsp + 0x50]
mov r11, qword [rsp + 0x60]
jmp 0x47e4df
lea rbx, [rdx + 4]
movabs rax, 0xa3d70a3d70a3d70b
mov rsi, rdx
imul rcx
add rdx, rcx
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 rcx
add rdx, rcx
mov r8, rdx
sar rdx, 3
movabs rax, 0xcccccccccccccccd
mov r11, rdx
imul rdx
add rdx, r11
sar rdx, 3
sar r8, 0x3f
sub rdx, r8
lea rdx, [rdx + rdx*4]
shl rdx, 1
mov r8, r11
sub r11, rdx
lea rdx, [r8 + r8*4]
shl rdx, 1
mov r8, rcx
sub rcx, rdx
cmp r9, rbx
jb 0x47e625
movabs rax, 0x4189374bc6a7ef9e
imul r8
sar rdx, 8
add edx, 0x30
mov byte [r10 + rsi], dl
lea edx, [rdi + 0x30]
mov byte [r10 + rsi + 1], dl
lea edx, [r11 + 0x30]
mov byte [r10 + rsi + 2], dl
add ecx, 0x30
mov byte [r10 + rsi + 3], cl
nop dword [rax]
jmp 0x47e3ed
mov byte [rsp + 0x46], dil
mov qword [rsp + 0x60], r11
mov qword [rsp + 0x58], rcx
lea rax, [0x004d4d00]
mov qword [rsp], rax
mov qword [rsp + 8], r10
mov qword [rsp + 0x10], rsi
mov qword [rsp + 0x18], r9
mov qword [rsp + 0x20], rbx
call fcn.00448680
mov r10, qword [rsp + 0x28]
mov rax, qword [rsp + 0x30]
mov r9, qword [rsp + 0x38]
lea rbx, [rax + 4]
mov rcx, qword [rsp + 0x58]
mov rsi, qword [rsp + 0x90]
movzx edi, byte [rsp + 0x46]
mov r8, qword [rsp + 0xb8]
mov r11, qword [rsp + 0x60]
jmp 0x47e5eb
mov qword [rsp + 0x90], rbx
mov byte [rsp + 0x45], al
lea rax, [0x004d4d00]
mov qword [rsp], rax
mov qword [rsp + 8], r10
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], r9
mov qword [rsp + 0x20], rdx
call fcn.00448680
mov r10, qword [rsp + 0x28]
mov rax, qword [rsp + 0x30]
mov r9, qword [rsp + 0x38]
lea rdx, [rax + 1]
movzx eax, byte [rsp + 0x45]
mov rcx, qword [rsp + 0xb8]
mov rbx, qword [rsp + 0x90]
jmp 0x47e393
mov eax, 0x2b
jmp 0x47e37e
mov byte [rsp + 0x45], al
mov qword [rsp + 0x90], rdx
lea rax, [0x004d4d00]
mov qword [rsp], rax
mov qword [rsp + 8], r10
mov qword [rsp + 0x10], rdx
mov qword [rsp + 0x18], r9
mov qword [rsp + 0x20], rbx
call fcn.00448680
mov r10, qword [rsp + 0x28]
mov rax, qword [rsp + 0x30]
mov r9, qword [rsp + 0x38]
lea rbx, [rax + 1]
movzx eax, byte [rsp + 0x45]
mov rcx, qword [rsp + 0xb8]
mov rdx, qword [rsp + 0x90]
jmp 0x47e369
mov eax, 0x50
jmp 0x47e359
lea rax, [0x004d4d00]
mov qword [rsp], rax
mov qword [rsp + 8], r10
mov qword [rsp + 0x10], rdi
mov qword [rsp + 0x18], r9
mov qword [rsp + 0x20], rdx
nop dword [rax]
call fcn.00448680
mov r10, qword [rsp + 0x28]
mov rax, qword [rsp + 0x30]
mov r9, qword [rsp + 0x38]
lea rdx, [rax + 1]
mov rax, qword [rsp + 0x70]
mov rcx, qword [rsp + 0xb8]
movzx esi, byte [rsp + 0xa8]
mov rdi, qword [rsp + 0x90]
mov r11, qword [rsp + 0x68]
jmp 0x47e29f
test rdx, rdx
jle 0x47e907
lea rbx, [rdi + 1]
cmp r9, rbx
jb 0x47e89c
mov byte [r10 + rdi], 0x2e
xor edi, edi
jmp 0x47e7f0
mov byte [r10 + rbx], r11b
inc rdi
shl r12, 4
mov r11, r12
mov rbx, r8
cmp rdx, rdi
jle 0x47e894
lea r8, [rbx + 1]
mov r12, r11
shr r11, 0x3c
and r11, 0xf
movzx r11d, byte [rax + r11]
cmp r9, r8
jae 0x47e7df
mov qword [rsp + 0x60], rbx
mov qword [rsp + 0x48], rdi
mov byte [rsp + 0x47], r11b
mov qword [rsp + 0x68], r12
lea rax, [0x004d4d00]
mov qword [rsp], rax
mov qword [rsp + 8], r10
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], r9
mov qword [rsp + 0x20], r8
call fcn.00448680
mov r10, qword [rsp + 0x28]
mov rax, qword [rsp + 0x30]
mov r9, qword [rsp + 0x38]
lea r8, [rax + 1]
mov rax, qword [rsp + 0x70]
mov rcx, qword [rsp + 0xb8]
mov rdx, qword [rsp + 0xa0]
mov rbx, qword [rsp + 0x60]
movzx esi, byte [rsp + 0xa8]
mov rdi, qword [rsp + 0x48]
movzx r11d, byte [rsp + 0x47]
mov r12, qword [rsp + 0x68]
jmp 0x47e7df
mov rdx, rbx
jmp 0x47e346
lea rax, [0x004d4d00]
mov qword [rsp], rax
mov qword [rsp + 8], r10
mov qword [rsp + 0x10], rdi
mov qword [rsp + 0x18], r9
mov qword [rsp + 0x20], rbx
nop dword [rax + rax]
call fcn.00448680
mov r10, qword [rsp + 0x28]
mov rax, qword [rsp + 0x30]
mov r9, qword [rsp + 0x38]
lea rbx, [rax + 1]
mov rax, qword [rsp + 0x70]
mov rcx, qword [rsp + 0xb8]
mov rdx, qword [rsp + 0xa0]
movzx esi, byte [rsp + 0xa8]
mov rdi, qword [rsp + 0x90]
mov r11, qword [rsp + 0x68]
jmp 0x47e7d6
mov rbx, rdi
jmp 0x47e894
mov qword [rsp + 0x90], r8
lea rax, [0x004d4d00]
mov qword [rsp], rax
mov qword [rsp + 8], r10
mov qword [rsp + 0x10], r8
mov qword [rsp + 0x18], r9
mov qword [rsp + 0x20], rdi
call fcn.00448680
mov r10, qword [rsp + 0x28]
mov rax, qword [rsp + 0x30]
mov r9, qword [rsp + 0x38]
lea rdi, [rax + 3]
mov rax, qword [rsp + 0x70]
mov rcx, qword [rsp + 0xb8]
mov rdx, qword [rsp + 0xa0]
mov rbx, qword [rsp + 0xb0]
movzx esi, byte [rsp + 0xa8]
mov r8, qword [rsp + 0x90]
jmp 0x47e24f
lea rax, [0x004d4d00]
mov qword [rsp], rax
mov rcx, qword [rsp + 0x88]
mov qword [rsp + 8], rcx
mov qword [rsp + 0x10], rdi
mov qword [rsp + 0x18], r9
mov qword [rsp + 0x20], r8
call fcn.00448680
mov r10, qword [rsp + 0x28]
mov rax, qword [rsp + 0x30]
mov r9, qword [rsp + 0x38]
lea r8, [rax + 1]
mov rax, qword [rsp + 0x70]
mov rcx, qword [rsp + 0xb8]
mov rdx, qword [rsp + 0xa0]
mov rbx, qword [rsp + 0xb0]
movzx esi, byte [rsp + 0xa8]
mov rdi, qword [rsp + 0x90]
jmp 0x47e23d
mov r8, qword [rsp + 0x90]
mov r9, qword [rsp + 0x98]
mov r10, qword [rsp + 0x88]
jmp 0x47e242
lea rax, [0x004f2653]
jmp 0x47e1f2
mov rcx, rsi
jmp 0x47e1d9
mov rdx, rcx
mov rcx, rsi
jmp 0x47e1d9
call fcn.00463720
jmp fcn.0047e0e0