Basically you are decribing armadillo but in your version you don't want to decrypt the entire program just the next part to be executed, and then you want to re-encrypt that part again after it has executed?
so basically:
Code:
[Legend]
Thread_1: Encrypt
Thread_2: Decrypt
Thread_3: Program Code
[Example Run]
Thread_1[Paused]
Thread_2[00001000...00002000]
Thread_3[Paused]
Next...
Thread_1[Paused]
Thread_2[00002000...00003000]
Thread_3[00001000...00002000]
Next...
Thread_1[00001000...00002000]
Thread_2[00004000...00005000]
Thread_3[00002000...00003000]
I think thats what you are saying...Its very possible to code such a protector, however because of how complicated it would be...I think it would be very predictable, and once you find a decryption key...
Reguards