
/* WARNING: Unknown calling convention */

int opened(void *ifile)

{
  return (int)*(char *)((int)ifile + 0x18);
}



int FUN_00021a80(int param_1)

{
  return (int)*(char *)(param_1 + 0x18);
}


MOV EAX,dword ptr [ESP + 0x4]
MOVSX EAX,byte ptr [EAX + 0x18]
RET
(translation_unit "int FUN_00021a80(int param_1)\n\n{\n  return (int)*(char *)(param_1 + 0x18);\n}\n\n" (function_definition "int FUN_00021a80(int param_1)\n\n{\n  return (int)*(char *)(param_1 + 0x18);\n}" primitive_type (function_declarator "FUN_00021a80(int param_1)" identifier (parameter_list "(int param_1)" ( (parameter_declaration "int param_1" primitive_type identifier) ))) (compound_statement "{\n  return (int)*(char *)(param_1 + 0x18);\n}" { (return_statement "return (int)*(char *)(param_1 + 0x18);" return (cast_expression "(int)*(char *)(param_1 + 0x18)" ( (type_descriptor "int" primitive_type) ) (pointer_expression "*(char *)(param_1 + 0x18)" * (cast_expression "(char *)(param_1 + 0x18)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x18)" ( (binary_expression "param_1 + 0x18" identifier + number_literal) ))))) ;) })))
(translation_unit "/* WARNING: Unknown calling convention */\n\nint opened(void *ifile)\n\n{\n  return (int)*(char *)((int)ifile + 0x18);\n}\n\n" comment (function_definition "int opened(void *ifile)\n\n{\n  return (int)*(char *)((int)ifile + 0x18);\n}" primitive_type (function_declarator "opened(void *ifile)" identifier (parameter_list "(void *ifile)" ( (parameter_declaration "void *ifile" primitive_type (pointer_declarator "*ifile" * identifier)) ))) (compound_statement "{\n  return (int)*(char *)((int)ifile + 0x18);\n}" { (return_statement "return (int)*(char *)((int)ifile + 0x18);" return (cast_expression "(int)*(char *)((int)ifile + 0x18)" ( (type_descriptor "int" primitive_type) ) (pointer_expression "*(char *)((int)ifile + 0x18)" * (cast_expression "(char *)((int)ifile + 0x18)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)ifile + 0x18)" ( (binary_expression "(int)ifile + 0x18" (cast_expression "(int)ifile" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) ))))) ;) })))
(translation_unit "int FUN_00021a80(int param_1)\n\n{\n  return (int)*(char *)(param_1 + 0x18);\n}\n\n" (function_definition "int FUN_00021a80(int param_1)\n\n{\n  return (int)*(char *)(param_1 + 0x18);\n}" primitive_type (function_declarator "FUN_00021a80(int param_1)" identifier (parameter_list "(int param_1)" ( (parameter_declaration "int param_1" primitive_type identifier) ))) (compound_statement "{\n  return (int)*(char *)(param_1 + 0x18);\n}" { (return_statement "return (int)*(char *)(param_1 + 0x18);" return (cast_expression "(int)*(char *)(param_1 + 0x18)" ( (type_descriptor "int" primitive_type) ) (pointer_expression "*(char *)(param_1 + 0x18)" * (cast_expression "(char *)(param_1 + 0x18)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x18)" ( (binary_expression "param_1 + 0x18" identifier + number_literal) ))))) ;) })))
(translation_unit (function_definition TYPE (function_declarator IDENT (parameter_list ( (parameter_declaration TYPE IDENT) ))) (compound_statement { (return_statement return (cast_expression ( (type_descriptor TYPE) ) (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) })))
(function_definition "int FUN_00021a80(int param_1)\n\n{\n  return (int)*(char *)(param_1 + 0x18);\n}" (primitive_type "int") (function_declarator "FUN_00021a80(int param_1)" (identifier "FUN_00021a80") (parameter_list "(int param_1)" (( "(") (parameter_declaration "int param_1" (primitive_type "int") (identifier "param_1")) () ")"))) (compound_statement "{\n  return (int)*(char *)(param_1 + 0x18);\n}" ({ "{") (return_statement "return (int)*(char *)(param_1 + 0x18);" (return "return") (cast_expression "(int)*(char *)(param_1 + 0x18)" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (pointer_expression "*(char *)(param_1 + 0x18)" (* "*") (cast_expression "(char *)(param_1 + 0x18)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x18)" (( "(") (binary_expression "param_1 + 0x18" (identifier "param_1") (+ "+") (number_literal "0x18")) () ")"))))) (; ";")) (} "}")))

/* WARNING: Unknown calling convention */

int function_1(void *ifile)

{
  return (int)*(char *)((int)ifile + 0x18);
}


(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 (return_statement (cast_expression type: (type_descriptor type: (primitive_type)) value: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))))))

int MASKED(int param_1)

{
  return (int)*(char *)(param_1 + 0x18);
}

