Let's assume that we only have access to the address and bytecode of a smart contract (pure decentralization, no 3rd party tools such as etherscan etc). How can we understand or deduce what the behavior of this smart contract is, or how to interact with the smart contract?
I imagine the founders of ethereum (Vitalik etc) must have considered this. What is the solution?