
/* WARNING: Unknown calling convention */

int opt_has_param(loption *o)

{
  if (o != (loption *)0x0) {
    return (uint)((o->otype & 0x53U) == 0);
  }
  return 0;
}



bool opt_has_param(int param_1)

{
  if (param_1 != 0) {
    return (*(uint *)(param_1 + 8) & 0x53) == 0;
  }
  return false;
}


beq a0,zero,0x0002e044
_nop
lw v0,0x8(a0)
andi v0,v0,0x53
jr ra
_sltiu v0,v0,0x1
jr ra
_or v0,zero,zero
(translation_unit "bool opt_has_param(int param_1)\n\n{\n  if (param_1 != 0) {\n    return (*(uint *)(param_1 + 8) & 0x53) == 0;\n  }\n  return false;\n}\n\n" (function_definition "bool opt_has_param(int param_1)\n\n{\n  if (param_1 != 0) {\n    return (*(uint *)(param_1 + 8) & 0x53) == 0;\n  }\n  return false;\n}" primitive_type (function_declarator "opt_has_param(int param_1)" identifier (parameter_list "(int param_1)" ( (parameter_declaration "int param_1" primitive_type identifier) ))) (compound_statement "{\n  if (param_1 != 0) {\n    return (*(uint *)(param_1 + 8) & 0x53) == 0;\n  }\n  return false;\n}" { (if_statement "if (param_1 != 0) {\n    return (*(uint *)(param_1 + 8) & 0x53) == 0;\n  }" if (parenthesized_expression "(param_1 != 0)" ( (binary_expression "param_1 != 0" identifier != number_literal) )) (compound_statement "{\n    return (*(uint *)(param_1 + 8) & 0x53) == 0;\n  }" { (return_statement "return (*(uint *)(param_1 + 8) & 0x53) == 0;" return (binary_expression "(*(uint *)(param_1 + 8) & 0x53) == 0" (parenthesized_expression "(*(uint *)(param_1 + 8) & 0x53)" ( (binary_expression "*(uint *)(param_1 + 8) & 0x53" (pointer_expression "*(uint *)(param_1 + 8)" * (cast_expression "(uint *)(param_1 + 8)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 8)" ( (binary_expression "param_1 + 8" identifier + number_literal) )))) & number_literal) )) == number_literal) ;) })) (return_statement "return false;" return false ;) })))
(translation_unit "/* WARNING: Unknown calling convention */\n\nint opt_has_param(loption *o)\n\n{\n  if (o != (loption *)0x0) {\n    return (uint)((o->otype & 0x53U) == 0);\n  }\n  return 0;\n}\n\n" comment (function_definition "int opt_has_param(loption *o)\n\n{\n  if (o != (loption *)0x0) {\n    return (uint)((o->otype & 0x53U) == 0);\n  }\n  return 0;\n}" primitive_type (function_declarator "opt_has_param(loption *o)" identifier (parameter_list "(loption *o)" ( (parameter_declaration "loption *o" type_identifier (pointer_declarator "*o" * identifier)) ))) (compound_statement "{\n  if (o != (loption *)0x0) {\n    return (uint)((o->otype & 0x53U) == 0);\n  }\n  return 0;\n}" { (if_statement "if (o != (loption *)0x0) {\n    return (uint)((o->otype & 0x53U) == 0);\n  }" if (parenthesized_expression "(o != (loption *)0x0)" ( (binary_expression "o != (loption *)0x0" identifier != (cast_expression "(loption *)0x0" ( (type_descriptor "loption *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n    return (uint)((o->otype & 0x53U) == 0);\n  }" { (return_statement "return (uint)((o->otype & 0x53U) == 0);" return (call_expression "(uint)((o->otype & 0x53U) == 0)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "((o->otype & 0x53U) == 0)" ( (binary_expression "(o->otype & 0x53U) == 0" (parenthesized_expression "(o->otype & 0x53U)" ( (binary_expression "o->otype & 0x53U" (field_expression "o->otype" identifier -> field_identifier) & number_literal) )) == number_literal) ))) ;) })) (return_statement "return 0;" return number_literal ;) })))
(translation_unit "bool opt_has_param(int param_1)\n\n{\n  if (param_1 != 0) {\n    return (*(uint *)(param_1 + 8) & 0x53) == 0;\n  }\n  return false;\n}\n\n" (function_definition "bool opt_has_param(int param_1)\n\n{\n  if (param_1 != 0) {\n    return (*(uint *)(param_1 + 8) & 0x53) == 0;\n  }\n  return false;\n}" primitive_type (function_declarator "opt_has_param(int param_1)" identifier (parameter_list "(int param_1)" ( (parameter_declaration "int param_1" primitive_type identifier) ))) (compound_statement "{\n  if (param_1 != 0) {\n    return (*(uint *)(param_1 + 8) & 0x53) == 0;\n  }\n  return false;\n}" { (if_statement "if (param_1 != 0) {\n    return (*(uint *)(param_1 + 8) & 0x53) == 0;\n  }" if (parenthesized_expression "(param_1 != 0)" ( (binary_expression "param_1 != 0" identifier != number_literal) )) (compound_statement "{\n    return (*(uint *)(param_1 + 8) & 0x53) == 0;\n  }" { (return_statement "return (*(uint *)(param_1 + 8) & 0x53) == 0;" return (binary_expression "(*(uint *)(param_1 + 8) & 0x53) == 0" (parenthesized_expression "(*(uint *)(param_1 + 8) & 0x53)" ( (binary_expression "*(uint *)(param_1 + 8) & 0x53" (pointer_expression "*(uint *)(param_1 + 8)" * (cast_expression "(uint *)(param_1 + 8)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 8)" ( (binary_expression "param_1 + 8" identifier + number_literal) )))) & number_literal) )) == number_literal) ;) })) (return_statement "return false;" return false ;) })))
(translation_unit (function_definition TYPE (function_declarator IDENT (parameter_list ( (parameter_declaration TYPE IDENT) ))) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (compound_statement { (return_statement return (binary_expression (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) & LIT) )) == LIT) ;) })) (return_statement return BOOL ;) })))
(function_definition "bool opt_has_param(int param_1)\n\n{\n  if (param_1 != 0) {\n    return (*(uint *)(param_1 + 8) & 0x53) == 0;\n  }\n  return false;\n}" (primitive_type "bool") (function_declarator "opt_has_param(int param_1)" (identifier "opt_has_param") (parameter_list "(int param_1)" (( "(") (parameter_declaration "int param_1" (primitive_type "int") (identifier "param_1")) () ")"))) (compound_statement "{\n  if (param_1 != 0) {\n    return (*(uint *)(param_1 + 8) & 0x53) == 0;\n  }\n  return false;\n}" ({ "{") (if_statement "if (param_1 != 0) {\n    return (*(uint *)(param_1 + 8) & 0x53) == 0;\n  }" (if "if") (parenthesized_expression "(param_1 != 0)" (( "(") (binary_expression "param_1 != 0" (identifier "param_1") (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n    return (*(uint *)(param_1 + 8) & 0x53) == 0;\n  }" ({ "{") (return_statement "return (*(uint *)(param_1 + 8) & 0x53) == 0;" (return "return") (binary_expression "(*(uint *)(param_1 + 8) & 0x53) == 0" (parenthesized_expression "(*(uint *)(param_1 + 8) & 0x53)" (( "(") (binary_expression "*(uint *)(param_1 + 8) & 0x53" (pointer_expression "*(uint *)(param_1 + 8)" (* "*") (cast_expression "(uint *)(param_1 + 8)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 8)" (( "(") (binary_expression "param_1 + 8" (identifier "param_1") (+ "+") (number_literal "8")) () ")")))) (& "&") (number_literal "0x53")) () ")")) (== "==") (number_literal "0")) (; ";")) (} "}"))) (return_statement "return false;" (return "return") (false "false") (; ";")) (} "}")))

/* WARNING: Unknown calling convention */

int function_1(type_1 *var_1)

{
  if (var_1 != (type_1 *)0x0) {
    return (uint)((var_1->otype & 0x53U) == 0);
  }
  return 0;
}


(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 (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (return_statement (binary_expression left: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) right: (number_literal))))) (return_statement (false)))))

bool MASKED(int param_1)

{
  if (param_1 != 0) {
    return (*(uint *)(param_1 + 8) & 0x53) == 0;
  }
  return false;
}

