Function at 0x14028f190
Capabilities:
Encode data using base64
Encrypt data using rc4 prga

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0xd8
movdqa xmmword [rsp + 0xc0], xmm15
movdqa xmmword [rsp + 0xb0], xmm14
movdqa xmmword [rsp + 0xa0], xmm13
movdqa xmmword [rsp + 0x90], xmm12
movdqa xmmword [rsp + 0x80], xmm11
movdqa xmmword [rsp + 0x70], xmm10
movdqa xmmword [rsp + 0x60], xmm9
movdqa xmmword [rsp + 0x50], xmm8
movdqa xmmword [rsp + 0x40], xmm7
movdqa xmmword [rsp + 0x30], xmm6
mov rax, rdx
shr rax, 0x3e
jne 0x14028f22d
mov rbx, rdx
lea rax, [rdx*4]
movabs r13, 0xaaaaaaaaaaaaaaab
mul r13
mov r11, rdx
shr r11, 1
add r11, 3
mov rdi, r11
and rdi, 0xfffffffffffffffc
cmp rdi, r9
jbe 0x14028f292
xor esi, esi
mov rax, rsi
mov rdx, rdi
movaps xmm6, xmmword [rsp + 0x30]
movaps xmm7, xmmword [rsp + 0x40]
movaps xmm8, xmmword [rsp + 0x50]
movaps xmm9, xmmword [rsp + 0x60]
movaps xmm10, xmmword [rsp + 0x70]
movaps xmm11, xmmword [rsp + 0x80]
movaps xmm12, xmmword [rsp + 0x90]
movaps xmm13, xmmword [rsp + 0xa0]
movaps xmm14, xmmword [rsp + 0xb0]
movaps xmm15, xmmword [rsp + 0xc0]
add rsp, 0xd8
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
mov rsi, r8
mov rax, rbx
mul r13
shr rdx, 1
lea r9, [rdx + rdx*2]
mov r12, r8
mov rdx, rdi
cmp r9, 3
jb 0x14028f923
lea r10, [r9 - 3]
mov rax, r10
mul r13
mov r8, rdx
shr r8, 1
shr r11, 2
cmp r8, r11
cmovae r8, r11
mov rax, rcx
mov r14, r9
mov rdx, rdi
mov r15, rsi
cmp r8, 8
jb 0x14028f7d3
mov rax, r10
mul r13
shr rdx, 1
cmp rdx, r11
cmovae rdx, r11
lea rax, [rdx + rdx*2]
add rax, rcx
add rax, 3
cmp rax, rsi
jbe 0x14028f320
lea r10, [rsi + rdx*4]
add r10, 4
mov rax, rcx
mov r14, r9
mov rdx, rdi
mov r15, rsi
cmp r10, rcx
ja 0x14028f7d3
inc r8
mov eax, r8d
and eax, 7
mov edx, 8
cmovne rdx, rax
sub r8, rdx
lea rdx, [r8 + r8*2]
lea rax, [rcx + rdx]
mov r14, r9
sub r14, rdx
lea r10, [r8*4]
mov rdx, rdi
sub rdx, r10
lea r15, [rsi + r8*4]
xor r10d, r10d
mov r11, rcx
movdqa xmm15, xmmword [0x14046f850]
movdqa xmm11, xmmword [str.AAAAAAAA33333333]
movdqa xmm10, xmmword [0x14046f7e0]
movdqa xmm2, xmmword [0x14046f810]
nop
movdqu xmm8, xmmword [r11]
movq xmm14, qword [r11 + 0x10]
movdqa xmm4, xmmword [0x14046f770]
movdqa xmm3, xmm4
pandn xmm3, xmm14
movdqa xmm5, xmm8
pand xmm5, xmm4
por xmm5, xmm3
pxor xmm0, xmm0
punpcklbw xmm5, xmm0
movdqa xmm3, xmmword [0x14046f780]
pand xmm5, xmm3
movdqa xmm9, xmm8
punpckhbw xmm9, xmm0
pandn xmm3, xmm9
por xmm3, xmm5
pshufd xmm3, xmm3, 0xd8
pshufhw xmm3, xmm3, 0x6c
pshufd xmm3, xmm3, 0x6c
pshuflw xmm3, xmm3, 0x6c
pshufhw xmm3, xmm3, 0xc6
packuswb xmm3, xmm3
movdqa xmm12, xmmword [0x14046f790]
movdqa xmm5, xmm12
pandn xmm5, xmm14
movdqa xmm4, xmm8
pand xmm4, xmm12
por xmm4, xmm5
punpcklbw xmm4, xmm0
movdqa xmm5, xmmword [0x14046f7a0]
pand xmm4, xmm5
pandn xmm5, xmm9
por xmm5, xmm4
pshuflw xmm4, xmm5, 0xc6
pshufhw xmm4, xmm4, 0xc6
pshufd xmm4, xmm4, 0x6c
pshuflw xmm4, xmm4, 0x39
pshufhw xmm5, xmm4, 0x39
packuswb xmm5, xmm5
movdqa xmm12, xmmword [0x14046f7b0]
movdqa xmm4, xmm12
pandn xmm4, xmm14
pand xmm8, xmm12
por xmm8, xmm4
punpcklbw xmm8, xmm0
movdqa xmm4, xmmword [0x14046f7c0]
pand xmm8, xmm4
pandn xmm4, xmm9
por xmm4, xmm8
pshufd xmm4, xmm4, 0x27
pshufhw xmm4, xmm4, 0x6c
pshufd xmm4, xmm4, 0x27
pshuflw xmm4, xmm4, 0xc6
pshufhw xmm4, xmm4, 0xc6
packuswb xmm4, xmm4
punpcklbw xmm3, xmm0
movdqa xmm8, xmm3
psrlw xmm8, 2
movdqa xmm9, xmmword [0x14046f7d0]
psubw xmm9, xmm8
psrlw xmm9, 8
movdqa xmm13, xmmword [0x14046f7e0]
pand xmm9, xmm13
paddw xmm9, xmm8
movdqa xmm14, xmmword [0x14046f800]
psubw xmm14, xmm8
psrlw xmm14, 8
movdqa xmm7, xmmword [0x14046f810]
pand xmm14, xmm7
movdqa xmm12, xmmword [0x14046f820]
psubw xmm12, xmm8
psrlw xmm12, 8
movdqa xmm0, xmmword [0x14046f830]
pand xmm12, xmm0
paddw xmm12, xmm14
paddw xmm12, xmm9
movdqa xmm14, xmmword [str.________]
psubw xmm14, xmm8
psrlw xmm14, 8
pand xmm14, xmm15
paddw xmm14, xmm11
paddw xmm14, xmm12
pxor xmm13, xmm13
punpcklbw xmm5, xmm13
psllw xmm3, 4
pand xmm3, xmmword [str.00000000________]
movdqa xmm8, xmm5
psrlw xmm8, 4
por xmm8, xmm3
movdqa xmm7, xmmword [0x14046f7d0]
movdqa xmm3, xmm7
psubw xmm3, xmm8
psrlw xmm3, 8
pand xmm3, xmm10
paddw xmm3, xmm8
movdqa xmm6, xmmword [0x14046f800]
movdqa xmm9, xmm6
psubw xmm9, xmm8
psrlw xmm9, 8
pand xmm9, xmm2
movdqa xmm1, xmmword [0x14046f820]
movdqa xmm12, xmm1
psubw xmm12, xmm8
psrlw xmm12, 8
pand xmm12, xmm0
paddw xmm12, xmm9
paddw xmm12, xmm3
movdqa xmm9, xmmword [str.________]
movdqa xmm3, xmm9
psubw xmm3, xmm8
psrlw xmm3, 8
pand xmm3, xmm15
paddw xmm3, xmm11
paddw xmm3, xmm12
psllw xmm5, 2
pand xmm5, xmmword [0x140391600]
punpcklbw xmm4, xmm13
movdqa xmm8, xmm4
psrlw xmm8, 6
por xmm8, xmm5
movdqa xmm5, xmm9
movdqa xmm13, xmm9
psubw xmm5, xmm8
psrlw xmm5, 8
pand xmm5, xmm15
psubw xmm1, xmm8
psrlw xmm1, 8
pand xmm1, xmm0
movdqa xmm12, xmm6
psubw xmm12, xmm8
psrlw xmm12, 8
pand xmm12, xmm2
paddw xmm12, xmm1
movdqa xmm9, xmm7
psubw xmm9, xmm8
psrlw xmm9, 8
pand xmm9, xmm10
paddw xmm9, xmm8
paddw xmm9, xmm12
paddw xmm5, xmm11
paddw xmm5, xmm9
pand xmm4, xmmword [0x14046f870]
movdqa xmm8, xmm13
psubw xmm8, xmm4
psrlw xmm8, 8
pand xmm8, xmm15
movdqa xmm9, xmmword [0x14046f820]
psubw xmm9, xmm4
psrlw xmm9, 8
pand xmm9, xmmword [0x14046f830]
psubw xmm6, xmm4
psrlw xmm6, 8
pand xmm6, xmm2
paddw xmm6, xmm9
psubw xmm7, xmm4
psrlw xmm7, 8
pand xmm7, xmm10
paddw xmm7, xmm4
paddw xmm7, xmm6
paddw xmm8, xmm11
paddw xmm8, xmm7
movdqa xmm0, xmmword [0x14046f880]
pand xmm3, xmm0
pand xmm14, xmm0
packuswb xmm14, xmm3
pand xmm5, xmm0
pand xmm8, xmm0
packuswb xmm5, xmm8
movdqa xmm3, xmm5
pxor xmm0, xmm0
punpckhbw xmm3, xmm0
punpcklbw xmm5, xmm0
pxor xmm1, xmm1
movdqa xmm4, xmm5
punpcklwd xmm4, xmm3
pshufd xmm8, xmm4, 0xfa
pshufd xmm4, xmm4, 0x50
packuswb xmm4, xmm8
movdqa xmm0, xmmword [0x14038cc80]
movdqa xmm8, xmm0
pandn xmm8, xmm4
movdqa xmm4, xmm14
punpckhbw xmm4, xmm1
punpcklbw xmm14, xmm1
movdqa xmm9, xmm14
punpcklwd xmm9, xmm4
pshufd xmm12, xmm9, 0xf6
pshufd xmm9, xmm9, 0xd4
packuswb xmm9, xmm12
pand xmm9, xmm0
por xmm9, xmm8
punpckhwd xmm5, xmm3
pshufd xmm3, xmm5, 0xfa
pshufd xmm5, xmm5, 0x50
packuswb xmm5, xmm3
movdqa xmm3, xmm0
pandn xmm3, xmm5
punpckhwd xmm14, xmm4
pshufd xmm4, xmm14, 0xf6
pshufd xmm5, xmm14, 0xd4
packuswb xmm5, xmm4
pand xmm5, xmm0
por xmm5, xmm3
movdqu xmmword [rsi + r10*4 + 0x10], xmm5
movdqu xmmword [rsi + r10*4], xmm9
add r10, 8
add r11, 0x18
cmp r8, r10
jne 0x14028f380
movdqa xmm0, xmmword [0x14046f890]
movdqa xmm1, xmmword [0x14046f8a0]
movdqa xmm2, xmmword [0x14046f8b0]
movdqa xmm3, xmmword [0x14046f8c0]
movdqa xmm4, xmmword [str.3333]
movdqa xmm5, xmmword [0x14046f8e0]
movdqa xmm6, xmmword [0x14046f8f0]
movdqa xmm7, xmmword [0x14046f900]
movdqa xmm8, xmmword [str.AAAA]
movdqa xmm9, xmmword [0x14046f880]
nop word cs:[rax + rax]
test rdx, rdx
je 0x14028f22f
add r14, 0xfffffffffffffffd
lea r12, [r15 + 4]
movzx r8d, byte [rax]
movzx r10d, byte [rax + 1]
movzx r11d, byte [rax + 2]
mov ebp, r8d
shr ebp, 2
shl r8d, 4
mov r13d, r10d
shr r13d, 4
and r8d, 0x30
or r8d, r13d
and r10d, 0xf
mov r13d, r11d
shr r13d, 6
lea r10d, [r13 + r10*4]
and r11d, 0x3f
movd xmm10, ebp
pinsrw xmm10, r8d, 1
pinsrw xmm10, r10d, 2
pinsrw xmm10, r11d, 3
add rdx, 0xfffffffffffffffc
movdqa xmm11, xmm0
psubw xmm11, xmm10
psrlw xmm11, 8
pand xmm11, xmm1
movdqa xmm12, xmm2
psubw xmm12, xmm10
psrlw xmm12, 8
pand xmm12, xmm3
movdqa xmm13, xmm4
psubw xmm13, xmm10
psrlw xmm13, 8
pand xmm13, xmm5
paddw xmm13, xmm12
movdqa xmm12, xmm6
psubw xmm12, xmm10
psrlw xmm12, 8
pand xmm12, xmm7
paddw xmm12, xmm10
paddw xmm12, xmm13
paddw xmm12, xmm11
paddw xmm12, xmm8
pand xmm12, xmm9
packuswb xmm12, xmm12
movd dword [r15], xmm12
add rax, 3
mov r15, r12
cmp r14, 3
jae 0x14028f830
cmp rdx, 4
jb 0x14028f22f
sub rbx, r9
add rcx, r9
mov r8, rbx
xor r8, 3
lea rax, [rsp + rbx]
add rax, 0x2d
mov r14, rcx
mov rcx, rax
xor edx, edx
call sub.VCRUNTIME140.dll_memset
lea rcx, [rsp + 0x2d]
mov rdx, r14
mov r8, rbx
call sub.VCRUNTIME140.dll_memcpy
movzx r8d, byte [rsp + 0x2e]
movzx r9d, byte [rsp + 0x2f]
movzx r11d, byte [rsp + 0x2d]
mov r14d, r11d
shr r14d, 2
mov eax, 0x3e
mov ebp, 0x3e
sub ebp, r14d
shr ebp, 8
and ebp, 3
mov ecx, 0x3d
mov r10d, 0x3d
sub r10d, r14d
shr r10d, 8
and r10d, 0xf1
mov edx, 0x33
mov r15d, 0x33
sub r15d, r14d
shr r15d, 8
and r15d, 0xb5
add r15d, r10d
mov r10d, 0x19
mov r13d, 0x19
sub r13d, r14d
shr r13d, 8
and r13d, 6
add r13d, r14d
add r13d, r15d
add r13d, ebp
add r13b, 0x41
mov byte [r12], r13b
shl r11d, 4
and r11d, 0x30
mov ebp, r8d
shr ebp, 4
or ebp, r11d
mov r11d, 0x3e
sub r11d, ebp
shr r11d, 8
and r11d, 3
mov r14d, 0x3d
sub r14d, ebp
shr r14d, 8
and r14d, 0xf1
mov r15d, 0x33
sub r15d, ebp
shr r15d, 8
and r15d, 0xb5
add r15d, r14d
mov r14d, 0x19
sub r14d, ebp
shr r14d, 8
and r14d, 6
add r14d, ebp
add r14d, r15d
add r14d, r11d
add r14b, 0x41
mov byte [r12 + 1], r14b
shr r9d, 6
and r8d, 0xf
lea r8d, [r9 + r8*4]
sub r10d, r8d
shr r10d, 8
and r10d, 6
add r10d, r8d
sub edx, r8d
shr edx, 8
and edx, 0xb5
mov r9d, 0x3d
sub r9d, r8d
shr r9d, 8
and r9d, 0xf1
add r9d, edx
add r9d, r10d
sub eax, r8d
shr eax, 8
and eax, 3
add eax, r9d
add al, 0x41
cmp rbx, 1
movzx eax, al
cmove eax, ecx
mov byte [r12 + 2], al
mov byte [r12 + 3], 0x3d
jmp 0x14028f22f