Community Investigation

UNCX on Ethereum: Five Token Sales Yielded 21.155 ETH—Not All Inflows Were Proceeds

Philippark
Philippark

October 17, 2026

UNCX on Ethereum: five tokens, two days, following the receipts. UNCX and Ethereum logos.

A UNCX vesting-pool transaction on Ethereum moved five tokens into an execution route on 14 October 2026. Four were converted into ETH that afternoon. The fifth, ZC, remained in the executor until the following morning, when a withdrawal and a separate sale completed the selected route.

Three roles make that sequence easier to follow. The shared vesting pool held tokens for scheduled releases. The initiating wallet submitted the transaction. The executor was a contract created during that execution, which received tokens and later forwarded them for conversion. These role names describe addresses in the records, not identified people.

The confirmed path is shared vesting pool → executor contract → token conversions → the initiating wallet. The two conversion sessions paid that wallet 21.155286011908665958 ETH in total. A separate 0.29 ETH return from the executor was not another token sale. Understanding that distinction matters more here than attaching one large dollar estimate to every transfer.

This is a bounded Ethereum investigation, not a reconstruction of every UNCX-related drain. The account below separates transaction records, arithmetic and external reporting, then follows the transitions in time order.

Scope

Boundary

Selected incident

Ethereum seed transaction on 14 October; five subsequent token sales

Observation cutoff

Block 26,210,180 · 17 October 2026, 05:27:59 UTC

Confirmed sale receipts

21.155286011908665958 ETH; before gas and execution costs

Counting rule

Count each final ETH receipt once. Keep capital returns, token movements and balances separate.

Follow-up

Initiating wallet and funding address; bounded native-ETH tracing up to two outward hops, not continuous coverage

Before the numbers: who does what?

Vesting is a schedule for releasing tokens over time. A shared vesting contract can hold tokens for many positions. Here, “pool” means the address whose token balances changed in the selected transaction; it does not mean that every position holder has been identified. A net outflow means recorded outgoing tokens minus incoming tokens within that transaction—not the sum of all transfers displayed by an explorer.

The initiating wallet submitted the seed transaction. It called an entry contract, which created an executor: a contract that carried out further interactions and received tokens. The executor is a distinct address, not a second name for the wallet. A funding address supplied ETH beforehand. These are roles in the records, not names for people or proof that one operator controlled all of them.

Role on Ethereum

Full address

Initiating wallet

0x78c9b11853e4f183a34c63ffd1924d2319a2f5b3

Entry contract

0x6cebdf095172b355121b93962017975c4601f26c

Executor

0xf6d072254eb8a9b06e0ba21221b498332c1bc35e

Shared vesting pool

0xa98f06312b7614523d0f5e725e15fd20fb1b99f5

Funding address

0x6d2afff4fc6ff46564467762c4aa35812680d606

Three findings guide the investigation. The pool’s five token net outflows reconcile to the executor and other net recipients. The fifth conversion happened on the following day, so stopping on 14 October misses a material receipt. Finally, the sale receipts, returned execution capital and later wallet balance answer different questions. The chronology below explains why.

Start Figure 1 at the pool and follow the top arrow to the executor, then down to the initiating wallet receiving tokens for conversion. Read the lower boxes as the two conversion sessions: their arrows point back toward the wallet because it received the final ETH. They are not additional recipients to add to the wallet.

Hub overview of the shared pool, executor, receiving wallet and two conversion sessions.

Figure 1. Solid arrows indicate asset direction or grouped conversion paths, not transaction calls, ownership, quantity scale or elapsed time. All amounts shown are rounded to six decimals. The public receipts and exact tables govern the quantities.

The overview shows a route with a pause, rather than a single immediate cash-out. It also stops at the receiving wallet: a sale on a decentralized route does not itself establish a deposit with an exchange. The first chronological question is how the initiating wallet was funded.

14 October, 14:47–15:15 UTC: funding arrives before execution

The funding address sent 0.1, 0.9 and 2.5 ETH to the initiating wallet at 14:47:35, 14:56:59 and 15:15:35 UTC, respectively. Together these transfers supplied 3.5 ETH before the seed transaction. ETH is Ethereum’s native asset; it can pay transaction fees as well as contract payments. First funding; second funding; third funding.

