Function at 0x180038ae0
Capabilities:
Encode data using xor

Disassembly:
push rsi
push rdi
push rbp
push rbx
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
cmp byte [0x180052053], 0
jne 0x180038ea0
lea rdx, [rcx + 0x38]
lea rax, [0x180052038]
cmp rdx, rax
jbe 0x180038b64
lea rdx, [0x180052053]
cmp rcx, rdx
jae 0x180038b64
xor edx, edx
jmp 0x180038e00
movq xmm7, qword [rcx + 0x1d]
movq xmm4, qword [rcx]
movdqa xmm2, xmmword [str.]
movdqa xmm5, xmmword [0x180042fb0]
movdqa xmm0, xmm4
pxor xmm0, xmm5
movdqa xmm8, xmm4
pandn xmm8, xmm0
movdqa xmm0, xmmword [0x180042fc0]
movdqa xmm11, xmm4
pand xmm11, xmm0
movdqa xmm6, xmm4
por xmm6, xmm0
movdqa xmm9, xmm11
pxor xmm9, xmm6
pcmpeqd xmm1, xmm1
movdqa xmm10, xmm7
pxor xmm10, xmm2
movdqa xmm3, xmmword [0x180042fd0]
pand xmm6, xmm3
pand xmm8, xmm2
por xmm8, xmm6
movdqa xmm6, xmmword [0x180042fe0]
movdqa xmm12, xmm4
pxor xmm12, xmm6
pand xmm12, xmm11
pandn xmm11, xmm3
por xmm11, xmm12
pxor xmm11, xmm8
pxor xmm4, xmm0
pxor xmm9, xmm1
por xmm9, xmm4
pandn xmm11, xmm9
movdqa xmm8, xmmword [str.mmmmmmmm]
pxor xmm7, xmm8
pand xmm10, xmm7
movdqa xmm4, xmmword [str.KKKKKKKK]
pand xmm10, xmm4
por xmm10, xmm7
movdqa xmm7, xmmword [0x180043010]
movdqa xmm12, xmm11
pand xmm12, xmm7
movdqa xmm9, xmmword [str._t_t_t_t_t_t_t_t]
por xmm12, xmm9
pand xmm11, xmm4
pxor xmm11, xmm10
pxor xmm11, xmm12
movdqa xmm10, xmmword [0x180043030]
pxor xmm11, xmm10
movq qword [0x180052038], xmm11
movq xmm12, qword [rcx + 8]
movdqa xmm11, xmm12
pxor xmm11, xmm5
movdqa xmm13, xmm12
pandn xmm13, xmm11
movdqa xmm11, xmm12
pand xmm11, xmm0
movdqa xmm14, xmm12
por xmm14, xmm0
movdqa xmm15, xmm11
pxor xmm15, xmm14
pand xmm14, xmm3
pand xmm13, xmm2
por xmm13, xmm14
movdqa xmm14, xmm12
pxor xmm14, xmm6
pand xmm14, xmm11
pandn xmm11, xmm3
por xmm11, xmm14
movq xmm14, qword [rcx + 0x25]
pxor xmm11, xmm13
movdqa xmm13, xmm14
pxor xmm13, xmm2
pxor xmm12, xmm0
pxor xmm15, xmm1
por xmm15, xmm12
pandn xmm11, xmm15
pxor xmm14, xmm8
pand xmm13, xmm14
pand xmm13, xmm4
por xmm13, xmm14
movdqa xmm12, xmm11
pand xmm12, xmm7
por xmm12, xmm9
pand xmm11, xmm4
pxor xmm11, xmm13
pxor xmm11, xmm12
pxor xmm11, xmm10
movq qword [0x180052040], xmm11
movq xmm11, qword [rcx + 0x2d]
movq xmm13, qword [rcx + 0x10]
pxor xmm5, xmm13
movdqa xmm14, xmm13
pandn xmm14, xmm5
movdqa xmm5, xmm13
pand xmm5, xmm0
movdqa xmm15, xmm13
por xmm15, xmm0
movdqa xmm12, xmm11
pxor xmm12, xmm2
pand xmm14, xmm2
movdqa xmm2, xmm5
pxor xmm2, xmm15
pand xmm15, xmm3
por xmm14, xmm15
pxor xmm6, xmm13
pand xmm6, xmm5
pandn xmm5, xmm3
por xmm5, xmm6
pxor xmm5, xmm14
pxor xmm13, xmm0
pxor xmm2, xmm1
por xmm2, xmm13
pandn xmm5, xmm2
pxor xmm11, xmm8
pand xmm12, xmm11
pand xmm12, xmm4
por xmm12, xmm11
pand xmm7, xmm5
por xmm7, xmm9
pand xmm5, xmm4
pxor xmm5, xmm12
pxor xmm5, xmm7
pxor xmm5, xmm10
movq qword [0x180052048], xmm5
mov edx, 0x18
nop dword [rax + rax]
movzx r9d, byte [rcx + rdx]
movzx r8d, byte [rcx + rdx + 0x1d]
mov r10d, r9d
not r10b
mov r11d, r9d
xor r11b, 6
and r11b, r10b
mov ebx, r9d
and bl, 0xd9
mov r10d, r9d
xor r10b, 0xc8
and r10b, bl
not bl
mov esi, r8d
xor sil, 2
mov edi, r9d
or dil, 0xd9
mov ebp, edi
and bpl, 0xe8
and r11b, 0x26
or r11b, bpl
xor dil, bl
and bl, 0xe8
or r10b, bl
xor r10b, r11b
xor r9b, 0xd9
or r9b, dil
xor r8b, 0x6d
and sil, r8b
not r10b
and r10b, r9b
and sil, 0x4b
or sil, r8b
mov r8d, r10d
and r8b, 0xb4
or r8b, 9
and r10b, 0x4b
xor r10b, sil
xor r10b, r8b
xor r10b, 0xbd
mov byte [rdx + rax], r10b
inc rdx
cmp rdx, 0x1b
jne 0x180038e00
mov byte [0x180052053], 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, 0xa8
pop rbx
pop rbp
pop rdi
pop rsi
ret