Read EVM calldata, starting with transfer
Match selectors, ABIs, and raw amounts without mistaking decoding for safety.
Decoding describes structure, not contract trust, execution success, or value.
Use the right function signature
function transfer(address to, uint256 amount)The first four bytes are the selector, followed by ABI-encoded arguments. The resource fixture decodes to address 0x1111…1111 and raw integer 1000000000000000000. It is synthetic and sends no transaction.
Raw integers are not display amounts
The raw integer represents one token only if that token uses 18 decimals. An ABI does not establish decimals, price, chain, or contract address. PlainKit displays large integers as strings to avoid JavaScript Number precision loss.
function: transfer(address,uint256)
to: 0x1111111111111111111111111111111111111111
amount: "1000000000000000000"What to verify before signing
- Verify network, target contract, and ABI provenance; check the current implementation for proxies.
- Check recipient, units, and approval scope against your intended action.
- Stop if decoding fails or arguments are truncated or have trailing bytes.
- Identical function names do not establish identical behavior; source, state, and execution evidence matter.
Sources & editorial note
Sources checked October 17, 2026. Examples and practice notes are authored for PlainKit. Sources do not endorse this project; this is not an audit conclusion.
Start with a synthetic fixture. Tool inputs stay in your browser.
Open the tool →Get the fixture ↓