Function at 0x47f2a0
Capabilities:
Encode data using base64

Disassembly:
mov rcx, qword gs:[0x28]
mov rcx, qword [rcx]
cmp rsp, qword [rcx + 0x10]
jbe 0x47fbf8
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 0x47f30b
shl rbx, 1
dec rsi
test rbx, rbx
je 0x47f317
bt rbx, 0x3c
jae 0x47f305
mov rcx, qword [rsp + 0xa0]
nop
cmp rcx, 0xf
jae 0x47fbed
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 0x47fbe5
lea r10, [rbx + 1]
shl r10, cl
and r10, r9
bt r10, 0x3d
jae 0x47f3a0
shr r10, 1
inc rsi
movzx ecx, byte [rsp + 0xa8]
cmp cl, 0x58
jne 0x47fbd9
lea rax, [0x006fcb2b]
mov qword [rsp + 0x70], rax
mov qword [rsp + 0xb8], rsi
mov qword [rsp + 0xb0], r10
movzx ebx, byte [rsp + 0xa9]
test bl, bl
je 0x47fbbc
mov rbx, qword [rsp + 0x90]
lea rdi, [rbx + 1]
mov r8, qword [rsp + 0x98]
cmp r8, rdi
jb 0x47fb4b
mov r9, qword [rsp + 0x88]
mov byte [r9 + rbx], 0x2d
lea rbx, [rdi + 3]
cmp rbx, r8
ja 0x47fada
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 0x47f990
test r11, r11
je 0x47f98d
lea rdx, [rbx + 1]
nop dword [rax]
cmp r8, rdx
jb 0x47f92f
mov byte [r9 + rbx], 0x2e
jmp 0x47f480
mov byte [r9 + rdx], r10b
shl rdi, 4
mov r11, rdi
mov rdx, rbx
nop
test r11, r11
je 0x47f515
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 0x47f470
mov qword [rsp + 0x60], rdx
mov qword [rsp + 0x68], rdi
mov byte [rsp + 0x47], r10b
lea rax, [0x006a1460]
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.0044dd20
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 0x47f470
mov ebx, ecx
or ecx, 0x20
nop word [rax + rax]
cmp bl, cl
jne 0x47f925
mov eax, 0x70
lea rcx, [rdx + 1]
cmp rcx, r8
ja 0x47f8c5
mov byte [r9 + rdx], al
nop
test rsi, rsi
jge 0x47f8b9
neg rsi
mov eax, 0x2d
mov qword [rsp + 0xb8], rsi
lea rdx, [rcx + 1]
nop dword [rax]
cmp r8, rdx
jb 0x47f85c
mov qword [rsp + 0x90], rdx
mov byte [r9 + rcx], al
cmp rsi, 0x64
jge 0x47f640
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 0x47f5e4
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, [0x006a1460]
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.0044dd20
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 0x47f5b3
cmp rsi, 0x3e8
jge 0x47f738
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 0x47f6d9
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 0x47f5c2
mov qword [rsp + 0x60], r11
mov qword [rsp + 0x58], rdi
mov qword [rsp + 0x50], rsi
lea rax, [0x006a1460]
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.0044dd20
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 0x47f6b8
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 0x47f7f2
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 0x47f5c2
mov qword [rsp + 0x60], r11
mov qword [rsp + 0x58], rsi
mov byte [rsp + 0x46], dil
lea rax, [0x006a1460]
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.0044dd20
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 0x47f7bc
mov qword [rsp + 0x90], rcx
mov byte [rsp + 0x45], al
lea rax, [0x006a1460]
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.0044dd20
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 0x47f569
mov eax, 0x2b
nop
jmp 0x47f551
mov qword [rsp + 0x90], rdx
mov byte [rsp + 0x45], al
lea rax, [0x006a1460]
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.0044dd20
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 0x47f53a
mov eax, 0x50
jmp 0x47f52d
lea rax, [0x006a1460]
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.0044dd20
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 0x47f469
test rdx, rdx
jle 0x47fad5
lea rdi, [rbx + 1]
nop word [rax + rax]
cmp r8, rdi
jb 0x47fa6f
mov byte [r9 + rbx], 0x2e
xor ebx, ebx
jmp 0x47f9c3
mov byte [r9 + rdi], r11b
inc rbx
shl r12, 4
mov r11, r12
mov rdi, r10
cmp rdx, rbx
jle 0x47fa67
lea r10, [rdi + 1]
mov r12, r11
shr r11, 0x3c
and r11, 0xf
movzx r11d, byte [rax + r11]
cmp r10, r8
jbe 0x47f9b2
mov qword [rsp + 0x48], rbx
mov byte [rsp + 0x47], r11b
mov qword [rsp + 0x60], rdi
mov qword [rsp + 0x68], r12
lea rax, [0x006a1460]
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.0044dd20
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 0x47f9b2
mov rdx, rdi
jmp 0x47f515
lea rax, [0x006a1460]
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.0044dd20
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 0x47f9a9
mov rdi, rbx
jmp 0x47fa67
mov qword [rsp + 0x90], rdi
lea rax, [0x006a1460]
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.0044dd20
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 0x47f414
lea rax, [0x006a1460]
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.0044dd20
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 0x47f402
mov rdi, qword [rsp + 0x90]
mov r8, qword [rsp + 0x98]
mov r9, qword [rsp + 0x88]
jmp 0x47f407
lea rax, [0x006fcb3b]
jmp 0x47f3b8
mov r10, rbx
jmp 0x47f38d
mov rdx, rcx
mov r10, rbx
jmp 0x47f3a0
call fcn.0046a920
nop dword [rax]
jmp fcn.0047f2a0