
/* WARNING: Struct "Output_section_data": ignoring overlapping field "output_section_" */
/* WARNING: Struct "Output_section": ignoring overlapping field "name_" */
/* DWARF original prototype: uint lookup_reloc(Dwarf_ranges_table * this, off_t off, off_t *
   target_off) */

uint __thiscall
gold::Dwarf_ranges_table::lookup_reloc(Dwarf_ranges_table *this,off_t off,off_t *target_off)

{
  uint uVar1;
  uint uVar2;
  uint uVar3;
  off_t value;
  
  uVar1 = (*this->ranges_reloc_mapper_->_vptr_Elf_reloc_mapper[5])(this->ranges_reloc_mapper_);
  if (uVar1 != 0) {
    if (this->reloc_type_ == 9) {
      uVar3 = off._0_4_[1];
      uVar2 = uVar3 + value._4_4_;
      off._0_4_[1] = uVar2;
      *off._0_4_ = (uint)(uVar2 < uVar3) + *off._0_4_ + value._0_4_;
      return uVar1;
    }
    *off._0_4_ = value._0_4_;
    off._0_4_[1] = value._4_4_;
  }
  return uVar1;
}



/* gold::Dwarf_ranges_table::lookup_reloc(long long, long long*) */

void gold::Dwarf_ranges_table::lookup_reloc(longlong param_1,longlong *param_2)

{
  int iVar1;
  uint uVar2;
  uint uVar3;
  int local_18;
  int local_14;
  
  iVar1 = (**(code **)(**(int **)((int)param_2 + 0x14) + 0x14))(*(int **)((int)param_2 + 0x14));
  if (iVar1 != 0) {
    if (*(int *)(param_2 + 3) == 9) {
      uVar3 = param_1._0_4_[1];
      uVar2 = uVar3 + local_14;
      param_1._0_4_[1] = uVar2;
      *param_1._0_4_ = (uint)(uVar2 < uVar3) + *param_1._0_4_ + local_18;
      return;
    }
    *param_1._0_4_ = local_18;
    param_1._0_4_[1] = local_14;
  }
  return;
}


