Analysis Lab
Four read-only tools that answer questions a scan cannot. Everything here is free, needs no sign-in, and takes no custody of anything. Where a tool cannot establish something, it says so instead of guessing — read the notes under each result, they are part of the answer.
Read a transaction before you sign it
Paste calldata, a 4-byte selector, an event topic, or a function name. A selector maps to a list of signatures, never one — four bytes collide, and a collision can be deliberate, so when more than one matches you get all of them and we do not pick.
Decode revert data
A modern revert returns a 4-byte custom-error selector and nothing readable.
Error(string) gives you the real message; a panic code is named rather than left as hex.
What part of this contract is not library code?
Almost every ERC-20 is OpenZeppelin plus a few dozen lines, so a raw similarity score mostly measures how popular OpenZeppelin is. Library fingerprints are subtracted first; what is left is where a modification to a standard contract would be, and it is the right place to start reading.
Compare two contracts
Renaming every variable and reformatting the whole file changes nothing — the comparison runs on token structure. Any shared run of 19 tokens or more is guaranteed to be found. It reports the overlap; it never says who copied whom, because a chain does not record that.
Where did this money come from?
Walks back up to 3 hops to whatever first paid an address, with the transaction proving each hop, and screens against whatever label lists this deployment has loaded. Distance is not guilt — one hop from any address describes the sender, the receiver and everyone between identically, and a ledger does not record intent.
Shortest path between two addresses
You bring both addresses, so no list is involved and nothing is being alleged. Bounded at 3 hops and 14 lookups — "no path was found within those limits" is a true statement; "there is no path" is not one this can make.
Scan a public repository
We resolve the repo to a file list; your browser fetches each file from GitHub and analyses it locally, so the code never passes through our servers. Public repositories only — no authorisation header is ever sent, so this cannot reach a private repo even by accident.
These also run without a browser
Every tool on this page is a public endpoint:
/api/sig, /api/similarity/novelty, /api/taint,
/api/repo/files. The documentation explains what each one
measures and, more usefully, what it refuses to claim.