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

void print_dependencies(void)

{
  dependency *pdVar1;
  char *pcVar2;
  FILE *__stream;
  int iVar3;
  char *pcVar4;
  
  if (dep_file == (char *)0x0) {
    return;
  }
  __stream = fopen64(dep_file,"w");
  if (__stream == (FILE *)0x0) {
    pcVar4 = "can\'t open `%s\' for writing";
  }
  else {
    column = 0;
    wrap_output((FILE *)__stream,out_file_name,0x3a);
    for (pdVar1 = dep_chain; pdVar1 != (dependency *)0x0; pdVar1 = pdVar1->next) {
      wrap_output((FILE *)__stream,pdVar1->file,0x20);
    }
    putc(10,__stream);
    iVar3 = fclose(__stream);
    if (iVar3 == 0) {
      return;
    }
    pcVar4 = "can\'t close `%s\'";
  }
  pcVar2 = dep_file;
  pcVar4 = (char *)dcgettext(0,pcVar4,5);
  as_warn(pcVar4,pcVar2);
  return;
}



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

void FUN_00019ee0(void)

{
  char *pcVar1;
  FILE *__stream;
  int iVar2;
  char *pcVar3;
  undefined4 uVar4;
  
  if (DAT_00087224 == (char *)0x0) {
    return;
  }
  __stream = fopen64(DAT_00087224,"w");
  if (__stream == (FILE *)0x0) {
    pcVar3 = "can\'t open `%s\' for writing";
  }
  else {
    DAT_0008721c = 0;
    FUN_00019d30();
    for (iVar2 = DAT_00087220; iVar2 != 0; iVar2 = *(int *)(iVar2 + 4)) {
      FUN_00019d30();
    }
    putc(10,__stream);
    iVar2 = fclose(__stream);
    if (iVar2 == 0) {
      return;
    }
    pcVar3 = "can\'t close `%s\'";
  }
  pcVar1 = DAT_00087224;
  uVar4 = dcgettext(0,pcVar3,5);
  FUN_00029470(uVar4,pcVar1);
  return;
}


