Likely custom pricing hook on Base
Uniswap v4 Hook Contract 0x3ba93bc5a30edf202d60c565c1a194fdbac04088 on Base · 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 on every swap and can alter swap amounts and take pool tokens, but the exact effect on which trades pay more or less cannot be determined from the decoded bytecode alone.
How it works step by step
- Implements beforeSwap, which runs before every swap on pools that use this hook
- Has beforeSwapReturnDelta enabled, so it can return a delta that changes the amounts the pool settles for the swap
- Calls take(currency0, currency1, amount) on the PoolManager, which moves tokens out of the pool's accounts to the hook
- Stores four uint256 values in slots 0 to 3, written in beforeSwap and read by the view function at selector 0x748ac460
- The bytecode is small (1049 bytes) and the view function has no decoded name, so its purpose is not confirmed
- Swap behaviour
- beforeSwap runs on each swap, reads and updates its storage slots, and can return a delta that changes swap amounts; it also calls take to move currency out of the pool, so the exact pricing effect cannot be determined from the decoded bytecode alone.
- Liquidity behaviour
- No liquidity callbacks.
- Fee behaviour
- Uses the pool's static fee.
- Owner & admin controls
- No admin controls found.
Enabled Uniswap v4 callbacks
beforeSwap, beforeSwapReturnDelta
beforeSwap is used to run custom logic and set a return delta on each swap; beforeSwapReturnDelta lets that delta alter the amounts the pool settles.
Security & trust assessment
Risk level: high, estimated (decoded bytecode, low confidence).
Who controls it: No owner or admin functions were decoded, so no privileged key was identified in the bytecode; the risk is limited to whatever logic the unverified code applies.
Risk to user funds: The hook can take currency out of the pool through take and change swap settlement through the return delta, so pool and LP funds are exposed to whatever logic it applies.
Security findings
- [high] Return delta with currency movement: beforeSwapReturnDelta is enabled and the bytecode calls take on the PoolManager, so the hook can alter swap settlement and move pool currency to itself on swaps.
- [medium] Unverified source: No verified source is available, so the exact pricing and fee logic cannot be audited and the decoded functions are the only evidence.
- [low] Writable state on every swap: beforeSwap writes four storage slots on each swap, which means swap behaviour depends on stored state that is not explained by the input.
Contract details
- Verified source
- No
- Bytecode size
- 1,049 bytes
- Upgradeable proxy
- No
- Detected patterns
- moves-currency, return-delta
Pools using Likely custom pricing hook
- ETH / COOK (0.30% fee) — 24h volume $0, TVL $0, 0 swaps today