Function at 0x4f97b0
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, 0x188
push esi
push edi
lea eax, [ebp - 0xf0]
mov esi, edx
push eax
lea eax, [ebp - 0x170]
mov dword [ebp - 0x88], esi
push eax
lea eax, [ebp - 0x180]
mov edi, ecx
push eax
lea eax, [ebp - 0x160]
push eax
lea eax, [ebp - 0x150]
push eax
lea eax, [ebp - 0x140]
push eax
lea eax, [ebp - 0x130]
push eax
lea eax, [ebp - 0x120]
push eax
lea eax, [ebp - 0x110]
push eax
lea ecx, [esi + 0x20]
lea edx, [ebp - 0x100]
call fcn.004f6b60
movups xmm0, xmmword [esi + 0x70]
add esp, 0x24
movups xmm3, xmmword [esi + 0x40]
add edi, 0x20
movups xmm4, xmmword [esi + 0x50]
movups xmm1, xmmword [esi + 0x60]
movups xmm2, xmmword [esi + 0xb0]
movaps xmm5, xmmword [ebp - 0xf0]
movaps xmm6, xmmword [ebp - 0x170]
movaps xmm7, xmmword [ebp - 0x180]
movaps xmmword [ebp - 0xe0], xmm0
movups xmm0, xmmword [esi + 0x80]
movaps xmmword [ebp - 0xb0], xmm0
movups xmm0, xmmword [esi + 0x90]
movaps xmmword [ebp - 0xc0], xmm0
movups xmm0, xmmword [esi + 0xa0]
mov esi, edi
mov dword [ebp - 0x8c], edi
mov edi, 0x8000
movaps xmmword [ebp - 0xa0], xmm0
jmp 0x4f98a7
movaps xmm1, xmmword [ebp - 0xd0]
movups xmm0, xmmword [esi - 0x20]
lea eax, [ebp - 0x80]
pxor xmm0, xmm3
movaps xmmword [ebp - 0x10], xmm0
movups xmm0, xmmword [esi - 0x10]
pxor xmm0, xmm4
movaps xmmword [ebp - 0x20], xmm0
movups xmm0, xmmword [esi]
pxor xmm0, xmm1
movaps xmmword [ebp - 0x30], xmm0
movups xmm0, xmmword [esi + 0x10]
pxor xmm0, xmmword [ebp - 0xe0]
push eax
movaps xmmword [ebp - 0x40], xmm0
lea eax, [ebp - 0x70]
movups xmm0, xmmword [esi + 0x20]
pxor xmm0, xmmword [ebp - 0xb0]
push eax
movaps xmmword [ebp - 0x50], xmm0
lea eax, [ebp - 0x60]
movups xmm0, xmmword [esi + 0x30]
pxor xmm0, xmmword [ebp - 0xc0]
push eax
movaps xmmword [ebp - 0x60], xmm0
lea eax, [ebp - 0x50]
movups xmm0, xmmword [esi + 0x40]
pxor xmm0, xmmword [ebp - 0xa0]
push eax
lea eax, [ebp - 0x40]
movaps xmmword [ebp - 0x70], xmm0
movups xmm0, xmmword [esi + 0x50]
push eax
lea eax, [ebp - 0x30]
pxor xmm0, xmm2
push eax
lea eax, [ebp - 0x20]
movaps xmmword [ebp - 0x80], xmm0
movaps xmm0, xmmword [ebp - 0x100]
push eax
lea eax, [ebp - 0x10]
push eax
call fcn.00507d90
movaps xmm0, xmmword [ebp - 0x110]
lea eax, [ebp - 0x80]
push eax
lea eax, [ebp - 0x70]
push eax
lea eax, [ebp - 0x60]
push eax
lea eax, [ebp - 0x50]
push eax
lea eax, [ebp - 0x40]
push eax
lea eax, [ebp - 0x30]
push eax
lea eax, [ebp - 0x20]
push eax
lea eax, [ebp - 0x10]
push eax
call fcn.00507d90
add esp, 0x40
movaps xmm0, xmmword [ebp - 0x120]
lea eax, [ebp - 0x80]
push eax
lea eax, [ebp - 0x70]
push eax
lea eax, [ebp - 0x60]
push eax
lea eax, [ebp - 0x50]
push eax
lea eax, [ebp - 0x40]
push eax
lea eax, [ebp - 0x30]
push eax
lea eax, [ebp - 0x20]
push eax
lea eax, [ebp - 0x10]
push eax
call fcn.00507d90
lea eax, [ebp - 0x80]
push eax
movaps xmm0, xmmword [ebp - 0x130]
lea eax, [ebp - 0x70]
push eax
lea eax, [ebp - 0x60]
push eax
lea eax, [ebp - 0x50]
push eax
lea eax, [ebp - 0x40]
push eax
lea eax, [ebp - 0x30]
push eax
lea eax, [ebp - 0x20]
push eax
lea eax, [ebp - 0x10]
push eax
call fcn.00507d90
add esp, 0x40
movaps xmm0, xmmword [ebp - 0x140]
lea eax, [ebp - 0x80]
push eax
lea eax, [ebp - 0x70]
push eax
lea eax, [ebp - 0x60]
push eax
lea eax, [ebp - 0x50]
push eax
lea eax, [ebp - 0x40]
push eax
lea eax, [ebp - 0x30]
push eax
lea eax, [ebp - 0x20]
push eax
lea eax, [ebp - 0x10]
push eax
call fcn.00507d90
movaps xmm0, xmmword [ebp - 0x150]
lea eax, [ebp - 0x80]
push eax
lea eax, [ebp - 0x70]
push eax
lea eax, [ebp - 0x60]
push eax
lea eax, [ebp - 0x50]
push eax
lea eax, [ebp - 0x40]
push eax
lea eax, [ebp - 0x30]
push eax
lea eax, [ebp - 0x20]
push eax
lea eax, [ebp - 0x10]
push eax
call fcn.00507d90
add esp, 0x40
movaps xmm0, xmmword [ebp - 0x160]
lea eax, [ebp - 0x80]
push eax
lea eax, [ebp - 0x70]
push eax
lea eax, [ebp - 0x60]
push eax
lea eax, [ebp - 0x50]
push eax
lea eax, [ebp - 0x40]
push eax
lea eax, [ebp - 0x30]
push eax
lea eax, [ebp - 0x20]
push eax
lea eax, [ebp - 0x10]
push eax
call fcn.00507d90
lea eax, [ebp - 0x80]
push eax
lea eax, [ebp - 0x70]
push eax
lea eax, [ebp - 0x60]
push eax
lea eax, [ebp - 0x50]
push eax
lea eax, [ebp - 0x40]
push eax
lea eax, [ebp - 0x30]
movaps xmm0, xmm7
push eax
lea eax, [ebp - 0x20]
push eax
lea eax, [ebp - 0x10]
push eax
call fcn.00507d90
add esp, 0x40
lea eax, [ebp - 0x80]
movaps xmm0, xmm6
push eax
lea eax, [ebp - 0x70]
push eax
lea eax, [ebp - 0x60]
push eax
lea eax, [ebp - 0x50]
push eax
lea eax, [ebp - 0x40]
push eax
lea eax, [ebp - 0x30]
push eax
lea eax, [ebp - 0x20]
push eax
lea eax, [ebp - 0x10]
push eax
call fcn.00507d90
lea eax, [ebp - 0x80]
movaps xmm0, xmm5
push eax
lea eax, [ebp - 0x70]
push eax
lea eax, [ebp - 0x60]
push eax
lea eax, [ebp - 0x50]
push eax
lea eax, [ebp - 0x40]
push eax
lea eax, [ebp - 0x30]
push eax
lea eax, [ebp - 0x20]
push eax
lea eax, [ebp - 0x10]
push eax
call fcn.00507d90
movaps xmm5, xmmword [ebp - 0x40]
lea esi, [esi + 0x80]
pxor xmm5, xmmword [ebp - 0x30]
add esp, 0x40
movaps xmm2, xmmword [ebp - 0x10]
movaps xmm3, xmmword [ebp - 0x20]
movaps xmm4, xmmword [ebp - 0x30]
pxor xmm3, xmm2
pxor xmm4, xmmword [ebp - 0x20]
pxor xmm2, xmmword [ebp - 0x80]
movaps xmmword [ebp - 0xd0], xmm5
movaps xmm5, xmmword [ebp - 0x50]
pxor xmm5, xmmword [ebp - 0x40]
movaps xmmword [ebp - 0xe0], xmm5
movaps xmm5, xmmword [ebp - 0x60]
pxor xmm5, xmmword [ebp - 0x50]
movaps xmmword [ebp - 0xb0], xmm5
movaps xmm5, xmmword [ebp - 0x70]
pxor xmm5, xmmword [ebp - 0x60]
movaps xmmword [ebp - 0xc0], xmm5
movaps xmm5, xmmword [ebp - 0x80]
pxor xmm5, xmmword [ebp - 0x70]
movaps xmmword [ebp - 0xa0], xmm5
movaps xmm5, xmmword [ebp - 0xf0]
sub edi, 1
jne 0x4f98a0
mov esi, dword [ebp - 0x88]
mov edi, dword [ebp - 0x8c]
mov dword [ebp - 0x84], 0x8000
nop word [eax + eax]
movups xmm0, xmmword [edi - 0x20]
lea eax, [ebp - 0x80]
pxor xmm0, xmm3
movaps xmmword [ebp - 0x10], xmm0
movups xmm0, xmmword [edi - 0x10]
pxor xmm0, xmm4
movaps xmmword [ebp - 0x20], xmm0
movups xmm0, xmmword [edi]
pxor xmm0, xmmword [ebp - 0xd0]
movaps xmmword [ebp - 0x30], xmm0
movups xmm0, xmmword [edi + 0x10]
pxor xmm0, xmmword [ebp - 0xe0]
push eax
movaps xmmword [ebp - 0x40], xmm0
lea eax, [ebp - 0x70]
movups xmm0, xmmword [edi + 0x20]
pxor xmm0, xmmword [ebp - 0xb0]
push eax
movaps xmmword [ebp - 0x50], xmm0
lea eax, [ebp - 0x60]
movups xmm0, xmmword [edi + 0x30]
pxor xmm0, xmmword [ebp - 0xc0]
push eax
movaps xmmword [ebp - 0x60], xmm0
lea eax, [ebp - 0x50]
movups xmm0, xmmword [edi + 0x40]
pxor xmm0, xmmword [ebp - 0xa0]
push eax
lea eax, [ebp - 0x40]
movaps xmmword [ebp - 0x70], xmm0
movups xmm0, xmmword [edi + 0x50]
push eax
lea eax, [ebp - 0x30]
pxor xmm0, xmm2
push eax
lea eax, [ebp - 0x20]
movaps xmmword [ebp - 0x80], xmm0
movaps xmm0, xmmword [ebp - 0x100]
push eax
lea eax, [ebp - 0x10]
push eax
call fcn.00507d90
movaps xmm0, xmmword [ebp - 0x110]
lea eax, [ebp - 0x80]
push eax
lea eax, [ebp - 0x70]
push eax
lea eax, [ebp - 0x60]
push eax
lea eax, [ebp - 0x50]
push eax
lea eax, [ebp - 0x40]
push eax
lea eax, [ebp - 0x30]
push eax
lea eax, [ebp - 0x20]
push eax
lea eax, [ebp - 0x10]
push eax
call fcn.00507d90
add esp, 0x40
movaps xmm0, xmmword [ebp - 0x120]
lea eax, [ebp - 0x80]
push eax
lea eax, [ebp - 0x70]
push eax
lea eax, [ebp - 0x60]
push eax
lea eax, [ebp - 0x50]
push eax
lea eax, [ebp - 0x40]
push eax
lea eax, [ebp - 0x30]
push eax
lea eax, [ebp - 0x20]
push eax
lea eax, [ebp - 0x10]
push eax
call fcn.00507d90
lea eax, [ebp - 0x80]
push eax
movaps xmm0, xmmword [ebp - 0x130]
lea eax, [ebp - 0x70]
push eax
lea eax, [ebp - 0x60]
push eax
lea eax, [ebp - 0x50]
push eax
lea eax, [ebp - 0x40]
push eax
lea eax, [ebp - 0x30]
push eax
lea eax, [ebp - 0x20]
push eax
lea eax, [ebp - 0x10]
push eax
call fcn.00507d90
add esp, 0x40
movaps xmm0, xmmword [ebp - 0x140]
lea eax, [ebp - 0x80]
push eax
lea eax, [ebp - 0x70]
push eax
lea eax, [ebp - 0x60]
push eax
lea eax, [ebp - 0x50]
push eax
lea eax, [ebp - 0x40]
push eax
lea eax, [ebp - 0x30]
push eax
lea eax, [ebp - 0x20]
push eax
lea eax, [ebp - 0x10]
push eax
call fcn.00507d90
movaps xmm0, xmmword [ebp - 0x150]
lea eax, [ebp - 0x80]
push eax
lea eax, [ebp - 0x70]
push eax
lea eax, [ebp - 0x60]
push eax
lea eax, [ebp - 0x50]
push eax
lea eax, [ebp - 0x40]
push eax
lea eax, [ebp - 0x30]
push eax
lea eax, [ebp - 0x20]
push eax
lea eax, [ebp - 0x10]
push eax
call fcn.00507d90
add esp, 0x40
movaps xmm0, xmmword [ebp - 0x160]
lea eax, [ebp - 0x80]
push eax
lea eax, [ebp - 0x70]
push eax
lea eax, [ebp - 0x60]
push eax
lea eax, [ebp - 0x50]
push eax
lea eax, [ebp - 0x40]
push eax
lea eax, [ebp - 0x30]
push eax
lea eax, [ebp - 0x20]
push eax
lea eax, [ebp - 0x10]
push eax
call fcn.00507d90
lea eax, [ebp - 0x80]
push eax
lea eax, [ebp - 0x70]
push eax
lea eax, [ebp - 0x60]
push eax
lea eax, [ebp - 0x50]
push eax
lea eax, [ebp - 0x40]
push eax
lea eax, [ebp - 0x30]
movaps xmm0, xmm7
push eax
lea eax, [ebp - 0x20]
push eax
lea eax, [ebp - 0x10]
push eax
call fcn.00507d90
add esp, 0x40
lea eax, [ebp - 0x80]
movaps xmm0, xmm6
push eax
lea eax, [ebp - 0x70]
push eax
lea eax, [ebp - 0x60]
push eax
lea eax, [ebp - 0x50]
push eax
lea eax, [ebp - 0x40]
push eax
lea eax, [ebp - 0x30]
push eax
lea eax, [ebp - 0x20]
push eax
lea eax, [ebp - 0x10]
push eax
call fcn.00507d90
lea eax, [ebp - 0x80]
movaps xmm0, xmm5
push eax
lea eax, [ebp - 0x70]
push eax
lea eax, [ebp - 0x60]
push eax
lea eax, [ebp - 0x50]
push eax
lea eax, [ebp - 0x40]
push eax
lea eax, [ebp - 0x30]
push eax
lea eax, [ebp - 0x20]
push eax
lea eax, [ebp - 0x10]
push eax
call fcn.00507d90
movaps xmm5, xmmword [ebp - 0x40]
lea edi, [edi + 0x80]
pxor xmm5, xmmword [ebp - 0x30]
add esp, 0x40
sub dword [ebp - 0x84], 1
movaps xmm2, xmmword [ebp - 0x10]
movaps xmm3, xmmword [ebp - 0x20]
movaps xmm4, xmmword [ebp - 0x30]
pxor xmm3, xmm2
pxor xmm4, xmmword [ebp - 0x20]
pxor xmm2, xmmword [ebp - 0x80]
movaps xmmword [ebp - 0xd0], xmm5
movaps xmm5, xmmword [ebp - 0x50]
pxor xmm5, xmmword [ebp - 0x40]
movaps xmm1, xmmword [ebp - 0xd0]
movaps xmmword [ebp - 0xe0], xmm5
movaps xmmword [ebp - 0x40], xmm5
movaps xmm5, xmmword [ebp - 0x60]
pxor xmm5, xmmword [ebp - 0x50]
movaps xmmword [ebp - 0xb0], xmm5
movaps xmmword [ebp - 0x50], xmm5
movaps xmm5, xmmword [ebp - 0x70]
pxor xmm5, xmmword [ebp - 0x60]
movaps xmmword [ebp - 0xc0], xmm5
movaps xmmword [ebp - 0x60], xmm5
movaps xmm5, xmmword [ebp - 0x80]
pxor xmm5, xmmword [ebp - 0x70]
movaps xmmword [ebp - 0xa0], xmm5
movaps xmmword [ebp - 0x70], xmm5
movaps xmm5, xmmword [ebp - 0xf0]
movaps xmmword [ebp - 0x10], xmm3
movaps xmmword [ebp - 0x20], xmm4
movaps xmmword [ebp - 0x30], xmm1
movaps xmmword [ebp - 0x80], xmm2
jne 0x4f9b70
mov edi, 0x10
jmp 0x4f9e65
movaps xmm5, xmmword [ebp - 0xf0]
movaps xmm6, xmmword [ebp - 0x170]
movaps xmm7, xmmword [ebp - 0x180]
movaps xmm0, xmmword [ebp - 0x100]
lea eax, [ebp - 0x80]
push eax
lea eax, [ebp - 0x70]
push eax
lea eax, [ebp - 0x60]
push eax
lea eax, [ebp - 0x50]
push eax
lea eax, [ebp - 0x40]
push eax
lea eax, [ebp - 0x30]
push eax
lea eax, [ebp - 0x20]
push eax
lea eax, [ebp - 0x10]
push eax
call fcn.00507d90
movaps xmm0, xmmword [ebp - 0x110]
lea eax, [ebp - 0x80]
push eax
lea eax, [ebp - 0x70]
push eax
lea eax, [ebp - 0x60]
push eax
lea eax, [ebp - 0x50]
push eax
lea eax, [ebp - 0x40]
push eax
lea eax, [ebp - 0x30]
push eax
lea eax, [ebp - 0x20]
push eax
lea eax, [ebp - 0x10]
push eax
call fcn.00507d90
add esp, 0x40
movaps xmm0, xmmword [ebp - 0x120]
lea eax, [ebp - 0x80]
push eax
lea eax, [ebp - 0x70]
push eax
lea eax, [ebp - 0x60]
push eax
lea eax, [ebp - 0x50]
push eax
lea eax, [ebp - 0x40]
push eax
lea eax, [ebp - 0x30]
push eax
lea eax, [ebp - 0x20]
push eax
lea eax, [ebp - 0x10]
push eax
call fcn.00507d90
movaps xmm0, xmmword [ebp - 0x130]
lea eax, [ebp - 0x80]
push eax
lea eax, [ebp - 0x70]
push eax
lea eax, [ebp - 0x60]
push eax
lea eax, [ebp - 0x50]
push eax
lea eax, [ebp - 0x40]
push eax
lea eax, [ebp - 0x30]
push eax
lea eax, [ebp - 0x20]
push eax
lea eax, [ebp - 0x10]
push eax
call fcn.00507d90
add esp, 0x40
lea eax, [ebp - 0x80]
push eax
lea eax, [ebp - 0x70]
push eax
lea eax, [ebp - 0x60]
push eax
lea eax, [ebp - 0x50]
movaps xmm0, xmmword [ebp - 0x140]
push eax
lea eax, [ebp - 0x40]
push eax
lea eax, [ebp - 0x30]
push eax
lea eax, [ebp - 0x20]
push eax
lea eax, [ebp - 0x10]
push eax
call fcn.00507d90
movaps xmm0, xmmword [ebp - 0x150]
lea eax, [ebp - 0x80]
push eax
lea eax, [ebp - 0x70]
push eax
lea eax, [ebp - 0x60]
push eax
lea eax, [ebp - 0x50]
push eax
lea eax, [ebp - 0x40]
push eax
lea eax, [ebp - 0x30]
push eax
lea eax, [ebp - 0x20]
push eax
lea eax, [ebp - 0x10]
push eax
call fcn.00507d90
add esp, 0x40
movaps xmm0, xmmword [ebp - 0x160]
lea eax, [ebp - 0x80]
push eax
lea eax, [ebp - 0x70]
push eax
lea eax, [ebp - 0x60]
push eax
lea eax, [ebp - 0x50]
push eax
lea eax, [ebp - 0x40]
push eax
lea eax, [ebp - 0x30]
push eax
lea eax, [ebp - 0x20]
push eax
lea eax, [ebp - 0x10]
push eax
call fcn.00507d90
lea eax, [ebp - 0x80]
movaps xmm0, xmm7
push eax
lea eax, [ebp - 0x70]
push eax
lea eax, [ebp - 0x60]
push eax
lea eax, [ebp - 0x50]
push eax
lea eax, [ebp - 0x40]
push eax
lea eax, [ebp - 0x30]
push eax
lea eax, [ebp - 0x20]
push eax
lea eax, [ebp - 0x10]
push eax
call fcn.00507d90
add esp, 0x40
lea eax, [ebp - 0x80]
push eax
lea eax, [ebp - 0x70]
push eax
lea eax, [ebp - 0x60]
push eax
lea eax, [ebp - 0x50]
push eax
lea eax, [ebp - 0x40]
push eax
lea eax, [ebp - 0x30]
push eax
lea eax, [ebp - 0x20]
push eax
lea eax, [ebp - 0x10]
movaps xmm0, xmm6
push eax
call fcn.00507d90
lea eax, [ebp - 0x80]
movaps xmm0, xmm5
push eax
lea eax, [ebp - 0x70]
push eax
lea eax, [ebp - 0x60]
push eax
lea eax, [ebp - 0x50]
push eax
lea eax, [ebp - 0x40]
push eax
lea eax, [ebp - 0x30]
push eax
lea eax, [ebp - 0x20]
push eax
lea eax, [ebp - 0x10]
push eax
call fcn.00507d90
movaps xmm2, xmmword [ebp - 0x10]
add esp, 0x40
movaps xmm3, xmmword [ebp - 0x20]
movaps xmm4, xmmword [ebp - 0x30]
pxor xmm3, xmm2
movaps xmm5, xmmword [ebp - 0x40]
movaps xmm6, xmmword [ebp - 0x50]
movaps xmm7, xmmword [ebp - 0x60]
pxor xmm4, xmmword [ebp - 0x20]
pxor xmm5, xmmword [ebp - 0x30]
pxor xmm6, xmmword [ebp - 0x40]
pxor xmm7, xmmword [ebp - 0x50]
pxor xmm2, xmmword [ebp - 0x80]
movaps xmmword [ebp - 0xc0], xmm3
movaps xmmword [ebp - 0x10], xmm3
movaps xmm3, xmmword [ebp - 0x70]
pxor xmm3, xmmword [ebp - 0x60]
movaps xmmword [ebp - 0xa0], xmm3
movaps xmm3, xmmword [ebp - 0x80]
pxor xmm3, xmmword [ebp - 0x70]
movaps xmm0, xmmword [ebp - 0xa0]
movaps xmmword [ebp - 0xb0], xmm3
movaps xmmword [ebp - 0x70], xmm3
movaps xmm3, xmmword [ebp - 0xc0]
movaps xmmword [ebp - 0x20], xmm4
movaps xmmword [ebp - 0x30], xmm5
movaps xmmword [ebp - 0x40], xmm6
movaps xmmword [ebp - 0x50], xmm7
movaps xmmword [ebp - 0x60], xmm0
movaps xmmword [ebp - 0x80], xmm2
sub edi, 1
jne 0x4f9e50
movaps xmm0, xmmword [ebp - 0xa0]
movups xmmword [esi + 0x40], xmm3
movups xmmword [esi + 0x50], xmm4
movups xmmword [esi + 0x60], xmm5
movups xmmword [esi + 0x70], xmm6
movups xmmword [esi + 0x80], xmm7
movups xmmword [esi + 0x90], xmm0
movaps xmm0, xmmword [ebp - 0xb0]
movups xmmword [esi + 0xa0], xmm0
pop edi
movups xmmword [esi + 0xb0], xmm2
pop esi
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret