Your arguments are all against reverse-engineering/code modification being illegal - which I think most people would agree on - not on free software.
Allowing reverse engineering is a matter of allowing people freedom.
Trying to force people to provide source code for everything is the opposite.