MONEY / TRAIL01 NOV 2026
FINANCIAL EVIDENCE · MIXER ROOTS · DISCLOSED ACCOUNT COMPARISONS

The mixer trail, checked against Car’s disclosed accounts.

The confirmed Tornado deposit is 0.1 ETH. C91 still holds about 58.33 ETH. This pass decoded the pool’s withdrawal instructions and expanded the account comparisons. It established no financial connection to Car.

Start with the transfer we can prove

On October 29, C91 signed a 0.1 ETH deposit through the Tornado router. Later withdrawals are transactions by pool users; the public deposit event does not tell us which one spends C91’s note. Every card below opens its supporting records.

111withdrawal instructions decoded and checked against their pool events
100nonzero roots read from the deployed pool’s pre-deposit history
0withdrawals excluded by matching that pre-deposit root window

Root checks, coverage and transaction inputs ↗

Why the deposit does not reveal the withdrawal

A depositor creates a private note from two secret values. The deposit publishes a commitment derived from them. A withdrawal publishes a different value, the nullifier hash, and a proof that the spender knows a valid note. The secrets and the note’s position stay private. We cannot calculate the matching withdrawal nullifier from C91’s public deposit commitment. Official withdrawal circuit ↗

A withdrawal also supplies a root: a snapshot of the deposit tree. A snapshot created before C91’s deposit cannot include it. We compared the withdrawal roots with the pool’s actual pre-deposit ring. None matched that sampled earlier ring. The test therefore excludes zero withdrawals; it does not identify any withdrawal as C91’s. An older root outside the sampled ring is not covered by this comparison. Exact root results ↗

The deployed pool reports a history size of 100. The current reference repository uses 30, so this audit used the deployed getter and historical state. The root check’s assumptions and the contract’s migration state are recorded in the proof. Reference tree logic ↗

The contract keeps deposit commitments recorded after withdrawal. A true commitment getter is not proof the note remains unspent. A withdrawal can also pay less than 0.1 ETH because its declared fee is deducted. Matching the amount or using the same relayer is insufficient to connect two people. Withdrawal checks ↗ · ETH payment and fee logic ↗

What the Car comparison actually covers

We tested exact addresses and signing keys against 111 pool withdrawals. Publicly disclosed profiles, their bound controller keys, trading counterparties and general financial peers remain separate sets. A counterparty’s transaction does not make its wallet Car-controlled. These comparison sets overlap; their counts cannot be added together.

Finite comparison sets · all results retain their source scope
SetEntriesWhat it establishesResult
Disclosed profiles and bound controllers168 public profile addresses plus 8 controller keys; retained disclosures and chain bindings.0 recipient, relayer or recovered outer-key matches
Computed address formats408 keys and 32 deterministic address formats. Computed formats are not proof of account use.0 recipient, relayer or recovered outer-key matches
Mixed financial leads112Includes counterparties and public protocols; this is not a Car-ownership list.0 recipient, relayer or recovered outer-key matches
Base payment financial roles10Payer, payment operator, receivers, token store and service destination have separate roles.0 recipient, relayer or recovered outer-key matches

The inventory covers eight publicly disclosed profiles and eight bound controller keys. Seven controller bindings come from retained owner getters; the main key is checked against 20 retained digest/signature pairs. No exact financial-role match emerged. The earlier five-key financial set includes independent peers and is not an ownership register. Address inventory, exact tests and financial-edge coverage ↗

A stronger link would be a verified transfer involving an attributed wallet, shared signing authority, or a specific financial intermediary tied to both routes. Shared public bridges, exchange service wallets, sponsored-transaction systems and withdrawal relayers do not establish that link.

Where the checked money stands

Fresh selected balances, with their own chain cutoffs. The unchanged C91 transaction counter supplies no additional ordinary Ethereum transaction; it does not rule out sponsored actions, receipts or other assets.

Selected balances · 1 November 2026 · UTC
WalletChainAsset and amountCutoff UTC
C91Ethereum58.333930583210084939 ETH2026-11-01T01:41:11Z
Routing wallet 3f701Ethereum0.50824437123767711 ETH2026-11-01T01:41:11Z
E5 holding walletEthereum126.096675659426539853 ETH2026-11-01T01:41:11Z
E4 branchEthereum0.3997874672242106 ETH2026-11-01T01:41:11Z
Routing wallet 3f701Ethereum21.517025 USDT2026-11-01T01:41:11Z
C91Polygon4,235,982.756885163313955003 POL2026-11-01T01:41:19Z
CollectorPolygon0.025000048 POL2026-11-01T01:41:19Z
Routing wallet 3f701Polygon3.052420374918193426 POL2026-11-01T01:41:19Z
E4 branchPolygon15,331,308.312708954252254001 POL2026-11-01T01:41:19Z
CollectorPolygon4,127.739599 USDC.e2026-11-01T01:41:19Z
Selling account 5aPolygon5,139.425799 pUSD2026-11-01T01:41:19Z

The selling account’s pUSD increased by just 0.0011. The matching canonical-token transfer was part of a bulk distribution to 400 recipients. This is an incoming transfer, without evidence that the selling-account owner initiated it. Fresh state, pool events and bulk-transfer proof ↗

The pool recorded 6 more withdrawals and 1 more deposit since the earlier cutoff. Those are pool totals, not new attacker transfers.

The Base payment remains a concrete lead

The 3f701 key signed an Across instruction for 1,526.93 USDT, explicitly choosing recipient 1332 on Base. The matching 1,526.93 USDC then entered a payment authorized by the 1332 key. The payment receiver got 1,511.6607 USDC after a 15.2693 USDC fee.

That receiver later swept 2,267.694 USDC, including 756.0333 already present, to an address labelled Coinbase 14 in the retained explorer records. The payment gives us a specific financial handoff. It does not identify the receiver’s business or the attacker’s exchange account, and receiving the payment alone does not establish complicity. Signed destination ↗ · Base payment authorization ↗ · Receiver’s onward transfers ↗

Evidence and remaining gaps

The disclosed-account bindings retain their original observation times. The retained 3,485-edge actor-side graph contains no disclosed-account edge, but it does not cover every withdrawal recipient’s onward history or all Car activity. No complete indirect-link search, note-secret recovery, Groth16 proof verification, Solidity compilation or independent consensus proof is claimed. The direct payment trail does not identify a merchant’s business or exchange customer.

Prepared 2026-11-01T01:53:06.053835+00:00. Financial records retain their block, transaction and query cutoffs.