{"name": "QRfact", "code": "__int64 __fastcall QRfact ( int @@a1@@ , __int64 @@a2@@ , __int64 @@a3@@ , int @@a4@@ ) { double v4 ; double v5 ; double * v6 ; double v7 ; double v8 ; double * v9 ; double v11 ; double v12 ; int @@v14@@ ; double v15 ; double v16 ; double v17 ; double v18 ; double v19 ; double v20 ; double v21 ; double v22 ; int @@v23@@ ; unsigned int @@v24@@ ; int j ; int i ; int @@k@@ ; double v28 ; double v29 ; double v30 ; double v31 ; double v32 ; double v33 ; double v34 ; double v35 ; if ( @@a4@@ ) { @@v14@@ = @@a1@@ - Number ; @@v24@@ = Number ; for ( i = Number ; i < @@v14@@ ; ++ i ) { v21 = * ( double * ) ( Number L * @@v14@@ + * ( _QWORD * ) ( Number L * i + @@a2@@ ) ) ; v17 = * ( double * ) ( Number L * @@v14@@ + * ( _QWORD * ) ( Number * ( i + Number L ) + @@a2@@ ) ) ; v34 = * ( double * ) ( Number L * i + @@a3@@ ) ; v30 = * ( double * ) ( Number * ( Number * i + Number L ) + @@a3@@ ) ; * ( double * ) ( Number L * @@v14@@ + * ( _QWORD * ) ( Number L * i + @@a2@@ ) ) = v34 * v21 - v30 * v17 ; * ( double * ) ( Number L * @@v14@@ + * ( _QWORD * ) ( Number * ( i + Number L ) + @@a2@@ ) ) = v34 * v17 + v30 * v21 ; } v22 = * ( double * ) ( Number L * @@v14@@ + * ( _QWORD * ) ( Number L * @@v14@@ + @@a2@@ ) ) ; v18 = * ( double * ) ( Number L * @@v14@@ + * ( _QWORD * ) ( Number L * @@a1@@ + @@a2@@ ) ) ; if ( v18 == Number ) { v35 = Number ; v31 = Number ; } else { v12 = RAbs ( v18 ) ; if ( v12 < RAbs ( v22 ) ) { v8 = RPower2 ( v18 / v22 ) ; v35 = Number / RSqrt ( v8 + Number ) ; v31 = - v35 * ( v18 / v22 ) ; } else { v7 = RPower2 ( v22 / v18 ) ; v31 = Number / RSqrt ( v7 + Number ) ; v35 = - v31 * ( v22 / v18 ) ; } } * ( double * ) ( Number L * @@v14@@ + @@a3@@ ) = v35 ; * ( double * ) ( Number * ( Number * @@v14@@ + Number L ) + @@a3@@ ) = v31 ; v9 = ( double * ) ( Number L * @@v14@@ + * ( _QWORD * ) ( Number L * @@v14@@ + @@a2@@ ) ) ; * v9 = v35 * v22 - v31 * v18 ; if ( * v9 == Number ) @@v24@@ = @@a1@@ ; } else { @@v24@@ = Number ; for ( j = Number ; j < @@a1@@ ; ++ j ) { for ( @@k@@ = Number ; @@k@@ < j - Number ; ++ @@k@@ ) { v19 = * ( double * ) ( Number L * j + * ( _QWORD * ) ( Number L * @@k@@ + @@a2@@ ) ) ; v15 = * ( double * ) ( Number L * j + * ( _QWORD * ) ( Number * ( @@k@@ + Number L ) + @@a2@@ ) ) ; v32 = * ( double * ) ( Number L * @@k@@ + @@a3@@ ) ; v28 = * ( double * ) ( Number * ( Number * @@k@@ + Number L ) + @@a3@@ ) ; * ( double * ) ( Number L * j + * ( _QWORD * ) ( Number L * @@k@@ + @@a2@@ ) ) = v32 * v19 - v28 * v15 ; * ( double * ) ( Number L * j + * ( _QWORD * ) ( Number * ( @@k@@ + Number L ) + @@a2@@ ) ) = v32 * v15 + v28 * v19 ; } @@v23@@ = Number * j ; v20 = * ( double * ) ( Number L * j + * ( _QWORD * ) ( Number L * j + @@a2@@ ) ) ; v16 = * ( double * ) ( Number L * j + * ( _QWORD * ) ( Number * ( j + Number L ) + @@a2@@ ) ) ; if ( v16 == Number ) { v33 = Number ; v29 = Number ; } else { v11 = RAbs ( v16 ) ; if ( v11 < RAbs ( v20 ) ) { v5 = RPower2 ( v16 / v20 ) ; v33 = Number / RSqrt ( v5 + Number ) ; v29 = - v33 * ( v16 / v20 ) ; } else { v4 = RPower2 ( v20 / v16 ) ; v29 = Number / RSqrt ( v4 + Number ) ; v33 = - v29 * ( v20 / v16 ) ; } } * ( double * ) ( Number L * @@v23@@ + @@a3@@ ) = v33 ; * ( double * ) ( Number * ( @@v23@@ + Number L ) + @@a3@@ ) = v29 ; v6 = ( double * ) ( Number L * j + * ( _QWORD * ) ( Number L * j + @@a2@@ ) ) ; * v6 = v33 * v20 - v29 * v16 ; if ( * v6 == Number ) @@v24@@ = j + Number ; } } return @@v24@@ ; }", "source": [{"n": "a3", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "r16"}, {"n": "a4", "t": {"T": 1, "n": "int", "s": 4}, "location": "r24"}, {"n": "a1", "t": {"T": 1, "n": "int", "s": 4}, "location": "r56"}, {"n": "a2", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "r64"}, {"n": "k", "t": {"T": 1, "n": "int", "s": 4}, "location": "s20"}, {"n": "v24", "t": {"T": 1, "n": "unsigned int", "s": 4}, "location": "s28"}, {"n": "v23", "t": {"T": 1, "n": "int", "s": 4}, "location": "s32"}, {"n": "v14", "t": {"T": 1, "n": "int", "s": 4}, "location": "s64"}]}