Launchpad hook on Ethereum

Uniswap v4 Hook Contract 0x16fe3cd4e6ee6365653ab3970fc9da9528f1c0cc on Ethereum · Launchpad

Volume (24h)
$0
Value locked (TVL)
$0
All-time volume
$0
Pools using this hook
1
Swaps (24h)
173 (48 traders)
Total swaps
173

What it does

This launchpad-style hook can change swap settlement amounts and route fees toward burns and rewards, but the exact fee direction and size cannot be determined from the decoded bytecode.

How it works step by step

  • Exposes many launch, setup, register and create entry points that each take a pool-key style tuple (currency pair, fee, tickSpacing, hooks) plus a sqrtPrice, indicating it deploys or initializes pools for new tokens
  • Implements beforeSwap and afterSwap callbacks that can return deltas (beforeSwapReturnDelta and afterSwapReturnDelta are enabled), so it can alter swap amounts and take or give currency during a swap
  • Stores a token address, a pair token and a poolKey, and tracks burns (totalBurned, MAX_BURN_FEE_BPS), suggesting a token-launch flow with fee-driven buybacks or burns
  • Includes staking, claim, deposit, mint, supply, fund and seed style functions, along with an exempt list and a tracking flag, pointing to a rewards or distribution mechanism
  • Uses an unlock/unlockCallback pattern with settle, take and sync selectors, meaning it interacts with the pool manager to move currency and ERC-6909 claims
  • Has an upkeep-style entry point (performUpkeep) and relay/exec/execute dispatchers, suggesting automated or delegated execution of hook actions
Swap behaviour
beforeSwap and afterSwap are implemented and can return deltas, so the hook can adjust the amounts a swap settles and move currency during the swap. The exact direction and size of any adjustment cannot be determined from the decoded bytecode.
Liquidity behaviour
beforeAddLiquidity, afterAddLiquidity, beforeRemoveLiquidity and afterRemoveLiquidity selectors are present, indicating liquidity callbacks exist, but their logic cannot be determined without source.
Fee behaviour
Likely adjusts or redirects fees through burn and reward logic (totalBurned and MAX_BURN_FEE_BPS storage reads), but the exact fee rules cannot be determined from decoded bytecode.
Owner & admin controls
Storage slots for owner-like mappings (address-to-bool authorization maps) and an exempt list are written by several state-changing functions, indicating role or allowlist management. Specific owner identity and pausing cannot be confirmed from the bytecode.

Enabled Uniswap v4 callbacks

beforeSwap, afterSwap, beforeSwapReturnDelta, afterSwapReturnDelta

beforeSwap and afterSwap are used to run custom swap logic and possibly return deltas; beforeSwapReturnDelta and afterSwapReturnDelta allow the hook to take or give currency as part of the swap; the liquidity and donate callbacks are present as selectors and are used for pool-level gating or accounting.

Security & trust assessment

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

Who controls it: A privileged role set through the authorization mappings may be able to alter launch parameters, exempt addresses, trigger upkeep or relay actions, and influence burn and reward flows that affect users.

Risk to user funds: Because the hook can return swap deltas and take or settle currency through the pool manager, it can hold, move or redirect funds involved in swaps. Whether it can block trades cannot be confirmed from bytecode.

Security findings

  • [high] Return-delta swap hook: beforeSwapReturnDelta and afterSwapReturnDelta are enabled, so the hook can change settled swap amounts and move currency out of or into user swaps.
  • [medium] Authorization maps controlled by state-changing functions: Multiple address-to-bool mappings are written by functions such as 17befeca, 9107e69b, dc867653 and 7b7db28c, which likely grant or revoke privileged roles.
  • [medium] Fee burn and reward logic with unknown bounds: Storage tracks totalBurned and MAX_BURN_FEE_BPS, and state-changing reward and claim functions exist, but the caps and who can trigger them cannot be verified from bytecode.
  • [info] Unverified source: No verified source is available, so behaviour is inferred from selectors and storage access only.

Contract details

Verified source
No
Bytecode size
21,227 bytes
Upgradeable proxy
No
Detected patterns
erc20, erc6909-claims, launchpad, moves-currency, return-delta, rewards, self-unlock

Pools using Launchpad hook