Function at 0x14005f610
Capabilities:
Encode data using base64

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 8], rcx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x30
mov ebp, r8d
mov r12, rdx
mov rbx, rcx
xor edi, edi
mov dword [rsp + 0x24], edi
xorps xmm0, xmm0
movups xmmword [rcx], xmm0
mov qword [rcx + 0x10], rdi
mov qword [rcx + 0x18], reloc.WS2_32.dll_ntohs
mov byte [rcx], dil
mov dword [rsp + 0x24], 1
mov esi, edi
test r8d, r8d
je 0x14005f98a
mov ecx, edi
dec ebp
movzx eax, byte [r12]
lea r12, [r12 + 1]
mov byte [rsp + rcx + 0x88], al
inc esi
inc rcx
movzx edx, byte [rsp + 0x8a]
movzx r14d, byte [rsp + 0x89]
movzx r15d, byte [rsp + 0x88]
cmp rcx, 3
jne 0x14005f844
movzx eax, r15b
shr al, 2
movzx ecx, al
mov byte [rsp + 0x20], cl
movzx esi, r15b
and sil, 3
shl sil, 4
movzx eax, r14b
shr al, 4
add sil, al
movzx r13d, r14b
and r13b, 0xf
shl r13b, 2
movzx eax, dl
shr al, 6
add r13b, al
movzx eax, dl
and al, 0x3f
mov byte [rsp + 0x80], al
mov byte [rsp + 0x23], al
lea rax, [0x1405455f0]
cmp qword [reloc.WS2_32.dll_ntohs], 0xf
cmova rax, qword [0x1405455f0]
movzx r9d, byte [rcx + rax]
mov rcx, qword [rbx + 0x10]
mov rdx, qword [rbx + 0x18]
cmp rcx, rdx
jae 0x14005f72f
lea rax, [rcx + 1]
mov qword [rbx + 0x10], rax
mov rax, rbx
cmp rdx, 0xf
jbe 0x14005f724
mov rax, qword [rbx]
mov byte [rax + rcx], r9b
mov byte [rax + rcx + 1], 0
jmp 0x14005f737
mov rcx, rbx
call fcn.14005fda0
lea rcx, [0x1405455f0]
cmp qword [reloc.WS2_32.dll_ntohs], 0xf
cmova rcx, qword [0x1405455f0]
movzx eax, sil
movzx r9d, byte [rax + rcx]
mov rcx, qword [rbx + 0x10]
mov rdx, qword [rbx + 0x18]
cmp rcx, rdx
jae 0x14005f783
lea rax, [rcx + 1]
mov qword [rbx + 0x10], rax
mov rax, rbx
cmp rdx, 0xf
jbe 0x14005f778
mov rax, qword [rbx]
mov byte [rax + rcx], r9b
mov byte [rax + rcx + 1], 0
jmp 0x14005f78b
mov rcx, rbx
call fcn.14005fda0
lea rcx, [0x1405455f0]
cmp qword [reloc.WS2_32.dll_ntohs], 0xf
cmova rcx, qword [0x1405455f0]
movzx eax, r13b
movzx r9d, byte [rax + rcx]
mov rcx, qword [rbx + 0x10]
mov rdx, qword [rbx + 0x18]
cmp rcx, rdx
jae 0x14005f7d7
lea rax, [rcx + 1]
mov qword [rbx + 0x10], rax
mov rax, rbx
cmp rdx, 0xf
jbe 0x14005f7cc
mov rax, qword [rbx]
mov byte [rax + rcx], r9b
mov byte [rax + rcx + 1], 0
jmp 0x14005f7df
mov rcx, rbx
call fcn.14005fda0
lea rcx, [0x1405455f0]
cmp qword [reloc.WS2_32.dll_ntohs], 0xf
cmova rcx, qword [0x1405455f0]
movzx eax, byte [rsp + 0x80]
movzx r9d, byte [rax + rcx]
mov rcx, qword [rbx + 0x10]
mov rdx, qword [rbx + 0x18]
cmp rcx, rdx
jae 0x14005f82f
lea rax, [rcx + 1]
mov qword [rbx + 0x10], rax
mov rax, rbx
cmp rdx, 0xf
jbe 0x14005f824
mov rax, qword [rbx]
mov byte [rax + rcx], r9b
mov byte [rax + rcx + 1], 0
jmp 0x14005f837
mov rcx, rbx
call fcn.14005fda0
mov esi, edi
mov rcx, rdi
movzx edx, byte [rsp + 0x8a]
test ebp, ebp
jne 0x14005f662
test esi, esi
je 0x14005f98a
mov r12d, 3
cmp esi, r12d
jge 0x14005f896
mov eax, r12d
sub eax, esi
movsxd r8, eax
movsxd rax, esi
lea rcx, [rsp + 0x88]
add rcx, rax
xor edx, edx
call sub.VCRUNTIME140.dll_memset
movzx edx, byte [rsp + 0x8a]
movzx r14d, byte [rsp + 0x89]
movzx r15d, byte [rsp + 0x88]
movzx eax, r15b
shr al, 2
mov byte [rsp + 0x20], al
and r15b, r12b
shl r15b, 4
movzx eax, r14b
shr al, 4
add r15b, al
mov byte [rsp + 0x21], r15b
and r14b, 0xf
shl r14b, 2
shr dl, 6
add r14b, dl
mov byte [rsp + 0x22], r14b
lea eax, [rsi + 1]
movsxd rbp, eax
test eax, eax
jle 0x14005f939
lea r14, [0x1405455f0]
nop dword [rax + rax]
mov rcx, r14
cmp qword [reloc.WS2_32.dll_ntohs], 0xf
cmova rcx, qword [0x1405455f0]
movzx eax, byte [rsp + rdi + 0x20]
movzx r9d, byte [rax + rcx]
mov rcx, qword [rbx + 0x10]
mov rdx, qword [rbx + 0x18]
cmp rcx, rdx
jae 0x14005f929
lea rax, [rcx + 1]
mov qword [rbx + 0x10], rax
mov rax, rbx
cmp rdx, 0xf
jbe 0x14005f91e
mov rax, qword [rbx]
mov byte [rax + rcx], r9b
mov byte [rax + rcx + 1], 0
jmp 0x14005f931
mov rcx, rbx
call fcn.14005fda0
inc rdi
cmp rdi, rbp
jl 0x14005f8e0
cmp esi, r12d
jge 0x14005f98a
sub r12d, esi
movsxd rdi, r12d
nop dword [rax]
nop dword [rax + rax]
mov rcx, qword [rbx + 0x10]
mov rdx, qword [rbx + 0x18]
cmp rcx, rdx
jae 0x14005f979
lea rax, [rcx + 1]
mov qword [rbx + 0x10], rax
mov rax, rbx
cmp rdx, 0xf
jbe 0x14005f971
mov rax, qword [rbx]
mov word [rax + rcx], 0x3d
jmp 0x14005f984
mov r9b, 0x3d
mov rcx, rbx
call fcn.14005fda0
sub rdi, 1
jne 0x14005f950
mov rax, rbx
mov rbx, qword [rsp + 0x78]
add rsp, 0x30
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret