crap, I'm moving to a Vista64 machine!
DEP marks code loaded for execution and allocated by the user, so you cannot move the next instruction pointer to memory that's not for execution.
This essentially kills both buffer overflow attacks AND polymorphic code.