internal static OpCode CreateInvalidOpCode() { //We create an opcode using a pretty dodgy method... byte op2; switch (random.Next(0, 8)) { default: op2 = 0xc1; break; case 1: op2 = 0xae; break; case 2: op2 = 0xc9; break; case 3: op2 = 0xca; break; case 4: op2 = 0xaf; break; case 5: op2 = 0xa7; break; case 6: op2 = 0xc0; break; case 7: op2 = 0xbe; break; } InvalidOpCode invalidOpCode = new InvalidOpCode(0xff, op2); IntPtr ptr = Marshal.AllocHGlobal(Marshal.SizeOf(invalidOpCode)); OpCode opCode; try { Marshal.StructureToPtr(invalidOpCode, ptr, false); opCode = (OpCode)Marshal.PtrToStructure(ptr, typeof(OpCode)); } finally { Marshal.FreeHGlobal(ptr); } return(opCode); }
internal static OpCode CreateInvalidOpCode() { //We create an opcode using a pretty dodgy method... byte op2; switch (random.Next(0, 8)) { default: op2 = 0xc1; break; case 1: op2 = 0xae; break; case 2: op2 = 0xc9; break; case 3: op2 = 0xca; break; case 4: op2 = 0xaf; break; case 5: op2 = 0xa7; break; case 6: op2 = 0xc0; break; case 7: op2 = 0xbe; break; } InvalidOpCode invalidOpCode = new InvalidOpCode(0xff, op2); IntPtr ptr = Marshal.AllocHGlobal(Marshal.SizeOf(invalidOpCode)); OpCode opCode; try { Marshal.StructureToPtr(invalidOpCode, ptr, false); opCode = (OpCode) Marshal.PtrToStructure(ptr, typeof (OpCode)); } finally { Marshal.FreeHGlobal(ptr); } return opCode; }