{"name": "get_drive", "code": "unsigned __int64 __fastcall get_drive ( __int64 @@a1@@ , __int64 @@a2@@ , __int64 @@a3@@ , __int64 @@a4@@ , __int64 @@a5@@ ) { return get_pointer ( @@a1@@ , @@a2@@ , @@a3@@ , print_drive , @@a4@@ , @@a5@@ ) ; }", "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": 1, "n": "__int64", "s": 8}, "location": "r64"}, {"n": "a5", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "r72"}]}
{"name": "get_pointer", "code": "unsigned __int64 __fastcall get_pointer ( __int64 @@a1@@ , __int64 @@a2@@ , __int64 @@a3@@ , __int64 ( __fastcall * @@a4@@ ) ( _QWORD ) , __int64 @@a5@@ , __int64 @@a6@@ ) { __int64 @@v6@@ ; __int64 @@v12@@ ; __int64 @@v13@@ ; _QWORD * @@v14@@ ; unsigned __int64 @@v15@@ ; @@v15@@ = __readfsqword ( Number ) ; @@v13@@ = object_dynamic_cast_assert ( @@a1@@ , String , String , Number L , String ) ; @@v14@@ = ( _QWORD * ) qdev_get_prop_ptr ( @@v13@@ , @@a3@@ ) ; if ( * @@v14@@ ) @@v6@@ = @@a4@@ ( * @@v14@@ ) ; else @@v6@@ = g_strdup ( & unk_1078 ) ; @@v12@@ = @@v6@@ ; visit_type_str ( @@a2@@ , & @@v12@@ , @@a5@@ , @@a6@@ ) ; g_free ( @@v12@@ ) ; return __readfsqword ( Number ) ^ @@v15@@ ; }", "source": [{"n": "a3", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "r16"}, {"n": "a4", "t": {"T": 9, "n": "__int64 (__fastcall *)(_QWORD)"}, "location": "r24"}, {"n": "a1", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "r56"}, {"n": "a2", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "r64"}, {"n": "a5", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "r72"}, {"n": "v6", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "r8"}, {"n": "a6", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "r80"}, {"n": "v14", "t": {"T": 3, "t": "_QWORD"}, "location": "s16"}, {"n": "v13", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "s24"}, {"n": "v12", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "s32"}, {"n": "v15", "t": {"T": 1, "n": "unsigned __int64", "s": 8}, "location": "s8"}]} {"name": "print_drive", "code": "__int64 __fastcall print_drive ( __int64 @@a1@@ ) { __int64 @@v1@@ ; @@v1@@ = bdrv_get_device_name ( @@a1@@ ) ; return g_strdup ( @@v1@@ ) ; }", "source": [{"n": "a1", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "r56"}, {"n": "v1", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "r8"}]}