PUSH EDI
PUSH ESI
PUSH EBX
CALL 0x00016030
ADD EBX,0x64118
MOV EAX,dword ptr [EBX + 0x9224]
TEST EAX,EAX
JZ 0x00019f6f
SUB ESP,0x8
LEA EDX,[EBX + 0xfffe10a9]
PUSH EDX
PUSH EAX
CALL 0x000142b0
ADD ESP,0x10
MOV EDI,EAX
TEST EAX,EAX
JZ 0x00019fa8
LEA EAX,[EBX + 0x9fac]
MOV ECX,0x3a
MOV dword ptr [EBX + 0x921c],0x0
MOV EDX,dword ptr [EAX]
MOV EAX,EDI
CALL 0x00019d30
MOV ESI,dword ptr [EBX + 0x9220]
TEST ESI,ESI
JZ 0x00019f55
LEA ESI,[ESI]
MOV EDX,dword ptr [ESI]
MOV ECX,0x20
MOV EAX,EDI
CALL 0x00019d30
MOV ESI,dword ptr [ESI + 0x4]
TEST ESI,ESI
JNZ 0x00019f40
SUB ESP,0x8
PUSH EDI
PUSH 0xa
CALL 0x00014640
MOV dword ptr [ESP],EDI
CALL 0x00014140
ADD ESP,0x10
TEST EAX,EAX
JNZ 0x00019f78
POP EBX
POP ESI
POP EDI
RET
SUB ESP,0x4
MOV ESI,dword ptr [EBX + 0x9224]
LEA EAX,[EBX + 0xfffde13a]
PUSH 0x5
PUSH EAX
PUSH 0x0
CALL 0x000141b0
POP EDX
POP ECX
PUSH ESI
PUSH EAX
CALL 0x00029470
ADD ESP,0x10
POP EBX
POP ESI
POP EDI
RET
SUB ESP,0x4
MOV ESI,dword ptr [EBX + 0x9224]
LEA EAX,[EBX + 0xfffde11e]
PUSH 0x5
JMP 0x00019f89
(translation_unit "/* WARNING: Function: __i686.get_pc_thunk.bx replaced with injection: get_pc_thunk_bx */\n\nvoid FUN_00019ee0(void)\n\n{\n  char *pcVar1;\n  FILE *__stream;\n  int iVar2;\n  char *pcVar3;\n  undefined4 uVar4;\n  \n  if (DAT_00087224 == (char *)0x0) {\n    return;\n  }\n  __stream = fopen64(DAT_00087224,"w");\n  if (__stream == (FILE *)0x0) {\n    pcVar3 = "can\'t open `%s\' for writing";\n  }\n  else {\n    DAT_0008721c = 0;\n    FUN_00019d30();\n    for (iVar2 = DAT_00087220; iVar2 != 0; iVar2 = *(int *)(iVar2 + 4)) {\n      FUN_00019d30();\n    }\n    putc(10,__stream);\n    iVar2 = fclose(__stream);\n    if (iVar2 == 0) {\n      return;\n    }\n    pcVar3 = "can\'t close `%s\'";\n  }\n  pcVar1 = DAT_00087224;\n  uVar4 = dcgettext(0,pcVar3,5);\n  FUN_00029470(uVar4,pcVar1);\n  return;\n}\n\n" comment (function_definition "void FUN_00019ee0(void)\n\n{\n  char *pcVar1;\n  FILE *__stream;\n  int iVar2;\n  char *pcVar3;\n  undefined4 uVar4;\n  \n  if (DAT_00087224 == (char *)0x0) {\n    return;\n  }\n  __stream = fopen64(DAT_00087224,"w");\n  if (__stream == (FILE *)0x0) {\n    pcVar3 = "can\'t open `%s\' for writing";\n  }\n  else {\n    DAT_0008721c = 0;\n    FUN_00019d30();\n    for (iVar2 = DAT_00087220; iVar2 != 0; iVar2 = *(int *)(iVar2 + 4)) {\n      FUN_00019d30();\n    }\n    putc(10,__stream);\n    iVar2 = fclose(__stream);\n    if (iVar2 == 0) {\n      return;\n    }\n    pcVar3 = "can\'t close `%s\'";\n  }\n  pcVar1 = DAT_00087224;\n  uVar4 = dcgettext(0,pcVar3,5);\n  FUN_00029470(uVar4,pcVar1);\n  return;\n}" primitive_type (function_declarator "FUN_00019ee0(void)" identifier (parameter_list "(void)" ( (parameter_declaration "void" primitive_type) ))) (compound_statement "{\n  char *pcVar1;\n  FILE *__stream;\n  int iVar2;\n  char *pcVar3;\n  undefined4 uVar4;\n  \n  if (DAT_00087224 == (char *)0x0) {\n    return;\n  }\n  __stream = fopen64(DAT_00087224,"w");\n  if (__stream == (FILE *)0x0) {\n    pcVar3 = "can\'t open `%s\' for writing";\n  }\n  else {\n    DAT_0008721c = 0;\n    FUN_00019d30();\n    for (iVar2 = DAT_00087220; iVar2 != 0; iVar2 = *(int *)(iVar2 + 4)) {\n      FUN_00019d30();\n    }\n    putc(10,__stream);\n    iVar2 = fclose(__stream);\n    if (iVar2 == 0) {\n      return;\n    }\n    pcVar3 = "can\'t close `%s\'";\n  }\n  pcVar1 = DAT_00087224;\n  uVar4 = dcgettext(0,pcVar3,5);\n  FUN_00029470(uVar4,pcVar1);\n  return;\n}" { (declaration "char *pcVar1;" primitive_type (pointer_declarator "*pcVar1" * identifier) ;) (declaration "FILE *__stream;" type_identifier (pointer_declarator "*__stream" * identifier) ;) (declaration "int iVar2;" primitive_type identifier ;) (declaration "char *pcVar3;" primitive_type (pointer_declarator "*pcVar3" * identifier) ;) (declaration "undefined4 uVar4;" type_identifier identifier ;) (if_statement "if (DAT_00087224 == (char *)0x0) {\n    return;\n  }" if (parenthesized_expression "(DAT_00087224 == (char *)0x0)" ( (binary_expression "DAT_00087224 == (char *)0x0" identifier == (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n    return;\n  }" { (return_statement "return;" return ;) })) (expression_statement "__stream = fopen64(DAT_00087224,"w");" (assignment_expression "__stream = fopen64(DAT_00087224,"w")" identifier = (call_expression "fopen64(DAT_00087224,"w")" identifier (argument_list "(DAT_00087224,"w")" ( identifier , (string_literal ""w"" " string_content ") )))) ;) (if_statement "if (__stream == (FILE *)0x0) {\n    pcVar3 = "can\'t open `%s\' for writing";\n  }\n  else {\n    DAT_0008721c = 0;\n    FUN_00019d30();\n    for (iVar2 = DAT_00087220; iVar2 != 0; iVar2 = *(int *)(iVar2 + 4)) {\n      FUN_00019d30();\n    }\n    putc(10,__stream);\n    iVar2 = fclose(__stream);\n    if (iVar2 == 0) {\n      return;\n    }\n    pcVar3 = "can\'t close `%s\'";\n  }" if (parenthesized_expression "(__stream == (FILE *)0x0)" ( (binary_expression "__stream == (FILE *)0x0" identifier == (cast_expression "(FILE *)0x0" ( (type_descriptor "FILE *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n    pcVar3 = "can\'t open `%s\' for writing";\n  }" { (expression_statement "pcVar3 = "can\'t open `%s\' for writing";" (assignment_expression "pcVar3 = "can\'t open `%s\' for writing"" identifier = (string_literal ""can\'t open `%s\' for writing"" " string_content escape_sequence string_content escape_sequence string_content ")) ;) }) (else_clause "else {\n    DAT_0008721c = 0;\n    FUN_00019d30();\n    for (iVar2 = DAT_00087220; iVar2 != 0; iVar2 = *(int *)(iVar2 + 4)) {\n      FUN_00019d30();\n    }\n    putc(10,__stream);\n    iVar2 = fclose(__stream);\n    if (iVar2 == 0) {\n      return;\n    }\n    pcVar3 = "can\'t close `%s\'";\n  }" else (compound_statement "{\n    DAT_0008721c = 0;\n    FUN_00019d30();\n    for (iVar2 = DAT_00087220; iVar2 != 0; iVar2 = *(int *)(iVar2 + 4)) {\n      FUN_00019d30();\n    }\n    putc(10,__stream);\n    iVar2 = fclose(__stream);\n    if (iVar2 == 0) {\n      return;\n    }\n    pcVar3 = "can\'t close `%s\'";\n  }" { (expression_statement "DAT_0008721c = 0;" (assignment_expression "DAT_0008721c = 0" identifier = number_literal) ;) (expression_statement "FUN_00019d30();" (call_expression "FUN_00019d30()" identifier (argument_list "()" ( ))) ;) (for_statement "for (iVar2 = DAT_00087220; iVar2 != 0; iVar2 = *(int *)(iVar2 + 4)) {\n      FUN_00019d30();\n    }" for ( (assignment_expression "iVar2 = DAT_00087220" identifier = identifier) ; (binary_expression "iVar2 != 0" identifier != number_literal) ; (assignment_expression "iVar2 = *(int *)(iVar2 + 4)" identifier = (pointer_expression "*(int *)(iVar2 + 4)" * (cast_expression "(int *)(iVar2 + 4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + 4)" ( (binary_expression "iVar2 + 4" identifier + number_literal) ))))) ) (compound_statement "{\n      FUN_00019d30();\n    }" { (expression_statement "FUN_00019d30();" (call_expression "FUN_00019d30()" identifier (argument_list "()" ( ))) ;) })) (expression_statement "putc(10,__stream);" (call_expression "putc(10,__stream)" identifier (argument_list "(10,__stream)" ( number_literal , identifier ))) ;) (expression_statement "iVar2 = fclose(__stream);" (assignment_expression "iVar2 = fclose(__stream)" identifier = (call_expression "fclose(__stream)" identifier (argument_list "(__stream)" ( identifier )))) ;) (if_statement "if (iVar2 == 0) {\n      return;\n    }" if (parenthesized_expression "(iVar2 == 0)" ( (binary_expression "iVar2 == 0" identifier == number_literal) )) (compound_statement "{\n      return;\n    }" { (return_statement "return;" return ;) })) (expression_statement "pcVar3 = "can\'t close `%s\'";" (assignment_expression "pcVar3 = "can\'t close `%s\'"" identifier = (string_literal ""can\'t close `%s\'"" " string_content escape_sequence string_content escape_sequence ")) ;) }))) (expression_statement "pcVar1 = DAT_00087224;" (assignment_expression "pcVar1 = DAT_00087224" identifier = identifier) ;) (expression_statement "uVar4 = dcgettext(0,pcVar3,5);" (assignment_expression "uVar4 = dcgettext(0,pcVar3,5)" identifier = (call_expression "dcgettext(0,pcVar3,5)" identifier (argument_list "(0,pcVar3,5)" ( number_literal , identifier , number_literal )))) ;) (expression_statement "FUN_00029470(uVar4,pcVar1);" (call_expression "FUN_00029470(uVar4,pcVar1)" identifier (argument_list "(uVar4,pcVar1)" ( identifier , identifier ))) ;) (return_statement "return;" return ;) })))
(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 print_dependencies(void)\n\n{\n  dependency *pdVar1;\n  char *pcVar2;\n  FILE *__stream;\n  int iVar3;\n  char *pcVar4;\n  \n  if (dep_file == (char *)0x0) {\n    return;\n  }\n  __stream = fopen64(dep_file,"w");\n  if (__stream == (FILE *)0x0) {\n    pcVar4 = "can\'t open `%s\' for writing";\n  }\n  else {\n    column = 0;\n    wrap_output((FILE *)__stream,out_file_name,0x3a);\n    for (pdVar1 = dep_chain; pdVar1 != (dependency *)0x0; pdVar1 = pdVar1->next) {\n      wrap_output((FILE *)__stream,pdVar1->file,0x20);\n    }\n    putc(10,__stream);\n    iVar3 = fclose(__stream);\n    if (iVar3 == 0) {\n      return;\n    }\n    pcVar4 = "can\'t close `%s\'";\n  }\n  pcVar2 = dep_file;\n  pcVar4 = (char *)dcgettext(0,pcVar4,5);\n  as_warn(pcVar4,pcVar2);\n  return;\n}\n\n" comment comment (function_definition "void print_dependencies(void)\n\n{\n  dependency *pdVar1;\n  char *pcVar2;\n  FILE *__stream;\n  int iVar3;\n  char *pcVar4;\n  \n  if (dep_file == (char *)0x0) {\n    return;\n  }\n  __stream = fopen64(dep_file,"w");\n  if (__stream == (FILE *)0x0) {\n    pcVar4 = "can\'t open `%s\' for writing";\n  }\n  else {\n    column = 0;\n    wrap_output((FILE *)__stream,out_file_name,0x3a);\n    for (pdVar1 = dep_chain; pdVar1 != (dependency *)0x0; pdVar1 = pdVar1->next) {\n      wrap_output((FILE *)__stream,pdVar1->file,0x20);\n    }\n    putc(10,__stream);\n    iVar3 = fclose(__stream);\n    if (iVar3 == 0) {\n      return;\n    }\n    pcVar4 = "can\'t close `%s\'";\n  }\n  pcVar2 = dep_file;\n  pcVar4 = (char *)dcgettext(0,pcVar4,5);\n  as_warn(pcVar4,pcVar2);\n  return;\n}" primitive_type (function_declarator "print_dependencies(void)" identifier (parameter_list "(void)" ( (parameter_declaration "void" primitive_type) ))) (compound_statement "{\n  dependency *pdVar1;\n  char *pcVar2;\n  FILE *__stream;\n  int iVar3;\n  char *pcVar4;\n  \n  if (dep_file == (char *)0x0) {\n    return;\n  }\n  __stream = fopen64(dep_file,"w");\n  if (__stream == (FILE *)0x0) {\n    pcVar4 = "can\'t open `%s\' for writing";\n  }\n  else {\n    column = 0;\n    wrap_output((FILE *)__stream,out_file_name,0x3a);\n    for (pdVar1 = dep_chain; pdVar1 != (dependency *)0x0; pdVar1 = pdVar1->next) {\n      wrap_output((FILE *)__stream,pdVar1->file,0x20);\n    }\n    putc(10,__stream);\n    iVar3 = fclose(__stream);\n    if (iVar3 == 0) {\n      return;\n    }\n    pcVar4 = "can\'t close `%s\'";\n  }\n  pcVar2 = dep_file;\n  pcVar4 = (char *)dcgettext(0,pcVar4,5);\n  as_warn(pcVar4,pcVar2);\n  return;\n}" { (declaration "dependency *pdVar1;" type_identifier (pointer_declarator "*pdVar1" * identifier) ;) (declaration "char *pcVar2;" primitive_type (pointer_declarator "*pcVar2" * identifier) ;) (declaration "FILE *__stream;" type_identifier (pointer_declarator "*__stream" * identifier) ;) (declaration "int iVar3;" primitive_type identifier ;) (declaration "char *pcVar4;" primitive_type (pointer_declarator "*pcVar4" * identifier) ;) (if_statement "if (dep_file == (char *)0x0) {\n    return;\n  }" if (parenthesized_expression "(dep_file == (char *)0x0)" ( (binary_expression "dep_file == (char *)0x0" identifier == (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n    return;\n  }" { (return_statement "return;" return ;) })) (expression_statement "__stream = fopen64(dep_file,"w");" (assignment_expression "__stream = fopen64(dep_file,"w")" identifier = (call_expression "fopen64(dep_file,"w")" identifier (argument_list "(dep_file,"w")" ( identifier , (string_literal ""w"" " string_content ") )))) ;) (if_statement "if (__stream == (FILE *)0x0) {\n    pcVar4 = "can\'t open `%s\' for writing";\n  }\n  else {\n    column = 0;\n    wrap_output((FILE *)__stream,out_file_name,0x3a);\n    for (pdVar1 = dep_chain; pdVar1 != (dependency *)0x0; pdVar1 = pdVar1->next) {\n      wrap_output((FILE *)__stream,pdVar1->file,0x20);\n    }\n    putc(10,__stream);\n    iVar3 = fclose(__stream);\n    if (iVar3 == 0) {\n      return;\n    }\n    pcVar4 = "can\'t close `%s\'";\n  }" if (parenthesized_expression "(__stream == (FILE *)0x0)" ( (binary_expression "__stream == (FILE *)0x0" identifier == (cast_expression "(FILE *)0x0" ( (type_descriptor "FILE *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n    pcVar4 = "can\'t open `%s\' for writing";\n  }" { (expression_statement "pcVar4 = "can\'t open `%s\' for writing";" (assignment_expression "pcVar4 = "can\'t open `%s\' for writing"" identifier = (string_literal ""can\'t open `%s\' for writing"" " string_content escape_sequence string_content escape_sequence string_content ")) ;) }) (else_clause "else {\n    column = 0;\n    wrap_output((FILE *)__stream,out_file_name,0x3a);\n    for (pdVar1 = dep_chain; pdVar1 != (dependency *)0x0; pdVar1 = pdVar1->next) {\n      wrap_output((FILE *)__stream,pdVar1->file,0x20);\n    }\n    putc(10,__stream);\n    iVar3 = fclose(__stream);\n    if (iVar3 == 0) {\n      return;\n    }\n    pcVar4 = "can\'t close `%s\'";\n  }" else (compound_statement "{\n    column = 0;\n    wrap_output((FILE *)__stream,out_file_name,0x3a);\n    for (pdVar1 = dep_chain; pdVar1 != (dependency *)0x0; pdVar1 = pdVar1->next) {\n      wrap_output((FILE *)__stream,pdVar1->file,0x20);\n    }\n    putc(10,__stream);\n    iVar3 = fclose(__stream);\n    if (iVar3 == 0) {\n      return;\n    }\n    pcVar4 = "can\'t close `%s\'";\n  }" { (expression_statement "column = 0;" (assignment_expression "column = 0" identifier = number_literal) ;) (expression_statement "wrap_output((FILE *)__stream,out_file_name,0x3a);" (call_expression "wrap_output((FILE *)__stream,out_file_name,0x3a)" identifier (argument_list "((FILE *)__stream,out_file_name,0x3a)" ( (cast_expression "(FILE *)__stream" ( (type_descriptor "FILE *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier) , identifier , number_literal ))) ;) (for_statement "for (pdVar1 = dep_chain; pdVar1 != (dependency *)0x0; pdVar1 = pdVar1->next) {\n      wrap_output((FILE *)__stream,pdVar1->file,0x20);\n    }" for ( (assignment_expression "pdVar1 = dep_chain" identifier = identifier) ; (binary_expression "pdVar1 != (dependency *)0x0" identifier != (cast_expression "(dependency *)0x0" ( (type_descriptor "dependency *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ; (assignment_expression "pdVar1 = pdVar1->next" identifier = (field_expression "pdVar1->next" identifier -> field_identifier)) ) (compound_statement "{\n      wrap_output((FILE *)__stream,pdVar1->file,0x20);\n    }" { (expression_statement "wrap_output((FILE *)__stream,pdVar1->file,0x20);" (call_expression "wrap_output((FILE *)__stream,pdVar1->file,0x20)" identifier (argument_list "((FILE *)__stream,pdVar1->file,0x20)" ( (cast_expression "(FILE *)__stream" ( (type_descriptor "FILE *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier) , (field_expression "pdVar1->file" identifier -> field_identifier) , number_literal ))) ;) })) (expression_statement "putc(10,__stream);" (call_expression "putc(10,__stream)" identifier (argument_list "(10,__stream)" ( number_literal , identifier ))) ;) (expression_statement "iVar3 = fclose(__stream);" (assignment_expression "iVar3 = fclose(__stream)" identifier = (call_expression "fclose(__stream)" identifier (argument_list "(__stream)" ( identifier )))) ;) (if_statement "if (iVar3 == 0) {\n      return;\n    }" if (parenthesized_expression "(iVar3 == 0)" ( (binary_expression "iVar3 == 0" identifier == number_literal) )) (compound_statement "{\n      return;\n    }" { (return_statement "return;" return ;) })) (expression_statement "pcVar4 = "can\'t close `%s\'";" (assignment_expression "pcVar4 = "can\'t close `%s\'"" identifier = (string_literal ""can\'t close `%s\'"" " string_content escape_sequence string_content escape_sequence ")) ;) }))) (expression_statement "pcVar2 = dep_file;" (assignment_expression "pcVar2 = dep_file" identifier = identifier) ;) (expression_statement "pcVar4 = (char *)dcgettext(0,pcVar4,5);" (assignment_expression "pcVar4 = (char *)dcgettext(0,pcVar4,5)" identifier = (cast_expression "(char *)dcgettext(0,pcVar4,5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,pcVar4,5)" identifier (argument_list "(0,pcVar4,5)" ( number_literal , identifier , number_literal ))))) ;) (expression_statement "as_warn(pcVar4,pcVar2);" (call_expression "as_warn(pcVar4,pcVar2)" identifier (argument_list "(pcVar4,pcVar2)" ( identifier , identifier ))) ;) (return_statement "return;" return ;) })))
(translation_unit "void FUN_00019ee0(void)\n\n{\n  char *pcVar1;\n  FILE *__stream;\n  int iVar2;\n  char *pcVar3;\n  undefined4 uVar4;\n  \n  if (DAT_00087224 == (char *)0x0) {\n    return;\n  }\n  __stream = fopen64(DAT_00087224,"w");\n  if (__stream == (FILE *)0x0) {\n    pcVar3 = "can\'t open `%s\' for writing";\n  }\n  else {\n    DAT_0008721c = 0;\n    FUN_00019d30();\n    for (iVar2 = DAT_00087220; iVar2 != 0; iVar2 = *(int *)(iVar2 + 4)) {\n      FUN_00019d30();\n    }\n    putc(10,__stream);\n    iVar2 = fclose(__stream);\n    if (iVar2 == 0) {\n      return;\n    }\n    pcVar3 = "can\'t close `%s\'";\n  }\n  pcVar1 = DAT_00087224;\n  uVar4 = dcgettext(0,pcVar3,5);\n  FUN_00029470(uVar4,pcVar1);\n  return;\n}\n\n" (function_definition "void FUN_00019ee0(void)\n\n{\n  char *pcVar1;\n  FILE *__stream;\n  int iVar2;\n  char *pcVar3;\n  undefined4 uVar4;\n  \n  if (DAT_00087224 == (char *)0x0) {\n    return;\n  }\n  __stream = fopen64(DAT_00087224,"w");\n  if (__stream == (FILE *)0x0) {\n    pcVar3 = "can\'t open `%s\' for writing";\n  }\n  else {\n    DAT_0008721c = 0;\n    FUN_00019d30();\n    for (iVar2 = DAT_00087220; iVar2 != 0; iVar2 = *(int *)(iVar2 + 4)) {\n      FUN_00019d30();\n    }\n    putc(10,__stream);\n    iVar2 = fclose(__stream);\n    if (iVar2 == 0) {\n      return;\n    }\n    pcVar3 = "can\'t close `%s\'";\n  }\n  pcVar1 = DAT_00087224;\n  uVar4 = dcgettext(0,pcVar3,5);\n  FUN_00029470(uVar4,pcVar1);\n  return;\n}" primitive_type (function_declarator "FUN_00019ee0(void)" identifier (parameter_list "(void)" ( (parameter_declaration "void" primitive_type) ))) (compound_statement "{\n  char *pcVar1;\n  FILE *__stream;\n  int iVar2;\n  char *pcVar3;\n  undefined4 uVar4;\n  \n  if (DAT_00087224 == (char *)0x0) {\n    return;\n  }\n  __stream = fopen64(DAT_00087224,"w");\n  if (__stream == (FILE *)0x0) {\n    pcVar3 = "can\'t open `%s\' for writing";\n  }\n  else {\n    DAT_0008721c = 0;\n    FUN_00019d30();\n    for (iVar2 = DAT_00087220; iVar2 != 0; iVar2 = *(int *)(iVar2 + 4)) {\n      FUN_00019d30();\n    }\n    putc(10,__stream);\n    iVar2 = fclose(__stream);\n    if (iVar2 == 0) {\n      return;\n    }\n    pcVar3 = "can\'t close `%s\'";\n  }\n  pcVar1 = DAT_00087224;\n  uVar4 = dcgettext(0,pcVar3,5);\n  FUN_00029470(uVar4,pcVar1);\n  return;\n}" { (declaration "char *pcVar1;" primitive_type (pointer_declarator "*pcVar1" * identifier) ;) (declaration "FILE *__stream;" type_identifier (pointer_declarator "*__stream" * identifier) ;) (declaration "int iVar2;" primitive_type identifier ;) (declaration "char *pcVar3;" primitive_type (pointer_declarator "*pcVar3" * identifier) ;) (declaration "undefined4 uVar4;" type_identifier identifier ;) (if_statement "if (DAT_00087224 == (char *)0x0) {\n    return;\n  }" if (parenthesized_expression "(DAT_00087224 == (char *)0x0)" ( (binary_expression "DAT_00087224 == (char *)0x0" identifier == (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n    return;\n  }" { (return_statement "return;" return ;) })) (expression_statement "__stream = fopen64(DAT_00087224,"w");" (assignment_expression "__stream = fopen64(DAT_00087224,"w")" identifier = (call_expression "fopen64(DAT_00087224,"w")" identifier (argument_list "(DAT_00087224,"w")" ( identifier , (string_literal ""w"" " string_content ") )))) ;) (if_statement "if (__stream == (FILE *)0x0) {\n    pcVar3 = "can\'t open `%s\' for writing";\n  }\n  else {\n    DAT_0008721c = 0;\n    FUN_00019d30();\n    for (iVar2 = DAT_00087220; iVar2 != 0; iVar2 = *(int *)(iVar2 + 4)) {\n      FUN_00019d30();\n    }\n    putc(10,__stream);\n    iVar2 = fclose(__stream);\n    if (iVar2 == 0) {\n      return;\n    }\n    pcVar3 = "can\'t close `%s\'";\n  }" if (parenthesized_expression "(__stream == (FILE *)0x0)" ( (binary_expression "__stream == (FILE *)0x0" identifier == (cast_expression "(FILE *)0x0" ( (type_descriptor "FILE *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n    pcVar3 = "can\'t open `%s\' for writing";\n  }" { (expression_statement "pcVar3 = "can\'t open `%s\' for writing";" (assignment_expression "pcVar3 = "can\'t open `%s\' for writing"" identifier = (string_literal ""can\'t open `%s\' for writing"" " string_content escape_sequence string_content escape_sequence string_content ")) ;) }) (else_clause "else {\n    DAT_0008721c = 0;\n    FUN_00019d30();\n    for (iVar2 = DAT_00087220; iVar2 != 0; iVar2 = *(int *)(iVar2 + 4)) {\n      FUN_00019d30();\n    }\n    putc(10,__stream);\n    iVar2 = fclose(__stream);\n    if (iVar2 == 0) {\n      return;\n    }\n    pcVar3 = "can\'t close `%s\'";\n  }" else (compound_statement "{\n    DAT_0008721c = 0;\n    FUN_00019d30();\n    for (iVar2 = DAT_00087220; iVar2 != 0; iVar2 = *(int *)(iVar2 + 4)) {\n      FUN_00019d30();\n    }\n    putc(10,__stream);\n    iVar2 = fclose(__stream);\n    if (iVar2 == 0) {\n      return;\n    }\n    pcVar3 = "can\'t close `%s\'";\n  }" { (expression_statement "DAT_0008721c = 0;" (assignment_expression "DAT_0008721c = 0" identifier = number_literal) ;) (expression_statement "FUN_00019d30();" (call_expression "FUN_00019d30()" identifier (argument_list "()" ( ))) ;) (for_statement "for (iVar2 = DAT_00087220; iVar2 != 0; iVar2 = *(int *)(iVar2 + 4)) {\n      FUN_00019d30();\n    }" for ( (assignment_expression "iVar2 = DAT_00087220" identifier = identifier) ; (binary_expression "iVar2 != 0" identifier != number_literal) ; (assignment_expression "iVar2 = *(int *)(iVar2 + 4)" identifier = (pointer_expression "*(int *)(iVar2 + 4)" * (cast_expression "(int *)(iVar2 + 4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + 4)" ( (binary_expression "iVar2 + 4" identifier + number_literal) ))))) ) (compound_statement "{\n      FUN_00019d30();\n    }" { (expression_statement "FUN_00019d30();" (call_expression "FUN_00019d30()" identifier (argument_list "()" ( ))) ;) })) (expression_statement "putc(10,__stream);" (call_expression "putc(10,__stream)" identifier (argument_list "(10,__stream)" ( number_literal , identifier ))) ;) (expression_statement "iVar2 = fclose(__stream);" (assignment_expression "iVar2 = fclose(__stream)" identifier = (call_expression "fclose(__stream)" identifier (argument_list "(__stream)" ( identifier )))) ;) (if_statement "if (iVar2 == 0) {\n      return;\n    }" if (parenthesized_expression "(iVar2 == 0)" ( (binary_expression "iVar2 == 0" identifier == number_literal) )) (compound_statement "{\n      return;\n    }" { (return_statement "return;" return ;) })) (expression_statement "pcVar3 = "can\'t close `%s\'";" (assignment_expression "pcVar3 = "can\'t close `%s\'"" identifier = (string_literal ""can\'t close `%s\'"" " string_content escape_sequence string_content escape_sequence ")) ;) }))) (expression_statement "pcVar1 = DAT_00087224;" (assignment_expression "pcVar1 = DAT_00087224" identifier = identifier) ;) (expression_statement "uVar4 = dcgettext(0,pcVar3,5);" (assignment_expression "uVar4 = dcgettext(0,pcVar3,5)" identifier = (call_expression "dcgettext(0,pcVar3,5)" identifier (argument_list "(0,pcVar3,5)" ( number_literal , identifier , number_literal )))) ;) (expression_statement "FUN_00029470(uVar4,pcVar1);" (call_expression "FUN_00029470(uVar4,pcVar1)" identifier (argument_list "(uVar4,pcVar1)" ( identifier , identifier ))) ;) (return_statement "return;" return ;) })))
(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 ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) )) (compound_statement { (return_statement return ;) })) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT , (string_literal " string_content ") )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) )) (compound_statement { (expression_statement (assignment_expression IDENT = (string_literal " string_content escape_sequence string_content escape_sequence string_content ")) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (call_expression IDENT (argument_list ( ))) ;) (for_statement for ( (assignment_expression IDENT = IDENT) ; (binary_expression IDENT != LIT) ; (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ) (compound_statement { (expression_statement (call_expression IDENT (argument_list ( ))) ;) })) (expression_statement (call_expression IDENT (argument_list ( LIT , IDENT ))) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (return_statement return ;) })) (expression_statement (assignment_expression IDENT = (string_literal " string_content escape_sequence string_content escape_sequence ")) ;) }))) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( LIT , IDENT , LIT )))) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT , IDENT ))) ;) (return_statement return ;) })))
(function_definition "void FUN_00019ee0(void)\n\n{\n  char *pcVar1;\n  FILE *__stream;\n  int iVar2;\n  char *pcVar3;\n  undefined4 uVar4;\n  \n  if (DAT_00087224 == (char *)0x0) {\n    return;\n  }\n  __stream = fopen64(DAT_00087224,"w");\n  if (__stream == (FILE *)0x0) {\n    pcVar3 = "can\'t open `%s\' for writing";\n  }\n  else {\n    DAT_0008721c = 0;\n    FUN_00019d30();\n    for (iVar2 = DAT_00087220; iVar2 != 0; iVar2 = *(int *)(iVar2 + 4)) {\n      FUN_00019d30();\n    }\n    putc(10,__stream);\n    iVar2 = fclose(__stream);\n    if (iVar2 == 0) {\n      return;\n    }\n    pcVar3 = "can\'t close `%s\'";\n  }\n  pcVar1 = DAT_00087224;\n  uVar4 = dcgettext(0,pcVar3,5);\n  FUN_00029470(uVar4,pcVar1);\n  return;\n}" (primitive_type "void") (function_declarator "FUN_00019ee0(void)" (identifier "FUN_00019ee0") (parameter_list "(void)" (( "(") (parameter_declaration "void" (primitive_type "void")) () ")"))) (compound_statement "{\n  char *pcVar1;\n  FILE *__stream;\n  int iVar2;\n  char *pcVar3;\n  undefined4 uVar4;\n  \n  if (DAT_00087224 == (char *)0x0) {\n    return;\n  }\n  __stream = fopen64(DAT_00087224,"w");\n  if (__stream == (FILE *)0x0) {\n    pcVar3 = "can\'t open `%s\' for writing";\n  }\n  else {\n    DAT_0008721c = 0;\n    FUN_00019d30();\n    for (iVar2 = DAT_00087220; iVar2 != 0; iVar2 = *(int *)(iVar2 + 4)) {\n      FUN_00019d30();\n    }\n    putc(10,__stream);\n    iVar2 = fclose(__stream);\n    if (iVar2 == 0) {\n      return;\n    }\n    pcVar3 = "can\'t close `%s\'";\n  }\n  pcVar1 = DAT_00087224;\n  uVar4 = dcgettext(0,pcVar3,5);\n  FUN_00029470(uVar4,pcVar1);\n  return;\n}" ({ "{") (declaration "char *pcVar1;" (primitive_type "char") (pointer_declarator "*pcVar1" (* "*") (identifier "pcVar1")) (; ";")) (declaration "FILE *__stream;" (type_identifier "FILE") (pointer_declarator "*__stream" (* "*") (identifier "__stream")) (; ";")) (declaration "int iVar2;" (primitive_type "int") (identifier "iVar2") (; ";")) (declaration "char *pcVar3;" (primitive_type "char") (pointer_declarator "*pcVar3" (* "*") (identifier "pcVar3")) (; ";")) (declaration "undefined4 uVar4;" (type_identifier "undefined4") (identifier "uVar4") (; ";")) (if_statement "if (DAT_00087224 == (char *)0x0) {\n    return;\n  }" (if "if") (parenthesized_expression "(DAT_00087224 == (char *)0x0)" (( "(") (binary_expression "DAT_00087224 == (char *)0x0" (identifier "DAT_00087224") (== "==") (cast_expression "(char *)0x0" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n    return;\n  }" ({ "{") (return_statement "return;" (return "return") (; ";")) (} "}"))) (expression_statement "__stream = fopen64(DAT_00087224,"w");" (assignment_expression "__stream = fopen64(DAT_00087224,"w")" (identifier "__stream") (= "=") (call_expression "fopen64(DAT_00087224,"w")" (identifier "fopen64") (argument_list "(DAT_00087224,"w")" (( "(") (identifier "DAT_00087224") (, ",") (string_literal ""w"" (" """) (string_content "w") (" """)) () ")")))) (; ";")) (if_statement "if (__stream == (FILE *)0x0) {\n    pcVar3 = "can\'t open `%s\' for writing";\n  }\n  else {\n    DAT_0008721c = 0;\n    FUN_00019d30();\n    for (iVar2 = DAT_00087220; iVar2 != 0; iVar2 = *(int *)(iVar2 + 4)) {\n      FUN_00019d30();\n    }\n    putc(10,__stream);\n    iVar2 = fclose(__stream);\n    if (iVar2 == 0) {\n      return;\n    }\n    pcVar3 = "can\'t close `%s\'";\n  }" (if "if") (parenthesized_expression "(__stream == (FILE *)0x0)" (( "(") (binary_expression "__stream == (FILE *)0x0" (identifier "__stream") (== "==") (cast_expression "(FILE *)0x0" (( "(") (type_descriptor "FILE *" (type_identifier "FILE") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n    pcVar3 = "can\'t open `%s\' for writing";\n  }" ({ "{") (expression_statement "pcVar3 = "can\'t open `%s\' for writing";" (assignment_expression "pcVar3 = "can\'t open `%s\' for writing"" (identifier "pcVar3") (= "=") (string_literal ""can\'t open `%s\' for writing"" (" """) (string_content "can") (escape_sequence "\'") (string_content "t open `%s") (escape_sequence "\'") (string_content " for writing") (" """))) (; ";")) (} "}")) (else_clause "else {\n    DAT_0008721c = 0;\n    FUN_00019d30();\n    for (iVar2 = DAT_00087220; iVar2 != 0; iVar2 = *(int *)(iVar2 + 4)) {\n      FUN_00019d30();\n    }\n    putc(10,__stream);\n    iVar2 = fclose(__stream);\n    if (iVar2 == 0) {\n      return;\n    }\n    pcVar3 = "can\'t close `%s\'";\n  }" (else "else") (compound_statement "{\n    DAT_0008721c = 0;\n    FUN_00019d30();\n    for (iVar2 = DAT_00087220; iVar2 != 0; iVar2 = *(int *)(iVar2 + 4)) {\n      FUN_00019d30();\n    }\n    putc(10,__stream);\n    iVar2 = fclose(__stream);\n    if (iVar2 == 0) {\n      return;\n    }\n    pcVar3 = "can\'t close `%s\'";\n  }" ({ "{") (expression_statement "DAT_0008721c = 0;" (assignment_expression "DAT_0008721c = 0" (identifier "DAT_0008721c") (= "=") (number_literal "0")) (; ";")) (expression_statement "FUN_00019d30();" (call_expression "FUN_00019d30()" (identifier "FUN_00019d30") (argument_list "()" (( "(") () ")"))) (; ";")) (for_statement "for (iVar2 = DAT_00087220; iVar2 != 0; iVar2 = *(int *)(iVar2 + 4)) {\n      FUN_00019d30();\n    }" (for "for") (( "(") (assignment_expression "iVar2 = DAT_00087220" (identifier "iVar2") (= "=") (identifier "DAT_00087220")) (; ";") (binary_expression "iVar2 != 0" (identifier "iVar2") (!= "!=") (number_literal "0")) (; ";") (assignment_expression "iVar2 = *(int *)(iVar2 + 4)" (identifier "iVar2") (= "=") (pointer_expression "*(int *)(iVar2 + 4)" (* "*") (cast_expression "(int *)(iVar2 + 4)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar2 + 4)" (( "(") (binary_expression "iVar2 + 4" (identifier "iVar2") (+ "+") (number_literal "4")) () ")"))))) () ")") (compound_statement "{\n      FUN_00019d30();\n    }" ({ "{") (expression_statement "FUN_00019d30();" (call_expression "FUN_00019d30()" (identifier "FUN_00019d30") (argument_list "()" (( "(") () ")"))) (; ";")) (} "}"))) (expression_statement "putc(10,__stream);" (call_expression "putc(10,__stream)" (identifier "putc") (argument_list "(10,__stream)" (( "(") (number_literal "10") (, ",") (identifier "__stream") () ")"))) (; ";")) (expression_statement "iVar2 = fclose(__stream);" (assignment_expression "iVar2 = fclose(__stream)" (identifier "iVar2") (= "=") (call_expression "fclose(__stream)" (identifier "fclose") (argument_list "(__stream)" (( "(") (identifier "__stream") () ")")))) (; ";")) (if_statement "if (iVar2 == 0) {\n      return;\n    }" (if "if") (parenthesized_expression "(iVar2 == 0)" (( "(") (binary_expression "iVar2 == 0" (identifier "iVar2") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n      return;\n    }" ({ "{") (return_statement "return;" (return "return") (; ";")) (} "}"))) (expression_statement "pcVar3 = "can\'t close `%s\'";" (assignment_expression "pcVar3 = "can\'t close `%s\'"" (identifier "pcVar3") (= "=") (string_literal ""can\'t close `%s\'"" (" """) (string_content "can") (escape_sequence "\'") (string_content "t close `%s") (escape_sequence "\'") (" """))) (; ";")) (} "}")))) (expression_statement "pcVar1 = DAT_00087224;" (assignment_expression "pcVar1 = DAT_00087224" (identifier "pcVar1") (= "=") (identifier "DAT_00087224")) (; ";")) (expression_statement "uVar4 = dcgettext(0,pcVar3,5);" (assignment_expression "uVar4 = dcgettext(0,pcVar3,5)" (identifier "uVar4") (= "=") (call_expression "dcgettext(0,pcVar3,5)" (identifier "dcgettext") (argument_list "(0,pcVar3,5)" (( "(") (number_literal "0") (, ",") (identifier "pcVar3") (, ",") (number_literal "5") () ")")))) (; ";")) (expression_statement "FUN_00029470(uVar4,pcVar1);" (call_expression "FUN_00029470(uVar4,pcVar1)" (identifier "FUN_00029470") (argument_list "(uVar4,pcVar1)" (( "(") (identifier "uVar4") (, ",") (identifier "pcVar1") () ")"))) (; ";")) (return_statement "return;" (return "return") (; ";")) (} "}")))

/* 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 *var_5;
  char *pcVar2;
  type_2 *var_3;
  int var_8;
  char *pcVar4;
  
  if (var_1 == (char *)0x0) {
    return;
  }
  var_3 = var_2(var_1,"w");
  if (var_3 == (type_2 *)0x0) {
    pcVar4 = "can\'t open `%s\' for writing";
  }
  else {
    column = 0;
    var_4((type_2 *)var_3,out_file_name,0x3a);
    for (var_5 = dep_chain; var_5 != (type_1 *)0x0; var_5 = var_5->next) {
      var_4((type_2 *)var_3,var_5->file,0x20);
    }
    var_6(10,var_3);
    var_8 = var_7(var_3);
    if (var_8 == 0) {
      return;
    }
    pcVar4 = "can\'t close `%s\'";
  }
  pcVar2 = var_1;
  pcVar4 = (char *)var_9(0,pcVar4,5);
  var_10(pcVar4,pcVar2);
  return;
}


(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: (primitive_type) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (primitive_type) declarator: (identifier)) (declaration type: (primitive_type) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (type_identifier) declarator: (identifier)) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (number_literal)))) consequence: (compound_statement (return_statement))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (identifier) (string_literal (string_content)))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (number_literal)))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (string_literal (string_content) (escape_sequence) (string_content) (escape_sequence) (string_content))))) alternative: (else_clause (compound_statement (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (expression_statement (call_expression function: (identifier) arguments: (argument_list))) (for_statement initializer: (assignment_expression left: (identifier) right: (identifier)) condition: (binary_expression left: (identifier) right: (number_literal)) update: (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal)))))) body: (compound_statement (expression_statement (call_expression function: (identifier) arguments: (argument_list))))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (number_literal) (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (identifier))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (return_statement))) (expression_statement (assignment_expression left: (identifier) right: (string_literal (string_content) (escape_sequence) (string_content) (escape_sequence))))))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (number_literal) (identifier) (number_literal))))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (identifier) (identifier)))) (return_statement))))

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

void MASKED(void)

{
  char *pcVar1;
  FILE *__stream;
  int iVar2;
  char *pcVar3;
  undefined4 uVar4;
  
  if (DAT_00087224 == (char *)0x0) {
    return;
  }
  __stream = fopen64(DAT_00087224,"w");
  if (__stream == (FILE *)0x0) {
    pcVar3 = "can\'t open `%s\' for writing";
  }
  else {
    DAT_0008721c = 0;
    FUN_00019d30();
    for (iVar2 = DAT_00087220; iVar2 != 0; iVar2 = *(int *)(iVar2 + 4)) {
      FUN_00019d30();
    }
    putc(10,__stream);
    iVar2 = fclose(__stream);
    if (iVar2 == 0) {
      return;
    }
    pcVar3 = "can\'t close `%s\'";
  }
  pcVar1 = DAT_00087224;
  uVar4 = dcgettext(0,pcVar3,5);
  FUN_00029470(uVar4,pcVar1);
  return;
}

