Prop AMM Teardown
The wall#68 other closed program

WhaleStreet

FW6zUqn4iKRaeopwwhwsquTY6ABWLLgjxtrC3VPnaWBfSolscan
0.00
USDC in the pot
0
backers
0
attempts
10
transactions in 24 h
Chip in

USDC goes to this target's escrow with the Memo teardown:chip:FW6z…aWBf. You can take your share back any time before a PASS.

The wallet opens only when you click. Minimum 5 USDC.

Escrow CUiNw7…KZhGYQ · USDC account AATN9Z…Suc8F6

print of ELF sha256 27cce579917e9ee7…, lock at 0.00% match

Snapshot.
Read from mainnet and frozen for this deploy slot.

Loader
Upgradeable loader (v3)
Program data
Upgrade authority
Last deploy slot
462,911,254
ELF sha256
27cce579917e9ee7c4ebfd295027999fe5714a6b8dcb5183b9515d6b2d6d844f
ELF size
675,848 bytes (660.0 KB)
Snapshot taken
2026-11-02 15:19 UTC
OtterSec verify
no verified build
Corpus
built by the judge machine: up to 1,000 recent mainnet instructions and 10,000 fuzzed variants; the real N is printed once it exists

Teardown kit.
Computed from the ELF and recent transactions, no AI. Hunters start here.

71,144
sBPF instructions in .text
571
functions reached by internal calls
3,762
internal call sites
12
syscalls used

Sections

.text601,928
.rodata21,755
.data.rel.ro8,328
.dynamic176
.dynsym360
.dynstr209
.rel.dyn42,144
.shstrtab72

Syscalls

abortsol_get_clock_sysvarsol_get_rent_sysvarsol_invoke_signed_rustsol_keccak256sol_log_sol_log_pubkeysol_memcmp_sol_memcpy_sol_memset_sol_sha256sol_try_find_program_address

sBPF flags 0, names read from .dynsym

Largest functions

Offset in .textBytes
0x3b59013,528
0x3eb0813,528
0x15be813,096
0x3836012,688
0x543d010,552
0x4674810,496
0x115489,080
0x7f4488,824
0x347688,560
0x4c3a08,304
0x43f107,784
0x421687,208

Strings in .rodata (28)

The given account is not mutablecore/src/unicode/unicode_data.rs
Yindex out of bounds: the len is
AccountNotAssociatedTokenAccount
A signer constraint was violated
An owner constraint was violated
ProgramError caused by account: src/lib.rssrc/extension/mod.rsmid > lensrc/de/mod.rsfailed to fill whole buffer()a Display implementation returned an error unexpectedly/home/runner/work/platform-tools/platform-tools/out/…
Kindfromkind
programs/whalestreet/src/instructions/admin_controls.rssafeguard-poolPool
has been closedConstraintHasOneConstraintSigneralloc/src/fmt.rs) when slicing `Division by zerorange end index . Error Number:
AccountNotSignerPermissionDeniedAddrNotAvailablemetadata_account0123456789abcdefInvalidProgramIdprograms/whalestreet/src/instructions/exit.rsprograms/whalestreet/src/instructions/initialize_safeguard_pool.rs created with…
NotFoundTimedOut
metadataMF
(bytes Deadlockprograms/whalestreet/src/program_entrypoint.rscalled `Result::unwrap()` on an `Err` valueprograms/whalestreet/src/safeguards/cyclic.rs
programs/whalestreet/src/safeguards/okx.rsJUP6LkbZbjS1jKKwapdHNy74zcZ3tLUZoi5QNyVTaV4proVF4pMXVaYqmy4NjniPh4pqKNfMmsihgd4wdkCX3upreXgyMmsTzkYSyp9ms1EgSQCbp87B84bT8kyB21bbBT1TANpTeScyeqVzzgNViGDNrkQ6qHz9KrSBS4aNXvGT
programs/whalestreet/src/safeguards/token_flow.rsprograms/whalestreet/src/safeguards/tx.rs
programs/whalestreet/src/state/oracle.rsprograms/whalestreet/src/state/orderbook.rsprograms/whalestreet/src/state/safeguard_pool.rsprograms/whalestreet/src/utils/conversion.rsprograms/whalestreet/src/utils/jupiter_route_…
programs/whalestreet/src/utils/math.rs
6safeguard_pooladminpool_minttoken_metadata_programsystem_programbase_vaultquote_vaulttoken_programowner_base_accountowner_quote_accountowner_pool_accountownerbase_price_updatequote_price_updatefundertoken-vaultpool-mint…
/home/runner/work/platform-tools/platform-tools/out/rust/library/alloc/src/raw_vec.rssrc/context.rssrc/ser/mod.rs/home/runner/work/platform-tools/platform-tools/out/rust/library/alloc/src/raw_vec.rscalled `Result::unwrap…
src/state.rs/home/runner/work/platform-tools/platform-tools/out/rust/library/alloc/src/slice.rsError/home/runner/work/platform-tools/platform-tools/out/rust/library/alloc/src/string.rs/home/runner/work/platform-tools/pla…
/home/runner/work/platform-tools/platform-tools/out/rust/library/alloc/src/slice.rsOsmessageErrorCustomerrorConnectionRefusedConnectionResetHostUnreachableNetworkUnreachableConnectionAbortedNotConnectedAddrInUseNetworkDo…
but the index is : { , {
,core/src/fmt/num.rs0x000102030405060708091011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798…
[...]begin <= end (`byte index is not a char boundary; it is inside ) of ` is out of bounds of `core/src/unicode/printable.rs
)14:EFIJNOde
INOWY^_
attempt to divide by zeronumber not in the range 0..=
range start index out of range for slice of length slice index starts at but ends at

Instruction sample

Sampling recent transactions: the cron reads a few at a time from public RPC.

Full kit from the judge

Disassembly, discriminator map over the full corpus, writable and signer patterns, account sizes and owners, CPI targets: computed by the judge machine for this snapshot and published here.

Pot.
Every transfer in and out of the escrow, read from Solana.

0 USDC, no backers yet. The first chip-in opens this pot.

Attempts.
Match percentages and hashes. The source stays encrypted until the verdict.

No attempts yet. Submit a rebuild.

Upgrade history.
One snapshot per deploy slot. A submission is judged against the snapshot it targeted.

Deploy slotELF sha256SizeTaken
462,911,25427cce579917e9ee7c4ebfd295027999fe5714a6b8dcb5183b9515d6b2d6d844f660.0 KB2026-11-02 15:19 UTC