
/* WARNING: Function: __x86.get_pc_thunk.bx replaced with injection: get_pc_thunk_bx */
/* WARNING: Unknown calling convention -- yet parameter storage is locked */

void copyleft(void)

{
  FILE *pFVar1;
  undefined *puVar2;
  undefined4 uVar3;
  char *pcVar4;
  int iVar5;
  int *piVar6;
  char *mesg;
  int *piVar7;
  
  uVar3 = dcgettext(0,
                    "Copyright (C) 1989, 1991-%d Free Software Foundation.\n\nThis program is free software; you can redistribute it and/or modify\nit under the terms of the GNU General Public License as published by\nthe Free Software Foundation; either version 3 of the License, or\n(at your option) any later version.\n\n"
                    ,5);
  __printf_chk(1,uVar3,0x7e4);
  puVar2 = PTR_stdout_000befc8;
  pFVar1 = *(FILE **)PTR_stdout_000befc8;
  pcVar4 = (char *)dcgettext(0,
                             "This program is distributed in the hope that it will be useful,\nbut WITHOUT ANY WARRANTY; without even the implied warranty of\nMERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\nGNU General Public License for more details.\n\n"
                             ,5);
  fputs(pcVar4,pFVar1);
  pFVar1 = *(FILE **)puVar2;
  pcVar4 = (char *)dcgettext(0,
                             "You should have received a copy of the GNU General Public License\nalong with this program. If not, see http://www.gnu.org/licenses/.\n"
                             ,5);
  fputs(pcVar4,pFVar1);
  fflush(*(FILE **)puVar2);
  iVar5 = ferror(*(FILE **)puVar2);
  if (iVar5 != 0) {
    piVar6 = __errno_location();
    if (*piVar6 != 0x20) {
      piVar7 = piVar6;
      set_loc("main.c",0x2c5);
      pcVar4 = strerror(*piVar6);
      mesg = (char *)dcgettext(0,"error writing standard output: %s",5,piVar7);
      r_warning(mesg,pcVar4);
    }
                    /* WARNING: Subroutine does not return */
    exit(1);
  }
                    /* WARNING: Subroutine does not return */
  exit(0);
}



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

void FUN_00064c70(void)

{
  FILE *pFVar1;
  undefined *puVar2;
  undefined4 uVar3;
  char *pcVar4;
  int iVar5;
  int *piVar6;
  
  uVar3 = dcgettext(0,
                    "Copyright (C) 1989, 1991-%d Free Software Foundation.\n\nThis program is free software; you can redistribute it and/or modify\nit under the terms of the GNU General Public License as published by\nthe Free Software Foundation; either version 3 of the License, or\n(at your option) any later version.\n\n"
                    ,5);
  __printf_chk(1,uVar3,0x7e4);
  puVar2 = PTR_stdout_000befc8;
  pFVar1 = *(FILE **)PTR_stdout_000befc8;
  pcVar4 = (char *)dcgettext(0,
                             "This program is distributed in the hope that it will be useful,\nbut WITHOUT ANY WARRANTY; without even the implied warranty of\nMERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\nGNU General Public License for more details.\n\n"
                             ,5);
  fputs(pcVar4,pFVar1);
  pFVar1 = *(FILE **)puVar2;
  pcVar4 = (char *)dcgettext(0,
                             "You should have received a copy of the GNU General Public License\nalong with this program. If not, see http://www.gnu.org/licenses/.\n"
                             ,5);
  fputs(pcVar4,pFVar1);
  fflush(*(FILE **)puVar2);
  iVar5 = ferror(*(FILE **)puVar2);
  if (iVar5 != 0) {
    piVar6 = __errno_location();
    if (*piVar6 != 0x20) {
      FUN_000660d0("main.c",0x2c5,piVar6,piVar6);
      pcVar4 = strerror(*piVar6);
      uVar3 = dcgettext(0,"error writing standard output: %s",5);
      FUN_000663f0(uVar3,pcVar4);
    }
                    /* WARNING: Subroutine does not return */
    exit(1);
  }
                    /* WARNING: Subroutine does not return */
  exit(0);
}


