{"name": "copydesc_kern", "code": "__int64 __fastcall copydesc_kern ( void * @@a1@@ , const void * @@a2@@ , size_t @@a3@@ ) { memcpy ( @@a1@@ , @@a2@@ , @@a3@@ ) ; return Number L ; }", "source": [{"n": "a3", "t": {"T": 1, "n": "size_t", "s": 8}, "location": "r16"}, {"n": "a1", "t": {"T": 3, "t": "void"}, "location": "r56"}, {"n": "a2", "t": {"T": 3, "t": "const void"}, "location": "r64"}]}
{"name": "vringh_getdesc_kern", "code": "__int64 __fastcall vringh_getdesc_kern ( __int64 @@a1@@ , __int64 @@a2@@ , __int64 @@a3@@ , unsigned __int16 * @@a4@@ , unsigned int @@a5@@ ) { __int64 @@result@@ ; int v9 ; unsigned int v10 ; v9 = _vringh_get_head ( @@a1@@ , ( __int64 ( __fastcall * ) ( __int64 , __int16 * , __int64 ) ) getu16_kern , ( _WORD * ) ( @@a1@@ + Number ) ) ; if ( v9 < Number ) return ( unsigned int ) v9 ; if ( * ( _DWORD * ) ( @@a1@@ + Number ) == v9 ) return Number L ; * @@a4@@ = v9 ; v10 = _vringh_iov ( @@a1@@ , * @@a4@@ , @@a2@@ , @@a3@@ , ( unsigned __int8 ( __fastcall * ) ( __int64 , __int64 , __int64 * , __int64 , __int64 ) ) no_range_check , Number L , @@a5@@ , ( __int64 ( __fastcall * ) ( __int64 , __int64 , __int64 ) ) copydesc_kern ) ; if ( v10 ) @@result@@ = v10 ; else @@result@@ = Number L ; return @@result@@ ; }", "source": [{"n": "a3", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "r16"}, {"n": "a4", "t": {"T": 3, "t": "unsigned __int16"}, "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": "unsigned int", "s": 4}, "location": "r72"}, {"n": "result", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "r8"}]}