
/* WARNING: Function: __x86.get_pc_thunk.bx replaced with injection: get_pc_thunk_bx */

void __regparm3 usage(FILE *stream,int exit_status)

{
  char *pcVar1;
  char *pcVar2;
  int iVar3;
  
  pcVar2 = program_name;
  pcVar1 = (char *)dcgettext(0,"Usage: %s <option(s)> elffile(s)\n",5);
  fprintf((FILE *)stream,pcVar1,pcVar2);
  pcVar2 = (char *)dcgettext(0," Update the ELF header of ELF files\n",5);
  fprintf((FILE *)stream,pcVar2);
  pcVar2 = (char *)dcgettext(0," The options are:\n",5);
  fprintf((FILE *)stream,pcVar2);
  pcVar2 = program_name;
  pcVar1 = (char *)dcgettext(0,
                             "  --input-mach <machine>      Set input machine type to <machine>\n  --output-mach <machine>     Set output machine type to <machine>\n  --input-type <type>         Set input file type to <type>\n  --output-type <type>        Set output file type to <type>\n  --input-osabi <osabi>       Set input OSABI to <osabi>\n  --output-osabi <osabi>      Set output OSABI to <osabi>\n  -h --help                   Display this information\n  -v --version                Display the version number of %s\n"
                             ,5);
  iVar3 = fprintf((FILE *)stream,pcVar1,pcVar2);
  if (exit_status == 0) {
    pcVar2 = (char *)dcgettext(0,"Report bugs to %s\n",5,iVar3);
    fprintf((FILE *)stream,pcVar2,"<http://www.sourceware.org/bugzilla/>");
  }
                    /* WARNING: Subroutine does not return */
  exit(exit_status);
}



/* WARNING: Function: __i686.get_pc_thunk.bx replaced with injection: get_pc_thunk_bx */

void __regparm3 FUN_00011900(FILE *param_1,int param_2)

{
  undefined *puVar1;
  char *pcVar2;
  int iVar3;
  
  puVar1 = PTR_s_elfedit_00019190;
  pcVar2 = (char *)dcgettext(0,"Usage: %s <option(s)> elffile(s)\n",5);
  fprintf(param_1,pcVar2,puVar1);
  pcVar2 = (char *)dcgettext(0," Update the ELF header of ELF files\n",5);
  fprintf(param_1,pcVar2);
  pcVar2 = (char *)dcgettext(0," The options are:\n",5);
  fprintf(param_1,pcVar2);
  puVar1 = PTR_s_elfedit_00019190;
  pcVar2 = (char *)dcgettext(0,
                             "  --input-mach <machine>      Set input machine type to <machine>\n  --output-mach <machine>     Set output machine type to <machine>\n  --input-type <type>         Set input file type to <type>\n  --output-type <type>        Set output file type to <type>\n  --input-osabi <osabi>       Set input OSABI to <osabi>\n  --output-osabi <osabi>      Set output OSABI to <osabi>\n  -h --help                   Display this information\n  -v --version                Display the version number of %s\n"
                             ,5);
  iVar3 = fprintf(param_1,pcVar2,puVar1);
  if (param_2 == 0) {
    pcVar2 = (char *)dcgettext(0,"Report bugs to %s\n",5,iVar3);
    fprintf(param_1,pcVar2,"<http://www.sourceware.org/bugzilla/>");
  }
                    /* WARNING: Subroutine does not return */
  exit(param_2);
}


