#ifndef __XED_WRAPPER_H #define __XED_WRAPPER_H #include "Windas.h" extern "C" { #include } #define XED_DECODED_INST xed_decoded_inst_t #define XED_INST xed_inst_t #define XED_OPERAND xed_operand_t #define XED_OPERAND_ENUM xed_operand_enum_t #define XED_SIMPLE_FLAG xed_simple_flag_t #define XED_FLAG_SET xed_flag_set_t #define XED_STATE xed_state_t #define XED_ENCODER_INSTRUCTION xed_encoder_instruction_t #define XED_ENCODER_REQUEST xed_encoder_request_t #define XED_REG_ENUM xed_reg_enum_t #define XED_OPERAND_TYPE_ENUM xed_operand_type_enum_t #define XED_ERROR_ENUM xed_error_enum_t #define XED_CATEGORY_ENUM xed_category_enum_t #define XED_ICLASS_ENUM xed_iclass_enum_t #define XedTablesInit xed_tables_init #define XedDecode xed_decode #define XedDecodedInstZero xed_decoded_inst_zero #define XedDecodedInstZeroSetMode xed_decoded_inst_zero_set_mode #define XedDecodedInstSetMode xed_decoded_inst_set_mode #define XedDecodedInstGetLength xed_decoded_inst_get_length #define XedDecodedInstGetCategory xed_decoded_inst_get_category #define XedDecodedInstGetBranchDisplacementWidth xed_decoded_inst_get_branch_displacement_width #define XedDecodedInstGetBranchDisplacementWidthBits xed_decoded_inst_get_branch_displacement_width_bits #define XedDecodedInstGetBranchDisplacement xed_decoded_inst_get_branch_displacement #define XedDecodedInstInst xed_decoded_inst_inst #define XedDecodedInstNumOperands xed_decoded_inst_noperands #define XedDecodedInstGetIClass xed_decoded_inst_get_iclass #define XedDecodedInstUsesRflags xed_decoded_inst_uses_rflags #define XedDecodedInstGetRflagsInfo xed_decoded_inst_get_rflags_info #define XedDecodedInstGetReg xed_decoded_inst_get_reg #define XedDecodedInstGetSegReg xed_decoded_inst_get_seg_reg #define XedDecodedInstGetBaseReg xed_decoded_inst_get_base_reg #define XedDecodedInstGetIndexReg xed_decoded_inst_get_index_reg #define XedDecodedInstGetScale xed_decoded_inst_get_scale #define XedDecodedInstGetMemoryDisplacement xed_decoded_inst_get_memory_displacement #define XedInstOperand xed_inst_operand #define XedOperandType xed_operand_type #define XedOperandName xed_operand_name #define XedOperandIsRegister xed_operand_is_register #define XedOperandWidth xed_operand_width #define XedOperandWidthBits xed_operand_width_bits #define XedOperandIsMemoryAddressingRegister xed_operand_is_memory_addressing_register #define XedOperandReadWriteAction xed_operand_rw #define XedOperandRead xed_operand_read #define XedOperandReadOnly xed_operand_read_only #define XedOperandWritten xed_operand_written #define XedOperandWrittenOnly xed_operand_written_only #define XedOperandReadAndWritten xed_operand_read_and_written #define XedOperandConditionalRead xed_operand_conditional_read #define XedOperandConditionalWrite xed_operand_conditional_write #define XedIClassEnumToString xed_iclass_enum_t2str #define XedErrorEnumToString xed_error_enum_t2str #define XedCategoryEnumToString xed_category_enum_t2str #define XedOperandEnumToString xed_operand_enum_t2str #define XedRegEnumToString xed_reg_enum_t2str #define XedSimpleFlagGetReadFlagSet xed_simple_flag_get_read_flag_set #define XedSimpleFlagGetWrittenFlagSet xed_simple_flag_get_written_flag_set #define XedSimpleFlagGetUndefinedFlagSet xed_simple_flag_get_undefined_flag_set #define XedEncoderRequestZeroSetMode xed_encoder_request_zero_set_mode #define XedConvertToEncoderRequest xed_convert_to_encoder_request #define XedEncode xed_encode #define XedInst xed_inst #define XedInst0 xed_inst0 #define XedInst1 xed_inst1 #define XedInst2 xed_inst2 #define XedInst3 xed_inst3 #define XedInst4 xed_inst4 #define XedInst5 xed_inst5 #define XedRelBr xed_relbr #define XedReg xed_reg #define XedDisp xed_disp #define XedMemB xed_mem_b #define XedMemBD xed_mem_bd #define XedMemBISD xed_mem_bisd #define XedSimm0 xed_simm0 #define XedImm0 xed_imm0 inline XED_STATE XedGlobalMachineState; VOID XedGlobalInit(); PUCHAR XedEncodeInstructions(XED_ENCODER_INSTRUCTION* InstList, UINT InstCount, PUINT OutSize); #endif