RemoveInstance crash when called on a second play run on a different ISMComponent

i have a very basic AACtor class which create a UInstanceMeshComponent in his constructor, calls the UInstanceStaticMeshComponent::SetupAttachment(RootComponent) and nothing else.
on the game begin the component is used to create one instance and nothing else.
in the destructor the instance is removed with removeInstance(0) end nothing else.

the first time i run the game everything is fine. my instance (a simple box) is created and destroyed.

if i run the game again, the pointer value of the component obviously changes, the instance is created again and till here no problem.

if i stop the second run the game crashes trying to remove the instance inside the PerInstanceSMData member.

inspecting the data with a breakpoint just before the removeInstance() call shows a pretty normal situation (the element is there) apart for some data inside the FMatrix member of the element which shows some sort of garbage values (a denormal number #DEN).

the strange thing is that this happens always the second time i run the game from the editor.