Is there no way to make use of the lowered privs of `winlogon` to just spawn a new process which hosts the payload? This would hopefully prevent it from dying when the payload exits as well.

Pardon my ignorance :)