Function at 0x401050
Capabilities:
Encode data using xor

Disassembly:
mov ecx, str..___
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x401058
xor eax, eax
sub ecx, edx
je 0x4010ec
cmp ecx, 0x40
jb 0x4010d5
movaps xmm2, xmmword [0x41a960]
mov edx, ecx
and edx, 0xffffffc0
nop word [eax + eax]
movups xmm0, xmmword [eax + str..___]
movaps xmm1, xmm2
pxor xmm0, xmm2
movups xmmword [eax + str..___], xmm0
movups xmm0, xmmword [eax + 0x41c904]
pxor xmm1, xmm0
movups xmmword [eax + 0x41c904], xmm1
movups xmm0, xmmword [eax + str.._AVbad_exception_std__]
movaps xmm1, xmm2
pxor xmm0, xmm2
movups xmmword [eax + str.._AVbad_exception_std__], xmm0
movups xmm0, xmmword [eax + 0x41c924]
pxor xmm1, xmm0
movups xmmword [eax + 0x41c924], xmm1
add eax, 0x40
cmp eax, edx
jb 0x401080
cmp eax, ecx
jae 0x4010ec
nop dword [eax]
xor byte [eax + str..___], 0x18
inc eax
cmp eax, ecx
jb 0x4010e0
mov ecx, str.pllh
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x4010f4
xor eax, eax
sub ecx, edx
je 0x40117c
cmp ecx, 0x40
jb 0x401164
movaps xmm2, xmmword [0x41a960]
mov edx, ecx
and edx, 0xffffffc0
movups xmm0, xmmword [eax + str.pllh]
movaps xmm1, xmm2
pxor xmm0, xmm2
movups xmmword [eax + str.pllh], xmm0
movups xmm0, xmmword [eax + 0x41c90c]
pxor xmm1, xmm0
movups xmmword [eax + vtable.type_info.0], xmm1
movups xmm0, xmmword [eax + 0x41c91c]
pxor xmm0, xmm2
movups xmmword [eax + 0x41c91c], xmm0
movups xmm0, xmmword [eax + 0x41c92c]
pxor xmm0, xmm2
movups xmmword [eax + vtable.type_info.0], xmm0
add eax, 0x40
cmp eax, edx
jb 0x401112
cmp eax, ecx
jae 0x40117c
nop dword [eax + eax]
xor byte [eax + str.pllh], 0x18
inc eax
cmp eax, ecx
jb 0x401170
mov ecx, str.__6_._6__6___
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x401184
xor eax, eax
sub ecx, edx
je 0x40120c
cmp ecx, 0x40
jb 0x4011f4
movaps xmm2, xmmword [0x41a960]
mov edx, ecx
and edx, 0xffffffc0
movups xmm0, xmmword [eax + str.__6_._6__6___]
movaps xmm1, xmm2
pxor xmm0, xmm2
movups xmmword [eax + str.__6_._6__6___], xmm0
movups xmm0, xmmword [eax + str..___]
pxor xmm1, xmm0
movups xmmword [eax + str..___], xmm1
movups xmm0, xmmword [eax + 0x41c904]
pxor xmm0, xmm2
movups xmmword [eax + 0x41c904], xmm0
movups xmm0, xmmword [eax + str.._AVbad_exception_std__]
pxor xmm0, xmm2
movups xmmword [eax + str.._AVbad_exception_std__], xmm0
add eax, 0x40
cmp eax, edx
jb 0x4011a2
cmp eax, ecx
jae 0x40120c
nop dword [eax + eax]
xor byte [eax + str.__6_._6__6___], 0x18
inc eax
cmp eax, ecx
jb 0x401200
mov ecx, str.qtk7________6zqv
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x401214
xor eax, eax
sub ecx, edx
je 0x40129c
cmp ecx, 0x40
jb 0x401284
movaps xmm2, xmmword [0x41a960]
mov edx, ecx
and edx, 0xffffffc0
movups xmm0, xmmword [eax + str.qtk7________6zqv]
movaps xmm1, xmm2
pxor xmm0, xmm2
movups xmmword [eax + str.qtk7________6zqv], xmm0
movups xmm0, xmmword [eax + 0x41c8c0]
pxor xmm1, xmm0
movups xmmword [eax + 0x41c8c0], xmm1
movups xmm0, xmmword [eax + 0x41c8d0]
pxor xmm0, xmm2
movups xmmword [eax + 0x41c8d0], xmm0
movups xmm0, xmmword [eax + 0x41c8e0]
pxor xmm0, xmm2
movups xmmword [eax + 0x41c8e0], xmm0
add eax, 0x40
cmp eax, edx
jb 0x401232
cmp eax, ecx
jae 0x40129c
nop dword [eax + eax]
xor byte [eax + str.qtk7________6zqv], 0x18
inc eax
cmp eax, ecx
jb 0x401290
ret