Function at 0x100cc990
Capabilities:
Encode data using xor

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
sub esp, 0x24
mov ecx, dword [0x100fc338]
xor edx, edx
push esi
mov eax, dword [ecx]
mov dword [esp + 4], 0xaa9dada3
mov dword [esp + 8], 0xb5a3b1aa
mov word [esp + 0xc], 0xb8
mov esi, dword [eax + 0x34]
mov byte [esp + 0xe], 1
lea eax, [edx - 0x40]
xor byte [esp + edx + 4], al
inc edx
cmp edx, 9
jb 0x100cc9c3
lea eax, [esp + 4]
mov byte [esp + 0xe], 0
push eax
call esi
mov ecx, dword [0x100fc338]
xor edx, edx
mov dword [0x100fc380], eax
mov eax, dword [ecx]
mov dword [esp + 4], 0xb09dada3
mov dword [esp + 8], 0xb4a3a1ad
mov dword [esp + 0xc], 0xafafacb8
mov esi, dword [eax + 0x34]
mov word [esp + 0x10], 0x100
nop dword [eax]
lea eax, [edx - 0x40]
xor byte [esp + edx + 4], al
inc edx
cmp edx, 0xc
jb 0x100cca10
lea eax, [esp + 4]
mov byte [esp + 0x11], 0
push eax
call esi
mov ecx, dword [0x100fc338]
xor edx, edx
movaps xmm0, xmmword [0x100f0ac0]
mov dword [0x100fc384], eax
mov eax, dword [ecx]
movups xmmword [esp + 4], xmm0
mov byte [esp + 0x14], 1
mov esi, dword [eax + 0x34]
nop dword [eax]
lea eax, [edx - 0x40]
xor byte [esp + edx + 4], al
inc edx
cmp edx, 0xf
jb 0x100cca50
lea eax, [esp + 4]
mov byte [esp + 0x14], 0
push eax
call esi
mov ecx, dword [0x100fc338]
xor edx, edx
mov dword [0x100fc388], eax
mov eax, dword [ecx]
mov dword [esp + 4], 0xb69dada3
mov dword [esp + 8], 0xb3a7a1b4
mov dword [esp + 0xc], 0xbfabbbad
mov esi, dword [eax + 0x34]
mov word [esp + 0x10], 0xa9
mov byte [esp + 0x12], 1
nop
lea eax, [edx - 0x40]
xor byte [esp + edx + 4], al
inc edx
cmp edx, 0xd
jb 0x100ccaa0
lea eax, [esp + 4]
mov byte [esp + 0x12], 0
push eax
call esi
mov ecx, dword [0x100fc338]
xor edx, edx
movaps xmm0, xmmword [0x100f0ef0]
mov dword [0x100fc38c], eax
mov eax, dword [ecx]
movups xmmword [esp + 4], xmm0
mov dword [esp + 0x14], 0xb8958985
mov dword [esp + 0x18], 0x80899c8a
mov esi, dword [eax + 0x34]
mov dword [esp + 0x1c], 0x8cb19989
mov dword [esp + 0x20], 0x1008191
lea eax, [edx - 0x2c]
xor byte [esp + edx + 4], al
inc edx
cmp edx, 0x1e
jb 0x100ccaf7
lea eax, [esp + 4]
mov byte [esp + 0x23], 0
push eax
call esi
mov ecx, dword [0x100fc338]
xor edx, edx
movaps xmm0, xmmword [0x100f1530]
mov dword [0x100fc390], eax
mov eax, dword [ecx]
movups xmmword [esp + 4], xmm0
mov word [esp + 0x24], 0x8d
movaps xmm0, xmmword [0x100f15c0]
mov esi, dword [eax + 0x34]
movups xmmword [esp + 0x14], xmm0
mov byte [esp + 0x26], 1
lea eax, [edx - 0x40]
xor byte [esp + edx + 4], al
inc edx
cmp edx, 0x21
jb 0x100ccb46
lea eax, [esp + 4]
mov byte [esp + 0x26], 0
push eax
call esi
mov ecx, dword [0x100fc338]
xor edx, edx
movaps xmm0, xmmword [0x100f0ef0]
mov dword [0x100fc394], eax
mov eax, dword [ecx]
movups xmmword [esp + 4], xmm0
mov dword [esp + 0x24], 0x1008198
movaps xmm0, xmmword [0x100f0ff0]
mov esi, dword [eax + 0x34]
movups xmmword [esp + 0x14], xmm0
lea eax, [edx - 0x2c]
xor byte [esp + edx + 4], al
inc edx
cmp edx, 0x22
jb 0x100ccb91
lea eax, [esp + 4]
mov byte [esp + 0x27], 0
push eax
call esi
mov ecx, dword [0x100fc338]
xor edx, edx
mov dword [0x100fc398], eax
mov eax, dword [ecx]
mov dword [esp + 4], 0xa49db7b3
mov dword [esp + 8], 0xaeb0a4b6
mov dword [esp + 0xc], 0x100b0bc
mov esi, dword [eax + 0x34]
lea eax, [edx - 0x40]
xor byte [esp + edx + 4], al
inc edx
cmp edx, 0xa
jb 0x100ccbd4
lea eax, [esp + 4]
mov byte [esp + 0xf], 0
push eax
call esi
mov ecx, dword [0x100fc338]
xor edx, edx
movaps xmm0, xmmword [0x100f1380]
mov dword [0x100fc39c], eax
mov eax, dword [ecx]
movups xmmword [esp + 4], xmm0
mov word [esp + 0x14], 0xa3
mov byte [esp + 0x16], 1
mov esi, dword [eax + 0x34]
lea eax, [edx - 0x40]
xor byte [esp + edx + 4], al
inc edx
cmp edx, 0x11
jb 0x100ccc17
lea eax, [esp + 4]
mov byte [esp + 0x16], 0
push eax
call esi
mov ecx, dword [0x100fc338]
xor edx, edx
mov dword [0x100fc3a0], eax
mov eax, dword [ecx]
mov dword [esp + 4], 0xae9db7b3
mov dword [esp + 8], 0xa9b3bda5
mov dword [esp + 0xc], 0xada8a4
mov esi, dword [eax + 0x34]
mov byte [esp + 0x10], 1
nop
lea eax, [edx - 0x40]
xor byte [esp + edx + 4], al
inc edx
cmp edx, 0xb
jb 0x100ccc60
lea eax, [esp + 4]
mov byte [esp + 0x10], 0
push eax
call esi
mov ecx, dword [0x100fc338]
xor edx, edx
movaps xmm0, xmmword [0x100f1650]
mov dword [0x100fc3a4], eax
mov eax, dword [ecx]
movups xmmword [esp + 4], xmm0
mov dword [esp + 0x14], 0x82928385
mov dword [esp + 0x18], 0x8e98b69a
mov esi, dword [eax + 0x34]
mov dword [esp + 0x1c], 0x988f9d9f
mov word [esp + 0x20], 0x9e
mov byte [esp + 0x22], 1
nop dword [eax + eax]
lea eax, [edx - 0x2c]
xor byte [esp + edx + 4], al
inc edx
cmp edx, 0x1d
jb 0x100cccc0
lea eax, [esp + 4]
mov byte [esp + 0x22], 0
push eax
call esi
mov ecx, dword [0x100fc338]
xor edx, edx
movaps xmm0, xmmword [0x100f1210]
mov dword [0x100fc3a8], eax
mov eax, dword [ecx]
movups xmmword [esp + 4], xmm0
mov dword [esp + 0x14], 0xab879194
mov dword [esp + 0x18], 0x9a969890
mov esi, dword [eax + 0x34]
mov dword [esp + 0x1c], 0x1009f95
nop
lea eax, [edx - 0x1f]
xor byte [esp + edx + 4], al
inc edx
cmp edx, 0x1a
jb 0x100ccd10
lea eax, [esp + 4]
mov byte [esp + 0x1f], 0
push eax
call esi
mov ecx, dword [0x100fc338]
xor edx, edx
movaps xmm0, xmmword [0x100f1620]
mov dword [0x100fc3ac], eax
mov eax, dword [ecx]
movups xmmword [esp + 4], xmm0
mov dword [esp + 0x14], 0xb0bba5b1
mov dword [esp + 0x18], 0xa7b9a7a4
mov esi, dword [eax + 0x34]
mov word [esp + 0x1c], 0x100
nop
lea eax, [edx - 0x40]
xor byte [esp + edx + 4], al
inc edx
cmp edx, 0x18
jb 0x100ccd60
lea eax, [esp + 4]
mov byte [esp + 0x1d], 0
push eax
call esi
mov ecx, dword [0x100fc338]
xor edx, edx
movaps xmm0, xmmword [0x100f1090]
mov dword [0x100fc3b0], eax
mov eax, dword [ecx]
movups xmmword [esp + 4], xmm0
mov dword [esp + 0x14], 0x8882898b
mov dword [esp + 0x18], 0x98b5879f
mov esi, dword [eax + 0x34]
mov dword [esp + 0x1c], 0x81818e89
mov dword [esp + 0x20], 0x1008294
lea eax, [edx - 0x2c]
xor byte [esp + edx + 4], al
inc edx
cmp edx, 0x1e
jb 0x100ccdb7
lea eax, [esp + 4]
mov byte [esp + 0x23], 0
push eax
call esi
mov ecx, dword [0x100fc338]
xor edx, edx
mov dword [0x100fc3b4], eax
mov eax, dword [ecx]
mov dword [esp + 4], 0xaa9db1ad
mov dword [esp + 8], 0xaaa3a9a0
mov dword [esp + 0xc], 0xa2beb1a9
mov esi, dword [eax + 0x34]
mov dword [esp + 0x10], 0x100a8a1
lea eax, [edx - 0x40]
xor byte [esp + edx + 4], al
inc edx
cmp edx, 0xe
jb 0x100cce02
lea eax, [esp + 4]
mov byte [esp + 0x13], 0
push eax
call esi
mov dword [0x100fc3b8], eax
pop esi
mov esp, ebp
pop ebp
ret