PUSH EBP
PUSH EDI
MOV EDI,EDX
PUSH ESI
MOV ESI,EAX
PUSH EBX
CALL 0x000117c0
ADD EBX,0x76f3
SUB ESP,0x10
PUSH 0x5
LEA EAX,[EBX + 0xffffc008]
MOV EBP,dword ptr [EBX + 0x190]
PUSH EAX
PUSH 0x0
CALL 0x000110d0
ADD ESP,0xc
PUSH EBP
PUSH EAX
PUSH ESI
CALL 0x000111c0
ADD ESP,0xc
LEA EAX,[EBX + 0xffffc02c]
PUSH 0x5
PUSH EAX
PUSH 0x0
CALL 0x000110d0
POP EDX
POP ECX
PUSH EAX
PUSH ESI
CALL 0x000111c0
ADD ESP,0xc
LEA EAX,[EBX + 0xffffc528]
PUSH 0x5
PUSH EAX
PUSH 0x0
CALL 0x000110d0
POP EBP
POP EDX
PUSH EAX
PUSH ESI
CALL 0x000111c0
ADD ESP,0xc
LEA EAX,[EBX + 0xffffc054]
MOV EBP,dword ptr [EBX + 0x190]
PUSH 0x5
PUSH EAX
PUSH 0x0
CALL 0x000110d0
ADD ESP,0xc
PUSH EBP
PUSH EAX
PUSH ESI
CALL 0x000111c0
ADD ESP,0x10
TEST EDI,EDI
JZ 0x000119a3
SUB ESP,0xc
PUSH EDI
CALL 0x00011170
PUSH EAX
LEA EAX,[EBX + 0xffffc53b]
PUSH 0x5
PUSH EAX
PUSH 0x0
CALL 0x000110d0
ADD ESP,0xc
LEA EDX,[EBX + 0xffffc23c]
PUSH EDX
PUSH EAX
PUSH ESI
CALL 0x000111c0
ADD ESP,0x10
JMP 0x0001199a
(translation_unit "/* WARNING: Function: __i686.get_pc_thunk.bx replaced with injection: get_pc_thunk_bx */\n\nvoid __regparm3 FUN_00011900(FILE *param_1,int param_2)\n\n{\n  undefined *puVar1;\n  char *pcVar2;\n  int iVar3;\n  \n  puVar1 = PTR_s_elfedit_00019190;\n  pcVar2 = (char *)dcgettext(0,"Usage: %s <option(s)> elffile(s)\n",5);\n  fprintf(param_1,pcVar2,puVar1);\n  pcVar2 = (char *)dcgettext(0," Update the ELF header of ELF files\n",5);\n  fprintf(param_1,pcVar2);\n  pcVar2 = (char *)dcgettext(0," The options are:\n",5);\n  fprintf(param_1,pcVar2);\n  puVar1 = PTR_s_elfedit_00019190;\n  pcVar2 = (char *)dcgettext(0,\n                             "  --input-mach <machine>      Set input machine type to <machine>\n  --output-mach <machine>     Set output machine type to <machine>\n  --input-type <type>         Set input file type to <type>\n  --output-type <type>        Set output file type to <type>\n  --input-osabi <osabi>       Set input OSABI to <osabi>\n  --output-osabi <osabi>      Set output OSABI to <osabi>\n  -h --help                   Display this information\n  -v --version                Display the version number of %s\n"\n                             ,5);\n  iVar3 = fprintf(param_1,pcVar2,puVar1);\n  if (param_2 == 0) {\n    pcVar2 = (char *)dcgettext(0,"Report bugs to %s\n",5,iVar3);\n    fprintf(param_1,pcVar2,"<http://www.sourceware.org/bugzilla/>");\n  }\n                    /* WARNING: Subroutine does not return */\n  exit(param_2);\n}\n\n" comment (function_definition "void __regparm3 FUN_00011900(FILE *param_1,int param_2)\n\n{\n  undefined *puVar1;\n  char *pcVar2;\n  int iVar3;\n  \n  puVar1 = PTR_s_elfedit_00019190;\n  pcVar2 = (char *)dcgettext(0,"Usage: %s <option(s)> elffile(s)\n",5);\n  fprintf(param_1,pcVar2,puVar1);\n  pcVar2 = (char *)dcgettext(0," Update the ELF header of ELF files\n",5);\n  fprintf(param_1,pcVar2);\n  pcVar2 = (char *)dcgettext(0," The options are:\n",5);\n  fprintf(param_1,pcVar2);\n  puVar1 = PTR_s_elfedit_00019190;\n  pcVar2 = (char *)dcgettext(0,\n                             "  --input-mach <machine>      Set input machine type to <machine>\n  --output-mach <machine>     Set output machine type to <machine>\n  --input-type <type>         Set input file type to <type>\n  --output-type <type>        Set output file type to <type>\n  --input-osabi <osabi>       Set input OSABI to <osabi>\n  --output-osabi <osabi>      Set output OSABI to <osabi>\n  -h --help                   Display this information\n  -v --version                Display the version number of %s\n"\n                             ,5);\n  iVar3 = fprintf(param_1,pcVar2,puVar1);\n  if (param_2 == 0) {\n    pcVar2 = (char *)dcgettext(0,"Report bugs to %s\n",5,iVar3);\n    fprintf(param_1,pcVar2,"<http://www.sourceware.org/bugzilla/>");\n  }\n                    /* WARNING: Subroutine does not return */\n  exit(param_2);\n}" primitive_type (ERROR "__regparm3" identifier) (function_declarator "FUN_00011900(FILE *param_1,int param_2)" identifier (parameter_list "(FILE *param_1,int param_2)" ( (parameter_declaration "FILE *param_1" type_identifier (pointer_declarator "*param_1" * identifier)) , (parameter_declaration "int param_2" primitive_type identifier) ))) (compound_statement "{\n  undefined *puVar1;\n  char *pcVar2;\n  int iVar3;\n  \n  puVar1 = PTR_s_elfedit_00019190;\n  pcVar2 = (char *)dcgettext(0,"Usage: %s <option(s)> elffile(s)\n",5);\n  fprintf(param_1,pcVar2,puVar1);\n  pcVar2 = (char *)dcgettext(0," Update the ELF header of ELF files\n",5);\n  fprintf(param_1,pcVar2);\n  pcVar2 = (char *)dcgettext(0," The options are:\n",5);\n  fprintf(param_1,pcVar2);\n  puVar1 = PTR_s_elfedit_00019190;\n  pcVar2 = (char *)dcgettext(0,\n                             "  --input-mach <machine>      Set input machine type to <machine>\n  --output-mach <machine>     Set output machine type to <machine>\n  --input-type <type>         Set input file type to <type>\n  --output-type <type>        Set output file type to <type>\n  --input-osabi <osabi>       Set input OSABI to <osabi>\n  --output-osabi <osabi>      Set output OSABI to <osabi>\n  -h --help                   Display this information\n  -v --version                Display the version number of %s\n"\n                             ,5);\n  iVar3 = fprintf(param_1,pcVar2,puVar1);\n  if (param_2 == 0) {\n    pcVar2 = (char *)dcgettext(0,"Report bugs to %s\n",5,iVar3);\n    fprintf(param_1,pcVar2,"<http://www.sourceware.org/bugzilla/>");\n  }\n                    /* WARNING: Subroutine does not return */\n  exit(param_2);\n}" { (declaration "undefined *puVar1;" type_identifier (pointer_declarator "*puVar1" * identifier) ;) (declaration "char *pcVar2;" primitive_type (pointer_declarator "*pcVar2" * identifier) ;) (declaration "int iVar3;" primitive_type identifier ;) (expression_statement "puVar1 = PTR_s_elfedit_00019190;" (assignment_expression "puVar1 = PTR_s_elfedit_00019190" identifier = identifier) ;) (expression_statement "pcVar2 = (char *)dcgettext(0,"Usage: %s <option(s)> elffile(s)\n",5);" (assignment_expression "pcVar2 = (char *)dcgettext(0,"Usage: %s <option(s)> elffile(s)\n",5)" identifier = (cast_expression "(char *)dcgettext(0,"Usage: %s <option(s)> elffile(s)\n",5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"Usage: %s <option(s)> elffile(s)\n",5)" identifier (argument_list "(0,"Usage: %s <option(s)> elffile(s)\n",5)" ( number_literal , (string_literal ""Usage: %s <option(s)> elffile(s)\n"" " string_content escape_sequence ") , number_literal ))))) ;) (expression_statement "fprintf(param_1,pcVar2,puVar1);" (call_expression "fprintf(param_1,pcVar2,puVar1)" identifier (argument_list "(param_1,pcVar2,puVar1)" ( identifier , identifier , identifier ))) ;) (expression_statement "pcVar2 = (char *)dcgettext(0," Update the ELF header of ELF files\n",5);" (assignment_expression "pcVar2 = (char *)dcgettext(0," Update the ELF header of ELF files\n",5)" identifier = (cast_expression "(char *)dcgettext(0," Update the ELF header of ELF files\n",5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0," Update the ELF header of ELF files\n",5)" identifier (argument_list "(0," Update the ELF header of ELF files\n",5)" ( number_literal , (string_literal "" Update the ELF header of ELF files\n"" " string_content escape_sequence ") , number_literal ))))) ;) (expression_statement "fprintf(param_1,pcVar2);" (call_expression "fprintf(param_1,pcVar2)" identifier (argument_list "(param_1,pcVar2)" ( identifier , identifier ))) ;) (expression_statement "pcVar2 = (char *)dcgettext(0," The options are:\n",5);" (assignment_expression "pcVar2 = (char *)dcgettext(0," The options are:\n",5)" identifier = (cast_expression "(char *)dcgettext(0," The options are:\n",5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0," The options are:\n",5)" identifier (argument_list "(0," The options are:\n",5)" ( number_literal , (string_literal "" The options are:\n"" " string_content escape_sequence ") , number_literal ))))) ;) (expression_statement "fprintf(param_1,pcVar2);" (call_expression "fprintf(param_1,pcVar2)" identifier (argument_list "(param_1,pcVar2)" ( identifier , identifier ))) ;) (expression_statement "puVar1 = PTR_s_elfedit_00019190;" (assignment_expression "puVar1 = PTR_s_elfedit_00019190" identifier = identifier) ;) (expression_statement "pcVar2 = (char *)dcgettext(0,\n                             "  --input-mach <machine>      Set input machine type to <machine>\n  --output-mach <machine>     Set output machine type to <machine>\n  --input-type <type>         Set input file type to <type>\n  --output-type <type>        Set output file type to <type>\n  --input-osabi <osabi>       Set input OSABI to <osabi>\n  --output-osabi <osabi>      Set output OSABI to <osabi>\n  -h --help                   Display this information\n  -v --version                Display the version number of %s\n"\n                             ,5);" (assignment_expression "pcVar2 = (char *)dcgettext(0,\n                             "  --input-mach <machine>      Set input machine type to <machine>\n  --output-mach <machine>     Set output machine type to <machine>\n  --input-type <type>         Set input file type to <type>\n  --output-type <type>        Set output file type to <type>\n  --input-osabi <osabi>       Set input OSABI to <osabi>\n  --output-osabi <osabi>      Set output OSABI to <osabi>\n  -h --help                   Display this information\n  -v --version                Display the version number of %s\n"\n                             ,5)" identifier = (cast_expression "(char *)dcgettext(0,\n                             "  --input-mach <machine>      Set input machine type to <machine>\n  --output-mach <machine>     Set output machine type to <machine>\n  --input-type <type>         Set input file type to <type>\n  --output-type <type>        Set output file type to <type>\n  --input-osabi <osabi>       Set input OSABI to <osabi>\n  --output-osabi <osabi>      Set output OSABI to <osabi>\n  -h --help                   Display this information\n  -v --version                Display the version number of %s\n"\n                             ,5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,\n                             "  --input-mach <machine>      Set input machine type to <machine>\n  --output-mach <machine>     Set output machine type to <machine>\n  --input-type <type>         Set input file type to <type>\n  --output-type <type>        Set output file type to <type>\n  --input-osabi <osabi>       Set input OSABI to <osabi>\n  --output-osabi <osabi>      Set output OSABI to <osabi>\n  -h --help                   Display this information\n  -v --version                Display the version number of %s\n"\n                             ,5)" identifier (argument_list "(0,\n                             "  --input-mach <machine>      Set input machine type to <machine>\n  --output-mach <machine>     Set output machine type to <machine>\n  --input-type <type>         Set input file type to <type>\n  --output-type <type>        Set output file type to <type>\n  --input-osabi <osabi>       Set input OSABI to <osabi>\n  --output-osabi <osabi>      Set output OSABI to <osabi>\n  -h --help                   Display this information\n  -v --version                Display the version number of %s\n"\n                             ,5)" ( number_literal , (string_literal ""  --input-mach <machine>      Set input machine type to <machine>\n  --output-mach <machine>     Set output machine type to <machine>\n  --input-type <type>         Set input file type to <type>\n  --output-type <type>        Set output file type to <type>\n  --input-osabi <osabi>       Set input OSABI to <osabi>\n  --output-osabi <osabi>      Set output OSABI to <osabi>\n  -h --help                   Display this information\n  -v --version                Display the version number of %s\n"" " string_content escape_sequence string_content escape_sequence string_content escape_sequence string_content escape_sequence string_content escape_sequence string_content escape_sequence string_content escape_sequence string_content escape_sequence ") , number_literal ))))) ;) (expression_statement "iVar3 = fprintf(param_1,pcVar2,puVar1);" (assignment_expression "iVar3 = fprintf(param_1,pcVar2,puVar1)" identifier = (call_expression "fprintf(param_1,pcVar2,puVar1)" identifier (argument_list "(param_1,pcVar2,puVar1)" ( identifier , identifier , identifier )))) ;) (if_statement "if (param_2 == 0) {\n    pcVar2 = (char *)dcgettext(0,"Report bugs to %s\n",5,iVar3);\n    fprintf(param_1,pcVar2,"<http://www.sourceware.org/bugzilla/>");\n  }" if (parenthesized_expression "(param_2 == 0)" ( (binary_expression "param_2 == 0" identifier == number_literal) )) (compound_statement "{\n    pcVar2 = (char *)dcgettext(0,"Report bugs to %s\n",5,iVar3);\n    fprintf(param_1,pcVar2,"<http://www.sourceware.org/bugzilla/>");\n  }" { (expression_statement "pcVar2 = (char *)dcgettext(0,"Report bugs to %s\n",5,iVar3);" (assignment_expression "pcVar2 = (char *)dcgettext(0,"Report bugs to %s\n",5,iVar3)" identifier = (cast_expression "(char *)dcgettext(0,"Report bugs to %s\n",5,iVar3)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"Report bugs to %s\n",5,iVar3)" identifier (argument_list "(0,"Report bugs to %s\n",5,iVar3)" ( number_literal , (string_literal ""Report bugs to %s\n"" " string_content escape_sequence ") , number_literal , identifier ))))) ;) (expression_statement "fprintf(param_1,pcVar2,"<http://www.sourceware.org/bugzilla/>");" (call_expression "fprintf(param_1,pcVar2,"<http://www.sourceware.org/bugzilla/>")" identifier (argument_list "(param_1,pcVar2,"<http://www.sourceware.org/bugzilla/>")" ( identifier , identifier , (string_literal ""<http://www.sourceware.org/bugzilla/>"" " string_content ") ))) ;) })) comment (expression_statement "exit(param_2);" (call_expression "exit(param_2)" identifier (argument_list "(param_2)" ( identifier ))) ;) })))
(translation_unit "/* WARNING: Function: __x86.get_pc_thunk.bx replaced with injection: get_pc_thunk_bx */\n\nvoid __regparm3 usage(FILE *stream,int exit_status)\n\n{\n  char *pcVar1;\n  char *pcVar2;\n  int iVar3;\n  \n  pcVar2 = program_name;\n  pcVar1 = (char *)dcgettext(0,"Usage: %s <option(s)> elffile(s)\n",5);\n  fprintf((FILE *)stream,pcVar1,pcVar2);\n  pcVar2 = (char *)dcgettext(0," Update the ELF header of ELF files\n",5);\n  fprintf((FILE *)stream,pcVar2);\n  pcVar2 = (char *)dcgettext(0," The options are:\n",5);\n  fprintf((FILE *)stream,pcVar2);\n  pcVar2 = program_name;\n  pcVar1 = (char *)dcgettext(0,\n                             "  --input-mach <machine>      Set input machine type to <machine>\n  --output-mach <machine>     Set output machine type to <machine>\n  --input-type <type>         Set input file type to <type>\n  --output-type <type>        Set output file type to <type>\n  --input-osabi <osabi>       Set input OSABI to <osabi>\n  --output-osabi <osabi>      Set output OSABI to <osabi>\n  -h --help                   Display this information\n  -v --version                Display the version number of %s\n"\n                             ,5);\n  iVar3 = fprintf((FILE *)stream,pcVar1,pcVar2);\n  if (exit_status == 0) {\n    pcVar2 = (char *)dcgettext(0,"Report bugs to %s\n",5,iVar3);\n    fprintf((FILE *)stream,pcVar2,"<http://www.sourceware.org/bugzilla/>");\n  }\n                    /* WARNING: Subroutine does not return */\n  exit(exit_status);\n}\n\n" comment (function_definition "void __regparm3 usage(FILE *stream,int exit_status)\n\n{\n  char *pcVar1;\n  char *pcVar2;\n  int iVar3;\n  \n  pcVar2 = program_name;\n  pcVar1 = (char *)dcgettext(0,"Usage: %s <option(s)> elffile(s)\n",5);\n  fprintf((FILE *)stream,pcVar1,pcVar2);\n  pcVar2 = (char *)dcgettext(0," Update the ELF header of ELF files\n",5);\n  fprintf((FILE *)stream,pcVar2);\n  pcVar2 = (char *)dcgettext(0," The options are:\n",5);\n  fprintf((FILE *)stream,pcVar2);\n  pcVar2 = program_name;\n  pcVar1 = (char *)dcgettext(0,\n                             "  --input-mach <machine>      Set input machine type to <machine>\n  --output-mach <machine>     Set output machine type to <machine>\n  --input-type <type>         Set input file type to <type>\n  --output-type <type>        Set output file type to <type>\n  --input-osabi <osabi>       Set input OSABI to <osabi>\n  --output-osabi <osabi>      Set output OSABI to <osabi>\n  -h --help                   Display this information\n  -v --version                Display the version number of %s\n"\n                             ,5);\n  iVar3 = fprintf((FILE *)stream,pcVar1,pcVar2);\n  if (exit_status == 0) {\n    pcVar2 = (char *)dcgettext(0,"Report bugs to %s\n",5,iVar3);\n    fprintf((FILE *)stream,pcVar2,"<http://www.sourceware.org/bugzilla/>");\n  }\n                    /* WARNING: Subroutine does not return */\n  exit(exit_status);\n}" primitive_type (ERROR "__regparm3" identifier) (function_declarator "usage(FILE *stream,int exit_status)" identifier (parameter_list "(FILE *stream,int exit_status)" ( (parameter_declaration "FILE *stream" type_identifier (pointer_declarator "*stream" * identifier)) , (parameter_declaration "int exit_status" primitive_type identifier) ))) (compound_statement "{\n  char *pcVar1;\n  char *pcVar2;\n  int iVar3;\n  \n  pcVar2 = program_name;\n  pcVar1 = (char *)dcgettext(0,"Usage: %s <option(s)> elffile(s)\n",5);\n  fprintf((FILE *)stream,pcVar1,pcVar2);\n  pcVar2 = (char *)dcgettext(0," Update the ELF header of ELF files\n",5);\n  fprintf((FILE *)stream,pcVar2);\n  pcVar2 = (char *)dcgettext(0," The options are:\n",5);\n  fprintf((FILE *)stream,pcVar2);\n  pcVar2 = program_name;\n  pcVar1 = (char *)dcgettext(0,\n                             "  --input-mach <machine>      Set input machine type to <machine>\n  --output-mach <machine>     Set output machine type to <machine>\n  --input-type <type>         Set input file type to <type>\n  --output-type <type>        Set output file type to <type>\n  --input-osabi <osabi>       Set input OSABI to <osabi>\n  --output-osabi <osabi>      Set output OSABI to <osabi>\n  -h --help                   Display this information\n  -v --version                Display the version number of %s\n"\n                             ,5);\n  iVar3 = fprintf((FILE *)stream,pcVar1,pcVar2);\n  if (exit_status == 0) {\n    pcVar2 = (char *)dcgettext(0,"Report bugs to %s\n",5,iVar3);\n    fprintf((FILE *)stream,pcVar2,"<http://www.sourceware.org/bugzilla/>");\n  }\n                    /* WARNING: Subroutine does not return */\n  exit(exit_status);\n}" { (declaration "char *pcVar1;" primitive_type (pointer_declarator "*pcVar1" * identifier) ;) (declaration "char *pcVar2;" primitive_type (pointer_declarator "*pcVar2" * identifier) ;) (declaration "int iVar3;" primitive_type identifier ;) (expression_statement "pcVar2 = program_name;" (assignment_expression "pcVar2 = program_name" identifier = identifier) ;) (expression_statement "pcVar1 = (char *)dcgettext(0,"Usage: %s <option(s)> elffile(s)\n",5);" (assignment_expression "pcVar1 = (char *)dcgettext(0,"Usage: %s <option(s)> elffile(s)\n",5)" identifier = (cast_expression "(char *)dcgettext(0,"Usage: %s <option(s)> elffile(s)\n",5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"Usage: %s <option(s)> elffile(s)\n",5)" identifier (argument_list "(0,"Usage: %s <option(s)> elffile(s)\n",5)" ( number_literal , (string_literal ""Usage: %s <option(s)> elffile(s)\n"" " string_content escape_sequence ") , number_literal ))))) ;) (expression_statement "fprintf((FILE *)stream,pcVar1,pcVar2);" (call_expression "fprintf((FILE *)stream,pcVar1,pcVar2)" identifier (argument_list "((FILE *)stream,pcVar1,pcVar2)" ( (cast_expression "(FILE *)stream" ( (type_descriptor "FILE *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier) , identifier , identifier ))) ;) (expression_statement "pcVar2 = (char *)dcgettext(0," Update the ELF header of ELF files\n",5);" (assignment_expression "pcVar2 = (char *)dcgettext(0," Update the ELF header of ELF files\n",5)" identifier = (cast_expression "(char *)dcgettext(0," Update the ELF header of ELF files\n",5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0," Update the ELF header of ELF files\n",5)" identifier (argument_list "(0," Update the ELF header of ELF files\n",5)" ( number_literal , (string_literal "" Update the ELF header of ELF files\n"" " string_content escape_sequence ") , number_literal ))))) ;) (expression_statement "fprintf((FILE *)stream,pcVar2);" (call_expression "fprintf((FILE *)stream,pcVar2)" identifier (argument_list "((FILE *)stream,pcVar2)" ( (cast_expression "(FILE *)stream" ( (type_descriptor "FILE *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier) , identifier ))) ;) (expression_statement "pcVar2 = (char *)dcgettext(0," The options are:\n",5);" (assignment_expression "pcVar2 = (char *)dcgettext(0," The options are:\n",5)" identifier = (cast_expression "(char *)dcgettext(0," The options are:\n",5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0," The options are:\n",5)" identifier (argument_list "(0," The options are:\n",5)" ( number_literal , (string_literal "" The options are:\n"" " string_content escape_sequence ") , number_literal ))))) ;) (expression_statement "fprintf((FILE *)stream,pcVar2);" (call_expression "fprintf((FILE *)stream,pcVar2)" identifier (argument_list "((FILE *)stream,pcVar2)" ( (cast_expression "(FILE *)stream" ( (type_descriptor "FILE *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier) , identifier ))) ;) (expression_statement "pcVar2 = program_name;" (assignment_expression "pcVar2 = program_name" identifier = identifier) ;) (expression_statement "pcVar1 = (char *)dcgettext(0,\n                             "  --input-mach <machine>      Set input machine type to <machine>\n  --output-mach <machine>     Set output machine type to <machine>\n  --input-type <type>         Set input file type to <type>\n  --output-type <type>        Set output file type to <type>\n  --input-osabi <osabi>       Set input OSABI to <osabi>\n  --output-osabi <osabi>      Set output OSABI to <osabi>\n  -h --help                   Display this information\n  -v --version                Display the version number of %s\n"\n                             ,5);" (assignment_expression "pcVar1 = (char *)dcgettext(0,\n                             "  --input-mach <machine>      Set input machine type to <machine>\n  --output-mach <machine>     Set output machine type to <machine>\n  --input-type <type>         Set input file type to <type>\n  --output-type <type>        Set output file type to <type>\n  --input-osabi <osabi>       Set input OSABI to <osabi>\n  --output-osabi <osabi>      Set output OSABI to <osabi>\n  -h --help                   Display this information\n  -v --version                Display the version number of %s\n"\n                             ,5)" identifier = (cast_expression "(char *)dcgettext(0,\n                             "  --input-mach <machine>      Set input machine type to <machine>\n  --output-mach <machine>     Set output machine type to <machine>\n  --input-type <type>         Set input file type to <type>\n  --output-type <type>        Set output file type to <type>\n  --input-osabi <osabi>       Set input OSABI to <osabi>\n  --output-osabi <osabi>      Set output OSABI to <osabi>\n  -h --help                   Display this information\n  -v --version                Display the version number of %s\n"\n                             ,5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,\n                             "  --input-mach <machine>      Set input machine type to <machine>\n  --output-mach <machine>     Set output machine type to <machine>\n  --input-type <type>         Set input file type to <type>\n  --output-type <type>        Set output file type to <type>\n  --input-osabi <osabi>       Set input OSABI to <osabi>\n  --output-osabi <osabi>      Set output OSABI to <osabi>\n  -h --help                   Display this information\n  -v --version                Display the version number of %s\n"\n                             ,5)" identifier (argument_list "(0,\n                             "  --input-mach <machine>      Set input machine type to <machine>\n  --output-mach <machine>     Set output machine type to <machine>\n  --input-type <type>         Set input file type to <type>\n  --output-type <type>        Set output file type to <type>\n  --input-osabi <osabi>       Set input OSABI to <osabi>\n  --output-osabi <osabi>      Set output OSABI to <osabi>\n  -h --help                   Display this information\n  -v --version                Display the version number of %s\n"\n                             ,5)" ( number_literal , (string_literal ""  --input-mach <machine>      Set input machine type to <machine>\n  --output-mach <machine>     Set output machine type to <machine>\n  --input-type <type>         Set input file type to <type>\n  --output-type <type>        Set output file type to <type>\n  --input-osabi <osabi>       Set input OSABI to <osabi>\n  --output-osabi <osabi>      Set output OSABI to <osabi>\n  -h --help                   Display this information\n  -v --version                Display the version number of %s\n"" " string_content escape_sequence string_content escape_sequence string_content escape_sequence string_content escape_sequence string_content escape_sequence string_content escape_sequence string_content escape_sequence string_content escape_sequence ") , number_literal ))))) ;) (expression_statement "iVar3 = fprintf((FILE *)stream,pcVar1,pcVar2);" (assignment_expression "iVar3 = fprintf((FILE *)stream,pcVar1,pcVar2)" identifier = (call_expression "fprintf((FILE *)stream,pcVar1,pcVar2)" identifier (argument_list "((FILE *)stream,pcVar1,pcVar2)" ( (cast_expression "(FILE *)stream" ( (type_descriptor "FILE *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier) , identifier , identifier )))) ;) (if_statement "if (exit_status == 0) {\n    pcVar2 = (char *)dcgettext(0,"Report bugs to %s\n",5,iVar3);\n    fprintf((FILE *)stream,pcVar2,"<http://www.sourceware.org/bugzilla/>");\n  }" if (parenthesized_expression "(exit_status == 0)" ( (binary_expression "exit_status == 0" identifier == number_literal) )) (compound_statement "{\n    pcVar2 = (char *)dcgettext(0,"Report bugs to %s\n",5,iVar3);\n    fprintf((FILE *)stream,pcVar2,"<http://www.sourceware.org/bugzilla/>");\n  }" { (expression_statement "pcVar2 = (char *)dcgettext(0,"Report bugs to %s\n",5,iVar3);" (assignment_expression "pcVar2 = (char *)dcgettext(0,"Report bugs to %s\n",5,iVar3)" identifier = (cast_expression "(char *)dcgettext(0,"Report bugs to %s\n",5,iVar3)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"Report bugs to %s\n",5,iVar3)" identifier (argument_list "(0,"Report bugs to %s\n",5,iVar3)" ( number_literal , (string_literal ""Report bugs to %s\n"" " string_content escape_sequence ") , number_literal , identifier ))))) ;) (expression_statement "fprintf((FILE *)stream,pcVar2,"<http://www.sourceware.org/bugzilla/>");" (call_expression "fprintf((FILE *)stream,pcVar2,"<http://www.sourceware.org/bugzilla/>")" identifier (argument_list "((FILE *)stream,pcVar2,"<http://www.sourceware.org/bugzilla/>")" ( (cast_expression "(FILE *)stream" ( (type_descriptor "FILE *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier) , identifier , (string_literal ""<http://www.sourceware.org/bugzilla/>"" " string_content ") ))) ;) })) comment (expression_statement "exit(exit_status);" (call_expression "exit(exit_status)" identifier (argument_list "(exit_status)" ( identifier ))) ;) })))
(translation_unit "void __regparm3 FUN_00011900(FILE *param_1,int param_2)\n\n{\n  undefined *puVar1;\n  char *pcVar2;\n  int iVar3;\n  \n  puVar1 = PTR_s_elfedit_00019190;\n  pcVar2 = (char *)dcgettext(0,"Usage: %s <option(s)> elffile(s)\n",5);\n  fprintf(param_1,pcVar2,puVar1);\n  pcVar2 = (char *)dcgettext(0," Update the ELF header of ELF files\n",5);\n  fprintf(param_1,pcVar2);\n  pcVar2 = (char *)dcgettext(0," The options are:\n",5);\n  fprintf(param_1,pcVar2);\n  puVar1 = PTR_s_elfedit_00019190;\n  pcVar2 = (char *)dcgettext(0,\n                             "  --input-mach <machine>      Set input machine type to <machine>\n  --output-mach <machine>     Set output machine type to <machine>\n  --input-type <type>         Set input file type to <type>\n  --output-type <type>        Set output file type to <type>\n  --input-osabi <osabi>       Set input OSABI to <osabi>\n  --output-osabi <osabi>      Set output OSABI to <osabi>\n  -h --help                   Display this information\n  -v --version                Display the version number of %s\n"\n                             ,5);\n  iVar3 = fprintf(param_1,pcVar2,puVar1);\n  if (param_2 == 0) {\n    pcVar2 = (char *)dcgettext(0,"Report bugs to %s\n",5,iVar3);\n    fprintf(param_1,pcVar2,"<http:\n  }\n                    \n  exit(param_2);\n}\n\n" (function_definition "void __regparm3 FUN_00011900(FILE *param_1,int param_2)\n\n{\n  undefined *puVar1;\n  char *pcVar2;\n  int iVar3;\n  \n  puVar1 = PTR_s_elfedit_00019190;\n  pcVar2 = (char *)dcgettext(0,"Usage: %s <option(s)> elffile(s)\n",5);\n  fprintf(param_1,pcVar2,puVar1);\n  pcVar2 = (char *)dcgettext(0," Update the ELF header of ELF files\n",5);\n  fprintf(param_1,pcVar2);\n  pcVar2 = (char *)dcgettext(0," The options are:\n",5);\n  fprintf(param_1,pcVar2);\n  puVar1 = PTR_s_elfedit_00019190;\n  pcVar2 = (char *)dcgettext(0,\n                             "  --input-mach <machine>      Set input machine type to <machine>\n  --output-mach <machine>     Set output machine type to <machine>\n  --input-type <type>         Set input file type to <type>\n  --output-type <type>        Set output file type to <type>\n  --input-osabi <osabi>       Set input OSABI to <osabi>\n  --output-osabi <osabi>      Set output OSABI to <osabi>\n  -h --help                   Display this information\n  -v --version                Display the version number of %s\n"\n                             ,5);\n  iVar3 = fprintf(param_1,pcVar2,puVar1);\n  if (param_2 == 0) {\n    pcVar2 = (char *)dcgettext(0,"Report bugs to %s\n",5,iVar3);\n    fprintf(param_1,pcVar2,"<http:\n  }\n                    \n  exit(param_2);\n}" primitive_type (ERROR "__regparm3" identifier) (function_declarator "FUN_00011900(FILE *param_1,int param_2)" identifier (parameter_list "(FILE *param_1,int param_2)" ( (parameter_declaration "FILE *param_1" type_identifier (pointer_declarator "*param_1" * identifier)) , (parameter_declaration "int param_2" primitive_type identifier) ))) (compound_statement "{\n  undefined *puVar1;\n  char *pcVar2;\n  int iVar3;\n  \n  puVar1 = PTR_s_elfedit_00019190;\n  pcVar2 = (char *)dcgettext(0,"Usage: %s <option(s)> elffile(s)\n",5);\n  fprintf(param_1,pcVar2,puVar1);\n  pcVar2 = (char *)dcgettext(0," Update the ELF header of ELF files\n",5);\n  fprintf(param_1,pcVar2);\n  pcVar2 = (char *)dcgettext(0," The options are:\n",5);\n  fprintf(param_1,pcVar2);\n  puVar1 = PTR_s_elfedit_00019190;\n  pcVar2 = (char *)dcgettext(0,\n                             "  --input-mach <machine>      Set input machine type to <machine>\n  --output-mach <machine>     Set output machine type to <machine>\n  --input-type <type>         Set input file type to <type>\n  --output-type <type>        Set output file type to <type>\n  --input-osabi <osabi>       Set input OSABI to <osabi>\n  --output-osabi <osabi>      Set output OSABI to <osabi>\n  -h --help                   Display this information\n  -v --version                Display the version number of %s\n"\n                             ,5);\n  iVar3 = fprintf(param_1,pcVar2,puVar1);\n  if (param_2 == 0) {\n    pcVar2 = (char *)dcgettext(0,"Report bugs to %s\n",5,iVar3);\n    fprintf(param_1,pcVar2,"<http:\n  }\n                    \n  exit(param_2);\n}" { (declaration "undefined *puVar1;" type_identifier (pointer_declarator "*puVar1" * identifier) ;) (declaration "char *pcVar2;" primitive_type (pointer_declarator "*pcVar2" * identifier) ;) (declaration "int iVar3;" primitive_type identifier ;) (expression_statement "puVar1 = PTR_s_elfedit_00019190;" (assignment_expression "puVar1 = PTR_s_elfedit_00019190" identifier = identifier) ;) (expression_statement "pcVar2 = (char *)dcgettext(0,"Usage: %s <option(s)> elffile(s)\n",5);" (assignment_expression "pcVar2 = (char *)dcgettext(0,"Usage: %s <option(s)> elffile(s)\n",5)" identifier = (cast_expression "(char *)dcgettext(0,"Usage: %s <option(s)> elffile(s)\n",5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"Usage: %s <option(s)> elffile(s)\n",5)" identifier (argument_list "(0,"Usage: %s <option(s)> elffile(s)\n",5)" ( number_literal , (string_literal ""Usage: %s <option(s)> elffile(s)\n"" " string_content escape_sequence ") , number_literal ))))) ;) (expression_statement "fprintf(param_1,pcVar2,puVar1);" (call_expression "fprintf(param_1,pcVar2,puVar1)" identifier (argument_list "(param_1,pcVar2,puVar1)" ( identifier , identifier , identifier ))) ;) (expression_statement "pcVar2 = (char *)dcgettext(0," Update the ELF header of ELF files\n",5);" (assignment_expression "pcVar2 = (char *)dcgettext(0," Update the ELF header of ELF files\n",5)" identifier = (cast_expression "(char *)dcgettext(0," Update the ELF header of ELF files\n",5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0," Update the ELF header of ELF files\n",5)" identifier (argument_list "(0," Update the ELF header of ELF files\n",5)" ( number_literal , (string_literal "" Update the ELF header of ELF files\n"" " string_content escape_sequence ") , number_literal ))))) ;) (expression_statement "fprintf(param_1,pcVar2);" (call_expression "fprintf(param_1,pcVar2)" identifier (argument_list "(param_1,pcVar2)" ( identifier , identifier ))) ;) (expression_statement "pcVar2 = (char *)dcgettext(0," The options are:\n",5);" (assignment_expression "pcVar2 = (char *)dcgettext(0," The options are:\n",5)" identifier = (cast_expression "(char *)dcgettext(0," The options are:\n",5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0," The options are:\n",5)" identifier (argument_list "(0," The options are:\n",5)" ( number_literal , (string_literal "" The options are:\n"" " string_content escape_sequence ") , number_literal ))))) ;) (expression_statement "fprintf(param_1,pcVar2);" (call_expression "fprintf(param_1,pcVar2)" identifier (argument_list "(param_1,pcVar2)" ( identifier , identifier ))) ;) (expression_statement "puVar1 = PTR_s_elfedit_00019190;" (assignment_expression "puVar1 = PTR_s_elfedit_00019190" identifier = identifier) ;) (expression_statement "pcVar2 = (char *)dcgettext(0,\n                             "  --input-mach <machine>      Set input machine type to <machine>\n  --output-mach <machine>     Set output machine type to <machine>\n  --input-type <type>         Set input file type to <type>\n  --output-type <type>        Set output file type to <type>\n  --input-osabi <osabi>       Set input OSABI to <osabi>\n  --output-osabi <osabi>      Set output OSABI to <osabi>\n  -h --help                   Display this information\n  -v --version                Display the version number of %s\n"\n                             ,5);" (assignment_expression "pcVar2 = (char *)dcgettext(0,\n                             "  --input-mach <machine>      Set input machine type to <machine>\n  --output-mach <machine>     Set output machine type to <machine>\n  --input-type <type>         Set input file type to <type>\n  --output-type <type>        Set output file type to <type>\n  --input-osabi <osabi>       Set input OSABI to <osabi>\n  --output-osabi <osabi>      Set output OSABI to <osabi>\n  -h --help                   Display this information\n  -v --version                Display the version number of %s\n"\n                             ,5)" identifier = (cast_expression "(char *)dcgettext(0,\n                             "  --input-mach <machine>      Set input machine type to <machine>\n  --output-mach <machine>     Set output machine type to <machine>\n  --input-type <type>         Set input file type to <type>\n  --output-type <type>        Set output file type to <type>\n  --input-osabi <osabi>       Set input OSABI to <osabi>\n  --output-osabi <osabi>      Set output OSABI to <osabi>\n  -h --help                   Display this information\n  -v --version                Display the version number of %s\n"\n                             ,5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,\n                             "  --input-mach <machine>      Set input machine type to <machine>\n  --output-mach <machine>     Set output machine type to <machine>\n  --input-type <type>         Set input file type to <type>\n  --output-type <type>        Set output file type to <type>\n  --input-osabi <osabi>       Set input OSABI to <osabi>\n  --output-osabi <osabi>      Set output OSABI to <osabi>\n  -h --help                   Display this information\n  -v --version                Display the version number of %s\n"\n                             ,5)" identifier (argument_list "(0,\n                             "  --input-mach <machine>      Set input machine type to <machine>\n  --output-mach <machine>     Set output machine type to <machine>\n  --input-type <type>         Set input file type to <type>\n  --output-type <type>        Set output file type to <type>\n  --input-osabi <osabi>       Set input OSABI to <osabi>\n  --output-osabi <osabi>      Set output OSABI to <osabi>\n  -h --help                   Display this information\n  -v --version                Display the version number of %s\n"\n                             ,5)" ( number_literal , (string_literal ""  --input-mach <machine>      Set input machine type to <machine>\n  --output-mach <machine>     Set output machine type to <machine>\n  --input-type <type>         Set input file type to <type>\n  --output-type <type>        Set output file type to <type>\n  --input-osabi <osabi>       Set input OSABI to <osabi>\n  --output-osabi <osabi>      Set output OSABI to <osabi>\n  -h --help                   Display this information\n  -v --version                Display the version number of %s\n"" " string_content escape_sequence string_content escape_sequence string_content escape_sequence string_content escape_sequence string_content escape_sequence string_content escape_sequence string_content escape_sequence string_content escape_sequence ") , number_literal ))))) ;) (expression_statement "iVar3 = fprintf(param_1,pcVar2,puVar1);" (assignment_expression "iVar3 = fprintf(param_1,pcVar2,puVar1)" identifier = (call_expression "fprintf(param_1,pcVar2,puVar1)" identifier (argument_list "(param_1,pcVar2,puVar1)" ( identifier , identifier , identifier )))) ;) (if_statement "if (param_2 == 0) {\n    pcVar2 = (char *)dcgettext(0,"Report bugs to %s\n",5,iVar3);\n    fprintf(param_1,pcVar2,"<http:\n  }\n                    \n  exit(param_2);\n}" if (parenthesized_expression "(param_2 == 0)" ( (binary_expression "param_2 == 0" identifier == number_literal) )) (compound_statement "{\n    pcVar2 = (char *)dcgettext(0,"Report bugs to %s\n",5,iVar3);\n    fprintf(param_1,pcVar2,"<http:\n  }\n                    \n  exit(param_2);\n}" { (expression_statement "pcVar2 = (char *)dcgettext(0,"Report bugs to %s\n",5,iVar3);" (assignment_expression "pcVar2 = (char *)dcgettext(0,"Report bugs to %s\n",5,iVar3)" identifier = (cast_expression "(char *)dcgettext(0,"Report bugs to %s\n",5,iVar3)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"Report bugs to %s\n",5,iVar3)" identifier (argument_list "(0,"Report bugs to %s\n",5,iVar3)" ( number_literal , (string_literal ""Report bugs to %s\n"" " string_content escape_sequence ") , number_literal , identifier ))))) ;) (expression_statement "fprintf(param_1,pcVar2,"<http:\n  }\n                    \n  exit(param_2);" (call_expression "fprintf(param_1,pcVar2,"<http:\n  }\n                    \n  exit(param_2)" identifier (argument_list "(param_1,pcVar2,"<http:\n  }\n                    \n  exit(param_2)" ( identifier , identifier , (ERROR ""<http:\n  }" " string_content }) (call_expression "exit(param_2)" identifier (argument_list "(param_2)" ( identifier ))) ))) ;) })) })))
(translation_unit (function_definition TYPE (ERROR IDENT) (function_declarator IDENT (parameter_list ( (parameter_declaration TYPE (pointer_declarator * IDENT)) , (parameter_declaration TYPE IDENT) ))) (compound_statement { (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE IDENT ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression IDENT (argument_list ( LIT , (string_literal " string_content escape_sequence ") , LIT ))))) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT , IDENT , IDENT ))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression IDENT (argument_list ( LIT , (string_literal " string_content escape_sequence ") , LIT ))))) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT , IDENT ))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression IDENT (argument_list ( LIT , (string_literal " string_content escape_sequence ") , LIT ))))) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT , IDENT ))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression IDENT (argument_list ( LIT , (string_literal " string_content escape_sequence string_content escape_sequence string_content escape_sequence string_content escape_sequence string_content escape_sequence string_content escape_sequence string_content escape_sequence string_content escape_sequence ") , LIT ))))) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT , IDENT , IDENT )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression IDENT (argument_list ( LIT , (string_literal " string_content escape_sequence ") , LIT , IDENT ))))) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT , IDENT , (ERROR " string_content }) (call_expression IDENT (argument_list ( IDENT ))) ))) ;) })) })))
(function_definition "void __regparm3 FUN_00011900(FILE *param_1,int param_2)\n\n{\n  undefined *puVar1;\n  char *pcVar2;\n  int iVar3;\n  \n  puVar1 = PTR_s_elfedit_00019190;\n  pcVar2 = (char *)dcgettext(0,"Usage: %s <option(s)> elffile(s)\n",5);\n  fprintf(param_1,pcVar2,puVar1);\n  pcVar2 = (char *)dcgettext(0," Update the ELF header of ELF files\n",5);\n  fprintf(param_1,pcVar2);\n  pcVar2 = (char *)dcgettext(0," The options are:\n",5);\n  fprintf(param_1,pcVar2);\n  puVar1 = PTR_s_elfedit_00019190;\n  pcVar2 = (char *)dcgettext(0,\n                             "  --input-mach <machine>      Set input machine type to <machine>\n  --output-mach <machine>     Set output machine type to <machine>\n  --input-type <type>         Set input file type to <type>\n  --output-type <type>        Set output file type to <type>\n  --input-osabi <osabi>       Set input OSABI to <osabi>\n  --output-osabi <osabi>      Set output OSABI to <osabi>\n  -h --help                   Display this information\n  -v --version                Display the version number of %s\n"\n                             ,5);\n  iVar3 = fprintf(param_1,pcVar2,puVar1);\n  if (param_2 == 0) {\n    pcVar2 = (char *)dcgettext(0,"Report bugs to %s\n",5,iVar3);\n    fprintf(param_1,pcVar2,"<http:\n  }\n                    \n  exit(param_2);\n}" (primitive_type "void") (ERROR "__regparm3" (identifier "__regparm3")) (function_declarator "FUN_00011900(FILE *param_1,int param_2)" (identifier "FUN_00011900") (parameter_list "(FILE *param_1,int param_2)" (( "(") (parameter_declaration "FILE *param_1" (type_identifier "FILE") (pointer_declarator "*param_1" (* "*") (identifier "param_1"))) (, ",") (parameter_declaration "int param_2" (primitive_type "int") (identifier "param_2")) () ")"))) (compound_statement "{\n  undefined *puVar1;\n  char *pcVar2;\n  int iVar3;\n  \n  puVar1 = PTR_s_elfedit_00019190;\n  pcVar2 = (char *)dcgettext(0,"Usage: %s <option(s)> elffile(s)\n",5);\n  fprintf(param_1,pcVar2,puVar1);\n  pcVar2 = (char *)dcgettext(0," Update the ELF header of ELF files\n",5);\n  fprintf(param_1,pcVar2);\n  pcVar2 = (char *)dcgettext(0," The options are:\n",5);\n  fprintf(param_1,pcVar2);\n  puVar1 = PTR_s_elfedit_00019190;\n  pcVar2 = (char *)dcgettext(0,\n                             "  --input-mach <machine>      Set input machine type to <machine>\n  --output-mach <machine>     Set output machine type to <machine>\n  --input-type <type>         Set input file type to <type>\n  --output-type <type>        Set output file type to <type>\n  --input-osabi <osabi>       Set input OSABI to <osabi>\n  --output-osabi <osabi>      Set output OSABI to <osabi>\n  -h --help                   Display this information\n  -v --version                Display the version number of %s\n"\n                             ,5);\n  iVar3 = fprintf(param_1,pcVar2,puVar1);\n  if (param_2 == 0) {\n    pcVar2 = (char *)dcgettext(0,"Report bugs to %s\n",5,iVar3);\n    fprintf(param_1,pcVar2,"<http:\n  }\n                    \n  exit(param_2);\n}" ({ "{") (declaration "undefined *puVar1;" (type_identifier "undefined") (pointer_declarator "*puVar1" (* "*") (identifier "puVar1")) (; ";")) (declaration "char *pcVar2;" (primitive_type "char") (pointer_declarator "*pcVar2" (* "*") (identifier "pcVar2")) (; ";")) (declaration "int iVar3;" (primitive_type "int") (identifier "iVar3") (; ";")) (expression_statement "puVar1 = PTR_s_elfedit_00019190;" (assignment_expression "puVar1 = PTR_s_elfedit_00019190" (identifier "puVar1") (= "=") (identifier "PTR_s_elfedit_00019190")) (; ";")) (expression_statement "pcVar2 = (char *)dcgettext(0,"Usage: %s <option(s)> elffile(s)\n",5);" (assignment_expression "pcVar2 = (char *)dcgettext(0,"Usage: %s <option(s)> elffile(s)\n",5)" (identifier "pcVar2") (= "=") (cast_expression "(char *)dcgettext(0,"Usage: %s <option(s)> elffile(s)\n",5)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "dcgettext(0,"Usage: %s <option(s)> elffile(s)\n",5)" (identifier "dcgettext") (argument_list "(0,"Usage: %s <option(s)> elffile(s)\n",5)" (( "(") (number_literal "0") (, ",") (string_literal ""Usage: %s <option(s)> elffile(s)\n"" (" """) (string_content "Usage: %s <option(s)> elffile(s)") (escape_sequence "\n") (" """)) (, ",") (number_literal "5") () ")"))))) (; ";")) (expression_statement "fprintf(param_1,pcVar2,puVar1);" (call_expression "fprintf(param_1,pcVar2,puVar1)" (identifier "fprintf") (argument_list "(param_1,pcVar2,puVar1)" (( "(") (identifier "param_1") (, ",") (identifier "pcVar2") (, ",") (identifier "puVar1") () ")"))) (; ";")) (expression_statement "pcVar2 = (char *)dcgettext(0," Update the ELF header of ELF files\n",5);" (assignment_expression "pcVar2 = (char *)dcgettext(0," Update the ELF header of ELF files\n",5)" (identifier "pcVar2") (= "=") (cast_expression "(char *)dcgettext(0," Update the ELF header of ELF files\n",5)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "dcgettext(0," Update the ELF header of ELF files\n",5)" (identifier "dcgettext") (argument_list "(0," Update the ELF header of ELF files\n",5)" (( "(") (number_literal "0") (, ",") (string_literal "" Update the ELF header of ELF files\n"" (" """) (string_content " Update the ELF header of ELF files") (escape_sequence "\n") (" """)) (, ",") (number_literal "5") () ")"))))) (; ";")) (expression_statement "fprintf(param_1,pcVar2);" (call_expression "fprintf(param_1,pcVar2)" (identifier "fprintf") (argument_list "(param_1,pcVar2)" (( "(") (identifier "param_1") (, ",") (identifier "pcVar2") () ")"))) (; ";")) (expression_statement "pcVar2 = (char *)dcgettext(0," The options are:\n",5);" (assignment_expression "pcVar2 = (char *)dcgettext(0," The options are:\n",5)" (identifier "pcVar2") (= "=") (cast_expression "(char *)dcgettext(0," The options are:\n",5)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "dcgettext(0," The options are:\n",5)" (identifier "dcgettext") (argument_list "(0," The options are:\n",5)" (( "(") (number_literal "0") (, ",") (string_literal "" The options are:\n"" (" """) (string_content " The options are:") (escape_sequence "\n") (" """)) (, ",") (number_literal "5") () ")"))))) (; ";")) (expression_statement "fprintf(param_1,pcVar2);" (call_expression "fprintf(param_1,pcVar2)" (identifier "fprintf") (argument_list "(param_1,pcVar2)" (( "(") (identifier "param_1") (, ",") (identifier "pcVar2") () ")"))) (; ";")) (expression_statement "puVar1 = PTR_s_elfedit_00019190;" (assignment_expression "puVar1 = PTR_s_elfedit_00019190" (identifier "puVar1") (= "=") (identifier "PTR_s_elfedit_00019190")) (; ";")) (expression_statement "pcVar2 = (char *)dcgettext(0,\n                             "  --input-mach <machine>      Set input machine type to <machine>\n  --output-mach <machine>     Set output machine type to <machine>\n  --input-type <type>         Set input file type to <type>\n  --output-type <type>        Set output file type to <type>\n  --input-osabi <osabi>       Set input OSABI to <osabi>\n  --output-osabi <osabi>      Set output OSABI to <osabi>\n  -h --help                   Display this information\n  -v --version                Display the version number of %s\n"\n                             ,5);" (assignment_expression "pcVar2 = (char *)dcgettext(0,\n                             "  --input-mach <machine>      Set input machine type to <machine>\n  --output-mach <machine>     Set output machine type to <machine>\n  --input-type <type>         Set input file type to <type>\n  --output-type <type>        Set output file type to <type>\n  --input-osabi <osabi>       Set input OSABI to <osabi>\n  --output-osabi <osabi>      Set output OSABI to <osabi>\n  -h --help                   Display this information\n  -v --version                Display the version number of %s\n"\n                             ,5)" (identifier "pcVar2") (= "=") (cast_expression "(char *)dcgettext(0,\n                             "  --input-mach <machine>      Set input machine type to <machine>\n  --output-mach <machine>     Set output machine type to <machine>\n  --input-type <type>         Set input file type to <type>\n  --output-type <type>        Set output file type to <type>\n  --input-osabi <osabi>       Set input OSABI to <osabi>\n  --output-osabi <osabi>      Set output OSABI to <osabi>\n  -h --help                   Display this information\n  -v --version                Display the version number of %s\n"\n                             ,5)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "dcgettext(0,\n                             "  --input-mach <machine>      Set input machine type to <machine>\n  --output-mach <machine>     Set output machine type to <machine>\n  --input-type <type>         Set input file type to <type>\n  --output-type <type>        Set output file type to <type>\n  --input-osabi <osabi>       Set input OSABI to <osabi>\n  --output-osabi <osabi>      Set output OSABI to <osabi>\n  -h --help                   Display this information\n  -v --version                Display the version number of %s\n"\n                             ,5)" (identifier "dcgettext") (argument_list "(0,\n                             "  --input-mach <machine>      Set input machine type to <machine>\n  --output-mach <machine>     Set output machine type to <machine>\n  --input-type <type>         Set input file type to <type>\n  --output-type <type>        Set output file type to <type>\n  --input-osabi <osabi>       Set input OSABI to <osabi>\n  --output-osabi <osabi>      Set output OSABI to <osabi>\n  -h --help                   Display this information\n  -v --version                Display the version number of %s\n"\n                             ,5)" (( "(") (number_literal "0") (, ",") (string_literal ""  --input-mach <machine>      Set input machine type to <machine>\n  --output-mach <machine>     Set output machine type to <machine>\n  --input-type <type>         Set input file type to <type>\n  --output-type <type>        Set output file type to <type>\n  --input-osabi <osabi>       Set input OSABI to <osabi>\n  --output-osabi <osabi>      Set output OSABI to <osabi>\n  -h --help                   Display this information\n  -v --version                Display the version number of %s\n"" (" """) (string_content "  --input-mach <machine>      Set input machine type to <machine>") (escape_sequence "\n") (string_content "  --output-mach <machine>     Set output machine type to <machine>") (escape_sequence "\n") (string_content "  --input-type <type>         Set input file type to <type>") (escape_sequence "\n") (string_content "  --output-type <type>        Set output file type to <type>") (escape_sequence "\n") (string_content "  --input-osabi <osabi>       Set input OSABI to <osabi>") (escape_sequence "\n") (string_content "  --output-osabi <osabi>      Set output OSABI to <osabi>") (escape_sequence "\n") (string_content "  -h --help                   Display this information") (escape_sequence "\n") (string_content "  -v --version                Display the version number of %s") (escape_sequence "\n") (" """)) (, ",") (number_literal "5") () ")"))))) (; ";")) (expression_statement "iVar3 = fprintf(param_1,pcVar2,puVar1);" (assignment_expression "iVar3 = fprintf(param_1,pcVar2,puVar1)" (identifier "iVar3") (= "=") (call_expression "fprintf(param_1,pcVar2,puVar1)" (identifier "fprintf") (argument_list "(param_1,pcVar2,puVar1)" (( "(") (identifier "param_1") (, ",") (identifier "pcVar2") (, ",") (identifier "puVar1") () ")")))) (; ";")) (if_statement "if (param_2 == 0) {\n    pcVar2 = (char *)dcgettext(0,"Report bugs to %s\n",5,iVar3);\n    fprintf(param_1,pcVar2,"<http:\n  }\n                    \n  exit(param_2);\n}" (if "if") (parenthesized_expression "(param_2 == 0)" (( "(") (binary_expression "param_2 == 0" (identifier "param_2") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n    pcVar2 = (char *)dcgettext(0,"Report bugs to %s\n",5,iVar3);\n    fprintf(param_1,pcVar2,"<http:\n  }\n                    \n  exit(param_2);\n}" ({ "{") (expression_statement "pcVar2 = (char *)dcgettext(0,"Report bugs to %s\n",5,iVar3);" (assignment_expression "pcVar2 = (char *)dcgettext(0,"Report bugs to %s\n",5,iVar3)" (identifier "pcVar2") (= "=") (cast_expression "(char *)dcgettext(0,"Report bugs to %s\n",5,iVar3)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "dcgettext(0,"Report bugs to %s\n",5,iVar3)" (identifier "dcgettext") (argument_list "(0,"Report bugs to %s\n",5,iVar3)" (( "(") (number_literal "0") (, ",") (string_literal ""Report bugs to %s\n"" (" """) (string_content "Report bugs to %s") (escape_sequence "\n") (" """)) (, ",") (number_literal "5") (, ",") (identifier "iVar3") () ")"))))) (; ";")) (expression_statement "fprintf(param_1,pcVar2,"<http:\n  }\n                    \n  exit(param_2);" (call_expression "fprintf(param_1,pcVar2,"<http:\n  }\n                    \n  exit(param_2)" (identifier "fprintf") (argument_list "(param_1,pcVar2,"<http:\n  }\n                    \n  exit(param_2)" (( "(") (identifier "param_1") (, ",") (identifier "pcVar2") (, ",") (ERROR ""<http:\n  }" (" """) (string_content "<http:") (} "}")) (call_expression "exit(param_2)" (identifier "exit") (argument_list "(param_2)" (( "(") (identifier "param_2") () ")"))) () ""))) (; ";")) (} "}"))) (} "")))

