Hmm, here's a small update. In the final state of the pickup object fsm that should replace an active weapon i'm storing an active weapon from the array as an "active weapon" variable and use it as a reference for detaching from parent (gunpoint on ship), re-enabling the animated pickup indicator by activating child object, even disabling another fsm used for shooting that's attached to it. So that works, the reference is valid.
But when i try to disable an fsm in question (Pickup FSM as seen on image) so it should restart when it's reactivated by resetting on exit when the pickup object is destroyed that doesn't happen, it doesn't get turned off at all.