public static KernelPatch GetKernelPatchReport(DebuggerThread Context, uint[] Data)
        {
            KernelPatch Report = new KernelPatch();

            StringType Type = (StringType)Data[0];

            if (Type != StringType.CHAR)
            {
                throw new Exception("GetKernelPatchReport expects a string message");
            }

            uint   Length     = Data[1];
            IntPtr MessagePtr = new IntPtr(Data[2]);

            Report.Name    = Context.OwningProcess.ReadString(MessagePtr, Length);
            Report.Address = new IntPtr(Data[3]);

            return(Report);
        }
Exemple #2
0
        public static KernelPatch GetKernelPatchReport(DebuggerThread Context, DataProcessor Data)
        {
            KernelPatch Report = new KernelPatch();

            var Type = (StringType)Data.Pop();

            if (Type != StringType.CHAR)
            {
                throw new Exception("GetKernelPatchReport expects a string message");
            }

            var Length     = Data.Pop();
            var MessagePtr = new IntPtr(Data.Pop());

            Report.Name    = Context.OwningProcess.ReadString(MessagePtr, Length);
            Report.Address = new IntPtr(Data.Pop());

            return(Report);
        }