15:49:59 UTC: five token balances fall in one seed transaction

The successful seed transaction sits in block 26,191,745. Its receipt contains 136 logs, including 64 ERC-20 Transfer events. An ERC-20 token keeps its own ownership ledger; a Transfer event records a movement in that ledger. Several movements can occur inside one transaction, including borrowed tokens going in and back out. Seed transaction and receipt.

To avoid counting borrowed principal twice, this review summed the raw integer amounts in the transfer events by token and address. Token decimals translate those integers into readable units: 18 decimal places for four tokens, and nine for PAAL. For every token, the pool’s net outflow equals the sum of the positive net receipts at the executor and the other recipients.

Token

Pool net outflow (rounded)

Executor net receipt (rounded)

EDGEN

57,344,850.921

55,601,598.708

ZC

9,131,678.045

9,055,847.638

pepeCoin

42,200.533

40,155.284

LO0P

65,826.000

65,372.217

PAAL

115,945.630

113,657.767

The difference between the two columns is not an unexplained second theft. The receipt records net amounts at a fee recipient and, for three tokens, other counterparties in the execution. Those quantities are preserved separately in the appendix. Do not add the executor’s receipt to the pool’s outflow: they are two views of the same movement.

This reconciliation establishes token movements. It does not reconstruct every vesting position or prove the vulnerability’s cause. The incident-time implementation and storage were not replayed here, so the exact accounting defect remains unconfirmed by this analysis. The evidence supports the selected outflow route more directly than it supports a complete root-cause claim.

16:41–17:01 UTC: returned capital and four sales

At 16:41:11, the executor returned exactly 0.29 ETH to the initiating wallet. The seed had supplied 0.8 ETH; ten 0.05 ETH payments and one 0.01 ETH payment account for 0.51 ETH, leaving 0.29 ETH. The exact conservation and later return support reading it as unused execution capital. The complete executor history and code semantics were not independently replayed, so this interpretation remains narrower than a full contract audit. Capital return.

Three minutes later, the first selected token sale paid ETH to the wallet. Four conversions followed in order: pepeCoin at 16:44:35, EDGEN at 16:56:47, LO0P at 16:58:59 and PAAL at 17:01:11. A swap route can wrap ETH into WETH and unwrap it again. WETH is a token representation of ETH; counting each internal hand-off would inflate the sale receipt. Here only the final ETH receipt at the initiating wallet is counted.

14 October UTC / sale

ETH received

16:44:35 · pepeCoin

2.193697863955947916

16:56:47 · EDGEN

8.567916244203100025

16:58:59 · LO0P

3.463106488889437863

17:01:11 · PAAL

0.411886429218097850

The four receipts sum to 14.636607026266583654 ETH, before costs. The LO0P sale was submitted by a different address, even though ETH reached the initiating wallet. A third-party transaction submitter can execute an order for a recipient. That fact does not identify a co-attacker, and the third party’s transaction fee must not be subtracted from the initiating wallet’s funds without checking who paid it. LO0P receipt.

At 17:09:35, after these four sales, 3.5 ETH went back to the funding address. That return connects the two addresses financially, but does not establish a real-world identity, common control or an ultimate cash-out destination. It also does not mean that the sale receipts disappear from the ledger: it is a later movement of ETH, not a negative token sale. Return transaction.

15 October, 07:28–07:35 UTC: ZC completes the selected conversion route

At 07:28:35 the executor sent 9,055,847.637887682268154756 ZC to the initiating wallet. This was a token withdrawal, not yet a sale. At 07:35:11—six minutes and 36 seconds later—a separate successful transaction converted that amount and paid 6.518678985642082304 ETH to the same wallet. ZC withdrawal; ZC sale.

The sale used LI.FI routing and included a token fee of 4,527.923818943841134077 ZC. The remaining 9,051,319.714068738427020679 ZC moved onward to the router. The route ultimately unwrapped WETH and delivered ETH through routing contracts to the wallet. These intermediary transfers explain how the conversion completed; they are not extra sale proceeds. The trace displayed 150 of 204 call frames, so the original explorer transfer records supplement the quantity check rather than constituting a complete execution replay.

