
void s_errwarn(int err)

{
  char *pcVar1;
  char *format;
  byte bVar2;
  int len;
  
  if (err == 0) {
    pcVar1 = (char *)dcgettext(0,".warning directive invoked in source file",5);
  }
  else {
    pcVar1 = (char *)dcgettext(0,".error directive invoked in source file",5);
  }
  bVar2 = *input_line_pointer;
  if (bVar2 == 0x20) {
    bVar2 = input_line_pointer[1];
    input_line_pointer = input_line_pointer + 1;
  }
  if (is_end_of_line[bVar2] == '\0') {
    if (bVar2 == 0x22) {
      pcVar1 = demand_copy_C_string(&len);
      if (pcVar1 != (char *)0x0) goto LAB_00126967;
    }
    else {
      pcVar1 = ".error";
      if (err == 0) {
        pcVar1 = ".warning";
      }
      format = (char *)dcgettext(0,"%s argument must be a string",5);
      as_bad(format,pcVar1);
      ignore_rest_of_line();
    }
    return;
  }
LAB_00126967:
  if (err == 0) {
    as_warn("%s");
  }
  else {
    as_bad("%s",pcVar1);
  }
  demand_empty_rest_of_line();
  return;
}



void FUN_001268c0(int param_1)

{
  byte bVar1;
  long lVar2;
  undefined8 uVar3;
  char *pcVar4;
  undefined1 local_c [4];
  
  if (param_1 == 0) {
    lVar2 = dcgettext(0,".warning directive invoked in source file",5);
  }
  else {
    lVar2 = dcgettext(0,".error directive invoked in source file",5);
  }
  bVar1 = *DAT_0019d9c0;
  if (bVar1 == 0x20) {
    bVar1 = DAT_0019d9c0[1];
    DAT_0019d9c0 = DAT_0019d9c0 + 1;
  }
  if ((&DAT_00194540)[bVar1] == '\0') {
    if (bVar1 == 0x22) {
      lVar2 = FUN_00126840(local_c);
      if (lVar2 != 0) goto LAB_00126967;
    }
    else {
      pcVar4 = ".error";
      if (param_1 == 0) {
        pcVar4 = ".warning";
      }
      uVar3 = dcgettext(0,"%s argument must be a string",5);
      FUN_0011f6d0(uVar3,pcVar4);
      FUN_00121800();
    }
    return;
  }
LAB_00126967:
  if (param_1 == 0) {
    FUN_0011f500();
  }
  else {
    FUN_0011f6d0("%s",lVar2);
  }
  FUN_00121a20();
  return;
}


