Code:
mov eax, startoffset
mov ebx, endoffset
mov cl, key
.loop
mov dl, [eax]
xor dl, cl
mov [eax], dl
cmp eax, ebx
jz .ende
inc eax
jmp loop
.ende
jmp OEP
So könnte eine einfache stub aussehen. Wenn du nun zum Beispiel in deinem php script die .code section mit demselben key XORst und die stub in eine cave schreibst und den ep darauf umbiegst, wird die .code section zur laufzeit wiederhergestellt.
Dazu solltest du dir mal das ARTeam PE Tutorial ansehen. Ansonsten könnte ich noch auf gf0x' paper verweisen, das hat in der Manual Packing Sektion aber einige unstimmigkeiten, von daher wirst du um eigenes ausprobieren in OllyDbg nicht rumkommen.