Stopping the account on 14 October would therefore omit more than 6.5 ETH of selected sale receipts. Conversely, adding the 0.29 ETH capital return would overstate those receipts. Figure 2 separates the two accounting categories before showing the later balance snapshot.

Accounting distinction between five sale receipts, returned executor capital and a later wallet balance.

Figure 2. Read the green sale box and amber capital box separately. The connecting arrows identify receipt categories reaching one wallet; they do not instruct the reader to add them as profit. The lower gray panel is a later balance observation. Amounts are rounded to six decimals.

The five sale receipts total exactly 21.155286011908665958 ETH. This is a gross conversion receipt, not net profit, a dollar loss or the wallet’s entire balance. Gas, execution payments, starting funds and other transfers need their own accounting. One unsolicited incoming wei and a successful zero-EDGEN transfer are excluded from sale proceeds. The remaining question is where the observed ETH stood at a defined cutoff.

17 October: a fixed-block snapshot, not a final destination

At block 26,210,180, timestamped 05:27:59 UTC, the initiating wallet held 20.237222755363802454 ETH and the funding address held 7.459202396392388 ETH. These were read at the same historical block through Ethereum JSON-RPC, not inferred by subtracting a selection of transfers. The block hash is preserved in the appendix. Cutoff block; RPC endpoint documentation.

A balance belongs to an address, not to one incident. The funding address’s balance in particular is not an additional UNCX loss. Within the bounded native-ETH follow-up, no custodial-exchange deposit, bridge exit or mixer deposit was identified from these two addresses. Provider coverage and labels are incomplete; this is not proof that no outside-scope movement exists or that the funds can be recovered.

One account detail also deserves care. The initiating wallet’s code at the cutoff is an EIP-7702 delegation marker pointing to a separate implementation. EIP-7702 lets an account authorize delegated code execution. A nonce is an account’s sequential counter; it helps distinguish an authorization or transaction from an earlier one. The ZC sale’s authorization used nonce 25, while its outer transaction used nonce 24; an authorization can increment the authority’s nonce inside that transaction. It is not evidence of a separate later transaction, a compromised key or a specific operator. Sale authorization; EIP-7702 specification.

What connects the route—and what remains open

The strongest connections are direct: the executor was created inside the seed execution, token events reconcile its receipts, the next-day ZC withdrawal names the same sender and recipient roles, and the five sale receipts pay the initiating wallet. These are transaction-level links. The funding relationship is a different level of evidence: it establishes value moving between two addresses, not common ownership. Similar patterns or shared service labels cannot fill that gap.

Blockaid’s broader alert reported approximately $1.49 million across four chains and 11 drains including copycats and MEV activity—automated attempts to extract value from transaction execution or ordering. That is external incident context, not this report’s verified net loss. This review does not independently aggregate BNB Chain, Base or Robinhood activity, price every token at the incident time, or assign every affected vesting position to a victim. Blockaid update; published transaction list.

The transfer-event arithmetic was independently reconstructed from Etherscan receipts. SentinelTX supplied call traces and bounded address follow-up; fixed-block balance and code reads were checked separately through Ethereum RPC. These are complementary evidence sources, not interchangeable confirmations. The selected record is reproducible, but neither the root cause nor a complete multichain victim ledger has been established by this analysis.

Response points specific to this case

The first response question is which vesting positions were affected. Investigators need the incident-time position state and decoded deposit/withdrawal events, not only the shared pool’s balance change. That would connect the reconciled token outflows to individual claims and avoid confusing fee or lending-counterparty receipts with executor gains.

The second is why those movements were accepted. Replaying the seed against the implementation and storage at block 26,191,745 would test the reported accounting mechanism and identify which invariant failed. A current implementation page or a matching exploit pattern is not an adequate substitute.

