Launchpad hook on Arc

Uniswap v4 Hook Contract 0x67decf4beda9fac430b88a0443ac6e716548aecc on Arc · Launchpad

Volume (24h)
$57
Value locked (TVL)
$43
All-time volume
$57
Pools using this hook
1
Swaps (24h)
8 (4 traders)
Total swaps
8

What it does

A Uniswap v4 hook that appears to run a token launch or sale mechanism, tracking liquidity and swaps and taking currency via return deltas, based on decoded bytecode without verified source.

How it works step by step

  • Initialises pool state in beforeInitialize
  • Tracks liquidity adds and per-position values in afterAddLiquidity via storage writes
  • Gates liquidity removal in beforeRemoveLiquidity
  • Runs custom logic in beforeSwap and afterSwap and records swap amounts
  • Uses beforeSwapReturnDelta and afterSwapReturnDelta to take or supply currency
Swap behaviour
beforeSwap and afterSwap run custom logic and return deltas, so the hook can alter swap amounts and take or supply currency during swaps.
Liquidity behaviour
beforeAddLiquidity and beforeRemoveLiquidity are gated and afterAddLiquidity writes per-position accounting in storage; the hook appears to track liquidity additions for a launch or sale flow, but the exact logic cannot be confirmed from bytecode.
Fee behaviour
Exposes a FEE_PPM() getter and uses return deltas on swaps, so fees appear to be taken by the hook rather than only the pool's static fee; exact fee mechanics cannot be confirmed without source.
Owner & admin controls
No admin controls found.

Enabled Uniswap v4 callbacks

beforeInitialize, beforeAddLiquidity, afterAddLiquidity, beforeRemoveLiquidity, beforeSwap, afterSwap, beforeSwapReturnDelta, afterSwapReturnDelta

beforeInitialize sets up pool state; beforeAddLiquidity and afterAddLiquidity track liquidity provision; beforeRemoveLiquidity gates withdrawals; beforeSwap and afterSwap run custom swap logic and track swap amounts; beforeSwapReturnDelta and afterSwapReturnDelta let the hook take or supply currency on swaps.

Security & trust assessment

Risk level: medium, estimated (decoded bytecode, low confidence).

Who controls it: Cannot be fully determined without source; the decoded selectors show no obvious owner or pause function, but a privileged role may exist in code not recognised by the decoder.

Risk to user funds: The hook can move currency through take and transfer calls and alter swap deltas, so user and pool funds pass through hook logic; gating on liquidity removal could also delay withdrawals.

Security findings

  • [medium] Hook can take currency via return deltas: The hook enables beforeSwapReturnDelta and afterSwapReturnDelta and the bytecode uses the transfer and take selectors, so the hook can move currency and alter swap amounts.
  • [medium] Liquidity removal is gated by the hook: beforeAddLiquidity and beforeRemoveLiquidity are both callable and gate liquidity changes; a bug or unexpected condition in these checks could block LPs from withdrawing.
  • [info] No admin selectors identified: No owner, pause or upgrade selectors were decoded, which is a neutral observation and does not prove the absence of privileged controls.

Contract details

Verified source
No
Bytecode size
10,513 bytes
Upgradeable proxy
No
Detected patterns
erc20, launchpad, moves-currency, return-delta

Pools using Launchpad hook