Open sandbox · any EVM chain
Paste any contract. ROTBO reads the deployed bytecode, names every function, then runs each lever (mint, freeze, jail, tax, upgrade) as the wallet that holds the crown, in two fresh sandboxes. Only what happens twice enters the dex.
How it catches
A function called blacklist is a name, not a fact. ROTBO calls it as the wallet that holds the crown, against a real holder’s bag, then checks whether that holder can still move. Every test runs twice: once now, once seven days later. If the two passes disagree, the entry says so.
There is no ABI to trust. ROTBO takes the deployed code and walks it opcode by opcode. Every PUSH4 that feeds a comparison is a function selector: that is how the EVM decides which body runs.
Proxies are followed to the live body (EIP-1967, beacon, minimal clone). Selectors are named from a local list, then from a public signature book. Anything still unnamed is counted and shown.
bytecode 3,248 bytes dispatcher 9 selectors 0xa9059cbb transfer(address,uint256) 0x40c10f19 mint(address,uint256) → Minter species keccak(sorted selectors)
Pass A uses the chain as it is. Pass B is the same state, stamped seven days ahead, with a different holder and different amounts. ROTBO speaks as the owner only inside the simulation. Nothing is signed and nothing is broadcast.
After each lever it tries the boring thing that matters: can a real holder still transfer, and can they sell.
pass A block now · holder 0x91c2… pass B block +7d · holder 0x44aa… mint as owner balance after moved exit sell a slice of a real bag agree both passes match
A move enters the dex only when both passes tell the same story. A date-lock, a cooldown, or a launch window shows up as flaky and stays marked that way.
The letter counts levers, not motives. A creature with none is wild: nobody holds a handle over it.
kept moves that matched twice dropped one flaky setTax dex Rookbyte joins as № 001 grade A · no levers
The dex
Contracts that expose the same functions are one species, even when the addresses differ. The dex opens with a field set. Every catch on this page joins it, in this tab.
Type chart
A contract takes a type for each lever it holds. A creature with no types is wild: nobody holds a handle over it. This is how each lever is proven in the sandbox.
Questions
It starts from real chain state at the latest block. A live ROTBO sends eth_simulateV1, plays the calls on top of that state, and throws the result away. Nothing is signed, no gas is spent, and no wallet is connected. Speaking as another address is how it can call blacklist as the real owner. The catcher on this page is a rehearsal: the story is seeded from the address and stays in your tab.
Pass A happens now. Pass B happens in a block dated seven days later, with another holder and different amounts. A trap that waits on a date, a cooldown, or a launch window shows up as flaky, which means the two passes disagreed. Everything else has to repeat before it counts.
The function exists and a stranger is turned away, but the contract has no plain owner() to borrow. The key sits with a role, a registry, or a multisig we cannot speak for. The lever is real. We just could not press it. Stock tokens often look like this, and that is expected when an issuer is the one holding the key.
Yes. The letter counts levers, not intent. A token whose issuer can upgrade it and freeze it is graded on those levers, even when that issuer is known and accountable. Read the moves, not only the letter.
Calls whose arguments are structs or arrays are listed and left unrun. The same goes for levers locked behind roles with no visible owner, and for logic that only fires inside a pool swap. Unnamed selectors are counted, and too many of them pull the grade down. The exit test sells a real holder’s bag, so a token with no route is only checked on plain transfers.
A full scanner talks to a chain RPC, a simulation endpoint, a holder index, and a signature book for function names. This page does not. Catches stay in the tab. You can copy a short note — species, grade, moves — or a link that reopens that creature. No wallet is ever connected.