{"name": "perf_probe_event_need_dwarf", "code": "__int64 __fastcall perf_probe_event_need_dwarf ( __int64 @@a1@@ ) { int @@i@@ ; if ( * ( _QWORD * ) ( @@a1@@ + Number ) || * ( _DWORD * ) ( @@a1@@ + Number ) || * ( _QWORD * ) ( @@a1@@ + Number ) ) return Number L ; for ( @@i@@ = Number ; @@i@@ < * ( _DWORD * ) ( @@a1@@ + Number ) ; ++ @@i@@ ) { if ( is_c_varname ( * ( _BYTE * * ) ( Number L * @@i@@ + * ( _QWORD * ) ( @@a1@@ + Number ) + Number ) ) ) return Number L ; } return Number L ; }", "source": [{"n": "a1", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "r56"}, {"n": "i", "t": {"T": 1, "n": "int", "s": 4}, "location": "s12"}]}
{"name": "is_c_varname", "code": "_BOOL8 __fastcall is_c_varname ( _BYTE * @@a1@@ ) { return ( * ( ( _BYTE * ) & sane_ctype + ( unsigned __int8 ) * @@a1@@ ) & Number ) != Number || * @@a1@@ == Number ; }", "source": [{"n": "a1", "t": {"T": 3, "t": "_BYTE"}, "location": "r56"}]} {"name": "try_to_find_probe_trace_events", "code": "__int64 __fastcall try_to_find_probe_trace_events ( __int64 @@a1@@ , __int64 * @@a2@@ , unsigned int @@a3@@ , const char * @@a4@@ ) { __int64 result ; const char * v5 ; unsigned __int8 @@v8@@ ; int @@v9@@ ; unsigned int @@v10@@ ; __int64 @@v11@@ ; @@v8@@ = perf_probe_event_need_dwarf ( @@a1@@ ) ; @@v11@@ = open_debuginfo ( @@a4@@ ) ; @@v9@@ = Number ; if ( @@v11@@ ) { @@v10@@ = debuginfo__find_trace_events ( @@v11@@ , @@a1@@ , @@a2@@ , @@a3@@ ) ; debuginfo__delete ( @@v11@@ ) ; if ( ( int ) @@v10@@ <= Number ) { if ( @@v10@@ ) { eprintf ( Number L , String , @@v10@@ ) ; if ( @@v10@@ == Number && ( eprintf ( Number L , String ) , @@v8@@ ^ Number ) ) { eprintf ( Number L , String ) ; result = Number L ; } else { result = @@v10@@ ; } } else { v5 = ( const char * ) synthesize_perf_probe_point ( @@a1@@ + Number ) ; eprintf ( Number L , String , v5 ) ; result = Number L ; } } else { eprintf ( Number L , String , @@v10@@ ) ; if ( @@a4@@ ) @@v9@@ = add_module_to_probe_trace_events ( * @@a2@@ , @@v10@@ , @@a4@@ ) ; if ( @@v9@@ >= Number ) result = @@v10@@ ; else result = ( unsigned int ) @@v9@@ ; } } else if ( @@v8@@ ) { eprintf ( Number L , String ) ; result = Number L ; } else { eprintf ( Number L , String ) ; result = Number L ; } return result ; }", "source": [{"n": "a3", "t": {"T": 1, "n": "unsigned int", "s": 4}, "location": "r16"}, {"n": "a4", "t": {"T": 3, "t": "const char"}, "location": "r24"}, {"n": "a1", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "r56"}, {"n": "a2", "t": {"T": 3, "t": "__int64"}, "location": "r64"}, {"n": "v11", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "s16"}, {"n": "v10", "t": {"T": 1, "n": "unsigned int", "s": 4}, "location": "s20"}, {"n": "v9", "t": {"T": 1, "n": "int", "s": 4}, "location": "s24"}, {"n": "v8", "t": {"T": 1, "n": "unsigned __int8", "s": 1}, "location": "s25"}]}