
/* DWARF original prototype: string do_section_name(Sized_dynobj<32,_true> * this, uint shndx) */

string * __thiscall
gold::Sized_dynobj<32,_true>::do_section_name(Sized_dynobj<32,_true> *this,uint shndx)

{
  string *in_stack_00000004;
  
  elfcpp::Elf_file<32,_true,_gold::Object>::section_name(&this->elf_file_,shndx);
  return in_stack_00000004;
}



undefined4 FUN_001ad7c0(undefined4 param_1,int param_2,undefined4 param_3)

{
  FUN_00054750(param_1,param_2 + 0x60,param_3);
  return param_1;
}


PUSH EBX
SUB ESP,0xc
MOV EBX,dword ptr [ESP + 0x14]
PUSH dword ptr [ESP + 0x1c]
MOV EAX,dword ptr [ESP + 0x1c]
ADD EAX,0x60
PUSH EAX
PUSH EBX
CALL 0x00054750
MOV EAX,EBX
ADD ESP,0x14
POP EBX
RET 0x4
(translation_unit "undefined4 FUN_001ad7c0(undefined4 param_1,int param_2,undefined4 param_3)\n\n{\n  FUN_00054750(param_1,param_2 + 0x60,param_3);\n  return param_1;\n}\n\n" (function_definition "undefined4 FUN_001ad7c0(undefined4 param_1,int param_2,undefined4 param_3)\n\n{\n  FUN_00054750(param_1,param_2 + 0x60,param_3);\n  return param_1;\n}" type_identifier (function_declarator "FUN_001ad7c0(undefined4 param_1,int param_2,undefined4 param_3)" identifier (parameter_list "(undefined4 param_1,int param_2,undefined4 param_3)" ( (parameter_declaration "undefined4 param_1" type_identifier identifier) , (parameter_declaration "int param_2" primitive_type identifier) , (parameter_declaration "undefined4 param_3" type_identifier identifier) ))) (compound_statement "{\n  FUN_00054750(param_1,param_2 + 0x60,param_3);\n  return param_1;\n}" { (expression_statement "FUN_00054750(param_1,param_2 + 0x60,param_3);" (call_expression "FUN_00054750(param_1,param_2 + 0x60,param_3)" identifier (argument_list "(param_1,param_2 + 0x60,param_3)" ( identifier , (binary_expression "param_2 + 0x60" identifier + number_literal) , identifier ))) ;) (return_statement "return param_1;" return identifier ;) })))
(translation_unit "/* DWARF original prototype: string do_section_name(Sized_dynobj<32,_true> * this, uint shndx) */\n\nstring * __thiscall\ngold::Sized_dynobj<32,_true>::do_section_name(Sized_dynobj<32,_true> *this,uint shndx)\n\n{\n  string *in_stack_00000004;\n  \n  elfcpp::Elf_file<32,_true,_gold::Object>::section_name(&this->elf_file_,shndx);\n  return in_stack_00000004;\n}\n\n" comment (expression_statement "string * __thiscall\ngold::Sized_dynobj<32,_true>::do_section_name(Sized_dynobj<32,_true> *this,uint shndx)\n\n{\n  string *in_stack_00000004;" (update_expression "string * __thiscall\ngold::Sized_dynobj<32,_true>::do_section_name(Sized_dynobj<32,_true> *this,uint shndx)\n\n{\n  string *in_stack_00000004" (binary_expression "string * __thiscall\ngold::Sized_dynobj<32,_true>::do_section_name(Sized_dynobj<32,_true> *this,uint shndx)\n\n{\n  string *in_stack_00000004" (binary_expression "string * __thiscall\ngold::Sized_dynobj<32" (binary_expression "string * __thiscall" identifier * identifier) (ERROR "gold::Sized_dynobj" identifier : : identifier) < number_literal) (ERROR ",_true" , identifier) > (ERROR "::do_section_name(Sized_dynobj<32,_true> *this,uint shndx)\n\n{" : : (call_expression "do_section_name(Sized_dynobj<32,_true> *this,uint shndx)" identifier (argument_list "(Sized_dynobj<32,_true> *this,uint shndx)" ( (binary_expression "Sized_dynobj<32" identifier < number_literal) , (binary_expression "_true> *this" identifier > (pointer_expression "*this" * identifier)) , (ERROR "uint" identifier) identifier ))) {) (binary_expression "string *in_stack_00000004" identifier * identifier)) --) ;) (labeled_statement "elfcpp::Elf_file<32,_true,_gold::Object>::section_name(&this->elf_file_,shndx);" statement_identifier (ERROR "::Elf_file<32,_true,_gold::Object>:" : : (comma_expression "Elf_file<32,_true,_gold" (binary_expression "Elf_file<32" identifier < number_literal) , (comma_expression "_true,_gold" identifier , identifier)) : : identifier > :) : (expression_statement "section_name(&this->elf_file_,shndx);" (call_expression "section_name(&this->elf_file_,shndx)" identifier (argument_list "(&this->elf_file_,shndx)" ( (pointer_expression "&this->elf_file_" & (field_expression "this->elf_file_" identifier -> field_identifier)) , identifier ))) ;)) (return_statement "return in_stack_00000004;" return identifier ;) (ERROR "}" }))
(translation_unit "undefined4 FUN_001ad7c0(undefined4 param_1,int param_2,undefined4 param_3)\n\n{\n  FUN_00054750(param_1,param_2 + 0x60,param_3);\n  return param_1;\n}\n\n" (function_definition "undefined4 FUN_001ad7c0(undefined4 param_1,int param_2,undefined4 param_3)\n\n{\n  FUN_00054750(param_1,param_2 + 0x60,param_3);\n  return param_1;\n}" type_identifier (function_declarator "FUN_001ad7c0(undefined4 param_1,int param_2,undefined4 param_3)" identifier (parameter_list "(undefined4 param_1,int param_2,undefined4 param_3)" ( (parameter_declaration "undefined4 param_1" type_identifier identifier) , (parameter_declaration "int param_2" primitive_type identifier) , (parameter_declaration "undefined4 param_3" type_identifier identifier) ))) (compound_statement "{\n  FUN_00054750(param_1,param_2 + 0x60,param_3);\n  return param_1;\n}" { (expression_statement "FUN_00054750(param_1,param_2 + 0x60,param_3);" (call_expression "FUN_00054750(param_1,param_2 + 0x60,param_3)" identifier (argument_list "(param_1,param_2 + 0x60,param_3)" ( identifier , (binary_expression "param_2 + 0x60" identifier + number_literal) , identifier ))) ;) (return_statement "return param_1;" return identifier ;) })))
(translation_unit (function_definition TYPE (function_declarator IDENT (parameter_list ( (parameter_declaration TYPE IDENT) , (parameter_declaration TYPE IDENT) , (parameter_declaration TYPE IDENT) ))) (compound_statement { (expression_statement (call_expression IDENT (argument_list ( IDENT , (binary_expression IDENT + LIT) , IDENT ))) ;) (return_statement return IDENT ;) })))
(function_definition "undefined4 FUN_001ad7c0(undefined4 param_1,int param_2,undefined4 param_3)\n\n{\n  FUN_00054750(param_1,param_2 + 0x60,param_3);\n  return param_1;\n}" (type_identifier "undefined4") (function_declarator "FUN_001ad7c0(undefined4 param_1,int param_2,undefined4 param_3)" (identifier "FUN_001ad7c0") (parameter_list "(undefined4 param_1,int param_2,undefined4 param_3)" (( "(") (parameter_declaration "undefined4 param_1" (type_identifier "undefined4") (identifier "param_1")) (, ",") (parameter_declaration "int param_2" (primitive_type "int") (identifier "param_2")) (, ",") (parameter_declaration "undefined4 param_3" (type_identifier "undefined4") (identifier "param_3")) () ")"))) (compound_statement "{\n  FUN_00054750(param_1,param_2 + 0x60,param_3);\n  return param_1;\n}" ({ "{") (expression_statement "FUN_00054750(param_1,param_2 + 0x60,param_3);" (call_expression "FUN_00054750(param_1,param_2 + 0x60,param_3)" (identifier "FUN_00054750") (argument_list "(param_1,param_2 + 0x60,param_3)" (( "(") (identifier "param_1") (, ",") (binary_expression "param_2 + 0x60" (identifier "param_2") (+ "+") (number_literal "0x60")) (, ",") (identifier "param_3") () ")"))) (; ";")) (return_statement "return param_1;" (return "return") (identifier "param_1") (; ";")) (} "}")))

/* DWARF original prototype: string do_section_name(Sized_dynobj<32,_true> * this, uint shndx) */

var_1 * var_2
gold::Sized_dynobj<32,_true>::do_section_name(Sized_dynobj<32,_true> *this,uint shndx)

{
  var_1 *var_3;
  
  elfcpp::Elf_file<32,_true,_gold::Object>::var_4(&this->elf_file_,shndx);
  return var_3;
}


(translation_unit (function_definition type: (type_identifier) declarator: (function_declarator declarator: (identifier) parameters: (parameter_list (parameter_declaration type: (type_identifier) declarator: (identifier)) (parameter_declaration type: (primitive_type) declarator: (identifier)) (parameter_declaration type: (type_identifier) declarator: (identifier)))) body: (compound_statement (expression_statement (call_expression function: (identifier) arguments: (argument_list (identifier) (binary_expression left: (identifier) right: (number_literal)) (identifier)))) (return_statement (identifier)))))

undefined4 MASKED(undefined4 param_1,int param_2,undefined4 param_3)

{
  FUN_00054750(param_1,param_2 + 0x60,param_3);
  return param_1;
}

