How to: reverse engineering

I have a question I want to reverse engineer a smart contract from a evm. assembly to a solidity sorce code. Is that possible? If yes, how so?
btw im a total noobie in all of this so please dont trash me haha im here to learn though and i hope i can become a helpful member of this community too!

Thanks in Advance :slight_smile:

https://docs.soliditylang.org/en/develop/assembly.html?highlight=Assembly
https://docs.soliditylang.org/en/develop/internals/layout_in_storage.html
https://docs.soliditylang.org/en/develop/metadata.html

I don’t know the answer but these links might be useful for you :slightly_smiling_face:

It depends what kind of re you’re looking for. To recreate the precise Solidity code that will in turn produce the exact same bytecode is fairly difficult, not least of all because you’d also need to know how many optimizer runs there were.

On the other hand, there is quite a bit you can tell. You can figure out how to reconstruct quite a bit of a contract. There are a couple of tools which pull bytecode into a fairly readable Solidity-like format: Deadaub and EtherVM.