Likely launchpad hook on Base

Uniswap v4 Hook Contract 0xc1cc474f5426c5b20e3abbbb7d7866b5614320cc on Base · Launchpad

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

Launchpad tax hook that deducts a bounded buy/sell tax from every swap in registered pools and splits it among the token creator, platform treasury and a burn/reward engine, while LPs withdraw freely.

This read was written for the hook 0x134e…e0cc on Ethereum and reused here: the two share a code shape, so constants such as fees, owners and addresses can differ.

How it works step by step

  • Charges a buy/sell tax on swaps in registered token pools, taken from the swap amounts via return deltas.
  • Splits collected tax between the token creator, a platform treasury and a burn/reward 'engine' bucket, tracked per token.
  • Lets creators and the treasury claim their accrued tax shares, and lets anyone push the burn share to an engine contract that receives reward notifications.
  • Only pools registered by a factory are configured, with a tax rate bounded by on-chain MIN and MAX tax constants (exact values not readable from bytecode).
Swap behaviour
On each swap in a registered pool, the hook takes a tax from the input or output tokens and holds it for the creator, treasury and burn/engine buckets. The tax percentage is set per pool within hard-coded minimum and maximum limits whose exact values are unknown from bytecode.
Liquidity behaviour
No liquidity callbacks; LPs can add and withdraw freely.
Fee behaviour
A per-pool swap tax between MIN_TAX_BPS and MAX_TAX_BPS (exact values unknown) is deducted and split between the creator, a platform share (PLATFORM_BPS) for the treasury, and a burn/reward share sent to the engine. This is on top of the pool's normal LP fee.
Owner & admin controls
The owner can set the factory and engine addresses (setEngine/setFactory, possibly one-time given an AlreadySet error). The factory registers token configs with creator, tax rates and shares, and creators can be reassigned; tax bounds are constants.

Enabled Uniswap v4 callbacks

beforeInitialize, beforeSwap, afterSwap, beforeSwapReturnDelta, afterSwapReturnDelta

beforeInitialize: restricts pool creation to registered token configs; beforeSwap: computes and takes tax on exact-input side; afterSwap: takes tax from output side and records shares; beforeSwapReturnDelta/afterSwapReturnDelta: let the hook deduct the tax from swap amounts.

Security & trust assessment

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

Who controls it: The owner controls the factory and engine addresses, and the factory sets each token's creator and tax configuration within fixed min/max bounds. They cannot touch LP principal.

Risk to user funds: The hook takes a tax from traders' swap amounts within constant bounds of unknown exact size and holds accrued shares until claimed. LP principal cannot be locked or drained.

Security findings

  • [medium] Swap tax via return deltas: The hook deducts a tax from swaps using return deltas; the bounds are fixed constants but their exact values cannot be confirmed from unverified bytecode.
  • [low] Owner-set engine and factory: The owner sets which factory registers pools and which engine receives the burn share, which controls where part of the tax goes but not LP principal.
  • [info] LP withdrawals unrestricted: Remove-liquidity callbacks and liquidity return deltas are disabled, so LPs can always withdraw.

Contract details

Verified source
No
Bytecode size
6,335 bytes
Upgradeable proxy
No
Detected patterns
erc20, moves-currency, ownable, return-delta

Pools using Likely launchpad hook