Likely custom pricing hook on Robinhood Chain
Uniswap v4 Hook Contract 0x38e82577f68e53289db68144a01ae9fbc38b0088 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 runs custom logic before each swap and can change swap amounts and move currency out of the pool, but without source it is unclear which trades pay more or less.
How it works step by step
- Implements only a beforeSwap callback, which runs before each swap through the pool that uses this hook.
- Uses beforeSwapReturnDelta, so the callback can return a delta that adjusts the swap amounts and therefore the pool's accounting.
- Calls take(address,address,uint256) on the PoolManager, which moves a currency out of the pool manager to a recipient.
- Stores three uint256 values in storage slots 0 to 2; slot 2 is both read and written during swaps, while slots 0 and 1 are read by the view selector 0x524566ef and written in beforeSwap.
- Contains a selector 0x9573ff65 named mantis() in the bytecode, which is a likely external call target, but its role cannot be determined without source.
- Swap behaviour
- On each swap the beforeSwap callback runs, reads and updates the stored values, may return a delta that changes the swap amounts, and may call take to move currency out of the PoolManager; exactly how the amounts are computed cannot be determined from the decoded bytecode.
- Liquidity behaviour
- No liquidity callbacks.
- Fee behaviour
- Uses the pool's static fee, unless the beforeSwap delta implicitly changes amounts; no fee-setting function was decoded.
- Owner & admin controls
- No admin controls found.
Enabled Uniswap v4 callbacks
beforeSwap, beforeSwapReturnDelta
beforeSwap is enabled to run logic before each swap, and beforeSwapReturnDelta is enabled so the hook can return a delta that alters the swap amounts.
Security & trust assessment
Risk level: high, estimated (decoded bytecode, low confidence).
Who controls it: No owner or admin selectors were decoded, so no privileged key was identified, but the mantis() external call target could be a controlling address and this cannot be confirmed.
Risk to user funds: The hook can take currency from the PoolManager through take and change swap amounts through its return delta, so it can affect pool and user funds depending on logic not visible in decoded bytecode.
Security findings
- [high] Return delta with currency movement: The hook has beforeSwapReturnDelta and calls take on the PoolManager, so it can take tokens from the pool and alter swap amounts; the amounts and recipient logic cannot be verified without source.
- [medium] Unverified source: No verified source is available, so the logic behind the storage writes and the mantis() call cannot be audited.
- [low] Storage written during swaps: Storage slots 0 to 2 are written in the swap path, so state changes on every swap and may have side effects on pool economics.
Contract details
- Verified source
- No
- Bytecode size
- 1,303 bytes
- Upgradeable proxy
- No
- Detected patterns
- moves-currency, return-delta