
void print_filename(char *file,_Bool escape)

{
  byte bVar1;
  _IO_FILE *p_Var2;
  byte *pbVar3;
  
  if (escape) {
    bVar1 = *file;
    while (bVar1 != 0) {
      if (bVar1 == 10) {
        fwrite_unlocked(&DAT_0010a004,1,2,*(FILE **)PTR_stdout_0010dfa0);
      }
      else if (bVar1 == 0x5c) {
        fwrite_unlocked(&DAT_0010a007,1,2,*(FILE **)PTR_stdout_0010dfa0);
      }
      else {
        p_Var2 = *(_IO_FILE **)PTR_stdout_0010dfa0;
        pbVar3 = (byte *)p_Var2->_IO_write_ptr;
        if (pbVar3 < p_Var2->_IO_write_end) {
          p_Var2->_IO_write_ptr = (char *)(pbVar3 + 1);
          *pbVar3 = bVar1;
        }
        else {
          __overflow(p_Var2,(uint)bVar1);
        }
      }
      file = (char *)((byte *)file + 1);
      bVar1 = *file;
    }
  }
  else {
    fputs_unlocked(file,*(FILE **)PTR_stdout_0010dfa0);
  }
  return;
}



void FUN_001026f3(byte *param_1,char param_2)

{
  byte bVar1;
  _IO_FILE *p_Var2;
  byte *pbVar3;
  
  if (param_2 == '\0') {
    fputs_unlocked((char *)param_1,*(FILE **)PTR_stdout_0010dfa0);
  }
  else {
    bVar1 = *param_1;
    while (bVar1 != 0) {
      if (bVar1 == 10) {
        fwrite_unlocked(&DAT_0010a004,1,2,*(FILE **)PTR_stdout_0010dfa0);
      }
      else if (bVar1 == 0x5c) {
        fwrite_unlocked(&DAT_0010a007,1,2,*(FILE **)PTR_stdout_0010dfa0);
      }
      else {
        p_Var2 = *(_IO_FILE **)PTR_stdout_0010dfa0;
        pbVar3 = (byte *)p_Var2->_IO_write_ptr;
        if (pbVar3 < p_Var2->_IO_write_end) {
          p_Var2->_IO_write_ptr = (char *)(pbVar3 + 1);
          *pbVar3 = bVar1;
        }
        else {
          __overflow(p_Var2,(uint)bVar1);
        }
      }
      param_1 = param_1 + 1;
      bVar1 = *param_1;
    }
  }
  return;
}