PUSH EDI
PUSH ESI
PUSH EBX
CALL 0x00016f50
ADD EBX,0x5a06c
SUB ESP,0x4
LEA EAX,[EBX + 0xfffd58dc]
PUSH 0x5
PUSH EAX
PUSH 0x0
CALL 0x00013f40
ADD ESP,0xc
PUSH 0x7e4
PUSH EAX
PUSH 0x1
CALL 0x00014420
MOV ESI,dword ptr [EBX + 0x2e4]
LEA EAX,[EBX + 0xfffd57dc]
ADD ESP,0xc
MOV EDI,dword ptr [ESI]
PUSH 0x5
PUSH EAX
PUSH 0x0
CALL 0x00013f40
POP EDX
POP ECX
PUSH EDI
PUSH EAX
CALL 0x00014640
LEA EAX,[EBX + 0xfffd573c]
ADD ESP,0xc
MOV EDI,dword ptr [ESI]
PUSH 0x5
PUSH EAX
PUSH 0x0
CALL 0x00013f40
POP EDX
POP ECX
PUSH EDI
PUSH EAX
CALL 0x00014640
POP EDI
PUSH dword ptr [ESI]
CALL 0x00013df0
POP EAX
PUSH dword ptr [ESI]
CALL 0x00013ea0
ADD ESP,0x10
TEST EAX,EAX
JZ 0x00064d4e
CALL 0x00014330
CMP dword ptr [EAX],0x20
MOV ESI,EAX
JNZ 0x00064d10
SUB ESP,0xc
PUSH 0x1
CALL 0x000141a0
PUSH EAX
PUSH EAX
LEA EAX,[EBX + 0xfffd46f9]
PUSH 0x2c5
PUSH EAX
CALL 0x000660d0
POP EDX
PUSH dword ptr [ESI]
CALL 0x00014180
MOV ESI,EAX
LEA EAX,[EBX + 0xfffd4110]
ADD ESP,0xc
PUSH 0x5
PUSH EAX
PUSH 0x0
CALL 0x00013f40
POP ECX
POP EDI
PUSH ESI
PUSH EAX
CALL 0x000663f0
ADD ESP,0x10
JMP 0x00064d06
SUB ESP,0xc
PUSH 0x0
CALL 0x000141a0
(translation_unit "/* WARNING: Function: __i686.get_pc_thunk.bx replaced with injection: get_pc_thunk_bx */\n\nvoid FUN_00064c70(void)\n\n{\n  FILE *pFVar1;\n  undefined *puVar2;\n  undefined4 uVar3;\n  char *pcVar4;\n  int iVar5;\n  int *piVar6;\n  \n  uVar3 = dcgettext(0,\n                    "Copyright (C) 1989, 1991-%d Free Software Foundation.\n\nThis program is free software; you can redistribute it and/or modify\nit under the terms of the GNU General Public License as published by\nthe Free Software Foundation; either version 3 of the License, or\n(at your option) any later version.\n\n"\n                    ,5);\n  __printf_chk(1,uVar3,0x7e4);\n  puVar2 = PTR_stdout_000befc8;\n  pFVar1 = *(FILE **)PTR_stdout_000befc8;\n  pcVar4 = (char *)dcgettext(0,\n                             "This program is distributed in the hope that it will be useful,\nbut WITHOUT ANY WARRANTY; without even the implied warranty of\nMERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\nGNU General Public License for more details.\n\n"\n                             ,5);\n  fputs(pcVar4,pFVar1);\n  pFVar1 = *(FILE **)puVar2;\n  pcVar4 = (char *)dcgettext(0,\n                             "You should have received a copy of the GNU General Public License\nalong with this program. If not, see http://www.gnu.org/licenses/.\n"\n                             ,5);\n  fputs(pcVar4,pFVar1);\n  fflush(*(FILE **)puVar2);\n  iVar5 = ferror(*(FILE **)puVar2);\n  if (iVar5 != 0) {\n    piVar6 = __errno_location();\n    if (*piVar6 != 0x20) {\n      FUN_000660d0("main.c",0x2c5,piVar6,piVar6);\n      pcVar4 = strerror(*piVar6);\n      uVar3 = dcgettext(0,"error writing standard output: %s",5);\n      FUN_000663f0(uVar3,pcVar4);\n    }\n                    /* WARNING: Subroutine does not return */\n    exit(1);\n  }\n                    /* WARNING: Subroutine does not return */\n  exit(0);\n}\n\n" comment (function_definition "void FUN_00064c70(void)\n\n{\n  FILE *pFVar1;\n  undefined *puVar2;\n  undefined4 uVar3;\n  char *pcVar4;\n  int iVar5;\n  int *piVar6;\n  \n  uVar3 = dcgettext(0,\n                    "Copyright (C) 1989, 1991-%d Free Software Foundation.\n\nThis program is free software; you can redistribute it and/or modify\nit under the terms of the GNU General Public License as published by\nthe Free Software Foundation; either version 3 of the License, or\n(at your option) any later version.\n\n"\n                    ,5);\n  __printf_chk(1,uVar3,0x7e4);\n  puVar2 = PTR_stdout_000befc8;\n  pFVar1 = *(FILE **)PTR_stdout_000befc8;\n  pcVar4 = (char *)dcgettext(0,\n                             "This program is distributed in the hope that it will be useful,\nbut WITHOUT ANY WARRANTY; without even the implied warranty of\nMERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\nGNU General Public License for more details.\n\n"\n                             ,5);\n  fputs(pcVar4,pFVar1);\n  pFVar1 = *(FILE **)puVar2;\n  pcVar4 = (char *)dcgettext(0,\n                             "You should have received a copy of the GNU General Public License\nalong with this program. If not, see http://www.gnu.org/licenses/.\n"\n                             ,5);\n  fputs(pcVar4,pFVar1);\n  fflush(*(FILE **)puVar2);\n  iVar5 = ferror(*(FILE **)puVar2);\n  if (iVar5 != 0) {\n    piVar6 = __errno_location();\n    if (*piVar6 != 0x20) {\n      FUN_000660d0("main.c",0x2c5,piVar6,piVar6);\n      pcVar4 = strerror(*piVar6);\n      uVar3 = dcgettext(0,"error writing standard output: %s",5);\n      FUN_000663f0(uVar3,pcVar4);\n    }\n                    /* WARNING: Subroutine does not return */\n    exit(1);\n  }\n                    /* WARNING: Subroutine does not return */\n  exit(0);\n}" primitive_type (function_declarator "FUN_00064c70(void)" identifier (parameter_list "(void)" ( (parameter_declaration "void" primitive_type) ))) (compound_statement "{\n  FILE *pFVar1;\n  undefined *puVar2;\n  undefined4 uVar3;\n  char *pcVar4;\n  int iVar5;\n  int *piVar6;\n  \n  uVar3 = dcgettext(0,\n                    "Copyright (C) 1989, 1991-%d Free Software Foundation.\n\nThis program is free software; you can redistribute it and/or modify\nit under the terms of the GNU General Public License as published by\nthe Free Software Foundation; either version 3 of the License, or\n(at your option) any later version.\n\n"\n                    ,5);\n  __printf_chk(1,uVar3,0x7e4);\n  puVar2 = PTR_stdout_000befc8;\n  pFVar1 = *(FILE **)PTR_stdout_000befc8;\n  pcVar4 = (char *)dcgettext(0,\n                             "This program is distributed in the hope that it will be useful,\nbut WITHOUT ANY WARRANTY; without even the implied warranty of\nMERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\nGNU General Public License for more details.\n\n"\n                             ,5);\n  fputs(pcVar4,pFVar1);\n  pFVar1 = *(FILE **)puVar2;\n  pcVar4 = (char *)dcgettext(0,\n                             "You should have received a copy of the GNU General Public License\nalong with this program. If not, see http://www.gnu.org/licenses/.\n"\n                             ,5);\n  fputs(pcVar4,pFVar1);\n  fflush(*(FILE **)puVar2);\n  iVar5 = ferror(*(FILE **)puVar2);\n  if (iVar5 != 0) {\n    piVar6 = __errno_location();\n    if (*piVar6 != 0x20) {\n      FUN_000660d0("main.c",0x2c5,piVar6,piVar6);\n      pcVar4 = strerror(*piVar6);\n      uVar3 = dcgettext(0,"error writing standard output: %s",5);\n      FUN_000663f0(uVar3,pcVar4);\n    }\n                    /* WARNING: Subroutine does not return */\n    exit(1);\n  }\n                    /* WARNING: Subroutine does not return */\n  exit(0);\n}" { (declaration "FILE *pFVar1;" type_identifier (pointer_declarator "*pFVar1" * identifier) ;) (declaration "undefined *puVar2;" type_identifier (pointer_declarator "*puVar2" * identifier) ;) (declaration "undefined4 uVar3;" type_identifier identifier ;) (declaration "char *pcVar4;" primitive_type (pointer_declarator "*pcVar4" * identifier) ;) (declaration "int iVar5;" primitive_type identifier ;) (declaration "int *piVar6;" primitive_type (pointer_declarator "*piVar6" * identifier) ;) (expression_statement "uVar3 = dcgettext(0,\n                    "Copyright (C) 1989, 1991-%d Free Software Foundation.\n\nThis program is free software; you can redistribute it and/or modify\nit under the terms of the GNU General Public License as published by\nthe Free Software Foundation; either version 3 of the License, or\n(at your option) any later version.\n\n"\n                    ,5);" (assignment_expression "uVar3 = dcgettext(0,\n                    "Copyright (C) 1989, 1991-%d Free Software Foundation.\n\nThis program is free software; you can redistribute it and/or modify\nit under the terms of the GNU General Public License as published by\nthe Free Software Foundation; either version 3 of the License, or\n(at your option) any later version.\n\n"\n                    ,5)" identifier = (call_expression "dcgettext(0,\n                    "Copyright (C) 1989, 1991-%d Free Software Foundation.\n\nThis program is free software; you can redistribute it and/or modify\nit under the terms of the GNU General Public License as published by\nthe Free Software Foundation; either version 3 of the License, or\n(at your option) any later version.\n\n"\n                    ,5)" identifier (argument_list "(0,\n                    "Copyright (C) 1989, 1991-%d Free Software Foundation.\n\nThis program is free software; you can redistribute it and/or modify\nit under the terms of the GNU General Public License as published by\nthe Free Software Foundation; either version 3 of the License, or\n(at your option) any later version.\n\n"\n                    ,5)" ( number_literal , (string_literal ""Copyright (C) 1989, 1991-%d Free Software Foundation.\n\nThis program is free software; you can redistribute it and/or modify\nit under the terms of the GNU General Public License as published by\nthe Free Software Foundation; either version 3 of the License, or\n(at your option) any later version.\n\n"" " string_content escape_sequence escape_sequence string_content escape_sequence string_content escape_sequence string_content escape_sequence string_content escape_sequence escape_sequence ") , number_literal )))) ;) (expression_statement "__printf_chk(1,uVar3,0x7e4);" (call_expression "__printf_chk(1,uVar3,0x7e4)" identifier (argument_list "(1,uVar3,0x7e4)" ( number_literal , identifier , number_literal ))) ;) (expression_statement "puVar2 = PTR_stdout_000befc8;" (assignment_expression "puVar2 = PTR_stdout_000befc8" identifier = identifier) ;) (expression_statement "pFVar1 = *(FILE **)PTR_stdout_000befc8;" (assignment_expression "pFVar1 = *(FILE **)PTR_stdout_000befc8" identifier = (pointer_expression "*(FILE **)PTR_stdout_000befc8" * (cast_expression "(FILE **)PTR_stdout_000befc8" ( (type_descriptor "FILE **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) identifier))) ;) (expression_statement "pcVar4 = (char *)dcgettext(0,\n                             "This program is distributed in the hope that it will be useful,\nbut WITHOUT ANY WARRANTY; without even the implied warranty of\nMERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\nGNU General Public License for more details.\n\n"\n                             ,5);" (assignment_expression "pcVar4 = (char *)dcgettext(0,\n                             "This program is distributed in the hope that it will be useful,\nbut WITHOUT ANY WARRANTY; without even the implied warranty of\nMERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\nGNU General Public License for more details.\n\n"\n                             ,5)" identifier = (cast_expression "(char *)dcgettext(0,\n                             "This program is distributed in the hope that it will be useful,\nbut WITHOUT ANY WARRANTY; without even the implied warranty of\nMERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\nGNU General Public License for more details.\n\n"\n                             ,5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,\n                             "This program is distributed in the hope that it will be useful,\nbut WITHOUT ANY WARRANTY; without even the implied warranty of\nMERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\nGNU General Public License for more details.\n\n"\n                             ,5)" identifier (argument_list "(0,\n                             "This program is distributed in the hope that it will be useful,\nbut WITHOUT ANY WARRANTY; without even the implied warranty of\nMERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\nGNU General Public License for more details.\n\n"\n                             ,5)" ( number_literal , (string_literal ""This program is distributed in the hope that it will be useful,\nbut WITHOUT ANY WARRANTY; without even the implied warranty of\nMERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\nGNU General Public License for more details.\n\n"" " string_content escape_sequence string_content escape_sequence string_content escape_sequence string_content escape_sequence escape_sequence ") , number_literal ))))) ;) (expression_statement "fputs(pcVar4,pFVar1);" (call_expression "fputs(pcVar4,pFVar1)" identifier (argument_list "(pcVar4,pFVar1)" ( identifier , identifier ))) ;) (expression_statement "pFVar1 = *(FILE **)puVar2;" (assignment_expression "pFVar1 = *(FILE **)puVar2" identifier = (pointer_expression "*(FILE **)puVar2" * (cast_expression "(FILE **)puVar2" ( (type_descriptor "FILE **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) identifier))) ;) (expression_statement "pcVar4 = (char *)dcgettext(0,\n                             "You should have received a copy of the GNU General Public License\nalong with this program. If not, see http://www.gnu.org/licenses/.\n"\n                             ,5);" (assignment_expression "pcVar4 = (char *)dcgettext(0,\n                             "You should have received a copy of the GNU General Public License\nalong with this program. If not, see http://www.gnu.org/licenses/.\n"\n                             ,5)" identifier = (cast_expression "(char *)dcgettext(0,\n                             "You should have received a copy of the GNU General Public License\nalong with this program. If not, see http://www.gnu.org/licenses/.\n"\n                             ,5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,\n                             "You should have received a copy of the GNU General Public License\nalong with this program. If not, see http://www.gnu.org/licenses/.\n"\n                             ,5)" identifier (argument_list "(0,\n                             "You should have received a copy of the GNU General Public License\nalong with this program. If not, see http://www.gnu.org/licenses/.\n"\n                             ,5)" ( number_literal , (string_literal ""You should have received a copy of the GNU General Public License\nalong with this program. If not, see http://www.gnu.org/licenses/.\n"" " string_content escape_sequence string_content escape_sequence ") , number_literal ))))) ;) (expression_statement "fputs(pcVar4,pFVar1);" (call_expression "fputs(pcVar4,pFVar1)" identifier (argument_list "(pcVar4,pFVar1)" ( identifier , identifier ))) ;) (expression_statement "fflush(*(FILE **)puVar2);" (call_expression "fflush(*(FILE **)puVar2)" identifier (argument_list "(*(FILE **)puVar2)" ( (pointer_expression "*(FILE **)puVar2" * (cast_expression "(FILE **)puVar2" ( (type_descriptor "FILE **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) identifier)) ))) ;) (expression_statement "iVar5 = ferror(*(FILE **)puVar2);" (assignment_expression "iVar5 = ferror(*(FILE **)puVar2)" identifier = (call_expression "ferror(*(FILE **)puVar2)" identifier (argument_list "(*(FILE **)puVar2)" ( (pointer_expression "*(FILE **)puVar2" * (cast_expression "(FILE **)puVar2" ( (type_descriptor "FILE **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) identifier)) )))) ;) (if_statement "if (iVar5 != 0) {\n    piVar6 = __errno_location();\n    if (*piVar6 != 0x20) {\n      FUN_000660d0("main.c",0x2c5,piVar6,piVar6);\n      pcVar4 = strerror(*piVar6);\n      uVar3 = dcgettext(0,"error writing standard output: %s",5);\n      FUN_000663f0(uVar3,pcVar4);\n    }\n                    /* WARNING: Subroutine does not return */\n    exit(1);\n  }" if (parenthesized_expression "(iVar5 != 0)" ( (binary_expression "iVar5 != 0" identifier != number_literal) )) (compound_statement "{\n    piVar6 = __errno_location();\n    if (*piVar6 != 0x20) {\n      FUN_000660d0("main.c",0x2c5,piVar6,piVar6);\n      pcVar4 = strerror(*piVar6);\n      uVar3 = dcgettext(0,"error writing standard output: %s",5);\n      FUN_000663f0(uVar3,pcVar4);\n    }\n                    /* WARNING: Subroutine does not return */\n    exit(1);\n  }" { (expression_statement "piVar6 = __errno_location();" (assignment_expression "piVar6 = __errno_location()" identifier = (call_expression "__errno_location()" identifier (argument_list "()" ( )))) ;) (if_statement "if (*piVar6 != 0x20) {\n      FUN_000660d0("main.c",0x2c5,piVar6,piVar6);\n      pcVar4 = strerror(*piVar6);\n      uVar3 = dcgettext(0,"error writing standard output: %s",5);\n      FUN_000663f0(uVar3,pcVar4);\n    }" if (parenthesized_expression "(*piVar6 != 0x20)" ( (binary_expression "*piVar6 != 0x20" (pointer_expression "*piVar6" * identifier) != number_literal) )) (compound_statement "{\n      FUN_000660d0("main.c",0x2c5,piVar6,piVar6);\n      pcVar4 = strerror(*piVar6);\n      uVar3 = dcgettext(0,"error writing standard output: %s",5);\n      FUN_000663f0(uVar3,pcVar4);\n    }" { (expression_statement "FUN_000660d0("main.c",0x2c5,piVar6,piVar6);" (call_expression "FUN_000660d0("main.c",0x2c5,piVar6,piVar6)" identifier (argument_list "("main.c",0x2c5,piVar6,piVar6)" ( (string_literal ""main.c"" " string_content ") , number_literal , identifier , identifier ))) ;) (expression_statement "pcVar4 = strerror(*piVar6);" (assignment_expression "pcVar4 = strerror(*piVar6)" identifier = (call_expression "strerror(*piVar6)" identifier (argument_list "(*piVar6)" ( (pointer_expression "*piVar6" * identifier) )))) ;) (expression_statement "uVar3 = dcgettext(0,"error writing standard output: %s",5);" (assignment_expression "uVar3 = dcgettext(0,"error writing standard output: %s",5)" identifier = (call_expression "dcgettext(0,"error writing standard output: %s",5)" identifier (argument_list "(0,"error writing standard output: %s",5)" ( number_literal , (string_literal ""error writing standard output: %s"" " string_content ") , number_literal )))) ;) (expression_statement "FUN_000663f0(uVar3,pcVar4);" (call_expression "FUN_000663f0(uVar3,pcVar4)" identifier (argument_list "(uVar3,pcVar4)" ( identifier , identifier ))) ;) })) comment (expression_statement "exit(1);" (call_expression "exit(1)" identifier (argument_list "(1)" ( number_literal ))) ;) })) comment (expression_statement "exit(0);" (call_expression "exit(0)" identifier (argument_list "(0)" ( number_literal ))) ;) })))
(translation_unit "/* WARNING: Function: __x86.get_pc_thunk.bx replaced with injection: get_pc_thunk_bx */\n/* WARNING: Unknown calling convention -- yet parameter storage is locked */\n\nvoid copyleft(void)\n\n{\n  FILE *pFVar1;\n  undefined *puVar2;\n  undefined4 uVar3;\n  char *pcVar4;\n  int iVar5;\n  int *piVar6;\n  char *mesg;\n  int *piVar7;\n  \n  uVar3 = dcgettext(0,\n                    "Copyright (C) 1989, 1991-%d Free Software Foundation.\n\nThis program is free software; you can redistribute it and/or modify\nit under the terms of the GNU General Public License as published by\nthe Free Software Foundation; either version 3 of the License, or\n(at your option) any later version.\n\n"\n                    ,5);\n  __printf_chk(1,uVar3,0x7e4);\n  puVar2 = PTR_stdout_000befc8;\n  pFVar1 = *(FILE **)PTR_stdout_000befc8;\n  pcVar4 = (char *)dcgettext(0,\n                             "This program is distributed in the hope that it will be useful,\nbut WITHOUT ANY WARRANTY; without even the implied warranty of\nMERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\nGNU General Public License for more details.\n\n"\n                             ,5);\n  fputs(pcVar4,pFVar1);\n  pFVar1 = *(FILE **)puVar2;\n  pcVar4 = (char *)dcgettext(0,\n                             "You should have received a copy of the GNU General Public License\nalong with this program. If not, see http://www.gnu.org/licenses/.\n"\n                             ,5);\n  fputs(pcVar4,pFVar1);\n  fflush(*(FILE **)puVar2);\n  iVar5 = ferror(*(FILE **)puVar2);\n  if (iVar5 != 0) {\n    piVar6 = __errno_location();\n    if (*piVar6 != 0x20) {\n      piVar7 = piVar6;\n      set_loc("main.c",0x2c5);\n      pcVar4 = strerror(*piVar6);\n      mesg = (char *)dcgettext(0,"error writing standard output: %s",5,piVar7);\n      r_warning(mesg,pcVar4);\n    }\n                    /* WARNING: Subroutine does not return */\n    exit(1);\n  }\n                    /* WARNING: Subroutine does not return */\n  exit(0);\n}\n\n" comment comment (function_definition "void copyleft(void)\n\n{\n  FILE *pFVar1;\n  undefined *puVar2;\n  undefined4 uVar3;\n  char *pcVar4;\n  int iVar5;\n  int *piVar6;\n  char *mesg;\n  int *piVar7;\n  \n  uVar3 = dcgettext(0,\n                    "Copyright (C) 1989, 1991-%d Free Software Foundation.\n\nThis program is free software; you can redistribute it and/or modify\nit under the terms of the GNU General Public License as published by\nthe Free Software Foundation; either version 3 of the License, or\n(at your option) any later version.\n\n"\n                    ,5);\n  __printf_chk(1,uVar3,0x7e4);\n  puVar2 = PTR_stdout_000befc8;\n  pFVar1 = *(FILE **)PTR_stdout_000befc8;\n  pcVar4 = (char *)dcgettext(0,\n                             "This program is distributed in the hope that it will be useful,\nbut WITHOUT ANY WARRANTY; without even the implied warranty of\nMERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\nGNU General Public License for more details.\n\n"\n                             ,5);\n  fputs(pcVar4,pFVar1);\n  pFVar1 = *(FILE **)puVar2;\n  pcVar4 = (char *)dcgettext(0,\n                             "You should have received a copy of the GNU General Public License\nalong with this program. If not, see http://www.gnu.org/licenses/.\n"\n                             ,5);\n  fputs(pcVar4,pFVar1);\n  fflush(*(FILE **)puVar2);\n  iVar5 = ferror(*(FILE **)puVar2);\n  if (iVar5 != 0) {\n    piVar6 = __errno_location();\n    if (*piVar6 != 0x20) {\n      piVar7 = piVar6;\n      set_loc("main.c",0x2c5);\n      pcVar4 = strerror(*piVar6);\n      mesg = (char *)dcgettext(0,"error writing standard output: %s",5,piVar7);\n      r_warning(mesg,pcVar4);\n    }\n                    /* WARNING: Subroutine does not return */\n    exit(1);\n  }\n                    /* WARNING: Subroutine does not return */\n  exit(0);\n}" primitive_type (function_declarator "copyleft(void)" identifier (parameter_list "(void)" ( (parameter_declaration "void" primitive_type) ))) (compound_statement "{\n  FILE *pFVar1;\n  undefined *puVar2;\n  undefined4 uVar3;\n  char *pcVar4;\n  int iVar5;\n  int *piVar6;\n  char *mesg;\n  int *piVar7;\n  \n  uVar3 = dcgettext(0,\n                    "Copyright (C) 1989, 1991-%d Free Software Foundation.\n\nThis program is free software; you can redistribute it and/or modify\nit under the terms of the GNU General Public License as published by\nthe Free Software Foundation; either version 3 of the License, or\n(at your option) any later version.\n\n"\n                    ,5);\n  __printf_chk(1,uVar3,0x7e4);\n  puVar2 = PTR_stdout_000befc8;\n  pFVar1 = *(FILE **)PTR_stdout_000befc8;\n  pcVar4 = (char *)dcgettext(0,\n                             "This program is distributed in the hope that it will be useful,\nbut WITHOUT ANY WARRANTY; without even the implied warranty of\nMERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\nGNU General Public License for more details.\n\n"\n                             ,5);\n  fputs(pcVar4,pFVar1);\n  pFVar1 = *(FILE **)puVar2;\n  pcVar4 = (char *)dcgettext(0,\n                             "You should have received a copy of the GNU General Public License\nalong with this program. If not, see http://www.gnu.org/licenses/.\n"\n                             ,5);\n  fputs(pcVar4,pFVar1);\n  fflush(*(FILE **)puVar2);\n  iVar5 = ferror(*(FILE **)puVar2);\n  if (iVar5 != 0) {\n    piVar6 = __errno_location();\n    if (*piVar6 != 0x20) {\n      piVar7 = piVar6;\n      set_loc("main.c",0x2c5);\n      pcVar4 = strerror(*piVar6);\n      mesg = (char *)dcgettext(0,"error writing standard output: %s",5,piVar7);\n      r_warning(mesg,pcVar4);\n    }\n                    /* WARNING: Subroutine does not return */\n    exit(1);\n  }\n                    /* WARNING: Subroutine does not return */\n  exit(0);\n}" { (declaration "FILE *pFVar1;" type_identifier (pointer_declarator "*pFVar1" * identifier) ;) (declaration "undefined *puVar2;" type_identifier (pointer_declarator "*puVar2" * identifier) ;) (declaration "undefined4 uVar3;" type_identifier identifier ;) (declaration "char *pcVar4;" primitive_type (pointer_declarator "*pcVar4" * identifier) ;) (declaration "int iVar5;" primitive_type identifier ;) (declaration "int *piVar6;" primitive_type (pointer_declarator "*piVar6" * identifier) ;) (declaration "char *mesg;" primitive_type (pointer_declarator "*mesg" * identifier) ;) (declaration "int *piVar7;" primitive_type (pointer_declarator "*piVar7" * identifier) ;) (expression_statement "uVar3 = dcgettext(0,\n                    "Copyright (C) 1989, 1991-%d Free Software Foundation.\n\nThis program is free software; you can redistribute it and/or modify\nit under the terms of the GNU General Public License as published by\nthe Free Software Foundation; either version 3 of the License, or\n(at your option) any later version.\n\n"\n                    ,5);" (assignment_expression "uVar3 = dcgettext(0,\n                    "Copyright (C) 1989, 1991-%d Free Software Foundation.\n\nThis program is free software; you can redistribute it and/or modify\nit under the terms of the GNU General Public License as published by\nthe Free Software Foundation; either version 3 of the License, or\n(at your option) any later version.\n\n"\n                    ,5)" identifier = (call_expression "dcgettext(0,\n                    "Copyright (C) 1989, 1991-%d Free Software Foundation.\n\nThis program is free software; you can redistribute it and/or modify\nit under the terms of the GNU General Public License as published by\nthe Free Software Foundation; either version 3 of the License, or\n(at your option) any later version.\n\n"\n                    ,5)" identifier (argument_list "(0,\n                    "Copyright (C) 1989, 1991-%d Free Software Foundation.\n\nThis program is free software; you can redistribute it and/or modify\nit under the terms of the GNU General Public License as published by\nthe Free Software Foundation; either version 3 of the License, or\n(at your option) any later version.\n\n"\n                    ,5)" ( number_literal , (string_literal ""Copyright (C) 1989, 1991-%d Free Software Foundation.\n\nThis program is free software; you can redistribute it and/or modify\nit under the terms of the GNU General Public License as published by\nthe Free Software Foundation; either version 3 of the License, or\n(at your option) any later version.\n\n"" " string_content escape_sequence escape_sequence string_content escape_sequence string_content escape_sequence string_content escape_sequence string_content escape_sequence escape_sequence ") , number_literal )))) ;) (expression_statement "__printf_chk(1,uVar3,0x7e4);" (call_expression "__printf_chk(1,uVar3,0x7e4)" identifier (argument_list "(1,uVar3,0x7e4)" ( number_literal , identifier , number_literal ))) ;) (expression_statement "puVar2 = PTR_stdout_000befc8;" (assignment_expression "puVar2 = PTR_stdout_000befc8" identifier = identifier) ;) (expression_statement "pFVar1 = *(FILE **)PTR_stdout_000befc8;" (assignment_expression "pFVar1 = *(FILE **)PTR_stdout_000befc8" identifier = (pointer_expression "*(FILE **)PTR_stdout_000befc8" * (cast_expression "(FILE **)PTR_stdout_000befc8" ( (type_descriptor "FILE **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) identifier))) ;) (expression_statement "pcVar4 = (char *)dcgettext(0,\n                             "This program is distributed in the hope that it will be useful,\nbut WITHOUT ANY WARRANTY; without even the implied warranty of\nMERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\nGNU General Public License for more details.\n\n"\n                             ,5);" (assignment_expression "pcVar4 = (char *)dcgettext(0,\n                             "This program is distributed in the hope that it will be useful,\nbut WITHOUT ANY WARRANTY; without even the implied warranty of\nMERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\nGNU General Public License for more details.\n\n"\n                             ,5)" identifier = (cast_expression "(char *)dcgettext(0,\n                             "This program is distributed in the hope that it will be useful,\nbut WITHOUT ANY WARRANTY; without even the implied warranty of\nMERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\nGNU General Public License for more details.\n\n"\n                             ,5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,\n                             "This program is distributed in the hope that it will be useful,\nbut WITHOUT ANY WARRANTY; without even the implied warranty of\nMERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\nGNU General Public License for more details.\n\n"\n                             ,5)" identifier (argument_list "(0,\n                             "This program is distributed in the hope that it will be useful,\nbut WITHOUT ANY WARRANTY; without even the implied warranty of\nMERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\nGNU General Public License for more details.\n\n"\n                             ,5)" ( number_literal , (string_literal ""This program is distributed in the hope that it will be useful,\nbut WITHOUT ANY WARRANTY; without even the implied warranty of\nMERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\nGNU General Public License for more details.\n\n"" " string_content escape_sequence string_content escape_sequence string_content escape_sequence string_content escape_sequence escape_sequence ") , number_literal ))))) ;) (expression_statement "fputs(pcVar4,pFVar1);" (call_expression "fputs(pcVar4,pFVar1)" identifier (argument_list "(pcVar4,pFVar1)" ( identifier , identifier ))) ;) (expression_statement "pFVar1 = *(FILE **)puVar2;" (assignment_expression "pFVar1 = *(FILE **)puVar2" identifier = (pointer_expression "*(FILE **)puVar2" * (cast_expression "(FILE **)puVar2" ( (type_descriptor "FILE **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) identifier))) ;) (expression_statement "pcVar4 = (char *)dcgettext(0,\n                             "You should have received a copy of the GNU General Public License\nalong with this program. If not, see http://www.gnu.org/licenses/.\n"\n                             ,5);" (assignment_expression "pcVar4 = (char *)dcgettext(0,\n                             "You should have received a copy of the GNU General Public License\nalong with this program. If not, see http://www.gnu.org/licenses/.\n"\n                             ,5)" identifier = (cast_expression "(char *)dcgettext(0,\n                             "You should have received a copy of the GNU General Public License\nalong with this program. If not, see http://www.gnu.org/licenses/.\n"\n                             ,5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,\n                             "You should have received a copy of the GNU General Public License\nalong with this program. If not, see http://www.gnu.org/licenses/.\n"\n                             ,5)" identifier (argument_list "(0,\n                             "You should have received a copy of the GNU General Public License\nalong with this program. If not, see http://www.gnu.org/licenses/.\n"\n                             ,5)" ( number_literal , (string_literal ""You should have received a copy of the GNU General Public License\nalong with this program. If not, see http://www.gnu.org/licenses/.\n"" " string_content escape_sequence string_content escape_sequence ") , number_literal ))))) ;) (expression_statement "fputs(pcVar4,pFVar1);" (call_expression "fputs(pcVar4,pFVar1)" identifier (argument_list "(pcVar4,pFVar1)" ( identifier , identifier ))) ;) (expression_statement "fflush(*(FILE **)puVar2);" (call_expression "fflush(*(FILE **)puVar2)" identifier (argument_list "(*(FILE **)puVar2)" ( (pointer_expression "*(FILE **)puVar2" * (cast_expression "(FILE **)puVar2" ( (type_descriptor "FILE **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) identifier)) ))) ;) (expression_statement "iVar5 = ferror(*(FILE **)puVar2);" (assignment_expression "iVar5 = ferror(*(FILE **)puVar2)" identifier = (call_expression "ferror(*(FILE **)puVar2)" identifier (argument_list "(*(FILE **)puVar2)" ( (pointer_expression "*(FILE **)puVar2" * (cast_expression "(FILE **)puVar2" ( (type_descriptor "FILE **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) identifier)) )))) ;) (if_statement "if (iVar5 != 0) {\n    piVar6 = __errno_location();\n    if (*piVar6 != 0x20) {\n      piVar7 = piVar6;\n      set_loc("main.c",0x2c5);\n      pcVar4 = strerror(*piVar6);\n      mesg = (char *)dcgettext(0,"error writing standard output: %s",5,piVar7);\n      r_warning(mesg,pcVar4);\n    }\n                    /* WARNING: Subroutine does not return */\n    exit(1);\n  }" if (parenthesized_expression "(iVar5 != 0)" ( (binary_expression "iVar5 != 0" identifier != number_literal) )) (compound_statement "{\n    piVar6 = __errno_location();\n    if (*piVar6 != 0x20) {\n      piVar7 = piVar6;\n      set_loc("main.c",0x2c5);\n      pcVar4 = strerror(*piVar6);\n      mesg = (char *)dcgettext(0,"error writing standard output: %s",5,piVar7);\n      r_warning(mesg,pcVar4);\n    }\n                    /* WARNING: Subroutine does not return */\n    exit(1);\n  }" { (expression_statement "piVar6 = __errno_location();" (assignment_expression "piVar6 = __errno_location()" identifier = (call_expression "__errno_location()" identifier (argument_list "()" ( )))) ;) (if_statement "if (*piVar6 != 0x20) {\n      piVar7 = piVar6;\n      set_loc("main.c",0x2c5);\n      pcVar4 = strerror(*piVar6);\n      mesg = (char *)dcgettext(0,"error writing standard output: %s",5,piVar7);\n      r_warning(mesg,pcVar4);\n    }" if (parenthesized_expression "(*piVar6 != 0x20)" ( (binary_expression "*piVar6 != 0x20" (pointer_expression "*piVar6" * identifier) != number_literal) )) (compound_statement "{\n      piVar7 = piVar6;\n      set_loc("main.c",0x2c5);\n      pcVar4 = strerror(*piVar6);\n      mesg = (char *)dcgettext(0,"error writing standard output: %s",5,piVar7);\n      r_warning(mesg,pcVar4);\n    }" { (expression_statement "piVar7 = piVar6;" (assignment_expression "piVar7 = piVar6" identifier = identifier) ;) (expression_statement "set_loc("main.c",0x2c5);" (call_expression "set_loc("main.c",0x2c5)" identifier (argument_list "("main.c",0x2c5)" ( (string_literal ""main.c"" " string_content ") , number_literal ))) ;) (expression_statement "pcVar4 = strerror(*piVar6);" (assignment_expression "pcVar4 = strerror(*piVar6)" identifier = (call_expression "strerror(*piVar6)" identifier (argument_list "(*piVar6)" ( (pointer_expression "*piVar6" * identifier) )))) ;) (expression_statement "mesg = (char *)dcgettext(0,"error writing standard output: %s",5,piVar7);" (assignment_expression "mesg = (char *)dcgettext(0,"error writing standard output: %s",5,piVar7)" identifier = (cast_expression "(char *)dcgettext(0,"error writing standard output: %s",5,piVar7)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"error writing standard output: %s",5,piVar7)" identifier (argument_list "(0,"error writing standard output: %s",5,piVar7)" ( number_literal , (string_literal ""error writing standard output: %s"" " string_content ") , number_literal , identifier ))))) ;) (expression_statement "r_warning(mesg,pcVar4);" (call_expression "r_warning(mesg,pcVar4)" identifier (argument_list "(mesg,pcVar4)" ( identifier , identifier ))) ;) })) comment (expression_statement "exit(1);" (call_expression "exit(1)" identifier (argument_list "(1)" ( number_literal ))) ;) })) comment (expression_statement "exit(0);" (call_expression "exit(0)" identifier (argument_list "(0)" ( number_literal ))) ;) })))
(translation_unit "void FUN_00064c70(void)\n\n{\n  FILE *pFVar1;\n  undefined *puVar2;\n  undefined4 uVar3;\n  char *pcVar4;\n  int iVar5;\n  int *piVar6;\n  \n  uVar3 = dcgettext(0,\n                    "Copyright (C) 1989, 1991-%d Free Software Foundation.\n\nThis program is free software; you can redistribute it and/or modify\nit under the terms of the GNU General Public License as published by\nthe Free Software Foundation; either version 3 of the License, or\n(at your option) any later version.\n\n"\n                    ,5);\n  __printf_chk(1,uVar3,0x7e4);\n  puVar2 = PTR_stdout_000befc8;\n  pFVar1 = *(FILE **)PTR_stdout_000befc8;\n  pcVar4 = (char *)dcgettext(0,\n                             "This program is distributed in the hope that it will be useful,\nbut WITHOUT ANY WARRANTY; without even the implied warranty of\nMERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\nGNU General Public License for more details.\n\n"\n                             ,5);\n  fputs(pcVar4,pFVar1);\n  pFVar1 = *(FILE **)puVar2;\n  pcVar4 = (char *)dcgettext(0,\n                             "You should have received a copy of the GNU General Public License\nalong with this program. If not, see http:\n                             ,5);\n  fputs(pcVar4,pFVar1);\n  fflush(*(FILE **)puVar2);\n  iVar5 = ferror(*(FILE **)puVar2);\n  if (iVar5 != 0) {\n    piVar6 = __errno_location();\n    if (*piVar6 != 0x20) {\n      FUN_000660d0("main.c",0x2c5,piVar6,piVar6);\n      pcVar4 = strerror(*piVar6);\n      uVar3 = dcgettext(0,"error writing standard output: %s",5);\n      FUN_000663f0(uVar3,pcVar4);\n    }\n                    \n    exit(1);\n  }\n                    \n  exit(0);\n}\n\n" (function_definition "void FUN_00064c70(void)\n\n{\n  FILE *pFVar1;\n  undefined *puVar2;\n  undefined4 uVar3;\n  char *pcVar4;\n  int iVar5;\n  int *piVar6;\n  \n  uVar3 = dcgettext(0,\n                    "Copyright (C) 1989, 1991-%d Free Software Foundation.\n\nThis program is free software; you can redistribute it and/or modify\nit under the terms of the GNU General Public License as published by\nthe Free Software Foundation; either version 3 of the License, or\n(at your option) any later version.\n\n"\n                    ,5);\n  __printf_chk(1,uVar3,0x7e4);\n  puVar2 = PTR_stdout_000befc8;\n  pFVar1 = *(FILE **)PTR_stdout_000befc8;\n  pcVar4 = (char *)dcgettext(0,\n                             "This program is distributed in the hope that it will be useful,\nbut WITHOUT ANY WARRANTY; without even the implied warranty of\nMERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\nGNU General Public License for more details.\n\n"\n                             ,5);\n  fputs(pcVar4,pFVar1);\n  pFVar1 = *(FILE **)puVar2;\n  pcVar4 = (char *)dcgettext(0,\n                             "You should have received a copy of the GNU General Public License\nalong with this program. If not, see http:\n                             ,5);\n  fputs(pcVar4,pFVar1);\n  fflush(*(FILE **)puVar2);\n  iVar5 = ferror(*(FILE **)puVar2);\n  if (iVar5 != 0) {\n    piVar6 = __errno_location();\n    if (*piVar6 != 0x20) {\n      FUN_000660d0("main.c",0x2c5,piVar6,piVar6);\n      pcVar4 = strerror(*piVar6);\n      uVar3 = dcgettext(0,"error writing standard output: %s",5);\n      FUN_000663f0(uVar3,pcVar4);\n    }\n                    \n    exit(1);\n  }\n                    \n  exit(0);\n}" primitive_type (function_declarator "FUN_00064c70(void)" identifier (parameter_list "(void)" ( (parameter_declaration "void" primitive_type) ))) (compound_statement "{\n  FILE *pFVar1;\n  undefined *puVar2;\n  undefined4 uVar3;\n  char *pcVar4;\n  int iVar5;\n  int *piVar6;\n  \n  uVar3 = dcgettext(0,\n                    "Copyright (C) 1989, 1991-%d Free Software Foundation.\n\nThis program is free software; you can redistribute it and/or modify\nit under the terms of the GNU General Public License as published by\nthe Free Software Foundation; either version 3 of the License, or\n(at your option) any later version.\n\n"\n                    ,5);\n  __printf_chk(1,uVar3,0x7e4);\n  puVar2 = PTR_stdout_000befc8;\n  pFVar1 = *(FILE **)PTR_stdout_000befc8;\n  pcVar4 = (char *)dcgettext(0,\n                             "This program is distributed in the hope that it will be useful,\nbut WITHOUT ANY WARRANTY; without even the implied warranty of\nMERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\nGNU General Public License for more details.\n\n"\n                             ,5);\n  fputs(pcVar4,pFVar1);\n  pFVar1 = *(FILE **)puVar2;\n  pcVar4 = (char *)dcgettext(0,\n                             "You should have received a copy of the GNU General Public License\nalong with this program. If not, see http:\n                             ,5);\n  fputs(pcVar4,pFVar1);\n  fflush(*(FILE **)puVar2);\n  iVar5 = ferror(*(FILE **)puVar2);\n  if (iVar5 != 0) {\n    piVar6 = __errno_location();\n    if (*piVar6 != 0x20) {\n      FUN_000660d0("main.c",0x2c5,piVar6,piVar6);\n      pcVar4 = strerror(*piVar6);\n      uVar3 = dcgettext(0,"error writing standard output: %s",5);\n      FUN_000663f0(uVar3,pcVar4);\n    }\n                    \n    exit(1);\n  }\n                    \n  exit(0);\n}" { (declaration "FILE *pFVar1;" type_identifier (pointer_declarator "*pFVar1" * identifier) ;) (declaration "undefined *puVar2;" type_identifier (pointer_declarator "*puVar2" * identifier) ;) (declaration "undefined4 uVar3;" type_identifier identifier ;) (declaration "char *pcVar4;" primitive_type (pointer_declarator "*pcVar4" * identifier) ;) (declaration "int iVar5;" primitive_type identifier ;) (declaration "int *piVar6;" primitive_type (pointer_declarator "*piVar6" * identifier) ;) (expression_statement "uVar3 = dcgettext(0,\n                    "Copyright (C) 1989, 1991-%d Free Software Foundation.\n\nThis program is free software; you can redistribute it and/or modify\nit under the terms of the GNU General Public License as published by\nthe Free Software Foundation; either version 3 of the License, or\n(at your option) any later version.\n\n"\n                    ,5);" (assignment_expression "uVar3 = dcgettext(0,\n                    "Copyright (C) 1989, 1991-%d Free Software Foundation.\n\nThis program is free software; you can redistribute it and/or modify\nit under the terms of the GNU General Public License as published by\nthe Free Software Foundation; either version 3 of the License, or\n(at your option) any later version.\n\n"\n                    ,5)" identifier = (call_expression "dcgettext(0,\n                    "Copyright (C) 1989, 1991-%d Free Software Foundation.\n\nThis program is free software; you can redistribute it and/or modify\nit under the terms of the GNU General Public License as published by\nthe Free Software Foundation; either version 3 of the License, or\n(at your option) any later version.\n\n"\n                    ,5)" identifier (argument_list "(0,\n                    "Copyright (C) 1989, 1991-%d Free Software Foundation.\n\nThis program is free software; you can redistribute it and/or modify\nit under the terms of the GNU General Public License as published by\nthe Free Software Foundation; either version 3 of the License, or\n(at your option) any later version.\n\n"\n                    ,5)" ( number_literal , (string_literal ""Copyright (C) 1989, 1991-%d Free Software Foundation.\n\nThis program is free software; you can redistribute it and/or modify\nit under the terms of the GNU General Public License as published by\nthe Free Software Foundation; either version 3 of the License, or\n(at your option) any later version.\n\n"" " string_content escape_sequence escape_sequence string_content escape_sequence string_content escape_sequence string_content escape_sequence string_content escape_sequence escape_sequence ") , number_literal )))) ;) (expression_statement "__printf_chk(1,uVar3,0x7e4);" (call_expression "__printf_chk(1,uVar3,0x7e4)" identifier (argument_list "(1,uVar3,0x7e4)" ( number_literal , identifier , number_literal ))) ;) (expression_statement "puVar2 = PTR_stdout_000befc8;" (assignment_expression "puVar2 = PTR_stdout_000befc8" identifier = identifier) ;) (expression_statement "pFVar1 = *(FILE **)PTR_stdout_000befc8;" (assignment_expression "pFVar1 = *(FILE **)PTR_stdout_000befc8" identifier = (pointer_expression "*(FILE **)PTR_stdout_000befc8" * (cast_expression "(FILE **)PTR_stdout_000befc8" ( (type_descriptor "FILE **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) identifier))) ;) (expression_statement "pcVar4 = (char *)dcgettext(0,\n                             "This program is distributed in the hope that it will be useful,\nbut WITHOUT ANY WARRANTY; without even the implied warranty of\nMERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\nGNU General Public License for more details.\n\n"\n                             ,5);" (assignment_expression "pcVar4 = (char *)dcgettext(0,\n                             "This program is distributed in the hope that it will be useful,\nbut WITHOUT ANY WARRANTY; without even the implied warranty of\nMERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\nGNU General Public License for more details.\n\n"\n                             ,5)" identifier = (cast_expression "(char *)dcgettext(0,\n                             "This program is distributed in the hope that it will be useful,\nbut WITHOUT ANY WARRANTY; without even the implied warranty of\nMERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\nGNU General Public License for more details.\n\n"\n                             ,5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,\n                             "This program is distributed in the hope that it will be useful,\nbut WITHOUT ANY WARRANTY; without even the implied warranty of\nMERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\nGNU General Public License for more details.\n\n"\n                             ,5)" identifier (argument_list "(0,\n                             "This program is distributed in the hope that it will be useful,\nbut WITHOUT ANY WARRANTY; without even the implied warranty of\nMERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\nGNU General Public License for more details.\n\n"\n                             ,5)" ( number_literal , (string_literal ""This program is distributed in the hope that it will be useful,\nbut WITHOUT ANY WARRANTY; without even the implied warranty of\nMERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\nGNU General Public License for more details.\n\n"" " string_content escape_sequence string_content escape_sequence string_content escape_sequence string_content escape_sequence escape_sequence ") , number_literal ))))) ;) (expression_statement "fputs(pcVar4,pFVar1);" (call_expression "fputs(pcVar4,pFVar1)" identifier (argument_list "(pcVar4,pFVar1)" ( identifier , identifier ))) ;) (expression_statement "pFVar1 = *(FILE **)puVar2;" (assignment_expression "pFVar1 = *(FILE **)puVar2" identifier = (pointer_expression "*(FILE **)puVar2" * (cast_expression "(FILE **)puVar2" ( (type_descriptor "FILE **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) identifier))) ;) (expression_statement "pcVar4 = (char *)dcgettext(0,\n                             "You should have received a copy of the GNU General Public License\nalong with this program. If not, see http:\n                             ,5);" (assignment_expression "pcVar4 = (char *)dcgettext(0,\n                             "You should have received a copy of the GNU General Public License\nalong with this program. If not, see http:\n                             ,5)" identifier = (cast_expression "(char *)dcgettext(0,\n                             "You should have received a copy of the GNU General Public License\nalong with this program. If not, see http:\n                             ,5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,\n                             "You should have received a copy of the GNU General Public License\nalong with this program. If not, see http:\n                             ,5)" identifier (argument_list "(0,\n                             "You should have received a copy of the GNU General Public License\nalong with this program. If not, see http:\n                             ,5)" ( number_literal , (string_literal ""You should have received a copy of the GNU General Public License\nalong with this program. If not, see http:" " string_content escape_sequence string_content ") , number_literal ))))) ;) (expression_statement "fputs(pcVar4,pFVar1);" (call_expression "fputs(pcVar4,pFVar1)" identifier (argument_list "(pcVar4,pFVar1)" ( identifier , identifier ))) ;) (expression_statement "fflush(*(FILE **)puVar2);" (call_expression "fflush(*(FILE **)puVar2)" identifier (argument_list "(*(FILE **)puVar2)" ( (pointer_expression "*(FILE **)puVar2" * (cast_expression "(FILE **)puVar2" ( (type_descriptor "FILE **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) identifier)) ))) ;) (expression_statement "iVar5 = ferror(*(FILE **)puVar2);" (assignment_expression "iVar5 = ferror(*(FILE **)puVar2)" identifier = (call_expression "ferror(*(FILE **)puVar2)" identifier (argument_list "(*(FILE **)puVar2)" ( (pointer_expression "*(FILE **)puVar2" * (cast_expression "(FILE **)puVar2" ( (type_descriptor "FILE **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) identifier)) )))) ;) (if_statement "if (iVar5 != 0) {\n    piVar6 = __errno_location();\n    if (*piVar6 != 0x20) {\n      FUN_000660d0("main.c",0x2c5,piVar6,piVar6);\n      pcVar4 = strerror(*piVar6);\n      uVar3 = dcgettext(0,"error writing standard output: %s",5);\n      FUN_000663f0(uVar3,pcVar4);\n    }\n                    \n    exit(1);\n  }" if (parenthesized_expression "(iVar5 != 0)" ( (binary_expression "iVar5 != 0" identifier != number_literal) )) (compound_statement "{\n    piVar6 = __errno_location();\n    if (*piVar6 != 0x20) {\n      FUN_000660d0("main.c",0x2c5,piVar6,piVar6);\n      pcVar4 = strerror(*piVar6);\n      uVar3 = dcgettext(0,"error writing standard output: %s",5);\n      FUN_000663f0(uVar3,pcVar4);\n    }\n                    \n    exit(1);\n  }" { (expression_statement "piVar6 = __errno_location();" (assignment_expression "piVar6 = __errno_location()" identifier = (call_expression "__errno_location()" identifier (argument_list "()" ( )))) ;) (if_statement "if (*piVar6 != 0x20) {\n      FUN_000660d0("main.c",0x2c5,piVar6,piVar6);\n      pcVar4 = strerror(*piVar6);\n      uVar3 = dcgettext(0,"error writing standard output: %s",5);\n      FUN_000663f0(uVar3,pcVar4);\n    }" if (parenthesized_expression "(*piVar6 != 0x20)" ( (binary_expression "*piVar6 != 0x20" (pointer_expression "*piVar6" * identifier) != number_literal) )) (compound_statement "{\n      FUN_000660d0("main.c",0x2c5,piVar6,piVar6);\n      pcVar4 = strerror(*piVar6);\n      uVar3 = dcgettext(0,"error writing standard output: %s",5);\n      FUN_000663f0(uVar3,pcVar4);\n    }" { (expression_statement "FUN_000660d0("main.c",0x2c5,piVar6,piVar6);" (call_expression "FUN_000660d0("main.c",0x2c5,piVar6,piVar6)" identifier (argument_list "("main.c",0x2c5,piVar6,piVar6)" ( (string_literal ""main.c"" " string_content ") , number_literal , identifier , identifier ))) ;) (expression_statement "pcVar4 = strerror(*piVar6);" (assignment_expression "pcVar4 = strerror(*piVar6)" identifier = (call_expression "strerror(*piVar6)" identifier (argument_list "(*piVar6)" ( (pointer_expression "*piVar6" * identifier) )))) ;) (expression_statement "uVar3 = dcgettext(0,"error writing standard output: %s",5);" (assignment_expression "uVar3 = dcgettext(0,"error writing standard output: %s",5)" identifier = (call_expression "dcgettext(0,"error writing standard output: %s",5)" identifier (argument_list "(0,"error writing standard output: %s",5)" ( number_literal , (string_literal ""error writing standard output: %s"" " string_content ") , number_literal )))) ;) (expression_statement "FUN_000663f0(uVar3,pcVar4);" (call_expression "FUN_000663f0(uVar3,pcVar4)" identifier (argument_list "(uVar3,pcVar4)" ( identifier , identifier ))) ;) })) (expression_statement "exit(1);" (call_expression "exit(1)" identifier (argument_list "(1)" ( number_literal ))) ;) })) (expression_statement "exit(0);" (call_expression "exit(0)" identifier (argument_list "(0)" ( number_literal ))) ;) })))
(translation_unit (function_definition TYPE (function_declarator IDENT (parameter_list ( (parameter_declaration TYPE) ))) (compound_statement { (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE IDENT ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE IDENT ;) (declaration TYPE (pointer_declarator * IDENT) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( LIT , (string_literal " string_content escape_sequence escape_sequence string_content escape_sequence string_content escape_sequence string_content escape_sequence string_content escape_sequence escape_sequence ") , LIT )))) ;) (expression_statement (call_expression IDENT (argument_list ( LIT , IDENT , LIT ))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) 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 escape_sequence ") , LIT ))))) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT , IDENT ))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) 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 ") , LIT ))))) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT , IDENT ))) ;) (expression_statement (call_expression IDENT (argument_list ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) IDENT)) ))) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) IDENT)) )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( )))) ;) (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * IDENT) != LIT) )) (compound_statement { (expression_statement (call_expression IDENT (argument_list ( (string_literal " string_content ") , LIT , IDENT , IDENT ))) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( (pointer_expression * IDENT) )))) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( LIT , (string_literal " string_content ") , LIT )))) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT , IDENT ))) ;) })) (expression_statement (call_expression IDENT (argument_list ( LIT ))) ;) })) (expression_statement (call_expression IDENT (argument_list ( LIT ))) ;) })))
(function_definition "void FUN_00064c70(void)\n\n{\n  FILE *pFVar1;\n  undefined *puVar2;\n  undefined4 uVar3;\n  char *pcVar4;\n  int iVar5;\n  int *piVar6;\n  \n  uVar3 = dcgettext(0,\n                    "Copyright (C) 1989, 1991-%d Free Software Foundation.\n\nThis program is free software; you can redistribute it and/or modify\nit under the terms of the GNU General Public License as published by\nthe Free Software Foundation; either version 3 of the License, or\n(at your option) any later version.\n\n"\n                    ,5);\n  __printf_chk(1,uVar3,0x7e4);\n  puVar2 = PTR_stdout_000befc8;\n  pFVar1 = *(FILE **)PTR_stdout_000befc8;\n  pcVar4 = (char *)dcgettext(0,\n                             "This program is distributed in the hope that it will be useful,\nbut WITHOUT ANY WARRANTY; without even the implied warranty of\nMERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\nGNU General Public License for more details.\n\n"\n                             ,5);\n  fputs(pcVar4,pFVar1);\n  pFVar1 = *(FILE **)puVar2;\n  pcVar4 = (char *)dcgettext(0,\n                             "You should have received a copy of the GNU General Public License\nalong with this program. If not, see http:\n                             ,5);\n  fputs(pcVar4,pFVar1);\n  fflush(*(FILE **)puVar2);\n  iVar5 = ferror(*(FILE **)puVar2);\n  if (iVar5 != 0) {\n    piVar6 = __errno_location();\n    if (*piVar6 != 0x20) {\n      FUN_000660d0("main.c",0x2c5,piVar6,piVar6);\n      pcVar4 = strerror(*piVar6);\n      uVar3 = dcgettext(0,"error writing standard output: %s",5);\n      FUN_000663f0(uVar3,pcVar4);\n    }\n                    \n    exit(1);\n  }\n                    \n  exit(0);\n}" (primitive_type "void") (function_declarator "FUN_00064c70(void)" (identifier "FUN_00064c70") (parameter_list "(void)" (( "(") (parameter_declaration "void" (primitive_type "void")) () ")"))) (compound_statement "{\n  FILE *pFVar1;\n  undefined *puVar2;\n  undefined4 uVar3;\n  char *pcVar4;\n  int iVar5;\n  int *piVar6;\n  \n  uVar3 = dcgettext(0,\n                    "Copyright (C) 1989, 1991-%d Free Software Foundation.\n\nThis program is free software; you can redistribute it and/or modify\nit under the terms of the GNU General Public License as published by\nthe Free Software Foundation; either version 3 of the License, or\n(at your option) any later version.\n\n"\n                    ,5);\n  __printf_chk(1,uVar3,0x7e4);\n  puVar2 = PTR_stdout_000befc8;\n  pFVar1 = *(FILE **)PTR_stdout_000befc8;\n  pcVar4 = (char *)dcgettext(0,\n                             "This program is distributed in the hope that it will be useful,\nbut WITHOUT ANY WARRANTY; without even the implied warranty of\nMERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\nGNU General Public License for more details.\n\n"\n                             ,5);\n  fputs(pcVar4,pFVar1);\n  pFVar1 = *(FILE **)puVar2;\n  pcVar4 = (char *)dcgettext(0,\n                             "You should have received a copy of the GNU General Public License\nalong with this program. If not, see http:\n                             ,5);\n  fputs(pcVar4,pFVar1);\n  fflush(*(FILE **)puVar2);\n  iVar5 = ferror(*(FILE **)puVar2);\n  if (iVar5 != 0) {\n    piVar6 = __errno_location();\n    if (*piVar6 != 0x20) {\n      FUN_000660d0("main.c",0x2c5,piVar6,piVar6);\n      pcVar4 = strerror(*piVar6);\n      uVar3 = dcgettext(0,"error writing standard output: %s",5);\n      FUN_000663f0(uVar3,pcVar4);\n    }\n                    \n    exit(1);\n  }\n                    \n  exit(0);\n}" ({ "{") (declaration "FILE *pFVar1;" (type_identifier "FILE") (pointer_declarator "*pFVar1" (* "*") (identifier "pFVar1")) (; ";")) (declaration "undefined *puVar2;" (type_identifier "undefined") (pointer_declarator "*puVar2" (* "*") (identifier "puVar2")) (; ";")) (declaration "undefined4 uVar3;" (type_identifier "undefined4") (identifier "uVar3") (; ";")) (declaration "char *pcVar4;" (primitive_type "char") (pointer_declarator "*pcVar4" (* "*") (identifier "pcVar4")) (; ";")) (declaration "int iVar5;" (primitive_type "int") (identifier "iVar5") (; ";")) (declaration "int *piVar6;" (primitive_type "int") (pointer_declarator "*piVar6" (* "*") (identifier "piVar6")) (; ";")) (expression_statement "uVar3 = dcgettext(0,\n                    "Copyright (C) 1989, 1991-%d Free Software Foundation.\n\nThis program is free software; you can redistribute it and/or modify\nit under the terms of the GNU General Public License as published by\nthe Free Software Foundation; either version 3 of the License, or\n(at your option) any later version.\n\n"\n                    ,5);" (assignment_expression "uVar3 = dcgettext(0,\n                    "Copyright (C) 1989, 1991-%d Free Software Foundation.\n\nThis program is free software; you can redistribute it and/or modify\nit under the terms of the GNU General Public License as published by\nthe Free Software Foundation; either version 3 of the License, or\n(at your option) any later version.\n\n"\n                    ,5)" (identifier "uVar3") (= "=") (call_expression "dcgettext(0,\n                    "Copyright (C) 1989, 1991-%d Free Software Foundation.\n\nThis program is free software; you can redistribute it and/or modify\nit under the terms of the GNU General Public License as published by\nthe Free Software Foundation; either version 3 of the License, or\n(at your option) any later version.\n\n"\n                    ,5)" (identifier "dcgettext") (argument_list "(0,\n                    "Copyright (C) 1989, 1991-%d Free Software Foundation.\n\nThis program is free software; you can redistribute it and/or modify\nit under the terms of the GNU General Public License as published by\nthe Free Software Foundation; either version 3 of the License, or\n(at your option) any later version.\n\n"\n                    ,5)" (( "(") (number_literal "0") (, ",") (string_literal ""Copyright (C) 1989, 1991-%d Free Software Foundation.\n\nThis program is free software; you can redistribute it and/or modify\nit under the terms of the GNU General Public License as published by\nthe Free Software Foundation; either version 3 of the License, or\n(at your option) any later version.\n\n"" (" """) (string_content "Copyright (C) 1989, 1991-%d Free Software Foundation.") (escape_sequence "\n") (escape_sequence "\n") (string_content "This program is free software; you can redistribute it and/or modify") (escape_sequence "\n") (string_content "it under the terms of the GNU General Public License as published by") (escape_sequence "\n") (string_content "the Free Software Foundation; either version 3 of the License, or") (escape_sequence "\n") (string_content "(at your option) any later version.") (escape_sequence "\n") (escape_sequence "\n") (" """)) (, ",") (number_literal "5") () ")")))) (; ";")) (expression_statement "__printf_chk(1,uVar3,0x7e4);" (call_expression "__printf_chk(1,uVar3,0x7e4)" (identifier "__printf_chk") (argument_list "(1,uVar3,0x7e4)" (( "(") (number_literal "1") (, ",") (identifier "uVar3") (, ",") (number_literal "0x7e4") () ")"))) (; ";")) (expression_statement "puVar2 = PTR_stdout_000befc8;" (assignment_expression "puVar2 = PTR_stdout_000befc8" (identifier "puVar2") (= "=") (identifier "PTR_stdout_000befc8")) (; ";")) (expression_statement "pFVar1 = *(FILE **)PTR_stdout_000befc8;" (assignment_expression "pFVar1 = *(FILE **)PTR_stdout_000befc8" (identifier "pFVar1") (= "=") (pointer_expression "*(FILE **)PTR_stdout_000befc8" (* "*") (cast_expression "(FILE **)PTR_stdout_000befc8" (( "(") (type_descriptor "FILE **" (type_identifier "FILE") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (identifier "PTR_stdout_000befc8")))) (; ";")) (expression_statement "pcVar4 = (char *)dcgettext(0,\n                             "This program is distributed in the hope that it will be useful,\nbut WITHOUT ANY WARRANTY; without even the implied warranty of\nMERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\nGNU General Public License for more details.\n\n"\n                             ,5);" (assignment_expression "pcVar4 = (char *)dcgettext(0,\n                             "This program is distributed in the hope that it will be useful,\nbut WITHOUT ANY WARRANTY; without even the implied warranty of\nMERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\nGNU General Public License for more details.\n\n"\n                             ,5)" (identifier "pcVar4") (= "=") (cast_expression "(char *)dcgettext(0,\n                             "This program is distributed in the hope that it will be useful,\nbut WITHOUT ANY WARRANTY; without even the implied warranty of\nMERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\nGNU General Public License for more details.\n\n"\n                             ,5)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "dcgettext(0,\n                             "This program is distributed in the hope that it will be useful,\nbut WITHOUT ANY WARRANTY; without even the implied warranty of\nMERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\nGNU General Public License for more details.\n\n"\n                             ,5)" (identifier "dcgettext") (argument_list "(0,\n                             "This program is distributed in the hope that it will be useful,\nbut WITHOUT ANY WARRANTY; without even the implied warranty of\nMERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\nGNU General Public License for more details.\n\n"\n                             ,5)" (( "(") (number_literal "0") (, ",") (string_literal ""This program is distributed in the hope that it will be useful,\nbut WITHOUT ANY WARRANTY; without even the implied warranty of\nMERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\nGNU General Public License for more details.\n\n"" (" """) (string_content "This program is distributed in the hope that it will be useful,") (escape_sequence "\n") (string_content "but WITHOUT ANY WARRANTY; without even the implied warranty of") (escape_sequence "\n") (string_content "MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the") (escape_sequence "\n") (string_content "GNU General Public License for more details.") (escape_sequence "\n") (escape_sequence "\n") (" """)) (, ",") (number_literal "5") () ")"))))) (; ";")) (expression_statement "fputs(pcVar4,pFVar1);" (call_expression "fputs(pcVar4,pFVar1)" (identifier "fputs") (argument_list "(pcVar4,pFVar1)" (( "(") (identifier "pcVar4") (, ",") (identifier "pFVar1") () ")"))) (; ";")) (expression_statement "pFVar1 = *(FILE **)puVar2;" (assignment_expression "pFVar1 = *(FILE **)puVar2" (identifier "pFVar1") (= "=") (pointer_expression "*(FILE **)puVar2" (* "*") (cast_expression "(FILE **)puVar2" (( "(") (type_descriptor "FILE **" (type_identifier "FILE") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (identifier "puVar2")))) (; ";")) (expression_statement "pcVar4 = (char *)dcgettext(0,\n                             "You should have received a copy of the GNU General Public License\nalong with this program. If not, see http:\n                             ,5);" (assignment_expression "pcVar4 = (char *)dcgettext(0,\n                             "You should have received a copy of the GNU General Public License\nalong with this program. If not, see http:\n                             ,5)" (identifier "pcVar4") (= "=") (cast_expression "(char *)dcgettext(0,\n                             "You should have received a copy of the GNU General Public License\nalong with this program. If not, see http:\n                             ,5)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "dcgettext(0,\n                             "You should have received a copy of the GNU General Public License\nalong with this program. If not, see http:\n                             ,5)" (identifier "dcgettext") (argument_list "(0,\n                             "You should have received a copy of the GNU General Public License\nalong with this program. If not, see http:\n                             ,5)" (( "(") (number_literal "0") (, ",") (string_literal ""You should have received a copy of the GNU General Public License\nalong with this program. If not, see http:" (" """) (string_content "You should have received a copy of the GNU General Public License") (escape_sequence "\n") (string_content "along with this program. If not, see http:") (" "")) (, ",") (number_literal "5") () ")"))))) (; ";")) (expression_statement "fputs(pcVar4,pFVar1);" (call_expression "fputs(pcVar4,pFVar1)" (identifier "fputs") (argument_list "(pcVar4,pFVar1)" (( "(") (identifier "pcVar4") (, ",") (identifier "pFVar1") () ")"))) (; ";")) (expression_statement "fflush(*(FILE **)puVar2);" (call_expression "fflush(*(FILE **)puVar2)" (identifier "fflush") (argument_list "(*(FILE **)puVar2)" (( "(") (pointer_expression "*(FILE **)puVar2" (* "*") (cast_expression "(FILE **)puVar2" (( "(") (type_descriptor "FILE **" (type_identifier "FILE") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (identifier "puVar2"))) () ")"))) (; ";")) (expression_statement "iVar5 = ferror(*(FILE **)puVar2);" (assignment_expression "iVar5 = ferror(*(FILE **)puVar2)" (identifier "iVar5") (= "=") (call_expression "ferror(*(FILE **)puVar2)" (identifier "ferror") (argument_list "(*(FILE **)puVar2)" (( "(") (pointer_expression "*(FILE **)puVar2" (* "*") (cast_expression "(FILE **)puVar2" (( "(") (type_descriptor "FILE **" (type_identifier "FILE") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (identifier "puVar2"))) () ")")))) (; ";")) (if_statement "if (iVar5 != 0) {\n    piVar6 = __errno_location();\n    if (*piVar6 != 0x20) {\n      FUN_000660d0("main.c",0x2c5,piVar6,piVar6);\n      pcVar4 = strerror(*piVar6);\n      uVar3 = dcgettext(0,"error writing standard output: %s",5);\n      FUN_000663f0(uVar3,pcVar4);\n    }\n                    \n    exit(1);\n  }" (if "if") (parenthesized_expression "(iVar5 != 0)" (( "(") (binary_expression "iVar5 != 0" (identifier "iVar5") (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n    piVar6 = __errno_location();\n    if (*piVar6 != 0x20) {\n      FUN_000660d0("main.c",0x2c5,piVar6,piVar6);\n      pcVar4 = strerror(*piVar6);\n      uVar3 = dcgettext(0,"error writing standard output: %s",5);\n      FUN_000663f0(uVar3,pcVar4);\n    }\n                    \n    exit(1);\n  }" ({ "{") (expression_statement "piVar6 = __errno_location();" (assignment_expression "piVar6 = __errno_location()" (identifier "piVar6") (= "=") (call_expression "__errno_location()" (identifier "__errno_location") (argument_list "()" (( "(") () ")")))) (; ";")) (if_statement "if (*piVar6 != 0x20) {\n      FUN_000660d0("main.c",0x2c5,piVar6,piVar6);\n      pcVar4 = strerror(*piVar6);\n      uVar3 = dcgettext(0,"error writing standard output: %s",5);\n      FUN_000663f0(uVar3,pcVar4);\n    }" (if "if") (parenthesized_expression "(*piVar6 != 0x20)" (( "(") (binary_expression "*piVar6 != 0x20" (pointer_expression "*piVar6" (* "*") (identifier "piVar6")) (!= "!=") (number_literal "0x20")) () ")")) (compound_statement "{\n      FUN_000660d0("main.c",0x2c5,piVar6,piVar6);\n      pcVar4 = strerror(*piVar6);\n      uVar3 = dcgettext(0,"error writing standard output: %s",5);\n      FUN_000663f0(uVar3,pcVar4);\n    }" ({ "{") (expression_statement "FUN_000660d0("main.c",0x2c5,piVar6,piVar6);" (call_expression "FUN_000660d0("main.c",0x2c5,piVar6,piVar6)" (identifier "FUN_000660d0") (argument_list "("main.c",0x2c5,piVar6,piVar6)" (( "(") (string_literal ""main.c"" (" """) (string_content "main.c") (" """)) (, ",") (number_literal "0x2c5") (, ",") (identifier "piVar6") (, ",") (identifier "piVar6") () ")"))) (; ";")) (expression_statement "pcVar4 = strerror(*piVar6);" (assignment_expression "pcVar4 = strerror(*piVar6)" (identifier "pcVar4") (= "=") (call_expression "strerror(*piVar6)" (identifier "strerror") (argument_list "(*piVar6)" (( "(") (pointer_expression "*piVar6" (* "*") (identifier "piVar6")) () ")")))) (; ";")) (expression_statement "uVar3 = dcgettext(0,"error writing standard output: %s",5);" (assignment_expression "uVar3 = dcgettext(0,"error writing standard output: %s",5)" (identifier "uVar3") (= "=") (call_expression "dcgettext(0,"error writing standard output: %s",5)" (identifier "dcgettext") (argument_list "(0,"error writing standard output: %s",5)" (( "(") (number_literal "0") (, ",") (string_literal ""error writing standard output: %s"" (" """) (string_content "error writing standard output: %s") (" """)) (, ",") (number_literal "5") () ")")))) (; ";")) (expression_statement "FUN_000663f0(uVar3,pcVar4);" (call_expression "FUN_000663f0(uVar3,pcVar4)" (identifier "FUN_000663f0") (argument_list "(uVar3,pcVar4)" (( "(") (identifier "uVar3") (, ",") (identifier "pcVar4") () ")"))) (; ";")) (} "}"))) (expression_statement "exit(1);" (call_expression "exit(1)" (identifier "exit") (argument_list "(1)" (( "(") (number_literal "1") () ")"))) (; ";")) (} "}"))) (expression_statement "exit(0);" (call_expression "exit(0)" (identifier "exit") (argument_list "(0)" (( "(") (number_literal "0") () ")"))) (; ";")) (} "}")))

