Function at 0x1400bc9a0
Capabilities:
Encode data using base64
Encode data using xor

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0xe8
mov r12, rdx
mov rsi, qword [rcx + 0x28]
movzx r13d, word [rsi + 0x3d2]
add rdx, r13
cmp rdx, 0xc
jae 0x1400bce56
mov rbp, qword [rcx + 0x18]
movzx r14d, word [rbp + 0x3d2]
xor eax, eax
nop dword [rax]
test al, al
jne 0x1400bc9e0
xor eax, eax
nop word cs:[rax + rax]
test al, al
jne 0x1400bc9f0
mov qword [rsp + 0xb0], rcx
mov rbx, r14
sub rbx, r12
jb 0x1400bce86
mov word [rbp + 0x3d2], bx
mov qword [rsp + 0x98], rdx
mov word [rsi + 0x3d2], dx
lea r15, [rsi + 0x168]
imul rax, r12, 0x38
lea rcx, [rsi + rax]
add rcx, 0x168
imul r8, r13, 0x38
mov rdx, r15
call sub.VCRUNTIME140.dll_memmove
mov qword [rsp + 0x28], r12
shl r12, 5
add r12, rsi
mov qword [rsp + 0xa8], r13
shl r13, 5
mov eax, dword [0x141dd49e0]
sub eax, dword [0x141dd49e4]
shr eax, 5
imul rax, rax, 0x4129e41
shr rax, 0x32
imul eax, eax, 0xd46b57e1
add eax, 0xe9f3f83c
cmp eax, 0x407cfe40
jae 0x1400bca92
mov rcx, r12
mov rdx, rsi
mov r8, r13
call sub.VCRUNTIME140.dll_memmove
mov qword [rsp + 0xa0], rbx
lea rdi, [rbx + 1]
sub r14, rdi
mov rax, qword [rsp + 0x28]
dec rax
mov qword [rsp + 0xb8], rax
nop word cs:[rax + rax]
mov eax, dword [0x141dd49e8]
or eax, dword [0x141dd49ec]
add eax, 0x707f0038
or eax, 0x37e5d953
imul ebx, eax, 0xf1dcc256
mov rcx, r12
mov rdx, rsi
mov r8, r13
call sub.VCRUNTIME140.dll_memmove
cmp ebx, 0x47bdaeea
ja 0x1400bcac0
cmp r14, qword [rsp + 0xb8]
jne 0x1400bce46
imul rax, rdi, 0x38
lea rdx, [rax + rbp]
add rdx, 0x168
imul r12, r14, 0x38
mov rcx, r15
mov r8, r12
call sub.VCRUNTIME140.dll_memcpy
mov rdx, rdi
shl rdx, 5
add rdx, rbp
shl r14, 5
mov rcx, rsi
mov r8, r14
call sub.VCRUNTIME140.dll_memcpy
mov rcx, qword [rsp + 0xa0]
imul rax, rcx, 0x38
add rax, rbp
add rax, 0x168
shl rcx, 5
movups xmm0, xmmword [rbp + rcx]
movups xmm1, xmmword [rbp + rcx + 0x10]
movaps xmmword [rsp + 0xc0], xmm0
movaps xmmword [rsp + 0xd0], xmm1
mov r11, qword [rsp + 0xb0]
mov r8, qword [r11]
mov rcx, qword [r11 + 0x10]
imul rdx, rcx, 0x38
add rdx, r8
add rdx, 0x168
shl rcx, 5
add rcx, r8
mov r8d, dword [0x141dd49f0]
imul r8d, dword [0x141dd49f4]
or r8d, 0xe46e4778
imul r8, r8, 0x56ad2ed5
shr r8, 0x3e
or r8d, 0xba64e442
cmp r8d, 0x37220c74
jae 0x1400bcc71
mov r8, qword [rdx + 0x30]
mov qword [rsp + 0x60], r8
movups xmm0, xmmword [rdx]
movups xmm1, xmmword [rdx + 0x10]
movups xmm2, xmmword [rdx + 0x20]
movaps xmmword [rsp + 0x50], xmm2
movaps xmmword [rsp + 0x40], xmm1
movaps xmmword [rsp + 0x30], xmm0
mov r8, qword [rax + 0x30]
movups xmm0, xmmword [rax]
movups xmm1, xmmword [rax + 0x10]
movups xmm2, xmmword [rax + 0x20]
movups xmmword [rdx], xmm0
mov qword [rdx + 0x30], r8
movups xmmword [rdx + 0x20], xmm2
movups xmmword [rdx + 0x10], xmm1
movups xmm0, xmmword [rcx]
movups xmm1, xmmword [rcx + 0x10]
movaps xmmword [rsp + 0x80], xmm1
movaps xmmword [rsp + 0x70], xmm0
movaps xmm0, xmmword [rsp + 0xc0]
movaps xmm1, xmmword [rsp + 0xd0]
movups xmmword [rcx + 0x10], xmm1
movups xmmword [rcx], xmm0
mov r8, qword [rsp + 0x60]
mov qword [r15 + r12 + 0x30], r8
movaps xmm0, xmmword [rsp + 0x30]
movaps xmm1, xmmword [rsp + 0x40]
movaps xmm2, xmmword [rsp + 0x50]
movups xmmword [r15 + r12 + 0x20], xmm2
movups xmmword [r15 + r12 + 0x10], xmm1
movups xmmword [r15 + r12], xmm0
movaps xmm0, xmmword [rsp + 0x70]
movaps xmm1, xmmword [rsp + 0x80]
movups xmmword [rsi + r14 + 0x10], xmm1
movups xmmword [rsi + r14], xmm0
mov r8d, 0x8734e495
mov r13, qword [rsp + 0xa8]
nop
mov r9d, dword [0x141dd49f8]
and r9d, dword [0x141dd49fc]
movups xmm0, xmmword [rdx]
movups xmm1, xmmword [rdx + 0x10]
movups xmm2, xmmword [rdx + 0x20]
movaps xmmword [rsp + 0x30], xmm0
movaps xmmword [rsp + 0x40], xmm1
movaps xmmword [rsp + 0x50], xmm2
mov r10, qword [rdx + 0x30]
mov qword [rsp + 0x60], r10
movups xmm0, xmmword [rax]
movups xmm1, xmmword [rax + 0x10]
movups xmm2, xmmword [rax + 0x20]
mov r10, qword [rax + 0x30]
mov qword [rdx + 0x30], r10
movups xmmword [rdx + 0x20], xmm2
movups xmmword [rdx + 0x10], xmm1
movups xmmword [rdx], xmm0
movups xmm0, xmmword [rcx]
movups xmm1, xmmword [rcx + 0x10]
movaps xmmword [rsp + 0x80], xmm1
movaps xmmword [rsp + 0x70], xmm0
movaps xmm0, xmmword [rsp + 0xc0]
movaps xmm1, xmmword [rsp + 0xd0]
movups xmmword [rcx + 0x10], xmm1
movups xmmword [rcx], xmm0
mov r10, qword [rsp + 0x60]
mov qword [r15 + r12 + 0x30], r10
imul r9, r8
shr r9, 0x3f
movaps xmm0, xmmword [rsp + 0x30]
movaps xmm1, xmmword [rsp + 0x40]
movaps xmm2, xmmword [rsp + 0x50]
movups xmmword [r15 + r12 + 0x20], xmm2
movups xmmword [r15 + r12 + 0x10], xmm1
movups xmmword [r15 + r12], xmm0
movaps xmm0, xmmword [rsp + 0x70]
movaps xmm1, xmmword [rsp + 0x80]
movups xmmword [rsi + r14 + 0x10], xmm1
movups xmmword [rsi + r14], xmm0
cmp r9d, 0x448f2fc0
je 0x1400bcc80
mov eax, 0xba3e3683
nop word cs:[rax + rax]
mov ecx, dword [0x141dd4a00]
and ecx, dword [0x141dd4a04]
shr ecx, 1
imul rcx, rax
shr rcx, 0x3c
add ecx, 0x6f856027
cmp ecx, 0x23df3db3
jb 0x1400bcd60
mov rcx, qword [r11 + 0x30]
cmp qword [r11 + 0x20], 0
mov r12, qword [rsp + 0x28]
je 0x1400bce10
nop word cs:[rax + rax]
mov eax, dword [0x141dd4a10]
or eax, dword [0x141dd4a14]
or eax, 0x10ce987e
add eax, 0x47a08cf8
and eax, 0x12a84162
cmp eax, 0xc779411
je 0x1400bcda0
test rcx, rcx
je 0x1400bce3e
lea rbx, [rsi + 0x3d8]
lea r14, [rsi + r12*8]
add r14, 0x3d8
mov eax, dword [0x141dd4a28]
add eax, dword [0x141dd4a2c]
imul eax, eax, 0xca32281e
mov ecx, 0x926b41fb
imul rcx, rax
shr rcx, 0x3d
or ecx, 0x37308eb6
cmp ecx, 0xb6cdb94c
jbe 0x1400bcf2d
jmp 0x1400bcf83
mov eax, dword [0x141dd4a08]
xor edx, edx
div dword [0x141dd4a0c]
imul eax, eax, 0xae4cb9a1
xor eax, 0x41803215
and eax, 0xd3e4bb55
cmp eax, 0x1cadbaa4
je 0x1400bce10
test rcx, rcx
je 0x1400bcedf
xor eax, eax
test al, al
je 0x1400bce88
jmp 0x1400bceae
ud2
mov eax, dword [0x141dd49d8]
and eax, dword [0x141dd49dc]
or eax, 0xd8024201
and eax, 0xfed34213
xor eax, 0xcd9ee1ac
cmp eax, 0x641f35a7
jbe 0x1400bce7a
ud2
xor eax, eax
nop dword [rax]
ud2
ud2
mov eax, dword [0x141dd4a20]
sub eax, dword [0x141dd4a24]
imul rax, rax, 0x639f3a9b
shr rax, 0x3c
imul eax, eax, 0xb56bba34
ud2
ud2
test rcx, rcx
je 0x1400bcedf
nop word [rax + rax]
mov rax, qword [rsi + r9*8 + 0x3d8]
mov qword [rax + 0x160], rsi
mov word [rax + 0x3d0], r9w
inc r9
dec rcx
jne 0x1400bcec0
mov eax, 0xf896ad0d
nop word cs:[rax + rax]
mov ecx, dword [0x141dd4a18]
imul ecx, dword [0x141dd4a1c]
or ecx, 0x6116474c
imul rcx, rax
shr rcx, 0x3f
add ecx, 0x9cb25f33
cmp ecx, 0xe55171af
ja 0x1400bcef0
add rsp, 0xe8
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
mov eax, dword [0x141dd4a30]
mov ecx, dword [0x141dd4a34]
add eax, ecx
add eax, 0x581fc8ca
xor eax, 0xb19d8542
imul r15d, eax, 0x8439ada1
lea r8, [r13*8 + 8]
mov rcx, r14
mov rdx, rbx
call sub.VCRUNTIME140.dll_memmove
lea rdx, [rdi*8 + 0x3d8]
add rdx, rbp
lea r8, [r12*8]
mov rcx, rbx
call sub.VCRUNTIME140.dll_memcpy
cmp r15d, 0xb912bcf0
jne 0x1400bcfb6
lea r8, [r13*8 + 8]
mov rcx, r14
mov rdx, rbx
call sub.VCRUNTIME140.dll_memmove
lea rdx, [rdi*8 + 0x3d8]
add rdx, rbp
lea r8, [r12*8]
mov rcx, rbx
call sub.VCRUNTIME140.dll_memcpy
jmp 0x1400bcf2d
lea r8, [r12 + r13]
inc r8
nop dword [rax]
mov eax, dword [0x141dd4a38]
add eax, dword [0x141dd4a3c]
imul eax, eax, 0xfff5830c
or eax, 0xbd4b0f19
cmp eax, 0xfc7219d0
ja 0x1400bcfc0
mov ecx, r8d
and ecx, 3
cmp qword [rsp + 0x98], 3
jae 0x1400bcff7
xor r9d, r9d
jmp 0x1400bceb2
and r8, 0xfffffffffffffffc
nop dword [rax + rax]
mov eax, dword [0x141dd4a40]
add eax, dword [0x141dd4a44]
or eax, 0x21d2c1f2
add eax, 0x4ede6724
xor eax, 0xd9dfb468
cmp eax, 0xcc4551ad
ja 0x1400bd000
nop word cs:[rax + rax]
mov eax, dword [0x141dd4a48]
imul eax, dword [0x141dd4a4c]
imul rax, rax, 0x705fef91
shr rax, 0x3e
cmp eax, 0xf09ca14f
je 0x1400bd030
xor eax, eax
mov r10d, 0x830608cf
jmp 0x1400bd06c
inc rax
cmp rax, r8
je 0x1400bd19c
mov r9, rax
mov eax, dword [0x141dd4a50]
and eax, dword [0x141dd4a54]
add eax, 0x24ed9d68
or eax, 0x9bbd4a58
imul rax, r10
shr rax, 0x3f
cmp eax, 0xc847938e
je 0x1400bd132
nop dword [rax + rax]
mov eax, dword [0x141dd4a58]
xor edx, edx
div dword [0x141dd4a5c]
imul eax, eax, 0x1083ade7
or eax, 0x6ce50278
imul edx, eax, 0x249d09d2
lea eax, [r9 + 1]
lea r11d, [r9 + 2]
mov rdi, qword [rsi + r9*8 + 0x3d8]
mov qword [rdi + 0x160], rsi
mov word [rdi + 0x3d0], r9w
mov rdi, qword [rsi + r9*8 + 0x3e0]
mov qword [rdi + 0x160], rsi
mov word [rdi + 0x3d0], ax
lea rax, [r9 + 3]
mov rdi, qword [rsi + r9*8 + 0x3e8]
mov qword [rdi + 0x160], rsi
mov word [rdi + 0x3d0], r11w
mov r11, qword [rsi + r9*8 + 0x3f0]
mov qword [r11 + 0x160], rsi
mov word [r11 + 0x3d0], ax
cmp edx, 0xe08264db
jbe 0x1400bd060
mov rax, qword [rsi + r9*8 + 0x3d8]
mov qword [rax + 0x160], rsi
mov word [rax + 0x3d0], r9w
mov rax, qword [rsi + r9*8 + 0x3e0]
mov qword [rax + 0x160], rsi
lea edx, [r9 + 1]
mov word [rax + 0x3d0], dx
mov rax, qword [rsi + r9*8 + 0x3e8]
mov qword [rax + 0x160], rsi
lea edx, [r9 + 2]
mov word [rax + 0x3d0], dx
mov rax, qword [rsi + r9*8 + 0x3f0]
mov qword [rax + 0x160], rsi
lea edx, [r9 + 3]
mov word [rax + 0x3d0], dx
jmp 0x1400bd0a0
add r9, 4
jmp 0x1400bceb2