{"name": "app_init", "code": "__int64 app_init ( ) { __int64 @@v1@@ ; __int64 v2 ; unsigned __int64 v3 ; __int64 v4 ; __int64 v5 ; __int64 v6 ; __int64 v7 ; __int64 v8 ; unsigned int * v9 ; __int64 v10 ; int @@v11@@ [ Number ] ; __int16 @@s@@ ; __int16 @@v13@@ ; __int16 @@v14@@ ; _WORD @@v15@@ [ Number ] ; __int16 @@v16@@ ; _BYTE @@v17@@ [ Number ] ; unsigned __int16 @@v18@@ ; char @@v19@@ [ Number ] ; int @@v20@@ ; unsigned int @@v21@@ ; unsigned int @@v22@@ ; unsigned int @@v23@@ ; unsigned int @@v24@@ ; __int64 @@v25@@ ; __int64 @@v26@@ ; __int64 @@v27@@ [ Number ] ; __int64 @@v28@@ ; __int64 @@v29@@ ; unsigned int @@v30@@ ; int @@v31@@ [ Number ] ; unsigned int @@v32@@ ; unsigned int @@v33@@ ; int @@v34@@ ; _BYTE * @@v35@@ ; unsigned int @@v36@@ ; _BYTE * @@v37@@ ; int @@v38@@ ; unsigned int @@v39@@ ; __int64 @@v40@@ ; unsigned int @@j@@ ; unsigned int @@v42@@ ; unsigned int @@v43@@ ; unsigned int @@i@@ ; @@v32@@ = Number ; @@v43@@ = pjsua_create ( ) ; if ( @@v43@@ ) return @@v43@@ ; * ( _QWORD * ) & app_config [ Number ] = pjsua_pool_create ( String , Number L , Number L ) ; @@v40@@ = pjsua_pool_create ( String , Number L , Number L ) ; if ( ! app_running ) { pj_cli_cfg_default ( ( unsigned int ) ( ( _DWORD ) app_config + Number ) ) ; pj_cli_telnet_cfg_default ( ( unsigned int ) ( ( _DWORD ) app_config + Number ) ) ; pj_cli_console_cfg_default ( ( unsigned int ) ( ( _DWORD ) app_config + Number ) ) ; * ( _QWORD * ) & app_config [ Number ] = cli_on_started ; } @@v43@@ = load_config ( ( unsigned int ) app_cfg , qword_3488 , uri_arg ) ; if ( @@v43@@ ) goto LABEL_6 ; * ( _QWORD * ) & app_config [ Number ] = on_call_state ; * ( _QWORD * ) & app_config [ Number ] = on_call_media_state ; * ( _QWORD * ) & app_config [ Number ] = on_incoming_call ; * ( _QWORD * ) & app_config [ Number ] = on_call_tsx_state ; * ( _QWORD * ) & app_config [ Number ] = call_on_dtmf_callback ; * ( _QWORD * ) & app_config [ Number ] = call_on_redirected ; * ( _QWORD * ) & app_config [ Number ] = on_reg_state ; * ( _QWORD * ) & app_config [ Number ] = on_incoming_subscribe ; * ( _QWORD * ) & app_config [ Number ] = on_buddy_state ; * ( _QWORD * ) & app_config [ Number ] = on_buddy_evsub_state ; * ( _QWORD * ) & app_config [ Number ] = on_pager ; * ( _QWORD * ) & app_config [ Number ] = on_typing ; * ( _QWORD * ) & app_config [ Number ] = on_call_transfer_status ; * ( _QWORD * ) & app_config [ Number ] = on_call_replaced ; * ( _QWORD * ) & app_config [ Number ] = on_nat_detect ; * ( _QWORD * ) & app_config [ Number ] = on_mwi_info ; * ( _QWORD * ) & app_config [ Number ] = on_transport_state ; * ( _QWORD * ) & app_config [ Number ] = on_ice_transport_error ; * ( _QWORD * ) & app_config [ Number ] = on_snd_dev_operation ; * ( _QWORD * ) & app_config [ Number ] = on_call_media_event ; if ( app_config [ Number ] ) app_config [ Number ] = app_config [ Number ] ; if ( app_config [ Number ] ) app_config [ Number ] = app_config [ Number ] ; if ( qword_34A0 ) qword_34A0 ( app_config ) ; @@v43@@ = pjsua_init ( app_config , ( unsigned int ) ( ( _DWORD ) app_config + Number ) , ( unsigned int ) ( ( _DWORD ) app_config + Number ) ) ; if ( @@v43@@ ) { LABEL_6 : pj_pool_release ( @@v40@@ ) ; return @@v43@@ ; } @@v1@@ = pjsua_get_pjsip_endpt ( ) ; @@v43@@ = pjsip_endpt_register_module ( @@v1@@ , & mod_default_handler ) ; if ( @@v43@@ ) return @@v43@@ ; for ( @@i@@ = Number ; @@i@@ <= Number ; ++ @@i@@ ) { app_config [ Number * @@i@@ + Number ] = Number ; * ( _QWORD * ) & app_config [ Number * ( unsigned __int64 ) @@i@@ + Number ] = call_timeout_callback ; } for ( @@i@@ = Number ; @@i@@ < app_config [ Number ] ; ++ @@i@@ ) { @@v42@@ = Number ; if ( app_config [ Number ] ) @@v42@@ |= Number ; @@v43@@ = pjsua_player_create ( & app_config [ Number * @@i@@ + Number ] , @@v42@@ , & @@v30@@ ) ; if ( @@v43@@ ) goto LABEL_100 ; if ( app_config [ Number ] == Number ) { app_config [ Number ] = @@v30@@ ; app_config [ Number ] = pjsua_player_get_conf_port ( app_config [ Number ] ) ; if ( app_config [ Number ] ) { pjsua_player_get_port ( app_config [ Number ] , & @@v29@@ ) ; @@v43@@ = pjmedia_wav_player_set_eof_cb ( @@v29@@ , Number L , on_playfile_done ) ; if ( @@v43@@ ) goto LABEL_100 ; pj_timer_entry_init ( ( unsigned int ) ( ( _DWORD ) app_config + Number ) , Number L , Number L , hangup_timeout_callback ) ; } } } for ( @@i@@ = Number ; @@i@@ < app_config [ Number ] ; ++ @@i@@ ) { snprintf ( ( char * ) & @@s@@ , Number , String , ( unsigned int ) SLOWORD ( app_config [ Number * @@i@@ + Number ] ) , ( unsigned int ) SHIWORD ( app_config [ Number * @@i@@ + Number ] ) ) ; @@v27@@ [ Number ] = pj_str ( & @@s@@ ) ; @@v27@@ [ Number ] = v2 ; @@v33@@ = pjmedia_tonegen_create2 ( * ( _QWORD * ) & app_config [ Number ] , @@v27@@ , Number L , Number L , Number L , Number L , Number L , & @@v28@@ ) ; if ( @@v33@@ ) { pjsua_perror ( String , String , @@v33@@ ) ; goto LABEL_100 ; } @@v33@@ = pjsua_conf_add_port ( * ( _QWORD * ) & app_config [ Number ] , @@v28@@ , & app_config [ @@i@@ + Number ] ) ; if ( @@v33@@ ) _assert_fail ( String , String , Number , String ) ; @@v33@@ = pjmedia_tonegen_play ( @@v28@@ , Number L , & app_config [ Number * @@i@@ + Number ] , Number L ) ; if ( @@v33@@ ) _assert_fail ( String , String , Number , String ) ; } if ( * ( _QWORD * ) & app_config [ Number ] ) { @@v43@@ = pjsua_recorder_create ( ( unsigned int ) ( ( _DWORD ) app_config + Number ) , Number L , Number L , Number L , Number L , ( unsigned int ) ( ( _DWORD ) app_config + Number ) ) ; if ( @@v43@@ ) goto LABEL_100 ; app_config [ Number ] = pjsua_recorder_get_conf_port ( app_config [ Number ] ) ; } v3 = ( unsigned __int64 ) @@v31@@ ; pj_memcpy ( @@v31@@ , ( const void * ) ( unsigned int ) ( ( _DWORD ) app_config + Number ) , Number ) ; if ( ! app_config [ Number ] ) { @@v39@@ = app_config [ Number ] * app_config [ Number ] * app_config [ Number ] / Number ; @@v25@@ = pj_str ( String ) ; @@v26@@ = v4 ; @@v43@@ = pjmedia_tonegen_create2 ( * ( _QWORD * ) & app_config [ Number ] , & @@v25@@ , app_config [ Number ] , app_config [ Number ] , @@v39@@ , Number L , Number L , & app_config [ Number ] ) ; if ( @@v43@@ ) goto LABEL_100 ; pj_bzero ( & @@s@@ , Number ) ; for ( @@j@@ = Number ; ! @@j@@ ; @@j@@ = Number ) { @@s@@ = Number ; @@v13@@ = Number ; @@v14@@ = Number ; @@v15@@ [ Number ] = Number ; } @@v15@@ [ Number ] = Number ; pjmedia_tonegen_play ( * ( _QWORD * ) & app_config [ Number ] , Number L , & @@s@@ , Number L ) ; @@v43@@ = pjsua_conf_add_port ( * ( _QWORD * ) & app_config [ Number ] , * ( _QWORD * ) & app_config [ Number ] , ( unsigned int ) ( ( _DWORD ) app_config + Number ) ) ; if ( @@v43@@ ) goto LABEL_100 ; @@v25@@ = pj_str ( String ) ; @@v26@@ = v5 ; @@v43@@ = pjmedia_tonegen_create2 ( * ( _QWORD * ) & app_config [ Number ] , & @@v25@@ , app_config [ Number ] , app_config [ Number ] , @@v39@@ , Number L , Number L , & app_config [ Number ] ) ; if ( @@v43@@ ) goto LABEL_100 ; for ( @@j@@ = Number ; @@j@@ <= Number ; @@v15@@ [ Number * @@j@@ ++ ] = Number ) { * ( & @@s@@ + Number * @@j@@ ) = Number ; * ( & @@v13@@ + Number * @@j@@ ) = Number ; * ( & @@v14@@ + Number * @@j@@ ) = Number ; } @@v16@@ = Number ; pjmedia_tonegen_play ( * ( _QWORD * ) & app_config [ Number ] , Number L , & @@s@@ , Number L ) ; v3 = * ( _QWORD * ) & app_config [ Number ] ; @@v43@@ = pjsua_conf_add_port ( v3 , * ( _QWORD * ) & app_config [ Number ] , ( unsigned int ) ( ( _DWORD ) app_config + Number ) ) ; if ( @@v43@@ ) goto LABEL_100 ; } if ( app_config [ Number ] && ( int ) pj_log_get_level ( v3 ) > Number ) { v3 = ( unsigned __int64 ) String ; pj_log_2 ( String , String ) ; } if ( ! app_config [ Number ] ) { @@v38@@ = Number ; @@v43@@ = pjsua_transport_create ( Number L , ( unsigned int ) ( ( _DWORD ) app_config + Number ) , & @@v32@@ ) ; if ( @@v43@@ ) goto LABEL_100 ; pjsua_acc_add_local ( @@v32@@ , Number L , & @@v24@@ ) ; pjsua_acc_get_config ( @@v24@@ , @@v40@@ , & @@s@@ ) ; app_config_init_video ( & @@s@@ ) ; qmemcpy ( @@v19@@ , ( const void * ) ( unsigned int ) ( ( _DWORD ) app_config + Number ) , sizeof ( @@v19@@ ) ) ; pjsua_acc_modify ( @@v24@@ , & @@s@@ ) ; v3 = ( unsigned int ) ( ( __int64 ( * ) ( void ) ) pjsua_acc_get_default ) ( ) ; pjsua_acc_set_online_status ( v3 , Number L ) ; if ( ! app_config [ Number ] ) { pjsua_transport_get_info ( @@v32@@ , & @@s@@ ) ; @@v37@@ = @@v17@@ ; v3 = @@v18@@ ; @@v31@@ [ Number ] = ( unsigned __int16 ) pj_ntohs ( @@v18@@ ) ; } } if ( ! app_config [ Number ] && app_config [ Number ] ) { @@v36@@ = Number ; qmemcpy ( @@v11@@ , ( const void * ) ( unsigned int ) ( ( _DWORD ) app_config + Number ) , sizeof ( @@v11@@ ) ) ; if ( @@v11@@ [ Number ] ) @@v11@@ [ Number ] += Number ; else @@v11@@ [ Number ] = Number ; @@v43@@ = pjsua_transport_create ( @@v36@@ , @@v11@@ , & @@v32@@ ) ; if ( @@v43@@ ) goto LABEL_100 ; pjsua_acc_add_local ( @@v32@@ , Number L , & @@v23@@ ) ; pjsua_acc_get_config ( @@v23@@ , @@v40@@ , & @@s@@ ) ; app_config_init_video ( & @@s@@ ) ; qmemcpy ( @@v19@@ , ( const void * ) ( unsigned int ) ( ( _DWORD ) app_config + Number ) , sizeof ( @@v19@@ ) ) ; @@v20@@ = Number ; v6 = @@v23@@ ; pjsua_acc_modify ( @@v23@@ , & @@s@@ ) ; v3 = ( unsigned int ) pjsua_acc_get_default ( v6 ) ; pjsua_acc_set_online_status ( v3 , Number L ) ; if ( ! app_config [ Number ] ) { pjsua_transport_get_info ( @@v32@@ , & @@s@@ ) ; @@v35@@ = @@v17@@ ; v3 = @@v18@@ ; @@v31@@ [ Number ] = ( unsigned __int16 ) pj_ntohs ( @@v18@@ ) ; } } if ( ! app_config [ Number ] ) { @@v43@@ = pjsua_transport_create ( Number L , @@v31@@ , & @@v32@@ ) ; if ( @@v43@@ ) goto LABEL_100 ; pjsua_acc_add_local ( @@v32@@ , Number L , & @@v22@@ ) ; pjsua_acc_get_config ( @@v22@@ , @@v40@@ , & @@s@@ ) ; app_config_init_video ( & @@s@@ ) ; qmemcpy ( @@v19@@ , ( const void * ) ( unsigned int ) ( ( _DWORD ) app_config + Number ) , sizeof ( @@v19@@ ) ) ; v7 = @@v22@@ ; pjsua_acc_modify ( @@v22@@ , & @@s@@ ) ; v3 = ( unsigned int ) pjsua_acc_get_default ( v7 ) ; pjsua_acc_set_online_status ( v3 , Number L ) ; } if ( app_config [ Number ] || ! app_config [ Number ] ) { LABEL_74 : if ( @@v32@@ == Number ) { if ( ( int ) pj_log_get_level ( v3 ) > Number ) pj_log_1 ( String , String ) ; @@v43@@ = Number ; } else { for ( @@i@@ = Number ; @@i@@ < app_config [ Number ] ; ++ @@i@@ ) { qmemcpy ( & app_config [ Number * @@i@@ + Number ] , ( const void * ) ( unsigned int ) ( ( _DWORD ) app_config + Number ) , Number ) ; app_config [ Number * @@i@@ + Number ] = Number ; app_config [ Number * @@i@@ + Number ] = Number ; app_config_init_video ( & app_config [ Number * @@i@@ + Number ] ) ; v9 = & app_config [ Number * @@i@@ + Number ] ; @@v43@@ = pjsua_acc_add ( v9 , Number L , Number L ) ; if ( @@v43@@ ) goto LABEL_100 ; v3 = ( unsigned int ) pjsua_acc_get_default ( v9 ) ; pjsua_acc_set_online_status ( v3 , Number L ) ; } for ( @@i@@ = Number ; @@i@@ < app_config [ Number ] ; ++ @@i@@ ) { v3 = ( unsigned __int64 ) & app_config [ Number * @@i@@ + Number ] ; @@v43@@ = pjsua_buddy_add ( v3 , Number L ) ; if ( @@v43@@ ) { pj_perror_1 ( String , @@v43@@ , String ) ; goto LABEL_100 ; } } for ( @@i@@ = Number ; @@i@@ < app_config [ Number ] ; ++ @@i@@ ) { v3 = ( unsigned __int64 ) & app_config [ Number * @@i@@ + Number ] ; pjsua_codec_set_priority ( v3 , Number L ) ; } for ( @@i@@ = Number ; @@i@@ < app_config [ Number ] ; ++ @@i@@ ) { v3 = ( unsigned __int64 ) & app_config [ Number * @@i@@ + Number ] ; pjsua_codec_set_priority ( v3 , ( unsigned __int8 ) ( @@i@@ - Number ) ) ; } if ( app_config [ Number ] ) { @@v43@@ = pjsua_set_null_snd_dev ( v3 ) ; if ( @@v43@@ ) return @@v43@@ ; } if ( app_config [ Number ] == Number && app_config [ Number ] == Number || ( @@v43@@ = pjsua_set_snd_dev ( app_config [ Number ] , app_config [ Number ] ) ) == Number ) { pjsua_call_setting_default ( call_opt ) ; call_opt [ Number ] = app_config [ Number ] ; call_opt [ Number ] = app_config [ Number ] ; pj_pool_release ( @@v40@@ ) ; return Number L ; } } goto LABEL_100 ; } @@v34@@ = Number ; @@v31@@ [ Number ] += Number ; @@v43@@ = pjsua_transport_create ( Number L , @@v31@@ , & @@v32@@ ) ; if ( ! @@v43@@ ) { pjsua_acc_add_local ( @@v32@@ , Number L , & @@v21@@ ) ; pjsua_acc_get_config ( @@v21@@ , @@v40@@ , & @@s@@ ) ; app_config_init_video ( & @@s@@ ) ; qmemcpy ( @@v19@@ , ( const void * ) ( unsigned int ) ( ( _DWORD ) app_config + Number ) , sizeof ( @@v19@@ ) ) ; @@v20@@ = Number ; v8 = @@v21@@ ; pjsua_acc_modify ( @@v21@@ , & @@s@@ ) ; v3 = ( unsigned int ) pjsua_acc_get_default ( v8 ) ; pjsua_acc_set_online_status ( v3 , Number L ) ; goto LABEL_74 ; } LABEL_100 : v10 = @@v40@@ ; pj_pool_release ( @@v40@@ ) ; app_destroy ( v10 ) ; return @@v43@@ ; }", "source": [{"n": "v1", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "r8"}, {"n": "v42", "t": {"T": 1, "n": "unsigned int", "s": 4}, "location": "s12"}, {"n": "v19", "t": {"T": 2, "n": 432, "s": 1, "t": "char"}, "location": "s1224"}, {"n": "j", "t": {"T": 1, "n": "unsigned int", "s": 4}, "location": "s16"}, {"n": "v40", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "s24"}, {"n": "v18", "t": {"T": 1, "n": "unsigned __int16", "s": 2}, "location": "s2782"}, {"n": "v17", "t": {"T": 2, "n": 2, "s": 1, "t": "_BYTE"}, "location": "s2784"}, {"n": "v39", "t": {"T": 1, "n": "unsigned int", "s": 4}, "location": "s28"}, {"n": "v16", "t": {"T": 1, "n": "__int16", "s": 2}, "location": "s2802"}, {"n": "v15", "t": {"T": 2, "n": 12, "s": 2, "t": "_WORD"}, "location": "s2826"}, {"n": "v14", "t": {"T": 1, "n": "__int16", "s": 2}, "location": "s2828"}, {"n": "v13", "t": {"T": 1, "n": "__int16", "s": 2}, "location": "s2830"}, {"n": "s", "t": {"T": 1, "n": "__int16", "s": 2}, "location": "s2832"}, {"n": "v38", "t": {"T": 1, "n": "int", "s": 4}, "location": "s32"}, {"n": "v11", "t": {"T": 2, "n": 108, "s": 4, "t": "int"}, "location": "s3264"}, {"n": "i", "t": {"T": 1, "n": "unsigned int", "s": 4}, "location": "s4"}, {"n": "v37", "t": {"T": 3, "t": "_BYTE"}, "location": "s40"}, {"n": "v36", "t": {"T": 1, "n": "unsigned int", "s": 4}, "location": "s44"}, {"n": "v31", "t": {"T": 2, "n": 111, "s": 4, "t": "int"}, "location": "s512"}, {"n": "v30", "t": {"T": 1, "n": "unsigned int", "s": 4}, "location": "s516"}, {"n": "v29", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "s528"}, {"n": "v28", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "s536"}, {"n": "v35", "t": {"T": 3, "t": "_BYTE"}, "location": "s56"}, {"n": "v27", "t": {"T": 2, "n": 3, "s": 8, "t": "__int64"}, "location": "s560"}, {"n": "v26", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "s568"}, {"n": "v25", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "s576"}, {"n": "v24", "t": {"T": 1, "n": "unsigned int", "s": 4}, "location": "s580"}, {"n": "v23", "t": {"T": 1, "n": "unsigned int", "s": 4}, "location": "s584"}, {"n": "v22", "t": {"T": 1, "n": "unsigned int", "s": 4}, "location": "s588"}, {"n": "v21", "t": {"T": 1, "n": "unsigned int", "s": 4}, "location": "s592"}, {"n": "v34", "t": {"T": 1, "n": "int", "s": 4}, "location": "s60"}, {"n": "v33", "t": {"T": 1, "n": "unsigned int", "s": 4}, "location": "s64"}, {"n": "v32", "t": {"T": 1, "n": "unsigned int", "s": 4}, "location": "s68"}, {"n": "v20", "t": {"T": 1, "n": "int", "s": 4}, "location": "s792"}, {"n": "v43", "t": {"T": 1, "n": "unsigned int", "s": 4}, "location": "s8"}]}
{"name": "pj_bzero", "code": "void * __fastcall pj_bzero ( void * @@a1@@ , size_t @@a2@@ ) { return memset ( @@a1@@ , Number , @@a2@@ ) ; }", "source": [{"n": "a1", "t": {"T": 3, "t": "void"}, "location": "r56"}, {"n": "a2", "t": {"T": 1, "n": "size_t", "s": 8}, "location": "r64"}]} {"name": "pj_memcpy", "code": "void * __fastcall pj_memcpy ( void * @@a1@@ , const void * @@a2@@ , size_t @@a3@@ ) { return memcpy ( @@a1@@ , @@a2@@ , @@a3@@ ) ; }", "source": [{"n": "a3", "t": {"T": 1, "n": "size_t", "s": 8}, "location": "r16"}, {"n": "a1", "t": {"T": 3, "t": "void"}, "location": "r56"}, {"n": "a2", "t": {"T": 3, "t": "const void"}, "location": "r64"}]} {"name": "call_timeout_callback", "code": "__int64 __fastcall call_timeout_callback ( __int64 @@a1@@ , __int64 @@a2@@ ) { __int64 v2 ; __int64 v3 ; __int64 @@result@@ ; __int64 @@v5@@ [ Number ] ; __int64 @@v6@@ [ Number ] ; char @@v7@@ [ Number ] ; char @@v8@@ [ Number ] ; __int64 @@v9@@ ; unsigned int @@v10@@ ; @@v10@@ = * ( _DWORD * ) ( @@a2@@ + Number ) ; @@v6@@ [ Number ] = pj_str ( String ) ; @@v6@@ [ Number ] = v2 ; @@v5@@ [ Number ] = pj_str ( String ) ; @@v5@@ [ Number ] = v3 ; if ( @@v10@@ == Number ) { @@result@@ = pj_log_get_level ( ) ; if ( ( int ) @@result@@ > Number ) @@result@@ = pj_log_1 ( String , String ) ; } else { pjsua_msg_data_init ( @@v8@@ ) ; pjsip_generic_string_hdr_init2 ( @@v7@@ , @@v6@@ , @@v5@@ ) ; pj_list_push_back ( ( __int64 ) & @@v9@@ , ( __int64 ) @@v7@@ ) ; if ( ( int ) pj_log_get_level ( ) > Number ) pj_log_3 ( String , String , app_config [ Number ] , @@v10@@ ) ; * ( _DWORD * ) ( @@a2@@ + Number ) = Number ; @@result@@ = pjsua_call_hangup ( @@v10@@ , Number L , Number L , @@v8@@ ) ; } return @@result@@ ; }", "source": [{"n": "a1", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "r56"}, {"n": "a2", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "r64"}, {"n": "result", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "r8"}, {"n": "v9", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "s272"}, {"n": "v8", "t": {"T": 2, "n": 16, "s": 1, "t": "char"}, "location": "s288"}, {"n": "v7", "t": {"T": 2, "n": 80, "s": 1, "t": "char"}, "location": "s368"}, {"n": "v6", "t": {"T": 2, "n": 2, "s": 8, "t": "__int64"}, "location": "s384"}, {"n": "v10", "t": {"T": 1, "n": "unsigned int", "s": 4}, "location": "s4"}, {"n": "v5", "t": {"T": 2, "n": 2, "s": 8, "t": "__int64"}, "location": "s400"}]} {"name": "on_call_state", "code": "__int64 __fastcall on_call_state ( unsigned int @@a1@@ , __int64 @@a2@@ ) { __int64 @@result@@ ; __int64 @@v3@@ ; __int64 @@v4@@ ; __int64 @@v5@@ [ Number ] ; char @@v6@@ [ Number ] ; int @@v7@@ ; int @@v8@@ ; const char * @@v9@@ ; unsigned int @@v10@@ ; const char * @@v11@@ ; int @@v12@@ ; __int64 @@v13@@ ; unsigned int * @@v14@@ ; unsigned int @@v15@@ ; __int64 @@v16@@ ; unsigned int * @@v17@@ ; __int64 @@v18@@ ; pjsua_call_get_info ( @@a1@@ , @@v6@@ ) ; if ( @@v8@@ == Number ) { ring_stop ( @@a1@@ ) ; if ( app_config [ Number * @@a1@@ + Number ] != Number ) { @@v14@@ = & app_config [ Number * @@a1@@ + Number ] ; @@v13@@ = pjsua_get_pjsip_endpt ( ) ; @@v14@@ [ Number ] = Number ; pjsip_endpt_cancel_timer ( @@v13@@ , @@v14@@ ) ; } if ( app_config [ Number ] ) pjsua_player_set_pos ( app_config [ Number ] , Number L ) ; if ( ( int ) pj_log_get_level ( ) > Number ) pj_log_3 ( String , String , @@a1@@ , @@v10@@ , @@v11@@ ) ; if ( @@a1@@ == current_call ) find_next_call ( ) ; if ( ( int ) pj_log_get_level ( ) > Number ) pj_log_5 ( String , String , @@a1@@ ) ; @@result@@ = log_call_dump ( @@a1@@ ) ; } else { if ( app_config [ Number ] != Number && @@v8@@ == Number ) { @@v17@@ = & app_config [ Number * @@a1@@ + Number ] ; @@v16@@ = pjsua_get_pjsip_endpt ( ) ; @@v17@@ [ Number ] = @@a1@@ ; @@v5@@ [ Number ] = app_config [ Number ] ; @@v5@@ [ Number ] = Number L ; pjsip_endpt_schedule_timer ( @@v16@@ , @@v17@@ , @@v5@@ ) ; } if ( @@v8@@ == Number ) { if ( * ( _DWORD * ) ( @@a2@@ + Number ) != Number ) _assert_fail ( String , String , Number , String ) ; if ( * ( _DWORD * ) ( @@a2@@ + Number ) == Number ) @@v18@@ = * ( _QWORD * ) ( * ( _QWORD * ) ( @@a2@@ + Number ) + Number L ) ; else @@v18@@ = * ( _QWORD * ) ( * ( _QWORD * ) ( @@a2@@ + Number ) + Number L ) ; @@v15@@ = * ( _DWORD * ) ( @@v18@@ + Number ) ; @@v3@@ = * ( _QWORD * ) ( @@v18@@ + Number ) ; @@v4@@ = * ( _QWORD * ) ( @@v18@@ + Number ) ; if ( ! @@v7@@ && @@v15@@ == Number && ! * ( _QWORD * ) ( @@v18@@ + Number ) && ! @@v12@@ ) ringback_start ( @@a1@@ ) ; if ( ( int ) pj_log_get_level ( ) > Number ) pj_log_3 ( String , String , @@a1@@ , @@v9@@ , @@v15@@ , ( unsigned int ) @@v4@@ , @@v3@@ ) ; } else if ( ( int ) pj_log_get_level ( ) > Number ) { pj_log_3 ( String , String , @@a1@@ , @@v9@@ ) ; } @@result@@ = current_call ; if ( current_call == Number ) { @@result@@ = @@a1@@ ; current_call = @@a1@@ ; } } return @@result@@ ; }", "source": [{"n": "a1", "t": {"T": 1, "n": "unsigned int", "s": 4}, "location": "r56"}, {"n": "a2", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "r64"}, {"n": "result", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "r8"}, {"n": "v17", "t": {"T": 3, "t": "unsigned int"}, "location": "s16"}, {"n": "v12", "t": {"T": 1, "n": "int", "s": 4}, "location": "s1664"}, {"n": "v11", "t": {"T": 3, "t": "const char"}, "location": "s1680"}, {"n": "v10", "t": {"T": 1, "n": "unsigned int", "s": 4}, "location": "s1688"}, {"n": "v9", "t": {"T": 3, "t": "const char"}, "location": "s1704"}, {"n": "v8", "t": {"T": 1, "n": "int", "s": 4}, "location": "s1712"}, {"n": "v7", "t": {"T": 1, "n": "int", "s": 4}, "location": "s1820"}, {"n": "v6", "t": {"T": 2, "n": 4, "s": 1, "t": "char"}, "location": "s1824"}, {"n": "v5", "t": {"T": 2, "n": 2, "s": 8, "t": "__int64"}, "location": "s1840"}, {"n": "v4", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "s1848"}, {"n": "v3", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "s1856"}, {"n": "v16", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "s24"}, {"n": "v15", "t": {"T": 1, "n": "unsigned int", "s": 4}, "location": "s28"}, {"n": "v14", "t": {"T": 3, "t": "unsigned int"}, "location": "s40"}, {"n": "v13", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "s48"}, {"n": "v18", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "s8"}]} {"name": "on_incoming_call", "code": "__int64 __fastcall on_incoming_call ( unsigned int @@a1@@ , unsigned int @@a2@@ ) { __int64 v2 ; __int64 @@result@@ ; const char * @@v4@@ ; const char * @@v5@@ ; __int64 @@v7@@ [ Number ] ; char @@v8@@ [ Number ] ; unsigned int @@v9@@ ; unsigned int @@v10@@ ; char @@v11@@ [ Number ] ; const char * @@v12@@ ; const char * @@v13@@ ; unsigned int @@v14@@ ; unsigned int @@v15@@ ; pjsua_call_get_info ( @@a2@@ , @@v11@@ ) ; if ( current_call == Number ) current_call = @@a2@@ ; v2 = @@a2@@ ; ring_start ( @@a2@@ ) ; if ( app_config [ Number ] ) { pjsua_call_setting_default ( @@v8@@ ) ; @@v9@@ = app_config [ Number ] ; @@v10@@ = app_config [ Number ] ; v2 = @@a2@@ ; pjsua_call_answer2 ( @@a2@@ , @@v8@@ , app_config [ Number ] , Number L , Number L ) ; } @@result@@ = app_config [ Number ] ; if ( ( unsigned int ) @@result@@ <= Number ) { @@v7@@ [ Number ] = Number L ; @@v7@@ [ Number ] = Number L ; @@v7@@ [ Number ] = Number L ; @@v7@@ [ Number ] = Number L ; @@v7@@ [ Number ] = Number L ; @@v7@@ [ Number ] = Number L ; @@v7@@ [ Number ] = Number L ; @@v7@@ [ Number ] = Number L ; @@v7@@ [ Number ] = Number L ; @@v7@@ [ Number ] = Number L ; @@result@@ = pj_log_get_level ( v2 ) ; if ( ( int ) @@result@@ > Number ) { if ( app_config [ Number ] ) @@v4@@ = String ; else @@v4@@ = String ; if ( app_config [ Number ] ) @@v5@@ = String ; else @@v5@@ = String ; @@result@@ = pj_log_3 ( String , String String String String String , @@a1@@ , @@v14@@ , @@v15@@ , ( const char * ) @@v7@@ , @@v13@@ , @@v12@@ , @@v5@@ , @@v4@@ ) ; } } return @@result@@ ; }", "source": [{"n": "a1", "t": {"T": 1, "n": "unsigned int", "s": 4}, "location": "r56"}, {"n": "a2", "t": {"T": 1, "n": "unsigned int", "s": 4}, "location": "r64"}, {"n": "result", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "r8"}, {"n": "v5", "t": {"T": 3, "t": "const char"}, "location": "r80"}, {"n": "v4", "t": {"T": 3, "t": "const char"}, "location": "r88"}, {"n": "v13", "t": {"T": 3, "t": "const char"}, "location": "s1728"}, {"n": "v12", "t": {"T": 3, "t": "const char"}, "location": "s1760"}, {"n": "v11", "t": {"T": 2, "n": 16, "s": 1, "t": "char"}, "location": "s1776"}, {"n": "v10", "t": {"T": 1, "n": "unsigned int", "s": 4}, "location": "s1780"}, {"n": "v9", "t": {"T": 1, "n": "unsigned int", "s": 4}, "location": "s1784"}, {"n": "v8", "t": {"T": 2, "n": 8, "s": 1, "t": "char"}, "location": "s1792"}, {"n": "v7", "t": {"T": 2, "n": 10, "s": 8, "t": "__int64"}, "location": "s1872"}, {"n": "v15", "t": {"T": 1, "n": "unsigned int", "s": 4}, "location": "s784"}, {"n": "v14", "t": {"T": 1, "n": "unsigned int", "s": 4}, "location": "s788"}]} {"name": "on_call_tsx_state", "code": "__int64 __fastcall on_call_tsx_state ( unsigned int @@a1@@ , __int64 @@a2@@ , __int64 @@a3@@ ) { __int64 v3 ; __int64 @@result@@ ; __int64 v5 ; __int64 @@v8@@ ; __int64 @@v9@@ [ Number ] ; __int64 @@v10@@ [ Number ] ; int @@v11@@ ; const char * @@v12@@ ; __int64 @@v13@@ ; int @@v14@@ ; __int64 @@v15@@ ; int @@v16@@ ; __int64 @@v17@@ ; @@v11@@ = Number ; @@v12@@ = String ; @@v13@@ = Number L ; v3 = @@a2@@ + Number ; @@result@@ = pjsip_method_cmp ( @@a2@@ + Number , & @@v11@@ ) ; if ( ! ( _DWORD ) @@result@@ ) { @@v10@@ [ Number ] = ( __int64 ) String ; @@v10@@ [ Number ] = Number L ; @@v9@@ [ Number ] = ( __int64 ) String ; @@v9@@ [ Number ] = Number L ; @@v17@@ = Number L ; @@v16@@ = Number ; if ( * ( _DWORD * ) ( @@a2@@ + Number ) ) { @@result@@ = * ( unsigned int * ) ( @@a3@@ + Number ) ; if ( ( _DWORD ) @@result@@ == Number ) { @@result@@ = * ( _QWORD * ) ( * ( _QWORD * ) ( * ( _QWORD * ) ( @@a3@@ + Number ) + Number L ) + Number L ) ; @@v17@@ = @@result@@ ; } } else { if ( * ( _DWORD * ) ( @@a3@@ + Number ) == Number ) @@result@@ = * ( _QWORD * ) ( * ( _QWORD * ) ( * ( _QWORD * ) ( @@a3@@ + Number ) + Number L ) + Number L ) ; else @@result@@ = * ( _QWORD * ) ( * ( _QWORD * ) ( * ( _QWORD * ) ( * ( _QWORD * ) ( @@a3@@ + Number ) + Number L ) + Number L ) + Number L ) ; @@v17@@ = @@result@@ ; } if ( @@v17@@ ) { @@result@@ = * ( unsigned int * ) ( @@v17@@ + Number ) ; if ( ( _DWORD ) @@result@@ ) { v3 = @@v17@@ ; @@result@@ = pj_stricmp ( @@v17@@ , @@v10@@ ) ; if ( ! ( _DWORD ) @@result@@ ) { v3 = @@v17@@ + Number ; @@result@@ = pj_stricmp ( @@v17@@ + Number , @@v9@@ ) ; if ( ! ( _DWORD ) @@result@@ ) @@v16@@ = Number ; } } } if ( @@v16@@ && ( @@result@@ = * ( unsigned int * ) ( @@a2@@ + Number ) , ! ( _DWORD ) @@result@@ ) && ( * ( _DWORD * ) ( @@a2@@ + Number ) == Number || ( @@result@@ = * ( unsigned int * ) ( @@a2@@ + Number ) , ( _DWORD ) @@result@@ == Number ) && ( @@result@@ = * ( unsigned int * ) ( @@a3@@ + Number ) , ( _DWORD ) @@result@@ != Number ) ) ) { if ( * ( int * ) ( @@a2@@ + Number ) <= Number || * ( int * ) ( @@a2@@ + Number ) > Number ) { @@result@@ = * ( unsigned int * ) ( @@a2@@ + Number ) ; if ( ( int ) @@result@@ > Number ) { @@result@@ = pj_log_get_level ( v3 ) ; if ( ( int ) @@result@@ > Number ) @@result@@ = pj_log_4 ( String , String , @@a1@@ , * ( unsigned int * ) ( @@a2@@ + Number ) , ( unsigned int ) * ( _QWORD * ) ( @@a2@@ + Number ) , * ( _QWORD * ) ( @@a2@@ + Number ) ) ; } } else { @@result@@ = pj_log_get_level ( v3 ) ; if ( ( int ) @@result@@ > Number ) @@result@@ = pj_log_4 ( String , String , @@a1@@ ) ; } } else if ( @@v16@@ ) { @@result@@ = * ( unsigned int * ) ( @@a2@@ + Number ) ; if ( ( _DWORD ) @@result@@ == Number ) { @@result@@ = * ( unsigned int * ) ( @@a2@@ + Number ) ; if ( ( _DWORD ) @@result@@ == Number ) { @@v15@@ = * ( _QWORD * ) ( @@a3@@ + Number ) ; if ( * ( _QWORD * ) ( * ( _QWORD * ) ( @@v15@@ + Number ) + Number L ) ) { v5 = * ( _QWORD * ) ( @@a2@@ + Number ) ; @@v14@@ = pjsip_endpt_create_response ( v5 , @@v15@@ , Number L , Number L , & @@v8@@ ) ; if ( ! @@v14@@ ) { v5 = @@a2@@ ; @@v14@@ = pjsip_tsx_send_msg ( @@a2@@ , @@v8@@ ) ; } @@result@@ = pj_log_get_level ( v5 ) ; if ( ( int ) @@result@@ > Number ) @@result@@ = pj_log_3 ( String , String , @@a1@@ , * ( unsigned int * ) ( * ( _QWORD * ) ( * ( _QWORD * ) ( @@v15@@ + Number ) + Number L ) + Number L ) , * ( _QWORD * ) ( * ( _QWORD * ) ( * ( _QWORD * ) ( @@v15@@ + Number ) + Number L ) + Number L ) ) ; } else { @@result@@ = pjsip_endpt_create_response ( * ( _QWORD * ) ( @@a2@@ + Number ) , @@v15@@ , Number L , Number L , & @@v8@@ ) ; @@v14@@ = @@result@@ ; if ( ! ( _DWORD ) @@result@@ ) @@result@@ = pjsip_tsx_send_msg ( @@a2@@ , @@v8@@ ) ; } } } } } return @@result@@ ; }", "source": [{"n": "a3", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "r16"}, {"n": "a1", "t": {"T": 1, "n": "unsigned int", "s": 4}, "location": "r56"}, {"n": "a2", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "r64"}, {"n": "result", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "r8"}, {"n": "v8", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "s104"}, {"n": "v16", "t": {"T": 1, "n": "int", "s": 4}, "location": "s12"}, {"n": "v15", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "s24"}, {"n": "v14", "t": {"T": 1, "n": "int", "s": 4}, "location": "s28"}, {"n": "v13", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "s48"}, {"n": "v12", "t": {"T": 3, "t": "const char"}, "location": "s56"}, {"n": "v11", "t": {"T": 1, "n": "int", "s": 4}, "location": "s64"}, {"n": "v17", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "s8"}, {"n": "v10", "t": {"T": 2, "n": 2, "s": 8, "t": "__int64"}, "location": "s80"}, {"n": "v9", "t": {"T": 2, "n": 2, "s": 8, "t": "__int64"}, "location": "s96"}]} {"name": "on_call_media_state", "code": "__int64 __fastcall on_call_media_state ( unsigned int @@a1@@ ) { int @@v1@@ ; unsigned int @@v3@@ ; int @@v4@@ [ Number ] ; unsigned int @@i@@ ; @@v3@@ = Number ; pjsua_call_get_info ( @@a1@@ , @@v4@@ ) ; for ( @@i@@ = Number ; @@i@@ < @@v4@@ [ Number ] ; ++ @@i@@ ) { on_call_generic_media_state ( ( unsigned int * ) @@v4@@ , @@i@@ ) ; @@v1@@ = @@v4@@ [ Number * @@i@@ + Number ] ; if ( @@v1@@ == Number ) { on_call_audio_state ( @@v4@@ , @@i@@ ) ; } else if ( @@v1@@ == Number ) { on_call_video_state ( ( __int64 ) @@v4@@ , @@i@@ ) ; } } return @@v3@@ ; }", "source": [{"n": "a1", "t": {"T": 1, "n": "unsigned int", "s": 4}, "location": "r56"}, {"n": "v1", "t": {"T": 1, "n": "int", "s": 4}, "location": "r8"}, {"n": "v4", "t": {"T": 2, "n": 443, "s": 4, "t": "int"}, "location": "s1776"}, {"n": "v3", "t": {"T": 1, "n": "unsigned int", "s": 4}, "location": "s1780"}, {"n": "i", "t": {"T": 1, "n": "unsigned int", "s": 4}, "location": "s4"}]} {"name": "call_on_dtmf_callback", "code": "__int64 __fastcall call_on_dtmf_callback ( __int64 @@a1@@ , unsigned int @@a2@@ ) { __int64 @@result@@ ; @@result@@ = pj_log_get_level ( @@a1@@ ) ; if ( ( int ) @@result@@ > Number ) @@result@@ = pj_log_3 ( String , String , ( unsigned int ) @@a1@@ , @@a2@@ ) ; return @@result@@ ; }", "source": [{"n": "a1", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "r56"}, {"n": "a2", "t": {"T": 1, "n": "unsigned int", "s": 4}, "location": "r64"}, {"n": "result", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "r8"}]} {"name": "call_on_redirected", "code": "__int64 __fastcall call_on_redirected ( unsigned int @@a1@@ , __int64 @@a2@@ ) { __int64 v2 ; char @@v5@@ [ Number ] ; unsigned int @@v6@@ ; if ( app_config [ Number ] == Number ) { v2 = Number L ; @@v6@@ = pjsip_uri_print ( Number , @@a2@@ , ( __int64 ) @@v5@@ , Number L ) ; if ( ( int ) @@v6@@ <= Number ) { v2 = Number ; strcpy ( @@v5@@ , String ) ; } if ( ( int ) pj_log_get_level ( v2 ) > Number ) pj_log_3 ( String , String String , @@a1@@ , @@v6@@ , @@v5@@ ) ; } return app_config [ Number ] ; }", "source": [{"n": "a1", "t": {"T": 1, "n": "unsigned int", "s": 4}, "location": "r56"}, {"n": "a2", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "r64"}, {"n": "v5", "t": {"T": 2, "n": 268, "s": 1, "t": "char"}, "location": "s272"}, {"n": "v6", "t": {"T": 1, "n": "unsigned int", "s": 4}, "location": "s4"}]} {"name": "on_buddy_state", "code": "__int64 __fastcall on_buddy_state ( unsigned int @@a1@@ ) { __int64 @@result@@ ; char @@v2@@ [ Number ] ; __int64 @@v3@@ ; __int64 @@v4@@ ; __int64 @@v5@@ ; __int64 @@v6@@ ; __int64 @@v7@@ ; unsigned int @@v8@@ ; __int64 @@v9@@ ; __int64 @@v10@@ ; pjsua_buddy_get_info ( @@a1@@ , @@v2@@ ) ; @@result@@ = pj_log_get_level ( @@a1@@ ) ; if ( ( int ) @@result@@ > Number ) @@result@@ = pj_log_3 ( String , String , ( unsigned int ) @@v4@@ , @@v3@@ , ( unsigned int ) @@v6@@ , @@v5@@ , @@v7@@ , @@v8@@ , ( unsigned int ) @@v10@@ , @@v9@@ ) ; return @@result@@ ; }", "source": [{"n": "a1", "t": {"T": 1, "n": "unsigned int", "s": 4}, "location": "r56"}, {"n": "result", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "r8"}, {"n": "v10", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "s1360"}, {"n": "v9", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "s1368"}, {"n": "v8", "t": {"T": 1, "n": "unsigned int", "s": 4}, "location": "s1376"}, {"n": "v7", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "s1384"}, {"n": "v6", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "s1400"}, {"n": "v5", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "s1408"}, {"n": "v4", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "s1440"}, {"n": "v3", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "s1448"}, {"n": "v2", "t": {"T": 2, "n": 8, "s": 1, "t": "char"}, "location": "s1456"}]} {"name": "on_buddy_evsub_state", "code": "__int64 __fastcall on_buddy_evsub_state ( char * @@a1@@ , __int64 @@a2@@ , __int64 @@a3@@ ) { const char * v3 ; __int64 result ; const char * @@v5@@ ; const char * v6 ; unsigned int @@v8@@ ; char @@s@@ [ Number ] ; __int64 @@v10@@ ; @@v8@@ = ( unsigned int ) @@a1@@ ; @@s@@ [ Number ] = Number ; if ( * ( _DWORD * ) ( @@a3@@ + Number ) == Number && * ( _DWORD * ) ( @@a3@@ + Number ) == Number ) { @@v10@@ = * ( _QWORD * ) ( @@a3@@ + Number ) ; v3 = ( const char * ) pjsip_rx_data_get_info ( @@v10@@ ) ; @@a1@@ = @@s@@ ; snprintf ( @@s@@ , Number , String , v3 ) ; } result = pj_log_get_level ( @@a1@@ ) ; if ( ( int ) result > Number ) { @@v5@@ = ( const char * ) pjsip_event_str ( * ( unsigned int * ) ( @@a3@@ + Number ) ) ; v6 = ( const char * ) pjsip_evsub_get_state_name ( @@a2@@ ) ; result = pj_log_4 ( String , String , @@v8@@ , v6 , @@v5@@ , @@s@@ ) ; } return result ; }", "source": [{"n": "a3", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "r16"}, {"n": "v5", "t": {"T": 3, "t": "const char"}, "location": "r32"}, {"n": "a1", "t": {"T": 3, "t": "char"}, "location": "r56"}, {"n": "a2", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "r64"}, {"n": "s", "t": {"T": 2, "n": 88, "s": 1, "t": "char"}, "location": "s112"}, {"n": "v8", "t": {"T": 1, "n": "unsigned int", "s": 4}, "location": "s116"}, {"n": "v10", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "s24"}]} {"name": "on_pager", "code": "__int64 __fastcall on_pager ( __int64 @@a1@@ , _QWORD * @@a2@@ , __int64 @@a3@@ , __int64 @@a4@@ , _QWORD * @@a5@@ , _QWORD * @@a6@@ ) { __int64 @@result@@ ; @@result@@ = pj_log_get_level ( @@a1@@ ) ; if ( ( int ) @@result@@ > Number ) @@result@@ = pj_log_3 ( String , String , ( unsigned int ) @@a2@@ [ Number ] , * @@a2@@ , ( unsigned int ) @@a6@@ [ Number ] , * @@a6@@ , ( unsigned int ) @@a5@@ [ Number ] , * @@a5@@ ) ; return @@result@@ ; }", "source": [{"n": "a3", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "r16"}, {"n": "a4", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "r24"}, {"n": "a1", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "r56"}, {"n": "a2", "t": {"T": 3, "t": "_QWORD"}, "location": "r64"}, {"n": "a5", "t": {"T": 3, "t": "_QWORD"}, "location": "r72"}, {"n": "result", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "r8"}, {"n": "a6", "t": {"T": 3, "t": "_QWORD"}, "location": "r80"}]} {"name": "on_typing", "code": "__int64 __fastcall on_typing ( __int64 @@a1@@ , _QWORD * @@a2@@ , __int64 @@a3@@ , __int64 @@a4@@ , int @@a5@@ ) { __int64 @@result@@ ; const char * v6 ; @@result@@ = pj_log_get_level ( @@a1@@ ) ; if ( ( int ) @@result@@ > Number ) { if ( @@a5@@ ) v6 = String ; else v6 = String ; @@result@@ = pj_log_3 ( String , String , @@a2@@ [ Number ] , * @@a2@@ , v6 ) ; } return @@result@@ ; }", "source": [{"n": "a3", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "r16"}, {"n": "a4", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "r24"}, {"n": "a1", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "r56"}, {"n": "a2", "t": {"T": 3, "t": "_QWORD"}, "location": "r64"}, {"n": "a5", "t": {"T": 1, "n": "int", "s": 4}, "location": "r72"}, {"n": "result", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "r8"}]} {"name": "on_call_transfer_status", "code": "unsigned __int64 __fastcall on_call_transfer_status ( const char * @@a1@@ , unsigned int @@a2@@ , _QWORD * @@a3@@ , int @@a4@@ , _DWORD * @@a5@@ ) { const char * v5 ; unsigned __int64 @@result@@ ; unsigned int @@v11@@ ; @@v11@@ = ( unsigned int ) @@a1@@ ; if ( ( int ) pj_log_get_level ( @@a1@@ ) > Number ) { if ( @@a4@@ ) v5 = String ; else v5 = ( const char * ) & unk_39D5 ; @@a1@@ = String ; pj_log_3 ( String , String , @@v11@@ , @@a2@@ , ( unsigned int ) @@a3@@ [ Number ] , * @@a3@@ , v5 ) ; } @@result@@ = @@a2@@ - Number ; if ( ( unsigned int ) @@result@@ <= Number ) { if ( ( int ) pj_log_get_level ( @@a1@@ ) > Number ) pj_log_3 ( String , String , @@v11@@ ) ; pjsua_call_hangup ( @@v11@@ , Number L , Number L , Number L ) ; @@result@@ = ( unsigned __int64 ) @@a5@@ ; * @@a5@@ = Number ; } return @@result@@ ; }", "source": [{"n": "a3", "t": {"T": 3, "t": "_QWORD"}, "location": "r16"}, {"n": "a4", "t": {"T": 1, "n": "int", "s": 4}, "location": "r24"}, {"n": "a1", "t": {"T": 3, "t": "const char"}, "location": "r56"}, {"n": "a2", "t": {"T": 1, "n": "unsigned int", "s": 4}, "location": "r64"}, {"n": "a5", "t": {"T": 3, "t": "_DWORD"}, "location": "r72"}, {"n": "result", "t": {"T": 1, "n": "unsigned __int64", "s": 8}, "location": "r8"}, {"n": "v11", "t": {"T": 1, "n": "unsigned int", "s": 4}, "location": "s4"}]} {"name": "on_call_replaced", "code": "__int64 __fastcall on_call_replaced ( unsigned int @@a1@@ , unsigned int @@a2@@ ) { __int64 @@result@@ ; char @@v3@@ [ Number ] ; __int64 @@v4@@ ; __int64 @@v5@@ ; char @@v6@@ [ Number ] ; __int64 @@v7@@ ; __int64 @@v8@@ ; pjsua_call_get_info ( @@a1@@ , @@v6@@ ) ; pjsua_call_get_info ( @@a2@@ , @@v3@@ ) ; @@result@@ = pj_log_get_level ( @@a2@@ ) ; if ( ( int ) @@result@@ > Number ) @@result@@ = pj_log_3 ( String , String , @@a1@@ , ( unsigned int ) @@v8@@ , @@v7@@ , @@a2@@ , ( unsigned int ) @@v5@@ , @@v4@@ ) ; return @@result@@ ; }", "source": [{"n": "a1", "t": {"T": 1, "n": "unsigned int", "s": 4}, "location": "r56"}, {"n": "a2", "t": {"T": 1, "n": "unsigned int", "s": 4}, "location": "r64"}, {"n": "result", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "r8"}, {"n": "v8", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "s1720"}, {"n": "v7", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "s1728"}, {"n": "v6", "t": {"T": 2, "n": 48, "s": 1, "t": "char"}, "location": "s1776"}, {"n": "v5", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "s3496"}, {"n": "v4", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "s3504"}, {"n": "v3", "t": {"T": 2, "n": 48, "s": 1, "t": "char"}, "location": "s3552"}]} {"name": "on_nat_detect", "code": "__int64 __fastcall on_nat_detect ( const char * * @@a1@@ ) { __int64 @@result@@ ; if ( * ( _DWORD * ) @@a1@@ ) return pjsua_perror ( String , String , * ( unsigned int * ) @@a1@@ ) ; @@result@@ = pj_log_get_level ( @@a1@@ ) ; if ( ( int ) @@result@@ > Number ) @@result@@ = pj_log_3 ( String , String , @@a1@@ [ Number ] ) ; return @@result@@ ; }", "source": [{"n": "a1", "t": {"T": 3, "t": "const char *"}, "location": "r56"}, {"n": "result", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "r8"}]} {"name": "on_mwi_info", "code": "__int64 __fastcall on_mwi_info ( const char * @@a1@@ , __int64 @@a2@@ ) { __int64 @@result@@ ; unsigned int @@v3@@ ; __int64 @@v4@@ ; __int64 @@v5@@ ; _QWORD * @@v6@@ ; @@v3@@ = ( unsigned int ) @@a1@@ ; if ( ( int ) pj_log_get_level ( @@a1@@ ) > Number ) { @@a1@@ = String ; pj_log_3 ( String , String , @@v3@@ ) ; } if ( * ( _QWORD * ) ( * ( _QWORD * ) ( @@a2@@ + Number ) + Number L ) ) { @@v6@@ = * ( _QWORD * * ) ( * ( _QWORD * ) ( @@a2@@ + Number ) + Number L ) ; if ( ( int ) pj_log_get_level ( @@a1@@ ) > Number ) { @@a1@@ = String ; pj_log_3 ( String , String , @@v6@@ [ Number ] , @@v6@@ [ Number ] , ( unsigned int ) @@v6@@ [ Number ] , @@v6@@ [ Number ] ) ; } } if ( * ( _QWORD * ) ( * ( _QWORD * ) ( * ( _QWORD * ) ( @@a2@@ + Number ) + Number L ) + Number L ) ) { @@v4@@ = * ( _QWORD * ) ( * ( _QWORD * ) ( * ( _QWORD * ) ( * ( _QWORD * ) ( @@a2@@ + Number ) + Number L ) + Number L ) + Number L ) ; @@v5@@ = * ( unsigned int * ) ( * ( _QWORD * ) ( * ( _QWORD * ) ( * ( _QWORD * ) ( @@a2@@ + Number ) + Number L ) + Number L ) + Number L ) ; @@result@@ = pj_log_get_level ( @@a1@@ ) ; if ( ( int ) @@result@@ > Number ) @@result@@ = pj_log_3 ( String , String , @@v5@@ , @@v4@@ ) ; } else { @@result@@ = pj_log_get_level ( @@a1@@ ) ; if ( ( int ) @@result@@ > Number ) @@result@@ = pj_log_3 ( String , String ) ; } return @@result@@ ; }", "source": [{"n": "a1", "t": {"T": 3, "t": "const char"}, "location": "r56"}, {"n": "a2", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "r64"}, {"n": "result", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "r8"}, {"n": "v5", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "s24"}, {"n": "v4", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "s32"}, {"n": "v3", "t": {"T": 1, "n": "unsigned int", "s": 4}, "location": "s36"}, {"n": "v6", "t": {"T": 3, "t": "_QWORD"}, "location": "s8"}]} {"name": "on_transport_state", "code": "int __fastcall on_transport_state ( __int64 @@a1@@ , int @@a2@@ , unsigned int * @@a3@@ ) { int @@result@@ ; char @@v5@@ [ Number ] ; char @@s@@ [ Number ] ; @@result@@ = snprintf ( @@s@@ , Number , String , * ( _QWORD * ) ( @@a1@@ + Number ) , * ( const char * * ) ( @@a1@@ + Number ) , * ( unsigned int * ) ( @@a1@@ + Number ) ) ; if ( @@a2@@ ) { if ( @@a2@@ == Number ) { snprintf ( @@v5@@ , Number , String , * ( const char * * ) ( @@a1@@ + Number ) , @@s@@ ) ; @@result@@ = pjsua_perror ( String , @@v5@@ , * @@a3@@ ) ; } } else { @@result@@ = pj_log_get_level ( @@s@@ ) ; if ( @@result@@ > Number ) @@result@@ = pj_log_3 ( String , String , * ( const char * * ) ( @@a1@@ + Number ) , @@s@@ ) ; } return @@result@@ ; }", "source": [{"n": "a3", "t": {"T": 3, "t": "unsigned int"}, "location": "r16"}, {"n": "a1", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "r56"}, {"n": "a2", "t": {"T": 1, "n": "int", "s": 4}, "location": "r64"}, {"n": "result", "t": {"T": 1, "n": "int", "s": 4}, "location": "r8"}, {"n": "s", "t": {"T": 2, "n": 128, "s": 1, "t": "char"}, "location": "s128"}, {"n": "v5", "t": {"T": 2, "n": 112, "s": 1, "t": "char"}, "location": "s240"}]} {"name": "on_ice_transport_error", "code": "__int64 __fastcall on_ice_transport_error ( unsigned int @@a1@@ , __int64 @@a2@@ , unsigned int @@a3@@ ) { return pj_perror_1 ( String , @@a3@@ , String , @@a1@@ ) ; }", "source": [{"n": "a3", "t": {"T": 1, "n": "unsigned int", "s": 4}, "location": "r16"}, {"n": "a1", "t": {"T": 1, "n": "unsigned int", "s": 4}, "location": "r56"}, {"n": "a2", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "r64"}]} {"name": "on_snd_dev_operation", "code": "__int64 __fastcall on_snd_dev_operation ( __int64 @@a1@@ ) { const char * @@v1@@ ; if ( ( int ) pj_log_get_level ( @@a1@@ ) > Number ) { if ( ( _DWORD ) @@a1@@ ) @@v1@@ = String ; else @@v1@@ = String ; pj_log_3 ( String , String , @@v1@@ ) ; } return Number L ; }", "source": [{"n": "a1", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "r56"}, {"n": "v1", "t": {"T": 3, "t": "const char"}, "location": "r8"}]} {"name": "on_call_media_event", "code": "__int64 __fastcall on_call_media_event ( __int64 @@a1@@ , __int64 @@a2@@ , unsigned int * @@a3@@ ) { __int64 result ; const char * v4 ; char @@v6@@ [ Number ] ; result = pj_log_get_level ( @@a1@@ ) ; if ( ( int ) result > Number ) { v4 = ( const char * ) pjmedia_fourcc_name ( * @@a3@@ , ( __int64 ) @@v6@@ ) ; result = pj_log_5 ( String , String , v4 ) ; } return result ; }", "source": [{"n": "a3", "t": {"T": 3, "t": "unsigned int"}, "location": "r16"}, {"n": "a1", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "r56"}, {"n": "a2", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "r64"}, {"n": "v6", "t": {"T": 2, "n": 5, "s": 1, "t": "char"}, "location": "s5"}]} {"name": "on_playfile_done", "code": "__int64 __fastcall on_playfile_done ( __int64 @@a1@@ , __int64 @@a2@@ ) { __int64 result ; __int64 v3 ; __int64 @@v4@@ [ Number ] ; if ( ( unsigned int ) pjsua_call_get_count ( @@a1@@ , @@a2@@ ) ) { if ( app_config [ Number ] != Number ) { app_config [ Number ] = Number ; @@v4@@ [ Number ] = Number L ; @@v4@@ [ Number ] = Number L ; v3 = pjsua_get_pjsip_endpt ( ) ; pjsip_endpt_schedule_timer ( v3 , ( unsigned int ) ( ( _DWORD ) app_config + Number ) , @@v4@@ ) ; } result = Number L ; } else { pjsua_player_set_pos ( app_config [ Number ] , Number L ) ; result = Number L ; } return result ; }", "source": [{"n": "a1", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "r56"}, {"n": "a2", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "r64"}, {"n": "v4", "t": {"T": 2, "n": 2, "s": 8, "t": "__int64"}, "location": "s16"}]} {"name": "hangup_timeout_callback", "code": "__int64 __fastcall hangup_timeout_callback ( __int64 @@a1@@ , __int64 @@a2@@ ) { app_config [ Number ] = Number ; return pjsua_call_hangup_all ( @@a1@@ , @@a2@@ ) ; }", "source": [{"n": "a1", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "r56"}, {"n": "a2", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "r64"}]} {"name": "cli_on_started", "code": "__int64 ( __fastcall * __fastcall cli_on_started ( unsigned int @@a1@@ ) ) ( _QWORD , _QWORD ) { __int64 ( __fastcall * @@result@@ ) ( _QWORD , _QWORD ) ; char @@v2@@ [ Number ] ; @@result@@ = qword_3490 ; if ( qword_3490 ) { if ( @@a1@@ ) { @@result@@ = qword_3490 ; if ( qword_3490 ) @@result@@ = ( __int64 ( __fastcall * ) ( _QWORD , _QWORD ) ) qword_3490 ( @@a1@@ , Number L ) ; } else { cli_get_info ( @@v2@@ , Number L ) ; @@result@@ = qword_3490 ; if ( qword_3490 ) @@result@@ = ( __int64 ( __fastcall * ) ( _QWORD , _QWORD ) ) qword_3490 ( Number L , @@v2@@ ) ; } } return @@result@@ ; }", "source": [{"n": "a1", "t": {"T": 1, "n": "unsigned int", "s": 4}, "location": "r56"}, {"n": "result", "t": {"T": 9, "n": "__int64 (__fastcall *)(_QWORD, _QWORD)"}, "location": "r8"}, {"n": "v2", "t": {"T": 2, "n": 128, "s": 1, "t": "char"}, "location": "s128"}]} {"name": "pjsua_app_init", "code": "__int64 __fastcall pjsua_app_init ( const void * @@a1@@ ) { unsigned int @@v2@@ ; pj_memcpy ( & app_cfg , @@a1@@ , Number ) ; @@v2@@ = app_init ( ) ; if ( @@v2@@ ) return @@v2@@ ; if ( app_config [ Number ] ) @@v2@@ = cli_init ( ) ; return @@v2@@ ; }", "source": [{"n": "a1", "t": {"T": 3, "t": "const void"}, "location": "r56"}, {"n": "v2", "t": {"T": 1, "n": "unsigned int", "s": 4}, "location": "s4"}]} {"name": "app_destroy", "code": "__int64 app_destroy ( ) { unsigned int @@v1@@ ; __int16 @@v2@@ ; unsigned int @@v3@@ ; unsigned int @@v4@@ ; unsigned int i ; unsigned int j ; @@v4@@ = Number ; @@v3@@ = Number ; @@v2@@ = Number ; for ( i = Number ; i < app_config [ Number ] ; ++ i ) { if ( app_config [ Number * i + Number ] != Number ) pjsua_conf_remove_port ( app_config [ Number * i + Number ] ) ; } if ( * ( _QWORD * ) & app_config [ Number ] && app_config [ Number ] != Number ) { pjsua_conf_remove_port ( app_config [ Number ] ) ; app_config [ Number ] = Number ; pjmedia_port_destroy ( * ( _QWORD * ) & app_config [ Number ] ) ; * ( _QWORD * ) & app_config [ Number ] = Number L ; } if ( * ( _QWORD * ) & app_config [ Number ] && app_config [ Number ] != Number ) { pjsua_conf_remove_port ( app_config [ Number ] ) ; app_config [ Number ] = Number ; pjmedia_port_destroy ( * ( _QWORD * ) & app_config [ Number ] ) ; * ( _QWORD * ) & app_config [ Number ] = Number L ; } for ( j = Number ; j < app_config [ Number ] ; ++ j ) pjsua_conf_remove_port ( app_config [ j + Number ] ) ; if ( * ( _QWORD * ) & app_config [ Number ] ) { pj_pool_release ( * ( _QWORD * ) & app_config [ Number ] ) ; * ( _QWORD * ) & app_config [ Number ] = Number L ; } @@v1@@ = pjsua_destroy ( ) ; if ( app_config [ Number ] ) { @@v4@@ = app_config [ Number ] ; @@v3@@ = app_config [ Number ] ; @@v2@@ = app_config [ Number ] ; } pj_bzero ( app_config , Number ) ; if ( @@v4@@ ) { app_config [ Number ] = @@v4@@ ; app_config [ Number ] = @@v3@@ ; LOWORD ( app_config [ Number ] ) = @@v2@@ ; } return @@v1@@ ; }", "source": [{"n": "v3", "t": {"T": 1, "n": "unsigned int", "s": 4}, "location": "s12"}, {"n": "v2", "t": {"T": 1, "n": "__int16", "s": 2}, "location": "s14"}, {"n": "v1", "t": {"T": 1, "n": "unsigned int", "s": 4}, "location": "s20"}, {"n": "v4", "t": {"T": 1, "n": "unsigned int", "s": 4}, "location": "s8"}]}