/* WARNING: Function: __x86.get_pc_thunk.bx replaced with injection: get_pc_thunk_bx */
/* WARNING: Unknown calling convention -- yet parameter storage is locked */

void function_1(void)

{
  type_1 *pFVar1;
  type_2 *puVar2;
  type_3 uVar3;
  char *pcVar4;
  int var_6;
  int *piVar6;
  char *mesg;
  int *piVar7;
  
  uVar3 = var_1(0,
                    "Copyright (C) 1989, 1991-%d Free Software Foundation.\n\nThis program is free software; you can redistribute it and/or modify\nit under the terms of the GNU General Public License as published by\nthe Free Software Foundation; either version 3 of the License, or\n(at your option) any later version.\n\n"
                    ,5);
  var_2(1,uVar3,0x7e4);
  puVar2 = PTR_stdout_000befc8;
  pFVar1 = *(type_1 **)PTR_stdout_000befc8;
  pcVar4 = (char *)var_1(0,
                             "This program is distributed in the hope that it will be useful,\nbut WITHOUT ANY WARRANTY; without even the implied warranty of\nMERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\nGNU General Public License for more details.\n\n"
                             ,5);
  var_3(pcVar4,pFVar1);
  pFVar1 = *(type_1 **)puVar2;
  pcVar4 = (char *)var_1(0,
                             "You should have received a copy of the GNU General Public License\nalong with this program. If not, see http://www.gnu.org/licenses/.\n"
                             ,5);
  var_3(pcVar4,pFVar1);
  var_4(*(type_1 **)puVar2);
  var_6 = var_5(*(type_1 **)puVar2);
  if (var_6 != 0) {
    piVar6 = var_7();
    if (*piVar6 != 0x20) {
      piVar7 = piVar6;
      var_8("main.c",0x2c5);
      pcVar4 = var_9(*piVar6);
      mesg = (char *)var_1(0,"error writing standard output: %s",5,piVar7);
      var_10(mesg,pcVar4);
    }
                    /* WARNING: Subroutine does not return */
    var_11(1);
  }
                    /* WARNING: Subroutine does not return */
  var_11(0);
}


