Function at 0x4f4a60
Capabilities:
Encode data using base64

Disassembly:
lea r12, [rsp - 0x30]
cmp r12, qword [r14 + 0x10]
jbe 0x4f4f27
push rbp
mov rbp, rsp
sub rsp, 0xa8
mov qword [rsp + 0xb8], rax
lea rdx, [rbx - 1]
cmp rbx, rdx
jbe 0x4f4f1b
movzx edx, byte [rbx + rax - 1]
cmp dl, 0x3d
je 0x4f4d5c
mov qword [rsp + 0xc0], rbx
mov qword [rsp + 0xb8], rax
mov rdx, rbx
and ebx, 3
test rbx, rbx
jne 0x4f4b1f
mov qword [rsp + 0xc8], rcx
mov rsi, qword [0x00863a30]
cmp dword [rsi + 0x140], 0xffffffff
jne 0x4f4ada
shr rdx, 2
lea rdx, [rdx + rdx*2]
jmp 0x4f4ae2
shr rdx, 2
lea rdx, [rdx + rdx*2]
lea rcx, [rdx + rdx*2]
mov qword [rsp + 0x40], rcx
lea rax, [0x005879c0]
mov rbx, rcx
call fcn.0044cf20
mov rcx, qword [rsp + 0x40]
mov rdx, rax
mov r10, qword [rsp + 0xc0]
mov r9, qword [rsp + 0xc8]
mov rax, qword [rsp + 0xb8]
jmp 0x4f4cd1
sub rdx, rbx
mov rdi, qword [0x00863a30]
lea r8, [rdx + 4]
mov qword [rsp + 0x58], r8
cmp dword [rdi + 0x140], 0xffffffff
jne 0x4f4b85
sar r8, 0x3f
shr r8, 0x3e
lea r8, [rdx + r8]
lea r8, [r8 + 4]
mov r9, r8
sar r8, 2
lea r8, [r8 + r8*2]
and r9, 0xfffffffffffffffc
mov r10, rdx
sub rdx, r9
lea rdx, [rdx + rdx*2]
lea r9, [rdx + rdx]
lea r9, [r9 + 0x18]
sar r9, 0x3f
shr r9, 0x3d
lea rdx, [r9 + rdx*2]
lea rdx, [rdx + 0x18]
sar rdx, 3
add rdx, r8
jmp 0x4f4ba3
sar r8, 0x3f
shr r8, 0x3e
lea r8, [rdx + r8]
lea r8, [r8 + 4]
sar r8, 2
lea r8, [r8 + r8*2]
mov r10, rdx
mov rdx, r8
mov qword [rsp + 0x88], r10
lea rdx, [rdx + rdx*2]
mov qword [rsp + 0x80], rdx
lea rcx, [r10 + rdx]
lea rcx, [rcx + 4]
mov qword [rsp + 0x40], rcx
lea rax, [0x005879c0]
mov rbx, rcx
call fcn.0044cf20
mov qword [rsp + 0xa0], rax
mov rdx, qword [rsp + 0x80]
mov rcx, qword [rsp + 0x88]
lea rsi, [rcx + rdx]
mov rdi, qword [rsp + 0xc0]
mov r8, qword [rsp + 0x40]
cmp rdi, r8
mov r9, r8
cmovl r8, rdi
mov rbx, qword [rsp + 0xb8]
cmp rax, rbx
je 0x4f4c4c
mov qword [rsp + 0x78], rsi
mov qword [rsp + 0x70], r8
mov rcx, r8
call fcn.00469840
mov rax, qword [rsp + 0xa0]
mov rcx, qword [rsp + 0x88]
mov rdx, qword [rsp + 0x80]
mov rsi, qword [rsp + 0x78]
mov r8, qword [rsp + 0x70]
mov r9, qword [rsp + 0x40]
mov r10, qword [rsp + 0x58]
cmp r9, r10
jb 0x4f4f10
nop word [rax + rax]
cmp r8, r10
ja 0x4f4f05
sub rcx, r8
sub rsi, r8
lea r11, [rsi + 4]
neg r11
sar r11, 0x3f
and r8, r11
lea r11, [r8 + rax]
add rcx, 4
cmp rcx, 2
mov r12d, 2
cmovg rcx, r12
lea rbx, [0x005b5a24]
cmp rbx, r11
je 0x4f4cc1
mov rax, r11
call fcn.00469840
mov rax, qword [rsp + 0xa0]
mov rdx, qword [rsp + 0x80]
mov r9, qword [rsp + 0x40]
mov r10, qword [rsp + 0x58]
mov rcx, rdx
neg rdx
sar rdx, 0x3f
and rdx, r10
add rdx, rax
mov qword [rsp + 0x90], rdx
mov qword [rsp + 0x48], rcx
mov r11, qword [0x00863a30]
mov rbx, rdx
mov rdi, rcx
mov rsi, rax
mov r8, r10
mov rax, r11
call fcn.004c9f60
test rbx, rbx
jne 0x4f4d4c
bt eax, 0
jb 0x4f4d4c
mov rdx, qword [rsp + 0x48]
cmp rax, rdx
ja 0x4f4ef9
ja 0x4f4ef1
mov qword [rsp + 0x50], rax
sub rdx, rax
mov qword [rsp + 0x68], rdx
mov rcx, rdx
neg rdx
sar rdx, 0x3f
and rdx, rax
mov rsi, qword [rsp + 0x90]
lea r8, [rsi + rdx]
mov qword [rsp + 0x98], r8
xor edx, edx
xor ebx, ebx
jmp 0x4f4dc9
xor eax, eax
xor ebx, ebx
mov rcx, rbx
add rsp, 0xa8
pop rbp
ret
xor eax, eax
xor ebx, ebx
mov rcx, rbx
add rsp, 0xa8
pop rbp
ret
mov qword [rsp + 0x38], rbx
mov qword [rsp + 0x60], r11
mov rsi, rcx
sub rsi, rbx
mov r9, rsi
neg rsi
sar rsi, 0x3f
and rsi, rbx
lea rax, [r8 + rsi]
mov edi, edx
mov rbx, r9
mov rcx, rbx
call fcn.004744a0
mov rdx, qword [rsp + 0x60]
add rdx, 2
mov rsi, qword [rsp + 0x38]
lea rbx, [rsi + rax]
mov rsi, qword [rsp + 0x90]
mov r8, qword [rsp + 0x98]
mov rcx, qword [rsp + 0x68]
mov r9, qword [rsp + 0x50]
mov rax, r9
cmp rax, rdx
jle 0x4f4ea0
jbe 0x4f4ee6
lea r9, [rdx + 1]
nop dword [rax]
cmp rax, r9
jbe 0x4f4edb
movzx r9d, word [rsi + rdx]
rol r9w, 8
movzx r9d, r9w
lea r10d, [r9 - 0xd800]
nop
cmp r10d, 0x800
jae 0x4f4e6a
lea r11, [rdx + 2]
cmp rax, r11
je 0x4f4e8b
jbe 0x4f4ed0
lea r12, [rdx + 3]
nop dword [rax]
cmp rax, r12
jbe 0x4f4ec5
movzx edx, word [rdx + rsi + 2]
cmp r9d, 0xdc00
jge 0x4f4e5b
rol dx, 8
movzx edx, dx
add edx, 0xffff2400
cmp edx, 0x400
jae 0x4f4e5b
shl r10d, 0xa
or edx, r10d
add edx, 0x10000
jmp 0x4f4e60
mov edx, 0xfffd
cmp edx, 0xfffd
jne 0x4f4e70
jmp 0x4f4e7b
mov r11, rdx
mov edx, r9d
cmp rbx, rcx
jbe 0x4f4d6c
jmp 0x4f4ebc
xor eax, eax
xor ebx, ebx
mov rcx, rbx
add rsp, 0xa8
pop rbp
ret
xor eax, eax
xor ebx, ebx
mov rcx, rbx
add rsp, 0xa8
pop rbp
ret
cmp rbx, rcx
ja 0x4f4eb1
mov rax, r8
add rsp, 0xa8
pop rbp
ret
mov rdx, rcx
mov rcx, rbx
call fcn.00468f40
mov rax, rbx
nop
call fcn.00468f80
mov rcx, rax
mov rax, r12
call fcn.00468ec0
mov rcx, rax
mov rax, r11
call fcn.00468ec0
mov rcx, rax
mov rax, r9
call fcn.00468ec0
mov rcx, rax
mov rax, rdx
call fcn.00468ec0
mov rcx, rdx
call fcn.00468f80
mov rcx, rax
nop dword [rax]
call fcn.00468f40
mov rax, r8
mov rcx, r10
call fcn.00468f80
mov rcx, r10
mov rdx, r9
call fcn.00468f40
mov rax, rdx
mov rcx, rbx
call fcn.00468ec0
nop
mov qword [rsp + 8], rax
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rcx
call fcn.00466be0
mov rax, qword [rsp + 8]
mov rbx, qword [rsp + 0x10]
mov rcx, qword [rsp + 0x18]
jmp fcn.004f4a60