
/* WARNING: Struct "Output_section_data": ignoring overlapping field "output_section_" */
/* WARNING: Struct "Output_section": ignoring overlapping field "name_" */
/* WARNING: Struct "Output_section_headers": ignoring overlapping field "layout_" */
/* WARNING: Enum "DT": Some values do not have unique names */
/* WARNING: Struct "Output_reduced_debug_abbrev_section": ignoring overlapping field "data_" */
/* WARNING: Struct "Output_reduced_debug_info_section": ignoring overlapping field "data_" */
/* DWARF original prototype: Version_script_info * version_script(Command_line * this) */

Version_script_info * __thiscall gold::Command_line::version_script(Command_line *this)

{
  Version_script_info *pVVar1;
  
  pVVar1 = &(this->script_options_).version_script_info_;
  (*(code *)PTR_finalize_00433340)(&(this->options_).dynamic_list_.version_script_info_);
  (*(code *)PTR_finalize_00433340)(pVVar1);
  return pVVar1;
}



int FUN_0016e0e0(int param_1)

{
  (*(code *)PTR_finalize_00433340)(param_1 + 0x59c0);
  (*(code *)PTR_finalize_00433340)(param_1 + 0x5b20);
  return param_1 + 0x5b20;
}


lui gp,0x2d
addiu gp,gp,-0x3f10
addu gp,gp,t9
addiu sp,sp,-0x20
lw t9,-0x6e90(gp)
sw s0,0x18(sp)
or s0,a0,zero
addiu a0,a0,0x59c0
sw ra,0x1c(sp)
sw gp,0x10(sp)
jalr t9
_addiu s0,s0,0x5b20
lw gp,0x10(sp)
lw t9,-0x6e90(gp)
jalr t9
_or a0,s0,zero
or v0,s0,zero
lw ra,0x1c(sp)
lw s0,0x18(sp)
jr ra
_addiu sp,sp,0x20
(translation_unit "int FUN_0016e0e0(int param_1)\n\n{\n  (*(code *)PTR_finalize_00433340)(param_1 + 0x59c0);\n  (*(code *)PTR_finalize_00433340)(param_1 + 0x5b20);\n  return param_1 + 0x5b20;\n}\n\n" (function_definition "int FUN_0016e0e0(int param_1)\n\n{\n  (*(code *)PTR_finalize_00433340)(param_1 + 0x59c0);\n  (*(code *)PTR_finalize_00433340)(param_1 + 0x5b20);\n  return param_1 + 0x5b20;\n}" primitive_type (function_declarator "FUN_0016e0e0(int param_1)" identifier (parameter_list "(int param_1)" ( (parameter_declaration "int param_1" primitive_type identifier) ))) (compound_statement "{\n  (*(code *)PTR_finalize_00433340)(param_1 + 0x59c0);\n  (*(code *)PTR_finalize_00433340)(param_1 + 0x5b20);\n  return param_1 + 0x5b20;\n}" { (expression_statement "(*(code *)PTR_finalize_00433340)(param_1 + 0x59c0);" (call_expression "(*(code *)PTR_finalize_00433340)(param_1 + 0x59c0)" (parenthesized_expression "(*(code *)PTR_finalize_00433340)" ( (pointer_expression "*(code *)PTR_finalize_00433340" * (cast_expression "(code *)PTR_finalize_00433340" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(param_1 + 0x59c0)" ( (binary_expression "param_1 + 0x59c0" identifier + number_literal) ))) ;) (expression_statement "(*(code *)PTR_finalize_00433340)(param_1 + 0x5b20);" (call_expression "(*(code *)PTR_finalize_00433340)(param_1 + 0x5b20)" (parenthesized_expression "(*(code *)PTR_finalize_00433340)" ( (pointer_expression "*(code *)PTR_finalize_00433340" * (cast_expression "(code *)PTR_finalize_00433340" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(param_1 + 0x5b20)" ( (binary_expression "param_1 + 0x5b20" identifier + number_literal) ))) ;) (return_statement "return param_1 + 0x5b20;" return (binary_expression "param_1 + 0x5b20" identifier + number_literal) ;) })))
(translation_unit "/* WARNING: Struct "Output_section_data": ignoring overlapping field "output_section_" */\n/* WARNING: Struct "Output_section": ignoring overlapping field "name_" */\n/* WARNING: Struct "Output_section_headers": ignoring overlapping field "layout_" */\n/* WARNING: Enum "DT": Some values do not have unique names */\n/* WARNING: Struct "Output_reduced_debug_abbrev_section": ignoring overlapping field "data_" */\n/* WARNING: Struct "Output_reduced_debug_info_section": ignoring overlapping field "data_" */\n/* DWARF original prototype: Version_script_info * version_script(Command_line * this) */\n\nVersion_script_info * __thiscall gold::Command_line::version_script(Command_line *this)\n\n{\n  Version_script_info *pVVar1;\n  \n  pVVar1 = &(this->script_options_).version_script_info_;\n  (*(code *)PTR_finalize_00433340)(&(this->options_).dynamic_list_.version_script_info_);\n  (*(code *)PTR_finalize_00433340)(pVVar1);\n  return pVVar1;\n}\n\n" comment comment comment comment comment comment comment (ERROR "Version_script_info * __thiscall gold::Command_line::version_script(Command_line *this)" (binary_expression "Version_script_info * __thiscall gold::Command_line::version_script(Command_line *this" (binary_expression "Version_script_info * __thiscall" identifier * identifier) (ERROR "gold::Command_line::version_script(Command_line" identifier : : identifier : : identifier ( identifier) * identifier) )) (compound_statement "{\n  Version_script_info *pVVar1;\n  \n  pVVar1 = &(this->script_options_).version_script_info_;\n  (*(code *)PTR_finalize_00433340)(&(this->options_).dynamic_list_.version_script_info_);\n  (*(code *)PTR_finalize_00433340)(pVVar1);\n  return pVVar1;\n}" { (declaration "Version_script_info *pVVar1;" type_identifier (pointer_declarator "*pVVar1" * identifier) ;) (expression_statement "pVVar1 = &(this->script_options_).version_script_info_;" (assignment_expression "pVVar1 = &(this->script_options_).version_script_info_" identifier = (pointer_expression "&(this->script_options_).version_script_info_" & (field_expression "(this->script_options_).version_script_info_" (parenthesized_expression "(this->script_options_)" ( (field_expression "this->script_options_" identifier -> field_identifier) )) . field_identifier))) ;) (expression_statement "(*(code *)PTR_finalize_00433340)(&(this->options_).dynamic_list_.version_script_info_);" (call_expression "(*(code *)PTR_finalize_00433340)(&(this->options_).dynamic_list_.version_script_info_)" (parenthesized_expression "(*(code *)PTR_finalize_00433340)" ( (pointer_expression "*(code *)PTR_finalize_00433340" * (cast_expression "(code *)PTR_finalize_00433340" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(&(this->options_).dynamic_list_.version_script_info_)" ( (pointer_expression "&(this->options_).dynamic_list_.version_script_info_" & (field_expression "(this->options_).dynamic_list_.version_script_info_" (field_expression "(this->options_).dynamic_list_" (parenthesized_expression "(this->options_)" ( (field_expression "this->options_" identifier -> field_identifier) )) . field_identifier) . field_identifier)) ))) ;) (expression_statement "(*(code *)PTR_finalize_00433340)(pVVar1);" (call_expression "(*(code *)PTR_finalize_00433340)(pVVar1)" (parenthesized_expression "(*(code *)PTR_finalize_00433340)" ( (pointer_expression "*(code *)PTR_finalize_00433340" * (cast_expression "(code *)PTR_finalize_00433340" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(pVVar1)" ( identifier ))) ;) (return_statement "return pVVar1;" return identifier ;) }))
(translation_unit "int FUN_0016e0e0(int param_1)\n\n{\n  (*(code *)PTR_finalize_00433340)(param_1 + 0x59c0);\n  (*(code *)PTR_finalize_00433340)(param_1 + 0x5b20);\n  return param_1 + 0x5b20;\n}\n\n" (function_definition "int FUN_0016e0e0(int param_1)\n\n{\n  (*(code *)PTR_finalize_00433340)(param_1 + 0x59c0);\n  (*(code *)PTR_finalize_00433340)(param_1 + 0x5b20);\n  return param_1 + 0x5b20;\n}" primitive_type (function_declarator "FUN_0016e0e0(int param_1)" identifier (parameter_list "(int param_1)" ( (parameter_declaration "int param_1" primitive_type identifier) ))) (compound_statement "{\n  (*(code *)PTR_finalize_00433340)(param_1 + 0x59c0);\n  (*(code *)PTR_finalize_00433340)(param_1 + 0x5b20);\n  return param_1 + 0x5b20;\n}" { (expression_statement "(*(code *)PTR_finalize_00433340)(param_1 + 0x59c0);" (call_expression "(*(code *)PTR_finalize_00433340)(param_1 + 0x59c0)" (parenthesized_expression "(*(code *)PTR_finalize_00433340)" ( (pointer_expression "*(code *)PTR_finalize_00433340" * (cast_expression "(code *)PTR_finalize_00433340" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(param_1 + 0x59c0)" ( (binary_expression "param_1 + 0x59c0" identifier + number_literal) ))) ;) (expression_statement "(*(code *)PTR_finalize_00433340)(param_1 + 0x5b20);" (call_expression "(*(code *)PTR_finalize_00433340)(param_1 + 0x5b20)" (parenthesized_expression "(*(code *)PTR_finalize_00433340)" ( (pointer_expression "*(code *)PTR_finalize_00433340" * (cast_expression "(code *)PTR_finalize_00433340" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(param_1 + 0x5b20)" ( (binary_expression "param_1 + 0x5b20" identifier + number_literal) ))) ;) (return_statement "return param_1 + 0x5b20;" return (binary_expression "param_1 + 0x5b20" identifier + number_literal) ;) })))
(translation_unit (function_definition TYPE (function_declarator IDENT (parameter_list ( (parameter_declaration TYPE IDENT) ))) (compound_statement { (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) )) (argument_list ( (binary_expression IDENT + LIT) ))) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) )) (argument_list ( (binary_expression IDENT + LIT) ))) ;) (return_statement return (binary_expression IDENT + LIT) ;) })))
(function_definition "int FUN_0016e0e0(int param_1)\n\n{\n  (*(code *)PTR_finalize_00433340)(param_1 + 0x59c0);\n  (*(code *)PTR_finalize_00433340)(param_1 + 0x5b20);\n  return param_1 + 0x5b20;\n}" (primitive_type "int") (function_declarator "FUN_0016e0e0(int param_1)" (identifier "FUN_0016e0e0") (parameter_list "(int param_1)" (( "(") (parameter_declaration "int param_1" (primitive_type "int") (identifier "param_1")) () ")"))) (compound_statement "{\n  (*(code *)PTR_finalize_00433340)(param_1 + 0x59c0);\n  (*(code *)PTR_finalize_00433340)(param_1 + 0x5b20);\n  return param_1 + 0x5b20;\n}" ({ "{") (expression_statement "(*(code *)PTR_finalize_00433340)(param_1 + 0x59c0);" (call_expression "(*(code *)PTR_finalize_00433340)(param_1 + 0x59c0)" (parenthesized_expression "(*(code *)PTR_finalize_00433340)" (( "(") (pointer_expression "*(code *)PTR_finalize_00433340" (* "*") (cast_expression "(code *)PTR_finalize_00433340" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_finalize_00433340"))) () ")")) (argument_list "(param_1 + 0x59c0)" (( "(") (binary_expression "param_1 + 0x59c0" (identifier "param_1") (+ "+") (number_literal "0x59c0")) () ")"))) (; ";")) (expression_statement "(*(code *)PTR_finalize_00433340)(param_1 + 0x5b20);" (call_expression "(*(code *)PTR_finalize_00433340)(param_1 + 0x5b20)" (parenthesized_expression "(*(code *)PTR_finalize_00433340)" (( "(") (pointer_expression "*(code *)PTR_finalize_00433340" (* "*") (cast_expression "(code *)PTR_finalize_00433340" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_finalize_00433340"))) () ")")) (argument_list "(param_1 + 0x5b20)" (( "(") (binary_expression "param_1 + 0x5b20" (identifier "param_1") (+ "+") (number_literal "0x5b20")) () ")"))) (; ";")) (return_statement "return param_1 + 0x5b20;" (return "return") (binary_expression "param_1 + 0x5b20" (identifier "param_1") (+ "+") (number_literal "0x5b20")) (; ";")) (} "}")))
(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 (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (identifier)))) arguments: (argument_list (binary_expression left: (identifier) right: (number_literal))))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (identifier)))) arguments: (argument_list (binary_expression left: (identifier) right: (number_literal))))) (return_statement (binary_expression left: (identifier) right: (number_literal))))))

int MASKED(int param_1)

{
  (*(code *)PTR_finalize_00433340)(param_1 + 0x59c0);
  (*(code *)PTR_finalize_00433340)(param_1 + 0x5b20);
  return param_1 + 0x5b20;
}

