Likely custom pricing hook on Robinhood Chain
Uniswap v4 Hook Contract 0x59e490c692ba50cb6de62c94ff5721afb7628088 on Robinhood Chain · Custom pricing
- Volume (24h)
- $0
- Value locked (TVL)
- $0
- All-time volume
- $0
- Pools using this hook
- 1
- Swaps (24h)
- 0 (0 traders)
- Total swaps
- 0
What it does
This hook changes swap settlement by taking tokens from the pool and returning a delta on every trade, but the exact effect on fees and which trades pay more or less cannot be determined from the decoded bytecode.
How it works step by step
- Implements beforeSwap with a return delta, so the hook can settle part of a swap itself instead of the pool AMM handling it fully
- Calls take(currency0 or currency1, recipient, amount) on the PoolManager, which moves tokens out of the pool's reserves to a recipient
- Keeps two packed counters in storage slot 0 (uint64 values at offsets 0 and 8, plus a third uint64 at offset 16) that are read and updated during swaps
- Stores a uint256 value in slot 1 that is read and written by beforeSwap
- Has a view function (selector 0xfe71d0a8) that reads the packed slot 0 values, likely exposing the counters or state
- Swap behaviour
- beforeSwap runs before each swap, can take tokens from the pool via take(), and returns a delta that changes the amounts the swap settles, so trades may execute at a different price or size than the standard curve would give.
- Liquidity behaviour
- No liquidity callbacks.
- Fee behaviour
- Uses the pool's static fee; no fee logic is visible in the decoded functions, though the return delta may alter effective amounts.
- Owner & admin controls
- No admin controls found.
Enabled Uniswap v4 callbacks
beforeSwap, beforeSwapReturnDelta
beforeSwap is used to read and update internal counters and state, calling take() to move tokens and returning a delta to change swap settlement; beforeSwapReturnDelta is enabled, which lets the hook modify the swap amounts.
Security & trust assessment
Risk level: high, estimated (decoded bytecode, low confidence).
Who controls it: No owner or admin functions were identified, so no privileged key was found; centralization risk cannot be fully assessed without source.
Risk to user funds: The hook can take tokens from the pool via take() and alter swap settlement through the return delta, so it can affect pool and user funds on each swap.
Security findings
- [high] Return delta with currency movement: beforeSwapReturnDelta is enabled and the bytecode calls take(), so the hook can move pool tokens and alter swap amounts on every trade.
- [medium] Unverified source: No verified source is available, so the exact pricing or settlement logic and any hidden conditions cannot be confirmed from the decoded bytecode.
- [medium] Stateful swap logic: beforeSwap reads and writes packed counters in storage slot 0 and a value in slot 1, so swap outcomes may depend on accumulated state that users cannot easily inspect.
- [low] Panic revert path: The bytecode contains a Panic(uint256) selector, indicating arithmetic or bounds checks that can revert swaps under certain conditions.
Contract details
- Verified source
- No
- Bytecode size
- 1,353 bytes
- Upgradeable proxy
- No
- Detected patterns
- moves-currency, return-delta
Pools using Likely custom pricing hook
- ETH / CURIA (0.30% fee) — 24h volume $0, TVL $0, 0 swaps today