Function at 0x100753b0
Capabilities:
Encode data using xor

Disassembly:
push ebx
mov ebx, esp
sub esp, 8
and esp, 0xfffffff0
add esp, 4
push ebp
mov ebp, dword [ebx + 4]
mov dword [esp + 4], ebp
mov ebp, esp
sub esp, 0x118
mov eax, dword [0x100f529c]
xor eax, ebp
mov dword [ebp - 4], eax
push esi
push edi
mov dl, byte [ebx + 0x10]
xorps xmm0, xmm0
mov eax, dword [ebx + 8]
mov dword [ebp - 0xe8], eax
movsx ecx, dl
mov eax, ecx
movq qword [ebp - 0x57], xmm0
shr eax, 0x1f
neg al
mov dword [ebp - 0x4f], 0
mov dword [ebp - 0xfc], eax
and al, dl
add al, al
mov word [ebp - 0x4b], 0
sub dl, al
mov byte [ebp - 0x49], 0
lea eax, [ecx - 1]
movq qword [ebp - 0x37], xmm0
shr eax, 0x1f
not ecx
shr ecx, 0x1f
and al, cl
mov dword [ebp - 0x2f], 0
neg al
mov dword [ebp - 0x2b], 0
and al, 1
movq qword [ebp - 0x17], xmm0
movups xmm4, xmmword [0x100c8740]
mov byte [ebp - 0x68], al
mov byte [ebp - 0x48], al
movzx eax, dl
mov dword [ebp - 0xf4], eax
mov eax, dword [ebx + 0xc]
lea esi, [ebp - 0x64]
mov dword [ebp - 0xf], 0
lea eax, [eax + eax*2]
mov word [ebp - 0xb], 0
shl eax, 8
mov edi, eax
mov byte [ebp - 9], 0
sub esi, eax
sub esi, 0x100c8bf8
lea ecx, [eax + 0x100c8bf8]
mov dword [ebp - 0xec], esi
mov dword [ebp - 0xe4], ecx
lea ecx, [ebp - 0x68]
sub edi, ecx
lea ecx, [eax + 0x100c8c57]
add edi, 0x100c8bf8
mov dword [ebp - 0xf0], ecx
movups xmmword [ebp - 0x67], xmm0
xor edx, edx
movups xmmword [ebp - 0x47], xmm0
movups xmmword [ebp - 0x27], xmm0
mov ecx, dword [ebp - 0xf4]
lea eax, [ebp - 0x68]
inc edx
xor ecx, edx
mov dword [ebp - 0xf8], edx
xor edx, edx
cmp eax, dword [ebp - 0xf0]
mov eax, dword [ebp - 0xe4]
movd xmm0, ecx
pshufd xmm3, xmm0, 0
ja 0x1007551b
lea esi, [ebp - 9]
cmp esi, eax
mov esi, dword [ebp - 0xec]
jb 0x1007551b
lea eax, [ecx - 1]
not ecx
shr ecx, 0x1f
shr eax, 0x1f
and cl, al
neg cl
mov dword [ebp - 0xec], ecx
nop dword [eax]
lea ecx, [ebp - 0x68]
add ecx, edx
inc edx
mov al, byte [ecx + edi]
and al, byte [ebp - 0xec]
xor byte [ecx], al
cmp edx, 0x60
jb 0x10075500
jmp 0x100755d1
mov ecx, 0x1f
movaps xmm0, xmm3
psubd xmm0, xmmword [0x100cf090]
pandn xmm3, xmm4
movd xmm1, ecx
mov ecx, 0xc
psrld xmm0, xmm1
psrld xmm3, xmm1
pshuflw xmm0, xmm0, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm2, xmm0, 0xd8
pand xmm2, xmmword [0x100cf0a0]
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm0, xmm0, 0xd8
pand xmm0, xmmword [0x100cf0a0]
packuswb xmm0, xmm0
packuswb xmm2, xmm2
pand xmm2, xmm0
xorps xmm0, xmm0
psubb xmm0, xmm2
movaps xmmword [ebp - 0x110], xmm0
mov edx, dword [ebp - 0x110]
nop
movd xmm0, dword [eax]
lea eax, [eax + 8]
movd xmm1, edx
pand xmm1, xmm0
movd xmm0, dword [eax + esi - 0xc]
pxor xmm1, xmm0
movd xmm0, edx
movd dword [eax + esi - 0xc], xmm1
movd xmm1, dword [eax - 4]
pand xmm1, xmm0
movd xmm0, dword [eax + esi - 8]
pxor xmm1, xmm0
movd dword [eax + esi - 8], xmm1
sub ecx, 1
jne 0x10075590
add dword [ebp - 0xe4], 0x60
sub esi, 0x60
add dword [ebp - 0xf0], 0x60
add edi, 0x60
mov edx, dword [ebp - 0xf8]
mov dword [ebp - 0xec], esi
cmp edx, 8
jl 0x100754b0
lea eax, [ebp - 0x68]
push eax
lea eax, [ebp - 0xb8]
push eax
call fcn.10070320
lea eax, [ebp - 0x48]
push eax
lea eax, [ebp - 0x90]
push eax
call fcn.10070320
lea eax, [ebp - 0x28]
push eax
lea eax, [ebp - 0xe0]
push eax
call fcn.10070320
mov edi, dword [ebp - 0xe8]
add esp, 0x18
movups xmm1, xmmword [ebp - 0x90]
mov eax, dword [ebp - 0xfc]
movups xmm3, xmmword [ebp - 0xb8]
movzx esi, al
movups xmm4, xmmword [ebp - 0xa8]
shr esi, 7
movups xmm2, xmmword [ebp - 0x80]
neg esi
movq xmm0, qword [ebp - 0x98]
movups xmm5, xmmword [ebp - 0xe0]
mov dword [ebp - 0xe4], esi
movups xmm6, xmmword [ebp - 0xd0]
movups xmmword [edi], xmm3
movups xmmword [edi + 0x10], xmm4
movq qword [edi + 0x20], xmm0
movq xmm0, qword [ebp - 0x70]
movups xmmword [edi + 0x28], xmm1
movups xmmword [edi + 0x38], xmm2
movq qword [edi + 0x48], xmm0
movq xmm0, qword [ebp - 0xc0]
movups xmmword [edi + 0x50], xmm5
movups xmmword [edi + 0x60], xmm6
movq qword [edi + 0x70], xmm0
movaps xmm0, xmm1
mov edx, dword [edi + 8]
movd eax, xmm1
psrldq xmm0, 4
xor eax, dword [edi]
and eax, esi
xor dword [edi], eax
movd eax, xmm0
movaps xmm0, xmm1
psrldq xmm0, 8
psrldq xmm1, 0xc
xor eax, dword [edi + 4]
and eax, esi
xor dword [edi + 4], eax
movd eax, xmm0
movaps xmm0, xmm2
psrldq xmm0, 4
xor edx, eax
movd eax, xmm1
and edx, esi
xor dword [edi + 8], edx
mov edx, dword [edi + 0xc]
xor edx, eax
movd eax, xmm2
and edx, esi
xor dword [edi + 0xc], edx
mov edx, dword [edi + 0x10]
xor edx, eax
movd eax, xmm0
and edx, esi
movaps xmm0, xmm2
xor dword [edi + 0x10], edx
mov edx, dword [edi + 0x14]
xor edx, eax
psrldq xmm0, 8
and edx, esi
movd eax, xmm0
xor dword [edi + 0x14], edx
mov edx, dword [edi + 0x18]
xor edx, eax
and edx, esi
xor dword [edi + 0x18], edx
movaps xmm0, xmm3
mov ecx, dword [edi + 0x20]
xor ecx, dword [ebp - 0x70]
mov edx, dword [edi + 0x1c]
and ecx, esi
xor dword [edi + 0x20], ecx
mov ecx, dword [edi + 0x24]
xor ecx, dword [ebp - 0x6c]
and ecx, esi
psrldq xmm2, 0xc
xor dword [edi + 0x24], ecx
movd eax, xmm2
psrldq xmm0, 4
mov ecx, dword [ebp - 0x98]
xor edx, eax
movd eax, xmm3
and edx, esi
xor dword [edi + 0x1c], edx
mov edx, dword [edi + 0x28]
xor edx, eax
xor ecx, dword [edi + 0x48]
and edx, esi
movd eax, xmm0
xor dword [edi + 0x28], edx
movaps xmm0, xmm3
mov edx, dword [edi + 0x2c]
and ecx, esi
xor edx, eax
psrldq xmm0, 8
movd eax, xmm0
and edx, esi
psrldq xmm3, 0xc
movaps xmm0, xmm4
xor dword [edi + 0x48], ecx
xor eax, dword [edi + 0x30]
and eax, esi
xor dword [edi + 0x2c], edx
xor dword [edi + 0x30], eax
mov edx, 0x7ffffda
movd eax, xmm3
psrldq xmm0, 4
mov ecx, dword [ebp - 0x94]
xor eax, dword [edi + 0x34]
and eax, esi
xor ecx, dword [edi + 0x4c]
xor dword [edi + 0x34], eax
and ecx, esi
movd eax, xmm4
xor dword [edi + 0x4c], ecx
xor eax, dword [edi + 0x38]
and eax, esi
xor dword [edi + 0x38], eax
movd eax, xmm0
movaps xmm0, xmm4
psrldq xmm0, 8
psrldq xmm4, 0xc
xor eax, dword [edi + 0x3c]
and eax, esi
xor dword [edi + 0x3c], eax
movd eax, xmm0
movaps xmm0, xmm5
psrldq xmm0, 4
xor eax, dword [edi + 0x40]
and eax, esi
xor dword [edi + 0x40], eax
movd eax, xmm4
xor eax, dword [edi + 0x44]
and eax, esi
xor dword [edi + 0x44], eax
movd eax, xmm5
sub edx, eax
movd eax, xmm0
xor edx, dword [edi + 0x50]
and edx, esi
xor dword [edi + 0x50], edx
mov edx, dword [edi + 0x54]
mov edi, 0x3fffffe
mov ecx, edi
sub ecx, eax
xor ecx, edx
mov eax, dword [ebp - 0xe8]
and ecx, esi
xor ecx, edx
movaps xmm0, xmm5
psrldq xmm0, 8
mov esi, 0x7fffffe
psrldq xmm5, 0xc
mov edx, dword [eax + 0x58]
mov dword [eax + 0x54], ecx
mov ecx, esi
movd eax, xmm0
movaps xmm0, xmm6
psrldq xmm0, 4
sub ecx, eax
mov eax, dword [ebp - 0xe8]
xor ecx, edx
and ecx, dword [ebp - 0xe4]
xor ecx, edx
mov edx, edi
mov dword [eax + 0x58], ecx
mov ecx, dword [eax + 0x5c]
movd eax, xmm5
sub edx, eax
mov eax, dword [ebp - 0xe8]
xor edx, ecx
and edx, dword [ebp - 0xe4]
xor edx, ecx
mov ecx, dword [eax + 0x60]
mov dword [eax + 0x5c], edx
mov edx, esi
movd eax, xmm6
sub edx, eax
mov eax, dword [ebp - 0xe8]
xor edx, ecx
and edx, dword [ebp - 0xe4]
xor edx, ecx
mov ecx, dword [eax + 0x64]
mov dword [eax + 0x60], edx
mov edx, edi
movd eax, xmm0
movaps xmm0, xmm6
psrldq xmm0, 8
psrldq xmm6, 0xc
sub edx, eax
mov eax, dword [ebp - 0xe8]
xor edx, ecx
and edx, dword [ebp - 0xe4]
xor edx, ecx
mov ecx, dword [eax + 0x68]
mov dword [eax + 0x64], edx
mov edx, esi
sub esi, dword [ebp - 0xc0]
movd eax, xmm0
sub edx, eax
mov eax, dword [ebp - 0xe8]
xor edx, ecx
and edx, dword [ebp - 0xe4]
xor edx, ecx
mov ecx, dword [eax + 0x6c]
mov dword [eax + 0x68], edx
mov edx, edi
sub edi, dword [ebp - 0xbc]
movd eax, xmm6
sub edx, eax
mov eax, dword [ebp - 0xe8]
xor edx, ecx
and edx, dword [ebp - 0xe4]
xor edx, ecx
mov ecx, dword [ebp - 4]
mov dword [eax + 0x6c], edx
xor ecx, ebp
mov edx, eax
xor edi, dword [edx + 0x74]
xor esi, dword [edx + 0x70]
and edi, dword [ebp - 0xe4]
and esi, dword [ebp - 0xe4]
xor dword [edx + 0x74], edi
xor dword [edx + 0x70], esi
pop edi
pop esi
call fcn.100a69cd
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret