Function at 0x10011425
Capabilities:
Encode data using xor

Disassembly:
push 0x64
mov eax, 0x10046280
call fcn.1004504e
xor ebx, ebx
mov ecx, 0xff
mov edx, ebx
mov al, byte [edx + 0x10047d70]
xor al, cl
inc ecx
mov byte [ebp + edx - 0x1c], al
and ecx, 0x800000ff
jns 0x10011457
dec ecx
or ecx, 0xffffff00
inc ecx
inc edx
cmp edx, 8
jl 0x1001143a
mov byte [ebp - 0x14], bl
lea eax, [ebp - 0x1c]
mov dword [ebp - 4], ebx
push eax
call fcn.10021f56
or esi, 0xffffffff
mov dword [ebp - 4], esi
movaps xmm0, xmmword [0x1004d380]
pop ecx
movups xmmword [ebp - 0x58], xmm0
mov dword [ebp - 0x48], 0xe7f6e0f0
mov ecx, ebx
mov dword [ebp - 0x44], 0xf7e5d5e1
mov dword [ebp - 0x40], 0xfdf3e9ea
mov dword [ebp - 0x3c], 0x100ecf4
lea eax, [ecx - 0x7f]
xor byte [ebp + ecx - 0x58], al
inc ecx
cmp ecx, 0x1e
jb 0x1001149c
lea ecx, [ebp - 0x20]
mov byte [ebp - 0x39], bl
mov dword [ebp - 0x20], 0x10203fc
mov dword [ebp - 0x1c], 0x5060700
mov dword [ebp - 0x18], 0xa0b04
mov byte [ebp - 0x14], 1
call fcn.1000151e
push ecx
lea ecx, [ebp - 0x58]
mov edx, 0x100c6833
push ecx
mov ecx, eax
call fcn.10028fe9
pop ecx
pop ecx
push 0x5f
pop ecx
mov edx, ebx
mov al, byte [edx + 0x10047d7c]
xor al, cl
inc ecx
mov byte [ebp + edx - 0x34], al
and ecx, 0x800000ff
jns 0x10011502
dec ecx
or ecx, 0xffffff00
inc ecx
inc edx
cmp edx, 0xf
jl 0x100114e5
mov byte [ebp - 0x25], bl
lea eax, [ebp - 0x34]
mov dword [ebp - 4], 1
push eax
call fcn.10021f56
mov dword [ebp - 4], esi
movaps xmm0, xmmword [0x1004d370]
movups xmmword [ebp - 0x68], xmm0
pop ecx
movaps xmm0, xmmword [0x1004cf40]
mov ecx, ebx
movups xmmword [ebp - 0x58], xmm0
mov word [ebp - 0x38], 0xd5
movaps xmm0, xmmword [0x1004d050]
movups xmmword [ebp - 0x48], xmm0
mov byte [ebp - 0x36], 1
lea eax, [ecx - 0x7f]
xor byte [ebp + ecx - 0x68], al
inc ecx
cmp ecx, 0x31
jb 0x1001154c
lea ecx, [ebp - 0x1c]
mov byte [ebp - 0x36], bl
mov dword [ebp - 0x1c], 0x203fcfd
mov dword [ebp - 0x18], 0x6070001
mov word [ebp - 0x14], 0x100
call fcn.10001405
push ecx
lea ecx, [ebp - 0x68]
mov edx, 0x100c6828
push ecx
mov ecx, eax
call fcn.10028fe9
cmp dword [0x100c6828], 7
pop ecx
pop ecx
jne 0x100115e2
lea ecx, [ebp - 0x1c]
mov dword [ebp - 0x1c], 0xf2ef2f3f
mov word [ebp - 0x18], 0xda
mov byte [ebp - 0x16], 1
call fcn.100012fd
push ecx
mov dword [esp], 0x3f800000
lea ecx, [ebp - 0x6c]
push str._.3f
push ecx
lea ecx, [ebp - 0x70]
mov dword [ebp - 0x70], 0xc2480000
push ecx
push 0x100500b4
push 4
pop edx
mov ecx, eax
mov dword [ebp - 0x6c], 0x42480000
call fcn.10023fab
add esp, 0x14
mov ecx, 0x95
mov edx, ebx
mov al, byte [edx + 0x10047d8c]
xor al, cl
inc ecx
mov byte [ebp + edx - 0x24], al
and ecx, 0x800000ff
jns 0x10011606
dec ecx
or ecx, 0xffffff00
inc ecx
inc edx
cmp edx, 0xe
jl 0x100115e9
mov byte [ebp - 0x16], bl
lea eax, [ebp - 0x24]
mov dword [ebp - 4], 2
push eax
call fcn.10021f56
pop ecx
mov dword [ebp - 4], esi
lea ecx, [ebp - 0x20]
mov dword [ebp - 0x20], 0x7000102
mov dword [ebp - 0x1c], 0xb040506
mov dword [ebp - 0x18], 0x100090a
call fcn.1000a2ee
push ecx
push 0xa6
push 0x100509b8
push 0x10028eaa
mov edx, 0x100500bc
mov ecx, eax
call fcn.10028f05
add esp, 0x10
mov ecx, 0xf3
mov edx, ebx
mov al, byte [edx + 0x10047d9c]
xor al, cl
inc ecx
mov byte [ebp + edx - 0x24], al
and ecx, 0x800000ff
jns 0x10011683
dec ecx
or ecx, 0xffffff00
inc ecx
inc edx
cmp edx, 0x11
jl 0x10011666
mov byte [ebp - 0x13], bl
lea eax, [ebp - 0x24]
mov dword [ebp - 4], 3
push eax
call fcn.10021f56
push 0x168
mov dword [ebp - 4], esi
push ecx
lea ecx, [ebp - 0x1c]
mov dword [ebp - 0x1c], 0x203fcfd
mov dword [ebp - 0x18], 0x70001
mov byte [ebp - 0x14], 1
call fcn.1000133f
mov esi, 0x100500b8
mov ecx, eax
mov edx, esi
call fcn.10024335
lea ecx, [ebp - 0x34]
mov dword [ebp - 0x34], 0x10203fc
mov dword [ebp - 0x30], 0x5060700
mov dword [ebp - 0x2c], 0x90a0b04
mov word [ebp - 0x28], 0x100
call fcn.1000155e
mov edx, esi
mov ecx, eax
call fcn.10028926
add esp, 0xc
call fcn.1004500c
ret