/* WARNING: Function: __x86.get_pc_thunk.bx replaced with injection: get_pc_thunk_bx */

void __regparm3 function_1(type_1 *stream,int var_3)

{
  char *pcVar1;
  char *pcVar2;
  int iVar3;
  
  pcVar2 = program_name;
  pcVar1 = (char *)var_1(0,"Usage: %s <option(s)> elffile(s)\n",5);
  var_2((type_1 *)stream,pcVar1,pcVar2);
  pcVar2 = (char *)var_1(0," Update the ELF header of ELF files\n",5);
  var_2((type_1 *)stream,pcVar2);
  pcVar2 = (char *)var_1(0," The options are:\n",5);
  var_2((type_1 *)stream,pcVar2);
  pcVar2 = program_name;
  pcVar1 = (char *)var_1(0,
                             "  --input-mach <machine>      Set input machine type to <machine>\n  --output-mach <machine>     Set output machine type to <machine>\n  --input-type <type>         Set input file type to <type>\n  --output-type <type>        Set output file type to <type>\n  --input-osabi <osabi>       Set input OSABI to <osabi>\n  --output-osabi <osabi>      Set output OSABI to <osabi>\n  -h --help                   Display this information\n  -v --version                Display the version number of %s\n"
                             ,5);
  iVar3 = var_2((type_1 *)stream,pcVar1,pcVar2);
  if (var_3 == 0) {
    pcVar2 = (char *)var_1(0,"Report bugs to %s\n",5,iVar3);
    var_2((type_1 *)stream,pcVar2,"<http://www.sourceware.org/bugzilla/>");
  }
                    /* WARNING: Subroutine does not return */
  var_4(var_3);
}


