Function at 0x4ebed0
Capabilities:
Encode data using xor

Disassembly:
sub esp, 0x758
mov eax, dword [0x601040]
xor eax, esp
mov dword [esp + 0x754], eax
mov eax, dword [esp + 0x75c]
push ebx
push ebp
push esi
mov esi, dword [esp + 0x770]
push edi
mov edi, dword [esp + 0x778]
push 0xa0
mov dword [esp + 0x24], eax
lea eax, [esp + 0x108]
push 0
push eax
call fcn.004f0d80
push 0x5a0
lea eax, [esp + 0x1d4]
push 0
push eax
call fcn.004f0d80
movups xmm0, xmmword [esi]
add esp, 0x18
lea ecx, [esp + 0x184]
mov ebx, 2
movups xmmword [esp + 0x164], xmm0
movups xmm0, xmmword [esi + 0x10]
movups xmmword [esp + 0x174], xmm0
movups xmm0, xmmword [edi]
movups xmmword [esp + 0x184], xmm0
movups xmm0, xmmword [edi + 0x10]
movups xmmword [esp + 0x194], xmm0
movups xmm0, xmmword [0x5f8d68]
movups xmmword [esp + 0x1a4], xmm0
movups xmm0, xmmword [0x5f8d78]
movups xmmword [esp + 0x1b4], xmm0
lea edx, [ecx + 0x80]
lea esi, [ecx + 0x60]
lea edi, [ecx + 0x40]
test bl, 1
je 0x4ebfc5
lea eax, [ecx + 0x20]
push eax
push ecx
lea eax, [ecx - 0x20]
push eax
push 0
lea eax, [esp + 0x1b4]
push eax
lea eax, [esp + 0x198]
push eax
lea eax, [esp + 0x17c]
push eax
push edx
push esi
push edi
call fcn.004ea0d0
add esp, 0x28
jmp 0x4ebff8
mov eax, ebx
shr eax, 1
lea ecx, [eax + eax*2]
shl ecx, 5
lea eax, [esp + 0x144]
add eax, ecx
push eax
lea eax, [esp + 0x128]
add eax, ecx
push eax
lea eax, [esp + 0x10c]
add eax, ecx
push eax
push edx
push esi
push edi
call fcn.004ea5c0
add esp, 0x18
inc ebx
mov ecx, esi
cmp ebx, 0x10
jbe 0x4ebf84
xorps xmm0, xmm0
mov dword [esp + 0x44], 0
mov ecx, 1
movq qword [esp + 0x58], xmm0
mov edi, 0x102
mov dword [esp + 0x60], 0
movups xmmword [esp + 0x48], xmm0
mov dword [esp + 0x64], 0
movups xmmword [esp + 0x68], xmm0
mov dword [esp + 0x80], 0
movq qword [esp + 0x78], xmm0
mov dword [esp + 0x84], 0
movups xmmword [esp + 0x88], xmm0
mov dword [esp + 0xa0], 0
movq qword [esp + 0x98], xmm0
mov dword [esp + 0x10], ecx
mov dword [esp + 0x14], edi
test ecx, ecx
jne 0x4ec0a5
lea eax, [esp + 0x84]
push eax
lea eax, [esp + 0x68]
push eax
lea eax, [esp + 0x4c]
push eax
lea eax, [esp + 0x90]
push eax
lea eax, [esp + 0x74]
push eax
lea eax, [esp + 0x58]
push eax
call fcn.004ea5c0
add esp, 0x18
lea esi, [edi - 3]
mov eax, 0xcccccccd
mul esi
mov ecx, esi
shr edx, 2
lea eax, [edx + edx*4]
sub ecx, eax
jne 0x4ec2c8
mov ebx, dword [esp + 0x770]
lea ecx, [edi + 1]
cmp ecx, 0xff
ja 0x4ec0e3
mov eax, ecx
and ecx, 0x1f
sar eax, 5
mov eax, dword [ebx + eax*4]
shr eax, cl
and eax, 1
jmp 0x4ec0e5
xor eax, eax
shl eax, 5
cmp edi, 0xff
ja 0x4ec104
mov edx, edi
mov ecx, edi
sar edx, 5
and ecx, 0x1f
mov edx, dword [ebx + edx*4]
shr edx, cl
and edx, 1
jmp 0x4ec106
xor edx, edx
shl edx, 4
lea ecx, [edi - 1]
or eax, edx
cmp ecx, 0xff
ja 0x4ec129
lea edx, [edi - 1]
and ecx, 0x1f
sar edx, 5
mov edx, dword [ebx + edx*4]
shr edx, cl
and edx, 1
jmp 0x4ec12b
xor edx, edx
lea ecx, [edx*8]
or eax, ecx
lea ecx, [edi - 2]
cmp ecx, 0xff
ja 0x4ec152
lea edx, [edi - 2]
and ecx, 0x1f
sar edx, 5
mov edx, dword [ebx + edx*4]
shr edx, cl
and edx, 1
jmp 0x4ec154
xor edx, edx
shl edx, 2
or eax, edx
cmp esi, 0xff
ja 0x4ec176
lea edx, [edi - 3]
and esi, 0x1f
sar edx, 5
mov ecx, esi
mov edx, dword [ebx + edx*4]
shr edx, cl
and edx, 1
jmp 0x4ec178
xor edx, edx
lea ecx, [edx + edx]
or eax, ecx
lea ecx, [edi - 4]
cmp ecx, 0xff
ja 0x4ec19b
lea edx, [edi - 4]
and ecx, 0x1f
sar edx, 5
mov edx, dword [ebx + edx*4]
shr edx, cl
and edx, 1
jmp 0x4ec19d
xor edx, edx
or eax, edx
mov edx, 0x3f
mov ecx, eax
sub edx, eax
shr ecx, 5
dec ecx
mov ebx, ecx
and ecx, eax
not ebx
and edx, ebx
and ebx, 1
or edx, ecx
mov dword [esp + 0x1c], ebx
mov eax, edx
and edx, 1
shr eax, 1
add eax, edx
push 0x60
mov dword [esp + 0x1c], eax
lea eax, [esp + 0xa8]
push 0
push eax
call fcn.004f0d80
mov edi, dword [esp + 0x24]
lea ebx, [esp + 0x130]
add esp, 0xc
xor ebp, ebp
nop dword [eax + eax]
lea eax, [esp + 0xa4]
mov esi, ebp
push eax
lea eax, [ebx - 0x20]
xor esi, edi
push eax
lea eax, [esp + 0xac]
push esi
push eax
call fcn.004e8a40
lea eax, [esp + 0xd4]
push eax
push ebx
push esi
push eax
call fcn.004e8a40
lea eax, [esp + 0x104]
push eax
lea eax, [ebx + 0x20]
push eax
lea eax, [esp + 0x10c]
push esi
push eax
call fcn.004e8a40
inc ebp
add esp, 0x30
add ebx, 0x60
cmp ebp, 0x11
jb 0x4ec1f0
lea eax, [esp + 0xc4]
push eax
lea eax, [esp + 0x28]
push eax
call fcn.004e9f90
lea eax, [esp + 0x2c]
push eax
lea eax, [esp + 0xd0]
push eax
push dword [esp + 0x2c]
push eax
call fcn.004e8a40
mov edi, dword [esp + 0x2c]
add esp, 0x18
cmp dword [esp + 0x10], 0
jne 0x4ec334
lea eax, [esp + 0xe4]
push eax
lea eax, [esp + 0xc8]
push eax
lea eax, [esp + 0xac]
push eax
push 0
lea eax, [esp + 0x94]
push eax
lea eax, [esp + 0x78]
push eax
lea eax, [esp + 0x5c]
push eax
lea eax, [esp + 0xa0]
push eax
lea eax, [esp + 0x84]
push eax
lea eax, [esp + 0x68]
push eax
call fcn.004ea0d0
add esp, 0x28
mov ecx, dword [esp + 0x10]
dec edi
mov dword [esp + 0x14], edi
lea eax, [edi - 3]
cmp eax, 0x100
jb 0x4ec075
mov eax, dword [esp + 0x20]
movups xmm0, xmmword [esp + 0x44]
mov ecx, dword [esp + 0x764]
pop edi
movups xmmword [eax], xmm0
pop esi
movups xmm0, xmmword [esp + 0x4c]
pop ebp
pop ebx
movups xmmword [eax + 0x10], xmm0
xor ecx, esp
movups xmm0, xmmword [esp + 0x54]
movups xmmword [eax + 0x20], xmm0
movups xmm0, xmmword [esp + 0x64]
movups xmmword [eax + 0x30], xmm0
movups xmm0, xmmword [esp + 0x74]
movups xmmword [eax + 0x40], xmm0
movups xmm0, xmmword [esp + 0x84]
movups xmmword [eax + 0x50], xmm0
call fcn.004ee6f5
add esp, 0x758
ret
movups xmm0, xmmword [esp + 0xa4]
xor ecx, ecx
mov dword [esp + 0x10], ecx
movups xmmword [esp + 0x44], xmm0
movups xmm0, xmmword [esp + 0xb4]
movups xmmword [esp + 0x54], xmm0
movups xmm0, xmmword [esp + 0xc4]
movups xmmword [esp + 0x64], xmm0
movups xmm0, xmmword [esp + 0xd4]
movups xmmword [esp + 0x74], xmm0
movups xmm0, xmmword [esp + 0xe4]
movups xmmword [esp + 0x84], xmm0
movups xmm0, xmmword [esp + 0xf4]
movups xmmword [esp + 0x94], xmm0
jmp 0x4ec2cc