
/* DWARF original prototype: bool is_local_section_symbol(Output_reloc<9,_true,_32,_false> * this)
    */

bool __thiscall
gold::Output_reloc<9,_true,_32,_false>::is_local_section_symbol
          (Output_reloc<9,_true,_32,_false> *this)

{
  if (this->local_sym_index_ + 4 < 4) {
    return false;
  }
  return (bool)((byte)this->field_0x1b >> 6 & 1);
}



byte FUN_002033d0(long param_1)

{
  if (*(int *)(param_1 + 0x14) + 4U < 4) {
    return 0;
  }
  return *(byte *)(param_1 + 0x1b) >> 6 & 1;
}


MOV EAX,dword ptr [RDI + 0x14]
LEA EDX,[RAX + 0x4]
XOR EAX,EAX
CMP EDX,0x3
JA 0x002033e0
RET
MOVZX EAX,byte ptr [RDI + 0x1b]
SHR AL,0x6
AND EAX,0x1
RET
(translation_unit "byte FUN_002033d0(long param_1)\n\n{\n  if (*(int *)(param_1 + 0x14) + 4U < 4) {\n    return 0;\n  }\n  return *(byte *)(param_1 + 0x1b) >> 6 & 1;\n}\n\n" (function_definition "byte FUN_002033d0(long param_1)\n\n{\n  if (*(int *)(param_1 + 0x14) + 4U < 4) {\n    return 0;\n  }\n  return *(byte *)(param_1 + 0x1b) >> 6 & 1;\n}" type_identifier (function_declarator "FUN_002033d0(long param_1)" identifier (parameter_list "(long param_1)" ( (parameter_declaration "long param_1" (sized_type_specifier "long" long) identifier) ))) (compound_statement "{\n  if (*(int *)(param_1 + 0x14) + 4U < 4) {\n    return 0;\n  }\n  return *(byte *)(param_1 + 0x1b) >> 6 & 1;\n}" { (if_statement "if (*(int *)(param_1 + 0x14) + 4U < 4) {\n    return 0;\n  }" if (parenthesized_expression "(*(int *)(param_1 + 0x14) + 4U < 4)" ( (binary_expression "*(int *)(param_1 + 0x14) + 4U < 4" (binary_expression "*(int *)(param_1 + 0x14) + 4U" (pointer_expression "*(int *)(param_1 + 0x14)" * (cast_expression "(int *)(param_1 + 0x14)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x14)" ( (binary_expression "param_1 + 0x14" identifier + number_literal) )))) + number_literal) < number_literal) )) (compound_statement "{\n    return 0;\n  }" { (return_statement "return 0;" return number_literal ;) })) (return_statement "return *(byte *)(param_1 + 0x1b) >> 6 & 1;" return (binary_expression "*(byte *)(param_1 + 0x1b) >> 6 & 1" (binary_expression "*(byte *)(param_1 + 0x1b) >> 6" (pointer_expression "*(byte *)(param_1 + 0x1b)" * (cast_expression "(byte *)(param_1 + 0x1b)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x1b)" ( (binary_expression "param_1 + 0x1b" identifier + number_literal) )))) >> number_literal) & number_literal) ;) })))
(translation_unit "/* DWARF original prototype: bool is_local_section_symbol(Output_reloc<9,_true,_32,_false> * this)\n    */\n\nbool __thiscall\ngold::Output_reloc<9,_true,_32,_false>::is_local_section_symbol\n          (Output_reloc<9,_true,_32,_false> *this)\n\n{\n  if (this->local_sym_index_ + 4 < 4) {\n    return false;\n  }\n  return (bool)((byte)this->field_0x1b >> 6 & 1);\n}\n\n" comment (ERROR "bool __thiscall\ngold::Output_reloc<9,_true,_32,_false>::is_local_section_symbol\n          (Output_reloc<9,_true,_32,_false> *this)\n\n{\n  if (this->local_sym_index_ + 4 < 4) {\n    return false;\n  }\n  return (bool)((byte)this->field_0x1b >> 6 & 1);\n}" primitive_type (ms_call_modifier "__thiscall" __thiscall) (ERROR "gold::" identifier : :) identifier (ERROR "<9" < number_literal) , identifier , identifier , (ERROR "_false>::" identifier > : :) (function_declarator "is_local_section_symbol\n          (Output_reloc<9,_true,_32,_false> *this)\n\n{\n  if (this->local_sym_index_ + 4 < 4) {\n    return false;\n  }\n  return (bool)((byte)this->field_0x1b" (function_declarator "is_local_section_symbol\n          (Output_reloc<9,_true,_32,_false> *this)\n\n{\n  if (this->local_sym_index_ + 4 < 4) {\n    return false;\n  }\n  return (bool)" (function_declarator "is_local_section_symbol\n          (Output_reloc<9,_true,_32,_false> *this)\n\n{\n  if (this->local_sym_index_ + 4 < 4)" (function_declarator "is_local_section_symbol\n          (Output_reloc<9,_true,_32,_false> *this)" identifier (parameter_list "(Output_reloc<9,_true,_32,_false> *this)" ( (parameter_declaration "Output_reloc" type_identifier) (ERROR "<9" < number_literal) , (parameter_declaration "_true" type_identifier) , (parameter_declaration "_32" type_identifier) , (parameter_declaration "_false> *this" type_identifier (ERROR ">" >) (pointer_declarator "*this" * identifier)) ))) (ERROR "{\n  if" { if) (parameter_list "(this->local_sym_index_ + 4 < 4)" ( (parameter_declaration "this->local_sym_index_" type_identifier (ERROR "->" ->) identifier) (ERROR "+ 4 < 4" + number_literal < number_literal) ))) (ERROR "{\n    return false;\n  }\n  return" { return false ; } return) (parameter_list "(bool)" ( (parameter_declaration "bool" primitive_type) ))) (ERROR "(" () (parameter_list "(byte)" ( (parameter_declaration "byte" type_identifier) )) identifier (ERROR "->" ->) identifier) >> number_literal & number_literal ) ; }))
(translation_unit "byte FUN_002033d0(long param_1)\n\n{\n  if (*(int *)(param_1 + 0x14) + 4U < 4) {\n    return 0;\n  }\n  return *(byte *)(param_1 + 0x1b) >> 6 & 1;\n}\n\n" (function_definition "byte FUN_002033d0(long param_1)\n\n{\n  if (*(int *)(param_1 + 0x14) + 4U < 4) {\n    return 0;\n  }\n  return *(byte *)(param_1 + 0x1b) >> 6 & 1;\n}" type_identifier (function_declarator "FUN_002033d0(long param_1)" identifier (parameter_list "(long param_1)" ( (parameter_declaration "long param_1" (sized_type_specifier "long" long) identifier) ))) (compound_statement "{\n  if (*(int *)(param_1 + 0x14) + 4U < 4) {\n    return 0;\n  }\n  return *(byte *)(param_1 + 0x1b) >> 6 & 1;\n}" { (if_statement "if (*(int *)(param_1 + 0x14) + 4U < 4) {\n    return 0;\n  }" if (parenthesized_expression "(*(int *)(param_1 + 0x14) + 4U < 4)" ( (binary_expression "*(int *)(param_1 + 0x14) + 4U < 4" (binary_expression "*(int *)(param_1 + 0x14) + 4U" (pointer_expression "*(int *)(param_1 + 0x14)" * (cast_expression "(int *)(param_1 + 0x14)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x14)" ( (binary_expression "param_1 + 0x14" identifier + number_literal) )))) + number_literal) < number_literal) )) (compound_statement "{\n    return 0;\n  }" { (return_statement "return 0;" return number_literal ;) })) (return_statement "return *(byte *)(param_1 + 0x1b) >> 6 & 1;" return (binary_expression "*(byte *)(param_1 + 0x1b) >> 6 & 1" (binary_expression "*(byte *)(param_1 + 0x1b) >> 6" (pointer_expression "*(byte *)(param_1 + 0x1b)" * (cast_expression "(byte *)(param_1 + 0x1b)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x1b)" ( (binary_expression "param_1 + 0x1b" identifier + number_literal) )))) >> number_literal) & number_literal) ;) })))
(translation_unit (function_definition TYPE (function_declarator IDENT (parameter_list ( (parameter_declaration (sized_type_specifier long) IDENT) ))) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) < LIT) )) (compound_statement { (return_statement return LIT ;) })) (return_statement return (binary_expression (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) >> LIT) & LIT) ;) })))
(function_definition "byte FUN_002033d0(long param_1)\n\n{\n  if (*(int *)(param_1 + 0x14) + 4U < 4) {\n    return 0;\n  }\n  return *(byte *)(param_1 + 0x1b) >> 6 & 1;\n}" (type_identifier "byte") (function_declarator "FUN_002033d0(long param_1)" (identifier "FUN_002033d0") (parameter_list "(long param_1)" (( "(") (parameter_declaration "long param_1" (sized_type_specifier "long" (long "long")) (identifier "param_1")) () ")"))) (compound_statement "{\n  if (*(int *)(param_1 + 0x14) + 4U < 4) {\n    return 0;\n  }\n  return *(byte *)(param_1 + 0x1b) >> 6 & 1;\n}" ({ "{") (if_statement "if (*(int *)(param_1 + 0x14) + 4U < 4) {\n    return 0;\n  }" (if "if") (parenthesized_expression "(*(int *)(param_1 + 0x14) + 4U < 4)" (( "(") (binary_expression "*(int *)(param_1 + 0x14) + 4U < 4" (binary_expression "*(int *)(param_1 + 0x14) + 4U" (pointer_expression "*(int *)(param_1 + 0x14)" (* "*") (cast_expression "(int *)(param_1 + 0x14)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x14)" (( "(") (binary_expression "param_1 + 0x14" (identifier "param_1") (+ "+") (number_literal "0x14")) () ")")))) (+ "+") (number_literal "4U")) (< "<") (number_literal "4")) () ")")) (compound_statement "{\n    return 0;\n  }" ({ "{") (return_statement "return 0;" (return "return") (number_literal "0") (; ";")) (} "}"))) (return_statement "return *(byte *)(param_1 + 0x1b) >> 6 & 1;" (return "return") (binary_expression "*(byte *)(param_1 + 0x1b) >> 6 & 1" (binary_expression "*(byte *)(param_1 + 0x1b) >> 6" (pointer_expression "*(byte *)(param_1 + 0x1b)" (* "*") (cast_expression "(byte *)(param_1 + 0x1b)" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x1b)" (( "(") (binary_expression "param_1 + 0x1b" (identifier "param_1") (+ "+") (number_literal "0x1b")) () ")")))) (>> ">>") (number_literal "6")) (& "&") (number_literal "1")) (; ";")) (} "}")))

/* DWARF original prototype: bool is_local_section_symbol(Output_reloc<9,_true,_32,_false> * this)
    */

bool __thiscall
gold::Output_reloc<9,_true,_32,_false>::is_local_section_symbol
          (Output_reloc<9,_true,_32,_false> *this)

{
  if (this->local_sym_index_ + 4 < 4) {
    return false;
  }
  return (bool)((byte)this->field_0x1b >> 6 & 1);
}


(translation_unit (function_definition type: (type_identifier) declarator: (function_declarator declarator: (identifier) parameters: (parameter_list (parameter_declaration type: (sized_type_specifier) declarator: (identifier)))) body: (compound_statement (if_statement condition: (parenthesized_expression (binary_expression left: (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)) right: (number_literal))) consequence: (compound_statement (return_statement (number_literal)))) (return_statement (binary_expression left: (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))))))

byte MASKED(long param_1)

{
  if (*(int *)(param_1 + 0x14) + 4U < 4) {
    return 0;
  }
  return *(byte *)(param_1 + 0x1b) >> 6 & 1;
}

