On 6/25/06, Ivan Leo Puoti ivanleo@gmail.com wrote:
Jaap Stolk wrote:
from what I could google, code=c0000096 means that a privileged instruction was found.
This is to be expected. DispatchDeviceControl is the function in the driver which handles the IO for the kernel (in this case our fake kernel). If it's a driver it obviously must need to do something that has to be done in ring 0, such as running a privileged instruction. For safedisc, we have some hardware emulation which will run the privileged instructions it needs. What you'll probably have to do is find the instructions the particular driver needs (you can find it in c:\windows\system32\drivers) and emulate it somehow, which may or may not be possible.
Ivan.
Thanks Ivan. I did some IRC with Vitaliy, and he came to the conclusion that the outport() code was probably the result of messed up code/stack, since the program doesn't use any hardware or locks. I will look into it tomorrow.
Jaap.