PUSH RBX
MOV EDX,0x5
MOV EBX,EDI
SUB RSP,0x10
TEST EDI,EDI
JZ 0x001269a0
LEA RSI,[0x1421c8]
XOR EDI,EDI
CALL 0x0010a1d0
MOV RCX,qword ptr [0x0019d9c0]
MOVZX EDX,byte ptr [RCX]
CMP DL,0x20
JNZ 0x00126900
LEA RDX,[RCX + 0x1]
MOV qword ptr [0x0019d9c0],RDX
MOVZX EDX,byte ptr [RCX + 0x1]
MOVZX ECX,DL
LEA RDI,[0x194540]
CMP byte ptr [RDI + RCX*0x1],0x0
JNZ 0x00126967
CMP DL,0x22
JZ 0x00126958
TEST EBX,EBX
LEA RAX,[0x1426ab]
LEA RBX,[0x1426a4]
MOV EDX,0x5
CMOVZ RBX,RAX
LEA RSI,[0x1426b4]
XOR EDI,EDI
CALL 0x0010a1d0
MOV RDI,RAX
MOV RSI,RBX
XOR EAX,EAX
CALL 0x0011f6d0
CALL 0x00121800
ADD RSP,0x10
POP RBX
RET
LEA RDI,[RSP + 0xc]
CALL 0x00126840
TEST RAX,RAX
JZ 0x0012694e
MOV RSI,RAX
LEA RDI,[0x140ee8]
XOR EAX,EAX
TEST EBX,EBX
JNZ 0x00126990
CALL 0x0011f500
CALL 0x00121a20
ADD RSP,0x10
POP RBX
RET
CALL 0x0011f6d0
JMP 0x0012697c
LEA RSI,[0x1421f0]
XOR EDI,EDI
CALL 0x0010a1d0
JMP 0x001268e2
(translation_unit "void FUN_001268c0(int param_1)\n\n{\n  byte bVar1;\n  long lVar2;\n  undefined8 uVar3;\n  char *pcVar4;\n  undefined1 local_c [4];\n  \n  if (param_1 == 0) {\n    lVar2 = dcgettext(0,".warning directive invoked in source file",5);\n  }\n  else {\n    lVar2 = dcgettext(0,".error directive invoked in source file",5);\n  }\n  bVar1 = *DAT_0019d9c0;\n  if (bVar1 == 0x20) {\n    bVar1 = DAT_0019d9c0[1];\n    DAT_0019d9c0 = DAT_0019d9c0 + 1;\n  }\n  if ((&DAT_00194540)[bVar1] == '\0') {\n    if (bVar1 == 0x22) {\n      lVar2 = FUN_00126840(local_c);\n      if (lVar2 != 0) goto LAB_00126967;\n    }\n    else {\n      pcVar4 = ".error";\n      if (param_1 == 0) {\n        pcVar4 = ".warning";\n      }\n      uVar3 = dcgettext(0,"%s argument must be a string",5);\n      FUN_0011f6d0(uVar3,pcVar4);\n      FUN_00121800();\n    }\n    return;\n  }\nLAB_00126967:\n  if (param_1 == 0) {\n    FUN_0011f500();\n  }\n  else {\n    FUN_0011f6d0("%s",lVar2);\n  }\n  FUN_00121a20();\n  return;\n}\n\n" (function_definition "void FUN_001268c0(int param_1)\n\n{\n  byte bVar1;\n  long lVar2;\n  undefined8 uVar3;\n  char *pcVar4;\n  undefined1 local_c [4];\n  \n  if (param_1 == 0) {\n    lVar2 = dcgettext(0,".warning directive invoked in source file",5);\n  }\n  else {\n    lVar2 = dcgettext(0,".error directive invoked in source file",5);\n  }\n  bVar1 = *DAT_0019d9c0;\n  if (bVar1 == 0x20) {\n    bVar1 = DAT_0019d9c0[1];\n    DAT_0019d9c0 = DAT_0019d9c0 + 1;\n  }\n  if ((&DAT_00194540)[bVar1] == '\0') {\n    if (bVar1 == 0x22) {\n      lVar2 = FUN_00126840(local_c);\n      if (lVar2 != 0) goto LAB_00126967;\n    }\n    else {\n      pcVar4 = ".error";\n      if (param_1 == 0) {\n        pcVar4 = ".warning";\n      }\n      uVar3 = dcgettext(0,"%s argument must be a string",5);\n      FUN_0011f6d0(uVar3,pcVar4);\n      FUN_00121800();\n    }\n    return;\n  }\nLAB_00126967:\n  if (param_1 == 0) {\n    FUN_0011f500();\n  }\n  else {\n    FUN_0011f6d0("%s",lVar2);\n  }\n  FUN_00121a20();\n  return;\n}" primitive_type (function_declarator "FUN_001268c0(int param_1)" identifier (parameter_list "(int param_1)" ( (parameter_declaration "int param_1" primitive_type identifier) ))) (compound_statement "{\n  byte bVar1;\n  long lVar2;\n  undefined8 uVar3;\n  char *pcVar4;\n  undefined1 local_c [4];\n  \n  if (param_1 == 0) {\n    lVar2 = dcgettext(0,".warning directive invoked in source file",5);\n  }\n  else {\n    lVar2 = dcgettext(0,".error directive invoked in source file",5);\n  }\n  bVar1 = *DAT_0019d9c0;\n  if (bVar1 == 0x20) {\n    bVar1 = DAT_0019d9c0[1];\n    DAT_0019d9c0 = DAT_0019d9c0 + 1;\n  }\n  if ((&DAT_00194540)[bVar1] == '\0') {\n    if (bVar1 == 0x22) {\n      lVar2 = FUN_00126840(local_c);\n      if (lVar2 != 0) goto LAB_00126967;\n    }\n    else {\n      pcVar4 = ".error";\n      if (param_1 == 0) {\n        pcVar4 = ".warning";\n      }\n      uVar3 = dcgettext(0,"%s argument must be a string",5);\n      FUN_0011f6d0(uVar3,pcVar4);\n      FUN_00121800();\n    }\n    return;\n  }\nLAB_00126967:\n  if (param_1 == 0) {\n    FUN_0011f500();\n  }\n  else {\n    FUN_0011f6d0("%s",lVar2);\n  }\n  FUN_00121a20();\n  return;\n}" { (declaration "byte bVar1;" type_identifier identifier ;) (declaration "long lVar2;" (sized_type_specifier "long" long) identifier ;) (declaration "undefined8 uVar3;" type_identifier identifier ;) (declaration "char *pcVar4;" primitive_type (pointer_declarator "*pcVar4" * identifier) ;) (declaration "undefined1 local_c [4];" type_identifier (array_declarator "local_c [4]" identifier [ number_literal ]) ;) (if_statement "if (param_1 == 0) {\n    lVar2 = dcgettext(0,".warning directive invoked in source file",5);\n  }\n  else {\n    lVar2 = dcgettext(0,".error directive invoked in source file",5);\n  }" if (parenthesized_expression "(param_1 == 0)" ( (binary_expression "param_1 == 0" identifier == number_literal) )) (compound_statement "{\n    lVar2 = dcgettext(0,".warning directive invoked in source file",5);\n  }" { (expression_statement "lVar2 = dcgettext(0,".warning directive invoked in source file",5);" (assignment_expression "lVar2 = dcgettext(0,".warning directive invoked in source file",5)" identifier = (call_expression "dcgettext(0,".warning directive invoked in source file",5)" identifier (argument_list "(0,".warning directive invoked in source file",5)" ( number_literal , (string_literal "".warning directive invoked in source file"" " string_content ") , number_literal )))) ;) }) (else_clause "else {\n    lVar2 = dcgettext(0,".error directive invoked in source file",5);\n  }" else (compound_statement "{\n    lVar2 = dcgettext(0,".error directive invoked in source file",5);\n  }" { (expression_statement "lVar2 = dcgettext(0,".error directive invoked in source file",5);" (assignment_expression "lVar2 = dcgettext(0,".error directive invoked in source file",5)" identifier = (call_expression "dcgettext(0,".error directive invoked in source file",5)" identifier (argument_list "(0,".error directive invoked in source file",5)" ( number_literal , (string_literal "".error directive invoked in source file"" " string_content ") , number_literal )))) ;) }))) (expression_statement "bVar1 = *DAT_0019d9c0;" (assignment_expression "bVar1 = *DAT_0019d9c0" identifier = (pointer_expression "*DAT_0019d9c0" * identifier)) ;) (if_statement "if (bVar1 == 0x20) {\n    bVar1 = DAT_0019d9c0[1];\n    DAT_0019d9c0 = DAT_0019d9c0 + 1;\n  }" if (parenthesized_expression "(bVar1 == 0x20)" ( (binary_expression "bVar1 == 0x20" identifier == number_literal) )) (compound_statement "{\n    bVar1 = DAT_0019d9c0[1];\n    DAT_0019d9c0 = DAT_0019d9c0 + 1;\n  }" { (expression_statement "bVar1 = DAT_0019d9c0[1];" (assignment_expression "bVar1 = DAT_0019d9c0[1]" identifier = (subscript_expression "DAT_0019d9c0[1]" identifier [ number_literal ])) ;) (expression_statement "DAT_0019d9c0 = DAT_0019d9c0 + 1;" (assignment_expression "DAT_0019d9c0 = DAT_0019d9c0 + 1" identifier = (binary_expression "DAT_0019d9c0 + 1" identifier + number_literal)) ;) })) (if_statement "if ((&DAT_00194540)[bVar1] == '\0') {\n    if (bVar1 == 0x22) {\n      lVar2 = FUN_00126840(local_c);\n      if (lVar2 != 0) goto LAB_00126967;\n    }\n    else {\n      pcVar4 = ".error";\n      if (param_1 == 0) {\n        pcVar4 = ".warning";\n      }\n      uVar3 = dcgettext(0,"%s argument must be a string",5);\n      FUN_0011f6d0(uVar3,pcVar4);\n      FUN_00121800();\n    }\n    return;\n  }" if (parenthesized_expression "((&DAT_00194540)[bVar1] == '\0')" ( (binary_expression "(&DAT_00194540)[bVar1] == '\0'" (subscript_expression "(&DAT_00194540)[bVar1]" (parenthesized_expression "(&DAT_00194540)" ( (pointer_expression "&DAT_00194540" & identifier) )) [ identifier ]) == (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n    if (bVar1 == 0x22) {\n      lVar2 = FUN_00126840(local_c);\n      if (lVar2 != 0) goto LAB_00126967;\n    }\n    else {\n      pcVar4 = ".error";\n      if (param_1 == 0) {\n        pcVar4 = ".warning";\n      }\n      uVar3 = dcgettext(0,"%s argument must be a string",5);\n      FUN_0011f6d0(uVar3,pcVar4);\n      FUN_00121800();\n    }\n    return;\n  }" { (if_statement "if (bVar1 == 0x22) {\n      lVar2 = FUN_00126840(local_c);\n      if (lVar2 != 0) goto LAB_00126967;\n    }\n    else {\n      pcVar4 = ".error";\n      if (param_1 == 0) {\n        pcVar4 = ".warning";\n      }\n      uVar3 = dcgettext(0,"%s argument must be a string",5);\n      FUN_0011f6d0(uVar3,pcVar4);\n      FUN_00121800();\n    }" if (parenthesized_expression "(bVar1 == 0x22)" ( (binary_expression "bVar1 == 0x22" identifier == number_literal) )) (compound_statement "{\n      lVar2 = FUN_00126840(local_c);\n      if (lVar2 != 0) goto LAB_00126967;\n    }" { (expression_statement "lVar2 = FUN_00126840(local_c);" (assignment_expression "lVar2 = FUN_00126840(local_c)" identifier = (call_expression "FUN_00126840(local_c)" identifier (argument_list "(local_c)" ( identifier )))) ;) (if_statement "if (lVar2 != 0) goto LAB_00126967;" if (parenthesized_expression "(lVar2 != 0)" ( (binary_expression "lVar2 != 0" identifier != number_literal) )) (goto_statement "goto LAB_00126967;" goto statement_identifier ;)) }) (else_clause "else {\n      pcVar4 = ".error";\n      if (param_1 == 0) {\n        pcVar4 = ".warning";\n      }\n      uVar3 = dcgettext(0,"%s argument must be a string",5);\n      FUN_0011f6d0(uVar3,pcVar4);\n      FUN_00121800();\n    }" else (compound_statement "{\n      pcVar4 = ".error";\n      if (param_1 == 0) {\n        pcVar4 = ".warning";\n      }\n      uVar3 = dcgettext(0,"%s argument must be a string",5);\n      FUN_0011f6d0(uVar3,pcVar4);\n      FUN_00121800();\n    }" { (expression_statement "pcVar4 = ".error";" (assignment_expression "pcVar4 = ".error"" identifier = (string_literal "".error"" " string_content ")) ;) (if_statement "if (param_1 == 0) {\n        pcVar4 = ".warning";\n      }" if (parenthesized_expression "(param_1 == 0)" ( (binary_expression "param_1 == 0" identifier == number_literal) )) (compound_statement "{\n        pcVar4 = ".warning";\n      }" { (expression_statement "pcVar4 = ".warning";" (assignment_expression "pcVar4 = ".warning"" identifier = (string_literal "".warning"" " string_content ")) ;) })) (expression_statement "uVar3 = dcgettext(0,"%s argument must be a string",5);" (assignment_expression "uVar3 = dcgettext(0,"%s argument must be a string",5)" identifier = (call_expression "dcgettext(0,"%s argument must be a string",5)" identifier (argument_list "(0,"%s argument must be a string",5)" ( number_literal , (string_literal ""%s argument must be a string"" " string_content ") , number_literal )))) ;) (expression_statement "FUN_0011f6d0(uVar3,pcVar4);" (call_expression "FUN_0011f6d0(uVar3,pcVar4)" identifier (argument_list "(uVar3,pcVar4)" ( identifier , identifier ))) ;) (expression_statement "FUN_00121800();" (call_expression "FUN_00121800()" identifier (argument_list "()" ( ))) ;) }))) (return_statement "return;" return ;) })) (labeled_statement "LAB_00126967:\n  if (param_1 == 0) {\n    FUN_0011f500();\n  }\n  else {\n    FUN_0011f6d0("%s",lVar2);\n  }" statement_identifier : (if_statement "if (param_1 == 0) {\n    FUN_0011f500();\n  }\n  else {\n    FUN_0011f6d0("%s",lVar2);\n  }" if (parenthesized_expression "(param_1 == 0)" ( (binary_expression "param_1 == 0" identifier == number_literal) )) (compound_statement "{\n    FUN_0011f500();\n  }" { (expression_statement "FUN_0011f500();" (call_expression "FUN_0011f500()" identifier (argument_list "()" ( ))) ;) }) (else_clause "else {\n    FUN_0011f6d0("%s",lVar2);\n  }" else (compound_statement "{\n    FUN_0011f6d0("%s",lVar2);\n  }" { (expression_statement "FUN_0011f6d0("%s",lVar2);" (call_expression "FUN_0011f6d0("%s",lVar2)" identifier (argument_list "("%s",lVar2)" ( (string_literal ""%s"" " string_content ") , identifier ))) ;) })))) (expression_statement "FUN_00121a20();" (call_expression "FUN_00121a20()" identifier (argument_list "()" ( ))) ;) (return_statement "return;" return ;) })))
(translation_unit "void s_errwarn(int err)\n\n{\n  char *pcVar1;\n  char *format;\n  byte bVar2;\n  int len;\n  \n  if (err == 0) {\n    pcVar1 = (char *)dcgettext(0,".warning directive invoked in source file",5);\n  }\n  else {\n    pcVar1 = (char *)dcgettext(0,".error directive invoked in source file",5);\n  }\n  bVar2 = *input_line_pointer;\n  if (bVar2 == 0x20) {\n    bVar2 = input_line_pointer[1];\n    input_line_pointer = input_line_pointer + 1;\n  }\n  if (is_end_of_line[bVar2] == '\0') {\n    if (bVar2 == 0x22) {\n      pcVar1 = demand_copy_C_string(&len);\n      if (pcVar1 != (char *)0x0) goto LAB_00126967;\n    }\n    else {\n      pcVar1 = ".error";\n      if (err == 0) {\n        pcVar1 = ".warning";\n      }\n      format = (char *)dcgettext(0,"%s argument must be a string",5);\n      as_bad(format,pcVar1);\n      ignore_rest_of_line();\n    }\n    return;\n  }\nLAB_00126967:\n  if (err == 0) {\n    as_warn("%s");\n  }\n  else {\n    as_bad("%s",pcVar1);\n  }\n  demand_empty_rest_of_line();\n  return;\n}\n\n" (function_definition "void s_errwarn(int err)\n\n{\n  char *pcVar1;\n  char *format;\n  byte bVar2;\n  int len;\n  \n  if (err == 0) {\n    pcVar1 = (char *)dcgettext(0,".warning directive invoked in source file",5);\n  }\n  else {\n    pcVar1 = (char *)dcgettext(0,".error directive invoked in source file",5);\n  }\n  bVar2 = *input_line_pointer;\n  if (bVar2 == 0x20) {\n    bVar2 = input_line_pointer[1];\n    input_line_pointer = input_line_pointer + 1;\n  }\n  if (is_end_of_line[bVar2] == '\0') {\n    if (bVar2 == 0x22) {\n      pcVar1 = demand_copy_C_string(&len);\n      if (pcVar1 != (char *)0x0) goto LAB_00126967;\n    }\n    else {\n      pcVar1 = ".error";\n      if (err == 0) {\n        pcVar1 = ".warning";\n      }\n      format = (char *)dcgettext(0,"%s argument must be a string",5);\n      as_bad(format,pcVar1);\n      ignore_rest_of_line();\n    }\n    return;\n  }\nLAB_00126967:\n  if (err == 0) {\n    as_warn("%s");\n  }\n  else {\n    as_bad("%s",pcVar1);\n  }\n  demand_empty_rest_of_line();\n  return;\n}" primitive_type (function_declarator "s_errwarn(int err)" identifier (parameter_list "(int err)" ( (parameter_declaration "int err" primitive_type identifier) ))) (compound_statement "{\n  char *pcVar1;\n  char *format;\n  byte bVar2;\n  int len;\n  \n  if (err == 0) {\n    pcVar1 = (char *)dcgettext(0,".warning directive invoked in source file",5);\n  }\n  else {\n    pcVar1 = (char *)dcgettext(0,".error directive invoked in source file",5);\n  }\n  bVar2 = *input_line_pointer;\n  if (bVar2 == 0x20) {\n    bVar2 = input_line_pointer[1];\n    input_line_pointer = input_line_pointer + 1;\n  }\n  if (is_end_of_line[bVar2] == '\0') {\n    if (bVar2 == 0x22) {\n      pcVar1 = demand_copy_C_string(&len);\n      if (pcVar1 != (char *)0x0) goto LAB_00126967;\n    }\n    else {\n      pcVar1 = ".error";\n      if (err == 0) {\n        pcVar1 = ".warning";\n      }\n      format = (char *)dcgettext(0,"%s argument must be a string",5);\n      as_bad(format,pcVar1);\n      ignore_rest_of_line();\n    }\n    return;\n  }\nLAB_00126967:\n  if (err == 0) {\n    as_warn("%s");\n  }\n  else {\n    as_bad("%s",pcVar1);\n  }\n  demand_empty_rest_of_line();\n  return;\n}" { (declaration "char *pcVar1;" primitive_type (pointer_declarator "*pcVar1" * identifier) ;) (declaration "char *format;" primitive_type (pointer_declarator "*format" * identifier) ;) (declaration "byte bVar2;" type_identifier identifier ;) (declaration "int len;" primitive_type identifier ;) (if_statement "if (err == 0) {\n    pcVar1 = (char *)dcgettext(0,".warning directive invoked in source file",5);\n  }\n  else {\n    pcVar1 = (char *)dcgettext(0,".error directive invoked in source file",5);\n  }" if (parenthesized_expression "(err == 0)" ( (binary_expression "err == 0" identifier == number_literal) )) (compound_statement "{\n    pcVar1 = (char *)dcgettext(0,".warning directive invoked in source file",5);\n  }" { (expression_statement "pcVar1 = (char *)dcgettext(0,".warning directive invoked in source file",5);" (assignment_expression "pcVar1 = (char *)dcgettext(0,".warning directive invoked in source file",5)" identifier = (cast_expression "(char *)dcgettext(0,".warning directive invoked in source file",5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,".warning directive invoked in source file",5)" identifier (argument_list "(0,".warning directive invoked in source file",5)" ( number_literal , (string_literal "".warning directive invoked in source file"" " string_content ") , number_literal ))))) ;) }) (else_clause "else {\n    pcVar1 = (char *)dcgettext(0,".error directive invoked in source file",5);\n  }" else (compound_statement "{\n    pcVar1 = (char *)dcgettext(0,".error directive invoked in source file",5);\n  }" { (expression_statement "pcVar1 = (char *)dcgettext(0,".error directive invoked in source file",5);" (assignment_expression "pcVar1 = (char *)dcgettext(0,".error directive invoked in source file",5)" identifier = (cast_expression "(char *)dcgettext(0,".error directive invoked in source file",5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,".error directive invoked in source file",5)" identifier (argument_list "(0,".error directive invoked in source file",5)" ( number_literal , (string_literal "".error directive invoked in source file"" " string_content ") , number_literal ))))) ;) }))) (expression_statement "bVar2 = *input_line_pointer;" (assignment_expression "bVar2 = *input_line_pointer" identifier = (pointer_expression "*input_line_pointer" * identifier)) ;) (if_statement "if (bVar2 == 0x20) {\n    bVar2 = input_line_pointer[1];\n    input_line_pointer = input_line_pointer + 1;\n  }" if (parenthesized_expression "(bVar2 == 0x20)" ( (binary_expression "bVar2 == 0x20" identifier == number_literal) )) (compound_statement "{\n    bVar2 = input_line_pointer[1];\n    input_line_pointer = input_line_pointer + 1;\n  }" { (expression_statement "bVar2 = input_line_pointer[1];" (assignment_expression "bVar2 = input_line_pointer[1]" identifier = (subscript_expression "input_line_pointer[1]" identifier [ number_literal ])) ;) (expression_statement "input_line_pointer = input_line_pointer + 1;" (assignment_expression "input_line_pointer = input_line_pointer + 1" identifier = (binary_expression "input_line_pointer + 1" identifier + number_literal)) ;) })) (if_statement "if (is_end_of_line[bVar2] == '\0') {\n    if (bVar2 == 0x22) {\n      pcVar1 = demand_copy_C_string(&len);\n      if (pcVar1 != (char *)0x0) goto LAB_00126967;\n    }\n    else {\n      pcVar1 = ".error";\n      if (err == 0) {\n        pcVar1 = ".warning";\n      }\n      format = (char *)dcgettext(0,"%s argument must be a string",5);\n      as_bad(format,pcVar1);\n      ignore_rest_of_line();\n    }\n    return;\n  }" if (parenthesized_expression "(is_end_of_line[bVar2] == '\0')" ( (binary_expression "is_end_of_line[bVar2] == '\0'" (subscript_expression "is_end_of_line[bVar2]" identifier [ identifier ]) == (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n    if (bVar2 == 0x22) {\n      pcVar1 = demand_copy_C_string(&len);\n      if (pcVar1 != (char *)0x0) goto LAB_00126967;\n    }\n    else {\n      pcVar1 = ".error";\n      if (err == 0) {\n        pcVar1 = ".warning";\n      }\n      format = (char *)dcgettext(0,"%s argument must be a string",5);\n      as_bad(format,pcVar1);\n      ignore_rest_of_line();\n    }\n    return;\n  }" { (if_statement "if (bVar2 == 0x22) {\n      pcVar1 = demand_copy_C_string(&len);\n      if (pcVar1 != (char *)0x0) goto LAB_00126967;\n    }\n    else {\n      pcVar1 = ".error";\n      if (err == 0) {\n        pcVar1 = ".warning";\n      }\n      format = (char *)dcgettext(0,"%s argument must be a string",5);\n      as_bad(format,pcVar1);\n      ignore_rest_of_line();\n    }" if (parenthesized_expression "(bVar2 == 0x22)" ( (binary_expression "bVar2 == 0x22" identifier == number_literal) )) (compound_statement "{\n      pcVar1 = demand_copy_C_string(&len);\n      if (pcVar1 != (char *)0x0) goto LAB_00126967;\n    }" { (expression_statement "pcVar1 = demand_copy_C_string(&len);" (assignment_expression "pcVar1 = demand_copy_C_string(&len)" identifier = (call_expression "demand_copy_C_string(&len)" identifier (argument_list "(&len)" ( (pointer_expression "&len" & identifier) )))) ;) (if_statement "if (pcVar1 != (char *)0x0) goto LAB_00126967;" if (parenthesized_expression "(pcVar1 != (char *)0x0)" ( (binary_expression "pcVar1 != (char *)0x0" identifier != (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (goto_statement "goto LAB_00126967;" goto statement_identifier ;)) }) (else_clause "else {\n      pcVar1 = ".error";\n      if (err == 0) {\n        pcVar1 = ".warning";\n      }\n      format = (char *)dcgettext(0,"%s argument must be a string",5);\n      as_bad(format,pcVar1);\n      ignore_rest_of_line();\n    }" else (compound_statement "{\n      pcVar1 = ".error";\n      if (err == 0) {\n        pcVar1 = ".warning";\n      }\n      format = (char *)dcgettext(0,"%s argument must be a string",5);\n      as_bad(format,pcVar1);\n      ignore_rest_of_line();\n    }" { (expression_statement "pcVar1 = ".error";" (assignment_expression "pcVar1 = ".error"" identifier = (string_literal "".error"" " string_content ")) ;) (if_statement "if (err == 0) {\n        pcVar1 = ".warning";\n      }" if (parenthesized_expression "(err == 0)" ( (binary_expression "err == 0" identifier == number_literal) )) (compound_statement "{\n        pcVar1 = ".warning";\n      }" { (expression_statement "pcVar1 = ".warning";" (assignment_expression "pcVar1 = ".warning"" identifier = (string_literal "".warning"" " string_content ")) ;) })) (expression_statement "format = (char *)dcgettext(0,"%s argument must be a string",5);" (assignment_expression "format = (char *)dcgettext(0,"%s argument must be a string",5)" identifier = (cast_expression "(char *)dcgettext(0,"%s argument must be a string",5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"%s argument must be a string",5)" identifier (argument_list "(0,"%s argument must be a string",5)" ( number_literal , (string_literal ""%s argument must be a string"" " string_content ") , number_literal ))))) ;) (expression_statement "as_bad(format,pcVar1);" (call_expression "as_bad(format,pcVar1)" identifier (argument_list "(format,pcVar1)" ( identifier , identifier ))) ;) (expression_statement "ignore_rest_of_line();" (call_expression "ignore_rest_of_line()" identifier (argument_list "()" ( ))) ;) }))) (return_statement "return;" return ;) })) (labeled_statement "LAB_00126967:\n  if (err == 0) {\n    as_warn("%s");\n  }\n  else {\n    as_bad("%s",pcVar1);\n  }" statement_identifier : (if_statement "if (err == 0) {\n    as_warn("%s");\n  }\n  else {\n    as_bad("%s",pcVar1);\n  }" if (parenthesized_expression "(err == 0)" ( (binary_expression "err == 0" identifier == number_literal) )) (compound_statement "{\n    as_warn("%s");\n  }" { (expression_statement "as_warn("%s");" (call_expression "as_warn("%s")" identifier (argument_list "("%s")" ( (string_literal ""%s"" " string_content ") ))) ;) }) (else_clause "else {\n    as_bad("%s",pcVar1);\n  }" else (compound_statement "{\n    as_bad("%s",pcVar1);\n  }" { (expression_statement "as_bad("%s",pcVar1);" (call_expression "as_bad("%s",pcVar1)" identifier (argument_list "("%s",pcVar1)" ( (string_literal ""%s"" " string_content ") , identifier ))) ;) })))) (expression_statement "demand_empty_rest_of_line();" (call_expression "demand_empty_rest_of_line()" identifier (argument_list "()" ( ))) ;) (return_statement "return;" return ;) })))
(translation_unit "void FUN_001268c0(int param_1)\n\n{\n  byte bVar1;\n  long lVar2;\n  undefined8 uVar3;\n  char *pcVar4;\n  undefined1 local_c [4];\n  \n  if (param_1 == 0) {\n    lVar2 = dcgettext(0,".warning directive invoked in source file",5);\n  }\n  else {\n    lVar2 = dcgettext(0,".error directive invoked in source file",5);\n  }\n  bVar1 = *DAT_0019d9c0;\n  if (bVar1 == 0x20) {\n    bVar1 = DAT_0019d9c0[1];\n    DAT_0019d9c0 = DAT_0019d9c0 + 1;\n  }\n  if ((&DAT_00194540)[bVar1] == '\0') {\n    if (bVar1 == 0x22) {\n      lVar2 = FUN_00126840(local_c);\n      if (lVar2 != 0) goto LAB_00126967;\n    }\n    else {\n      pcVar4 = ".error";\n      if (param_1 == 0) {\n        pcVar4 = ".warning";\n      }\n      uVar3 = dcgettext(0,"%s argument must be a string",5);\n      FUN_0011f6d0(uVar3,pcVar4);\n      FUN_00121800();\n    }\n    return;\n  }\nLAB_00126967:\n  if (param_1 == 0) {\n    FUN_0011f500();\n  }\n  else {\n    FUN_0011f6d0("%s",lVar2);\n  }\n  FUN_00121a20();\n  return;\n}\n\n" (function_definition "void FUN_001268c0(int param_1)\n\n{\n  byte bVar1;\n  long lVar2;\n  undefined8 uVar3;\n  char *pcVar4;\n  undefined1 local_c [4];\n  \n  if (param_1 == 0) {\n    lVar2 = dcgettext(0,".warning directive invoked in source file",5);\n  }\n  else {\n    lVar2 = dcgettext(0,".error directive invoked in source file",5);\n  }\n  bVar1 = *DAT_0019d9c0;\n  if (bVar1 == 0x20) {\n    bVar1 = DAT_0019d9c0[1];\n    DAT_0019d9c0 = DAT_0019d9c0 + 1;\n  }\n  if ((&DAT_00194540)[bVar1] == '\0') {\n    if (bVar1 == 0x22) {\n      lVar2 = FUN_00126840(local_c);\n      if (lVar2 != 0) goto LAB_00126967;\n    }\n    else {\n      pcVar4 = ".error";\n      if (param_1 == 0) {\n        pcVar4 = ".warning";\n      }\n      uVar3 = dcgettext(0,"%s argument must be a string",5);\n      FUN_0011f6d0(uVar3,pcVar4);\n      FUN_00121800();\n    }\n    return;\n  }\nLAB_00126967:\n  if (param_1 == 0) {\n    FUN_0011f500();\n  }\n  else {\n    FUN_0011f6d0("%s",lVar2);\n  }\n  FUN_00121a20();\n  return;\n}" primitive_type (function_declarator "FUN_001268c0(int param_1)" identifier (parameter_list "(int param_1)" ( (parameter_declaration "int param_1" primitive_type identifier) ))) (compound_statement "{\n  byte bVar1;\n  long lVar2;\n  undefined8 uVar3;\n  char *pcVar4;\n  undefined1 local_c [4];\n  \n  if (param_1 == 0) {\n    lVar2 = dcgettext(0,".warning directive invoked in source file",5);\n  }\n  else {\n    lVar2 = dcgettext(0,".error directive invoked in source file",5);\n  }\n  bVar1 = *DAT_0019d9c0;\n  if (bVar1 == 0x20) {\n    bVar1 = DAT_0019d9c0[1];\n    DAT_0019d9c0 = DAT_0019d9c0 + 1;\n  }\n  if ((&DAT_00194540)[bVar1] == '\0') {\n    if (bVar1 == 0x22) {\n      lVar2 = FUN_00126840(local_c);\n      if (lVar2 != 0) goto LAB_00126967;\n    }\n    else {\n      pcVar4 = ".error";\n      if (param_1 == 0) {\n        pcVar4 = ".warning";\n      }\n      uVar3 = dcgettext(0,"%s argument must be a string",5);\n      FUN_0011f6d0(uVar3,pcVar4);\n      FUN_00121800();\n    }\n    return;\n  }\nLAB_00126967:\n  if (param_1 == 0) {\n    FUN_0011f500();\n  }\n  else {\n    FUN_0011f6d0("%s",lVar2);\n  }\n  FUN_00121a20();\n  return;\n}" { (declaration "byte bVar1;" type_identifier identifier ;) (declaration "long lVar2;" (sized_type_specifier "long" long) identifier ;) (declaration "undefined8 uVar3;" type_identifier identifier ;) (declaration "char *pcVar4;" primitive_type (pointer_declarator "*pcVar4" * identifier) ;) (declaration "undefined1 local_c [4];" type_identifier (array_declarator "local_c [4]" identifier [ number_literal ]) ;) (if_statement "if (param_1 == 0) {\n    lVar2 = dcgettext(0,".warning directive invoked in source file",5);\n  }\n  else {\n    lVar2 = dcgettext(0,".error directive invoked in source file",5);\n  }" if (parenthesized_expression "(param_1 == 0)" ( (binary_expression "param_1 == 0" identifier == number_literal) )) (compound_statement "{\n    lVar2 = dcgettext(0,".warning directive invoked in source file",5);\n  }" { (expression_statement "lVar2 = dcgettext(0,".warning directive invoked in source file",5);" (assignment_expression "lVar2 = dcgettext(0,".warning directive invoked in source file",5)" identifier = (call_expression "dcgettext(0,".warning directive invoked in source file",5)" identifier (argument_list "(0,".warning directive invoked in source file",5)" ( number_literal , (string_literal "".warning directive invoked in source file"" " string_content ") , number_literal )))) ;) }) (else_clause "else {\n    lVar2 = dcgettext(0,".error directive invoked in source file",5);\n  }" else (compound_statement "{\n    lVar2 = dcgettext(0,".error directive invoked in source file",5);\n  }" { (expression_statement "lVar2 = dcgettext(0,".error directive invoked in source file",5);" (assignment_expression "lVar2 = dcgettext(0,".error directive invoked in source file",5)" identifier = (call_expression "dcgettext(0,".error directive invoked in source file",5)" identifier (argument_list "(0,".error directive invoked in source file",5)" ( number_literal , (string_literal "".error directive invoked in source file"" " string_content ") , number_literal )))) ;) }))) (expression_statement "bVar1 = *DAT_0019d9c0;" (assignment_expression "bVar1 = *DAT_0019d9c0" identifier = (pointer_expression "*DAT_0019d9c0" * identifier)) ;) (if_statement "if (bVar1 == 0x20) {\n    bVar1 = DAT_0019d9c0[1];\n    DAT_0019d9c0 = DAT_0019d9c0 + 1;\n  }" if (parenthesized_expression "(bVar1 == 0x20)" ( (binary_expression "bVar1 == 0x20" identifier == number_literal) )) (compound_statement "{\n    bVar1 = DAT_0019d9c0[1];\n    DAT_0019d9c0 = DAT_0019d9c0 + 1;\n  }" { (expression_statement "bVar1 = DAT_0019d9c0[1];" (assignment_expression "bVar1 = DAT_0019d9c0[1]" identifier = (subscript_expression "DAT_0019d9c0[1]" identifier [ number_literal ])) ;) (expression_statement "DAT_0019d9c0 = DAT_0019d9c0 + 1;" (assignment_expression "DAT_0019d9c0 = DAT_0019d9c0 + 1" identifier = (binary_expression "DAT_0019d9c0 + 1" identifier + number_literal)) ;) })) (if_statement "if ((&DAT_00194540)[bVar1] == '\0') {\n    if (bVar1 == 0x22) {\n      lVar2 = FUN_00126840(local_c);\n      if (lVar2 != 0) goto LAB_00126967;\n    }\n    else {\n      pcVar4 = ".error";\n      if (param_1 == 0) {\n        pcVar4 = ".warning";\n      }\n      uVar3 = dcgettext(0,"%s argument must be a string",5);\n      FUN_0011f6d0(uVar3,pcVar4);\n      FUN_00121800();\n    }\n    return;\n  }" if (parenthesized_expression "((&DAT_00194540)[bVar1] == '\0')" ( (binary_expression "(&DAT_00194540)[bVar1] == '\0'" (subscript_expression "(&DAT_00194540)[bVar1]" (parenthesized_expression "(&DAT_00194540)" ( (pointer_expression "&DAT_00194540" & identifier) )) [ identifier ]) == (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n    if (bVar1 == 0x22) {\n      lVar2 = FUN_00126840(local_c);\n      if (lVar2 != 0) goto LAB_00126967;\n    }\n    else {\n      pcVar4 = ".error";\n      if (param_1 == 0) {\n        pcVar4 = ".warning";\n      }\n      uVar3 = dcgettext(0,"%s argument must be a string",5);\n      FUN_0011f6d0(uVar3,pcVar4);\n      FUN_00121800();\n    }\n    return;\n  }" { (if_statement "if (bVar1 == 0x22) {\n      lVar2 = FUN_00126840(local_c);\n      if (lVar2 != 0) goto LAB_00126967;\n    }\n    else {\n      pcVar4 = ".error";\n      if (param_1 == 0) {\n        pcVar4 = ".warning";\n      }\n      uVar3 = dcgettext(0,"%s argument must be a string",5);\n      FUN_0011f6d0(uVar3,pcVar4);\n      FUN_00121800();\n    }" if (parenthesized_expression "(bVar1 == 0x22)" ( (binary_expression "bVar1 == 0x22" identifier == number_literal) )) (compound_statement "{\n      lVar2 = FUN_00126840(local_c);\n      if (lVar2 != 0) goto LAB_00126967;\n    }" { (expression_statement "lVar2 = FUN_00126840(local_c);" (assignment_expression "lVar2 = FUN_00126840(local_c)" identifier = (call_expression "FUN_00126840(local_c)" identifier (argument_list "(local_c)" ( identifier )))) ;) (if_statement "if (lVar2 != 0) goto LAB_00126967;" if (parenthesized_expression "(lVar2 != 0)" ( (binary_expression "lVar2 != 0" identifier != number_literal) )) (goto_statement "goto LAB_00126967;" goto statement_identifier ;)) }) (else_clause "else {\n      pcVar4 = ".error";\n      if (param_1 == 0) {\n        pcVar4 = ".warning";\n      }\n      uVar3 = dcgettext(0,"%s argument must be a string",5);\n      FUN_0011f6d0(uVar3,pcVar4);\n      FUN_00121800();\n    }" else (compound_statement "{\n      pcVar4 = ".error";\n      if (param_1 == 0) {\n        pcVar4 = ".warning";\n      }\n      uVar3 = dcgettext(0,"%s argument must be a string",5);\n      FUN_0011f6d0(uVar3,pcVar4);\n      FUN_00121800();\n    }" { (expression_statement "pcVar4 = ".error";" (assignment_expression "pcVar4 = ".error"" identifier = (string_literal "".error"" " string_content ")) ;) (if_statement "if (param_1 == 0) {\n        pcVar4 = ".warning";\n      }" if (parenthesized_expression "(param_1 == 0)" ( (binary_expression "param_1 == 0" identifier == number_literal) )) (compound_statement "{\n        pcVar4 = ".warning";\n      }" { (expression_statement "pcVar4 = ".warning";" (assignment_expression "pcVar4 = ".warning"" identifier = (string_literal "".warning"" " string_content ")) ;) })) (expression_statement "uVar3 = dcgettext(0,"%s argument must be a string",5);" (assignment_expression "uVar3 = dcgettext(0,"%s argument must be a string",5)" identifier = (call_expression "dcgettext(0,"%s argument must be a string",5)" identifier (argument_list "(0,"%s argument must be a string",5)" ( number_literal , (string_literal ""%s argument must be a string"" " string_content ") , number_literal )))) ;) (expression_statement "FUN_0011f6d0(uVar3,pcVar4);" (call_expression "FUN_0011f6d0(uVar3,pcVar4)" identifier (argument_list "(uVar3,pcVar4)" ( identifier , identifier ))) ;) (expression_statement "FUN_00121800();" (call_expression "FUN_00121800()" identifier (argument_list "()" ( ))) ;) }))) (return_statement "return;" return ;) })) (labeled_statement "LAB_00126967:\n  if (param_1 == 0) {\n    FUN_0011f500();\n  }\n  else {\n    FUN_0011f6d0("%s",lVar2);\n  }" statement_identifier : (if_statement "if (param_1 == 0) {\n    FUN_0011f500();\n  }\n  else {\n    FUN_0011f6d0("%s",lVar2);\n  }" if (parenthesized_expression "(param_1 == 0)" ( (binary_expression "param_1 == 0" identifier == number_literal) )) (compound_statement "{\n    FUN_0011f500();\n  }" { (expression_statement "FUN_0011f500();" (call_expression "FUN_0011f500()" identifier (argument_list "()" ( ))) ;) }) (else_clause "else {\n    FUN_0011f6d0("%s",lVar2);\n  }" else (compound_statement "{\n    FUN_0011f6d0("%s",lVar2);\n  }" { (expression_statement "FUN_0011f6d0("%s",lVar2);" (call_expression "FUN_0011f6d0("%s",lVar2)" identifier (argument_list "("%s",lVar2)" ( (string_literal ""%s"" " string_content ") , identifier ))) ;) })))) (expression_statement "FUN_00121a20();" (call_expression "FUN_00121a20()" identifier (argument_list "()" ( ))) ;) (return_statement "return;" return ;) })))
(translation_unit (function_definition TYPE (function_declarator IDENT (parameter_list ( (parameter_declaration TYPE IDENT) ))) (compound_statement { (declaration TYPE IDENT ;) (declaration (sized_type_specifier long) IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE (array_declarator IDENT [ LIT ]) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( LIT , (string_literal " string_content ") , LIT )))) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( LIT , (string_literal " string_content ") , LIT )))) ;) }))) (expression_statement (assignment_expression IDENT = (pointer_expression * IDENT)) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (subscript_expression IDENT [ LIT ])) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) })) (if_statement if (parenthesized_expression ( (binary_expression (subscript_expression (parenthesized_expression ( (pointer_expression & IDENT) )) [ IDENT ]) == (char_literal ' escape_sequence ')) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (goto_statement goto statement_identifier ;)) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = (string_literal " string_content ")) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (string_literal " string_content ")) ;) })) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( LIT , (string_literal " string_content ") , LIT )))) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT , IDENT ))) ;) (expression_statement (call_expression IDENT (argument_list ( ))) ;) }))) (return_statement return ;) })) (labeled_statement statement_identifier : (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (call_expression IDENT (argument_list ( ))) ;) }) (else_clause else (compound_statement { (expression_statement (call_expression IDENT (argument_list ( (string_literal " string_content ") , IDENT ))) ;) })))) (expression_statement (call_expression IDENT (argument_list ( ))) ;) (return_statement return ;) })))
(function_definition "void FUN_001268c0(int param_1)\n\n{\n  byte bVar1;\n  long lVar2;\n  undefined8 uVar3;\n  char *pcVar4;\n  undefined1 local_c [4];\n  \n  if (param_1 == 0) {\n    lVar2 = dcgettext(0,".warning directive invoked in source file",5);\n  }\n  else {\n    lVar2 = dcgettext(0,".error directive invoked in source file",5);\n  }\n  bVar1 = *DAT_0019d9c0;\n  if (bVar1 == 0x20) {\n    bVar1 = DAT_0019d9c0[1];\n    DAT_0019d9c0 = DAT_0019d9c0 + 1;\n  }\n  if ((&DAT_00194540)[bVar1] == '\0') {\n    if (bVar1 == 0x22) {\n      lVar2 = FUN_00126840(local_c);\n      if (lVar2 != 0) goto LAB_00126967;\n    }\n    else {\n      pcVar4 = ".error";\n      if (param_1 == 0) {\n        pcVar4 = ".warning";\n      }\n      uVar3 = dcgettext(0,"%s argument must be a string",5);\n      FUN_0011f6d0(uVar3,pcVar4);\n      FUN_00121800();\n    }\n    return;\n  }\nLAB_00126967:\n  if (param_1 == 0) {\n    FUN_0011f500();\n  }\n  else {\n    FUN_0011f6d0("%s",lVar2);\n  }\n  FUN_00121a20();\n  return;\n}" (primitive_type "void") (function_declarator "FUN_001268c0(int param_1)" (identifier "FUN_001268c0") (parameter_list "(int param_1)" (( "(") (parameter_declaration "int param_1" (primitive_type "int") (identifier "param_1")) () ")"))) (compound_statement "{\n  byte bVar1;\n  long lVar2;\n  undefined8 uVar3;\n  char *pcVar4;\n  undefined1 local_c [4];\n  \n  if (param_1 == 0) {\n    lVar2 = dcgettext(0,".warning directive invoked in source file",5);\n  }\n  else {\n    lVar2 = dcgettext(0,".error directive invoked in source file",5);\n  }\n  bVar1 = *DAT_0019d9c0;\n  if (bVar1 == 0x20) {\n    bVar1 = DAT_0019d9c0[1];\n    DAT_0019d9c0 = DAT_0019d9c0 + 1;\n  }\n  if ((&DAT_00194540)[bVar1] == '\0') {\n    if (bVar1 == 0x22) {\n      lVar2 = FUN_00126840(local_c);\n      if (lVar2 != 0) goto LAB_00126967;\n    }\n    else {\n      pcVar4 = ".error";\n      if (param_1 == 0) {\n        pcVar4 = ".warning";\n      }\n      uVar3 = dcgettext(0,"%s argument must be a string",5);\n      FUN_0011f6d0(uVar3,pcVar4);\n      FUN_00121800();\n    }\n    return;\n  }\nLAB_00126967:\n  if (param_1 == 0) {\n    FUN_0011f500();\n  }\n  else {\n    FUN_0011f6d0("%s",lVar2);\n  }\n  FUN_00121a20();\n  return;\n}" ({ "{") (declaration "byte bVar1;" (type_identifier "byte") (identifier "bVar1") (; ";")) (declaration "long lVar2;" (sized_type_specifier "long" (long "long")) (identifier "lVar2") (; ";")) (declaration "undefined8 uVar3;" (type_identifier "undefined8") (identifier "uVar3") (; ";")) (declaration "char *pcVar4;" (primitive_type "char") (pointer_declarator "*pcVar4" (* "*") (identifier "pcVar4")) (; ";")) (declaration "undefined1 local_c [4];" (type_identifier "undefined1") (array_declarator "local_c [4]" (identifier "local_c") ([ "[") (number_literal "4") (] "]")) (; ";")) (if_statement "if (param_1 == 0) {\n    lVar2 = dcgettext(0,".warning directive invoked in source file",5);\n  }\n  else {\n    lVar2 = dcgettext(0,".error directive invoked in source file",5);\n  }" (if "if") (parenthesized_expression "(param_1 == 0)" (( "(") (binary_expression "param_1 == 0" (identifier "param_1") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n    lVar2 = dcgettext(0,".warning directive invoked in source file",5);\n  }" ({ "{") (expression_statement "lVar2 = dcgettext(0,".warning directive invoked in source file",5);" (assignment_expression "lVar2 = dcgettext(0,".warning directive invoked in source file",5)" (identifier "lVar2") (= "=") (call_expression "dcgettext(0,".warning directive invoked in source file",5)" (identifier "dcgettext") (argument_list "(0,".warning directive invoked in source file",5)" (( "(") (number_literal "0") (, ",") (string_literal "".warning directive invoked in source file"" (" """) (string_content ".warning directive invoked in source file") (" """)) (, ",") (number_literal "5") () ")")))) (; ";")) (} "}")) (else_clause "else {\n    lVar2 = dcgettext(0,".error directive invoked in source file",5);\n  }" (else "else") (compound_statement "{\n    lVar2 = dcgettext(0,".error directive invoked in source file",5);\n  }" ({ "{") (expression_statement "lVar2 = dcgettext(0,".error directive invoked in source file",5);" (assignment_expression "lVar2 = dcgettext(0,".error directive invoked in source file",5)" (identifier "lVar2") (= "=") (call_expression "dcgettext(0,".error directive invoked in source file",5)" (identifier "dcgettext") (argument_list "(0,".error directive invoked in source file",5)" (( "(") (number_literal "0") (, ",") (string_literal "".error directive invoked in source file"" (" """) (string_content ".error directive invoked in source file") (" """)) (, ",") (number_literal "5") () ")")))) (; ";")) (} "}")))) (expression_statement "bVar1 = *DAT_0019d9c0;" (assignment_expression "bVar1 = *DAT_0019d9c0" (identifier "bVar1") (= "=") (pointer_expression "*DAT_0019d9c0" (* "*") (identifier "DAT_0019d9c0"))) (; ";")) (if_statement "if (bVar1 == 0x20) {\n    bVar1 = DAT_0019d9c0[1];\n    DAT_0019d9c0 = DAT_0019d9c0 + 1;\n  }" (if "if") (parenthesized_expression "(bVar1 == 0x20)" (( "(") (binary_expression "bVar1 == 0x20" (identifier "bVar1") (== "==") (number_literal "0x20")) () ")")) (compound_statement "{\n    bVar1 = DAT_0019d9c0[1];\n    DAT_0019d9c0 = DAT_0019d9c0 + 1;\n  }" ({ "{") (expression_statement "bVar1 = DAT_0019d9c0[1];" (assignment_expression "bVar1 = DAT_0019d9c0[1]" (identifier "bVar1") (= "=") (subscript_expression "DAT_0019d9c0[1]" (identifier "DAT_0019d9c0") ([ "[") (number_literal "1") (] "]"))) (; ";")) (expression_statement "DAT_0019d9c0 = DAT_0019d9c0 + 1;" (assignment_expression "DAT_0019d9c0 = DAT_0019d9c0 + 1" (identifier "DAT_0019d9c0") (= "=") (binary_expression "DAT_0019d9c0 + 1" (identifier "DAT_0019d9c0") (+ "+") (number_literal "1"))) (; ";")) (} "}"))) (if_statement "if ((&DAT_00194540)[bVar1] == '\0') {\n    if (bVar1 == 0x22) {\n      lVar2 = FUN_00126840(local_c);\n      if (lVar2 != 0) goto LAB_00126967;\n    }\n    else {\n      pcVar4 = ".error";\n      if (param_1 == 0) {\n        pcVar4 = ".warning";\n      }\n      uVar3 = dcgettext(0,"%s argument must be a string",5);\n      FUN_0011f6d0(uVar3,pcVar4);\n      FUN_00121800();\n    }\n    return;\n  }" (if "if") (parenthesized_expression "((&DAT_00194540)[bVar1] == '\0')" (( "(") (binary_expression "(&DAT_00194540)[bVar1] == '\0'" (subscript_expression "(&DAT_00194540)[bVar1]" (parenthesized_expression "(&DAT_00194540)" (( "(") (pointer_expression "&DAT_00194540" (& "&") (identifier "DAT_00194540")) () ")")) ([ "[") (identifier "bVar1") (] "]")) (== "==") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (compound_statement "{\n    if (bVar1 == 0x22) {\n      lVar2 = FUN_00126840(local_c);\n      if (lVar2 != 0) goto LAB_00126967;\n    }\n    else {\n      pcVar4 = ".error";\n      if (param_1 == 0) {\n        pcVar4 = ".warning";\n      }\n      uVar3 = dcgettext(0,"%s argument must be a string",5);\n      FUN_0011f6d0(uVar3,pcVar4);\n      FUN_00121800();\n    }\n    return;\n  }" ({ "{") (if_statement "if (bVar1 == 0x22) {\n      lVar2 = FUN_00126840(local_c);\n      if (lVar2 != 0) goto LAB_00126967;\n    }\n    else {\n      pcVar4 = ".error";\n      if (param_1 == 0) {\n        pcVar4 = ".warning";\n      }\n      uVar3 = dcgettext(0,"%s argument must be a string",5);\n      FUN_0011f6d0(uVar3,pcVar4);\n      FUN_00121800();\n    }" (if "if") (parenthesized_expression "(bVar1 == 0x22)" (( "(") (binary_expression "bVar1 == 0x22" (identifier "bVar1") (== "==") (number_literal "0x22")) () ")")) (compound_statement "{\n      lVar2 = FUN_00126840(local_c);\n      if (lVar2 != 0) goto LAB_00126967;\n    }" ({ "{") (expression_statement "lVar2 = FUN_00126840(local_c);" (assignment_expression "lVar2 = FUN_00126840(local_c)" (identifier "lVar2") (= "=") (call_expression "FUN_00126840(local_c)" (identifier "FUN_00126840") (argument_list "(local_c)" (( "(") (identifier "local_c") () ")")))) (; ";")) (if_statement "if (lVar2 != 0) goto LAB_00126967;" (if "if") (parenthesized_expression "(lVar2 != 0)" (( "(") (binary_expression "lVar2 != 0" (identifier "lVar2") (!= "!=") (number_literal "0")) () ")")) (goto_statement "goto LAB_00126967;" (goto "goto") (statement_identifier "LAB_00126967") (; ";"))) (} "}")) (else_clause "else {\n      pcVar4 = ".error";\n      if (param_1 == 0) {\n        pcVar4 = ".warning";\n      }\n      uVar3 = dcgettext(0,"%s argument must be a string",5);\n      FUN_0011f6d0(uVar3,pcVar4);\n      FUN_00121800();\n    }" (else "else") (compound_statement "{\n      pcVar4 = ".error";\n      if (param_1 == 0) {\n        pcVar4 = ".warning";\n      }\n      uVar3 = dcgettext(0,"%s argument must be a string",5);\n      FUN_0011f6d0(uVar3,pcVar4);\n      FUN_00121800();\n    }" ({ "{") (expression_statement "pcVar4 = ".error";" (assignment_expression "pcVar4 = ".error"" (identifier "pcVar4") (= "=") (string_literal "".error"" (" """) (string_content ".error") (" """))) (; ";")) (if_statement "if (param_1 == 0) {\n        pcVar4 = ".warning";\n      }" (if "if") (parenthesized_expression "(param_1 == 0)" (( "(") (binary_expression "param_1 == 0" (identifier "param_1") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n        pcVar4 = ".warning";\n      }" ({ "{") (expression_statement "pcVar4 = ".warning";" (assignment_expression "pcVar4 = ".warning"" (identifier "pcVar4") (= "=") (string_literal "".warning"" (" """) (string_content ".warning") (" """))) (; ";")) (} "}"))) (expression_statement "uVar3 = dcgettext(0,"%s argument must be a string",5);" (assignment_expression "uVar3 = dcgettext(0,"%s argument must be a string",5)" (identifier "uVar3") (= "=") (call_expression "dcgettext(0,"%s argument must be a string",5)" (identifier "dcgettext") (argument_list "(0,"%s argument must be a string",5)" (( "(") (number_literal "0") (, ",") (string_literal ""%s argument must be a string"" (" """) (string_content "%s argument must be a string") (" """)) (, ",") (number_literal "5") () ")")))) (; ";")) (expression_statement "FUN_0011f6d0(uVar3,pcVar4);" (call_expression "FUN_0011f6d0(uVar3,pcVar4)" (identifier "FUN_0011f6d0") (argument_list "(uVar3,pcVar4)" (( "(") (identifier "uVar3") (, ",") (identifier "pcVar4") () ")"))) (; ";")) (expression_statement "FUN_00121800();" (call_expression "FUN_00121800()" (identifier "FUN_00121800") (argument_list "()" (( "(") () ")"))) (; ";")) (} "}")))) (return_statement "return;" (return "return") (; ";")) (} "}"))) (labeled_statement "LAB_00126967:\n  if (param_1 == 0) {\n    FUN_0011f500();\n  }\n  else {\n    FUN_0011f6d0("%s",lVar2);\n  }" (statement_identifier "LAB_00126967") (: ":") (if_statement "if (param_1 == 0) {\n    FUN_0011f500();\n  }\n  else {\n    FUN_0011f6d0("%s",lVar2);\n  }" (if "if") (parenthesized_expression "(param_1 == 0)" (( "(") (binary_expression "param_1 == 0" (identifier "param_1") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n    FUN_0011f500();\n  }" ({ "{") (expression_statement "FUN_0011f500();" (call_expression "FUN_0011f500()" (identifier "FUN_0011f500") (argument_list "()" (( "(") () ")"))) (; ";")) (} "}")) (else_clause "else {\n    FUN_0011f6d0("%s",lVar2);\n  }" (else "else") (compound_statement "{\n    FUN_0011f6d0("%s",lVar2);\n  }" ({ "{") (expression_statement "FUN_0011f6d0("%s",lVar2);" (call_expression "FUN_0011f6d0("%s",lVar2)" (identifier "FUN_0011f6d0") (argument_list "("%s",lVar2)" (( "(") (string_literal ""%s"" (" """) (string_content "%s") (" """)) (, ",") (identifier "lVar2") () ")"))) (; ";")) (} "}"))))) (expression_statement "FUN_00121a20();" (call_expression "FUN_00121a20()" (identifier "FUN_00121a20") (argument_list "()" (( "(") () ")"))) (; ";")) (return_statement "return;" (return "return") (; ";")) (} "}")))

