TW
Tripwire
Find contracts. Test them. Review real vulns.

Analysis Run

019b3836-48d4-7325-8089-7f2b3c5e0a99

complete
Chain ID
1
Address
Block Number
Created
Fri, Dec 19, 2025 8:04 PM
Review Summary

What survived the funnel

Open this run to answer one question: is this real attacker-relevant behavior with real impact, or just normal contract plumbing?

Confirmed
0
Validated
0
Source
Bytecode only
Review Backing
Not yet
Best current signal
Untrusted CALL target/value reachable
crit 0 high 0 direct contract
Review Checklist
1. Read the findings table first. Ignore raw jobs until the result looks real.
2. Confirm attacker control, not just the existence of a sink.
3. Confirm money or privilege impact.
4. Keep it if the behavior is real. Kill it if this is normal proxy, admin, or upgrade plumbing.

Processing Jobs

Status & attempts
ID Type Status Attempts Heartbeat
6511 artifact.fetch complete 1 / 3 4 months ago
6512 tool.cast_disasm complete 1 / 3 4 months ago
49996 analysis.bundle complete 1 / 3 2 weeks ago
49997 capability.graph complete 1 / 3 2 weeks ago
49998 detector.run complete 1 / 3 2 weeks ago
49999 validation.fork complete 1 / 3 2 weeks ago

Artifact

Runtime bytecode: available
Creation TX:
Deployer:
Proxy: no
Implementation:
Verified Source: no

Slither

tool.slither

No slither job recorded yet.

Codex

report.consolidate

No codex job recorded yet.

Opcode Heuristics