lw v0,0x14(a0)
addiu sp,sp,-0x38
addiu v1,sp,0x20
sw s1,0x30(sp)
or s1,a0,zero
or a0,v0,zero
lw v0,0x0(v0)
sw v1,0x10(sp)
sw s0,0x2c(sp)
sw ra,0x34(sp)
lw t9,0x14(v0)
jalr t9
_lw s0,0x48(sp)
beq v0,zero,0x002e14e0
_li a1,0x9
lw a2,0x18(s1)
lw a3,0x20(sp)
beq a2,a1,0x002e14f4
_lw v1,0x24(sp)
sw a3,0x0(s0)
sw v1,0x4(s0)
lw ra,0x34(sp)
lw s1,0x30(sp)
lw s0,0x2c(sp)
jr ra
_addiu sp,sp,0x38
lw a0,0x4(s0)
lw a1,0x0(s0)
lw ra,0x34(sp)
addu v1,a0,v1
lw s1,0x30(sp)
addu a3,a1,a3
sltu a0,v1,a0
sw v1,0x4(s0)
addu a0,a0,a3
sw a0,0x0(s0)
lw s0,0x2c(sp)
jr ra
_addiu sp,sp,0x38
(translation_unit "/* gold::Dwarf_ranges_table::lookup_reloc(long long, long long*) */\n\nvoid gold::Dwarf_ranges_table::lookup_reloc(longlong param_1,longlong *param_2)\n\n{\n  int iVar1;\n  uint uVar2;\n  uint uVar3;\n  int local_18;\n  int local_14;\n  \n  iVar1 = (**(code **)(**(int **)((int)param_2 + 0x14) + 0x14))(*(int **)((int)param_2 + 0x14));\n  if (iVar1 != 0) {\n    if (*(int *)(param_2 + 3) == 9) {\n      uVar3 = param_1._0_4_[1];\n      uVar2 = uVar3 + local_14;\n      param_1._0_4_[1] = uVar2;\n      *param_1._0_4_ = (uint)(uVar2 < uVar3) + *param_1._0_4_ + local_18;\n      return;\n    }\n    *param_1._0_4_ = local_18;\n    param_1._0_4_[1] = local_14;\n  }\n  return;\n}\n\n" comment (function_definition "void gold::Dwarf_ranges_table::lookup_reloc(longlong param_1,longlong *param_2)\n\n{\n  int iVar1;\n  uint uVar2;\n  uint uVar3;\n  int local_18;\n  int local_14;\n  \n  iVar1 = (**(code **)(**(int **)((int)param_2 + 0x14) + 0x14))(*(int **)((int)param_2 + 0x14));\n  if (iVar1 != 0) {\n    if (*(int *)(param_2 + 3) == 9) {\n      uVar3 = param_1._0_4_[1];\n      uVar2 = uVar3 + local_14;\n      param_1._0_4_[1] = uVar2;\n      *param_1._0_4_ = (uint)(uVar2 < uVar3) + *param_1._0_4_ + local_18;\n      return;\n    }\n    *param_1._0_4_ = local_18;\n    param_1._0_4_[1] = local_14;\n  }\n  return;\n}" primitive_type (ERROR "gold::Dwarf_ranges_table::" identifier : : identifier : :) (function_declarator "lookup_reloc(longlong param_1,longlong *param_2)" identifier (parameter_list "(longlong param_1,longlong *param_2)" ( (parameter_declaration "longlong param_1" type_identifier identifier) , (parameter_declaration "longlong *param_2" type_identifier (pointer_declarator "*param_2" * identifier)) ))) (compound_statement "{\n  int iVar1;\n  uint uVar2;\n  uint uVar3;\n  int local_18;\n  int local_14;\n  \n  iVar1 = (**(code **)(**(int **)((int)param_2 + 0x14) + 0x14))(*(int **)((int)param_2 + 0x14));\n  if (iVar1 != 0) {\n    if (*(int *)(param_2 + 3) == 9) {\n      uVar3 = param_1._0_4_[1];\n      uVar2 = uVar3 + local_14;\n      param_1._0_4_[1] = uVar2;\n      *param_1._0_4_ = (uint)(uVar2 < uVar3) + *param_1._0_4_ + local_18;\n      return;\n    }\n    *param_1._0_4_ = local_18;\n    param_1._0_4_[1] = local_14;\n  }\n  return;\n}" { (declaration "int iVar1;" primitive_type identifier ;) (declaration "uint uVar2;" type_identifier identifier ;) (declaration "uint uVar3;" type_identifier identifier ;) (declaration "int local_18;" primitive_type identifier ;) (declaration "int local_14;" primitive_type identifier ;) (expression_statement "iVar1 = (**(code **)(**(int **)((int)param_2 + 0x14) + 0x14))(*(int **)((int)param_2 + 0x14));" (assignment_expression "iVar1 = (**(code **)(**(int **)((int)param_2 + 0x14) + 0x14))(*(int **)((int)param_2 + 0x14))" identifier = (call_expression "(**(code **)(**(int **)((int)param_2 + 0x14) + 0x14))(*(int **)((int)param_2 + 0x14))" (parenthesized_expression "(**(code **)(**(int **)((int)param_2 + 0x14) + 0x14))" ( (pointer_expression "**(code **)(**(int **)((int)param_2 + 0x14) + 0x14)" * (pointer_expression "*(code **)(**(int **)((int)param_2 + 0x14) + 0x14)" * (cast_expression "(code **)(**(int **)((int)param_2 + 0x14) + 0x14)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(**(int **)((int)param_2 + 0x14) + 0x14)" ( (binary_expression "**(int **)((int)param_2 + 0x14) + 0x14" (pointer_expression "**(int **)((int)param_2 + 0x14)" * (pointer_expression "*(int **)((int)param_2 + 0x14)" * (cast_expression "(int **)((int)param_2 + 0x14)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "((int)param_2 + 0x14)" ( (binary_expression "(int)param_2 + 0x14" (cast_expression "(int)param_2" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) ))))) + number_literal) ))))) )) (argument_list "(*(int **)((int)param_2 + 0x14))" ( (pointer_expression "*(int **)((int)param_2 + 0x14)" * (cast_expression "(int **)((int)param_2 + 0x14)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "((int)param_2 + 0x14)" ( (binary_expression "(int)param_2 + 0x14" (cast_expression "(int)param_2" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) )))) ;) (if_statement "if (iVar1 != 0) {\n    if (*(int *)(param_2 + 3) == 9) {\n      uVar3 = param_1._0_4_[1];\n      uVar2 = uVar3 + local_14;\n      param_1._0_4_[1] = uVar2;\n      *param_1._0_4_ = (uint)(uVar2 < uVar3) + *param_1._0_4_ + local_18;\n      return;\n    }\n    *param_1._0_4_ = local_18;\n    param_1._0_4_[1] = local_14;\n  }" if (parenthesized_expression "(iVar1 != 0)" ( (binary_expression "iVar1 != 0" identifier != number_literal) )) (compound_statement "{\n    if (*(int *)(param_2 + 3) == 9) {\n      uVar3 = param_1._0_4_[1];\n      uVar2 = uVar3 + local_14;\n      param_1._0_4_[1] = uVar2;\n      *param_1._0_4_ = (uint)(uVar2 < uVar3) + *param_1._0_4_ + local_18;\n      return;\n    }\n    *param_1._0_4_ = local_18;\n    param_1._0_4_[1] = local_14;\n  }" { (if_statement "if (*(int *)(param_2 + 3) == 9) {\n      uVar3 = param_1._0_4_[1];\n      uVar2 = uVar3 + local_14;\n      param_1._0_4_[1] = uVar2;\n      *param_1._0_4_ = (uint)(uVar2 < uVar3) + *param_1._0_4_ + local_18;\n      return;\n    }" if (parenthesized_expression "(*(int *)(param_2 + 3) == 9)" ( (binary_expression "*(int *)(param_2 + 3) == 9" (pointer_expression "*(int *)(param_2 + 3)" * (cast_expression "(int *)(param_2 + 3)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_2 + 3)" ( (binary_expression "param_2 + 3" identifier + number_literal) )))) == number_literal) )) (compound_statement "{\n      uVar3 = param_1._0_4_[1];\n      uVar2 = uVar3 + local_14;\n      param_1._0_4_[1] = uVar2;\n      *param_1._0_4_ = (uint)(uVar2 < uVar3) + *param_1._0_4_ + local_18;\n      return;\n    }" { (expression_statement "uVar3 = param_1._0_4_[1];" (assignment_expression "uVar3 = param_1._0_4_[1]" identifier = (subscript_expression "param_1._0_4_[1]" (field_expression "param_1._0_4_" identifier . field_identifier) [ number_literal ])) ;) (expression_statement "uVar2 = uVar3 + local_14;" (assignment_expression "uVar2 = uVar3 + local_14" identifier = (binary_expression "uVar3 + local_14" identifier + identifier)) ;) (expression_statement "param_1._0_4_[1] = uVar2;" (assignment_expression "param_1._0_4_[1] = uVar2" (subscript_expression "param_1._0_4_[1]" (field_expression "param_1._0_4_" identifier . field_identifier) [ number_literal ]) = identifier) ;) (expression_statement "*param_1._0_4_ = (uint)(uVar2 < uVar3) + *param_1._0_4_ + local_18;" (assignment_expression "*param_1._0_4_ = (uint)(uVar2 < uVar3) + *param_1._0_4_ + local_18" (pointer_expression "*param_1._0_4_" * (field_expression "param_1._0_4_" identifier . field_identifier)) = (binary_expression "(uint)(uVar2 < uVar3) + *param_1._0_4_ + local_18" (binary_expression "(uint)(uVar2 < uVar3) + *param_1._0_4_" (call_expression "(uint)(uVar2 < uVar3)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(uVar2 < uVar3)" ( (binary_expression "uVar2 < uVar3" identifier < identifier) ))) + (pointer_expression "*param_1._0_4_" * (field_expression "param_1._0_4_" identifier . field_identifier))) + identifier)) ;) (return_statement "return;" return ;) })) (expression_statement "*param_1._0_4_ = local_18;" (assignment_expression "*param_1._0_4_ = local_18" (pointer_expression "*param_1._0_4_" * (field_expression "param_1._0_4_" identifier . field_identifier)) = identifier) ;) (expression_statement "param_1._0_4_[1] = local_14;" (assignment_expression "param_1._0_4_[1] = local_14" (subscript_expression "param_1._0_4_[1]" (field_expression "param_1._0_4_" identifier . field_identifier) [ number_literal ]) = identifier) ;) })) (return_statement "return;" return ;) })))
(translation_unit "/* WARNING: Struct "Output_section_data": ignoring overlapping field "output_section_" */\n/* WARNING: Struct "Output_section": ignoring overlapping field "name_" */\n/* DWARF original prototype: uint lookup_reloc(Dwarf_ranges_table * this, off_t off, off_t *\n   target_off) */\n\nuint __thiscall\ngold::Dwarf_ranges_table::lookup_reloc(Dwarf_ranges_table *this,off_t off,off_t *target_off)\n\n{\n  uint uVar1;\n  uint uVar2;\n  uint uVar3;\n  off_t value;\n  \n  uVar1 = (*this->ranges_reloc_mapper_->_vptr_Elf_reloc_mapper[5])(this->ranges_reloc_mapper_);\n  if (uVar1 != 0) {\n    if (this->reloc_type_ == 9) {\n      uVar3 = off._0_4_[1];\n      uVar2 = uVar3 + value._4_4_;\n      off._0_4_[1] = uVar2;\n      *off._0_4_ = (uint)(uVar2 < uVar3) + *off._0_4_ + value._0_4_;\n      return uVar1;\n    }\n    *off._0_4_ = value._0_4_;\n    off._0_4_[1] = value._4_4_;\n  }\n  return uVar1;\n}\n\n" comment comment comment (function_definition "uint __thiscall\ngold::Dwarf_ranges_table::lookup_reloc(Dwarf_ranges_table *this,off_t off,off_t *target_off)\n\n{\n  uint uVar1;\n  uint uVar2;\n  uint uVar3;\n  off_t value;\n  \n  uVar1 = (*this->ranges_reloc_mapper_->_vptr_Elf_reloc_mapper[5])(this->ranges_reloc_mapper_);\n  if (uVar1 != 0) {\n    if (this->reloc_type_ == 9) {\n      uVar3 = off._0_4_[1];\n      uVar2 = uVar3 + value._4_4_;\n      off._0_4_[1] = uVar2;\n      *off._0_4_ = (uint)(uVar2 < uVar3) + *off._0_4_ + value._0_4_;\n      return uVar1;\n    }\n    *off._0_4_ = value._0_4_;\n    off._0_4_[1] = value._4_4_;\n  }\n  return uVar1;\n}" type_identifier (ms_call_modifier "__thiscall" __thiscall) (ERROR "gold::Dwarf_ranges_table::" identifier : : identifier : :) (function_declarator "lookup_reloc(Dwarf_ranges_table *this,off_t off,off_t *target_off)" identifier (parameter_list "(Dwarf_ranges_table *this,off_t off,off_t *target_off)" ( (parameter_declaration "Dwarf_ranges_table *this" type_identifier (pointer_declarator "*this" * identifier)) , (parameter_declaration "off_t off" type_identifier identifier) , (parameter_declaration "off_t *target_off" type_identifier (pointer_declarator "*target_off" * identifier)) ))) (compound_statement "{\n  uint uVar1;\n  uint uVar2;\n  uint uVar3;\n  off_t value;\n  \n  uVar1 = (*this->ranges_reloc_mapper_->_vptr_Elf_reloc_mapper[5])(this->ranges_reloc_mapper_);\n  if (uVar1 != 0) {\n    if (this->reloc_type_ == 9) {\n      uVar3 = off._0_4_[1];\n      uVar2 = uVar3 + value._4_4_;\n      off._0_4_[1] = uVar2;\n      *off._0_4_ = (uint)(uVar2 < uVar3) + *off._0_4_ + value._0_4_;\n      return uVar1;\n    }\n    *off._0_4_ = value._0_4_;\n    off._0_4_[1] = value._4_4_;\n  }\n  return uVar1;\n}" { (declaration "uint uVar1;" type_identifier identifier ;) (declaration "uint uVar2;" type_identifier identifier ;) (declaration "uint uVar3;" type_identifier identifier ;) (declaration "off_t value;" type_identifier identifier ;) (expression_statement "uVar1 = (*this->ranges_reloc_mapper_->_vptr_Elf_reloc_mapper[5])(this->ranges_reloc_mapper_);" (assignment_expression "uVar1 = (*this->ranges_reloc_mapper_->_vptr_Elf_reloc_mapper[5])(this->ranges_reloc_mapper_)" identifier = (call_expression "(*this->ranges_reloc_mapper_->_vptr_Elf_reloc_mapper[5])(this->ranges_reloc_mapper_)" (parenthesized_expression "(*this->ranges_reloc_mapper_->_vptr_Elf_reloc_mapper[5])" ( (pointer_expression "*this->ranges_reloc_mapper_->_vptr_Elf_reloc_mapper[5]" * (subscript_expression "this->ranges_reloc_mapper_->_vptr_Elf_reloc_mapper[5]" (field_expression "this->ranges_reloc_mapper_->_vptr_Elf_reloc_mapper" (field_expression "this->ranges_reloc_mapper_" identifier -> field_identifier) -> field_identifier) [ number_literal ])) )) (argument_list "(this->ranges_reloc_mapper_)" ( (field_expression "this->ranges_reloc_mapper_" identifier -> field_identifier) )))) ;) (if_statement "if (uVar1 != 0) {\n    if (this->reloc_type_ == 9) {\n      uVar3 = off._0_4_[1];\n      uVar2 = uVar3 + value._4_4_;\n      off._0_4_[1] = uVar2;\n      *off._0_4_ = (uint)(uVar2 < uVar3) + *off._0_4_ + value._0_4_;\n      return uVar1;\n    }\n    *off._0_4_ = value._0_4_;\n    off._0_4_[1] = value._4_4_;\n  }" if (parenthesized_expression "(uVar1 != 0)" ( (binary_expression "uVar1 != 0" identifier != number_literal) )) (compound_statement "{\n    if (this->reloc_type_ == 9) {\n      uVar3 = off._0_4_[1];\n      uVar2 = uVar3 + value._4_4_;\n      off._0_4_[1] = uVar2;\n      *off._0_4_ = (uint)(uVar2 < uVar3) + *off._0_4_ + value._0_4_;\n      return uVar1;\n    }\n    *off._0_4_ = value._0_4_;\n    off._0_4_[1] = value._4_4_;\n  }" { (if_statement "if (this->reloc_type_ == 9) {\n      uVar3 = off._0_4_[1];\n      uVar2 = uVar3 + value._4_4_;\n      off._0_4_[1] = uVar2;\n      *off._0_4_ = (uint)(uVar2 < uVar3) + *off._0_4_ + value._0_4_;\n      return uVar1;\n    }" if (parenthesized_expression "(this->reloc_type_ == 9)" ( (binary_expression "this->reloc_type_ == 9" (field_expression "this->reloc_type_" identifier -> field_identifier) == number_literal) )) (compound_statement "{\n      uVar3 = off._0_4_[1];\n      uVar2 = uVar3 + value._4_4_;\n      off._0_4_[1] = uVar2;\n      *off._0_4_ = (uint)(uVar2 < uVar3) + *off._0_4_ + value._0_4_;\n      return uVar1;\n    }" { (expression_statement "uVar3 = off._0_4_[1];" (assignment_expression "uVar3 = off._0_4_[1]" identifier = (subscript_expression "off._0_4_[1]" (field_expression "off._0_4_" identifier . field_identifier) [ number_literal ])) ;) (expression_statement "uVar2 = uVar3 + value._4_4_;" (assignment_expression "uVar2 = uVar3 + value._4_4_" identifier = (binary_expression "uVar3 + value._4_4_" identifier + (field_expression "value._4_4_" identifier . field_identifier))) ;) (expression_statement "off._0_4_[1] = uVar2;" (assignment_expression "off._0_4_[1] = uVar2" (subscript_expression "off._0_4_[1]" (field_expression "off._0_4_" identifier . field_identifier) [ number_literal ]) = identifier) ;) (expression_statement "*off._0_4_ = (uint)(uVar2 < uVar3) + *off._0_4_ + value._0_4_;" (assignment_expression "*off._0_4_ = (uint)(uVar2 < uVar3) + *off._0_4_ + value._0_4_" (pointer_expression "*off._0_4_" * (field_expression "off._0_4_" identifier . field_identifier)) = (binary_expression "(uint)(uVar2 < uVar3) + *off._0_4_ + value._0_4_" (binary_expression "(uint)(uVar2 < uVar3) + *off._0_4_" (call_expression "(uint)(uVar2 < uVar3)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(uVar2 < uVar3)" ( (binary_expression "uVar2 < uVar3" identifier < identifier) ))) + (pointer_expression "*off._0_4_" * (field_expression "off._0_4_" identifier . field_identifier))) + (field_expression "value._0_4_" identifier . field_identifier))) ;) (return_statement "return uVar1;" return identifier ;) })) (expression_statement "*off._0_4_ = value._0_4_;" (assignment_expression "*off._0_4_ = value._0_4_" (pointer_expression "*off._0_4_" * (field_expression "off._0_4_" identifier . field_identifier)) = (field_expression "value._0_4_" identifier . field_identifier)) ;) (expression_statement "off._0_4_[1] = value._4_4_;" (assignment_expression "off._0_4_[1] = value._4_4_" (subscript_expression "off._0_4_[1]" (field_expression "off._0_4_" identifier . field_identifier) [ number_literal ]) = (field_expression "value._4_4_" identifier . field_identifier)) ;) })) (return_statement "return uVar1;" return identifier ;) })))
(translation_unit "void gold::Dwarf_ranges_table::lookup_reloc(longlong param_1,longlong *param_2)\n\n{\n  int iVar1;\n  uint uVar2;\n  uint uVar3;\n  int local_18;\n  int local_14;\n  \n  iVar1 = (**(code **)(**(int **)((int)param_2 + 0x14) + 0x14))(*(int **)((int)param_2 + 0x14));\n  if (iVar1 != 0) {\n    if (*(int *)(param_2 + 3) == 9) {\n      uVar3 = param_1._0_4_[1];\n      uVar2 = uVar3 + local_14;\n      param_1._0_4_[1] = uVar2;\n      *param_1._0_4_ = (uint)(uVar2 < uVar3) + *param_1._0_4_ + local_18;\n      return;\n    }\n    *param_1._0_4_ = local_18;\n    param_1._0_4_[1] = local_14;\n  }\n  return;\n}\n\n" (function_definition "void gold::Dwarf_ranges_table::lookup_reloc(longlong param_1,longlong *param_2)\n\n{\n  int iVar1;\n  uint uVar2;\n  uint uVar3;\n  int local_18;\n  int local_14;\n  \n  iVar1 = (**(code **)(**(int **)((int)param_2 + 0x14) + 0x14))(*(int **)((int)param_2 + 0x14));\n  if (iVar1 != 0) {\n    if (*(int *)(param_2 + 3) == 9) {\n      uVar3 = param_1._0_4_[1];\n      uVar2 = uVar3 + local_14;\n      param_1._0_4_[1] = uVar2;\n      *param_1._0_4_ = (uint)(uVar2 < uVar3) + *param_1._0_4_ + local_18;\n      return;\n    }\n    *param_1._0_4_ = local_18;\n    param_1._0_4_[1] = local_14;\n  }\n  return;\n}" primitive_type (ERROR "gold::Dwarf_ranges_table::" identifier : : identifier : :) (function_declarator "lookup_reloc(longlong param_1,longlong *param_2)" identifier (parameter_list "(longlong param_1,longlong *param_2)" ( (parameter_declaration "longlong param_1" type_identifier identifier) , (parameter_declaration "longlong *param_2" type_identifier (pointer_declarator "*param_2" * identifier)) ))) (compound_statement "{\n  int iVar1;\n  uint uVar2;\n  uint uVar3;\n  int local_18;\n  int local_14;\n  \n  iVar1 = (**(code **)(**(int **)((int)param_2 + 0x14) + 0x14))(*(int **)((int)param_2 + 0x14));\n  if (iVar1 != 0) {\n    if (*(int *)(param_2 + 3) == 9) {\n      uVar3 = param_1._0_4_[1];\n      uVar2 = uVar3 + local_14;\n      param_1._0_4_[1] = uVar2;\n      *param_1._0_4_ = (uint)(uVar2 < uVar3) + *param_1._0_4_ + local_18;\n      return;\n    }\n    *param_1._0_4_ = local_18;\n    param_1._0_4_[1] = local_14;\n  }\n  return;\n}" { (declaration "int iVar1;" primitive_type identifier ;) (declaration "uint uVar2;" type_identifier identifier ;) (declaration "uint uVar3;" type_identifier identifier ;) (declaration "int local_18;" primitive_type identifier ;) (declaration "int local_14;" primitive_type identifier ;) (expression_statement "iVar1 = (**(code **)(**(int **)((int)param_2 + 0x14) + 0x14))(*(int **)((int)param_2 + 0x14));" (assignment_expression "iVar1 = (**(code **)(**(int **)((int)param_2 + 0x14) + 0x14))(*(int **)((int)param_2 + 0x14))" identifier = (call_expression "(**(code **)(**(int **)((int)param_2 + 0x14) + 0x14))(*(int **)((int)param_2 + 0x14))" (parenthesized_expression "(**(code **)(**(int **)((int)param_2 + 0x14) + 0x14))" ( (pointer_expression "**(code **)(**(int **)((int)param_2 + 0x14) + 0x14)" * (pointer_expression "*(code **)(**(int **)((int)param_2 + 0x14) + 0x14)" * (cast_expression "(code **)(**(int **)((int)param_2 + 0x14) + 0x14)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(**(int **)((int)param_2 + 0x14) + 0x14)" ( (binary_expression "**(int **)((int)param_2 + 0x14) + 0x14" (pointer_expression "**(int **)((int)param_2 + 0x14)" * (pointer_expression "*(int **)((int)param_2 + 0x14)" * (cast_expression "(int **)((int)param_2 + 0x14)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "((int)param_2 + 0x14)" ( (binary_expression "(int)param_2 + 0x14" (cast_expression "(int)param_2" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) ))))) + number_literal) ))))) )) (argument_list "(*(int **)((int)param_2 + 0x14))" ( (pointer_expression "*(int **)((int)param_2 + 0x14)" * (cast_expression "(int **)((int)param_2 + 0x14)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "((int)param_2 + 0x14)" ( (binary_expression "(int)param_2 + 0x14" (cast_expression "(int)param_2" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) )))) ;) (if_statement "if (iVar1 != 0) {\n    if (*(int *)(param_2 + 3) == 9) {\n      uVar3 = param_1._0_4_[1];\n      uVar2 = uVar3 + local_14;\n      param_1._0_4_[1] = uVar2;\n      *param_1._0_4_ = (uint)(uVar2 < uVar3) + *param_1._0_4_ + local_18;\n      return;\n    }\n    *param_1._0_4_ = local_18;\n    param_1._0_4_[1] = local_14;\n  }" if (parenthesized_expression "(iVar1 != 0)" ( (binary_expression "iVar1 != 0" identifier != number_literal) )) (compound_statement "{\n    if (*(int *)(param_2 + 3) == 9) {\n      uVar3 = param_1._0_4_[1];\n      uVar2 = uVar3 + local_14;\n      param_1._0_4_[1] = uVar2;\n      *param_1._0_4_ = (uint)(uVar2 < uVar3) + *param_1._0_4_ + local_18;\n      return;\n    }\n    *param_1._0_4_ = local_18;\n    param_1._0_4_[1] = local_14;\n  }" { (if_statement "if (*(int *)(param_2 + 3) == 9) {\n      uVar3 = param_1._0_4_[1];\n      uVar2 = uVar3 + local_14;\n      param_1._0_4_[1] = uVar2;\n      *param_1._0_4_ = (uint)(uVar2 < uVar3) + *param_1._0_4_ + local_18;\n      return;\n    }" if (parenthesized_expression "(*(int *)(param_2 + 3) == 9)" ( (binary_expression "*(int *)(param_2 + 3) == 9" (pointer_expression "*(int *)(param_2 + 3)" * (cast_expression "(int *)(param_2 + 3)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_2 + 3)" ( (binary_expression "param_2 + 3" identifier + number_literal) )))) == number_literal) )) (compound_statement "{\n      uVar3 = param_1._0_4_[1];\n      uVar2 = uVar3 + local_14;\n      param_1._0_4_[1] = uVar2;\n      *param_1._0_4_ = (uint)(uVar2 < uVar3) + *param_1._0_4_ + local_18;\n      return;\n    }" { (expression_statement "uVar3 = param_1._0_4_[1];" (assignment_expression "uVar3 = param_1._0_4_[1]" identifier = (subscript_expression "param_1._0_4_[1]" (field_expression "param_1._0_4_" identifier . field_identifier) [ number_literal ])) ;) (expression_statement "uVar2 = uVar3 + local_14;" (assignment_expression "uVar2 = uVar3 + local_14" identifier = (binary_expression "uVar3 + local_14" identifier + identifier)) ;) (expression_statement "param_1._0_4_[1] = uVar2;" (assignment_expression "param_1._0_4_[1] = uVar2" (subscript_expression "param_1._0_4_[1]" (field_expression "param_1._0_4_" identifier . field_identifier) [ number_literal ]) = identifier) ;) (expression_statement "*param_1._0_4_ = (uint)(uVar2 < uVar3) + *param_1._0_4_ + local_18;" (assignment_expression "*param_1._0_4_ = (uint)(uVar2 < uVar3) + *param_1._0_4_ + local_18" (pointer_expression "*param_1._0_4_" * (field_expression "param_1._0_4_" identifier . field_identifier)) = (binary_expression "(uint)(uVar2 < uVar3) + *param_1._0_4_ + local_18" (binary_expression "(uint)(uVar2 < uVar3) + *param_1._0_4_" (call_expression "(uint)(uVar2 < uVar3)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(uVar2 < uVar3)" ( (binary_expression "uVar2 < uVar3" identifier < identifier) ))) + (pointer_expression "*param_1._0_4_" * (field_expression "param_1._0_4_" identifier . field_identifier))) + identifier)) ;) (return_statement "return;" return ;) })) (expression_statement "*param_1._0_4_ = local_18;" (assignment_expression "*param_1._0_4_ = local_18" (pointer_expression "*param_1._0_4_" * (field_expression "param_1._0_4_" identifier . field_identifier)) = identifier) ;) (expression_statement "param_1._0_4_[1] = local_14;" (assignment_expression "param_1._0_4_[1] = local_14" (subscript_expression "param_1._0_4_[1]" (field_expression "param_1._0_4_" identifier . field_identifier) [ number_literal ]) = identifier) ;) })) (return_statement "return;" return ;) })))
(translation_unit (function_definition TYPE (ERROR IDENT : : IDENT : :) (function_declarator IDENT (parameter_list ( (parameter_declaration TYPE IDENT) , (parameter_declaration TYPE (pointer_declarator * IDENT)) ))) (compound_statement { (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + LIT) ))))) + LIT) ))))) )) (argument_list ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + LIT) )))) )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (subscript_expression (field_expression IDENT . field_identifier) [ LIT ])) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + IDENT)) ;) (expression_statement (assignment_expression (subscript_expression (field_expression IDENT . field_identifier) [ LIT ]) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (field_expression IDENT . field_identifier)) = (binary_expression (binary_expression (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression IDENT < IDENT) ))) + (pointer_expression * (field_expression IDENT . field_identifier))) + IDENT)) ;) (return_statement return ;) })) (expression_statement (assignment_expression (pointer_expression * (field_expression IDENT . field_identifier)) = IDENT) ;) (expression_statement (assignment_expression (subscript_expression (field_expression IDENT . field_identifier) [ LIT ]) = IDENT) ;) })) (return_statement return ;) })))
(function_definition "void gold::Dwarf_ranges_table::lookup_reloc(longlong param_1,longlong *param_2)\n\n{\n  int iVar1;\n  uint uVar2;\n  uint uVar3;\n  int local_18;\n  int local_14;\n  \n  iVar1 = (**(code **)(**(int **)((int)param_2 + 0x14) + 0x14))(*(int **)((int)param_2 + 0x14));\n  if (iVar1 != 0) {\n    if (*(int *)(param_2 + 3) == 9) {\n      uVar3 = param_1._0_4_[1];\n      uVar2 = uVar3 + local_14;\n      param_1._0_4_[1] = uVar2;\n      *param_1._0_4_ = (uint)(uVar2 < uVar3) + *param_1._0_4_ + local_18;\n      return;\n    }\n    *param_1._0_4_ = local_18;\n    param_1._0_4_[1] = local_14;\n  }\n  return;\n}" (primitive_type "void") (ERROR "gold::Dwarf_ranges_table::" (identifier "gold") (: ":") (: ":") (identifier "Dwarf_ranges_table") (: ":") (: ":")) (function_declarator "lookup_reloc(longlong param_1,longlong *param_2)" (identifier "lookup_reloc") (parameter_list "(longlong param_1,longlong *param_2)" (( "(") (parameter_declaration "longlong param_1" (type_identifier "longlong") (identifier "param_1")) (, ",") (parameter_declaration "longlong *param_2" (type_identifier "longlong") (pointer_declarator "*param_2" (* "*") (identifier "param_2"))) () ")"))) (compound_statement "{\n  int iVar1;\n  uint uVar2;\n  uint uVar3;\n  int local_18;\n  int local_14;\n  \n  iVar1 = (**(code **)(**(int **)((int)param_2 + 0x14) + 0x14))(*(int **)((int)param_2 + 0x14));\n  if (iVar1 != 0) {\n    if (*(int *)(param_2 + 3) == 9) {\n      uVar3 = param_1._0_4_[1];\n      uVar2 = uVar3 + local_14;\n      param_1._0_4_[1] = uVar2;\n      *param_1._0_4_ = (uint)(uVar2 < uVar3) + *param_1._0_4_ + local_18;\n      return;\n    }\n    *param_1._0_4_ = local_18;\n    param_1._0_4_[1] = local_14;\n  }\n  return;\n}" ({ "{") (declaration "int iVar1;" (primitive_type "int") (identifier "iVar1") (; ";")) (declaration "uint uVar2;" (type_identifier "uint") (identifier "uVar2") (; ";")) (declaration "uint uVar3;" (type_identifier "uint") (identifier "uVar3") (; ";")) (declaration "int local_18;" (primitive_type "int") (identifier "local_18") (; ";")) (declaration "int local_14;" (primitive_type "int") (identifier "local_14") (; ";")) (expression_statement "iVar1 = (**(code **)(**(int **)((int)param_2 + 0x14) + 0x14))(*(int **)((int)param_2 + 0x14));" (assignment_expression "iVar1 = (**(code **)(**(int **)((int)param_2 + 0x14) + 0x14))(*(int **)((int)param_2 + 0x14))" (identifier "iVar1") (= "=") (call_expression "(**(code **)(**(int **)((int)param_2 + 0x14) + 0x14))(*(int **)((int)param_2 + 0x14))" (parenthesized_expression "(**(code **)(**(int **)((int)param_2 + 0x14) + 0x14))" (( "(") (pointer_expression "**(code **)(**(int **)((int)param_2 + 0x14) + 0x14)" (* "*") (pointer_expression "*(code **)(**(int **)((int)param_2 + 0x14) + 0x14)" (* "*") (cast_expression "(code **)(**(int **)((int)param_2 + 0x14) + 0x14)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(**(int **)((int)param_2 + 0x14) + 0x14)" (( "(") (binary_expression "**(int **)((int)param_2 + 0x14) + 0x14" (pointer_expression "**(int **)((int)param_2 + 0x14)" (* "*") (pointer_expression "*(int **)((int)param_2 + 0x14)" (* "*") (cast_expression "(int **)((int)param_2 + 0x14)" (( "(") (type_descriptor "int **" (primitive_type "int") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "((int)param_2 + 0x14)" (( "(") (binary_expression "(int)param_2 + 0x14" (cast_expression "(int)param_2" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "param_2")) (+ "+") (number_literal "0x14")) () ")"))))) (+ "+") (number_literal "0x14")) () ")"))))) () ")")) (argument_list "(*(int **)((int)param_2 + 0x14))" (( "(") (pointer_expression "*(int **)((int)param_2 + 0x14)" (* "*") (cast_expression "(int **)((int)param_2 + 0x14)" (( "(") (type_descriptor "int **" (primitive_type "int") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "((int)param_2 + 0x14)" (( "(") (binary_expression "(int)param_2 + 0x14" (cast_expression "(int)param_2" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "param_2")) (+ "+") (number_literal "0x14")) () ")")))) () ")")))) (; ";")) (if_statement "if (iVar1 != 0) {\n    if (*(int *)(param_2 + 3) == 9) {\n      uVar3 = param_1._0_4_[1];\n      uVar2 = uVar3 + local_14;\n      param_1._0_4_[1] = uVar2;\n      *param_1._0_4_ = (uint)(uVar2 < uVar3) + *param_1._0_4_ + local_18;\n      return;\n    }\n    *param_1._0_4_ = local_18;\n    param_1._0_4_[1] = local_14;\n  }" (if "if") (parenthesized_expression "(iVar1 != 0)" (( "(") (binary_expression "iVar1 != 0" (identifier "iVar1") (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n    if (*(int *)(param_2 + 3) == 9) {\n      uVar3 = param_1._0_4_[1];\n      uVar2 = uVar3 + local_14;\n      param_1._0_4_[1] = uVar2;\n      *param_1._0_4_ = (uint)(uVar2 < uVar3) + *param_1._0_4_ + local_18;\n      return;\n    }\n    *param_1._0_4_ = local_18;\n    param_1._0_4_[1] = local_14;\n  }" ({ "{") (if_statement "if (*(int *)(param_2 + 3) == 9) {\n      uVar3 = param_1._0_4_[1];\n      uVar2 = uVar3 + local_14;\n      param_1._0_4_[1] = uVar2;\n      *param_1._0_4_ = (uint)(uVar2 < uVar3) + *param_1._0_4_ + local_18;\n      return;\n    }" (if "if") (parenthesized_expression "(*(int *)(param_2 + 3) == 9)" (( "(") (binary_expression "*(int *)(param_2 + 3) == 9" (pointer_expression "*(int *)(param_2 + 3)" (* "*") (cast_expression "(int *)(param_2 + 3)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_2 + 3)" (( "(") (binary_expression "param_2 + 3" (identifier "param_2") (+ "+") (number_literal "3")) () ")")))) (== "==") (number_literal "9")) () ")")) (compound_statement "{\n      uVar3 = param_1._0_4_[1];\n      uVar2 = uVar3 + local_14;\n      param_1._0_4_[1] = uVar2;\n      *param_1._0_4_ = (uint)(uVar2 < uVar3) + *param_1._0_4_ + local_18;\n      return;\n    }" ({ "{") (expression_statement "uVar3 = param_1._0_4_[1];" (assignment_expression "uVar3 = param_1._0_4_[1]" (identifier "uVar3") (= "=") (subscript_expression "param_1._0_4_[1]" (field_expression "param_1._0_4_" (identifier "param_1") (. ".") (field_identifier "_0_4_")) ([ "[") (number_literal "1") (] "]"))) (; ";")) (expression_statement "uVar2 = uVar3 + local_14;" (assignment_expression "uVar2 = uVar3 + local_14" (identifier "uVar2") (= "=") (binary_expression "uVar3 + local_14" (identifier "uVar3") (+ "+") (identifier "local_14"))) (; ";")) (expression_statement "param_1._0_4_[1] = uVar2;" (assignment_expression "param_1._0_4_[1] = uVar2" (subscript_expression "param_1._0_4_[1]" (field_expression "param_1._0_4_" (identifier "param_1") (. ".") (field_identifier "_0_4_")) ([ "[") (number_literal "1") (] "]")) (= "=") (identifier "uVar2")) (; ";")) (expression_statement "*param_1._0_4_ = (uint)(uVar2 < uVar3) + *param_1._0_4_ + local_18;" (assignment_expression "*param_1._0_4_ = (uint)(uVar2 < uVar3) + *param_1._0_4_ + local_18" (pointer_expression "*param_1._0_4_" (* "*") (field_expression "param_1._0_4_" (identifier "param_1") (. ".") (field_identifier "_0_4_"))) (= "=") (binary_expression "(uint)(uVar2 < uVar3) + *param_1._0_4_ + local_18" (binary_expression "(uint)(uVar2 < uVar3) + *param_1._0_4_" (call_expression "(uint)(uVar2 < uVar3)" (parenthesized_expression "(uint)" (( "(") (identifier "uint") () ")")) (argument_list "(uVar2 < uVar3)" (( "(") (binary_expression "uVar2 < uVar3" (identifier "uVar2") (< "<") (identifier "uVar3")) () ")"))) (+ "+") (pointer_expression "*param_1._0_4_" (* "*") (field_expression "param_1._0_4_" (identifier "param_1") (. ".") (field_identifier "_0_4_")))) (+ "+") (identifier "local_18"))) (; ";")) (return_statement "return;" (return "return") (; ";")) (} "}"))) (expression_statement "*param_1._0_4_ = local_18;" (assignment_expression "*param_1._0_4_ = local_18" (pointer_expression "*param_1._0_4_" (* "*") (field_expression "param_1._0_4_" (identifier "param_1") (. ".") (field_identifier "_0_4_"))) (= "=") (identifier "local_18")) (; ";")) (expression_statement "param_1._0_4_[1] = local_14;" (assignment_expression "param_1._0_4_[1] = local_14" (subscript_expression "param_1._0_4_[1]" (field_expression "param_1._0_4_" (identifier "param_1") (. ".") (field_identifier "_0_4_")) ([ "[") (number_literal "1") (] "]")) (= "=") (identifier "local_14")) (; ";")) (} "}"))) (return_statement "return;" (return "return") (; ";")) (} "}")))
(translation_unit (function_definition type: (primitive_type) (ERROR (identifier) (identifier)) declarator: (function_declarator declarator: (identifier) parameters: (parameter_list (parameter_declaration type: (type_identifier) declarator: (identifier)) (parameter_declaration type: (type_identifier) declarator: (pointer_declarator declarator: (identifier))))) body: (compound_statement (declaration type: (primitive_type) declarator: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (primitive_type) declarator: (identifier)) (declaration type: (primitive_type) declarator: (identifier)) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (number_literal)))))) right: (number_literal))))))) arguments: (argument_list (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (number_literal))))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (if_statement condition: (parenthesized_expression (binary_expression left: (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))))) right: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (subscript_expression argument: (field_expression argument: (identifier) field: (field_identifier)) index: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (identifier)))) (expression_statement (assignment_expression left: (subscript_expression argument: (field_expression argument: (identifier) field: (field_identifier)) index: (number_literal)) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (field_expression argument: (identifier) field: (field_identifier))) right: (binary_expression left: (binary_expression left: (call_expression function: (parenthesized_expression (identifier)) arguments: (argument_list (binary_expression left: (identifier) right: (identifier)))) right: (pointer_expression argument: (field_expression argument: (identifier) field: (field_identifier)))) right: (identifier)))) (return_statement))) (expression_statement (assignment_expression left: (pointer_expression argument: (field_expression argument: (identifier) field: (field_identifier))) right: (identifier))) (expression_statement (assignment_expression left: (subscript_expression argument: (field_expression argument: (identifier) field: (field_identifier)) index: (number_literal)) right: (identifier))))) (return_statement))))

/* gold::Dwarf_ranges_table::MASKED(long long, long long*) */

void gold::Dwarf_ranges_table::MASKED(longlong param_1,longlong *param_2)

{
  int iVar1;
  uint uVar2;
  uint uVar3;
  int local_18;
  int local_14;
  
  iVar1 = (**(code **)(**(int **)((int)param_2 + 0x14) + 0x14))(*(int **)((int)param_2 + 0x14));
  if (iVar1 != 0) {
    if (*(int *)(param_2 + 3) == 9) {
      uVar3 = param_1._0_4_[1];
      uVar2 = uVar3 + local_14;
      param_1._0_4_[1] = uVar2;
      *param_1._0_4_ = (uint)(uVar2 < uVar3) + *param_1._0_4_ + local_18;
      return;
    }
    *param_1._0_4_ = local_18;
    param_1._0_4_[1] = local_14;
  }
  return;
}

