{"name": "Matrix_Inv", "code": "__int64 __fastcall Matrix_Inv ( __int64 @@a1@@ , __int64 @@a2@@ , int @@a3@@ ) { float @@v4@@ ; int v5 ; int v6 ; float v7 ; float v8 ; int @@ii@@ ; int @@v10@@ ; int @@k@@ ; int i ; int j ; int l ; int m ; int n ; int jj ; for ( i = Number ; i < @@a3@@ * @@a3@@ ; ++ i ) * ( _DWORD * ) ( Number L * i + @@a1@@ ) = Number ; for ( j = Number ; j < @@a3@@ ; ++ j ) * ( _DWORD * ) ( Number L * ( @@a3@@ * j + j ) + @@a1@@ ) = Number ; for ( @@k@@ = Number ; @@k@@ < @@a3@@ ; ++ @@k@@ ) { v7 = * ( float * ) ( Number L * ( @@a3@@ * @@k@@ + @@k@@ ) + @@a2@@ ) ; @@v10@@ = @@k@@ ; for ( l = @@k@@ + Number ; l < @@a3@@ ; ++ l ) { if ( fabs ( * ( float * ) ( Number L * ( @@a3@@ * l + @@k@@ ) + @@a2@@ ) ) > fabs ( v7 ) ) { @@v10@@ = l ; v7 = * ( float * ) ( Number L * ( @@a3@@ * l + @@k@@ ) + @@a2@@ ) ; } } if ( v7 == Number ) return Number L ; if ( @@v10@@ != @@k@@ ) { for ( m = Number ; m < @@a3@@ ; ++ m ) { v5 = * ( _DWORD * ) ( Number L * ( @@a3@@ * @@k@@ + m ) + @@a2@@ ) ; * ( _DWORD * ) ( Number L * ( @@a3@@ * @@k@@ + m ) + @@a2@@ ) = * ( _DWORD * ) ( @@a2@@ + Number L * ( @@a3@@ * @@v10@@ + m ) ) ; * ( _DWORD * ) ( Number L * ( @@a3@@ * @@v10@@ + m ) + @@a2@@ ) = v5 ; v6 = * ( _DWORD * ) ( Number L * ( @@a3@@ * @@k@@ + m ) + @@a1@@ ) ; * ( _DWORD * ) ( Number L * ( @@a3@@ * @@k@@ + m ) + @@a1@@ ) = * ( _DWORD * ) ( @@a1@@ + Number L * ( @@a3@@ * @@v10@@ + m ) ) ; * ( _DWORD * ) ( Number L * ( @@a3@@ * @@v10@@ + m ) + @@a1@@ ) = v6 ; } } v8 = Number / v7 ; for ( n = Number ; n < @@a3@@ ; ++ n ) { * ( float * ) ( Number L * ( @@a3@@ * @@k@@ + n ) + @@a2@@ ) = * ( float * ) ( Number L * ( @@a3@@ * @@k@@ + n ) + @@a2@@ ) * v8 ; * ( float * ) ( Number L * ( @@a3@@ * @@k@@ + n ) + @@a1@@ ) = * ( float * ) ( Number L * ( @@a3@@ * @@k@@ + n ) + @@a1@@ ) * v8 ; } for ( @@ii@@ = Number ; @@ii@@ < @@a3@@ ; ++ @@ii@@ ) { if ( @@ii@@ != @@k@@ ) { @@v4@@ = * ( float * ) ( Number L * ( @@a3@@ * @@ii@@ + @@k@@ ) + @@a2@@ ) ; for ( jj = Number ; jj < @@a3@@ ; ++ jj ) { * ( float * ) ( Number L * ( @@a3@@ * @@ii@@ + jj ) + @@a2@@ ) = * ( float * ) ( Number L * ( @@a3@@ * @@ii@@ + jj ) + @@a2@@ ) - ( float ) ( * ( float * ) ( Number L * ( @@a3@@ * @@k@@ + jj ) + @@a2@@ ) * @@v4@@ ) ; * ( float * ) ( Number L * ( @@a3@@ * @@ii@@ + jj ) + @@a1@@ ) = * ( float * ) ( Number L * ( @@a3@@ * @@ii@@ + jj ) + @@a1@@ ) - ( float ) ( * ( float * ) ( Number L * ( @@a3@@ * @@k@@ + jj ) + @@a1@@ ) * @@v4@@ ) ; } } } } return Number L ; }", "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": "__int64", "s": 8}, "location": "r64"}, {"n": "v10", "t": {"T": 1, "n": "int", "s": 4}, "location": "s12"}, {"n": "ii", "t": {"T": 1, "n": "int", "s": 4}, "location": "s16"}, {"n": "v4", "t": {"T": 1, "n": "float", "s": 4}, "location": "s28"}, {"n": "k", "t": {"T": 1, "n": "int", "s": 4}, "location": "s8"}]}
{"name": "gl_M4_Inv", "code": "__int64 __fastcall gl_M4_Inv ( __int64 @@a1@@ , const void * @@a2@@ ) { char @@dest@@ [ Number ] ; memcpy ( @@dest@@ , @@a2@@ , sizeof ( @@dest@@ ) ) ; return Matrix_Inv ( @@a1@@ , ( __int64 ) @@dest@@ , Number ) ; }", "source": [{"n": "a1", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "r56"}, {"n": "a2", "t": {"T": 3, "t": "const void"}, "location": "r64"}, {"n": "dest", "t": {"T": 2, "n": 64, "s": 1, "t": "char"}, "location": "s64"}]}