Function at 0x1013eb50
Capabilities:
Encode data using xor

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x160
mov eax, dword [0x11ad127c]
xor eax, ebp
mov dword [ebp - 8], eax
mov eax, dword [ebp + 8]
mov edx, dword [ebp + 0xc]
push ebx
mov ebx, dword [ebp + 0x18]
push esi
mov esi, dword [ebp + 0x10]
push edi
mov edi, dword [ebp + 0x14]
push ecx
lea ecx, [ebp - 0x14c]
mov dword [ebp - 0x15c], eax
call fcn.100ad870
push ecx
mov edx, esi
lea ecx, [ebp - 0x13c]
call fcn.100ad870
push ecx
mov edx, edi
lea ecx, [ebp - 0xcc]
call fcn.100ad870
push ecx
mov edx, ebx
lea ecx, [ebp - 0xbc]
call fcn.100ad870
lea eax, [ebp - 0x48]
mov dword [ebp - 0x158], 4
lea ecx, [ebp - 0x12c]
mov dword [ebp - 0x154], eax
mov dword [ebp - 0x150], ecx
mov edi, dword [ecx]
mov esi, dword [ecx - 0x1c]
mov eax, esi
mov ebx, dword [ecx - 0x20]
mov ecx, ebx
shr eax, 2
and eax, 0xffc03fc0
shr ecx, 2
and ecx, 0xffc03fc0
add ecx, eax
mov eax, edi
shr eax, 2
and eax, 0xffc03fc0
add ecx, eax
mov eax, dword [ebp - 0x150]
mov edx, dword [eax + 4]
mov eax, esi
and eax, 0xff00ff
shr edx, 2
and edx, 0xffc03fc0
shr esi, 2
add edx, 0xff800080
and esi, 0x3fc03fc0
add edx, ecx
mov ecx, ebx
and ecx, 0xff00ff
shr ebx, 2
add ecx, eax
and ebx, 0x3fc03fc0
mov eax, edi
add ebx, esi
and eax, 0xff00ff
shr edi, 2
add ecx, eax
and edi, 0x3fc03fc0
mov eax, dword [ebp - 0x150]
add ebx, edi
mov eax, dword [eax + 4]
and eax, 0xff00ff
add eax, 0x10001
add eax, ecx
mov ecx, dword [ebp - 0x150]
shr eax, 2
xor edx, eax
and edx, 0xff00ff
mov eax, dword [ecx + 4]
mov edi, dword [ecx + 8]
mov esi, dword [ecx - 0x14]
shr eax, 2
and eax, 0x3fc03fc0
add eax, 0x800080
add eax, ebx
mov ebx, dword [ecx - 0x18]
xor edx, eax
mov ecx, ebx
mov eax, dword [ebp - 0x154]
shr ecx, 2
and ecx, 0xffc03fc0
mov dword [eax - 4], edx
mov eax, esi
shr eax, 2
and eax, 0xffc03fc0
add ecx, eax
mov eax, edi
shr eax, 2
and eax, 0xffc03fc0
add ecx, eax
mov eax, dword [ebp - 0x150]
mov edx, dword [eax + 0xc]
mov eax, esi
shr edx, 2
and eax, 0xff00ff
and edx, 0xffc03fc0
add edx, 0xff800080
add edx, ecx
mov ecx, ebx
and ecx, 0xff00ff
add ecx, eax
mov eax, edi
and eax, 0xff00ff
add ecx, eax
mov eax, dword [ebp - 0x150]
shr ebx, 2
and ebx, 0x3fc03fc0
shr esi, 2
and esi, 0x3fc03fc0
shr edi, 2
mov eax, dword [eax + 0xc]
add ebx, esi
and eax, 0xff00ff
and edi, 0x3fc03fc0
add eax, 0x10001
add ebx, edi
add eax, ecx
mov ecx, dword [ebp - 0x150]
shr eax, 2
xor edx, eax
and edx, 0xff00ff
mov eax, dword [ecx + 0xc]
mov edi, dword [ecx + 0x10]
mov esi, dword [ecx - 0xc]
shr eax, 2
and eax, 0x3fc03fc0
add eax, 0x800080
add eax, ebx
mov ebx, dword [ecx - 0x10]
xor edx, eax
mov ecx, ebx
mov eax, dword [ebp - 0x154]
shr ecx, 2
and ecx, 0xffc03fc0
mov dword [eax], edx
mov eax, esi
shr eax, 2
and eax, 0xffc03fc0
add ecx, eax
mov eax, edi
shr eax, 2
and eax, 0xffc03fc0
add ecx, eax
mov eax, dword [ebp - 0x150]
mov edx, dword [eax + 0x14]
mov eax, esi
and eax, 0xff00ff
shr edx, 2
and edx, 0xffc03fc0
shr esi, 2
add edx, 0xff800080
and esi, 0x3fc03fc0
add edx, ecx
mov ecx, ebx
and ecx, 0xff00ff
shr ebx, 2
add ecx, eax
and ebx, 0x3fc03fc0
mov eax, edi
add ebx, esi
and eax, 0xff00ff
shr edi, 2
add ecx, eax
and edi, 0x3fc03fc0
mov eax, dword [ebp - 0x150]
add ebx, edi
mov eax, dword [eax + 0x14]
and eax, 0xff00ff
add eax, 0x10001
add eax, ecx
mov ecx, dword [ebp - 0x150]
shr eax, 2
xor edx, eax
and edx, 0xff00ff
mov eax, dword [ecx + 0x14]
mov edi, dword [ecx + 0x18]
mov esi, dword [ecx - 4]
shr eax, 2
and eax, 0x3fc03fc0
add eax, 0x800080
add eax, ebx
mov ebx, dword [ecx - 8]
xor edx, eax
mov eax, dword [ebp - 0x154]
mov dword [eax + 4], edx
mov ecx, ebx
mov eax, esi
shr eax, 2
and eax, 0xffc03fc0
shr ecx, 2
and ecx, 0xffc03fc0
add ecx, eax
mov eax, edi
shr eax, 2
and eax, 0xffc03fc0
add ecx, eax
mov eax, dword [ebp - 0x150]
mov edx, dword [eax + 0x1c]
mov eax, esi
and eax, 0xff00ff
shr edx, 2
and edx, 0xffc03fc0
shr esi, 2
add edx, 0xff800080
and esi, 0x3fc03fc0
add edx, ecx
mov ecx, ebx
and ecx, 0xff00ff
shr ebx, 2
add ecx, eax
and ebx, 0x3fc03fc0
mov eax, edi
add ebx, esi
and eax, 0xff00ff
shr edi, 2
add ecx, eax
and edi, 0x3fc03fc0
mov eax, dword [ebp - 0x150]
add ebx, edi
mov eax, dword [eax + 0x1c]
and eax, 0xff00ff
add eax, 0x10001
add eax, ecx
mov ecx, dword [ebp - 0x150]
shr eax, 2
xor edx, eax
and edx, 0xff00ff
mov eax, dword [ecx + 0x1c]
add ecx, 0x40
shr eax, 2
and eax, 0x3fc03fc0
mov dword [ebp - 0x150], ecx
add eax, 0x800080
add eax, ebx
xor edx, eax
mov eax, dword [ebp - 0x154]
mov dword [eax + 8], edx
add eax, 0x10
sub dword [ebp - 0x158], 1
mov dword [ebp - 0x154], eax
jne 0x1013ebd0
push ecx
mov ecx, dword [ebp - 0x15c]
lea edx, [ebp - 0x4c]
call fcn.100ada60
mov ecx, dword [ebp - 8]
pop edi
pop esi
xor ecx, ebp
pop ebx
call fcn.1045066c
mov esp, ebp
pop ebp
ret 0x14