
/* WARNING: Unknown calling convention -- yet parameter storage is locked */
/* __throw_concurrence_lock_error() */

void __throw_concurrence_lock_error(void)

{
  undefined8 *puVar1;
  
  puVar1 = (undefined8 *)__cxa_allocate_exception(8);
  *puVar1 = &PTR____concurrence_lock_error_00438490;
                    /* WARNING: Subroutine does not return */
  __cxa_throw(puVar1,&__concurrence_lock_error::typeinfo,
              __concurrence_lock_error::~__concurrence_lock_error);
}



void FUN_002da7e0(void)

{
  undefined8 *puVar1;
  
  puVar1 = (undefined8 *)FUN_002dab00(8);
  *puVar1 = &PTR_FUN_00438490;
                    /* WARNING: Subroutine does not return */
  FUN_002d9820(puVar1,&PTR_PTR_FUN_00438450,FUN_002da740);
}


MOV EDI,0x8
SUB RSP,0x8
CALL 0x002dab00
LEA RDX,[0x438480]
LEA RSI,[0x438450]
MOV RDI,RAX
ADD RDX,0x10
MOV qword ptr [RAX],RDX
LEA RDX,[0x2da740]
CALL 0x002d9820
(translation_unit "void FUN_002da7e0(void)\n\n{\n  undefined8 *puVar1;\n  \n  puVar1 = (undefined8 *)FUN_002dab00(8);\n  *puVar1 = &PTR_FUN_00438490;\n                    /* WARNING: Subroutine does not return */\n  FUN_002d9820(puVar1,&PTR_PTR_FUN_00438450,FUN_002da740);\n}\n\n" (function_definition "void FUN_002da7e0(void)\n\n{\n  undefined8 *puVar1;\n  \n  puVar1 = (undefined8 *)FUN_002dab00(8);\n  *puVar1 = &PTR_FUN_00438490;\n                    /* WARNING: Subroutine does not return */\n  FUN_002d9820(puVar1,&PTR_PTR_FUN_00438450,FUN_002da740);\n}" primitive_type (function_declarator "FUN_002da7e0(void)" identifier (parameter_list "(void)" ( (parameter_declaration "void" primitive_type) ))) (compound_statement "{\n  undefined8 *puVar1;\n  \n  puVar1 = (undefined8 *)FUN_002dab00(8);\n  *puVar1 = &PTR_FUN_00438490;\n                    /* WARNING: Subroutine does not return */\n  FUN_002d9820(puVar1,&PTR_PTR_FUN_00438450,FUN_002da740);\n}" { (declaration "undefined8 *puVar1;" type_identifier (pointer_declarator "*puVar1" * identifier) ;) (expression_statement "puVar1 = (undefined8 *)FUN_002dab00(8);" (assignment_expression "puVar1 = (undefined8 *)FUN_002dab00(8)" identifier = (cast_expression "(undefined8 *)FUN_002dab00(8)" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "FUN_002dab00(8)" identifier (argument_list "(8)" ( number_literal ))))) ;) (expression_statement "*puVar1 = &PTR_FUN_00438490;" (assignment_expression "*puVar1 = &PTR_FUN_00438490" (pointer_expression "*puVar1" * identifier) = (pointer_expression "&PTR_FUN_00438490" & identifier)) ;) comment (expression_statement "FUN_002d9820(puVar1,&PTR_PTR_FUN_00438450,FUN_002da740);" (call_expression "FUN_002d9820(puVar1,&PTR_PTR_FUN_00438450,FUN_002da740)" identifier (argument_list "(puVar1,&PTR_PTR_FUN_00438450,FUN_002da740)" ( identifier , (pointer_expression "&PTR_PTR_FUN_00438450" & identifier) , identifier ))) ;) })))
(translation_unit "/* WARNING: Unknown calling convention -- yet parameter storage is locked */\n/* __throw_concurrence_lock_error() */\n\nvoid __throw_concurrence_lock_error(void)\n\n{\n  undefined8 *puVar1;\n  \n  puVar1 = (undefined8 *)__cxa_allocate_exception(8);\n  *puVar1 = &PTR____concurrence_lock_error_00438490;\n                    /* WARNING: Subroutine does not return */\n  __cxa_throw(puVar1,&__concurrence_lock_error::typeinfo,\n              __concurrence_lock_error::~__concurrence_lock_error);\n}\n\n" comment comment (function_definition "void __throw_concurrence_lock_error(void)\n\n{\n  undefined8 *puVar1;\n  \n  puVar1 = (undefined8 *)__cxa_allocate_exception(8);\n  *puVar1 = &PTR____concurrence_lock_error_00438490;\n                    /* WARNING: Subroutine does not return */\n  __cxa_throw(puVar1,&__concurrence_lock_error::typeinfo,\n              __concurrence_lock_error::~__concurrence_lock_error);\n}" primitive_type (function_declarator "__throw_concurrence_lock_error(void)" identifier (parameter_list "(void)" ( (parameter_declaration "void" primitive_type) ))) (compound_statement "{\n  undefined8 *puVar1;\n  \n  puVar1 = (undefined8 *)__cxa_allocate_exception(8);\n  *puVar1 = &PTR____concurrence_lock_error_00438490;\n                    /* WARNING: Subroutine does not return */\n  __cxa_throw(puVar1,&__concurrence_lock_error::typeinfo,\n              __concurrence_lock_error::~__concurrence_lock_error);\n}" { (declaration "undefined8 *puVar1;" type_identifier (pointer_declarator "*puVar1" * identifier) ;) (expression_statement "puVar1 = (undefined8 *)__cxa_allocate_exception(8);" (assignment_expression "puVar1 = (undefined8 *)__cxa_allocate_exception(8)" identifier = (cast_expression "(undefined8 *)__cxa_allocate_exception(8)" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "__cxa_allocate_exception(8)" identifier (argument_list "(8)" ( number_literal ))))) ;) (expression_statement "*puVar1 = &PTR____concurrence_lock_error_00438490;" (assignment_expression "*puVar1 = &PTR____concurrence_lock_error_00438490" (pointer_expression "*puVar1" * identifier) = (pointer_expression "&PTR____concurrence_lock_error_00438490" & identifier)) ;) comment (expression_statement "__cxa_throw(puVar1,&__concurrence_lock_error::typeinfo,\n              __concurrence_lock_error::~__concurrence_lock_error);" (call_expression "__cxa_throw(puVar1,&__concurrence_lock_error::typeinfo,\n              __concurrence_lock_error::~__concurrence_lock_error)" identifier (argument_list "(puVar1,&__concurrence_lock_error::typeinfo,\n              __concurrence_lock_error::~__concurrence_lock_error)" ( identifier , (pointer_expression "&__concurrence_lock_error" & identifier) (ERROR "::typeinfo" : : identifier) , (ERROR "__concurrence_lock_error::" identifier : :) (unary_expression "~__concurrence_lock_error" ~ identifier) ))) ;) })))
(translation_unit "void FUN_002da7e0(void)\n\n{\n  undefined8 *puVar1;\n  \n  puVar1 = (undefined8 *)FUN_002dab00(8);\n  *puVar1 = &PTR_FUN_00438490;\n                    \n  FUN_002d9820(puVar1,&PTR_PTR_FUN_00438450,FUN_002da740);\n}\n\n" (function_definition "void FUN_002da7e0(void)\n\n{\n  undefined8 *puVar1;\n  \n  puVar1 = (undefined8 *)FUN_002dab00(8);\n  *puVar1 = &PTR_FUN_00438490;\n                    \n  FUN_002d9820(puVar1,&PTR_PTR_FUN_00438450,FUN_002da740);\n}" primitive_type (function_declarator "FUN_002da7e0(void)" identifier (parameter_list "(void)" ( (parameter_declaration "void" primitive_type) ))) (compound_statement "{\n  undefined8 *puVar1;\n  \n  puVar1 = (undefined8 *)FUN_002dab00(8);\n  *puVar1 = &PTR_FUN_00438490;\n                    \n  FUN_002d9820(puVar1,&PTR_PTR_FUN_00438450,FUN_002da740);\n}" { (declaration "undefined8 *puVar1;" type_identifier (pointer_declarator "*puVar1" * identifier) ;) (expression_statement "puVar1 = (undefined8 *)FUN_002dab00(8);" (assignment_expression "puVar1 = (undefined8 *)FUN_002dab00(8)" identifier = (cast_expression "(undefined8 *)FUN_002dab00(8)" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "FUN_002dab00(8)" identifier (argument_list "(8)" ( number_literal ))))) ;) (expression_statement "*puVar1 = &PTR_FUN_00438490;" (assignment_expression "*puVar1 = &PTR_FUN_00438490" (pointer_expression "*puVar1" * identifier) = (pointer_expression "&PTR_FUN_00438490" & identifier)) ;) (expression_statement "FUN_002d9820(puVar1,&PTR_PTR_FUN_00438450,FUN_002da740);" (call_expression "FUN_002d9820(puVar1,&PTR_PTR_FUN_00438450,FUN_002da740)" identifier (argument_list "(puVar1,&PTR_PTR_FUN_00438450,FUN_002da740)" ( identifier , (pointer_expression "&PTR_PTR_FUN_00438450" & identifier) , identifier ))) ;) })))
(translation_unit (function_definition TYPE (function_declarator IDENT (parameter_list ( (parameter_declaration TYPE) ))) (compound_statement { (declaration TYPE (pointer_declarator * IDENT) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression IDENT (argument_list ( LIT ))))) ;) (expression_statement (assignment_expression (pointer_expression * IDENT) = (pointer_expression & IDENT)) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT , (pointer_expression & IDENT) , IDENT ))) ;) })))
(function_definition "void FUN_002da7e0(void)\n\n{\n  undefined8 *puVar1;\n  \n  puVar1 = (undefined8 *)FUN_002dab00(8);\n  *puVar1 = &PTR_FUN_00438490;\n                    \n  FUN_002d9820(puVar1,&PTR_PTR_FUN_00438450,FUN_002da740);\n}" (primitive_type "void") (function_declarator "FUN_002da7e0(void)" (identifier "FUN_002da7e0") (parameter_list "(void)" (( "(") (parameter_declaration "void" (primitive_type "void")) () ")"))) (compound_statement "{\n  undefined8 *puVar1;\n  \n  puVar1 = (undefined8 *)FUN_002dab00(8);\n  *puVar1 = &PTR_FUN_00438490;\n                    \n  FUN_002d9820(puVar1,&PTR_PTR_FUN_00438450,FUN_002da740);\n}" ({ "{") (declaration "undefined8 *puVar1;" (type_identifier "undefined8") (pointer_declarator "*puVar1" (* "*") (identifier "puVar1")) (; ";")) (expression_statement "puVar1 = (undefined8 *)FUN_002dab00(8);" (assignment_expression "puVar1 = (undefined8 *)FUN_002dab00(8)" (identifier "puVar1") (= "=") (cast_expression "(undefined8 *)FUN_002dab00(8)" (( "(") (type_descriptor "undefined8 *" (type_identifier "undefined8") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "FUN_002dab00(8)" (identifier "FUN_002dab00") (argument_list "(8)" (( "(") (number_literal "8") () ")"))))) (; ";")) (expression_statement "*puVar1 = &PTR_FUN_00438490;" (assignment_expression "*puVar1 = &PTR_FUN_00438490" (pointer_expression "*puVar1" (* "*") (identifier "puVar1")) (= "=") (pointer_expression "&PTR_FUN_00438490" (& "&") (identifier "PTR_FUN_00438490"))) (; ";")) (expression_statement "FUN_002d9820(puVar1,&PTR_PTR_FUN_00438450,FUN_002da740);" (call_expression "FUN_002d9820(puVar1,&PTR_PTR_FUN_00438450,FUN_002da740)" (identifier "FUN_002d9820") (argument_list "(puVar1,&PTR_PTR_FUN_00438450,FUN_002da740)" (( "(") (identifier "puVar1") (, ",") (pointer_expression "&PTR_PTR_FUN_00438450" (& "&") (identifier "PTR_PTR_FUN_00438450")) (, ",") (identifier "FUN_002da740") () ")"))) (; ";")) (} "}")))

/* WARNING: Unknown calling convention -- yet parameter storage is locked */
/* __throw_concurrence_lock_error() */

void function_1(void)

{
  type_1 *puVar1;
  
  puVar1 = (type_1 *)var_1(8);
  *puVar1 = &PTR____concurrence_lock_error_00438490;
                    /* WARNING: Subroutine does not return */
  var_2(puVar1,&__concurrence_lock_error::typeinfo,
              __concurrence_lock_error::~__concurrence_lock_error);
}


(translation_unit (function_definition type: (primitive_type) declarator: (function_declarator declarator: (identifier) parameters: (parameter_list (parameter_declaration type: (primitive_type)))) body: (compound_statement (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (call_expression function: (identifier) arguments: (argument_list (number_literal)))))) (expression_statement (assignment_expression left: (pointer_expression argument: (identifier)) right: (pointer_expression argument: (identifier)))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (identifier) (pointer_expression argument: (identifier)) (identifier)))))))

void MASKED(void)

{
  undefined8 *puVar1;
  
  puVar1 = (undefined8 *)FUN_002dab00(8);
  *puVar1 = &PTR_FUN_00438490;
                    /* WARNING: Subroutine does not return */
  FUN_002d9820(puVar1,&PTR_PTR_FUN_00438450,FUN_002da740);
}

