{"name": "gl_M4_Mul", "code": "__int64 __fastcall gl_M4_Mul ( __int64 @@a1@@ , __int64 @@a2@@ , __int64 @@a3@@ ) { __int64 @@result@@ ; float @@v4@@ ; int @@k@@ ; int @@j@@ ; int @@i@@ ; for ( @@i@@ = Number ; @@i@@ <= Number ; ++ @@i@@ ) { for ( @@j@@ = Number ; @@j@@ <= Number ; ++ @@j@@ ) { @@v4@@ = Number ; for ( @@k@@ = Number ; @@k@@ <= Number ; ++ @@k@@ ) @@v4@@ = ( float ) ( * ( float * ) ( @@a3@@ + Number * ( Number L * @@k@@ + @@j@@ ) ) * * ( float * ) ( @@a2@@ + Number * ( Number L * @@i@@ + @@k@@ ) ) ) + @@v4@@ ; @@result@@ = @@a1@@ ; * ( float * ) ( @@a1@@ + Number * ( Number L * @@i@@ + @@j@@ ) ) = @@v4@@ ; } } return @@result@@ ; }", "source": [{"n": "a3", "t": {"T": 1, "n": "__int64", "s": 8}, "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": "result", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "r8"}, {"n": "k", "t": {"T": 1, "n": "int", "s": 4}, "location": "s12"}, {"n": "v4", "t": {"T": 1, "n": "float", "s": 4}, "location": "s16"}, {"n": "i", "t": {"T": 1, "n": "int", "s": 4}, "location": "s4"}, {"n": "j", "t": {"T": 1, "n": "int", "s": 4}, "location": "s8"}]}
{"name": "gl_M4_MulLeft", "code": "__int64 __fastcall gl_M4_MulLeft ( __int64 * @@a1@@ , __int64 @@a2@@ ) { __int64 v2 ; __int64 v3 ; __int64 v4 ; __int64 @@v5@@ ; __int64 @@result@@ ; __int64 @@v7@@ [ Number ] ; float @@v8@@ ; int @@k@@ ; int @@j@@ ; int @@i@@ ; v2 = @@a1@@ [ Number ] ; @@v7@@ [ Number ] = * @@a1@@ ; @@v7@@ [ Number ] = v2 ; v3 = @@a1@@ [ Number ] ; @@v7@@ [ Number ] = @@a1@@ [ Number ] ; @@v7@@ [ Number ] = v3 ; v4 = @@a1@@ [ Number ] ; @@v7@@ [ Number ] = @@a1@@ [ Number ] ; @@v7@@ [ Number ] = v4 ; @@v5@@ = @@a1@@ [ Number ] ; @@result@@ = @@a1@@ [ Number ] ; @@v7@@ [ Number ] = @@result@@ ; @@v7@@ [ Number ] = @@v5@@ ; for ( @@i@@ = Number ; @@i@@ <= Number ; ++ @@i@@ ) { for ( @@j@@ = Number ; @@j@@ <= Number ; ++ @@j@@ ) { @@v8@@ = Number ; for ( @@k@@ = Number ; @@k@@ <= Number ; ++ @@k@@ ) @@v8@@ = ( float ) ( * ( float * ) ( @@a2@@ + Number * ( Number L * @@k@@ + @@j@@ ) ) * * ( ( float * ) & @@v7@@ [ Number * @@i@@ ] + @@k@@ ) ) + @@v8@@ ; @@result@@ = ( __int64 ) @@a1@@ ; * ( ( float * ) & @@a1@@ [ Number * @@i@@ ] + @@j@@ ) = @@v8@@ ; } } return @@result@@ ; }", "source": [{"n": "v5", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "r16"}, {"n": "a1", "t": {"T": 3, "t": "__int64"}, "location": "r56"}, {"n": "a2", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "r64"}, {"n": "result", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "r8"}, {"n": "i", "t": {"T": 1, "n": "int", "s": 4}, "location": "s12"}, {"n": "j", "t": {"T": 1, "n": "int", "s": 4}, "location": "s16"}, {"n": "k", "t": {"T": 1, "n": "int", "s": 4}, "location": "s20"}, {"n": "v8", "t": {"T": 1, "n": "float", "s": 4}, "location": "s24"}, {"n": "v7", "t": {"T": 2, "n": 8, "s": 8, "t": "__int64"}, "location": "s88"}]} {"name": "gl_M4_MulV4", "code": "float * __fastcall gl_M4_MulV4 ( float * @@a1@@ , float * @@a2@@ , float * @@a3@@ ) { float * @@result@@ ; * @@a1@@ = ( float ) ( @@a3@@ [ Number ] * @@a2@@ [ Number ] ) + ( float ) ( ( float ) ( ( float ) ( * @@a2@@ * * @@a3@@ ) + ( float ) ( @@a3@@ [ Number ] * @@a2@@ [ Number ] ) ) + ( float ) ( @@a3@@ [ Number ] * @@a2@@ [ Number ] ) ) ; @@a1@@ [ Number ] = ( float ) ( @@a3@@ [ Number ] * @@a2@@ [ Number ] ) + ( float ) ( ( float ) ( ( float ) ( @@a2@@ [ Number ] * * @@a3@@ ) + ( float ) ( @@a3@@ [ Number ] * @@a2@@ [ Number ] ) ) + ( float ) ( @@a3@@ [ Number ] * @@a2@@ [ Number ] ) ) ; @@a1@@ [ Number ] = ( float ) ( @@a3@@ [ Number ] * @@a2@@ [ Number ] ) + ( float ) ( ( float ) ( ( float ) ( @@a2@@ [ Number ] * * @@a3@@ ) + ( float ) ( @@a3@@ [ Number ] * @@a2@@ [ Number ] ) ) + ( float ) ( @@a3@@ [ Number ] * @@a2@@ [ Number ] ) ) ; @@result@@ = @@a1@@ ; @@a1@@ [ Number ] = ( float ) ( @@a3@@ [ Number ] * @@a2@@ [ Number ] ) + ( float ) ( ( float ) ( ( float ) ( @@a2@@ [ Number ] * * @@a3@@ ) + ( float ) ( @@a3@@ [ Number ] * @@a2@@ [ Number ] ) ) + ( float ) ( @@a3@@ [ Number ] * @@a2@@ [ Number ] ) ) ; return @@result@@ ; }", "source": [{"n": "a3", "t": {"T": 3, "t": "float"}, "location": "r16"}, {"n": "a1", "t": {"T": 3, "t": "float"}, "location": "r56"}, {"n": "a2", "t": {"T": 3, "t": "float"}, "location": "r64"}, {"n": "result", "t": {"T": 3, "t": "float"}, "location": "r8"}]}