{"name": "dlAddTail", "code": "__int64 __fastcall dlAddTail ( __int64 @@a1@@ , _QWORD * @@a2@@ ) { return dlInsertBetween ( * ( _QWORD * * ) ( @@a1@@ + Number ) , * * ( _QWORD * * ) ( @@a1@@ + Number ) , @@a2@@ ) ; }", "source": [{"n": "a1", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "r56"}, {"n": "a2", "t": {"T": 3, "t": "_QWORD"}, "location": "r64"}]}
{"name": "dlInsertBetween", "code": "__int64 __fastcall dlInsertBetween ( _QWORD * @@a1@@ , __int64 @@a2@@ , _QWORD * @@a3@@ ) { __int64 @@result@@ ; * @@a1@@ = @@a3@@ ; @@a3@@ [ Number ] = @@a1@@ ; * @@a3@@ = @@a2@@ ; @@result@@ = @@a2@@ ; * ( _QWORD * ) ( @@a2@@ + Number ) = @@a3@@ ; return @@result@@ ; }", "source": [{"n": "a3", "t": {"T": 3, "t": "_QWORD"}, "location": "r16"}, {"n": "a1", "t": {"T": 3, "t": "_QWORD"}, "location": "r56"}, {"n": "a2", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "r64"}, {"n": "result", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "r8"}]} {"name": "dlAddValTail", "code": "_QWORD * __fastcall dlAddValTail ( __int64 @@a1@@ , __int64 @@a2@@ ) { _QWORD * @@v3@@ ; @@v3@@ = ( _QWORD * ) needMem ( Number L ) ; @@v3@@ [ Number ] = @@a2@@ ; dlAddTail ( @@a1@@ , @@v3@@ ) ; return @@v3@@ ; }", "source": [{"n": "a1", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "r56"}, {"n": "a2", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "r64"}, {"n": "v3", "t": {"T": 3, "t": "_QWORD"}, "location": "s8"}]} {"name": "dlSort", "code": "__int64 __fastcall dlSort ( _QWORD * @@a1@@ , __int64 ( __fastcall * @@a2@@ ) ( _QWORD , _QWORD ) ) { __int64 @@result@@ ; _QWORD * @@base@@ ; int @@v4@@ ; int v5 ; int i ; _QWORD * @@v7@@ ; @@result@@ = dlCount ( @@a1@@ ) ; @@v4@@ = @@result@@ ; if ( ( int ) @@result@@ > Number ) { @@base@@ = ( _QWORD * ) needLargeMem ( Number L * ( int ) @@result@@ ) ; v5 = Number ; @@v7@@ = ( _QWORD * ) * @@a1@@ ; while ( v5 < @@v4@@ ) { @@base@@ [ v5 ++ ] = @@v7@@ ; @@v7@@ = ( _QWORD * ) * @@v7@@ ; } compareFunc = @@a2@@ ; qsort ( @@base@@ , @@v4@@ , Number , ( __compar_fn_t ) dlNodeCmp ) ; dlListInit ( @@a1@@ ) ; for ( i = Number ; i < @@v4@@ ; ++ i ) dlAddTail ( ( __int64 ) @@a1@@ , ( _QWORD * ) @@base@@ [ i ] ) ; @@result@@ = freeMem ( @@base@@ ) ; } return @@result@@ ; }", "source": [{"n": "a1", "t": {"T": 3, "t": "_QWORD"}, "location": "r56"}, {"n": "a2", "t": {"T": 9, "n": "__int64 (__fastcall *)(_QWORD, _QWORD)"}, "location": "r64"}, {"n": "result", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "r8"}, {"n": "v4", "t": {"T": 1, "n": "int", "s": 4}, "location": "s16"}, {"n": "base", "t": {"T": 3, "t": "_QWORD"}, "location": "s24"}, {"n": "v7", "t": {"T": 3, "t": "_QWORD"}, "location": "s8"}]} {"name": "dlCat", "code": "_QWORD * __fastcall dlCat ( __int64 @@a1@@ , _QWORD * * @@a2@@ ) { _QWORD * @@result@@ ; for ( @@result@@ = dlPopHead ( @@a2@@ ) ; @@result@@ ; @@result@@ = dlPopHead ( @@a2@@ ) ) dlAddTail ( @@a1@@ , @@result@@ ) ; return @@result@@ ; }", "source": [{"n": "a1", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "r56"}, {"n": "a2", "t": {"T": 3, "t": "_QWORD *"}, "location": "r64"}, {"n": "result", "t": {"T": 3, "t": "_QWORD"}, "location": "r8"}]}