PUSH RBP
PUSH RBX
SUB RSP,0x8
MOV RBX,RDI
TEST SIL,SIL
JZ 0x00102712
MOVZX ESI,byte ptr [RDI]
LEA RBP,[0x10a004]
TEST SIL,SIL
JNZ 0x00102750
JMP 0x00102721
MOV RAX,qword ptr [0x0010dfa0]
MOV RSI,qword ptr [RAX]
CALL 0x001021b0
ADD RSP,0x8
POP RBX
POP RBP
RET
MOV RAX,qword ptr [0x0010dfa0]
MOV RCX,qword ptr [RAX]
MOV EDX,0x2
MOV ESI,0x1
MOV RDI,RBP
CALL 0x00102250
ADD RBX,0x1
MOVZX ESI,byte ptr [RBX]
TEST SIL,SIL
JZ 0x00102721
CMP SIL,0xa
JZ 0x00102728
CMP SIL,0x5c
JZ 0x0010277d
MOV RAX,qword ptr [0x0010dfa0]
MOV RDI,qword ptr [RAX]
MOV RAX,qword ptr [RDI + 0x28]
CMP RAX,qword ptr [RDI + 0x30]
JNC 0x0010279f
LEA RDX,[RAX + 0x1]
MOV qword ptr [RDI + 0x28],RDX
MOV byte ptr [RAX],SIL
JMP 0x00102744
MOV RAX,qword ptr [0x0010dfa0]
MOV RCX,qword ptr [RAX]
MOV EDX,0x2
MOV ESI,0x1
LEA RDI,[0x10a007]
CALL 0x00102250
JMP 0x00102744
MOVZX ESI,SIL
CALL 0x00102140
JMP 0x00102744
(translation_unit "void FUN_001026f3(byte *param_1,char param_2)\n\n{\n  byte bVar1;\n  _IO_FILE *p_Var2;\n  byte *pbVar3;\n  \n  if (param_2 == '\0') {\n    fputs_unlocked((char *)param_1,*(FILE **)PTR_stdout_0010dfa0);\n  }\n  else {\n    bVar1 = *param_1;\n    while (bVar1 != 0) {\n      if (bVar1 == 10) {\n        fwrite_unlocked(&DAT_0010a004,1,2,*(FILE **)PTR_stdout_0010dfa0);\n      }\n      else if (bVar1 == 0x5c) {\n        fwrite_unlocked(&DAT_0010a007,1,2,*(FILE **)PTR_stdout_0010dfa0);\n      }\n      else {\n        p_Var2 = *(_IO_FILE **)PTR_stdout_0010dfa0;\n        pbVar3 = (byte *)p_Var2->_IO_write_ptr;\n        if (pbVar3 < p_Var2->_IO_write_end) {\n          p_Var2->_IO_write_ptr = (char *)(pbVar3 + 1);\n          *pbVar3 = bVar1;\n        }\n        else {\n          __overflow(p_Var2,(uint)bVar1);\n        }\n      }\n      param_1 = param_1 + 1;\n      bVar1 = *param_1;\n    }\n  }\n  return;\n}\n\n" (function_definition "void FUN_001026f3(byte *param_1,char param_2)\n\n{\n  byte bVar1;\n  _IO_FILE *p_Var2;\n  byte *pbVar3;\n  \n  if (param_2 == '\0') {\n    fputs_unlocked((char *)param_1,*(FILE **)PTR_stdout_0010dfa0);\n  }\n  else {\n    bVar1 = *param_1;\n    while (bVar1 != 0) {\n      if (bVar1 == 10) {\n        fwrite_unlocked(&DAT_0010a004,1,2,*(FILE **)PTR_stdout_0010dfa0);\n      }\n      else if (bVar1 == 0x5c) {\n        fwrite_unlocked(&DAT_0010a007,1,2,*(FILE **)PTR_stdout_0010dfa0);\n      }\n      else {\n        p_Var2 = *(_IO_FILE **)PTR_stdout_0010dfa0;\n        pbVar3 = (byte *)p_Var2->_IO_write_ptr;\n        if (pbVar3 < p_Var2->_IO_write_end) {\n          p_Var2->_IO_write_ptr = (char *)(pbVar3 + 1);\n          *pbVar3 = bVar1;\n        }\n        else {\n          __overflow(p_Var2,(uint)bVar1);\n        }\n      }\n      param_1 = param_1 + 1;\n      bVar1 = *param_1;\n    }\n  }\n  return;\n}" primitive_type (function_declarator "FUN_001026f3(byte *param_1,char param_2)" identifier (parameter_list "(byte *param_1,char param_2)" ( (parameter_declaration "byte *param_1" type_identifier (pointer_declarator "*param_1" * identifier)) , (parameter_declaration "char param_2" primitive_type identifier) ))) (compound_statement "{\n  byte bVar1;\n  _IO_FILE *p_Var2;\n  byte *pbVar3;\n  \n  if (param_2 == '\0') {\n    fputs_unlocked((char *)param_1,*(FILE **)PTR_stdout_0010dfa0);\n  }\n  else {\n    bVar1 = *param_1;\n    while (bVar1 != 0) {\n      if (bVar1 == 10) {\n        fwrite_unlocked(&DAT_0010a004,1,2,*(FILE **)PTR_stdout_0010dfa0);\n      }\n      else if (bVar1 == 0x5c) {\n        fwrite_unlocked(&DAT_0010a007,1,2,*(FILE **)PTR_stdout_0010dfa0);\n      }\n      else {\n        p_Var2 = *(_IO_FILE **)PTR_stdout_0010dfa0;\n        pbVar3 = (byte *)p_Var2->_IO_write_ptr;\n        if (pbVar3 < p_Var2->_IO_write_end) {\n          p_Var2->_IO_write_ptr = (char *)(pbVar3 + 1);\n          *pbVar3 = bVar1;\n        }\n        else {\n          __overflow(p_Var2,(uint)bVar1);\n        }\n      }\n      param_1 = param_1 + 1;\n      bVar1 = *param_1;\n    }\n  }\n  return;\n}" { (declaration "byte bVar1;" type_identifier identifier ;) (declaration "_IO_FILE *p_Var2;" type_identifier (pointer_declarator "*p_Var2" * identifier) ;) (declaration "byte *pbVar3;" type_identifier (pointer_declarator "*pbVar3" * identifier) ;) (if_statement "if (param_2 == '\0') {\n    fputs_unlocked((char *)param_1,*(FILE **)PTR_stdout_0010dfa0);\n  }\n  else {\n    bVar1 = *param_1;\n    while (bVar1 != 0) {\n      if (bVar1 == 10) {\n        fwrite_unlocked(&DAT_0010a004,1,2,*(FILE **)PTR_stdout_0010dfa0);\n      }\n      else if (bVar1 == 0x5c) {\n        fwrite_unlocked(&DAT_0010a007,1,2,*(FILE **)PTR_stdout_0010dfa0);\n      }\n      else {\n        p_Var2 = *(_IO_FILE **)PTR_stdout_0010dfa0;\n        pbVar3 = (byte *)p_Var2->_IO_write_ptr;\n        if (pbVar3 < p_Var2->_IO_write_end) {\n          p_Var2->_IO_write_ptr = (char *)(pbVar3 + 1);\n          *pbVar3 = bVar1;\n        }\n        else {\n          __overflow(p_Var2,(uint)bVar1);\n        }\n      }\n      param_1 = param_1 + 1;\n      bVar1 = *param_1;\n    }\n  }" if (parenthesized_expression "(param_2 == '\0')" ( (binary_expression "param_2 == '\0'" identifier == (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n    fputs_unlocked((char *)param_1,*(FILE **)PTR_stdout_0010dfa0);\n  }" { (expression_statement "fputs_unlocked((char *)param_1,*(FILE **)PTR_stdout_0010dfa0);" (call_expression "fputs_unlocked((char *)param_1,*(FILE **)PTR_stdout_0010dfa0)" identifier (argument_list "((char *)param_1,*(FILE **)PTR_stdout_0010dfa0)" ( (cast_expression "(char *)param_1" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier) , (pointer_expression "*(FILE **)PTR_stdout_0010dfa0" * (cast_expression "(FILE **)PTR_stdout_0010dfa0" ( (type_descriptor "FILE **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) identifier)) ))) ;) }) (else_clause "else {\n    bVar1 = *param_1;\n    while (bVar1 != 0) {\n      if (bVar1 == 10) {\n        fwrite_unlocked(&DAT_0010a004,1,2,*(FILE **)PTR_stdout_0010dfa0);\n      }\n      else if (bVar1 == 0x5c) {\n        fwrite_unlocked(&DAT_0010a007,1,2,*(FILE **)PTR_stdout_0010dfa0);\n      }\n      else {\n        p_Var2 = *(_IO_FILE **)PTR_stdout_0010dfa0;\n        pbVar3 = (byte *)p_Var2->_IO_write_ptr;\n        if (pbVar3 < p_Var2->_IO_write_end) {\n          p_Var2->_IO_write_ptr = (char *)(pbVar3 + 1);\n          *pbVar3 = bVar1;\n        }\n        else {\n          __overflow(p_Var2,(uint)bVar1);\n        }\n      }\n      param_1 = param_1 + 1;\n      bVar1 = *param_1;\n    }\n  }" else (compound_statement "{\n    bVar1 = *param_1;\n    while (bVar1 != 0) {\n      if (bVar1 == 10) {\n        fwrite_unlocked(&DAT_0010a004,1,2,*(FILE **)PTR_stdout_0010dfa0);\n      }\n      else if (bVar1 == 0x5c) {\n        fwrite_unlocked(&DAT_0010a007,1,2,*(FILE **)PTR_stdout_0010dfa0);\n      }\n      else {\n        p_Var2 = *(_IO_FILE **)PTR_stdout_0010dfa0;\n        pbVar3 = (byte *)p_Var2->_IO_write_ptr;\n        if (pbVar3 < p_Var2->_IO_write_end) {\n          p_Var2->_IO_write_ptr = (char *)(pbVar3 + 1);\n          *pbVar3 = bVar1;\n        }\n        else {\n          __overflow(p_Var2,(uint)bVar1);\n        }\n      }\n      param_1 = param_1 + 1;\n      bVar1 = *param_1;\n    }\n  }" { (expression_statement "bVar1 = *param_1;" (assignment_expression "bVar1 = *param_1" identifier = (pointer_expression "*param_1" * identifier)) ;) (while_statement "while (bVar1 != 0) {\n      if (bVar1 == 10) {\n        fwrite_unlocked(&DAT_0010a004,1,2,*(FILE **)PTR_stdout_0010dfa0);\n      }\n      else if (bVar1 == 0x5c) {\n        fwrite_unlocked(&DAT_0010a007,1,2,*(FILE **)PTR_stdout_0010dfa0);\n      }\n      else {\n        p_Var2 = *(_IO_FILE **)PTR_stdout_0010dfa0;\n        pbVar3 = (byte *)p_Var2->_IO_write_ptr;\n        if (pbVar3 < p_Var2->_IO_write_end) {\n          p_Var2->_IO_write_ptr = (char *)(pbVar3 + 1);\n          *pbVar3 = bVar1;\n        }\n        else {\n          __overflow(p_Var2,(uint)bVar1);\n        }\n      }\n      param_1 = param_1 + 1;\n      bVar1 = *param_1;\n    }" while (parenthesized_expression "(bVar1 != 0)" ( (binary_expression "bVar1 != 0" identifier != number_literal) )) (compound_statement "{\n      if (bVar1 == 10) {\n        fwrite_unlocked(&DAT_0010a004,1,2,*(FILE **)PTR_stdout_0010dfa0);\n      }\n      else if (bVar1 == 0x5c) {\n        fwrite_unlocked(&DAT_0010a007,1,2,*(FILE **)PTR_stdout_0010dfa0);\n      }\n      else {\n        p_Var2 = *(_IO_FILE **)PTR_stdout_0010dfa0;\n        pbVar3 = (byte *)p_Var2->_IO_write_ptr;\n        if (pbVar3 < p_Var2->_IO_write_end) {\n          p_Var2->_IO_write_ptr = (char *)(pbVar3 + 1);\n          *pbVar3 = bVar1;\n        }\n        else {\n          __overflow(p_Var2,(uint)bVar1);\n        }\n      }\n      param_1 = param_1 + 1;\n      bVar1 = *param_1;\n    }" { (if_statement "if (bVar1 == 10) {\n        fwrite_unlocked(&DAT_0010a004,1,2,*(FILE **)PTR_stdout_0010dfa0);\n      }\n      else if (bVar1 == 0x5c) {\n        fwrite_unlocked(&DAT_0010a007,1,2,*(FILE **)PTR_stdout_0010dfa0);\n      }\n      else {\n        p_Var2 = *(_IO_FILE **)PTR_stdout_0010dfa0;\n        pbVar3 = (byte *)p_Var2->_IO_write_ptr;\n        if (pbVar3 < p_Var2->_IO_write_end) {\n          p_Var2->_IO_write_ptr = (char *)(pbVar3 + 1);\n          *pbVar3 = bVar1;\n        }\n        else {\n          __overflow(p_Var2,(uint)bVar1);\n        }\n      }" if (parenthesized_expression "(bVar1 == 10)" ( (binary_expression "bVar1 == 10" identifier == number_literal) )) (compound_statement "{\n        fwrite_unlocked(&DAT_0010a004,1,2,*(FILE **)PTR_stdout_0010dfa0);\n      }" { (expression_statement "fwrite_unlocked(&DAT_0010a004,1,2,*(FILE **)PTR_stdout_0010dfa0);" (call_expression "fwrite_unlocked(&DAT_0010a004,1,2,*(FILE **)PTR_stdout_0010dfa0)" identifier (argument_list "(&DAT_0010a004,1,2,*(FILE **)PTR_stdout_0010dfa0)" ( (pointer_expression "&DAT_0010a004" & identifier) , number_literal , number_literal , (pointer_expression "*(FILE **)PTR_stdout_0010dfa0" * (cast_expression "(FILE **)PTR_stdout_0010dfa0" ( (type_descriptor "FILE **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) identifier)) ))) ;) }) (else_clause "else if (bVar1 == 0x5c) {\n        fwrite_unlocked(&DAT_0010a007,1,2,*(FILE **)PTR_stdout_0010dfa0);\n      }\n      else {\n        p_Var2 = *(_IO_FILE **)PTR_stdout_0010dfa0;\n        pbVar3 = (byte *)p_Var2->_IO_write_ptr;\n        if (pbVar3 < p_Var2->_IO_write_end) {\n          p_Var2->_IO_write_ptr = (char *)(pbVar3 + 1);\n          *pbVar3 = bVar1;\n        }\n        else {\n          __overflow(p_Var2,(uint)bVar1);\n        }\n      }" else (if_statement "if (bVar1 == 0x5c) {\n        fwrite_unlocked(&DAT_0010a007,1,2,*(FILE **)PTR_stdout_0010dfa0);\n      }\n      else {\n        p_Var2 = *(_IO_FILE **)PTR_stdout_0010dfa0;\n        pbVar3 = (byte *)p_Var2->_IO_write_ptr;\n        if (pbVar3 < p_Var2->_IO_write_end) {\n          p_Var2->_IO_write_ptr = (char *)(pbVar3 + 1);\n          *pbVar3 = bVar1;\n        }\n        else {\n          __overflow(p_Var2,(uint)bVar1);\n        }\n      }" if (parenthesized_expression "(bVar1 == 0x5c)" ( (binary_expression "bVar1 == 0x5c" identifier == number_literal) )) (compound_statement "{\n        fwrite_unlocked(&DAT_0010a007,1,2,*(FILE **)PTR_stdout_0010dfa0);\n      }" { (expression_statement "fwrite_unlocked(&DAT_0010a007,1,2,*(FILE **)PTR_stdout_0010dfa0);" (call_expression "fwrite_unlocked(&DAT_0010a007,1,2,*(FILE **)PTR_stdout_0010dfa0)" identifier (argument_list "(&DAT_0010a007,1,2,*(FILE **)PTR_stdout_0010dfa0)" ( (pointer_expression "&DAT_0010a007" & identifier) , number_literal , number_literal , (pointer_expression "*(FILE **)PTR_stdout_0010dfa0" * (cast_expression "(FILE **)PTR_stdout_0010dfa0" ( (type_descriptor "FILE **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) identifier)) ))) ;) }) (else_clause "else {\n        p_Var2 = *(_IO_FILE **)PTR_stdout_0010dfa0;\n        pbVar3 = (byte *)p_Var2->_IO_write_ptr;\n        if (pbVar3 < p_Var2->_IO_write_end) {\n          p_Var2->_IO_write_ptr = (char *)(pbVar3 + 1);\n          *pbVar3 = bVar1;\n        }\n        else {\n          __overflow(p_Var2,(uint)bVar1);\n        }\n      }" else (compound_statement "{\n        p_Var2 = *(_IO_FILE **)PTR_stdout_0010dfa0;\n        pbVar3 = (byte *)p_Var2->_IO_write_ptr;\n        if (pbVar3 < p_Var2->_IO_write_end) {\n          p_Var2->_IO_write_ptr = (char *)(pbVar3 + 1);\n          *pbVar3 = bVar1;\n        }\n        else {\n          __overflow(p_Var2,(uint)bVar1);\n        }\n      }" { (expression_statement "p_Var2 = *(_IO_FILE **)PTR_stdout_0010dfa0;" (assignment_expression "p_Var2 = *(_IO_FILE **)PTR_stdout_0010dfa0" identifier = (pointer_expression "*(_IO_FILE **)PTR_stdout_0010dfa0" * (cast_expression "(_IO_FILE **)PTR_stdout_0010dfa0" ( (type_descriptor "_IO_FILE **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) identifier))) ;) (expression_statement "pbVar3 = (byte *)p_Var2->_IO_write_ptr;" (assignment_expression "pbVar3 = (byte *)p_Var2->_IO_write_ptr" identifier = (cast_expression "(byte *)p_Var2->_IO_write_ptr" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (field_expression "p_Var2->_IO_write_ptr" identifier -> field_identifier))) ;) (if_statement "if (pbVar3 < p_Var2->_IO_write_end) {\n          p_Var2->_IO_write_ptr = (char *)(pbVar3 + 1);\n          *pbVar3 = bVar1;\n        }\n        else {\n          __overflow(p_Var2,(uint)bVar1);\n        }" if (parenthesized_expression "(pbVar3 < p_Var2->_IO_write_end)" ( (binary_expression "pbVar3 < p_Var2->_IO_write_end" identifier < (field_expression "p_Var2->_IO_write_end" identifier -> field_identifier)) )) (compound_statement "{\n          p_Var2->_IO_write_ptr = (char *)(pbVar3 + 1);\n          *pbVar3 = bVar1;\n        }" { (expression_statement "p_Var2->_IO_write_ptr = (char *)(pbVar3 + 1);" (assignment_expression "p_Var2->_IO_write_ptr = (char *)(pbVar3 + 1)" (field_expression "p_Var2->_IO_write_ptr" identifier -> field_identifier) = (cast_expression "(char *)(pbVar3 + 1)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pbVar3 + 1)" ( (binary_expression "pbVar3 + 1" identifier + number_literal) )))) ;) (expression_statement "*pbVar3 = bVar1;" (assignment_expression "*pbVar3 = bVar1" (pointer_expression "*pbVar3" * identifier) = identifier) ;) }) (else_clause "else {\n          __overflow(p_Var2,(uint)bVar1);\n        }" else (compound_statement "{\n          __overflow(p_Var2,(uint)bVar1);\n        }" { (expression_statement "__overflow(p_Var2,(uint)bVar1);" (call_expression "__overflow(p_Var2,(uint)bVar1)" identifier (argument_list "(p_Var2,(uint)bVar1)" ( identifier , (cast_expression "(uint)bVar1" ( (type_descriptor "uint" type_identifier) ) identifier) ))) ;) }))) }))))) (expression_statement "param_1 = param_1 + 1;" (assignment_expression "param_1 = param_1 + 1" identifier = (binary_expression "param_1 + 1" identifier + number_literal)) ;) (expression_statement "bVar1 = *param_1;" (assignment_expression "bVar1 = *param_1" identifier = (pointer_expression "*param_1" * identifier)) ;) })) }))) (return_statement "return;" return ;) })))
(translation_unit "void print_filename(char *file,_Bool escape)\n\n{\n  byte bVar1;\n  _IO_FILE *p_Var2;\n  byte *pbVar3;\n  \n  if (escape) {\n    bVar1 = *file;\n    while (bVar1 != 0) {\n      if (bVar1 == 10) {\n        fwrite_unlocked(&DAT_0010a004,1,2,*(FILE **)PTR_stdout_0010dfa0);\n      }\n      else if (bVar1 == 0x5c) {\n        fwrite_unlocked(&DAT_0010a007,1,2,*(FILE **)PTR_stdout_0010dfa0);\n      }\n      else {\n        p_Var2 = *(_IO_FILE **)PTR_stdout_0010dfa0;\n        pbVar3 = (byte *)p_Var2->_IO_write_ptr;\n        if (pbVar3 < p_Var2->_IO_write_end) {\n          p_Var2->_IO_write_ptr = (char *)(pbVar3 + 1);\n          *pbVar3 = bVar1;\n        }\n        else {\n          __overflow(p_Var2,(uint)bVar1);\n        }\n      }\n      file = (char *)((byte *)file + 1);\n      bVar1 = *file;\n    }\n  }\n  else {\n    fputs_unlocked(file,*(FILE **)PTR_stdout_0010dfa0);\n  }\n  return;\n}\n\n" (function_definition "void print_filename(char *file,_Bool escape)\n\n{\n  byte bVar1;\n  _IO_FILE *p_Var2;\n  byte *pbVar3;\n  \n  if (escape) {\n    bVar1 = *file;\n    while (bVar1 != 0) {\n      if (bVar1 == 10) {\n        fwrite_unlocked(&DAT_0010a004,1,2,*(FILE **)PTR_stdout_0010dfa0);\n      }\n      else if (bVar1 == 0x5c) {\n        fwrite_unlocked(&DAT_0010a007,1,2,*(FILE **)PTR_stdout_0010dfa0);\n      }\n      else {\n        p_Var2 = *(_IO_FILE **)PTR_stdout_0010dfa0;\n        pbVar3 = (byte *)p_Var2->_IO_write_ptr;\n        if (pbVar3 < p_Var2->_IO_write_end) {\n          p_Var2->_IO_write_ptr = (char *)(pbVar3 + 1);\n          *pbVar3 = bVar1;\n        }\n        else {\n          __overflow(p_Var2,(uint)bVar1);\n        }\n      }\n      file = (char *)((byte *)file + 1);\n      bVar1 = *file;\n    }\n  }\n  else {\n    fputs_unlocked(file,*(FILE **)PTR_stdout_0010dfa0);\n  }\n  return;\n}" primitive_type (function_declarator "print_filename(char *file,_Bool escape)" identifier (parameter_list "(char *file,_Bool escape)" ( (parameter_declaration "char *file" primitive_type (pointer_declarator "*file" * identifier)) , (parameter_declaration "_Bool escape" type_identifier identifier) ))) (compound_statement "{\n  byte bVar1;\n  _IO_FILE *p_Var2;\n  byte *pbVar3;\n  \n  if (escape) {\n    bVar1 = *file;\n    while (bVar1 != 0) {\n      if (bVar1 == 10) {\n        fwrite_unlocked(&DAT_0010a004,1,2,*(FILE **)PTR_stdout_0010dfa0);\n      }\n      else if (bVar1 == 0x5c) {\n        fwrite_unlocked(&DAT_0010a007,1,2,*(FILE **)PTR_stdout_0010dfa0);\n      }\n      else {\n        p_Var2 = *(_IO_FILE **)PTR_stdout_0010dfa0;\n        pbVar3 = (byte *)p_Var2->_IO_write_ptr;\n        if (pbVar3 < p_Var2->_IO_write_end) {\n          p_Var2->_IO_write_ptr = (char *)(pbVar3 + 1);\n          *pbVar3 = bVar1;\n        }\n        else {\n          __overflow(p_Var2,(uint)bVar1);\n        }\n      }\n      file = (char *)((byte *)file + 1);\n      bVar1 = *file;\n    }\n  }\n  else {\n    fputs_unlocked(file,*(FILE **)PTR_stdout_0010dfa0);\n  }\n  return;\n}" { (declaration "byte bVar1;" type_identifier identifier ;) (declaration "_IO_FILE *p_Var2;" type_identifier (pointer_declarator "*p_Var2" * identifier) ;) (declaration "byte *pbVar3;" type_identifier (pointer_declarator "*pbVar3" * identifier) ;) (if_statement "if (escape) {\n    bVar1 = *file;\n    while (bVar1 != 0) {\n      if (bVar1 == 10) {\n        fwrite_unlocked(&DAT_0010a004,1,2,*(FILE **)PTR_stdout_0010dfa0);\n      }\n      else if (bVar1 == 0x5c) {\n        fwrite_unlocked(&DAT_0010a007,1,2,*(FILE **)PTR_stdout_0010dfa0);\n      }\n      else {\n        p_Var2 = *(_IO_FILE **)PTR_stdout_0010dfa0;\n        pbVar3 = (byte *)p_Var2->_IO_write_ptr;\n        if (pbVar3 < p_Var2->_IO_write_end) {\n          p_Var2->_IO_write_ptr = (char *)(pbVar3 + 1);\n          *pbVar3 = bVar1;\n        }\n        else {\n          __overflow(p_Var2,(uint)bVar1);\n        }\n      }\n      file = (char *)((byte *)file + 1);\n      bVar1 = *file;\n    }\n  }\n  else {\n    fputs_unlocked(file,*(FILE **)PTR_stdout_0010dfa0);\n  }" if (parenthesized_expression "(escape)" ( identifier )) (compound_statement "{\n    bVar1 = *file;\n    while (bVar1 != 0) {\n      if (bVar1 == 10) {\n        fwrite_unlocked(&DAT_0010a004,1,2,*(FILE **)PTR_stdout_0010dfa0);\n      }\n      else if (bVar1 == 0x5c) {\n        fwrite_unlocked(&DAT_0010a007,1,2,*(FILE **)PTR_stdout_0010dfa0);\n      }\n      else {\n        p_Var2 = *(_IO_FILE **)PTR_stdout_0010dfa0;\n        pbVar3 = (byte *)p_Var2->_IO_write_ptr;\n        if (pbVar3 < p_Var2->_IO_write_end) {\n          p_Var2->_IO_write_ptr = (char *)(pbVar3 + 1);\n          *pbVar3 = bVar1;\n        }\n        else {\n          __overflow(p_Var2,(uint)bVar1);\n        }\n      }\n      file = (char *)((byte *)file + 1);\n      bVar1 = *file;\n    }\n  }" { (expression_statement "bVar1 = *file;" (assignment_expression "bVar1 = *file" identifier = (pointer_expression "*file" * identifier)) ;) (while_statement "while (bVar1 != 0) {\n      if (bVar1 == 10) {\n        fwrite_unlocked(&DAT_0010a004,1,2,*(FILE **)PTR_stdout_0010dfa0);\n      }\n      else if (bVar1 == 0x5c) {\n        fwrite_unlocked(&DAT_0010a007,1,2,*(FILE **)PTR_stdout_0010dfa0);\n      }\n      else {\n        p_Var2 = *(_IO_FILE **)PTR_stdout_0010dfa0;\n        pbVar3 = (byte *)p_Var2->_IO_write_ptr;\n        if (pbVar3 < p_Var2->_IO_write_end) {\n          p_Var2->_IO_write_ptr = (char *)(pbVar3 + 1);\n          *pbVar3 = bVar1;\n        }\n        else {\n          __overflow(p_Var2,(uint)bVar1);\n        }\n      }\n      file = (char *)((byte *)file + 1);\n      bVar1 = *file;\n    }" while (parenthesized_expression "(bVar1 != 0)" ( (binary_expression "bVar1 != 0" identifier != number_literal) )) (compound_statement "{\n      if (bVar1 == 10) {\n        fwrite_unlocked(&DAT_0010a004,1,2,*(FILE **)PTR_stdout_0010dfa0);\n      }\n      else if (bVar1 == 0x5c) {\n        fwrite_unlocked(&DAT_0010a007,1,2,*(FILE **)PTR_stdout_0010dfa0);\n      }\n      else {\n        p_Var2 = *(_IO_FILE **)PTR_stdout_0010dfa0;\n        pbVar3 = (byte *)p_Var2->_IO_write_ptr;\n        if (pbVar3 < p_Var2->_IO_write_end) {\n          p_Var2->_IO_write_ptr = (char *)(pbVar3 + 1);\n          *pbVar3 = bVar1;\n        }\n        else {\n          __overflow(p_Var2,(uint)bVar1);\n        }\n      }\n      file = (char *)((byte *)file + 1);\n      bVar1 = *file;\n    }" { (if_statement "if (bVar1 == 10) {\n        fwrite_unlocked(&DAT_0010a004,1,2,*(FILE **)PTR_stdout_0010dfa0);\n      }\n      else if (bVar1 == 0x5c) {\n        fwrite_unlocked(&DAT_0010a007,1,2,*(FILE **)PTR_stdout_0010dfa0);\n      }\n      else {\n        p_Var2 = *(_IO_FILE **)PTR_stdout_0010dfa0;\n        pbVar3 = (byte *)p_Var2->_IO_write_ptr;\n        if (pbVar3 < p_Var2->_IO_write_end) {\n          p_Var2->_IO_write_ptr = (char *)(pbVar3 + 1);\n          *pbVar3 = bVar1;\n        }\n        else {\n          __overflow(p_Var2,(uint)bVar1);\n        }\n      }" if (parenthesized_expression "(bVar1 == 10)" ( (binary_expression "bVar1 == 10" identifier == number_literal) )) (compound_statement "{\n        fwrite_unlocked(&DAT_0010a004,1,2,*(FILE **)PTR_stdout_0010dfa0);\n      }" { (expression_statement "fwrite_unlocked(&DAT_0010a004,1,2,*(FILE **)PTR_stdout_0010dfa0);" (call_expression "fwrite_unlocked(&DAT_0010a004,1,2,*(FILE **)PTR_stdout_0010dfa0)" identifier (argument_list "(&DAT_0010a004,1,2,*(FILE **)PTR_stdout_0010dfa0)" ( (pointer_expression "&DAT_0010a004" & identifier) , number_literal , number_literal , (pointer_expression "*(FILE **)PTR_stdout_0010dfa0" * (cast_expression "(FILE **)PTR_stdout_0010dfa0" ( (type_descriptor "FILE **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) identifier)) ))) ;) }) (else_clause "else if (bVar1 == 0x5c) {\n        fwrite_unlocked(&DAT_0010a007,1,2,*(FILE **)PTR_stdout_0010dfa0);\n      }\n      else {\n        p_Var2 = *(_IO_FILE **)PTR_stdout_0010dfa0;\n        pbVar3 = (byte *)p_Var2->_IO_write_ptr;\n        if (pbVar3 < p_Var2->_IO_write_end) {\n          p_Var2->_IO_write_ptr = (char *)(pbVar3 + 1);\n          *pbVar3 = bVar1;\n        }\n        else {\n          __overflow(p_Var2,(uint)bVar1);\n        }\n      }" else (if_statement "if (bVar1 == 0x5c) {\n        fwrite_unlocked(&DAT_0010a007,1,2,*(FILE **)PTR_stdout_0010dfa0);\n      }\n      else {\n        p_Var2 = *(_IO_FILE **)PTR_stdout_0010dfa0;\n        pbVar3 = (byte *)p_Var2->_IO_write_ptr;\n        if (pbVar3 < p_Var2->_IO_write_end) {\n          p_Var2->_IO_write_ptr = (char *)(pbVar3 + 1);\n          *pbVar3 = bVar1;\n        }\n        else {\n          __overflow(p_Var2,(uint)bVar1);\n        }\n      }" if (parenthesized_expression "(bVar1 == 0x5c)" ( (binary_expression "bVar1 == 0x5c" identifier == number_literal) )) (compound_statement "{\n        fwrite_unlocked(&DAT_0010a007,1,2,*(FILE **)PTR_stdout_0010dfa0);\n      }" { (expression_statement "fwrite_unlocked(&DAT_0010a007,1,2,*(FILE **)PTR_stdout_0010dfa0);" (call_expression "fwrite_unlocked(&DAT_0010a007,1,2,*(FILE **)PTR_stdout_0010dfa0)" identifier (argument_list "(&DAT_0010a007,1,2,*(FILE **)PTR_stdout_0010dfa0)" ( (pointer_expression "&DAT_0010a007" & identifier) , number_literal , number_literal , (pointer_expression "*(FILE **)PTR_stdout_0010dfa0" * (cast_expression "(FILE **)PTR_stdout_0010dfa0" ( (type_descriptor "FILE **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) identifier)) ))) ;) }) (else_clause "else {\n        p_Var2 = *(_IO_FILE **)PTR_stdout_0010dfa0;\n        pbVar3 = (byte *)p_Var2->_IO_write_ptr;\n        if (pbVar3 < p_Var2->_IO_write_end) {\n          p_Var2->_IO_write_ptr = (char *)(pbVar3 + 1);\n          *pbVar3 = bVar1;\n        }\n        else {\n          __overflow(p_Var2,(uint)bVar1);\n        }\n      }" else (compound_statement "{\n        p_Var2 = *(_IO_FILE **)PTR_stdout_0010dfa0;\n        pbVar3 = (byte *)p_Var2->_IO_write_ptr;\n        if (pbVar3 < p_Var2->_IO_write_end) {\n          p_Var2->_IO_write_ptr = (char *)(pbVar3 + 1);\n          *pbVar3 = bVar1;\n        }\n        else {\n          __overflow(p_Var2,(uint)bVar1);\n        }\n      }" { (expression_statement "p_Var2 = *(_IO_FILE **)PTR_stdout_0010dfa0;" (assignment_expression "p_Var2 = *(_IO_FILE **)PTR_stdout_0010dfa0" identifier = (pointer_expression "*(_IO_FILE **)PTR_stdout_0010dfa0" * (cast_expression "(_IO_FILE **)PTR_stdout_0010dfa0" ( (type_descriptor "_IO_FILE **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) identifier))) ;) (expression_statement "pbVar3 = (byte *)p_Var2->_IO_write_ptr;" (assignment_expression "pbVar3 = (byte *)p_Var2->_IO_write_ptr" identifier = (cast_expression "(byte *)p_Var2->_IO_write_ptr" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (field_expression "p_Var2->_IO_write_ptr" identifier -> field_identifier))) ;) (if_statement "if (pbVar3 < p_Var2->_IO_write_end) {\n          p_Var2->_IO_write_ptr = (char *)(pbVar3 + 1);\n          *pbVar3 = bVar1;\n        }\n        else {\n          __overflow(p_Var2,(uint)bVar1);\n        }" if (parenthesized_expression "(pbVar3 < p_Var2->_IO_write_end)" ( (binary_expression "pbVar3 < p_Var2->_IO_write_end" identifier < (field_expression "p_Var2->_IO_write_end" identifier -> field_identifier)) )) (compound_statement "{\n          p_Var2->_IO_write_ptr = (char *)(pbVar3 + 1);\n          *pbVar3 = bVar1;\n        }" { (expression_statement "p_Var2->_IO_write_ptr = (char *)(pbVar3 + 1);" (assignment_expression "p_Var2->_IO_write_ptr = (char *)(pbVar3 + 1)" (field_expression "p_Var2->_IO_write_ptr" identifier -> field_identifier) = (cast_expression "(char *)(pbVar3 + 1)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pbVar3 + 1)" ( (binary_expression "pbVar3 + 1" identifier + number_literal) )))) ;) (expression_statement "*pbVar3 = bVar1;" (assignment_expression "*pbVar3 = bVar1" (pointer_expression "*pbVar3" * identifier) = identifier) ;) }) (else_clause "else {\n          __overflow(p_Var2,(uint)bVar1);\n        }" else (compound_statement "{\n          __overflow(p_Var2,(uint)bVar1);\n        }" { (expression_statement "__overflow(p_Var2,(uint)bVar1);" (call_expression "__overflow(p_Var2,(uint)bVar1)" identifier (argument_list "(p_Var2,(uint)bVar1)" ( identifier , (cast_expression "(uint)bVar1" ( (type_descriptor "uint" type_identifier) ) identifier) ))) ;) }))) }))))) (expression_statement "file = (char *)((byte *)file + 1);" (assignment_expression "file = (char *)((byte *)file + 1)" identifier = (cast_expression "(char *)((byte *)file + 1)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((byte *)file + 1)" ( (binary_expression "(byte *)file + 1" (cast_expression "(byte *)file" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier) + number_literal) )))) ;) (expression_statement "bVar1 = *file;" (assignment_expression "bVar1 = *file" identifier = (pointer_expression "*file" * identifier)) ;) })) }) (else_clause "else {\n    fputs_unlocked(file,*(FILE **)PTR_stdout_0010dfa0);\n  }" else (compound_statement "{\n    fputs_unlocked(file,*(FILE **)PTR_stdout_0010dfa0);\n  }" { (expression_statement "fputs_unlocked(file,*(FILE **)PTR_stdout_0010dfa0);" (call_expression "fputs_unlocked(file,*(FILE **)PTR_stdout_0010dfa0)" identifier (argument_list "(file,*(FILE **)PTR_stdout_0010dfa0)" ( identifier , (pointer_expression "*(FILE **)PTR_stdout_0010dfa0" * (cast_expression "(FILE **)PTR_stdout_0010dfa0" ( (type_descriptor "FILE **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) identifier)) ))) ;) }))) (return_statement "return;" return ;) })))
(translation_unit "void FUN_001026f3(byte *param_1,char param_2)\n\n{\n  byte bVar1;\n  _IO_FILE *p_Var2;\n  byte *pbVar3;\n  \n  if (param_2 == '\0') {\n    fputs_unlocked((char *)param_1,*(FILE **)PTR_stdout_0010dfa0);\n  }\n  else {\n    bVar1 = *param_1;\n    while (bVar1 != 0) {\n      if (bVar1 == 10) {\n        fwrite_unlocked(&DAT_0010a004,1,2,*(FILE **)PTR_stdout_0010dfa0);\n      }\n      else if (bVar1 == 0x5c) {\n        fwrite_unlocked(&DAT_0010a007,1,2,*(FILE **)PTR_stdout_0010dfa0);\n      }\n      else {\n        p_Var2 = *(_IO_FILE **)PTR_stdout_0010dfa0;\n        pbVar3 = (byte *)p_Var2->_IO_write_ptr;\n        if (pbVar3 < p_Var2->_IO_write_end) {\n          p_Var2->_IO_write_ptr = (char *)(pbVar3 + 1);\n          *pbVar3 = bVar1;\n        }\n        else {\n          __overflow(p_Var2,(uint)bVar1);\n        }\n      }\n      param_1 = param_1 + 1;\n      bVar1 = *param_1;\n    }\n  }\n  return;\n}\n\n" (function_definition "void FUN_001026f3(byte *param_1,char param_2)\n\n{\n  byte bVar1;\n  _IO_FILE *p_Var2;\n  byte *pbVar3;\n  \n  if (param_2 == '\0') {\n    fputs_unlocked((char *)param_1,*(FILE **)PTR_stdout_0010dfa0);\n  }\n  else {\n    bVar1 = *param_1;\n    while (bVar1 != 0) {\n      if (bVar1 == 10) {\n        fwrite_unlocked(&DAT_0010a004,1,2,*(FILE **)PTR_stdout_0010dfa0);\n      }\n      else if (bVar1 == 0x5c) {\n        fwrite_unlocked(&DAT_0010a007,1,2,*(FILE **)PTR_stdout_0010dfa0);\n      }\n      else {\n        p_Var2 = *(_IO_FILE **)PTR_stdout_0010dfa0;\n        pbVar3 = (byte *)p_Var2->_IO_write_ptr;\n        if (pbVar3 < p_Var2->_IO_write_end) {\n          p_Var2->_IO_write_ptr = (char *)(pbVar3 + 1);\n          *pbVar3 = bVar1;\n        }\n        else {\n          __overflow(p_Var2,(uint)bVar1);\n        }\n      }\n      param_1 = param_1 + 1;\n      bVar1 = *param_1;\n    }\n  }\n  return;\n}" primitive_type (function_declarator "FUN_001026f3(byte *param_1,char param_2)" identifier (parameter_list "(byte *param_1,char param_2)" ( (parameter_declaration "byte *param_1" type_identifier (pointer_declarator "*param_1" * identifier)) , (parameter_declaration "char param_2" primitive_type identifier) ))) (compound_statement "{\n  byte bVar1;\n  _IO_FILE *p_Var2;\n  byte *pbVar3;\n  \n  if (param_2 == '\0') {\n    fputs_unlocked((char *)param_1,*(FILE **)PTR_stdout_0010dfa0);\n  }\n  else {\n    bVar1 = *param_1;\n    while (bVar1 != 0) {\n      if (bVar1 == 10) {\n        fwrite_unlocked(&DAT_0010a004,1,2,*(FILE **)PTR_stdout_0010dfa0);\n      }\n      else if (bVar1 == 0x5c) {\n        fwrite_unlocked(&DAT_0010a007,1,2,*(FILE **)PTR_stdout_0010dfa0);\n      }\n      else {\n        p_Var2 = *(_IO_FILE **)PTR_stdout_0010dfa0;\n        pbVar3 = (byte *)p_Var2->_IO_write_ptr;\n        if (pbVar3 < p_Var2->_IO_write_end) {\n          p_Var2->_IO_write_ptr = (char *)(pbVar3 + 1);\n          *pbVar3 = bVar1;\n        }\n        else {\n          __overflow(p_Var2,(uint)bVar1);\n        }\n      }\n      param_1 = param_1 + 1;\n      bVar1 = *param_1;\n    }\n  }\n  return;\n}" { (declaration "byte bVar1;" type_identifier identifier ;) (declaration "_IO_FILE *p_Var2;" type_identifier (pointer_declarator "*p_Var2" * identifier) ;) (declaration "byte *pbVar3;" type_identifier (pointer_declarator "*pbVar3" * identifier) ;) (if_statement "if (param_2 == '\0') {\n    fputs_unlocked((char *)param_1,*(FILE **)PTR_stdout_0010dfa0);\n  }\n  else {\n    bVar1 = *param_1;\n    while (bVar1 != 0) {\n      if (bVar1 == 10) {\n        fwrite_unlocked(&DAT_0010a004,1,2,*(FILE **)PTR_stdout_0010dfa0);\n      }\n      else if (bVar1 == 0x5c) {\n        fwrite_unlocked(&DAT_0010a007,1,2,*(FILE **)PTR_stdout_0010dfa0);\n      }\n      else {\n        p_Var2 = *(_IO_FILE **)PTR_stdout_0010dfa0;\n        pbVar3 = (byte *)p_Var2->_IO_write_ptr;\n        if (pbVar3 < p_Var2->_IO_write_end) {\n          p_Var2->_IO_write_ptr = (char *)(pbVar3 + 1);\n          *pbVar3 = bVar1;\n        }\n        else {\n          __overflow(p_Var2,(uint)bVar1);\n        }\n      }\n      param_1 = param_1 + 1;\n      bVar1 = *param_1;\n    }\n  }" if (parenthesized_expression "(param_2 == '\0')" ( (binary_expression "param_2 == '\0'" identifier == (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n    fputs_unlocked((char *)param_1,*(FILE **)PTR_stdout_0010dfa0);\n  }" { (expression_statement "fputs_unlocked((char *)param_1,*(FILE **)PTR_stdout_0010dfa0);" (call_expression "fputs_unlocked((char *)param_1,*(FILE **)PTR_stdout_0010dfa0)" identifier (argument_list "((char *)param_1,*(FILE **)PTR_stdout_0010dfa0)" ( (cast_expression "(char *)param_1" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier) , (pointer_expression "*(FILE **)PTR_stdout_0010dfa0" * (cast_expression "(FILE **)PTR_stdout_0010dfa0" ( (type_descriptor "FILE **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) identifier)) ))) ;) }) (else_clause "else {\n    bVar1 = *param_1;\n    while (bVar1 != 0) {\n      if (bVar1 == 10) {\n        fwrite_unlocked(&DAT_0010a004,1,2,*(FILE **)PTR_stdout_0010dfa0);\n      }\n      else if (bVar1 == 0x5c) {\n        fwrite_unlocked(&DAT_0010a007,1,2,*(FILE **)PTR_stdout_0010dfa0);\n      }\n      else {\n        p_Var2 = *(_IO_FILE **)PTR_stdout_0010dfa0;\n        pbVar3 = (byte *)p_Var2->_IO_write_ptr;\n        if (pbVar3 < p_Var2->_IO_write_end) {\n          p_Var2->_IO_write_ptr = (char *)(pbVar3 + 1);\n          *pbVar3 = bVar1;\n        }\n        else {\n          __overflow(p_Var2,(uint)bVar1);\n        }\n      }\n      param_1 = param_1 + 1;\n      bVar1 = *param_1;\n    }\n  }" else (compound_statement "{\n    bVar1 = *param_1;\n    while (bVar1 != 0) {\n      if (bVar1 == 10) {\n        fwrite_unlocked(&DAT_0010a004,1,2,*(FILE **)PTR_stdout_0010dfa0);\n      }\n      else if (bVar1 == 0x5c) {\n        fwrite_unlocked(&DAT_0010a007,1,2,*(FILE **)PTR_stdout_0010dfa0);\n      }\n      else {\n        p_Var2 = *(_IO_FILE **)PTR_stdout_0010dfa0;\n        pbVar3 = (byte *)p_Var2->_IO_write_ptr;\n        if (pbVar3 < p_Var2->_IO_write_end) {\n          p_Var2->_IO_write_ptr = (char *)(pbVar3 + 1);\n          *pbVar3 = bVar1;\n        }\n        else {\n          __overflow(p_Var2,(uint)bVar1);\n        }\n      }\n      param_1 = param_1 + 1;\n      bVar1 = *param_1;\n    }\n  }" { (expression_statement "bVar1 = *param_1;" (assignment_expression "bVar1 = *param_1" identifier = (pointer_expression "*param_1" * identifier)) ;) (while_statement "while (bVar1 != 0) {\n      if (bVar1 == 10) {\n        fwrite_unlocked(&DAT_0010a004,1,2,*(FILE **)PTR_stdout_0010dfa0);\n      }\n      else if (bVar1 == 0x5c) {\n        fwrite_unlocked(&DAT_0010a007,1,2,*(FILE **)PTR_stdout_0010dfa0);\n      }\n      else {\n        p_Var2 = *(_IO_FILE **)PTR_stdout_0010dfa0;\n        pbVar3 = (byte *)p_Var2->_IO_write_ptr;\n        if (pbVar3 < p_Var2->_IO_write_end) {\n          p_Var2->_IO_write_ptr = (char *)(pbVar3 + 1);\n          *pbVar3 = bVar1;\n        }\n        else {\n          __overflow(p_Var2,(uint)bVar1);\n        }\n      }\n      param_1 = param_1 + 1;\n      bVar1 = *param_1;\n    }" while (parenthesized_expression "(bVar1 != 0)" ( (binary_expression "bVar1 != 0" identifier != number_literal) )) (compound_statement "{\n      if (bVar1 == 10) {\n        fwrite_unlocked(&DAT_0010a004,1,2,*(FILE **)PTR_stdout_0010dfa0);\n      }\n      else if (bVar1 == 0x5c) {\n        fwrite_unlocked(&DAT_0010a007,1,2,*(FILE **)PTR_stdout_0010dfa0);\n      }\n      else {\n        p_Var2 = *(_IO_FILE **)PTR_stdout_0010dfa0;\n        pbVar3 = (byte *)p_Var2->_IO_write_ptr;\n        if (pbVar3 < p_Var2->_IO_write_end) {\n          p_Var2->_IO_write_ptr = (char *)(pbVar3 + 1);\n          *pbVar3 = bVar1;\n        }\n        else {\n          __overflow(p_Var2,(uint)bVar1);\n        }\n      }\n      param_1 = param_1 + 1;\n      bVar1 = *param_1;\n    }" { (if_statement "if (bVar1 == 10) {\n        fwrite_unlocked(&DAT_0010a004,1,2,*(FILE **)PTR_stdout_0010dfa0);\n      }\n      else if (bVar1 == 0x5c) {\n        fwrite_unlocked(&DAT_0010a007,1,2,*(FILE **)PTR_stdout_0010dfa0);\n      }\n      else {\n        p_Var2 = *(_IO_FILE **)PTR_stdout_0010dfa0;\n        pbVar3 = (byte *)p_Var2->_IO_write_ptr;\n        if (pbVar3 < p_Var2->_IO_write_end) {\n          p_Var2->_IO_write_ptr = (char *)(pbVar3 + 1);\n          *pbVar3 = bVar1;\n        }\n        else {\n          __overflow(p_Var2,(uint)bVar1);\n        }\n      }" if (parenthesized_expression "(bVar1 == 10)" ( (binary_expression "bVar1 == 10" identifier == number_literal) )) (compound_statement "{\n        fwrite_unlocked(&DAT_0010a004,1,2,*(FILE **)PTR_stdout_0010dfa0);\n      }" { (expression_statement "fwrite_unlocked(&DAT_0010a004,1,2,*(FILE **)PTR_stdout_0010dfa0);" (call_expression "fwrite_unlocked(&DAT_0010a004,1,2,*(FILE **)PTR_stdout_0010dfa0)" identifier (argument_list "(&DAT_0010a004,1,2,*(FILE **)PTR_stdout_0010dfa0)" ( (pointer_expression "&DAT_0010a004" & identifier) , number_literal , number_literal , (pointer_expression "*(FILE **)PTR_stdout_0010dfa0" * (cast_expression "(FILE **)PTR_stdout_0010dfa0" ( (type_descriptor "FILE **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) identifier)) ))) ;) }) (else_clause "else if (bVar1 == 0x5c) {\n        fwrite_unlocked(&DAT_0010a007,1,2,*(FILE **)PTR_stdout_0010dfa0);\n      }\n      else {\n        p_Var2 = *(_IO_FILE **)PTR_stdout_0010dfa0;\n        pbVar3 = (byte *)p_Var2->_IO_write_ptr;\n        if (pbVar3 < p_Var2->_IO_write_end) {\n          p_Var2->_IO_write_ptr = (char *)(pbVar3 + 1);\n          *pbVar3 = bVar1;\n        }\n        else {\n          __overflow(p_Var2,(uint)bVar1);\n        }\n      }" else (if_statement "if (bVar1 == 0x5c) {\n        fwrite_unlocked(&DAT_0010a007,1,2,*(FILE **)PTR_stdout_0010dfa0);\n      }\n      else {\n        p_Var2 = *(_IO_FILE **)PTR_stdout_0010dfa0;\n        pbVar3 = (byte *)p_Var2->_IO_write_ptr;\n        if (pbVar3 < p_Var2->_IO_write_end) {\n          p_Var2->_IO_write_ptr = (char *)(pbVar3 + 1);\n          *pbVar3 = bVar1;\n        }\n        else {\n          __overflow(p_Var2,(uint)bVar1);\n        }\n      }" if (parenthesized_expression "(bVar1 == 0x5c)" ( (binary_expression "bVar1 == 0x5c" identifier == number_literal) )) (compound_statement "{\n        fwrite_unlocked(&DAT_0010a007,1,2,*(FILE **)PTR_stdout_0010dfa0);\n      }" { (expression_statement "fwrite_unlocked(&DAT_0010a007,1,2,*(FILE **)PTR_stdout_0010dfa0);" (call_expression "fwrite_unlocked(&DAT_0010a007,1,2,*(FILE **)PTR_stdout_0010dfa0)" identifier (argument_list "(&DAT_0010a007,1,2,*(FILE **)PTR_stdout_0010dfa0)" ( (pointer_expression "&DAT_0010a007" & identifier) , number_literal , number_literal , (pointer_expression "*(FILE **)PTR_stdout_0010dfa0" * (cast_expression "(FILE **)PTR_stdout_0010dfa0" ( (type_descriptor "FILE **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) identifier)) ))) ;) }) (else_clause "else {\n        p_Var2 = *(_IO_FILE **)PTR_stdout_0010dfa0;\n        pbVar3 = (byte *)p_Var2->_IO_write_ptr;\n        if (pbVar3 < p_Var2->_IO_write_end) {\n          p_Var2->_IO_write_ptr = (char *)(pbVar3 + 1);\n          *pbVar3 = bVar1;\n        }\n        else {\n          __overflow(p_Var2,(uint)bVar1);\n        }\n      }" else (compound_statement "{\n        p_Var2 = *(_IO_FILE **)PTR_stdout_0010dfa0;\n        pbVar3 = (byte *)p_Var2->_IO_write_ptr;\n        if (pbVar3 < p_Var2->_IO_write_end) {\n          p_Var2->_IO_write_ptr = (char *)(pbVar3 + 1);\n          *pbVar3 = bVar1;\n        }\n        else {\n          __overflow(p_Var2,(uint)bVar1);\n        }\n      }" { (expression_statement "p_Var2 = *(_IO_FILE **)PTR_stdout_0010dfa0;" (assignment_expression "p_Var2 = *(_IO_FILE **)PTR_stdout_0010dfa0" identifier = (pointer_expression "*(_IO_FILE **)PTR_stdout_0010dfa0" * (cast_expression "(_IO_FILE **)PTR_stdout_0010dfa0" ( (type_descriptor "_IO_FILE **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) identifier))) ;) (expression_statement "pbVar3 = (byte *)p_Var2->_IO_write_ptr;" (assignment_expression "pbVar3 = (byte *)p_Var2->_IO_write_ptr" identifier = (cast_expression "(byte *)p_Var2->_IO_write_ptr" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (field_expression "p_Var2->_IO_write_ptr" identifier -> field_identifier))) ;) (if_statement "if (pbVar3 < p_Var2->_IO_write_end) {\n          p_Var2->_IO_write_ptr = (char *)(pbVar3 + 1);\n          *pbVar3 = bVar1;\n        }\n        else {\n          __overflow(p_Var2,(uint)bVar1);\n        }" if (parenthesized_expression "(pbVar3 < p_Var2->_IO_write_end)" ( (binary_expression "pbVar3 < p_Var2->_IO_write_end" identifier < (field_expression "p_Var2->_IO_write_end" identifier -> field_identifier)) )) (compound_statement "{\n          p_Var2->_IO_write_ptr = (char *)(pbVar3 + 1);\n          *pbVar3 = bVar1;\n        }" { (expression_statement "p_Var2->_IO_write_ptr = (char *)(pbVar3 + 1);" (assignment_expression "p_Var2->_IO_write_ptr = (char *)(pbVar3 + 1)" (field_expression "p_Var2->_IO_write_ptr" identifier -> field_identifier) = (cast_expression "(char *)(pbVar3 + 1)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pbVar3 + 1)" ( (binary_expression "pbVar3 + 1" identifier + number_literal) )))) ;) (expression_statement "*pbVar3 = bVar1;" (assignment_expression "*pbVar3 = bVar1" (pointer_expression "*pbVar3" * identifier) = identifier) ;) }) (else_clause "else {\n          __overflow(p_Var2,(uint)bVar1);\n        }" else (compound_statement "{\n          __overflow(p_Var2,(uint)bVar1);\n        }" { (expression_statement "__overflow(p_Var2,(uint)bVar1);" (call_expression "__overflow(p_Var2,(uint)bVar1)" identifier (argument_list "(p_Var2,(uint)bVar1)" ( identifier , (cast_expression "(uint)bVar1" ( (type_descriptor "uint" type_identifier) ) identifier) ))) ;) }))) }))))) (expression_statement "param_1 = param_1 + 1;" (assignment_expression "param_1 = param_1 + 1" identifier = (binary_expression "param_1 + 1" identifier + number_literal)) ;) (expression_statement "bVar1 = *param_1;" (assignment_expression "bVar1 = *param_1" identifier = (pointer_expression "*param_1" * identifier)) ;) })) }))) (return_statement "return;" return ;) })))
(translation_unit (function_definition TYPE (function_declarator IDENT (parameter_list ( (parameter_declaration TYPE (pointer_declarator * IDENT)) , (parameter_declaration TYPE IDENT) ))) (compound_statement { (declaration TYPE IDENT ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == (char_literal ' escape_sequence ')) )) (compound_statement { (expression_statement (call_expression IDENT (argument_list ( (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT) , (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) IDENT)) ))) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = (pointer_expression * IDENT)) ;) (while_statement while (parenthesized_expression ( (binary_expression IDENT != LIT) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (call_expression IDENT (argument_list ( (pointer_expression & IDENT) , LIT , LIT , (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) IDENT)) ))) ;) }) (else_clause else (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (call_expression IDENT (argument_list ( (pointer_expression & IDENT) , LIT , LIT , (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) IDENT)) ))) ;) }) (else_clause else (compound_statement { (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 *)) ) (field_expression IDENT -> field_identifier))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT < (field_expression IDENT -> field_identifier)) )) (compound_statement { (expression_statement (assignment_expression (field_expression IDENT -> field_identifier) = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) ;) (expression_statement (assignment_expression (pointer_expression * IDENT) = IDENT) ;) }) (else_clause else (compound_statement { (expression_statement (call_expression IDENT (argument_list ( IDENT , (cast_expression ( (type_descriptor TYPE) ) IDENT) ))) ;) }))) }))))) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * IDENT)) ;) })) }))) (return_statement return ;) })))
(function_definition "void FUN_001026f3(byte *param_1,char param_2)\n\n{\n  byte bVar1;\n  _IO_FILE *p_Var2;\n  byte *pbVar3;\n  \n  if (param_2 == '\0') {\n    fputs_unlocked((char *)param_1,*(FILE **)PTR_stdout_0010dfa0);\n  }\n  else {\n    bVar1 = *param_1;\n    while (bVar1 != 0) {\n      if (bVar1 == 10) {\n        fwrite_unlocked(&DAT_0010a004,1,2,*(FILE **)PTR_stdout_0010dfa0);\n      }\n      else if (bVar1 == 0x5c) {\n        fwrite_unlocked(&DAT_0010a007,1,2,*(FILE **)PTR_stdout_0010dfa0);\n      }\n      else {\n        p_Var2 = *(_IO_FILE **)PTR_stdout_0010dfa0;\n        pbVar3 = (byte *)p_Var2->_IO_write_ptr;\n        if (pbVar3 < p_Var2->_IO_write_end) {\n          p_Var2->_IO_write_ptr = (char *)(pbVar3 + 1);\n          *pbVar3 = bVar1;\n        }\n        else {\n          __overflow(p_Var2,(uint)bVar1);\n        }\n      }\n      param_1 = param_1 + 1;\n      bVar1 = *param_1;\n    }\n  }\n  return;\n}" (primitive_type "void") (function_declarator "FUN_001026f3(byte *param_1,char param_2)" (identifier "FUN_001026f3") (parameter_list "(byte *param_1,char param_2)" (( "(") (parameter_declaration "byte *param_1" (type_identifier "byte") (pointer_declarator "*param_1" (* "*") (identifier "param_1"))) (, ",") (parameter_declaration "char param_2" (primitive_type "char") (identifier "param_2")) () ")"))) (compound_statement "{\n  byte bVar1;\n  _IO_FILE *p_Var2;\n  byte *pbVar3;\n  \n  if (param_2 == '\0') {\n    fputs_unlocked((char *)param_1,*(FILE **)PTR_stdout_0010dfa0);\n  }\n  else {\n    bVar1 = *param_1;\n    while (bVar1 != 0) {\n      if (bVar1 == 10) {\n        fwrite_unlocked(&DAT_0010a004,1,2,*(FILE **)PTR_stdout_0010dfa0);\n      }\n      else if (bVar1 == 0x5c) {\n        fwrite_unlocked(&DAT_0010a007,1,2,*(FILE **)PTR_stdout_0010dfa0);\n      }\n      else {\n        p_Var2 = *(_IO_FILE **)PTR_stdout_0010dfa0;\n        pbVar3 = (byte *)p_Var2->_IO_write_ptr;\n        if (pbVar3 < p_Var2->_IO_write_end) {\n          p_Var2->_IO_write_ptr = (char *)(pbVar3 + 1);\n          *pbVar3 = bVar1;\n        }\n        else {\n          __overflow(p_Var2,(uint)bVar1);\n        }\n      }\n      param_1 = param_1 + 1;\n      bVar1 = *param_1;\n    }\n  }\n  return;\n}" ({ "{") (declaration "byte bVar1;" (type_identifier "byte") (identifier "bVar1") (; ";")) (declaration "_IO_FILE *p_Var2;" (type_identifier "_IO_FILE") (pointer_declarator "*p_Var2" (* "*") (identifier "p_Var2")) (; ";")) (declaration "byte *pbVar3;" (type_identifier "byte") (pointer_declarator "*pbVar3" (* "*") (identifier "pbVar3")) (; ";")) (if_statement "if (param_2 == '\0') {\n    fputs_unlocked((char *)param_1,*(FILE **)PTR_stdout_0010dfa0);\n  }\n  else {\n    bVar1 = *param_1;\n    while (bVar1 != 0) {\n      if (bVar1 == 10) {\n        fwrite_unlocked(&DAT_0010a004,1,2,*(FILE **)PTR_stdout_0010dfa0);\n      }\n      else if (bVar1 == 0x5c) {\n        fwrite_unlocked(&DAT_0010a007,1,2,*(FILE **)PTR_stdout_0010dfa0);\n      }\n      else {\n        p_Var2 = *(_IO_FILE **)PTR_stdout_0010dfa0;\n        pbVar3 = (byte *)p_Var2->_IO_write_ptr;\n        if (pbVar3 < p_Var2->_IO_write_end) {\n          p_Var2->_IO_write_ptr = (char *)(pbVar3 + 1);\n          *pbVar3 = bVar1;\n        }\n        else {\n          __overflow(p_Var2,(uint)bVar1);\n        }\n      }\n      param_1 = param_1 + 1;\n      bVar1 = *param_1;\n    }\n  }" (if "if") (parenthesized_expression "(param_2 == '\0')" (( "(") (binary_expression "param_2 == '\0'" (identifier "param_2") (== "==") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (compound_statement "{\n    fputs_unlocked((char *)param_1,*(FILE **)PTR_stdout_0010dfa0);\n  }" ({ "{") (expression_statement "fputs_unlocked((char *)param_1,*(FILE **)PTR_stdout_0010dfa0);" (call_expression "fputs_unlocked((char *)param_1,*(FILE **)PTR_stdout_0010dfa0)" (identifier "fputs_unlocked") (argument_list "((char *)param_1,*(FILE **)PTR_stdout_0010dfa0)" (( "(") (cast_expression "(char *)param_1" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "param_1")) (, ",") (pointer_expression "*(FILE **)PTR_stdout_0010dfa0" (* "*") (cast_expression "(FILE **)PTR_stdout_0010dfa0" (( "(") (type_descriptor "FILE **" (type_identifier "FILE") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (identifier "PTR_stdout_0010dfa0"))) () ")"))) (; ";")) (} "}")) (else_clause "else {\n    bVar1 = *param_1;\n    while (bVar1 != 0) {\n      if (bVar1 == 10) {\n        fwrite_unlocked(&DAT_0010a004,1,2,*(FILE **)PTR_stdout_0010dfa0);\n      }\n      else if (bVar1 == 0x5c) {\n        fwrite_unlocked(&DAT_0010a007,1,2,*(FILE **)PTR_stdout_0010dfa0);\n      }\n      else {\n        p_Var2 = *(_IO_FILE **)PTR_stdout_0010dfa0;\n        pbVar3 = (byte *)p_Var2->_IO_write_ptr;\n        if (pbVar3 < p_Var2->_IO_write_end) {\n          p_Var2->_IO_write_ptr = (char *)(pbVar3 + 1);\n          *pbVar3 = bVar1;\n        }\n        else {\n          __overflow(p_Var2,(uint)bVar1);\n        }\n      }\n      param_1 = param_1 + 1;\n      bVar1 = *param_1;\n    }\n  }" (else "else") (compound_statement "{\n    bVar1 = *param_1;\n    while (bVar1 != 0) {\n      if (bVar1 == 10) {\n        fwrite_unlocked(&DAT_0010a004,1,2,*(FILE **)PTR_stdout_0010dfa0);\n      }\n      else if (bVar1 == 0x5c) {\n        fwrite_unlocked(&DAT_0010a007,1,2,*(FILE **)PTR_stdout_0010dfa0);\n      }\n      else {\n        p_Var2 = *(_IO_FILE **)PTR_stdout_0010dfa0;\n        pbVar3 = (byte *)p_Var2->_IO_write_ptr;\n        if (pbVar3 < p_Var2->_IO_write_end) {\n          p_Var2->_IO_write_ptr = (char *)(pbVar3 + 1);\n          *pbVar3 = bVar1;\n        }\n        else {\n          __overflow(p_Var2,(uint)bVar1);\n        }\n      }\n      param_1 = param_1 + 1;\n      bVar1 = *param_1;\n    }\n  }" ({ "{") (expression_statement "bVar1 = *param_1;" (assignment_expression "bVar1 = *param_1" (identifier "bVar1") (= "=") (pointer_expression "*param_1" (* "*") (identifier "param_1"))) (; ";")) (while_statement "while (bVar1 != 0) {\n      if (bVar1 == 10) {\n        fwrite_unlocked(&DAT_0010a004,1,2,*(FILE **)PTR_stdout_0010dfa0);\n      }\n      else if (bVar1 == 0x5c) {\n        fwrite_unlocked(&DAT_0010a007,1,2,*(FILE **)PTR_stdout_0010dfa0);\n      }\n      else {\n        p_Var2 = *(_IO_FILE **)PTR_stdout_0010dfa0;\n        pbVar3 = (byte *)p_Var2->_IO_write_ptr;\n        if (pbVar3 < p_Var2->_IO_write_end) {\n          p_Var2->_IO_write_ptr = (char *)(pbVar3 + 1);\n          *pbVar3 = bVar1;\n        }\n        else {\n          __overflow(p_Var2,(uint)bVar1);\n        }\n      }\n      param_1 = param_1 + 1;\n      bVar1 = *param_1;\n    }" (while "while") (parenthesized_expression "(bVar1 != 0)" (( "(") (binary_expression "bVar1 != 0" (identifier "bVar1") (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n      if (bVar1 == 10) {\n        fwrite_unlocked(&DAT_0010a004,1,2,*(FILE **)PTR_stdout_0010dfa0);\n      }\n      else if (bVar1 == 0x5c) {\n        fwrite_unlocked(&DAT_0010a007,1,2,*(FILE **)PTR_stdout_0010dfa0);\n      }\n      else {\n        p_Var2 = *(_IO_FILE **)PTR_stdout_0010dfa0;\n        pbVar3 = (byte *)p_Var2->_IO_write_ptr;\n        if (pbVar3 < p_Var2->_IO_write_end) {\n          p_Var2->_IO_write_ptr = (char *)(pbVar3 + 1);\n          *pbVar3 = bVar1;\n        }\n        else {\n          __overflow(p_Var2,(uint)bVar1);\n        }\n      }\n      param_1 = param_1 + 1;\n      bVar1 = *param_1;\n    }" ({ "{") (if_statement "if (bVar1 == 10) {\n        fwrite_unlocked(&DAT_0010a004,1,2,*(FILE **)PTR_stdout_0010dfa0);\n      }\n      else if (bVar1 == 0x5c) {\n        fwrite_unlocked(&DAT_0010a007,1,2,*(FILE **)PTR_stdout_0010dfa0);\n      }\n      else {\n        p_Var2 = *(_IO_FILE **)PTR_stdout_0010dfa0;\n        pbVar3 = (byte *)p_Var2->_IO_write_ptr;\n        if (pbVar3 < p_Var2->_IO_write_end) {\n          p_Var2->_IO_write_ptr = (char *)(pbVar3 + 1);\n          *pbVar3 = bVar1;\n        }\n        else {\n          __overflow(p_Var2,(uint)bVar1);\n        }\n      }" (if "if") (parenthesized_expression "(bVar1 == 10)" (( "(") (binary_expression "bVar1 == 10" (identifier "bVar1") (== "==") (number_literal "10")) () ")")) (compound_statement "{\n        fwrite_unlocked(&DAT_0010a004,1,2,*(FILE **)PTR_stdout_0010dfa0);\n      }" ({ "{") (expression_statement "fwrite_unlocked(&DAT_0010a004,1,2,*(FILE **)PTR_stdout_0010dfa0);" (call_expression "fwrite_unlocked(&DAT_0010a004,1,2,*(FILE **)PTR_stdout_0010dfa0)" (identifier "fwrite_unlocked") (argument_list "(&DAT_0010a004,1,2,*(FILE **)PTR_stdout_0010dfa0)" (( "(") (pointer_expression "&DAT_0010a004" (& "&") (identifier "DAT_0010a004")) (, ",") (number_literal "1") (, ",") (number_literal "2") (, ",") (pointer_expression "*(FILE **)PTR_stdout_0010dfa0" (* "*") (cast_expression "(FILE **)PTR_stdout_0010dfa0" (( "(") (type_descriptor "FILE **" (type_identifier "FILE") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (identifier "PTR_stdout_0010dfa0"))) () ")"))) (; ";")) (} "}")) (else_clause "else if (bVar1 == 0x5c) {\n        fwrite_unlocked(&DAT_0010a007,1,2,*(FILE **)PTR_stdout_0010dfa0);\n      }\n      else {\n        p_Var2 = *(_IO_FILE **)PTR_stdout_0010dfa0;\n        pbVar3 = (byte *)p_Var2->_IO_write_ptr;\n        if (pbVar3 < p_Var2->_IO_write_end) {\n          p_Var2->_IO_write_ptr = (char *)(pbVar3 + 1);\n          *pbVar3 = bVar1;\n        }\n        else {\n          __overflow(p_Var2,(uint)bVar1);\n        }\n      }" (else "else") (if_statement "if (bVar1 == 0x5c) {\n        fwrite_unlocked(&DAT_0010a007,1,2,*(FILE **)PTR_stdout_0010dfa0);\n      }\n      else {\n        p_Var2 = *(_IO_FILE **)PTR_stdout_0010dfa0;\n        pbVar3 = (byte *)p_Var2->_IO_write_ptr;\n        if (pbVar3 < p_Var2->_IO_write_end) {\n          p_Var2->_IO_write_ptr = (char *)(pbVar3 + 1);\n          *pbVar3 = bVar1;\n        }\n        else {\n          __overflow(p_Var2,(uint)bVar1);\n        }\n      }" (if "if") (parenthesized_expression "(bVar1 == 0x5c)" (( "(") (binary_expression "bVar1 == 0x5c" (identifier "bVar1") (== "==") (number_literal "0x5c")) () ")")) (compound_statement "{\n        fwrite_unlocked(&DAT_0010a007,1,2,*(FILE **)PTR_stdout_0010dfa0);\n      }" ({ "{") (expression_statement "fwrite_unlocked(&DAT_0010a007,1,2,*(FILE **)PTR_stdout_0010dfa0);" (call_expression "fwrite_unlocked(&DAT_0010a007,1,2,*(FILE **)PTR_stdout_0010dfa0)" (identifier "fwrite_unlocked") (argument_list "(&DAT_0010a007,1,2,*(FILE **)PTR_stdout_0010dfa0)" (( "(") (pointer_expression "&DAT_0010a007" (& "&") (identifier "DAT_0010a007")) (, ",") (number_literal "1") (, ",") (number_literal "2") (, ",") (pointer_expression "*(FILE **)PTR_stdout_0010dfa0" (* "*") (cast_expression "(FILE **)PTR_stdout_0010dfa0" (( "(") (type_descriptor "FILE **" (type_identifier "FILE") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (identifier "PTR_stdout_0010dfa0"))) () ")"))) (; ";")) (} "}")) (else_clause "else {\n        p_Var2 = *(_IO_FILE **)PTR_stdout_0010dfa0;\n        pbVar3 = (byte *)p_Var2->_IO_write_ptr;\n        if (pbVar3 < p_Var2->_IO_write_end) {\n          p_Var2->_IO_write_ptr = (char *)(pbVar3 + 1);\n          *pbVar3 = bVar1;\n        }\n        else {\n          __overflow(p_Var2,(uint)bVar1);\n        }\n      }" (else "else") (compound_statement "{\n        p_Var2 = *(_IO_FILE **)PTR_stdout_0010dfa0;\n        pbVar3 = (byte *)p_Var2->_IO_write_ptr;\n        if (pbVar3 < p_Var2->_IO_write_end) {\n          p_Var2->_IO_write_ptr = (char *)(pbVar3 + 1);\n          *pbVar3 = bVar1;\n        }\n        else {\n          __overflow(p_Var2,(uint)bVar1);\n        }\n      }" ({ "{") (expression_statement "p_Var2 = *(_IO_FILE **)PTR_stdout_0010dfa0;" (assignment_expression "p_Var2 = *(_IO_FILE **)PTR_stdout_0010dfa0" (identifier "p_Var2") (= "=") (pointer_expression "*(_IO_FILE **)PTR_stdout_0010dfa0" (* "*") (cast_expression "(_IO_FILE **)PTR_stdout_0010dfa0" (( "(") (type_descriptor "_IO_FILE **" (type_identifier "_IO_FILE") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (identifier "PTR_stdout_0010dfa0")))) (; ";")) (expression_statement "pbVar3 = (byte *)p_Var2->_IO_write_ptr;" (assignment_expression "pbVar3 = (byte *)p_Var2->_IO_write_ptr" (identifier "pbVar3") (= "=") (cast_expression "(byte *)p_Var2->_IO_write_ptr" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (field_expression "p_Var2->_IO_write_ptr" (identifier "p_Var2") (-> "->") (field_identifier "_IO_write_ptr")))) (; ";")) (if_statement "if (pbVar3 < p_Var2->_IO_write_end) {\n          p_Var2->_IO_write_ptr = (char *)(pbVar3 + 1);\n          *pbVar3 = bVar1;\n        }\n        else {\n          __overflow(p_Var2,(uint)bVar1);\n        }" (if "if") (parenthesized_expression "(pbVar3 < p_Var2->_IO_write_end)" (( "(") (binary_expression "pbVar3 < p_Var2->_IO_write_end" (identifier "pbVar3") (< "<") (field_expression "p_Var2->_IO_write_end" (identifier "p_Var2") (-> "->") (field_identifier "_IO_write_end"))) () ")")) (compound_statement "{\n          p_Var2->_IO_write_ptr = (char *)(pbVar3 + 1);\n          *pbVar3 = bVar1;\n        }" ({ "{") (expression_statement "p_Var2->_IO_write_ptr = (char *)(pbVar3 + 1);" (assignment_expression "p_Var2->_IO_write_ptr = (char *)(pbVar3 + 1)" (field_expression "p_Var2->_IO_write_ptr" (identifier "p_Var2") (-> "->") (field_identifier "_IO_write_ptr")) (= "=") (cast_expression "(char *)(pbVar3 + 1)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pbVar3 + 1)" (( "(") (binary_expression "pbVar3 + 1" (identifier "pbVar3") (+ "+") (number_literal "1")) () ")")))) (; ";")) (expression_statement "*pbVar3 = bVar1;" (assignment_expression "*pbVar3 = bVar1" (pointer_expression "*pbVar3" (* "*") (identifier "pbVar3")) (= "=") (identifier "bVar1")) (; ";")) (} "}")) (else_clause "else {\n          __overflow(p_Var2,(uint)bVar1);\n        }" (else "else") (compound_statement "{\n          __overflow(p_Var2,(uint)bVar1);\n        }" ({ "{") (expression_statement "__overflow(p_Var2,(uint)bVar1);" (call_expression "__overflow(p_Var2,(uint)bVar1)" (identifier "__overflow") (argument_list "(p_Var2,(uint)bVar1)" (( "(") (identifier "p_Var2") (, ",") (cast_expression "(uint)bVar1" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (identifier "bVar1")) () ")"))) (; ";")) (} "}")))) (} "}")))))) (expression_statement "param_1 = param_1 + 1;" (assignment_expression "param_1 = param_1 + 1" (identifier "param_1") (= "=") (binary_expression "param_1 + 1" (identifier "param_1") (+ "+") (number_literal "1"))) (; ";")) (expression_statement "bVar1 = *param_1;" (assignment_expression "bVar1 = *param_1" (identifier "bVar1") (= "=") (pointer_expression "*param_1" (* "*") (identifier "param_1"))) (; ";")) (} "}"))) (} "}")))) (return_statement "return;" (return "return") (; ";")) (} "}")))

void function_1(char *file,type_1 escape)

{
  type_2 var_1;
  type_3 *p_Var2;
  type_2 *var_3;
  
  if (escape) {
    var_1 = *file;
    while (var_1 != 0) {
      if (var_1 == 10) {
        var_2(&DAT_0010a004,1,2,*(type_4 **)PTR_stdout_0010dfa0);
      }
      else if (var_1 == 0x5c) {
        var_2(&DAT_0010a007,1,2,*(type_4 **)PTR_stdout_0010dfa0);
      }
      else {
        p_Var2 = *(type_3 **)PTR_stdout_0010dfa0;
        var_3 = (type_2 *)p_Var2->_IO_write_ptr;
        if (var_3 < p_Var2->_IO_write_end) {
          p_Var2->_IO_write_ptr = (char *)(var_3 + 1);
          *var_3 = var_1;
        }
        else {
          var_4(p_Var2,(type_5)var_1);
        }
      }
      file = (char *)((type_2 *)file + 1);
      var_1 = *file;
    }
  }
  else {
    var_5(file,*(type_4 **)PTR_stdout_0010dfa0);
  }
  return;
}


(translation_unit (function_definition type: (primitive_type) declarator: (function_declarator declarator: (identifier) parameters: (parameter_list (parameter_declaration type: (type_identifier) declarator: (pointer_declarator declarator: (identifier))) (parameter_declaration type: (primitive_type) declarator: (identifier)))) body: (compound_statement (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (identifier))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (char_literal (escape_sequence)))) consequence: (compound_statement (expression_statement (call_expression function: (identifier) arguments: (argument_list (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (identifier)) (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (identifier))))))) alternative: (else_clause (compound_statement (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (identifier)))) (while_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) body: (compound_statement (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (expression_statement (call_expression function: (identifier) arguments: (argument_list (pointer_expression argument: (identifier)) (number_literal) (number_literal) (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (identifier))))))) alternative: (else_clause (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (expression_statement (call_expression function: (identifier) arguments: (argument_list (pointer_expression argument: (identifier)) (number_literal) (number_literal) (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (identifier))))))) alternative: (else_clause (compound_statement (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: (type_identifier) declarator: (abstract_pointer_declarator)) value: (field_expression argument: (identifier) field: (field_identifier))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (field_expression argument: (identifier) field: (field_identifier)))) consequence: (compound_statement (expression_statement (assignment_expression left: (field_expression argument: (identifier) field: (field_identifier)) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal)))))) (expression_statement (assignment_expression left: (pointer_expression argument: (identifier)) right: (identifier)))) alternative: (else_clause (compound_statement (expression_statement (call_expression function: (identifier) arguments: (argument_list (identifier) (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier))))))))))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (identifier))))))))) (return_statement))))

void MASKED(byte *param_1,char param_2)

{
  byte bVar1;
  _IO_FILE *p_Var2;
  byte *pbVar3;
  
  if (param_2 == '\0') {
    fputs_unlocked((char *)param_1,*(FILE **)PTR_stdout_0010dfa0);
  }
  else {
    bVar1 = *param_1;
    while (bVar1 != 0) {
      if (bVar1 == 10) {
        fwrite_unlocked(&DAT_0010a004,1,2,*(FILE **)PTR_stdout_0010dfa0);
      }
      else if (bVar1 == 0x5c) {
        fwrite_unlocked(&DAT_0010a007,1,2,*(FILE **)PTR_stdout_0010dfa0);
      }
      else {
        p_Var2 = *(_IO_FILE **)PTR_stdout_0010dfa0;
        pbVar3 = (byte *)p_Var2->_IO_write_ptr;
        if (pbVar3 < p_Var2->_IO_write_end) {
          p_Var2->_IO_write_ptr = (char *)(pbVar3 + 1);
          *pbVar3 = bVar1;
        }
        else {
          __overflow(p_Var2,(uint)bVar1);
        }
      }
      param_1 = param_1 + 1;
      bVar1 = *param_1;
    }
  }
  return;
}