The third is whether the receiving wallet later crosses into a service with a verifiable destination record. Any new exchange, bridge or mixer label needs the actual transaction, chain, asset and time attached. A historical funding source is not an onward route for proceeds created later. Until such a record is linked, the report should stop at the observed wallets rather than draw a speculative cash-out arrow.

The defensible conclusion is therefore specific: five tokens left the shared pool in the selected Ethereum transaction, and five later conversions paid 21.155286011908665958 ETH to the initiating wallet across two days. The 0.29 ETH executor return is separate capital, and the 17 October balance is a snapshot. Those distinctions preserve what the evidence explains without turning unanswered questions into findings.

Evidence appendix: exact quantities and identifiers

All addresses below are on Ethereum. Wallet and contract links open address-detail pages; transaction links open transaction-detail pages. Values are unrounded unless explicitly labeled otherwise. Raw token quantities were summed as integers, using each token’s recorded decimal precision.

EDGEN: seed-receipt reconciliation

Record

Exact token amount

Pool incoming

475444753.754326574116796226

Pool outgoing

532789604.674988572932369396

Pool net outflow

57344850.920661998815573170

Executor net receipt

55601598.708417972560603048

Fee-recipient net receipt

425556.138682232937672685

Counterparty net receipt

1317696.073561793317297437

Role

Ethereum address

Token contract

0xaa9806c938836627ed1a41ae871c7e1889ae02ca

Fee recipient

0xd45dd91df475bfd944335160f538c1a14888dc1c

Counterparty

0x4b2c930f88a87d1bffac291b6a7e01c9f13dd03e

ZC: seed-receipt reconciliation

Record

Exact token amount

Pool incoming

93872336.744096272206179873

Pool outgoing

103004014.788650621140667962

Pool net outflow

9131678.044554348934488089

Executor net receipt

9055847.637887682268154756

Fee-recipient net receipt

75830.406666666666333333

Role

Ethereum address

Token contract

0x4e67db19044549ff420860834c91b45bad298722

Fee recipient

0xd45dd91df475bfd944335160f538c1a14888dc1c

pepeCoin: seed-receipt reconciliation

Record

Exact token amount

Pool incoming

658778.146282755355639233

Pool outgoing

700978.678959483212162252

Pool net outflow

42200.532676727856523019

Executor net receipt

40155.284285661160205717

Fee-recipient net receipt

446.139542453412314759

Counterparty net receipt

1599.108848613284002543

Role

Ethereum address

Token contract

0xa9e8acf069c58aec8825542845fd754e41a9489a

Fee recipient

0xd45dd91df475bfd944335160f538c1a14888dc1c

Counterparty

0xddd23787a6b80a794d952f5fb036d0b31a8e6aff

LO0P: seed-receipt reconciliation

Record

Exact token amount

Pool incoming

560996.296306472266672982

Pool outgoing

626822.296306472260110494

Pool net outflow

65825.999999999993437512

Executor net receipt

65372.217059159993437512

Fee-recipient net receipt

453.782940840000000000

Role

Ethereum address

Token contract

0x00000000000050806673b532d7486ac114c1de3f

Fee recipient

0xd45dd91df475bfd944335160f538c1a14888dc1c

PAAL: seed-receipt reconciliation

Record

Exact token amount

Pool incoming

988136.434511398

Pool outgoing

1104082.064395937

Pool net outflow

115945.629884539

Executor net receipt

113657.766933968

Fee-recipient net receipt

799.291296850

Counterparty net receipt

1488.571653721

Role

Ethereum address

Token contract

0x14fee680690900ba0cccfc76ad70fd1b95d10e16

Fee recipient

0xd45dd91df475bfd944335160f538c1a14888dc1c

Counterparty

0x2a6c340bcbb0a79d3deecd3bc5cbc2605ea9259f

Execution and routing addresses

Role

Ethereum address

Seed fee recipient

0xd45dd91df475bfd944335160f538c1a14888dc1c

Seed builder-payment recipient

0x396343362be2a4da1ce0c1c210945346fb82aa49

LO0P transaction submitter

0x8d10551fbb0da1eadf34b25210fe75f278fa9321

LO0P relay

