{"name": "jsonrpc_add", "code": "__int64 jsonrpc_add ( __int64 @@a1@@ , char * @@a2@@ , __int64 @@a3@@ , __int64 @@a4@@ , __int64 @@a5@@ , __int64 @@a6@@ , ... ) { _QWORD * * v6 ; const char * v7 ; int v8 ; const char * v9 ; unsigned int v10 ; const char * v11 ; unsigned int v12 ; void ( * v13 ) ( _QWORD , const char * , ... ) ; __int64 @@v14@@ ; unsigned int v15 ; __int64 v16 ; int @@v17@@ ; unsigned int v18 ; void ( * v19 ) ( _QWORD , const char * , ... ) ; const char * v20 ; int v21 ; unsigned int v22 ; gcc_va_list @@va@@ ; unsigned int @@v26@@ ; _QWORD * @@v27@@ ; __int64 @@v28@@ ; __int64 @@v29@@ ; __int64 @@v30@@ ; __int64 @@v31@@ ; __int64 @@v32@@ ; va_start ( @@va@@ , @@a6@@ ) ; @@v29@@ = @@a3@@ ; @@v30@@ = @@a4@@ ; @@v31@@ = @@a5@@ ; @@v32@@ = @@a6@@ ; @@v28@@ = Number L ; jsonrpc_delayed_reply_ctx_init ( @@a1@@ ) ; @@va@@ [ Number ] . gp_offset = Number ; while ( Number ) { if ( ! * @@a2@@ ) return Number L ; if ( * @@a2@@ == Number || * @@a2@@ == Number ) { if ( @@va@@ [ Number ] . gp_offset > Number ) { v6 = ( _QWORD * * ) @@va@@ [ Number ] . overflow_arg_area ; @@va@@ [ Number ] . overflow_arg_area = ( char * ) @@va@@ [ Number ] . overflow_arg_area + Number ; } else { v6 = ( _QWORD * * ) ( ( char * ) @@va@@ [ Number ] . reg_save_area + @@va@@ [ Number ] . gp_offset ) ; @@va@@ [ Number ] . gp_offset += Number ; } @@v27@@ = * v6 ; @@v28@@ = * @@a2@@ == Number ? srjson_CreateObject ( * ( _QWORD * ) ( @@a1@@ + Number ) ) : srjson_CreateArray ( * ( _QWORD * ) ( @@a1@@ + Number ) ) ; * @@v27@@ = @@v28@@ ; } else { @@v28@@ = jsonrpc_print_value ( @@a1@@ , * @@a2@@ , ( unsigned int * ) @@va@@ ) ; } if ( ! @@v28@@ ) break ; if ( ( * ( _DWORD * ) ( @@a1@@ + Number ) & Number ) != Number ) { if ( ! * ( _QWORD * ) ( @@a1@@ + Number ) ) { * ( _QWORD * ) ( @@a1@@ + Number ) = srjson_CreateArray ( * ( _QWORD * ) ( @@a1@@ + Number ) ) ; if ( ! * ( _QWORD * ) ( @@a1@@ + Number ) ) { if ( ( int ) get_debug_level ( String , Number L ) >= Number && ! dprint_crit ) { @@v26@@ = Number ; ++ dprint_crit ; if ( log_stderr ) { if ( log_color ) dprint_color ( @@v26@@ ) ; if ( log_prefix_val ) { v7 = ( const char * ) * log_prefix_val ; v8 = * ( ( _DWORD * ) log_prefix_val + Number ) ; v9 = ( const char * ) * ( ( _QWORD * ) & log_level_info + Number * ( int ) ( @@v26@@ + Number ) ) ; v10 = my_pid ( ) ; fprintf ( stderr , String , process_no , v10 , v9 , v8 , v7 , String , String ) ; } else { v11 = ( const char * ) * ( ( _QWORD * ) & log_level_info + Number * ( int ) ( @@v26@@ + Number ) ) ; v12 = my_pid ( ) ; fprintf ( stderr , String , process_no , v12 , v11 , String , String ) ; } if ( log_color ) dprint_color_reset ( ) ; } else if ( log_prefix_val ) { v13 = ( void ( * ) ( _QWORD , const char * , ... ) ) km_log_func ; @@v14@@ = * log_prefix_val ; v15 = * ( ( _DWORD * ) log_prefix_val + Number ) ; v16 = * ( ( _QWORD * ) & log_level_info + Number * ( int ) ( @@v26@@ + Number ) ) ; @@v17@@ = * ( ( _DWORD * ) & log_level_info + Number * ( int ) ( @@v26@@ + Number ) + Number ) ; v18 = get_debug_facility ( String , Number L ) ; v13 ( @@v17@@ | v18 , String , v16 , v15 , @@v14@@ , String , String ) ; } else { v19 = ( void ( * ) ( _QWORD , const char * , ... ) ) km_log_func ; v20 = ( const char * ) * ( ( _QWORD * ) & log_level_info + Number * ( int ) ( @@v26@@ + Number ) ) ; v21 = * ( ( _DWORD * ) & log_level_info + Number * ( int ) ( @@v26@@ + Number ) + Number ) ; v22 = get_debug_facility ( String , Number L ) ; v19 ( v21 | v22 , String , v20 , String , String ) ; } -- dprint_crit ; } return Number ; } } srjson_AddItemToArray ( * ( _QWORD * ) ( @@a1@@ + Number ) , * ( _QWORD * ) ( @@a1@@ + Number ) , @@v28@@ ) ; } else { if ( * ( _QWORD * ) ( @@a1@@ + Number ) ) srjson_Delete ( * ( _QWORD * ) ( @@a1@@ + Number ) , * ( _QWORD * ) ( @@a1@@ + Number ) ) ; * ( _QWORD * ) ( @@a1@@ + Number ) = @@v28@@ ; } ++ @@a2@@ ; } return Number ; }", "source": [{"n": "v17", "t": {"T": 1, "n": "int", "s": 4}, "location": "r120"}, {"n": "v14", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "r128"}, {"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": "char"}, "location": "r64"}, {"n": "a5", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "r72"}, {"n": "a6", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "r80"}, {"n": "v32", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "s184"}, {"n": "v31", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "s192"}, {"n": "v30", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "s200"}, {"n": "v29", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "s208"}, {"n": "v28", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "s232"}, {"n": "v27", "t": {"T": 3, "t": "_QWORD"}, "location": "s240"}, {"n": "v26", "t": {"T": 1, "n": "unsigned int", "s": 4}, "location": "s244"}, {"n": "va", "t": {"T": 2, "n": 1, "s": 24, "t": "__va_list_tag"}, "location": "s272"}]}