#include "rz_parse.h" int main(int argc, char **argv) { char str[128]; struct rz_parse_t *p; p = rz_parse_new(); if (argc == 1) { printf("List: \n"); rz_parse_list(p); printf("Using plugin: \n"); rz_parse_use(p, "x86.pseudo"); str[0] = '\0'; rz_parse_assemble(p, str, strdup("eax=1;int 0x80")); printf("--output--\n"); printf("%s\n", str); printf("\n----\n\n"); rz_parse_use(p, "att2intel"); rz_parse_pseudocode(p, "movl $3, %eax", str); //, sizeof (str)); // rz_parse_filter (p, NULL, "movl $3, %eax", str, sizeof (str)); printf("%s\n", str); } else { char buf[128]; rz_parse_use(p, "att2intel"); while (!feof(stdin)) { buf[0] = 0; fgets(buf, sizeof(buf) - 1, stdin); if (feof(stdin)) break; buf[strlen(buf) - 1] = 0; if (*buf) { rz_parse_pseudocode(p, buf, str); //, sizeof (str)); printf("%s\n", str); } } } return 0; }