0x52b335fd4d229c4b4ffa6190526e4b5fb8e3fb09

UniswapX reactor

0x00000011f84b9aa48e5f8aa8b9897600006289be

LI.FI route

0x1231deb6f5749ef6ce6943a275a1d3e7486f4eae

ZC router

0x22ec88b9ff78c6f2458ab1a7aa8bb99d84bd4b86

ZC ETH routing intermediary

0x28bf6006d87de7f44445905aa4f5cb8c0d8cba02

Uniswap v4 Pool Manager

0x000000000004444c5dc75cb358380d2e3de08a90

EIP-7702 delegate

0x63c0c19a282a1b52b07dd5a65b58948a07dae32b

Chronological transaction register (UTC, 2026)

Time and evidence role

Full transaction hash

14 Oct 14:47:35 · 0.1 ETH funding

0x52fe1a5aa857a3e6f6f0c12f559019da382c294238601b967a74b03c01c5b93b

14 Oct 14:56:59 · 0.9 ETH funding

0x351b5d9728c51ffbefd951b3536ab9c61e6e0de9dfa738830d560eb82fb6992e

14 Oct 15:15:35 · 2.5 ETH funding

0x56db74daaa13475dbb3360c86bf150ad2430556500cd803e47590f3b32b75e8b

14 Oct 15:49:59 · seed · block 26191745

0x352065378c4a41b77e5b6a1e5b5616cd2886c3e1a2c87ed3db8e5ddddc23823d

14 Oct 16:41:11 · 0.29 ETH return

0x1527757f77288fafc68ab8f2d20e7061ee9941fe8214e188d6810882661fbc32

10-14 16:44:35 · pepeCoin sale · block 26192018

0xf758582096ed80fbd4b80bc3dbd44e3edabdfd116b15ad9d16af459e38b09be5

10-14 16:56:47 · EDGEN sale · block 26192079

0x60becfc7e652d79182402bc3a8ce43ad433b06b5c401d239a4b10b97bb4a7221

10-14 16:58:59 · LO0P sale · block 26192090

0x35672ee02483b580acc443657ec6f5326e0fcea35912d6042335ed8f70010d04

10-14 17:01:11 · PAAL sale · block 26192101

0x4ac0a349988c0e87a7d4d8f5fe94ae4886b165b56e931b6f485c57e2db8bcb4c

14 Oct 17:09:35 · 3.5 ETH to funder

0xa32b5eefca3e3dc8891f9e07fcd585c5ce1762f5d67035fc3e61acaa818f92bd

15 Oct 06:40:47 · unsolicited 1 wei

0x3d08bda0a282249b2cd05685962c2d7bc21ec2a23a4da4d2191c7d48123b96ac

15 Oct 07:27:11 · zero EDGEN · block 26196414

0xe806726d883cef3dac91fe782ea1bfe8f451f08c40d3990fee8b4a42443c3711

15 Oct 07:28:35 · ZC withdrawal · block 26196421

0x8eab147f6e0f34e807c584d69873b2a2f7b4791b691f9a60c9d1ffd347eafcb0

15 Oct 07:35:11 · ZC sale · block 26196454

0x13a26824dd3f1135b35852333922f4573e0a8c2542a3d6884655471283a490fc

Cutoff and counting notes

Observation

Exact value

Five sale receipts

21.155286011908665958 ETH

ZC sale receipt

6.518678985642082304 ETH

Returned executor capital; excluded from sales

0.290000000000000000 ETH

Initiating-wallet native balance

20.237222755363802454 ETH

Funding-address native balance

7.459202396392388 ETH

Block / UTC

26210180 / 2026-10-17 05:27:59

Block hash

0x98c78f93c1b3d7de09694f161d922b2c219b68205f87626f224d70301fa672de

The five-sale total excludes the 0.29 ETH capital return, the unsolicited wei, repeated internal route legs and gas. No net-profit or dollar-loss total is asserted. The selected pool-net figures do not establish per-position losses. Findings reflect the stated cutoff and scope, not a live assurance about later funds.

post_like_sub0
post_total_comment_sub0

6 reads

0/500 bytes