Intuitively option B might be correct.
If the input belongs to a recursive language, either it may halt and accept the input or it may halt and reject the input.
If the input belongs to a recursively enumerable language, then either it may halt and accept the input or it may never halt.
I don't think it can halt by changing the input, because TM just transits from one state to another state on a given input. It only does the transitions that it is supposed to do on the given input as per it's definition.
TM is like a slave and input is like the command given by a master, so possibly it can not alter commands given to it. However I am not very sure about it.