Simple Powershell Process Monitor for Fuzzing

While doing some fuzzing recently I ran into trouble with Sulley's ( process monitor. For those who are unfamilar, when fuzzing, the process monitor hooks into the target process and grabs valuable information in the case of a crash (e.g. register values). It's job is also to restart the process when it crashes. In my use case I was doing remote fuzzing of a network service. On the target system, the service I was fuzzing had to be started by another executable. Confused?