{"name": "die_get_decl_fileno", "code": "Dwarf_Signed __fastcall die_get_decl_fileno ( struct Dwarf_Die_s * @@a1@@ ) { Dwarf_Signed @@result@@ ; Dwarf_Signed @@v2@@ [ Number ] ; @@v2@@ [ Number ] = __readfsqword ( Number ) ; if ( ( unsigned int ) die_get_attr_sdata ( @@a1@@ , Number , @@v2@@ ) ) @@result@@ = Number L ; else @@result@@ = @@v2@@ [ Number ] ; return @@result@@ ; }", "source": [{"n": "a1", "t": {"T": 3, "t": "struct Dwarf_Die_s"}, "location": "r56"}, {"n": "result", "t": {"T": 1, "n": "Dwarf_Signed", "s": 8}, "location": "r8"}, {"n": "v2", "t": {"T": 2, "n": 2, "s": 8, "t": "Dwarf_Signed"}, "location": "s16"}]}
{"name": "die_get_attr_sdata", "code": "__int64 __fastcall die_get_attr_sdata ( struct Dwarf_Die_s * @@a1@@ , unsigned int @@a2@@ , Dwarf_Signed * @@a3@@ ) { __int64 v3 ; __int64 result ; Dwarf_Attribute @@v6@@ [ Number ] ; @@v6@@ [ Number ] = ( Dwarf_Attribute ) __readfsqword ( Number ) ; LODWORD ( v3 ) = dwarf_attr ( @@a1@@ , @@a2@@ , @@v6@@ , ( Dwarf_Error * ) @@a2@@ ) ; if ( v3 && ! dwarf_formsdata ( ( Dwarf_Attribute ) @@v6@@ , @@a3@@ , ( Dwarf_Error * ) @@a3@@ ) ) result = Number L ; else result = Number L ; return result ; }", "source": [{"n": "a3", "t": {"T": 3, "t": "Dwarf_Signed"}, "location": "r16"}, {"n": "a1", "t": {"T": 3, "t": "struct Dwarf_Die_s"}, "location": "r56"}, {"n": "a2", "t": {"T": 1, "n": "unsigned int", "s": 4}, "location": "r64"}, {"n": "v6", "t": {"T": 2, "n": 4, "s": 8, "t": "Dwarf_Attribute"}, "location": "s32"}]} {"name": "__die_walk_instances_cb", "code": "__int64 __fastcall _die_walk_instances_cb ( struct Dwarf_Die_s * @@a1@@ , __int64 @@a2@@ , __int64 @@a3@@ , Dwarf_Error * @@a4@@ ) { __int64 v4 ; __int64 result ; __int64 v6 ; Dwarf_Error * v7 ; int v8 ; int v9 ; int v10 ; int @@v11@@ ; __int64 @@v12@@ ; __int64 @@v13@@ ; struct Dwarf_Die_s * @@v14@@ ; Dwarf_Attribute @@v15@@ ; Dwarf_Half @@v16@@ [ Number ] ; unsigned __int64 @@v17@@ ; @@v17@@ = __readfsqword ( Number ) ; @@v12@@ = @@a2@@ ; LODWORD ( v4 ) = dwarf_attr ( @@a1@@ , Number , & @@v15@@ , @@a4@@ ) ; @@v13@@ = v4 ; if ( ! v4 ) return Number L ; @@v14@@ = ( struct Dwarf_Die_s * ) dwarf_formref_die ( @@v13@@ , @@v16@@ ) ; if ( ! @@v14@@ || * ( _QWORD * ) @@v14@@ != * ( _QWORD * ) @@v12@@ ) return Number L ; if ( dwarf_tag ( @@a1@@ , @@v16@@ , * ( Dwarf_Error * * ) @@v14@@ ) == Number ) { dwarf_decl_line ( @@v14@@ , & @@v11@@ ) ; v8 = die_get_call_lineno ( @@a1@@ , ( __int64 ) & @@v11@@ , v6 , v7 ) ; if ( v8 == @@v11@@ ) { @@v11@@ = die_get_decl_fileno ( @@v14@@ ) ; v9 = die_get_call_fileno ( @@a1@@ ) ; if ( v9 == @@v11@@ ) return Number L ; } } v10 = ( * ( __int64 ( __fastcall * * ) ( struct Dwarf_Die_s * , _QWORD ) ) ( @@v12@@ + Number ) ) ( @@a1@@ , * ( _QWORD * ) ( @@v12@@ + Number ) ) ; * ( _DWORD * ) ( @@v12@@ + Number ) = v10 ; if ( * ( _DWORD * ) ( @@v12@@ + Number ) ) result = Number L ; else result = Number L ; return result ; }", "source": [{"n": "a3", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "r16"}, {"n": "a4", "t": {"T": 3, "t": "Dwarf_Error"}, "location": "r24"}, {"n": "a1", "t": {"T": 3, "t": "struct Dwarf_Die_s"}, "location": "r56"}, {"n": "a2", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "r64"}, {"n": "v12", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "s104"}, {"n": "v11", "t": {"T": 1, "n": "int", "s": 4}, "location": "s108"}, {"n": "v16", "t": {"T": 2, "n": 20, "s": 2, "t": "Dwarf_Half"}, "location": "s48"}, {"n": "v17", "t": {"T": 1, "n": "unsigned __int64", "s": 8}, "location": "s8"}, {"n": "v15", "t": {"T": 1, "n": "Dwarf_Attribute", "s": 8}, "location": "s80"}, {"n": "v14", "t": {"T": 3, "t": "struct Dwarf_Die_s"}, "location": "s88"}, {"n": "v13", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "s96"}]}