{"name": "get_constraint_priority", "code": "__int64 __fastcall get_constraint_priority ( __int64 @@a1@@ , int @@a2@@ ) { int @@i@@ ; int @@v4@@ ; __int64 @@v5@@ ; @@v5@@ = Number L * @@a2@@ + * ( _QWORD * ) ( @@a1@@ + Number ) ; if ( ( * ( _WORD * ) @@v5@@ & Number ) != Number ) { @@v4@@ = Number ; } else { if ( ( * ( _WORD * ) @@v5@@ & Number ) == Number ) return Number L ; @@v4@@ = Number ; for ( @@i@@ = Number ; @@i@@ <= Number ; ++ @@i@@ ) { if ( ( ( * ( _DWORD * ) ( @@v5@@ + Number ) >> @@i@@ ) & Number ) != Number ) ++ @@v4@@ ; } } return ( unsigned int ) ( Number - @@v4@@ ) ; }", "source": [{"n": "a1", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "r56"}, {"n": "a2", "t": {"T": 1, "n": "int", "s": 4}, "location": "r64"}, {"n": "v5", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "s16"}, {"n": "v4", "t": {"T": 1, "n": "int", "s": 4}, "location": "s20"}, {"n": "i", "t": {"T": 1, "n": "int", "s": 4}, "location": "s24"}]}
{"name": "sort_constraints", "code": "unsigned __int64 __fastcall sort_constraints ( __int64 @@a1@@ , int @@a2@@ , int @@a3@@ ) { int i ; int j ; int @@k@@ ; int @@v8@@ ; int @@v9@@ ; unsigned __int64 @@v10@@ ; @@v10@@ = __readfsqword ( Number ) ; for ( i = Number ; i < @@a3@@ ; ++ i ) * ( _DWORD * ) ( Number L * ( @@a2@@ + i ) + * ( _QWORD * ) ( @@a1@@ + Number ) ) = @@a2@@ + i ; if ( @@a3@@ > Number ) { for ( j = Number ; j < @@a3@@ - Number ; ++ j ) { for ( @@k@@ = j + Number ; @@k@@ < @@a3@@ ; ++ @@k@@ ) { @@v8@@ = get_constraint_priority ( @@a1@@ , * ( _DWORD * ) ( Number L * ( @@a2@@ + j ) + * ( _QWORD * ) ( @@a1@@ + Number ) ) ) ; if ( @@v8@@ < ( int ) get_constraint_priority ( @@a1@@ , * ( _DWORD * ) ( Number L * ( @@a2@@ + @@k@@ ) + * ( _QWORD * ) ( @@a1@@ + Number ) ) ) ) { @@v9@@ = * ( _DWORD * ) ( Number L * ( @@a2@@ + j ) + * ( _QWORD * ) ( @@a1@@ + Number ) ) ; * ( _DWORD * ) ( * ( _QWORD * ) ( @@a1@@ + Number ) + Number L * ( @@a2@@ + j ) ) = * ( _DWORD * ) ( * ( _QWORD * ) ( @@a1@@ + Number ) + Number L * ( @@a2@@ + @@k@@ ) ) ; * ( _DWORD * ) ( * ( _QWORD * ) ( @@a1@@ + Number ) + Number L * ( @@a2@@ + @@k@@ ) ) = @@v9@@ ; } } } } return __readfsqword ( Number ) ^ @@v10@@ ; }", "source": [{"n": "a3", "t": {"T": 1, "n": "int", "s": 4}, "location": "r16"}, {"n": "a1", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "r56"}, {"n": "a2", "t": {"T": 1, "n": "int", "s": 4}, "location": "r64"}, {"n": "v9", "t": {"T": 1, "n": "int", "s": 4}, "location": "s12"}, {"n": "v8", "t": {"T": 1, "n": "int", "s": 4}, "location": "s20"}, {"n": "k", "t": {"T": 1, "n": "int", "s": 4}, "location": "s24"}, {"n": "v10", "t": {"T": 1, "n": "unsigned __int64", "s": 8}, "location": "s8"}]}