public override X86Instruction Decode(X86Disassembler disasm, byte op, string opFormat)
 {
     if (!disasm.TryEnsureModRM(out byte modRm))
     {
         return(null);
     }
     if ((modRm & 0xC0) == 0xC0)
     {
         var i = modRm & 0x07;
         if (i < regDecoders.Length)
         {
             return(regDecoders[i].Decode(disasm, op, opFormat));
         }
         else
         {
             return(disasm.Illegal());
         }
     }
     else
     {
         return(memDecoder.Decode(disasm, op, opFormat));
     }
 }