{"name": "die_find_member", "code": "Dwarf_Die * __fastcall die_find_member ( struct Dwarf_Die_s * @@a1@@ , __int64 @@a2@@ , Dwarf_Die * @@a3@@ ) { return die_find_child ( @@a1@@ , ( __int64 ( __fastcall * ) ( Dwarf_Die * , __int64 ) ) _die_find_member_cb , @@a2@@ , @@a3@@ ) ; }", "source": [{"n": "a3", "t": {"T": 3, "t": "Dwarf_Die"}, "location": "r16"}, {"n": "a1", "t": {"T": 3, "t": "struct Dwarf_Die_s"}, "location": "r56"}, {"n": "a2", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "r64"}]}
{"name": "die_find_child", "code": "Dwarf_Die * __fastcall die_find_child ( struct Dwarf_Die_s * @@a1@@ , __int64 ( __fastcall * @@a2@@ ) ( Dwarf_Die * , __int64 ) , __int64 @@a3@@ , Dwarf_Die * @@a4@@ ) { Dwarf_Error * v5 ; int @@v8@@ ; char @@src@@ [ Number ] ; unsigned __int64 @@v10@@ ; @@v10@@ = __readfsqword ( Number ) ; if ( dwarf_child ( @@a1@@ , @@a4@@ , @@a4@@ ) ) return Number L ; do { @@v8@@ = @@a2@@ ( @@a4@@ , @@a3@@ ) ; if ( ! @@v8@@ ) return @@a4@@ ; if ( ( @@v8@@ & Number ) != Number && die_find_child ( @@a4@@ , @@a2@@ , @@a3@@ , @@src@@ ) ) { memcpy ( @@a4@@ , @@src@@ , Number ) ; return @@a4@@ ; } } while ( ( @@v8@@ & Number ) != Number && ! dwarf_siblingof ( ( Dwarf_Debug ) @@a4@@ , ( Dwarf_Die ) @@a4@@ , @@a4@@ , v5 ) ) ; return Number L ; }", "source": [{"n": "a3", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "r16"}, {"n": "a4", "t": {"T": 3, "t": "Dwarf_Die"}, "location": "r24"}, {"n": "a1", "t": {"T": 3, "t": "struct Dwarf_Die_s"}, "location": "r56"}, {"n": "a2", "t": {"T": 9, "n": "__int64 (__fastcall *)(Dwarf_Die *, __int64)"}, "location": "r64"}, {"n": "src", "t": {"T": 2, "n": 40, "s": 1, "t": "char"}, "location": "s48"}, {"n": "v8", "t": {"T": 1, "n": "int", "s": 4}, "location": "s52"}, {"n": "v10", "t": {"T": 1, "n": "unsigned __int64", "s": 8}, "location": "s8"}]} {"name": "__die_find_member_cb", "code": "__int64 __fastcall _die_find_member_cb ( struct Dwarf_Die_s * @@a1@@ , Dwarf_Half * @@a2@@ , Dwarf_Error * @@a3@@ ) { __int64 @@result@@ ; if ( dwarf_tag ( @@a1@@ , @@a2@@ , @@a3@@ ) == Number && die_compare_name ( @@a1@@ , ( char * * ) @@a2@@ , ( Dwarf_Error * ) @@a2@@ ) ) @@result@@ = Number L ; else @@result@@ = Number L ; return @@result@@ ; }", "source": [{"n": "a3", "t": {"T": 3, "t": "Dwarf_Error"}, "location": "r16"}, {"n": "a1", "t": {"T": 3, "t": "struct Dwarf_Die_s"}, "location": "r56"}, {"n": "a2", "t": {"T": 3, "t": "Dwarf_Half"}, "location": "r64"}, {"n": "result", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "r8"}]}