/* ============================================================================= * ud_init() - Initializes ud_t object. * ============================================================================= */ extern void ud_init (struct ud *u) { memset ((void *) u, 0, sizeof (struct ud)); ud_set_mode (u, 16); u->mnemonic = UD_Iinvalid; ud_set_pc (u, 0); #ifndef __UD_STANDALONE__ ud_set_input_file (u, stdin); #endif /* __UD_STANDALONE__ */ }
int main(int argc, char* argv[]) { ud_t ud_obj; ud_init(&ud_obj); FILE* f = fopen(argv[1], "r"); ud_set_input_file(&ud_obj, f); ud_set_vendor(&ud_obj, UD_VENDOR_INTEL); ud_set_syntax(&ud_obj, UD_SYN_INTEL); ud_set_mode(&ud_obj, 32); while (ud_disassemble(&ud_obj)) { printf("\t%s\n", ud_insn_asm(&ud_obj)); } return 0; }