Function at 0x14003e9b0
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 + 0x4c]
test rax, rax
je 0x14003f003
mov dword [rcx + 0x4c], 0
lea rdx, [rcx + 0x4b]
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
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
cmp r8, 0x27
jne 0x14003ea20
mov edx, 1
movabs r8, 0x5851f42d4c957f2d
movabs r9, 0x14057b7ef767814f
nop dword [rax + rax]
imul rax, r8
add rax, r9
mov r10, rax
shr r10, 0x38
xor byte [rcx + rdx - 1], r10b
imul rax, r8
add rax, r9
mov r10, rax
shr r10, 0x38
xor byte [rcx + rdx], r10b
add rdx, 2
cmp rdx, 0x4d
jne 0x14003ea70
movdqu xmm10, xmmword [rcx]
movdqa xmm3, xmm10
paddb xmm3, xmmword [0x14005a590]
movdqa xmm5, xmmword [0x14005a5a0]
movdqa xmm13, xmm3
pmaxub xmm13, xmm5
pcmpeqb xmm13, xmm3
movdqa xmm6, xmmword [0x140059840]
movdqa xmm8, xmmword [0x14005a5b0]
movdqa xmm4, xmm10
paddb xmm4, xmm8
pand xmm4, xmm13
pandn xmm13, xmm3
por xmm13, xmm4
movdqa xmm9, xmmword [0x14005a5d0]
movdqa xmm4, xmm10
paddb xmm4, xmm9
movdqa xmm14, xmm4
pmaxub xmm14, xmm5
pcmpeqb xmm14, xmm4
movdqa xmm3, xmmword [0x14005a5e0]
movdqa xmm7, xmm10
paddb xmm7, xmm3
pand xmm7, xmm14
pandn xmm14, xmm4
por xmm14, xmm7
movdqa xmm0, xmmword [0x14005a600]
movdqa xmm4, xmm10
paddb xmm4, xmm0
movdqa xmm1, xmm0
movdqa xmm15, xmm4
pminub xmm15, xmm6
pcmpeqb xmm15, xmm4
movdqa xmm7, xmmword [0x14005a610]
movdqa xmm12, xmm10
pand xmm12, xmm7
paddb xmm12, xmmword [0x14005a620]
movdqa xmm4, xmmword [0x14005a630]
movdqa xmm11, xmm12
pminub xmm11, xmm4
pcmpeqb xmm11, xmm12
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 xmm10, xmm11
pandn xmm11, xmm15
movdqu xmm13, xmmword [rcx + 0x20]
por xmm11, xmm10
movdqu xmm10, xmmword [rcx + 0x30]
movdqu xmmword [rcx], xmm11
movdqa xmm11, xmm2
paddb xmm11, xmmword [0x14005a590]
movdqa xmm15, xmm11
pmaxub xmm15, xmm5
pcmpeqb xmm15, xmm11
movdqa xmm14, xmm2
paddb xmm14, xmm8
pand xmm14, xmm15
pandn xmm15, xmm11
por xmm15, xmm14
movdqa xmm11, xmm2
paddb xmm11, xmm9
movdqa xmm14, xmm11
pmaxub xmm14, xmm5
pcmpeqb xmm14, xmm11
movdqa xmm0, xmm2
paddb xmm0, xmm3
pand xmm0, xmm14
pandn xmm14, xmm11
por xmm14, xmm0
movdqa xmm0, xmm2
paddb xmm0, xmm1
movdqa xmm11, xmm0
pminub xmm11, xmm6
pcmpeqb xmm11, xmm0
movdqa xmm1, xmm2
pand xmm1, xmm7
movdqa xmm12, xmmword [0x14005a620]
paddb xmm1, xmm12
movdqa xmm0, xmm1
pminub xmm0, xmm4
pcmpeqb xmm0, xmm1
paddb xmm15, xmmword [str.aaaaaaaaaaaaaaaa]
paddb xmm14, xmmword [str.AAAAAAAAAAAAAAAA]
pand xmm15, xmm11
pandn xmm11, xmm14
por xmm11, xmm15
pand xmm2, xmm0
pandn xmm0, xmm11
por xmm0, xmm2
movdqu xmmword [rcx + 0x10], xmm0
movdqa xmm0, xmm13
movdqa xmm1, xmmword [0x14005a590]
paddb xmm0, xmm1
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
paddb xmm0, xmmword [0x14005a600]
movdqa xmm2, xmm0
pminub xmm2, xmm6
pcmpeqb xmm2, xmm0
movdqa xmm0, xmm13
pand xmm0, xmm7
paddb xmm0, xmm12
movdqa xmm11, xmm0
pminub xmm11, xmm4
pcmpeqb xmm11, xmm0
movdqa xmm12, xmmword [str.aaaaaaaaaaaaaaaa]
paddb xmm14, xmm12
movdqa xmm15, xmmword [str.AAAAAAAAAAAAAAAA]
paddb xmm1, xmm15
pand xmm14, xmm2
pandn xmm2, xmm1
por xmm2, xmm14
pand xmm13, xmm11
pandn xmm11, xmm2
por xmm11, xmm13
movdqu xmmword [rcx + 0x20], xmm11
movdqa xmm0, xmmword [0x14005a590]
paddb xmm0, xmm10
movdqa xmm13, xmm0
pmaxub xmm13, xmm5
pcmpeqb xmm13, xmm0
paddb xmm8, xmm10
pand xmm8, xmm13
pandn xmm13, xmm0
por xmm13, xmm8
paddb xmm13, xmm12
paddb xmm9, xmm10
pmaxub xmm5, xmm9
pcmpeqb xmm5, xmm9
paddb xmm3, xmm10
pand xmm3, xmm5
pandn xmm5, xmm9
por xmm5, xmm3
paddb xmm5, xmm15
movdqa xmm0, xmmword [0x14005a600]
paddb xmm0, xmm10
pminub xmm6, xmm0
pcmpeqb xmm6, xmm0
pand xmm7, xmm10
paddb xmm7, xmmword [0x14005a620]
pminub xmm4, xmm7
pcmpeqb xmm4, xmm7
pand xmm13, xmm6
pandn xmm6, xmm5
por xmm6, xmm13
pand xmm10, xmm4
pandn xmm4, xmm6
por xmm4, xmm10
movdqu xmmword [rcx + 0x30], xmm4
movq xmm0, qword [rcx + 0x40]
movdqa xmm3, xmmword [0x14005a640]
paddb xmm3, xmm0
movdqa xmm1, xmmword [0x14005a650]
movdqa xmm2, xmm3
pminub xmm2, xmm1
pcmpeqb xmm2, xmm3
movdqa xmm4, xmmword [0x14005a660]
paddb xmm4, xmm0
pand xmm3, xmm2
pandn xmm2, xmm4
por xmm2, xmm3
movdqa xmm3, xmmword [0x14005a680]
paddb xmm3, xmm0
pminub xmm1, xmm3
pcmpeqb xmm1, xmm3
movdqa xmm4, xmmword [0x14005a690]
paddb xmm4, xmm0
pand xmm3, xmm1
pandn xmm1, xmm4
por xmm1, xmm3
movdqa xmm3, xmmword [0x14005a6b0]
paddb xmm3, xmm0
movdqa xmm4, xmmword [0x140059850]
pmaxub xmm4, xmm3
pcmpeqb xmm4, xmm3
movdqa xmm3, xmmword [0x14005a6c0]
pand xmm3, xmm0
paddb xmm3, xmmword [0x14005a6d0]
movdqa xmm5, xmmword [0x14005a6e0]
pmaxub xmm5, xmm3
pcmpeqb xmm5, xmm3
paddb xmm2, xmmword [str.aaaaaaaa]
paddb xmm1, xmmword [str.AAAAAAAA]
pand xmm1, xmm4
pandn xmm4, xmm2
por xmm4, xmm1
pand xmm4, xmm5
pandn xmm5, xmm0
por xmm5, xmm4
movq qword [rcx + 0x40], xmm5
movzx eax, byte [rcx + 0x48]
lea edx, [rax - 0x41]
cmp dl, 0x19
ja 0x14003ef1a
lea edx, [rax - 0x34]
add al, 0xb2
cmp dl, 0x1a
movzx r8d, al
movzx eax, dl
cmovae eax, r8d
add al, 0x41
jmp 0x14003ef37
lea edx, [rax - 0x61]
cmp dl, 0x19
ja 0x14003ef37
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 + 0x48], al
movzx eax, byte [rcx + 0x49]
lea edx, [rax - 0x41]
cmp dl, 0x1a
jae 0x14003ef5d
lea edx, [rax - 0x34]
add al, 0xb2
cmp dl, 0x1a
movzx r8d, al
movzx eax, dl
cmovae eax, r8d
add al, 0x41
jmp 0x14003ef7a
lea edx, [rax - 0x61]
cmp dl, 0x19
ja 0x14003ef7a
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 + 0x49], al
movzx eax, byte [rcx + 0x4a]
lea edx, [rax - 0x41]
cmp dl, 0x1a
jae 0x14003efa0
lea edx, [rax - 0x34]
add al, 0xb2
cmp dl, 0x1a
movzx r8d, al
movzx eax, dl
cmovae eax, r8d
add al, 0x41
jmp 0x14003efbd
lea edx, [rax - 0x61]
cmp dl, 0x19
ja 0x14003efbd
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 + 0x4a], al
movzx eax, byte [rcx + 0x4b]
lea edx, [rax - 0x41]
cmp dl, 0x1a
jae 0x14003efe3
lea edx, [rax - 0x34]
add al, 0xb2
cmp dl, 0x1a
movzx r8d, al
movzx eax, dl
cmovae eax, r8d
add al, 0x41
jmp 0x14003f000
lea edx, [rax - 0x61]
cmp dl, 0x19
ja 0x14003f000
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 + 0x4b], 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