Function at 0x47ff20
Capabilities:
Encode data using base64

Disassembly:
mov rcx, qword gs:[0x28]
mov rcx, qword [rcx]
cmp rsp, qword [rcx + 0x10]
jbe 0x480878
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 0x47ff8b
shl rbx, 1
dec rsi
test rbx, rbx
je 0x47ff97
bt rbx, 0x3c
jae 0x47ff85
mov rcx, qword [rsp + 0xa0]
nop
cmp rcx, 0xf
jae 0x48086d
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 0x480865
lea r10, [rbx + 1]
shl r10, cl
and r10, r9
bt r10, 0x3d
jae 0x480020
shr r10, 1
inc rsi
movzx ecx, byte [rsp + 0xa8]
cmp cl, 0x58
jne 0x480859
lea rax, [0x00791f15]
mov qword [rsp + 0x70], rax
mov qword [rsp + 0xb8], rsi
mov qword [rsp + 0xb0], r10
movzx ebx, byte [rsp + 0xa9]
test bl, bl
je 0x48083c
mov rbx, qword [rsp + 0x90]
lea rdi, [rbx + 1]
mov r8, qword [rsp + 0x98]
cmp r8, rdi
jb 0x4807cb
mov r9, qword [rsp + 0x88]
mov byte [r9 + rbx], 0x2d
lea rbx, [rdi + 3]
cmp rbx, r8
ja 0x48075a
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 0x480610
test r11, r11
je 0x48060d
lea rdx, [rbx + 1]
nop dword [rax]
cmp r8, rdx
jb 0x4805af
mov byte [r9 + rbx], 0x2e
jmp 0x480100
mov byte [r9 + rdx], r10b
shl rdi, 4
mov r11, rdi
mov rdx, rbx
nop
test r11, r11
je 0x480195
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 0x4800f0
mov qword [rsp + 0x60], rdx
mov qword [rsp + 0x68], rdi
mov byte [rsp + 0x47], r10b
lea rax, [0x00720040]
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.0044e100
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 0x4800f0
mov ebx, ecx
or ecx, 0x20
nop word [rax + rax]
cmp bl, cl
jne 0x4805a5
mov eax, 0x70
lea rcx, [rdx + 1]
cmp rcx, r8
ja 0x480545
mov byte [r9 + rdx], al
nop
test rsi, rsi
jge 0x480539
neg rsi
mov eax, 0x2d
mov qword [rsp + 0xb8], rsi
lea rdx, [rcx + 1]
nop dword [rax]
cmp r8, rdx
jb 0x4804dc
mov qword [rsp + 0x90], rdx
mov byte [r9 + rcx], al
cmp rsi, 0x64
jge 0x4802c0
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 0x480264
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, [0x00720040]
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.0044e100
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 0x480233
cmp rsi, 0x3e8
jge 0x4803b8
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 0x480359
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 0x480242
mov qword [rsp + 0x60], r11
mov qword [rsp + 0x58], rdi
mov qword [rsp + 0x50], rsi
lea rax, [0x00720040]
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.0044e100
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 0x480338
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 0x480472
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 0x480242
mov qword [rsp + 0x60], r11
mov qword [rsp + 0x58], rsi
mov byte [rsp + 0x46], dil
lea rax, [0x00720040]
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.0044e100
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 0x48043c
mov qword [rsp + 0x90], rcx
mov byte [rsp + 0x45], al
lea rax, [0x00720040]
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.0044e100
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 0x4801e9
mov eax, 0x2b
nop
jmp 0x4801d1
mov qword [rsp + 0x90], rdx
mov byte [rsp + 0x45], al
lea rax, [0x00720040]
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.0044e100
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 0x4801ba
mov eax, 0x50
jmp 0x4801ad
lea rax, [0x00720040]
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.0044e100
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 0x4800e9
test rdx, rdx
jle 0x480755
lea rdi, [rbx + 1]
nop word [rax + rax]
cmp r8, rdi
jb 0x4806ef
mov byte [r9 + rbx], 0x2e
xor ebx, ebx
jmp 0x480643
mov byte [r9 + rdi], r11b
inc rbx
shl r12, 4
mov r11, r12
mov rdi, r10
cmp rdx, rbx
jle 0x4806e7
lea r10, [rdi + 1]
mov r12, r11
shr r11, 0x3c
and r11, 0xf
movzx r11d, byte [rax + r11]
cmp r10, r8
jbe 0x480632
mov qword [rsp + 0x48], rbx
mov byte [rsp + 0x47], r11b
mov qword [rsp + 0x60], rdi
mov qword [rsp + 0x68], r12
lea rax, [0x00720040]
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.0044e100
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 0x480632
mov rdx, rdi
jmp 0x480195
lea rax, [0x00720040]
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.0044e100
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 0x480629
mov rdi, rbx
jmp 0x4806e7
mov qword [rsp + 0x90], rdi
lea rax, [0x00720040]
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.0044e100
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 0x480094
lea rax, [0x00720040]
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.0044e100
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 0x480082
mov rdi, qword [rsp + 0x90]
mov r8, qword [rsp + 0x98]
mov r9, qword [rsp + 0x88]
jmp 0x480087
lea rax, [0x00791f25]
jmp 0x480038
mov r10, rbx
jmp 0x48000d
mov rdx, rcx
mov r10, rbx
jmp 0x480020
call fcn.0046b3e0
nop dword [rax]
jmp fcn.0047ff20