Function at 0x180013620
Capabilities:
Encode data using xor

Disassembly:
sub rsp, 0xa8
movdqa xmmword [rsp + 0x90], xmm15
movdqa xmmword [rsp + 0x80], xmm14
movdqa xmmword [rsp + 0x70], xmm13
movdqa xmmword [rsp + 0x60], xmm12
movdqa xmmword [rsp + 0x50], xmm11
movdqa xmmword [rsp + 0x40], xmm10
movdqa xmmword [rsp + 0x30], xmm9
movdqa xmmword [rsp + 0x20], xmm8
movdqa xmmword [rsp + 0x10], xmm7
movdqa xmmword [rsp], xmm6
mov eax, dword [rcx + 0x57]
test rax, rax
je 0x180013d18
mov dword [rcx + 0x57], 0
lea rdx, [rcx + 0x56]
mov r8d, 1
nop dword [rax]
movzx r9d, byte [rcx + r8 - 1]
movzx r10d, byte [rdx]
mov byte [rcx + r8 - 1], r10b
mov byte [rdx], r9b
cmp r8, 0x2b
je 0x1800136c4
movzx r9d, byte [rcx + r8]
movzx r10d, byte [rdx - 1]
mov byte [rcx + r8], r10b
mov byte [rdx - 1], r9b
add rdx, 0xfffffffffffffffe
add r8, 2
jmp 0x180013690
movabs rdx, 0x5851f42d4c957f2d
mov r8d, 2
movabs r9, 0x14057b7ef767814f
nop
imul rax, rdx
add rax, r9
mov r10, rax
shr r10, 0x38
xor byte [rcx + r8 - 2], r10b
imul rax, rdx
add rax, r9
mov r10, rax
shr r10, 0x38
xor byte [rcx + r8 - 1], r10b
imul rax, rdx
add rax, r9
mov r10, rax
shr r10, 0x38
xor byte [rcx + r8], r10b
add r8, 3
cmp r8, 0x59
jne 0x1800136e0
movdqu xmm12, xmmword [rcx]
movdqa xmm3, xmm12
paddb xmm3, xmmword [0x1800d7950]
movdqa xmm5, xmmword [0x1800d7960]
movdqa xmm13, xmm3
pmaxub xmm13, xmm5
pcmpeqb xmm13, xmm3
movdqa xmm6, xmmword [0x1800d7970]
movdqa xmm8, xmmword [0x1800d7980]
movdqa xmm4, xmm12
paddb xmm4, xmm8
pand xmm4, xmm13
pandn xmm13, xmm3
por xmm13, xmm4
movdqa xmm9, xmmword [0x1800d79a0]
movdqa xmm4, xmm12
paddb xmm4, xmm9
movdqa xmm14, xmm4
pmaxub xmm14, xmm5
pcmpeqb xmm14, xmm4
movdqa xmm3, xmmword [0x1800d79b0]
movdqa xmm7, xmm12
paddb xmm7, xmm3
pand xmm7, xmm14
pandn xmm14, xmm4
por xmm14, xmm7
movdqa xmm0, xmmword [0x1800d79d0]
movdqa xmm4, xmm12
paddb xmm4, xmm0
movdqa xmm1, xmm0
movdqa xmm15, xmm4
pminub xmm15, xmm6
pcmpeqb xmm15, xmm4
movdqa xmm7, xmmword [0x1800d79e0]
movdqa xmm11, xmm12
pand xmm11, xmm7
paddb xmm11, xmmword [0x1800d79f0]
movdqa xmm4, xmmword [0x1800d7a00]
movdqa xmm10, xmm11
pminub xmm10, xmm4
pcmpeqb xmm10, xmm11
paddb xmm13, xmmword [str.aaaaaaaaaaaaaaaa]
paddb xmm14, xmmword [str.AAAAAAAAAAAAAAAA]
pand xmm13, xmm15
pandn xmm15, xmm14
por xmm15, xmm13
movdqu xmm2, xmmword [rcx + 0x10]
pand xmm12, xmm10
pandn xmm10, xmm15
movdqu xmm13, xmmword [rcx + 0x20]
por xmm10, xmm12
movdqu xmm12, xmmword [rcx + 0x30]
movdqu xmmword [rcx], xmm10
movdqa xmm10, xmm2
paddb xmm10, xmmword [0x1800d7950]
movdqa xmm15, xmm10
pmaxub xmm15, xmm5
pcmpeqb xmm15, xmm10
movdqa xmm14, xmm2
paddb xmm14, xmm8
pand xmm14, xmm15
pandn xmm15, xmm10
por xmm15, xmm14
movdqa xmm10, xmm2
paddb xmm10, xmm9
movdqa xmm14, xmm10
pmaxub xmm14, xmm5
pcmpeqb xmm14, xmm10
movdqa xmm0, xmm2
paddb xmm0, xmm3
pand xmm0, xmm14
pandn xmm14, xmm10
por xmm14, xmm0
movdqa xmm0, xmm2
paddb xmm0, xmm1
movdqa xmm10, xmm0
pminub xmm10, xmm6
pcmpeqb xmm10, xmm0
movdqa xmm1, xmm2
pand xmm1, xmm7
movdqa xmm11, xmmword [0x1800d79f0]
paddb xmm1, xmm11
movdqa xmm0, xmm1
pminub xmm0, xmm4
pcmpeqb xmm0, xmm1
paddb xmm15, xmmword [str.aaaaaaaaaaaaaaaa]
paddb xmm14, xmmword [str.AAAAAAAAAAAAAAAA]
pand xmm15, xmm10
pandn xmm10, xmm14
por xmm10, xmm15
pand xmm2, xmm0
pandn xmm0, xmm10
por xmm0, xmm2
movdqu xmmword [rcx + 0x10], xmm0
movdqa xmm0, xmm13
movdqa xmm15, xmmword [0x1800d7950]
paddb xmm0, xmm15
movdqa xmm14, xmm0
pmaxub xmm14, xmm5
pcmpeqb xmm14, xmm0
movdqa xmm1, xmm13
paddb xmm1, xmm8
pand xmm1, xmm14
pandn xmm14, xmm0
por xmm14, xmm1
movdqa xmm0, xmm13
paddb xmm0, xmm9
movdqa xmm1, xmm0
pmaxub xmm1, xmm5
pcmpeqb xmm1, xmm0
movdqa xmm2, xmm13
paddb xmm2, xmm3
pand xmm2, xmm1
pandn xmm1, xmm0
por xmm1, xmm2
movdqa xmm0, xmm13
movdqa xmm2, xmmword [0x1800d79d0]
paddb xmm0, xmm2
movdqa xmm2, xmm0
pminub xmm2, xmm6
pcmpeqb xmm2, xmm0
movdqa xmm0, xmm13
pand xmm0, xmm7
paddb xmm0, xmm11
movdqa xmm10, xmm0
pminub xmm10, xmm4
pcmpeqb xmm10, xmm0
paddb xmm14, xmmword [str.aaaaaaaaaaaaaaaa]
paddb xmm1, xmmword [str.AAAAAAAAAAAAAAAA]
pand xmm14, xmm2
pandn xmm2, xmm1
por xmm2, xmm14
pand xmm13, xmm10
pandn xmm10, xmm2
por xmm10, xmm13
movdqu xmmword [rcx + 0x20], xmm10
movdqa xmm0, xmm12
paddb xmm0, xmm15
movdqa xmm14, xmm15
movdqa xmm13, xmm0
pmaxub xmm13, xmm5
pcmpeqb xmm13, xmm0
movdqa xmm1, xmm12
paddb xmm1, xmm8
pand xmm1, xmm13
pandn xmm13, xmm0
por xmm13, xmm1
movdqa xmm0, xmm12
paddb xmm0, xmm9
movdqa xmm1, xmm0
pmaxub xmm1, xmm5
pcmpeqb xmm1, xmm0
movdqa xmm2, xmm12
paddb xmm2, xmm3
pand xmm2, xmm1
pandn xmm1, xmm0
por xmm1, xmm2
movdqa xmm0, xmm12
paddb xmm0, xmmword [0x1800d79d0]
movdqa xmm2, xmm0
pminub xmm2, xmm6
pcmpeqb xmm2, xmm0
movdqa xmm0, xmm12
pand xmm0, xmm7
paddb xmm0, xmm11
movdqa xmm10, xmm0
pminub xmm10, xmm4
pcmpeqb xmm10, xmm0
movdqa xmm15, xmmword [str.aaaaaaaaaaaaaaaa]
paddb xmm13, xmm15
movdqa xmm11, xmmword [str.AAAAAAAAAAAAAAAA]
paddb xmm1, xmm11
pand xmm13, xmm2
pandn xmm2, xmm1
por xmm2, xmm13
pand xmm12, xmm10
pandn xmm10, xmm2
por xmm10, xmm12
movdqu xmmword [rcx + 0x30], xmm10
movdqu xmm12, xmmword [rcx + 0x40]
movdqa xmm0, xmm14
paddb xmm0, xmm12
movdqa xmm13, xmm0
pmaxub xmm13, xmm5
pcmpeqb xmm13, xmm0
paddb xmm8, xmm12
pand xmm8, xmm13
pandn xmm13, xmm0
por xmm13, xmm8
paddb xmm13, xmm15
paddb xmm9, xmm12
pmaxub xmm5, xmm9
pcmpeqb xmm5, xmm9
paddb xmm3, xmm12
pand xmm3, xmm5
pandn xmm5, xmm9
por xmm5, xmm3
paddb xmm5, xmm11
movdqa xmm0, xmmword [0x1800d79d0]
paddb xmm0, xmm12
pminub xmm6, xmm0
pcmpeqb xmm6, xmm0
pand xmm7, xmm12
paddb xmm7, xmmword [0x1800d79f0]
pminub xmm4, xmm7
pcmpeqb xmm4, xmm7
pand xmm13, xmm6
pandn xmm6, xmm5
por xmm6, xmm13
pand xmm12, xmm4
pandn xmm4, xmm6
por xmm4, xmm12
movdqu xmmword [rcx + 0x40], xmm4
movd xmm0, dword [rcx + 0x50]
movdqa xmm3, xmmword [0x1800d7b70]
paddb xmm3, xmm0
movdqa xmm1, xmmword [0x1800d7b80]
movdqa xmm2, xmm3
pminub xmm2, xmm1
pcmpeqb xmm2, xmm3
movdqa xmm4, xmmword [0x1800d7b90]
paddb xmm4, xmm0
pand xmm3, xmm2
pandn xmm2, xmm4
por xmm2, xmm3
movdqa xmm3, xmmword [0x1800d7bb0]
paddb xmm3, xmm0
pminub xmm1, xmm3
pcmpeqb xmm1, xmm3
movdqa xmm4, xmmword [0x1800d7bc0]
paddb xmm4, xmm0
pand xmm3, xmm1
pandn xmm1, xmm4
por xmm1, xmm3
movdqa xmm3, xmmword [0x1800d7be0]
paddb xmm3, xmm0
movdqa xmm4, xmmword [0x1800d7bf0]
pmaxub xmm4, xmm3
pcmpeqb xmm4, xmm3
movdqa xmm3, xmmword [0x1800d7c00]
pand xmm3, xmm0
paddb xmm3, xmmword [0x1800d7c10]
movdqa xmm5, xmmword [0x1800d7c20]
pmaxub xmm5, xmm3
pcmpeqb xmm5, xmm3
paddb xmm2, xmmword [str.aaaa]
paddb xmm1, xmmword [str.AAAA]
pand xmm1, xmm4
pandn xmm4, xmm2
por xmm4, xmm1
pand xmm4, xmm5
pandn xmm5, xmm0
por xmm5, xmm4
movd dword [rcx + 0x50], xmm5
movzx eax, byte [rcx + 0x54]
lea edx, [rax - 0x41]
cmp dl, 0x19
ja 0x180013c72
lea edx, [rax - 0x34]
add al, 0xb2
cmp dl, 0x1a
movzx r8d, al
movzx eax, dl
cmovae eax, r8d
add al, 0x41
jmp 0x180013c8f
lea edx, [rax - 0x61]
cmp dl, 0x19
ja 0x180013c8f
lea edx, [rax - 0x54]
add al, 0x92
cmp dl, 0x1a
movzx r8d, al
movzx eax, dl
cmovae eax, r8d
add al, 0x61
mov byte [rcx + 0x54], al
movzx eax, byte [rcx + 0x55]
lea edx, [rax - 0x41]
cmp dl, 0x1a
jae 0x180013cb5
lea edx, [rax - 0x34]
add al, 0xb2
cmp dl, 0x1a
movzx r8d, al
movzx eax, dl
cmovae eax, r8d
add al, 0x41
jmp 0x180013cd2
lea edx, [rax - 0x61]
cmp dl, 0x19
ja 0x180013cd2
lea edx, [rax - 0x54]
add al, 0x92
cmp dl, 0x1a
movzx r8d, al
movzx eax, dl
cmovae eax, r8d
add al, 0x61
mov byte [rcx + 0x55], al
movzx eax, byte [rcx + 0x56]
lea edx, [rax - 0x41]
cmp dl, 0x1a
jae 0x180013cf8
lea edx, [rax - 0x34]
add al, 0xb2
cmp dl, 0x1a
movzx r8d, al
movzx eax, dl
cmovae eax, r8d
add al, 0x41
jmp 0x180013d15
lea edx, [rax - 0x61]
cmp dl, 0x19
ja 0x180013d15
lea edx, [rax - 0x54]
add al, 0x92
cmp dl, 0x1a
movzx r8d, al
movzx eax, dl
cmovae eax, r8d
add al, 0x61
mov byte [rcx + 0x56], al
movaps xmm6, xmmword [rsp]
movaps xmm7, xmmword [rsp + 0x10]
movaps xmm8, xmmword [rsp + 0x20]
movaps xmm9, xmmword [rsp + 0x30]
movaps xmm10, xmmword [rsp + 0x40]
movaps xmm11, xmmword [rsp + 0x50]
movaps xmm12, xmmword [rsp + 0x60]
movaps xmm13, xmmword [rsp + 0x70]
movaps xmm14, xmmword [rsp + 0x80]
movaps xmm15, xmmword [rsp + 0x90]
add rsp, 0xa8
ret