Function at 0x180032ed0
Capabilities:
Encode data using xor

Disassembly:
push rsi
push rdi
push rbx
sub rsp, 0xa0
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
cmp byte [0x18004bf48], 0
jne 0x180033230
lea rdx, [rcx + 0x2d]
lea rax, [0x18004bf32]
cmp rdx, rax
jbe 0x180032f53
lea rdx, [0x18004bf48]
cmp rcx, rdx
jae 0x180032f53
xor edx, edx
jmp 0x180033140
xor edx, edx
movdqa xmm0, xmmword [0x18003da00]
movdqa xmm1, xmmword [0x18003da10]
movdqa xmm3, xmmword [0x18003da30]
movdqa xmm6, xmmword [0x18003da60]
pcmpeqd xmm7, xmm7
movdqa xmm15, xmmword [0x18003dae0]
movdqa xmm2, xmmword [str.____]
movdqa xmm4, xmmword [0x18003db00]
movdqa xmm5, xmmword [str.UUUU]
movdqa xmm8, xmmword [0x18003db20]
nop word cs:[rax + rax]
movd xmm13, dword [rcx + rdx + 0x17]
movd xmm10, dword [rcx + rdx]
movdqa xmm14, xmm13
pand xmm14, xmm0
movdqa xmm12, xmm13
pandn xmm12, xmm1
movdqa xmm9, xmm13
pand xmm9, xmmword [0x18003da20]
por xmm9, xmm12
por xmm9, xmmword [0x18003da50]
movdqa xmm12, xmm13
pand xmm12, xmm3
por xmm12, xmmword [str.MMMM]
pxor xmm12, xmm9
movdqa xmm9, xmm13
pandn xmm9, xmmword [0x18003da80]
movdqa xmm11, xmm13
pand xmm11, xmm1
por xmm11, xmm9
movdqa xmm9, xmm14
por xmm11, xmmword [str.VVVV]
pxor xmm11, xmm14
por xmm14, xmm6
pxor xmm9, xmmword [0x18003da70]
pand xmm9, xmm12
pandn xmm12, xmm14
por xmm9, xmm12
pxor xmm11, xmmword [str.WWWW]
pxor xmm13, xmm0
por xmm13, xmm11
pxor xmm13, xmm7
por xmm13, xmm9
movdqa xmm9, xmm10
pand xmm9, xmm0
movdqa xmm11, xmm9
movdqa xmm12, xmm10
pand xmm12, xmm15
por xmm12, xmm2
pxor xmm12, xmm9
por xmm9, xmm6
movdqa xmm14, xmm10
pand xmm14, xmm6
pxor xmm14, xmmword [0x18003dac0]
pand xmm14, xmm9
movdqa xmm9, xmm10
pand xmm9, xmm3
pxor xmm9, xmmword [0x18003dab0]
pxor xmm11, xmmword [0x18003dad0]
pand xmm11, xmm9
por xmm11, xmm14
pxor xmm12, xmm4
pxor xmm10, xmm0
por xmm10, xmm12
pxor xmm10, xmm7
por xmm10, xmm11
movdqa xmm9, xmm13
movdqa xmm11, xmm10
pxor xmm11, xmm5
pxor xmm13, xmm8
pand xmm13, xmm11
pxor xmm9, xmm5
pxor xmm10, xmm8
pand xmm10, xmm9
por xmm10, xmm13
movd dword [rdx + rax], xmm10
add rdx, 4
cmp rdx, 0x14
jne 0x180032fb0
mov edx, 0x14
nop word cs:[rax + rax]
movzx r8d, byte [rcx + rdx]
movzx r9d, byte [rcx + rdx + 0x17]
mov r11d, r9d
not r11b
mov r10d, r9d
and r10b, 0x5e
mov ebx, r11d
and bl, 1
mov esi, r9d
and sil, 0x20
or sil, bl
mov ebx, r9d
and bl, 0x80
or bl, 0x4d
or sil, 0x96
xor sil, bl
lea edi, [r10 + 0x21]
lea ebx, [r10 - 0x80]
xor bl, dil
and bl, sil
xor bl, dil
and r11b, 0xa0
mov esi, r9d
and sil, 1
or sil, r11b
or sil, 0x56
xor sil, r10b
xor sil, 0x57
xor r9b, 0x5e
or r9b, sil
not r9b
or r9b, bl
mov r10d, r8d
and r10b, 0x80
xor r10b, 0x90
mov r11d, r8d
and r11b, 0x5e
lea esi, [r11 + 0x21]
mov ebx, r8d
and bl, 0xa1
or bl, 0x40
xor bl, r11b
xor r11b, 0xce
and r11b, r10b
mov r10d, r8d
and r10b, 0x21
xor r10b, 0xef
and r10b, sil
or r11b, r10b
xor bl, 0xe1
xor r8b, 0x5e
or r8b, bl
not r8b
or r8b, r11b
mov r10d, r9d
xor r10b, 0x55
mov r11d, r8d
xor r11b, 0x55
xor r9b, 0xaa
and r9b, r11b
xor r8b, 0xaa
and r8b, r10b
or r8b, r9b
mov byte [rdx + rax], r8b
inc rdx
cmp rdx, 0x16
jne 0x180033140
mov byte [0x18004bf48], 1
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, 0xa0
pop rbx
pop rdi
pop rsi
ret