void function_1(int var_1)

{
  char *var_6;
  char *format;
  type_1 var_3;
  int len;
  
  if (var_1 == 0) {
    var_6 = (char *)var_2(0,".warning directive invoked in source file",5);
  }
  else {
    var_6 = (char *)var_2(0,".error directive invoked in source file",5);
  }
  var_3 = *var_4;
  if (var_3 == 0x20) {
    var_3 = var_4[1];
    var_4 = var_4 + 1;
  }
  if (is_end_of_line[var_3] == '\0') {
    if (var_3 == 0x22) {
      var_6 = var_5(&len);
      if (var_6 != (char *)0x0) goto LAB_00126967;
    }
    else {
      var_6 = ".error";
      if (var_1 == 0) {
        var_6 = ".warning";
      }
      format = (char *)var_2(0,"%s argument must be a string",5);
      var_7(format,var_6);
      var_8();
    }
    return;
  }
LAB_00126967:
  if (var_1 == 0) {
    var_9("%s");
  }
  else {
    var_7("%s",var_6);
  }
  var_10();
  return;
}


(translation_unit (function_definition type: (primitive_type) declarator: (function_declarator declarator: (identifier) parameters: (parameter_list (parameter_declaration type: (primitive_type) declarator: (identifier)))) body: (compound_statement (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (sized_type_specifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (primitive_type) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (type_identifier) declarator: (array_declarator declarator: (identifier) size: (number_literal))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (number_literal) (string_literal (string_content)) (number_literal)))))) alternative: (else_clause (compound_statement (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (number_literal) (string_literal (string_content)) (number_literal)))))))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (identifier)))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (subscript_expression argument: (identifier) index: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))))) (if_statement condition: (parenthesized_expression (binary_expression left: (subscript_expression argument: (parenthesized_expression (pointer_expression argument: (identifier))) index: (identifier)) right: (char_literal (escape_sequence)))) consequence: (compound_statement (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (identifier))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (goto_statement label: (statement_identifier)))) alternative: (else_clause (compound_statement (expression_statement (assignment_expression left: (identifier) right: (string_literal (string_content)))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (string_literal (string_content)))))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (number_literal) (string_literal (string_content)) (number_literal))))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (identifier) (identifier)))) (expression_statement (call_expression function: (identifier) arguments: (argument_list)))))) (return_statement))) (labeled_statement label: (statement_identifier) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (expression_statement (call_expression function: (identifier) arguments: (argument_list)))) alternative: (else_clause (compound_statement (expression_statement (call_expression function: (identifier) arguments: (argument_list (string_literal (string_content)) (identifier)))))))) (expression_statement (call_expression function: (identifier) arguments: (argument_list))) (return_statement))))