tool.cast_disasm
Delegatecall
0
Selfdestruct
0
CREATE2
0
CALL-family (heavy)
5
EXT*/BALANCE
3
Total opcodes
955
Flags
No heuristic flags raised.
View cast disassembly output
00000000: PUSH1 0x60
00000002: PUSH1 0x40
00000004: MSTORE
00000005: CALLDATASIZE
00000006: ISZERO
00000007: PUSH2 0x0061
0000000a: JUMPI
0000000b: PUSH1 0xe0
0000000d: PUSH1 0x02
0000000f: EXP
00000010: PUSH1 0x00
00000012: CALLDATALOAD
00000013: DIV
00000014: PUSH4 0x08f00e31
00000019: DUP2
0000001a: EQ
0000001b: PUSH2 0x0063
0000001e: JUMPI
0000001f: DUP1
00000020: PUSH4 0x0dd46804
00000025: EQ
00000026: PUSH2 0x0070
00000029: JUMPI
0000002a: DUP1
0000002b: PUSH4 0x693e3776
00000030: EQ
00000031: PUSH2 0x00d5
00000034: JUMPI
00000035: DUP1
00000036: PUSH4 0x730c29ef
0000003b: EQ
0000003c: PUSH2 0x0130
0000003f: JUMPI
00000040: DUP1
00000041: PUSH4 0x8fe58eb9
00000046: EQ
00000047: PUSH2 0x017c
0000004a: JUMPI
0000004b: DUP1
0000004c: PUSH4 0xbb6f0ac8
00000051: EQ
00000052: PUSH2 0x02bd
00000055: JUMPI
00000056: DUP1
00000057: PUSH4 0xeeaef8e0
0000005c: EQ
0000005d: PUSH2 0x02f2
00000060: JUMPI
00000061: JUMPDEST
00000062: STOP
00000063: JUMPDEST
00000064: PUSH2 0x02fb
00000067: PUSH1 0x04
00000069: SLOAD
0000006a: PUSH2 0xffff
0000006d: AND
0000006e: DUP2
0000006f: JUMP
00000070: JUMPDEST
00000071: PUSH2 0x0061
00000074: PUSH1 0x00
00000076: PUSH1 0x00
00000078: PUSH1 0x00
0000007a: PUSH8 0x0de0b6b3a7640000
00000083: CALLVALUE
00000084: LT
00000085: DUP1
00000086: PUSH2 0x0098
00000089: JUMPI
0000008a: POP
0000008b: PUSH1 0x02
0000008d: SLOAD
0000008e: PUSH1 0xa0
00000090: PUSH1 0x02
00000092: EXP
00000093: SWAP1
00000094: DIV
00000095: PUSH1 0xff
00000097: AND
00000098: JUMPDEST
00000099: DUP1
0000009a: PUSH2 0x00aa
0000009d: JUMPI
0000009e: POP
0000009f: PUSH1 0x05
000000a1: SLOAD
000000a2: PUSH1 0x03
000000a4: SLOAD
000000a5: CALLVALUE
000000a6: SWAP1
000000a7: SWAP2
000000a8: ADD
000000a9: GT
000000aa: JUMPDEST
000000ab: ISZERO
000000ac: PUSH2 0x03c6
000000af: JUMPI
000000b0: PUSH1 0x40
000000b2: MLOAD
000000b3: PUSH1 0x01
000000b5: PUSH1 0xa0
000000b7: PUSH1 0x02
000000b9: EXP
000000ba: SUB
000000bb: CALLER
000000bc: AND
000000bd: SWAP1
000000be: PUSH1 0x00
000000c0: SWAP1
000000c1: CALLVALUE
000000c2: SWAP1
000000c3: DUP3
000000c4: DUP2
000000c5: DUP2
000000c6: DUP2
000000c7: DUP6
000000c8: DUP9
000000c9: DUP4
000000ca: CALL
000000cb: SWAP4
000000cc: POP
000000cd: POP
000000ce: POP
000000cf: POP
000000d0: POP
000000d1: PUSH2 0x03c1
000000d4: JUMP
000000d5: JUMPDEST
000000d6: PUSH2 0xffff
000000d9: PUSH1 0x04
000000db: CALLDATALOAD
000000dc: DUP2
000000dd: AND
000000de: PUSH1 0x00
000000e0: SWAP1
000000e1: DUP2
000000e2: MSTORE
000000e3: PUSH1 0x06
000000e5: PUSH1 0x20
000000e7: SWAP1
000000e8: DUP2
000000e9: MSTORE
000000ea: PUSH1 0x40
000000ec: SWAP2
000000ed: DUP3
000000ee: SWAP1
000000ef: KECCAK256
000000f0: PUSH1 0x01
000000f2: DUP2
000000f3: ADD
000000f4: SLOAD
000000f5: PUSH1 0x02
000000f7: DUP3
000000f8: ADD
000000f9: SLOAD
000000fa: DUP3
000000fb: SLOAD
000000fc: PUSH1 0x03
000000fe: SWAP4
000000ff: SWAP1
00000100: SWAP4
00000101: ADD
00000102: SLOAD
00000103: DUP6
00000104: MLOAD
00000105: SWAP3
00000106: DUP4
00000107: MSTORE
00000108: SWAP6
00000109: AND
0000010a: SWAP3
0000010b: DUP2
0000010c: ADD
0000010d: SWAP3
0000010e: SWAP1
0000010f: SWAP3
00000110: MSTORE
00000111: PUSH1 0x01
00000113: PUSH1 0xa0
00000115: PUSH1 0x02
00000117: EXP
00000118: SUB
00000119: AND
0000011a: DUP2
0000011b: DUP4
0000011c: ADD
0000011d: MSTORE
0000011e: PUSH1 0x60
00000120: DUP2
00000121: ADD
00000122: SWAP3
00000123: SWAP1
00000124: SWAP3
00000125: MSTORE
00000126: MLOAD
00000127: SWAP1
00000128: DUP2
00000129: SWAP1
0000012a: SUB
0000012b: PUSH1 0x80
0000012d: ADD
0000012e: SWAP1
0000012f: RETURN
00000130: JUMPDEST
00000131: PUSH2 0x02fb
00000134: PUSH1 0x04
00000136: CALLDATALOAD
00000137: JUMPDEST
00000138: PUSH1 0x00
0000013a: DUP1
0000013b: JUMPDEST
0000013c: PUSH1 0x04
0000013e: SLOAD
0000013f: PUSH2 0xffff
00000142: SWAP1
00000143: DUP2
00000144: AND
00000145: SWAP1
00000146: DUP3
00000147: AND
00000148: LT
00000149: ISZERO
0000014a: PUSH2 0x04a8
0000014d: JUMPI
0000014e: PUSH2 0xffff
00000151: DUP2
00000152: AND
00000153: PUSH1 0x00
00000155: SWAP1
00000156: DUP2
00000157: MSTORE
00000158: PUSH1 0x06
0000015a: PUSH1 0x20
0000015c: MSTORE
0000015d: PUSH1 0x40
0000015f: SWAP1
00000160: KECCAK256
00000161: SLOAD
00000162: PUSH1 0x01
00000164: PUSH1 0xa0
00000166: PUSH1 0x02
00000168: EXP
00000169: SUB
0000016a: DUP5
0000016b: DUP2
0000016c: AND
0000016d: SWAP2
0000016e: AND
0000016f: EQ
00000170: ISZERO
00000171: PUSH2 0x04b4
00000174: JUMPI
00000175: DUP1
00000176: SWAP2
00000177: POP
00000178: PUSH2 0x04ae
0000017b: JUMP
0000017c: JUMPDEST
0000017d: PUSH2 0x0061
00000180: PUSH1 0x02
00000182: SLOAD
00000183: PUSH2 0x2710
00000186: ADDRESS
00000187: PUSH1 0x01
00000189: PUSH1 0xa0
0000018b: PUSH1 0x02
0000018d: EXP
0000018e: SUB
0000018f: AND
00000190: DUP1
00000191: BALANCE
00000192: DUP3
00000193: SWAP1
00000194: DIV
00000195: PUSH1 0xa8
00000197: PUSH1 0x02
00000199: EXP
0000019a: DUP5
0000019b: DIV
0000019c: PUSH2 0xffff
0000019f: SWAP1
000001a0: DUP2
000001a1: AND
000001a2: SWAP2
000001a3: SWAP1
000001a4: SWAP2
000001a5: MUL
000001a6: SWAP4
000001a7: SWAP2
000001a8: BALANCE
000001a9: DUP5
000001aa: SWAP1
000001ab: SUB
000001ac: SWAP3
000001ad: SWAP1
000001ae: SWAP3
000001af: DIV
000001b0: PUSH1 0xb8
000001b2: PUSH1 0x02
000001b4: EXP
000001b5: SWAP1
000001b6: SWAP2
000001b7: DIV
000001b8: SWAP1
000001b9: SWAP2
000001ba: AND
000001bb: MUL
000001bc: PUSH1 0x00
000001be: JUMPDEST
000001bf: PUSH1 0x04
000001c1: SLOAD
000001c2: PUSH2 0xffff
000001c5: SWAP1
000001c6: DUP2
000001c7: AND
000001c8: SWAP1
000001c9: DUP3
000001ca: AND
000001cb: LT
000001cc: ISZERO
000001cd: PUSH2 0x04bc
000001d0: JUMPI
000001d1: PUSH2 0xffff
000001d4: DUP2
000001d5: DUP2
000001d6: AND
000001d7: PUSH1 0x00
000001d9: SWAP1
000001da: DUP2
000001db: MSTORE
000001dc: PUSH1 0x06
000001de: PUSH1 0x20
000001e0: MSTORE
000001e1: PUSH1 0x40
000001e3: SWAP1
000001e4: KECCAK256
000001e5: PUSH1 0x02
000001e7: DUP2
000001e8: ADD
000001e9: SLOAD
000001ea: PUSH1 0x03
000001ec: SWAP2
000001ed: SWAP1
000001ee: SWAP2
000001ef: ADD
000001f0: DUP1
000001f1: SLOAD
000001f2: SWAP2
000001f3: SWAP1
000001f4: SWAP3
000001f5: AND
000001f6: PUSH2 0x2710
000001f9: DUP6
000001fa: DIV
000001fb: MUL
000001fc: ADD
000001fd: SWAP1
000001fe: DUP2
000001ff: SWAP1
00000200: SSTORE
00000201: PUSH8 0x016345785d8a0000
0000020a: SWAP1
0000020b: LT
0000020c: PUSH2 0x02b5
0000020f: JUMPI
00000210: PUSH1 0x06
00000212: PUSH1 0x00
00000214: POP
00000215: PUSH1 0x00
00000217: DUP3
00000218: PUSH2 0xffff
0000021b: AND
0000021c: DUP2
0000021d: MSTORE
0000021e: PUSH1 0x20
00000220: ADD
00000221: SWAP1
00000222: DUP2
00000223: MSTORE
00000224: PUSH1 0x20
00000226: ADD
00000227: PUSH1 0x00
00000229: KECCAK256
0000022a: PUSH1 0x00
0000022c: POP
0000022d: PUSH1 0x00
0000022f: ADD
00000230: PUSH1 0x00
00000232: SWAP1
00000233: SLOAD
00000234: SWAP1
00000235: PUSH2 0x0100
00000238: EXP
00000239: SWAP1
0000023a: DIV
0000023b: PUSH1 0x01
0000023d: PUSH1 0xa0
0000023f: PUSH1 0x02
00000241: EXP
00000242: SUB
00000243: AND
00000244: PUSH1 0x01
00000246: PUSH1 0xa0
00000248: PUSH1 0x02
0000024a: EXP
0000024b: SUB
0000024c: AND
0000024d: PUSH1 0x00
0000024f: PUSH1 0x06
00000251: PUSH1 0x00
00000253: POP
00000254: PUSH1 0x00
00000256: DUP5
00000257: PUSH2 0xffff
0000025a: AND
0000025b: DUP2
0000025c: MSTORE
0000025d: PUSH1 0x20
0000025f: ADD
00000260: SWAP1
00000261: DUP2
00000262: MSTORE
00000263: PUSH1 0x20
00000265: ADD
00000266: PUSH1 0x00
00000268: KECCAK256
00000269: PUSH1 0x00
0000026b: POP
0000026c: PUSH1 0x03
0000026e: ADD
0000026f: PUSH1 0x00
00000271: POP
00000272: SLOAD
00000273: PUSH1 0x40
00000275: MLOAD
00000276: DUP1
00000277: SWAP1
00000278: POP
00000279: PUSH1 0x00
0000027b: PUSH1 0x40
0000027d: MLOAD
0000027e: DUP1
0000027f: DUP4
00000280: SUB
00000281: DUP2
00000282: DUP6
00000283: DUP9
00000284: DUP9
00000285: CALL
00000286: SWAP4
00000287: POP
00000288: POP
00000289: POP
0000028a: POP
0000028b: POP
0000028c: PUSH1 0x00
0000028e: PUSH1 0x06
00000290: PUSH1 0x00
00000292: POP
00000293: PUSH1 0x00
00000295: DUP4
00000296: PUSH2 0xffff
00000299: AND
0000029a: DUP2
0000029b: MSTORE
0000029c: PUSH1 0x20
0000029e: ADD
0000029f: SWAP1
000002a0: DUP2
000002a1: MSTORE
000002a2: PUSH1 0x20
000002a4: ADD
000002a5: PUSH1 0x00
000002a7: KECCAK256
000002a8: PUSH1 0x00
000002aa: POP
000002ab: PUSH1 0x03
000002ad: ADD
000002ae: PUSH1 0x00
000002b0: POP
000002b1: DUP2
000002b2: SWAP1
000002b3: SSTORE
000002b4: POP
000002b5: JUMPDEST
000002b6: PUSH1 0x01
000002b8: ADD
000002b9: PUSH2 0x01be
000002bc: JUMP
000002bd: JUMPDEST
000002be: PUSH2 0x0061
000002c1: PUSH1 0x04
000002c3: CALLDATALOAD
000002c4: PUSH1 0x24
000002c6: CALLDATALOAD
000002c7: PUSH1 0x44
000002c9: CALLDATALOAD
000002ca: PUSH1 0x64
000002cc: CALLDATALOAD
000002cd: PUSH1 0x84
000002cf: CALLDATALOAD
000002d0: PUSH1 0xa4
000002d2: CALLDATALOAD
000002d3: PUSH1 0xc4
000002d5: CALLDATALOAD
000002d6: PUSH1 0x00
000002d8: SLOAD
000002d9: PUSH1 0x01
000002db: PUSH1 0xa0
000002dd: PUSH1 0x02
000002df: EXP
000002e0: SUB
000002e1: SWAP1
000002e2: DUP2
000002e3: AND
000002e4: CALLER
000002e5: SWAP2
000002e6: SWAP1
000002e7: SWAP2
000002e8: AND
000002e9: EQ
000002ea: PUSH2 0x04ec
000002ed: JUMPI
000002ee: PUSH2 0x05ab
000002f1: JUMP
000002f2: JUMPDEST
000002f3: PUSH2 0x0313
000002f6: PUSH1 0x05
000002f8: SLOAD
000002f9: DUP2
000002fa: JUMP
000002fb: JUMPDEST
000002fc: PUSH1 0x40
000002fe: DUP1
000002ff: MLOAD
00000300: PUSH2 0xffff
00000303: SWAP3
00000304: SWAP1
00000305: SWAP3
00000306: AND
00000307: DUP3
00000308: MSTORE
00000309: MLOAD
0000030a: SWAP1
0000030b: DUP2
0000030c: SWAP1
0000030d: SUB
0000030e: PUSH1 0x20
00000310: ADD
00000311: SWAP1
00000312: RETURN
00000313: JUMPDEST
00000314: PUSH1 0x40
00000316: DUP1
00000317: MLOAD
00000318: SWAP2
00000319: DUP3
0000031a: MSTORE
0000031b: MLOAD
0000031c: SWAP1
0000031d: DUP2
0000031e: SWAP1
0000031f: SUB
00000320: PUSH1 0x20
00000322: ADD
00000323: SWAP1
00000324: RETURN
00000325: JUMPDEST
00000326: PUSH1 0x02
00000328: SLOAD
00000329: PUSH1 0x40
0000032b: DUP1
0000032c: MLOAD
0000032d: PUSH32 0x97ca0a9f00000000000000000000000000000000000000000000000000000000
0000034e: DUP2
0000034f: MSTORE
00000350: PUSH2 0x2710
00000353: CALLVALUE
00000354: DIV
00000355: PUSH1 0xc8
00000357: PUSH1 0x02
00000359: EXP
0000035a: DUP5
0000035b: DIV
0000035c: PUSH2 0xffff
0000035f: AND
00000360: MUL
00000361: PUSH1 0x04
00000363: DUP3
00000364: ADD
00000365: MSTORE
00000366: SWAP1
00000367: MLOAD
00000368: PUSH1 0x01
0000036a: PUSH1 0xa0
0000036c: PUSH1 0x02
0000036e: EXP
0000036f: SUB
00000370: SWAP3
00000371: SWAP1
00000372: SWAP3
00000373: AND
00000374: SWAP2
00000375: PUSH4 0x97ca0a9f
0000037a: SWAP2
0000037b: PUSH1 0x24
0000037d: DUP2
0000037e: DUP2
0000037f: ADD
00000380: SWAP3
00000381: PUSH1 0x00
00000383: SWAP3
00000384: SWAP1
00000385: SWAP2
00000386: SWAP1
00000387: DUP3
00000388: SWAP1
00000389: SUB
0000038a: ADD
0000038b: DUP2
0000038c: DUP4
0000038d: DUP8
0000038e: PUSH2 0x61da
00000391: GAS
00000392: SUB
00000393: CALL
00000394: ISZERO
00000395: PUSH2 0x0002
00000398: JUMPI
00000399: POP
0000039a: POP
0000039b: PUSH1 0x01
0000039d: SLOAD
0000039e: PUSH1 0x40
000003a0: MLOAD
000003a1: PUSH1 0x01
000003a3: PUSH1 0xa0
000003a5: PUSH1 0x02
000003a7: EXP
000003a8: SUB
000003a9: SWAP2
000003aa: SWAP1
000003ab: SWAP2
000003ac: AND
000003ad: SWAP2
000003ae: POP
000003af: PUSH1 0x00
000003b1: SWAP1
000003b2: CALLVALUE
000003b3: SWAP1
000003b4: DUP3
000003b5: DUP2
000003b6: DUP2
000003b7: DUP2
000003b8: DUP6
000003b9: DUP9
000003ba: DUP4
000003bb: CALL
000003bc: POP
000003bd: POP
000003be: POP
000003bf: POP
000003c0: POP
000003c1: JUMPDEST
000003c2: POP
000003c3: POP
000003c4: POP
000003c5: JUMP
000003c6: JUMPDEST
000003c7: PUSH2 0x03cf
000003ca: CALLER
000003cb: PUSH2 0x0137
000003ce: JUMP
000003cf: JUMPDEST
000003d0: SWAP3
000003d1: POP
000003d2: DUP3
000003d3: PUSH2 0xffff
000003d6: AND
000003d7: PUSH2 0xffff
000003da: EQ
000003db: ISZERO
000003dc: PUSH2 0x042b
000003df: JUMPI
000003e0: PUSH1 0x04
000003e2: DUP1
000003e3: SLOAD
000003e4: PUSH2 0xffff
000003e7: SWAP1
000003e8: DUP2
000003e9: AND
000003ea: PUSH1 0x00
000003ec: DUP2
000003ed: DUP2
000003ee: MSTORE
000003ef: PUSH1 0x06
000003f1: PUSH1 0x20
000003f3: MSTORE
000003f4: PUSH1 0x40
000003f6: SWAP1
000003f7: KECCAK256
000003f8: DUP1
000003f9: SLOAD
000003fa: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
0000040f: NOT
00000410: AND
00000411: CALLER
00000412: OR
00000413: SWAP1
00000414: SSTORE
00000415: DUP3
00000416: SLOAD
00000417: PUSH2 0xffff
0000041a: NOT
0000041b: DUP2
0000041c: AND
0000041d: SWAP3
0000041e: AND
0000041f: PUSH1 0x01
00000421: ADD
00000422: SWAP2
00000423: SWAP1
00000424: SWAP2
00000425: OR
00000426: SWAP1
00000427: SWAP2
00000428: SSTORE
00000429: SWAP3
0000042a: POP
0000042b: JUMPDEST
0000042c: POP
0000042d: POP
0000042e: PUSH2 0xffff
00000431: DUP2
00000432: AND
00000433: PUSH1 0x00
00000435: SWAP1
00000436: DUP2
00000437: MSTORE
00000438: PUSH1 0x06
0000043a: PUSH1 0x20
0000043c: MSTORE
0000043d: PUSH1 0x40
0000043f: DUP2
00000440: KECCAK256
00000441: PUSH1 0x01
00000443: DUP2
00000444: ADD
00000445: DUP1
00000446: SLOAD
00000447: CALLVALUE
00000448: SWAP1
00000449: DUP2
0000044a: ADD
0000044b: SWAP1
0000044c: SWAP2
0000044d: SSTORE
0000044e: PUSH1 0x05
00000450: DUP1
00000451: SLOAD
00000452: SWAP1
00000453: SWAP2
00000454: ADD
00000455: SWAP1
00000456: SSTORE
00000457: SWAP1
00000458: JUMPDEST
00000459: PUSH1 0x04
0000045b: SLOAD
0000045c: PUSH2 0xffff
0000045f: SWAP1
00000460: DUP2
00000461: AND
00000462: SWAP1
00000463: DUP3
00000464: AND
00000465: LT
00000466: ISZERO
00000467: PUSH2 0x0325
0000046a: JUMPI
0000046b: PUSH1 0x05
0000046d: SLOAD
0000046e: PUSH2 0xffff
00000471: DUP3
00000472: AND
00000473: PUSH1 0x00
00000475: SWAP1
00000476: DUP2
00000477: MSTORE
00000478: PUSH1 0x06
0000047a: PUSH1 0x20
0000047c: MSTORE
0000047d: PUSH1 0x40
0000047f: SWAP1
00000480: KECCAK256
00000481: PUSH1 0x01
00000483: DUP2
00000484: ADD
00000485: SLOAD
00000486: PUSH1 0x02
00000488: SWAP2
00000489: SWAP1
0000048a: SWAP2
0000048b: ADD
0000048c: DUP1
0000048d: SLOAD
0000048e: PUSH2 0xffff
00000491: NOT
00000492: AND
00000493: PUSH2 0x2710
00000496: SWAP3
00000497: SWAP1
00000498: SWAP3
00000499: MUL
0000049a: SWAP3
0000049b: SWAP1
0000049c: SWAP3
0000049d: DIV
0000049e: OR
0000049f: SWAP1
000004a0: SSTORE
000004a1: PUSH1 0x01
000004a3: ADD
000004a4: PUSH2 0x0458
000004a7: JUMP
000004a8: JUMPDEST
000004a9: PUSH2 0xffff
000004ac: SWAP2
000004ad: POP
000004ae: JUMPDEST
000004af: POP
000004b0: SWAP2
000004b1: SWAP1
000004b2: POP
000004b3: JUMP
000004b4: JUMPDEST
000004b5: PUSH1 0x01
000004b7: ADD
000004b8: PUSH2 0x013b
000004bb: JUMP
000004bc: JUMPDEST
000004bd: PUSH1 0x01
000004bf: SLOAD
000004c0: PUSH1 0x40
000004c2: MLOAD
000004c3: PUSH1 0x01
000004c5: PUSH1 0xa0
000004c7: PUSH1 0x02
000004c9: EXP
000004ca: SUB
000004cb: SWAP2
000004cc: DUP3
000004cd: AND
000004ce: SWAP2
000004cf: PUSH1 0x00
000004d1: SWAP2
000004d2: ADDRESS
000004d3: SWAP1
000004d4: SWAP2
000004d5: AND
000004d6: BALANCE
000004d7: DUP6
000004d8: SWAP1
000004d9: SUB
000004da: SWAP1
000004db: DUP3
000004dc: DUP2
000004dd: DUP2
000004de: DUP2
000004df: DUP6
000004e0: DUP9
000004e1: DUP4
000004e2: CALL
000004e3: POP
000004e4: POP
000004e5: POP
000004e6: POP
000004e7: POP
000004e8: POP
000004e9: POP
000004ea: POP
000004eb: JUMP
000004ec: JUMPDEST
000004ed: PUSH1 0x01
000004ef: DUP1
000004f0: SLOAD
000004f1: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000506: NOT
00000507: SWAP1
00000508: DUP2
00000509: AND
0000050a: DUP10
0000050b: OR
0000050c: SWAP1
0000050d: SWAP2
0000050e: SSTORE
0000050f: PUSH1 0x02
00000511: DUP1
00000512: SLOAD
00000513: PUSH1 0x03
00000515: DUP6
00000516: SWAP1
00000517: SSTORE
00000518: SWAP1
00000519: SWAP2
0000051a: AND
0000051b: DUP8
0000051c: OR
0000051d: PUSH23 0xffff000000000000000000000000000000000000000000
00000535: NOT
00000536: AND
00000537: PUSH1 0xa8
00000539: PUSH1 0x02
0000053b: EXP
0000053c: DUP8
0000053d: MUL
0000053e: OR
0000053f: PUSH25 0xffff0000000000000000000000000000000000000000000000
00000559: NOT
0000055a: AND
0000055b: PUSH1 0xb8
0000055d: PUSH1 0x02
0000055f: EXP
00000560: DUP7
00000561: MUL
00000562: OR
00000563: PUSH27 0xffff00000000000000000000000000000000000000000000000000
0000057f: NOT
00000580: AND
00000581: PUSH1 0xc8
00000583: PUSH1 0x02
00000585: EXP
00000586: DUP6
00000587: MUL
00000588: OR
00000589: PUSH21 0xff0000000000000000000000000000000000000000
0000059f: NOT
000005a0: AND
000005a1: PUSH1 0xa0
000005a3: PUSH1 0x02
000005a5: EXP
000005a6: DUP4
000005a7: MUL
000005a8: OR
000005a9: SWAP1
000005aa: SSTORE
000005ab: JUMPDEST
000005ac: POP
000005ad: POP
000005ae: POP
000005af: POP
000005b0: POP
000005b1: POP
000005b2: POP
000005b3: JUMP
View stderr
Warning: This is a nightly build of Foundry. It is recommended to use the latest stable version. To mute this warning set `FOUNDRY_DISABLE_NIGHTLY_WARNING` in your environment.