(translation_unit (function_definition type: (primitive_type) (ERROR (identifier)) declarator: (function_declarator declarator: (identifier) parameters: (parameter_list (parameter_declaration type: (type_identifier) declarator: (pointer_declarator declarator: (identifier))) (parameter_declaration type: (primitive_type) declarator: (identifier)))) body: (compound_statement (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (primitive_type) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (primitive_type) declarator: (identifier)) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (call_expression function: (identifier) arguments: (argument_list (number_literal) (string_literal (string_content) (escape_sequence)) (number_literal)))))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (identifier) (identifier) (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (call_expression function: (identifier) arguments: (argument_list (number_literal) (string_literal (string_content) (escape_sequence)) (number_literal)))))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (identifier) (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (call_expression function: (identifier) arguments: (argument_list (number_literal) (string_literal (string_content) (escape_sequence)) (number_literal)))))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (identifier) (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (call_expression function: (identifier) arguments: (argument_list (number_literal) (string_literal (string_content) (escape_sequence) (string_content) (escape_sequence) (string_content) (escape_sequence) (string_content) (escape_sequence) (string_content) (escape_sequence) (string_content) (escape_sequence) (string_content) (escape_sequence) (string_content) (escape_sequence)) (number_literal)))))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (identifier) (identifier) (identifier))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (call_expression function: (identifier) arguments: (argument_list (number_literal) (string_literal (string_content) (escape_sequence)) (number_literal) (identifier)))))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (identifier) (identifier) (ERROR (string_content)) (call_expression function: (identifier) arguments: (argument_list (identifier))) (MISSING ")")))))) (MISSING "}"))))