void MASKED(int param_1)

{
  byte bVar1;
  long lVar2;
  undefined8 uVar3;
  char *pcVar4;
  undefined1 local_c [4];
  
  if (param_1 == 0) {
    lVar2 = dcgettext(0,".warning directive invoked in source file",5);
  }
  else {
    lVar2 = dcgettext(0,".error directive invoked in source file",5);
  }
  bVar1 = *DAT_0019d9c0;
  if (bVar1 == 0x20) {
    bVar1 = DAT_0019d9c0[1];
    DAT_0019d9c0 = DAT_0019d9c0 + 1;
  }
  if ((&DAT_00194540)[bVar1] == '\0') {
    if (bVar1 == 0x22) {
      lVar2 = FUN_00126840(local_c);
      if (lVar2 != 0) goto LAB_00126967;
    }
    else {
      pcVar4 = ".error";
      if (param_1 == 0) {
        pcVar4 = ".warning";
      }
      uVar3 = dcgettext(0,"%s argument must be a string",5);
      FUN_0011f6d0(uVar3,pcVar4);
      FUN_00121800();
    }
    return;
  }
LAB_00126967:
  if (param_1 == 0) {
    FUN_0011f500();
  }
  else {
    FUN_0011f6d0("%s",lVar2);
  }
  FUN_00121a20();
  return;
}

