The code looks like this:
v.x = v.x * trans.inverse.m[0][0] + v.y * trans.inverse.m[0][1] + v.z * trans.inverse.m[0][2]; v.y = v.x * trans.inverse.m[1][0] + v.y * trans.inverse.m[1][1] + v.z * trans.inverse.m[1][2]; v.z = v.x * trans.inverse.m[2][0] + v.y * trans.inverse.m[2][1] + v.z * trans.inverse.m[2][2];
"v" is a 3d vector and trans.inverse is the inverse of the 4x4 scaling matrix.