(translation_unit (function_definition type: (primitive_type) declarator: (function_declarator declarator: (identifier) parameters: (parameter_list (parameter_declaration type: (primitive_type)))) body: (compound_statement (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (primitive_type) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (primitive_type) declarator: (identifier)) (declaration type: (primitive_type) declarator: (pointer_declarator declarator: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (number_literal) (string_literal (string_content) (escape_sequence) (escape_sequence) (string_content) (escape_sequence) (string_content) (escape_sequence) (string_content) (escape_sequence) (string_content) (escape_sequence) (escape_sequence)) (number_literal))))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (number_literal) (identifier) (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (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) (escape_sequence)) (number_literal)))))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (identifier) (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (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) (MISSING """)) (number_literal)))))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (identifier) (identifier)))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (identifier)))))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (identifier))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list)))) (if_statement condition: (parenthesized_expression (binary_expression left: (pointer_expression argument: (identifier)) right: (number_literal))) consequence: (compound_statement (expression_statement (call_expression function: (identifier) arguments: (argument_list (string_literal (string_content)) (number_literal) (identifier) (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (pointer_expression argument: (identifier)))))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (number_literal) (string_literal (string_content)) (number_literal))))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (identifier) (identifier)))))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (number_literal)))))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (number_literal)))))))

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

void MASKED(void)

{
  FILE *pFVar1;
  undefined *puVar2;
  undefined4 uVar3;
  char *pcVar4;
  int iVar5;
  int *piVar6;
  
  uVar3 = dcgettext(0,
                    "Copyright (C) 1989, 1991-%d Free Software Foundation.\n\nThis program is free software; you can redistribute it and/or modify\nit under the terms of the GNU General Public License as published by\nthe Free Software Foundation; either version 3 of the License, or\n(at your option) any later version.\n\n"
                    ,5);
  __printf_chk(1,uVar3,0x7e4);
  puVar2 = PTR_stdout_000befc8;
  pFVar1 = *(FILE **)PTR_stdout_000befc8;
  pcVar4 = (char *)dcgettext(0,
                             "This program is distributed in the hope that it will be useful,\nbut WITHOUT ANY WARRANTY; without even the implied warranty of\nMERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\nGNU General Public License for more details.\n\n"
                             ,5);
  fputs(pcVar4,pFVar1);
  pFVar1 = *(FILE **)puVar2;
  pcVar4 = (char *)dcgettext(0,
                             "You should have received a copy of the GNU General Public License\nalong with this program. If not, see http://www.gnu.org/licenses/.\n"
                             ,5);
  fputs(pcVar4,pFVar1);
  fflush(*(FILE **)puVar2);
  iVar5 = ferror(*(FILE **)puVar2);
  if (iVar5 != 0) {
    piVar6 = __errno_location();
    if (*piVar6 != 0x20) {
      FUN_000660d0("main.c",0x2c5,piVar6,piVar6);
      pcVar4 = strerror(*piVar6);
      uVar3 = dcgettext(0,"error writing standard output: %s",5);
      FUN_000663f0(uVar3,pcVar4);
    }
                    /* WARNING: Subroutine does not return */
    exit(1);
  }
                    /* WARNING: Subroutine does not return */
  exit(0);
}

