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

Disassembly:
push rbp
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbx
sub rsp, 0x48
lea rbp, [rsp + 0x40]
mov r15, rdx
mov r14, rcx
mov eax, dword [0x141f429f0]
add eax, dword [0x141f429f4]
mov ecx, 0xf4c1755d
imul rcx, rax
shr rcx, 0x3f
xor ecx, 0x3e004e45
add ecx, 0xc80f7de8
cmp ecx, 0xd55e844d
ja 0x1400c5395
mov eax, dword [0x141f429f8]
xor eax, dword [0x141f429fc]
imul eax, eax, 0x995a916d
mov ecx, 0x972bb76d
imul rcx, rax
shr rcx, 0x3f
or ecx, 0xee58b2d6
mov eax, 0x20
call fcn.1400f4d10
sub rsp, rax
mov rdx, rsp
mov eax, 0x40
call fcn.1400f4d10
sub rsp, rax
mov r8, rsp
mov eax, 0x60
call fcn.1400f4d10
sub rsp, rax
mov r13, rsp
cmp ecx, 0x5de60eff
jae 0x1400c53c1
mov eax, 0x20
call fcn.1400f4d10
sub rsp, rax
mov eax, 0x40
call fcn.1400f4d10
sub rsp, rax
mov eax, 0x60
call fcn.1400f4d10
sub rsp, rax
jmp 0x1400c5338
mov qword [rbp - 0x10], r8
mov qword [rbp - 0x18], rdx
mov eax, dword [0x141f42a00]
xor edx, edx
div dword [0x141f42a04]
xor eax, 0x1604a981
add eax, 0x97f498
cmp eax, 0x696c4cc9
jbe 0x1400c5410
movzx eax, byte [0x141f49078]
sub rsp, 0x20
mov edx, 0x438
xor ecx, ecx
call fcn.1400c6170
add rsp, 0x20
nop word cs:[rax + rax]
mov eax, dword [0x141f42a08]
or eax, dword [0x141f42a0c]
imul edi, eax, 0xc7af9a2a
mov rsi, qword [r15]
movzx r12d, word [rsi + 0x3d2]
movzx eax, byte [0x141f49078]
sub rsp, 0x20
mov edx, 0x438
xor ecx, ecx
call fcn.1400c6170
add rsp, 0x20
cmp edi, 0x263bc7bd
je 0x1400c5410
mov rbx, rax
test rax, rax
je 0x1400c547a
mov eax, dword [0x141f42a20]
or eax, dword [0x141f42a24]
imul eax, eax, 0x3cbf1a38
cmp eax, 0x969da9b5
mov r8, qword [rbp - 0x10]
jne 0x1400c54e4
jmp 0x1400c5503
mov eax, dword [0x141f42a10]
imul eax, dword [0x141f42a14]
add eax, 0x84f9f1d8
mov ecx, 0x97c8b8d9
imul rcx, rax
shr rcx, 0x3c
cmp ecx, 0x2a34876
jbe 0x1400c54a3
ud2
xor eax, eax
nop word cs:[rax + rax]
ud2
ud2
mov eax, dword [0x141f42a28]
imul eax, dword [0x141f42a2c]
mov qword [rbx + 0x160], 0
cmp eax, 0x5e42ac8b
jne 0x1400c5510
mov qword [rbx + 0x160], 0
jmp 0x1400c54e4
mov r9, qword [r15 + 0x10]
movzx eax, word [rsi + 0x3d2]
mov r10, r9
not r10
add r10, rax
mov word [rbx + 0x3d2], r10w
imul rcx, r9, 0x38
mov rdx, qword [rsi + rcx + 0x198]
mov qword [r8 + 0x30], rdx
movups xmm0, xmmword [rsi + rcx + 0x168]
movups xmm1, xmmword [rsi + rcx + 0x178]
movups xmm2, xmmword [rsi + rcx + 0x188]
movups xmmword [r8 + 0x20], xmm2
movups xmmword [r8 + 0x10], xmm1
movups xmmword [r8], xmm0
mov rcx, r9
shl rcx, 5
movups xmm0, xmmword [rsi + rcx]
movups xmm1, xmmword [rsi + rcx + 0x10]
mov rcx, qword [rbp - 0x18]
movups xmmword [rcx + 0x10], xmm1
movups xmmword [rcx], xmm0
cmp r10, 0xb
ja 0x1400c58c1
mov qword [rbp - 0x20], r15
lea r15, [rsi + 0x168]
lea rdi, [r9 + 1]
sub rax, rdi
xor ecx, ecx
nop dword [rax + rax]
test cl, cl
jne 0x1400c55a0
cmp rax, r10
jne 0x1400c58f4
mov qword [rbp - 0x40], r9
mov qword [rbp - 8], r13
mov qword [rbp - 0x28], r14
xor eax, eax
test al, al
je 0x1400c55e4
imul rdx, rdi, 0x38
add rdx, r15
lea rcx, [rbx + 0x168]
imul r8, r10, 0x38
sub rsp, 0x20
mov r14, r10
call sub.VCRUNTIME140.dll_memcpy
mov r10, r14
add rsp, 0x20
imul rax, rdi, 0x38
add r15, rax
lea r13, [rbx + 0x168]
mov rcx, rdi
imul rdi, r10, 0x38
mov rax, rcx
mov qword [rbp], rcx
shl rcx, 5
add rcx, rsi
mov qword [rbp - 0x30], rcx
shl r10, 5
mov qword [rbp - 0x38], r10
xor r14d, r14d
nop word cs:[rax + rax]
sub rsp, 0x20
mov rcx, r13
mov rdx, r15
mov r8, rdi
call sub.VCRUNTIME140.dll_memcpy
add rsp, 0x20
test r14b, r14b
jne 0x1400c5620
sub rsp, 0x20
mov rcx, rbx
mov rdx, qword [rbp - 0x30]
mov r8, qword [rbp - 0x38]
call sub.VCRUNTIME140.dll_memcpy
add rsp, 0x20
mov r8, qword [rbp - 0x40]
mov word [rsi + 0x3d2], r8w
mov rdx, qword [rbp - 0x10]
mov rax, qword [rdx + 0x30]
mov rcx, qword [rbp - 8]
mov qword [rcx + 0x30], rax
movups xmm0, xmmword [rdx]
movups xmm1, xmmword [rdx + 0x10]
movups xmm2, xmmword [rdx + 0x20]
movups xmmword [rcx + 0x20], xmm2
movups xmmword [rcx + 0x10], xmm1
movups xmmword [rcx], xmm0
mov rax, qword [rbp - 0x18]
movups xmm0, xmmword [rax]
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rcx + 0x48], xmm1
movups xmmword [rcx + 0x38], xmm0
movzx edi, word [rbx + 0x3d2]
cmp rdi, 0xb
ja 0x1400c54e2
lea r14, [rdi + 1]
nop dword [rax]
mov eax, dword [0x141f42a50]
xor eax, dword [0x141f42a54]
xor eax, 0xe7b277bf
imul rax, rax, 0x6461983
shr rax, 0x3a
xor eax, 0xb5cbeb03
cmp eax, 0xc4f00571
ja 0x1400c56b0
mov eax, dword [0x141f42a58]
xor edx, edx
div dword [0x141f42a5c]
mov r15, rbx
add r15, 0x3d8
sub r12, r8
nop word cs:[rax + rax]
mov eax, dword [0x141f42a60]
and eax, dword [0x141f42a64]
add eax, 0x83857763
or eax, 0xffebf9f7
cmp eax, 0xf1a2f7df
jb 0x1400c5700
nop dword [rax]
mov eax, dword [0x141f42a68]
or eax, dword [0x141f42a6c]
imul eax, eax, 0x8da2be8b
xor eax, 0x19b9088c
imul eax, eax, 0x736b7704
cmp eax, 0x2178c756
je 0x1400c5720
cmp r12, r14
jne 0x1400c5910
mov eax, dword [0x141f42a80]
or eax, dword [0x141f42a84]
add eax, 0xba4c53d6
xor eax, 0xcd9ac790
add eax, 0x5b7d23ef
cmp eax, 0x9b88105d
jae 0x1400c5796
mov rax, qword [rbp]
lea rdx, [rsi + rax*8]
add rdx, 0x3d8
lea r8, [r14*8]
sub rsp, 0x20
mov rcx, r15
call sub.VCRUNTIME140.dll_memcpy
add rsp, 0x20
mov rax, qword [rbp]
lea r12, [rsi + rax*8]
add r12, 0x3d8
shl r14, 3
nop dword [rax]
mov eax, dword [0x141f42a88]
mov ecx, dword [0x141f42a8c]
lea r13d, [rax + rcx]
add r13d, 0x4ac2169b
or r13d, 0x916143fd
add r13d, 0xb061195
sub rsp, 0x20
mov rcx, r15
mov rdx, r12
mov r8, r14
call sub.VCRUNTIME140.dll_memcpy
add rsp, 0x20
cmp r13d, 0xa80779ca
jb 0x1400c57b0
mov r9, qword [rbp - 0x28]
mov r10, qword [rbp - 8]
mov rdx, qword [rbp - 0x20]
mov eax, dword [0x141f42a90]
or eax, dword [0x141f42a94]
xor eax, 0xfbc27efc
imul rax, rax, 0x23b3f1b7
shr rax, 0x3d
cmp eax, 0xccd05156
je 0x1400c5800
mov eax, 0x87551105
nop dword [rax + rax]
mov ecx, dword [0x141f42a98]
or ecx, dword [0x141f42a9c]
imul rcx, rax
shr rcx, 0x3d
xor ecx, 0xe9382ff5
cmp ecx, 0xb830a6ae
jb 0x1400c5830
mov rax, qword [rdx + 8]
xor ecx, ecx
nop dword [rax + rax]
mov rdx, rcx
cmp rcx, rdi
adc rcx, 0
mov r8, qword [rbx + rdx*8 + 0x3d8]
mov qword [r8 + 0x160], rbx
mov word [r8 + 0x3d0], dx
cmp rdx, rdi
jae 0x1400c588b
cmp rcx, rdi
jbe 0x1400c5860
mov ecx, dword [str.kNz_jr9]
sub ecx, dword [0x141f42aa4]
xor ecx, 0x10024218
or ecx, 0xefd53987
mov edx, 0x8397d035
imul rdx, rcx
shr rdx, 0x3f
cmp edx, 0x9d74cca1
jne 0x1400c59c4
jmp 0x1400c59ef
ud2
mov eax, dword [0x141f42a30]
imul eax, dword [0x141f42a34]
imul eax, eax, 0x4c3db69e
cmp eax, 0xa5c5a8c3
jne 0x1400c5932
jmp 0x1400c5961
mov eax, dword [0x141f42a70]
xor eax, dword [0x141f42a74]
add eax, 0xd0aa5eb9
and eax, 0xf2231b41
cmp eax, 0x1987ab6c
jne 0x1400c5997
jmp 0x1400c59c0
mov eax, dword [0x141f42a38]
xor eax, dword [0x141f42a3c]
mov ecx, 0xd3a6ea73
imul rcx, rax
shr rcx, 0x3e
or ecx, 0x99bdc342
add ecx, 0x8a396cf9
ud2
ud2
mov eax, dword [0x141f42a78]
or eax, dword [0x141f42a7c]
xor eax, 0x319143d7
imul eax, eax, 0xd2eee59d
and eax, 0xcf0c5f01
ud2
ud2
mov ecx, dword [0x141f42aa8]
imul ecx, dword [0x141f42aac]
and ecx, 0x324ca0b0
add ecx, 0x6a56fd4d
xor ecx, 0x2ca23b44
mov qword [r9 + 0x58], rsi
cmp ecx, 0x3b135b4c
jae 0x1400c59f5
mov qword [r9 + 0x58], rsi
jmp 0x1400c59c4
mov ecx, dword [0x141f42ab0]
and ecx, dword [0x141f42ab4]
imul rcx, rcx, 0x3352f907
shr rcx, 0x3c
imul ecx, ecx, 0xffa2a44e
xor ecx, 0x7923a246
cmp ecx, 0x6ce2567b
jb 0x1400c5a45
mov ecx, dword [0x141f42ab8]
imul ecx, dword [0x141f42abc]
add ecx, 0x4878d6a2
xor ecx, 0xdf27e39e
mov qword [r9 + 0x60], rax
cmp ecx, 0x31bab68d
jbe 0x1400c5a4b
mov qword [r9 + 0x60], rax
jmp 0x1400c5a20
mov rcx, qword [r10 + 0x50]
mov qword [r9 + 0x50], rcx
movups xmm0, xmmword [r10 + 0x40]
movups xmmword [r9 + 0x40], xmm0
movups xmm0, xmmword [r10]
movups xmm1, xmmword [r10 + 0x10]
movups xmm2, xmmword [r10 + 0x20]
movups xmm3, xmmword [r10 + 0x30]
movups xmmword [r9 + 0x30], xmm3
movups xmmword [r9 + 0x20], xmm2
movups xmmword [r9 + 0x10], xmm1
movups xmmword [r9], xmm0
mov qword [r9 + 0x68], rbx
mov qword [r9 + 0x70], rax
lea rsp, [rbp + 8]
pop rbx
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
pop rbp
ret