
/* std::moneypunct<char, true>::do_decimal_point() const */

int __thiscall std::moneypunct<char,true>::do_decimal_point(moneypunct<char,true> *this)

{
  return (int)*(char *)(*(int *)(this + 8) + 0x11);
}



/* std::moneypunct<char, true>::do_decimal_point() const */

int __thiscall std::moneypunct<char,true>::do_decimal_point(moneypunct<char,true> *this)

{
  return (int)*(char *)(*(int *)(this + 8) + 0x11);
}


lw v0,0x8(a0)
jr ra
_lb v0,0x11(v0)
(translation_unit "/* std::moneypunct<char, true>::do_decimal_point() const */\n\nint __thiscall std::moneypunct<char,true>::do_decimal_point(moneypunct<char,true> *this)\n\n{\n  return (int)*(char *)(*(int *)(this + 8) + 0x11);\n}\n\n" comment (declaration "int __thiscall std::moneypunct<char,true>::do_decimal_point(moneypunct<char,true> *this)\n\n{\n  return (int)" primitive_type (ms_call_modifier "__thiscall" __thiscall) (ERROR "std::" identifier : :) identifier (ERROR "<char" < primitive_type) , (ERROR "true>::" identifier > : :) (function_declarator "do_decimal_point(moneypunct<char,true> *this)\n\n{\n  return (int)" (function_declarator "do_decimal_point(moneypunct<char,true> *this)" identifier (parameter_list "(moneypunct<char,true> *this)" ( (parameter_declaration "moneypunct" type_identifier) (ERROR "<char" < primitive_type) , (parameter_declaration "true> *this" type_identifier (ERROR ">" >) (pointer_declarator "*this" * identifier)) ))) (ERROR "{\n  return" { return) (parameter_list "(int)" ( (parameter_declaration "int" primitive_type) ))) ;) (expression_statement "*(char *)(*(int *)(this + 8) + 0x11);" (pointer_expression "*(char *)(*(int *)(this + 8) + 0x11)" * (cast_expression "(char *)(*(int *)(this + 8) + 0x11)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(this + 8) + 0x11)" ( (binary_expression "*(int *)(this + 8) + 0x11" (pointer_expression "*(int *)(this + 8)" * (cast_expression "(int *)(this + 8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(this + 8)" ( (binary_expression "this + 8" identifier + number_literal) )))) + number_literal) )))) ;) (ERROR "}" }))
(translation_unit "/* std::moneypunct<char, true>::do_decimal_point() const */\n\nint __thiscall std::moneypunct<char,true>::do_decimal_point(moneypunct<char,true> *this)\n\n{\n  return (int)*(char *)(*(int *)(this + 8) + 0x11);\n}\n\n" comment (declaration "int __thiscall std::moneypunct<char,true>::do_decimal_point(moneypunct<char,true> *this)\n\n{\n  return (int)" primitive_type (ms_call_modifier "__thiscall" __thiscall) (ERROR "std::" identifier : :) identifier (ERROR "<char" < primitive_type) , (ERROR "true>::" identifier > : :) (function_declarator "do_decimal_point(moneypunct<char,true> *this)\n\n{\n  return (int)" (function_declarator "do_decimal_point(moneypunct<char,true> *this)" identifier (parameter_list "(moneypunct<char,true> *this)" ( (parameter_declaration "moneypunct" type_identifier) (ERROR "<char" < primitive_type) , (parameter_declaration "true> *this" type_identifier (ERROR ">" >) (pointer_declarator "*this" * identifier)) ))) (ERROR "{\n  return" { return) (parameter_list "(int)" ( (parameter_declaration "int" primitive_type) ))) ;) (expression_statement "*(char *)(*(int *)(this + 8) + 0x11);" (pointer_expression "*(char *)(*(int *)(this + 8) + 0x11)" * (cast_expression "(char *)(*(int *)(this + 8) + 0x11)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(this + 8) + 0x11)" ( (binary_expression "*(int *)(this + 8) + 0x11" (pointer_expression "*(int *)(this + 8)" * (cast_expression "(int *)(this + 8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(this + 8)" ( (binary_expression "this + 8" identifier + number_literal) )))) + number_literal) )))) ;) (ERROR "}" }))
(translation_unit "int __thiscall std::moneypunct<char,true>::do_decimal_point(moneypunct<char,true> *this)\n\n{\n  return (int)*(char *)(*(int *)(this + 8) + 0x11);\n}\n\n" (declaration "int __thiscall std::moneypunct<char,true>::do_decimal_point(moneypunct<char,true> *this)\n\n{\n  return (int)" primitive_type (ms_call_modifier "__thiscall" __thiscall) (ERROR "std::" identifier : :) identifier (ERROR "<char" < primitive_type) , (ERROR "true>::" identifier > : :) (function_declarator "do_decimal_point(moneypunct<char,true> *this)\n\n{\n  return (int)" (function_declarator "do_decimal_point(moneypunct<char,true> *this)" identifier (parameter_list "(moneypunct<char,true> *this)" ( (parameter_declaration "moneypunct" type_identifier) (ERROR "<char" < primitive_type) , (parameter_declaration "true> *this" type_identifier (ERROR ">" >) (pointer_declarator "*this" * identifier)) ))) (ERROR "{\n  return" { return) (parameter_list "(int)" ( (parameter_declaration "int" primitive_type) ))) ;) (expression_statement "*(char *)(*(int *)(this + 8) + 0x11);" (pointer_expression "*(char *)(*(int *)(this + 8) + 0x11)" * (cast_expression "(char *)(*(int *)(this + 8) + 0x11)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(this + 8) + 0x11)" ( (binary_expression "*(int *)(this + 8) + 0x11" (pointer_expression "*(int *)(this + 8)" * (cast_expression "(int *)(this + 8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(this + 8)" ( (binary_expression "this + 8" identifier + number_literal) )))) + number_literal) )))) ;) (ERROR "}" }))
(translation_unit (declaration TYPE (ms_call_modifier __thiscall) (ERROR IDENT : :) IDENT (ERROR < TYPE) , (ERROR IDENT > : :) (function_declarator (function_declarator IDENT (parameter_list ( (parameter_declaration TYPE) (ERROR < TYPE) , (parameter_declaration TYPE (ERROR >) (pointer_declarator * IDENT)) ))) (ERROR { return) (parameter_list ( (parameter_declaration TYPE) ))) ;) (expression_statement (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) )))) ;) (ERROR }))
(declaration "int __thiscall std::moneypunct<char,true>::do_decimal_point(moneypunct<char,true> *this)\n\n{\n  return (int)" (primitive_type "int") (ms_call_modifier "__thiscall" (__thiscall "__thiscall")) (ERROR "std::" (identifier "std") (: ":") (: ":")) (identifier "moneypunct") (ERROR "<char" (< "<") (primitive_type "char")) (, ",") (ERROR "true>::" (identifier "true") (> ">") (: ":") (: ":")) (function_declarator "do_decimal_point(moneypunct<char,true> *this)\n\n{\n  return (int)" (function_declarator "do_decimal_point(moneypunct<char,true> *this)" (identifier "do_decimal_point") (parameter_list "(moneypunct<char,true> *this)" (( "(") (parameter_declaration "moneypunct" (type_identifier "moneypunct")) (ERROR "<char" (< "<") (primitive_type "char")) (, ",") (parameter_declaration "true> *this" (type_identifier "true") (ERROR ">" (> ">")) (pointer_declarator "*this" (* "*") (identifier "this"))) () ")"))) (ERROR "{\n  return" ({ "{") (return "return")) (parameter_list "(int)" (( "(") (parameter_declaration "int" (primitive_type "int")) () ")"))) (; "")) (expression_statement "*(char *)(*(int *)(this + 8) + 0x11);" (pointer_expression "*(char *)(*(int *)(this + 8) + 0x11)" (* "*") (cast_expression "(char *)(*(int *)(this + 8) + 0x11)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)(this + 8) + 0x11)" (( "(") (binary_expression "*(int *)(this + 8) + 0x11" (pointer_expression "*(int *)(this + 8)" (* "*") (cast_expression "(int *)(this + 8)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(this + 8)" (( "(") (binary_expression "this + 8" (identifier "this") (+ "+") (number_literal "8")) () ")")))) (+ "+") (number_literal "0x11")) () ")")))) (; ";")) (ERROR "}" (} "}"))

/* std::moneypunct<char, true>::do_decimal_point() const */

int __thiscall std::type_1<char,type_2>::function_1(type_1<char,type_2> *var_1)

{
  return (int)*(char *)(*(int *)(var_1 + 8) + 0x11);
}


(translation_unit (declaration type: (primitive_type) declarator: (ms_call_modifier) (ERROR (identifier)) declarator: (identifier) (ERROR (primitive_type)) (ERROR (identifier)) declarator: (function_declarator declarator: (function_declarator declarator: (identifier) parameters: (parameter_list (parameter_declaration type: (type_identifier)) (ERROR (primitive_type)) (parameter_declaration type: (type_identifier) (ERROR) declarator: (pointer_declarator declarator: (identifier))))) (ERROR) parameters: (parameter_list (parameter_declaration type: (primitive_type)))) (MISSING ";")) (expression_statement (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (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)))))) (ERROR))

/* std::moneypunct<char, true>::MASKED() const */

int __thiscall std::moneypunct<char,true>::MASKED(moneypunct<char,true> *this)

{
  return (int)*(char *)(*(int *)(this + 8) + 0x11);
}

