{"name": "__DArray_bottom_up_mergesort_merge", "code": "__int64 __fastcall _DArray_bottom_up_mergesort_merge ( __int64 @@a1@@ , unsigned int @@a2@@ , int @@a3@@ , int @@a4@@ , __int64 @@a5@@ , int ( __fastcall * @@a6@@ ) ( __int64 , __int64 ) ) { __int64 @@result@@ ; int @@v10@@ ; unsigned int @@i@@ ; int @@v12@@ ; int @@v13@@ ; @@v10@@ = @@a3@@ ; @@v13@@ = @@a2@@ ; @@v12@@ = @@a3@@ ; for ( @@i@@ = @@a2@@ ; ; ++ @@i@@ ) { @@result@@ = @@i@@ ; if ( ( int ) @@i@@ >= @@a4@@ ) break ; if ( @@v13@@ >= @@v10@@ || @@v12@@ < @@a4@@ && @@a6@@ ( * ( _QWORD * ) ( @@a1@@ + Number ) + Number L * @@v13@@ , * ( _QWORD * ) ( @@a1@@ + Number ) + Number L * @@v12@@ ) > Number ) * ( _QWORD * ) ( * ( _QWORD * ) ( @@a5@@ + Number ) + Number L * ( int ) @@i@@ ) = * ( _QWORD * ) ( * ( _QWORD * ) ( @@a1@@ + Number ) + Number L * @@v12@@ ++ ) ; else * ( _QWORD * ) ( * ( _QWORD * ) ( @@a5@@ + Number ) + Number L * ( int ) @@i@@ ) = * ( _QWORD * ) ( * ( _QWORD * ) ( @@a1@@ + Number ) + Number L * @@v13@@ ++ ) ; } return @@result@@ ; }", "source": [{"n": "a3", "t": {"T": 1, "n": "int", "s": 4}, "location": "r16"}, {"n": "a4", "t": {"T": 1, "n": "int", "s": 4}, "location": "r24"}, {"n": "a1", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "r56"}, {"n": "a2", "t": {"T": 1, "n": "unsigned int", "s": 4}, "location": "r64"}, {"n": "a5", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "r72"}, {"n": "result", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "r8"}, {"n": "a6", "t": {"T": 9, "n": "int (__fastcall *)(__int64, __int64)"}, "location": "r80"}, {"n": "i", "t": {"T": 1, "n": "unsigned int", "s": 4}, "location": "s12"}, {"n": "v10", "t": {"T": 1, "n": "int", "s": 4}, "location": "s32"}, {"n": "v13", "t": {"T": 1, "n": "int", "s": 4}, "location": "s4"}, {"n": "v12", "t": {"T": 1, "n": "int", "s": 4}, "location": "s8"}]}