Exemplo n.º 1
0
        private static bool IsJump(ud_mnemonic_code mnemonic)
        {
            switch (mnemonic)
            {
            case ud_mnemonic_code.UD_Ija:
            case ud_mnemonic_code.UD_Ijae:
            case ud_mnemonic_code.UD_Ijb:
            case ud_mnemonic_code.UD_Ijbe:
            case ud_mnemonic_code.UD_Ijcxz:
            case ud_mnemonic_code.UD_Ijecxz:
            case ud_mnemonic_code.UD_Ijg:
            case ud_mnemonic_code.UD_Ijge:
            case ud_mnemonic_code.UD_Ijl:
            case ud_mnemonic_code.UD_Ijle:
            case ud_mnemonic_code.UD_Ijmp:
            case ud_mnemonic_code.UD_Ijno:
            case ud_mnemonic_code.UD_Ijnp:
            case ud_mnemonic_code.UD_Ijns:
            case ud_mnemonic_code.UD_Ijnz:
            case ud_mnemonic_code.UD_Ijo:
            case ud_mnemonic_code.UD_Ijp:
            case ud_mnemonic_code.UD_Ijrcxz:
            case ud_mnemonic_code.UD_Ijs:
            case ud_mnemonic_code.UD_Ijz:
                return(true);

            default:
                return(false);
            }
        }
Exemplo n.º 2
0
 ud_lookup_mnemonic(ud_mnemonic_code c)
 {
     if (c < ud_mnemonic_code.UD_MAX_MNEMONIC_CODE)
     {
         return(InstructionTables.ud_mnemonics_str[(int)c]);
     }
     else
     {
         return(null);
     }
 }
Exemplo n.º 3
0
 internal ud_itab_entry(
     ud_mnemonic_code mnemonic,
     ud_itab_entry_operand operand1,
     ud_itab_entry_operand operand2,
     ud_itab_entry_operand operand3,
     ud_itab_entry_operand operand4,
     UInt32 prefix
     )
 {
     this.Mnemonic = mnemonic;
     this.Operand1 = operand1;
     this.Operand2 = operand2;
     this.Operand3 = operand3;
     this.Operand4 = operand4;
     this.Prefix   = prefix;
 }
Exemplo n.º 4
0
 internal ud_itab_entry(
     ud_mnemonic_code mnemonic,
     ud_itab_entry_operand operand1,
     ud_itab_entry_operand operand2,
     ud_itab_entry_operand operand3,
     ud_itab_entry_operand operand4,
     UInt32 prefix
     )
 {
     this.Mnemonic = mnemonic;
     this.Operand1 = operand1;
     this.Operand2 = operand2;
     this.Operand3 = operand3;
     this.Operand4 = operand4;
     this.Prefix = prefix;
 }
Exemplo n.º 5
0
 public DummyInstruction(ud_mnemonic_code _mnemonic)
 {
     mnemonic = _mnemonic;
 }
Exemplo n.º 6
0
 /* =============================================================================
  * ud_lookup_mnemonic
  *    Looks up mnemonic code in the mnemonic string table.
  *    Returns NULL if the mnemonic code is invalid.
  * =============================================================================
  */
 /// <summary>
 /// Looks up mnemonic code in the mnemonic string table.
 /// Returns NULL if the mnemonic code is invalid.
 /// </summary>
 /// <param name="c"></param>
 /// <returns></returns>
 public static string ud_lookup_mnemonic(ud_mnemonic_code c)
 {
     if (c < ud_mnemonic_code.UD_MAX_MNEMONIC_CODE)
     {
         return InstructionTables.ud_mnemonics_str[(int)c];
     }
     else
     {
         return null;
     }
 }
 public bool IsConditionalJumpInstruction(ud_mnemonic_code mnemonicCode)
 {
     return(mnemonicCode >= ud_mnemonic_code.UD_Ija &&
            mnemonicCode <= ud_mnemonic_code.UD_Ijz &&
            mnemonicCode != ud_mnemonic_code.UD_Ijmp);
 }
 public bool IsUnconditionalJumpInstruction(ud_mnemonic_code mnemonicCode)
 {
     return(mnemonicCode == ud_mnemonic_code.UD_Ijmp);
 }
 public bool IsJumpInstruction(ud_mnemonic_code mnemonicCode)
 {
     return(mnemonicCode >= ud_mnemonic_code.UD_Ija && mnemonicCode <= ud_mnemonic_code.UD_Ijz);
 }