Function at 0x14005bc80
Capabilities:
Encode data using base64

Disassembly:
mov qword [rsp + 8], rcx
nop
mov qword [rsp - 8], rbx
sub rsp, 8
push rbp
push rsi
nop
push 0x4c27b00d
mov qword [rsp], rdi
nop
push 0x59bfdc8d
mov qword [rsp], r12
nop
sub rsp, 8
mov qword [rsp], r13
nop
sub rsp, 8
mov qword [rsp], r14
push r15
sub rsp, 0x38
mov r15d, r8d
xchg rdi, rdx
mov r8, rdi
xchg rdx, rdi
xchg rcx, r15
mov rdi, r15
xchg r15, rcx
xor esi, esi
mov dword [rsp + 0x24], esi
xorps xmm0, xmm0
xchg r15, rcx
movups xmmword [r15], xmm0
xchg rcx, r15
mov qword [rcx + 0x10], rsi
mov qword [rcx + 0x18], 0xf
mov byte [rcx], sil
mov dword [rsp + 0x24], 1
mov ebp, esi
test r15d, r15d
je 0x14005c1b9
mov edx, esi
movzx ebx, byte [rsp + 0x90]
nop word [rax + rax]
mov ecx, ebp
dec r15d
movzx eax, byte [r8]
inc r8
xchg rdi, r8
mov qword [rsp + 0x88], rdi
xchg rdi, r8
mov byte [rsp + rdx + 0x98], al
inc ebp
inc rdx
mov eax, 0xffffffff
sub eax, ecx
mov r14d, 0xffffffff
sub r14d, ecx
movzx r9d, byte [rsp + 0x9a]
movzx r12d, byte [rsp + 0x99]
movzx r13d, byte [rsp + 0x98]
cmp rdx, 3
jne 0x14005bfea
movzx eax, r13b
shr al, 1
shr al, 1
movzx ecx, al
mov byte [rsp + 0x20], cl
movzx ebp, r13b
and bpl, dl
shl bpl, 1
shl bpl, 1
shl bpl, 1
shl bpl, 1
movzx eax, r12b
shr al, 3
shr al, 1
add bpl, al
movzx r14d, r12b
and r14b, 0xf
shl r14b, 1
shl r14b, 1
movzx eax, r9b
shr al, 5
shr al, 1
add r14b, al
movzx eax, r9b
and al, 0x3f
mov byte [rsp + 0x90], al
mov byte [rsp + 0x23], al
lea rax, [0x14016c020]
cmp qword [0x14016c038], 0x10
cmovae rax, qword [0x14016c020]
movzx r9d, byte [rcx + rax]
xchg rcx, rbx
mov rbx, qword [rdi + 0x10]
xchg rbx, rcx
xchg rdx, r15
mov r15, qword [rdi + 0x18]
xchg r15, rdx
cmp rcx, rdx
jae 0x14005be3a
lea rax, [rcx + 1]
xchg r13, rax
mov qword [rdi + 0x10], r13
xchg r13, rax
xchg rdi, rax
mov rdi, rax
xchg rdi, rax
cmp rdx, 0x10
jb 0x14005be2c
xchg r9, rax
mov r9, qword [rdi]
xchg r9, rax
mov byte [rax + rcx], r9b
mov byte [rax + rcx + 1], 0
jmp 0x14005be51
movzx r8d, bl
mov edx, 1
xchg rcx, rdi
mov rdi, rcx
xchg rdi, rcx
call fcn.140031840
lea rcx, [0x14016c020]
cmp qword [0x14016c038], 0x10
cmovae rcx, qword [0x14016c020]
movzx eax, bpl
movzx r9d, byte [rax + rcx]
mov rcx, qword [rdi + 0x10]
mov rdx, qword [rdi + 0x18]
cmp rcx, rdx
jae 0x14005beb0
lea rax, [rcx + 1]
mov qword [rdi + 0x10], rax
xchg rdi, rax
mov rdi, rax
xchg rdi, rax
cmp rdx, 0x10
jb 0x14005bea2
xchg rdx, rax
mov rdx, qword [rdi]
xchg rdx, rax
mov byte [rax + rcx], r9b
mov byte [rax + rcx + 1], 0
jmp 0x14005bec7
movzx r8d, bl
mov edx, 1
xchg rcx, r10
mov r10, rdi
xchg rcx, r10
call fcn.140031840
lea rcx, [0x14016c020]
cmp qword [0x14016c038], 0x10
cmovae rcx, qword [0x14016c020]
movzx eax, r14b
movzx r9d, byte [rax + rcx]
xchg r10, rcx
mov r10, qword [rdi + 0x10]
xchg rcx, r10
xchg r12, rdx
mov r12, qword [rdi + 0x18]
xchg rdx, r12
cmp rcx, rdx
jae 0x14005bf2e
lea rax, [rcx + 1]
mov qword [rdi + 0x10], rax
xchg rdi, rax
mov rdi, rax
xchg rdi, rax
cmp rdx, 0x10
jb 0x14005bf20
mov rax, qword [rdi]
mov byte [rax + rcx], r9b
mov byte [rax + rcx + 1], 0
jmp 0x14005bf45
movzx r8d, bl
mov edx, 1
xchg rdi, r11
mov rcx, r11
xchg r11, rdi
call fcn.140031840
lea rcx, [0x14016c020]
cmp qword [0x14016c038], 0x10
cmovae rcx, qword [0x14016c020]
movzx eax, byte [rsp + 0x90]
movzx r9d, byte [rax + rcx]
xchg r10, rcx
mov r10, qword [rdi + 0x10]
xchg r10, rcx
mov rdx, qword [rdi + 0x18]
cmp rcx, rdx
jae 0x14005bfb2
lea rax, [rcx + 1]
xchg r9, rax
mov qword [rdi + 0x10], r9
xchg r9, rax
xchg rdi, rax
mov rdi, rax
xchg rdi, rax
cmp rdx, 0x10
jb 0x14005bfa4
xchg r8, rax
mov r8, qword [rdi]
xchg r8, rax
mov byte [rax + rcx], r9b
mov byte [rax + rcx + 1], 0
jmp 0x14005bfc3
movzx r8d, bl
mov edx, 1
mov rcx, rdi
call fcn.140031840
mov ebp, esi
xchg rbx, rsi
mov rdx, rbx
xchg rbx, rsi
mov eax, esi
mov r14d, esi
xchg r8, rdx
mov rdx, qword [rsp + 0x88]
xchg r8, rdx
movzx r9d, byte [rsp + 0x9a]
test r15d, r15d
jne 0x14005bd1b
test ebp, ebp
je 0x14005c1b9
cmp ebp, 3
jge 0x14005c043
mov ebx, 3
sub ebx, ebp
movsxd r8, ebx
movsxd rax, ebp
lea rcx, [rsp + 0x98]
add rcx, rax
xor edx, edx
call fcn.140155046
movzx r9d, byte [rsp + 0x9a]
movzx r12d, byte [rsp + 0x99]
movzx r13d, byte [rsp + 0x98]
jmp 0x14005c046
lea ebx, [rax + 3]
movzx eax, r13b
shr al, 2
mov byte [rsp + 0x20], al
and r13b, 3
shl r13b, 3
shl r13b, 1
movzx eax, r12b
shr al, 1
shr al, 3
add r13b, al
mov byte [rsp + 0x21], r13b
and r12b, 0xf
shl r12b, 2
shr r9b, 4
shr r9b, 2
add r12b, r9b
mov byte [rsp + 0x22], r12b
lea eax, [rbp + 1]
movsxd r15, eax
test eax, eax
jle 0x14005c137
movzx ebx, byte [rsp + 0x90]
lea r12, [0x14016c020]
xchg r12, r13
mov rcx, r13
xchg r13, r12
cmp qword [0x14016c038], 0x10
cmovae rcx, qword [0x14016c020]
movzx eax, byte [rsp + rsi + 0x20]
movzx r9d, byte [rax + rcx]
xchg rcx, r15
mov r15, qword [rdi + 0x10]
xchg r15, rcx
xchg rcx, rdx
mov rcx, qword [rdi + 0x18]
xchg rdx, rcx
cmp rcx, rdx
jae 0x14005c110
lea rax, [rcx + 1]
mov qword [rdi + 0x10], rax
xchg r15, rax
mov r15, rdi
xchg r15, rax
cmp rdx, 0x10
jb 0x14005c102
xchg r11, rax
mov r11, qword [rdi]
xchg r11, rax
mov byte [rax + rcx], r9b
mov byte [rax + rcx + 1], 0
jmp 0x14005c127
movzx r8d, bl
mov edx, 1
xchg r10, rcx
mov r10, rdi
xchg r10, rcx
call fcn.140031840
inc rsi
cmp rsi, r15
jl 0x14005c0a2
lea ebx, [r14 + 3]
cmp ebp, 3
jge 0x14005c1b9
movsxd rsi, ebx
movzx ebx, byte [rsp + 0x90]
nop dword [rax + rax]
xchg rcx, rdx
mov rdx, qword [rdi + 0x10]
xchg rcx, rdx
mov rdx, qword [rdi + 0x18]
cmp rcx, rdx
jae 0x14005c195
lea rax, [rcx + 1]
xchg r11, rax
mov qword [rdi + 0x10], r11
xchg r11, rax
xchg rdi, rax
mov rdi, rax
xchg rdi, rax
cmp rdx, 0x10
jb 0x14005c18a
mov rax, qword [rdi]
mov word [rax + rcx], 0x3d
jmp 0x14005c1af
mov r9b, 0x3d
movzx r8d, bl
mov edx, 1
xchg rdi, r12
mov rcx, r12
xchg r12, rdi
call fcn.140031840
sub rsi, 1
jne 0x14005c153
xchg rdi, rax
mov rdi, rax
xchg rdi, rax
add rsp, 0x38
nop
add rsp, 8
mov r15, qword [rsp - 8]
nop
add rsp, 8
xchg qword [rsp - 8], r14
push rcx
push rcx
push rdx
push rbx
push rdx
push rcx
push rdx
xchg qword [rsp + 0x38], r13
pop rdx
pop rcx
pop rdx
pop rbx
pop rdx
pop rcx
pop rcx
add rsp, 8
push rax
push rax
push rdx
xchg qword [rsp + 0x18], r12
pop rdx
pop rax
pop rax
add rsp, 8
push rdx
push rax
push rax
push rcx
xchg qword [rsp + 0x20], rdi
pop rcx
pop rax
pop rax
pop rdx
add rsp, 8
push rcx
push rbx
push rax
push rcx
push rcx
xchg qword [rsp + 0x28], rsi
add rsp, 0x30
nop
xchg qword [rsp], rbp
add rsp, 8
nop
add rsp, 8
xchg qword [rsp - 8], rbx
ret