yes theres a way, but you need to find out if its the offset from a specific points original position or from the sprites center
if its an offset from that specific points original location your going to need to figure that out then add the xy offsets.
so lets say you distort object is a 64x64 square, with a distort map of 2,1 (3x2)
first your going to need to know which X(column),Y(row) your using, then your going to need to find out the top left corner's xy location(of the square, non distorted of course). its important that you keep track of the distort map column/row size and keep it in 0 based form, and keep its angle and width/height at the original objects values or else it might not work unless you implement something to get around that in the upcoming formula.
so now that you have those things, you need to actually put all that info into a formula that'll do what you intend.
so
for X:
sprite.left+((sprite.width/sprite('distortmapColumns'))*{current column})+Sprite.VertexX({current column},{current row})
for y:
sprite.top+((sprite.height/sprite('distortmapRows'))*{current Row})+Sprite.VertexY({current column},{current row})
and im pretty sure that'll work.
if im completely out of the ball park its because the assumptions i made were wrong (i dont have a comp to test if i understand the elements of the problem correctly)