Function at 0x14005b6b0
Capabilities:
Encode data using base64

Disassembly:
xchg rbp, rcx
mov qword [rsp + 8], rbp
xchg rbp, rcx
push rbx
push rbp
push rdx
mov qword [rsp], rsi
nop
mov qword [rsp - 8], rdi
sub rsp, 8
push r12
mov qword [rsp], r12
push r13
nop
push 0x5658ccb5
mov qword [rsp], r14
nop
mov qword [rsp - 8], r15
sub rsp, 8
sub rsp, 0x38
mov r15d, r8d
xchg rdx, r9
mov r8, r9
xchg rdx, r9
xchg rsi, rdi
mov rsi, rcx
xchg rsi, rdi
xor esi, esi
mov dword [rsp + 0x24], esi
xorps xmm0, xmm0
xchg rcx, r15
movups xmmword [r15], xmm0
xchg r15, rcx
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 0x14005bbbd
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 r8, rdi
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 0x14005ba05
movzx eax, r13b
shr al, 2
movzx ecx, al
mov byte [rsp + 0x20], cl
movzx ebp, r13b
and bpl, dl
shl bpl, 4
movzx eax, r12b
shr al, 2
shr al, 1
shr al, 1
add bpl, al
movzx r14d, r12b
and r14b, 0xf
shl r14b, 2
movzx eax, r9b
shr al, 1
shr al, 2
shr al, 2
shr al, 1
add r14b, al
movzx eax, r9b
and al, 0x3f
mov byte [rsp + 0x90], al
mov byte [rsp + 0x23], al
lea rax, [0x140167020]
cmp qword [0x140167038], 0x10
cmovae rax, qword [0x140167020]
movzx r9d, byte [rcx + rax]
mov rcx, qword [rdi + 0x10]
xchg rdx, r14
mov r14, qword [rdi + 0x18]
xchg rdx, r14
cmp rcx, rdx
jae 0x14005b85b
lea rax, [rcx + 1]
mov qword [rdi + 0x10], rax
xchg rdi, rax
mov rdi, rax
xchg rdi, rax
cmp rdx, 0x10
jb 0x14005b84d
xchg r13, rax
mov r13, qword [rdi]
xchg r13, rax
mov byte [rax + rcx], r9b
mov byte [rax + rcx + 1], 0
jmp 0x14005b872
movzx r8d, bl
mov edx, 1
xchg rdi, rcx
mov rdi, rcx
xchg rdi, rcx
call fcn.1400313b0
lea rcx, [0x140167020]
cmp qword [0x140167038], 0x10
cmovae rcx, qword [0x140167020]
movzx eax, bpl
movzx r9d, byte [rax + rcx]
mov rcx, qword [rdi + 0x10]
xchg rdx, r13
mov r13, qword [rdi + 0x18]
xchg r13, rdx
cmp rcx, rdx
jae 0x14005b8d9
lea rax, [rcx + 1]
xchg r8, rax
mov qword [rdi + 0x10], r8
xchg r8, rax
xchg rdi, r10
mov rax, r10
xchg rdi, r10
cmp rdx, 0x10
jb 0x14005b8cb
mov rax, qword [rdi]
mov byte [rax + rcx], r9b
mov byte [rax + rcx + 1], 0
jmp 0x14005b8ea
movzx r8d, bl
mov edx, 1
mov rcx, rdi
call fcn.1400313b0
lea rcx, [0x140167020]
cmp qword [0x140167038], 0x10
cmovae rcx, qword [0x140167020]
movzx eax, r14b
movzx r9d, byte [rax + rcx]
xchg rbp, rcx
mov rbp, qword [rdi + 0x10]
xchg rbp, rcx
mov rdx, qword [rdi + 0x18]
cmp rcx, rdx
jae 0x14005b955
lea rax, [rcx + 1]
xchg r9, rax
mov qword [rdi + 0x10], r9
xchg r9, rax
xchg rdi, rbx
mov rax, rbx
xchg rdi, rbx
cmp rdx, 0x10
jb 0x14005b947
xchg rcx, rax
mov rcx, qword [rdi]
xchg rcx, rax
mov byte [rax + rcx], r9b
mov byte [rax + rcx + 1], 0
jmp 0x14005b966
movzx r8d, bl
mov edx, 1
mov rcx, rdi
call fcn.1400313b0
lea rcx, [0x140167020]
cmp qword [0x140167038], 0x10
cmovae rcx, qword [0x140167020]
movzx eax, byte [rsp + 0x90]
movzx r9d, byte [rax + rcx]
xchg rcx, r8
mov r8, qword [rdi + 0x10]
xchg r8, rcx
mov rdx, qword [rdi + 0x18]
cmp rcx, rdx
jae 0x14005b9cd
lea rax, [rcx + 1]
mov qword [rdi + 0x10], rax
xchg rdi, rcx
mov rax, rcx
xchg rdi, rcx
cmp rdx, 0x10
jb 0x14005b9bf
mov rax, qword [rdi]
mov byte [rax + rcx], r9b
mov byte [rax + rcx + 1], 0
jmp 0x14005b9de
movzx r8d, bl
mov edx, 1
mov rcx, rdi
call fcn.1400313b0
mov ebp, esi
xchg rdx, rsi
mov rsi, rdx
xchg rdx, rsi
mov eax, esi
mov r14d, esi
xchg r8, rcx
mov rcx, qword [rsp + 0x88]
xchg rcx, r8
movzx r9d, byte [rsp + 0x9a]
test r15d, r15d
jne 0x14005b74a
test ebp, ebp
je 0x14005bbbd
cmp ebp, 3
jge 0x14005ba5e
mov ebx, 3
sub ebx, ebp
movsxd r8, ebx
movsxd rax, ebp
lea rcx, [rsp + 0x98]
add rcx, rax
xor edx, edx
call fcn.14014feb6
movzx r9d, byte [rsp + 0x9a]
movzx r12d, byte [rsp + 0x99]
movzx r13d, byte [rsp + 0x98]
jmp 0x14005ba61
lea ebx, [rax + 3]
movzx eax, r13b
shr al, 2
mov byte [rsp + 0x20], al
and r13b, 3
shl r13b, 2
shl r13b, 1
shl r13b, 1
movzx eax, r12b
shr al, 4
add r13b, al
mov byte [rsp + 0x21], r13b
and r12b, 0xf
shl r12b, 1
shl r12b, 1
shr r9b, 6
add r12b, r9b
mov byte [rsp + 0x22], r12b
lea eax, [rbp + 1]
movsxd r15, eax
test eax, eax
jle 0x14005bb45
movzx ebx, byte [rsp + 0x90]
lea r12, [0x140167020]
xchg r12, r15
mov rcx, r15
xchg r12, r15
cmp qword [0x140167038], 0x10
cmovae rcx, qword [0x140167020]
movzx eax, byte [rsp + rsi + 0x20]
movzx r9d, byte [rax + rcx]
mov rcx, qword [rdi + 0x10]
mov rdx, qword [rdi + 0x18]
cmp rcx, rdx
jae 0x14005bb1e
lea rax, [rcx + 1]
xchg rcx, rax
mov qword [rdi + 0x10], rcx
xchg rcx, rax
xchg r8, rax
mov r8, rdi
xchg r8, rax
cmp rdx, 0x10
jb 0x14005bb10
mov rax, qword [rdi]
mov byte [rax + rcx], r9b
mov byte [rax + rcx + 1], 0
jmp 0x14005bb35
movzx r8d, bl
mov edx, 1
xchg r12, rcx
mov r12, rdi
xchg rcx, r12
call fcn.1400313b0
inc rsi
cmp rsi, r15
jl 0x14005babc
lea ebx, [r14 + 3]
cmp ebp, 3
jge 0x14005bbbd
movsxd rsi, ebx
movzx ebx, byte [rsp + 0x90]
nop dword [rax + rax]
mov rcx, qword [rdi + 0x10]
mov rdx, qword [rdi + 0x18]
cmp rcx, rdx
jae 0x14005bb99
lea rax, [rcx + 1]
xchg r9, rax
mov qword [rdi + 0x10], r9
xchg r9, rax
mov rax, rdi
cmp rdx, 0x10
jb 0x14005bb8e
mov rax, qword [rdi]
mov word [rax + rcx], 0x3d
jmp 0x14005bbb3
mov r9b, 0x3d
movzx r8d, bl
mov edx, 1
xchg rcx, rdi
mov rdi, rcx
xchg rcx, rdi
call fcn.1400313b0
sub rsi, 1
jne 0x14005bb61
xchg rbx, rax
mov rbx, rdi
xchg rbx, rax
add rsp, 0x38
nop
mov r15, qword [rsp]
add rsp, 8
nop
xchg qword [rsp], r14
add rsp, 8
nop
add rsp, 8
mov r13, qword [rsp - 8]
nop
add rsp, 8
xchg qword [rsp - 8], r12
nop
add rsp, 8
mov rdi, qword [rsp - 8]
nop
add rsp, 8
xchg qword [rsp - 8], rsi
nop
mov rbp, qword [rsp]
add rsp, 8
nop
mov rbx, qword [rsp]
add rsp, 8
ret