
/* WARNING: Unknown calling convention */

int yy_string_get(void)

{
  byte bVar1;
  
  if (bash_input.location.file == (FILE *)0x0) {
    return -1;
  }
  bVar1 = *bash_input.location.string;
  if (bVar1 != 0) {
    bash_input.location.file = (FILE *)((long)&(bash_input.location.file)->_flags + 1);
    return (int)bVar1;
  }
  return -1;
}



ulong FUN_00130a00(void)

{
  byte bVar1;
  
  if (DAT_00217950 == (byte *)0x0) {
    return 0xffffffff;
  }
  bVar1 = *DAT_00217950;
  if (bVar1 != 0) {
    DAT_00217950 = DAT_00217950 + 1;
    return (ulong)bVar1;
  }
  return 0xffffffff;
}


MOV RDX,qword ptr [0x00217950]
TEST RDX,RDX
JZ 0x00130a22
MOVZX EAX,byte ptr [RDX]
TEST AL,AL
JZ 0x00130a28
ADD RDX,0x1
MOV qword ptr [0x00217950],RDX
MOVZX EAX,AL
RET
MOV EAX,0xffffffff
RET
MOV EAX,0xffffffff
RET
(translation_unit "ulong FUN_00130a00(void)\n\n{\n  byte bVar1;\n  \n  if (DAT_00217950 == (byte *)0x0) {\n    return 0xffffffff;\n  }\n  bVar1 = *DAT_00217950;\n  if (bVar1 != 0) {\n    DAT_00217950 = DAT_00217950 + 1;\n    return (ulong)bVar1;\n  }\n  return 0xffffffff;\n}\n\n" (function_definition "ulong FUN_00130a00(void)\n\n{\n  byte bVar1;\n  \n  if (DAT_00217950 == (byte *)0x0) {\n    return 0xffffffff;\n  }\n  bVar1 = *DAT_00217950;\n  if (bVar1 != 0) {\n    DAT_00217950 = DAT_00217950 + 1;\n    return (ulong)bVar1;\n  }\n  return 0xffffffff;\n}" type_identifier (function_declarator "FUN_00130a00(void)" identifier (parameter_list "(void)" ( (parameter_declaration "void" primitive_type) ))) (compound_statement "{\n  byte bVar1;\n  \n  if (DAT_00217950 == (byte *)0x0) {\n    return 0xffffffff;\n  }\n  bVar1 = *DAT_00217950;\n  if (bVar1 != 0) {\n    DAT_00217950 = DAT_00217950 + 1;\n    return (ulong)bVar1;\n  }\n  return 0xffffffff;\n}" { (declaration "byte bVar1;" type_identifier identifier ;) (if_statement "if (DAT_00217950 == (byte *)0x0) {\n    return 0xffffffff;\n  }" if (parenthesized_expression "(DAT_00217950 == (byte *)0x0)" ( (binary_expression "DAT_00217950 == (byte *)0x0" identifier == (cast_expression "(byte *)0x0" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n    return 0xffffffff;\n  }" { (return_statement "return 0xffffffff;" return number_literal ;) })) (expression_statement "bVar1 = *DAT_00217950;" (assignment_expression "bVar1 = *DAT_00217950" identifier = (pointer_expression "*DAT_00217950" * identifier)) ;) (if_statement "if (bVar1 != 0) {\n    DAT_00217950 = DAT_00217950 + 1;\n    return (ulong)bVar1;\n  }" if (parenthesized_expression "(bVar1 != 0)" ( (binary_expression "bVar1 != 0" identifier != number_literal) )) (compound_statement "{\n    DAT_00217950 = DAT_00217950 + 1;\n    return (ulong)bVar1;\n  }" { (expression_statement "DAT_00217950 = DAT_00217950 + 1;" (assignment_expression "DAT_00217950 = DAT_00217950 + 1" identifier = (binary_expression "DAT_00217950 + 1" identifier + number_literal)) ;) (return_statement "return (ulong)bVar1;" return (cast_expression "(ulong)bVar1" ( (type_descriptor "ulong" type_identifier) ) identifier) ;) })) (return_statement "return 0xffffffff;" return number_literal ;) })))
(translation_unit "/* WARNING: Unknown calling convention */\n\nint yy_string_get(void)\n\n{\n  byte bVar1;\n  \n  if (bash_input.location.file == (FILE *)0x0) {\n    return -1;\n  }\n  bVar1 = *bash_input.location.string;\n  if (bVar1 != 0) {\n    bash_input.location.file = (FILE *)((long)&(bash_input.location.file)->_flags + 1);\n    return (int)bVar1;\n  }\n  return -1;\n}\n\n" comment (function_definition "int yy_string_get(void)\n\n{\n  byte bVar1;\n  \n  if (bash_input.location.file == (FILE *)0x0) {\n    return -1;\n  }\n  bVar1 = *bash_input.location.string;\n  if (bVar1 != 0) {\n    bash_input.location.file = (FILE *)((long)&(bash_input.location.file)->_flags + 1);\n    return (int)bVar1;\n  }\n  return -1;\n}" primitive_type (function_declarator "yy_string_get(void)" identifier (parameter_list "(void)" ( (parameter_declaration "void" primitive_type) ))) (compound_statement "{\n  byte bVar1;\n  \n  if (bash_input.location.file == (FILE *)0x0) {\n    return -1;\n  }\n  bVar1 = *bash_input.location.string;\n  if (bVar1 != 0) {\n    bash_input.location.file = (FILE *)((long)&(bash_input.location.file)->_flags + 1);\n    return (int)bVar1;\n  }\n  return -1;\n}" { (declaration "byte bVar1;" type_identifier identifier ;) (if_statement "if (bash_input.location.file == (FILE *)0x0) {\n    return -1;\n  }" if (parenthesized_expression "(bash_input.location.file == (FILE *)0x0)" ( (binary_expression "bash_input.location.file == (FILE *)0x0" (field_expression "bash_input.location.file" (field_expression "bash_input.location" identifier . field_identifier) . field_identifier) == (cast_expression "(FILE *)0x0" ( (type_descriptor "FILE *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n    return -1;\n  }" { (return_statement "return -1;" return number_literal ;) })) (expression_statement "bVar1 = *bash_input.location.string;" (assignment_expression "bVar1 = *bash_input.location.string" identifier = (pointer_expression "*bash_input.location.string" * (field_expression "bash_input.location.string" (field_expression "bash_input.location" identifier . field_identifier) . field_identifier))) ;) (if_statement "if (bVar1 != 0) {\n    bash_input.location.file = (FILE *)((long)&(bash_input.location.file)->_flags + 1);\n    return (int)bVar1;\n  }" if (parenthesized_expression "(bVar1 != 0)" ( (binary_expression "bVar1 != 0" identifier != number_literal) )) (compound_statement "{\n    bash_input.location.file = (FILE *)((long)&(bash_input.location.file)->_flags + 1);\n    return (int)bVar1;\n  }" { (expression_statement "bash_input.location.file = (FILE *)((long)&(bash_input.location.file)->_flags + 1);" (assignment_expression "bash_input.location.file = (FILE *)((long)&(bash_input.location.file)->_flags + 1)" (field_expression "bash_input.location.file" (field_expression "bash_input.location" identifier . field_identifier) . field_identifier) = (cast_expression "(FILE *)((long)&(bash_input.location.file)->_flags + 1)" ( (type_descriptor "FILE *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((long)&(bash_input.location.file)->_flags + 1)" ( (binary_expression "(long)&(bash_input.location.file)->_flags + 1" (cast_expression "(long)&(bash_input.location.file)->_flags" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) (pointer_expression "&(bash_input.location.file)->_flags" & (field_expression "(bash_input.location.file)->_flags" (parenthesized_expression "(bash_input.location.file)" ( (field_expression "bash_input.location.file" (field_expression "bash_input.location" identifier . field_identifier) . field_identifier) )) -> field_identifier))) + number_literal) )))) ;) (return_statement "return (int)bVar1;" return (cast_expression "(int)bVar1" ( (type_descriptor "int" primitive_type) ) identifier) ;) })) (return_statement "return -1;" return number_literal ;) })))
(translation_unit "ulong FUN_00130a00(void)\n\n{\n  byte bVar1;\n  \n  if (DAT_00217950 == (byte *)0x0) {\n    return 0xffffffff;\n  }\n  bVar1 = *DAT_00217950;\n  if (bVar1 != 0) {\n    DAT_00217950 = DAT_00217950 + 1;\n    return (ulong)bVar1;\n  }\n  return 0xffffffff;\n}\n\n" (function_definition "ulong FUN_00130a00(void)\n\n{\n  byte bVar1;\n  \n  if (DAT_00217950 == (byte *)0x0) {\n    return 0xffffffff;\n  }\n  bVar1 = *DAT_00217950;\n  if (bVar1 != 0) {\n    DAT_00217950 = DAT_00217950 + 1;\n    return (ulong)bVar1;\n  }\n  return 0xffffffff;\n}" type_identifier (function_declarator "FUN_00130a00(void)" identifier (parameter_list "(void)" ( (parameter_declaration "void" primitive_type) ))) (compound_statement "{\n  byte bVar1;\n  \n  if (DAT_00217950 == (byte *)0x0) {\n    return 0xffffffff;\n  }\n  bVar1 = *DAT_00217950;\n  if (bVar1 != 0) {\n    DAT_00217950 = DAT_00217950 + 1;\n    return (ulong)bVar1;\n  }\n  return 0xffffffff;\n}" { (declaration "byte bVar1;" type_identifier identifier ;) (if_statement "if (DAT_00217950 == (byte *)0x0) {\n    return 0xffffffff;\n  }" if (parenthesized_expression "(DAT_00217950 == (byte *)0x0)" ( (binary_expression "DAT_00217950 == (byte *)0x0" identifier == (cast_expression "(byte *)0x0" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n    return 0xffffffff;\n  }" { (return_statement "return 0xffffffff;" return number_literal ;) })) (expression_statement "bVar1 = *DAT_00217950;" (assignment_expression "bVar1 = *DAT_00217950" identifier = (pointer_expression "*DAT_00217950" * identifier)) ;) (if_statement "if (bVar1 != 0) {\n    DAT_00217950 = DAT_00217950 + 1;\n    return (ulong)bVar1;\n  }" if (parenthesized_expression "(bVar1 != 0)" ( (binary_expression "bVar1 != 0" identifier != number_literal) )) (compound_statement "{\n    DAT_00217950 = DAT_00217950 + 1;\n    return (ulong)bVar1;\n  }" { (expression_statement "DAT_00217950 = DAT_00217950 + 1;" (assignment_expression "DAT_00217950 = DAT_00217950 + 1" identifier = (binary_expression "DAT_00217950 + 1" identifier + number_literal)) ;) (return_statement "return (ulong)bVar1;" return (cast_expression "(ulong)bVar1" ( (type_descriptor "ulong" type_identifier) ) identifier) ;) })) (return_statement "return 0xffffffff;" return number_literal ;) })))
(translation_unit (function_definition TYPE (function_declarator IDENT (parameter_list ( (parameter_declaration TYPE) ))) (compound_statement { (declaration TYPE IDENT ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) )) (compound_statement { (return_statement return 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 = (binary_expression IDENT + LIT)) ;) (return_statement return (cast_expression ( (type_descriptor TYPE) ) IDENT) ;) })) (return_statement return LIT ;) })))
(function_definition "ulong FUN_00130a00(void)\n\n{\n  byte bVar1;\n  \n  if (DAT_00217950 == (byte *)0x0) {\n    return 0xffffffff;\n  }\n  bVar1 = *DAT_00217950;\n  if (bVar1 != 0) {\n    DAT_00217950 = DAT_00217950 + 1;\n    return (ulong)bVar1;\n  }\n  return 0xffffffff;\n}" (type_identifier "ulong") (function_declarator "FUN_00130a00(void)" (identifier "FUN_00130a00") (parameter_list "(void)" (( "(") (parameter_declaration "void" (primitive_type "void")) () ")"))) (compound_statement "{\n  byte bVar1;\n  \n  if (DAT_00217950 == (byte *)0x0) {\n    return 0xffffffff;\n  }\n  bVar1 = *DAT_00217950;\n  if (bVar1 != 0) {\n    DAT_00217950 = DAT_00217950 + 1;\n    return (ulong)bVar1;\n  }\n  return 0xffffffff;\n}" ({ "{") (declaration "byte bVar1;" (type_identifier "byte") (identifier "bVar1") (; ";")) (if_statement "if (DAT_00217950 == (byte *)0x0) {\n    return 0xffffffff;\n  }" (if "if") (parenthesized_expression "(DAT_00217950 == (byte *)0x0)" (( "(") (binary_expression "DAT_00217950 == (byte *)0x0" (identifier "DAT_00217950") (== "==") (cast_expression "(byte *)0x0" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n    return 0xffffffff;\n  }" ({ "{") (return_statement "return 0xffffffff;" (return "return") (number_literal "0xffffffff") (; ";")) (} "}"))) (expression_statement "bVar1 = *DAT_00217950;" (assignment_expression "bVar1 = *DAT_00217950" (identifier "bVar1") (= "=") (pointer_expression "*DAT_00217950" (* "*") (identifier "DAT_00217950"))) (; ";")) (if_statement "if (bVar1 != 0) {\n    DAT_00217950 = DAT_00217950 + 1;\n    return (ulong)bVar1;\n  }" (if "if") (parenthesized_expression "(bVar1 != 0)" (( "(") (binary_expression "bVar1 != 0" (identifier "bVar1") (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n    DAT_00217950 = DAT_00217950 + 1;\n    return (ulong)bVar1;\n  }" ({ "{") (expression_statement "DAT_00217950 = DAT_00217950 + 1;" (assignment_expression "DAT_00217950 = DAT_00217950 + 1" (identifier "DAT_00217950") (= "=") (binary_expression "DAT_00217950 + 1" (identifier "DAT_00217950") (+ "+") (number_literal "1"))) (; ";")) (return_statement "return (ulong)bVar1;" (return "return") (cast_expression "(ulong)bVar1" (( "(") (type_descriptor "ulong" (type_identifier "ulong")) () ")") (identifier "bVar1")) (; ";")) (} "}"))) (return_statement "return 0xffffffff;" (return "return") (number_literal "0xffffffff") (; ";")) (} "}")))

/* WARNING: Unknown calling convention */

int function_1(void)

{
  type_1 var_1;
  
  if (bash_input.location.file == (type_2 *)0x0) {
    return -1;
  }
  var_1 = *bash_input.location.string;
  if (var_1 != 0) {
    bash_input.location.file = (type_2 *)((long)&(bash_input.location.file)->_flags + 1);
    return (int)var_1;
  }
  return -1;
}


(translation_unit (function_definition type: (type_identifier) declarator: (function_declarator declarator: (identifier) parameters: (parameter_list (parameter_declaration type: (primitive_type)))) body: (compound_statement (declaration type: (type_identifier) declarator: (identifier)) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (number_literal)))) consequence: (compound_statement (return_statement (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: (binary_expression left: (identifier) right: (number_literal)))) (return_statement (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier))))) (return_statement (number_literal)))))

ulong MASKED(void)

{
  byte bVar1;
  
  if (DAT_00217950 == (byte *)0x0) {
    return 0xffffffff;
  }
  bVar1 = *DAT_00217950;
  if (bVar1 != 0) {
    DAT_00217950 = DAT_00217950 + 1;
    return (ulong)bVar1;
  }
  return 0xffffffff;
}