/* WARNING: Function: __i686.get_pc_thunk.bx replaced with injection: get_pc_thunk_bx */

void __regparm3 MASKED(FILE *param_1,int param_2)

{
  undefined *puVar1;
  char *pcVar2;
  int iVar3;
  
  puVar1 = PTR_s_elfedit_00019190;
  pcVar2 = (char *)dcgettext(0,"Usage: %s <option(s)> elffile(s)\n",5);
  fprintf(param_1,pcVar2,puVar1);
  pcVar2 = (char *)dcgettext(0," Update the ELF header of ELF files\n",5);
  fprintf(param_1,pcVar2);
  pcVar2 = (char *)dcgettext(0," The options are:\n",5);
  fprintf(param_1,pcVar2);
  puVar1 = PTR_s_elfedit_00019190;
  pcVar2 = (char *)dcgettext(0,
                             "  --input-mach <machine>      Set input machine type to <machine>\n  --output-mach <machine>     Set output machine type to <machine>\n  --input-type <type>         Set input file type to <type>\n  --output-type <type>        Set output file type to <type>\n  --input-osabi <osabi>       Set input OSABI to <osabi>\n  --output-osabi <osabi>      Set output OSABI to <osabi>\n  -h --help                   Display this information\n  -v --version                Display the version number of %s\n"
                             ,5);
  iVar3 = fprintf(param_1,pcVar2,puVar1);
  if (param_2 == 0) {
    pcVar2 = (char *)dcgettext(0,"Report bugs to %s\n",5,iVar3);
    fprintf(param_1,pcVar2,"<http://www.sourceware.org/bugzilla/>");
  }
                    /* WARNING: Subroutine does not return */
  exit(param_2);
}