Findings

validated = confirmed for call sinks; sink observed for others
Severity Category Tool Title Confidence Validated Confirmed Details
high other detector Untrusted CALL target/value reachable 60 no no
view
trace_id: 0x8f3907139c8520f228c8d175099779530002f094d20bf917083911f8e8828227
call_targets: 0xf87b58c64ca7dd7fc4e5a4526ee92c88e181e729
target_varies: no
classification: constant_target
validation_json
{
    "sink": "CALL",
    "errors": 0,
    "status": "sink_reached",
    "attempts": 1,
    "trace_id": "0x8f3907139c8520f228c8d175099779530002f094d20bf917083911f8e8828227",
    "confirmed": false,
    "trace_mode": "callTracer",
    "call_targets": [
        "0xf87b58c64ca7dd7fc4e5a4526ee92c88e181e729"
    ],
    "matched_probe": null,
    "target_varies": false,
    "classification": "constant_target"
}
witness_json
{
    "notes": "heuristic witness; entrypoints are best-effort selectors with zeroed calldata",
    "constraints": [],
    "entrypoints": [
        {
            "calldata": "0x08f00e31",
            "selector": "0x08f00e31",
            "calldata_variants": [
                "0x08f00e31",
                "0x08f00e310000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x0dd46804",
            "selector": "0x0dd46804",
            "calldata_variants": [
                "0x0dd46804",
                "0x0dd468040000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x693e3776",
            "selector": "0x693e3776",
            "calldata_variants": [
                "0x693e3776",
                "0x693e37760000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x730c29ef",
            "selector": "0x730c29ef",
            "calldata_variants": [
                "0x730c29ef",
                "0x730c29ef0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x8fe58eb9",
            "selector": "0x8fe58eb9",
            "calldata_variants": [
                "0x8fe58eb9",
                "0x8fe58eb90000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xbb6f0ac8",
            "selector": "0xbb6f0ac8",
            "calldata_variants": [
                "0xbb6f0ac8",
                "0xbb6f0ac80000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xeeaef8e0",
            "selector": "0xeeaef8e0",
            "calldata_variants": [
                "0xeeaef8e0",
                "0xeeaef8e00000000000000000000000000000000000000000000000000000000000000000"
            ]
        }
    ]
}
evidence_json
{
    "examples": [
        {
            "pc": 202,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        },
        {
            "pc": 645,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        },
        {
            "pc": 915,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        }
    ],
    "call_count": 5,
    "guards_detected": [],
    "untrusted_call_count": 5
}
high other detector ETH value transfer possible 55 no no
view
trace_id: 0x8f3907139c8520f228c8d175099779530002f094d20bf917083911f8e8828227
call_targets: 0xf87b58c64ca7dd7fc4e5a4526ee92c88e181e729
target_varies: no
classification: constant_target
validation_json
{
    "sink": "CALL",
    "errors": 0,
    "status": "sink_reached",
    "attempts": 1,
    "trace_id": "0x8f3907139c8520f228c8d175099779530002f094d20bf917083911f8e8828227",
    "confirmed": false,
    "trace_mode": "callTracer",
    "call_targets": [
        "0xf87b58c64ca7dd7fc4e5a4526ee92c88e181e729"
    ],
    "matched_probe": null,
    "target_varies": false,
    "classification": "constant_target"
}
witness_json
{
    "notes": "heuristic witness; entrypoints are best-effort selectors with zeroed calldata",
    "constraints": [],
    "entrypoints": [
        {
            "calldata": "0x08f00e31",
            "selector": "0x08f00e31",
            "calldata_variants": [
                "0x08f00e31",
                "0x08f00e310000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x0dd46804",
            "selector": "0x0dd46804",
            "calldata_variants": [
                "0x0dd46804",
                "0x0dd468040000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x693e3776",
            "selector": "0x693e3776",
            "calldata_variants": [
                "0x693e3776",
                "0x693e37760000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x730c29ef",
            "selector": "0x730c29ef",
            "calldata_variants": [
                "0x730c29ef",
                "0x730c29ef0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x8fe58eb9",
            "selector": "0x8fe58eb9",
            "calldata_variants": [
                "0x8fe58eb9",
                "0x8fe58eb90000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xbb6f0ac8",
            "selector": "0xbb6f0ac8",
            "calldata_variants": [
                "0xbb6f0ac8",
                "0xbb6f0ac80000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xeeaef8e0",
            "selector": "0xeeaef8e0",
            "calldata_variants": [
                "0xeeaef8e0",
                "0xeeaef8e00000000000000000000000000000000000000000000000000000000000000000"
            ]
        }
    ]
}
evidence_json
{
    "examples": [
        {
            "pc": 202,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        },
        {
            "pc": 645,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        },
        {
            "pc": 915,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        }
    ],
    "eth_value_calls": 5,
    "guards_detected": []
}