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

Analysis Run

019b3836-579c-72cd-98e0-0e0b45979f50

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
8535 artifact.fetch complete 1 / 3 4 months ago
8536 tool.cast_disasm complete 1 / 3 4 months ago
98466 analysis.bundle complete 1 / 3 2 weeks ago
98467 capability.graph complete 1 / 3 2 weeks ago
98468 detector.run complete 1 / 3 2 weeks ago
98469 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
1
CREATE2
0
CALL-family (heavy)
5
EXT*/BALANCE
0
Total opcodes
1088
Flags
selfdestruct_present
View cast disassembly output
00000000: PUSH1 0x60
00000002: PUSH1 0x40
00000004: MSTORE
00000005: CALLDATASIZE
00000006: ISZERO
00000007: PUSH2 0x00ab
0000000a: JUMPI
0000000b: PUSH1 0x00
0000000d: CALLDATALOAD
0000000e: PUSH29 0x0100000000000000000000000000000000000000000000000000000000
0000002c: SWAP1
0000002d: DIV
0000002e: DUP1
0000002f: PUSH4 0x08551a53
00000034: EQ
00000035: PUSH2 0x00b8
00000038: JUMPI
00000039: DUP1
0000003a: PUSH4 0x1a8315d5
0000003f: EQ
00000040: PUSH2 0x00f1
00000043: JUMPI
00000044: DUP1
00000045: PUSH4 0x1ae2379c
0000004a: EQ
0000004b: PUSH2 0x0114
0000004e: JUMPI
0000004f: DUP1
00000050: PUSH4 0x2d606843
00000055: EQ
00000056: PUSH2 0x0137
00000059: JUMPI
0000005a: DUP1
0000005b: PUSH4 0x41c0e1b5
00000060: EQ
00000061: PUSH2 0x0146
00000064: JUMPI
00000065: DUP1
00000066: PUSH4 0x5a3b7e42
0000006b: EQ
0000006c: PUSH2 0x0155
0000006f: JUMPI
00000070: DUP1
00000071: PUSH4 0x6d9aad2b
00000076: EQ
00000077: PUSH2 0x01d0
0000007a: JUMPI
0000007b: DUP1
0000007c: PUSH4 0x7150d8ae
00000081: EQ
00000082: PUSH2 0x01df
00000085: JUMPI
00000086: DUP1
00000087: PUSH4 0x9ed3edf0
0000008c: EQ
0000008d: PUSH2 0x0218
00000090: JUMPI
00000091: DUP1
00000092: PUSH4 0xe54a0b1c
00000097: EQ
00000098: PUSH2 0x023b
0000009b: JUMPI
0000009c: DUP1
0000009d: PUSH4 0xee97f7f3
000000a2: EQ
000000a3: PUSH2 0x024a
000000a6: JUMPI
000000a7: PUSH2 0x00ab
000000aa: JUMP
000000ab: JUMPDEST
000000ac: PUSH2 0x00b6
000000af: JUMPDEST
000000b0: PUSH2 0x0002
000000b3: JUMP
000000b4: JUMPDEST
000000b5: JUMP
000000b6: JUMPDEST
000000b7: STOP
000000b8: JUMPDEST
000000b9: PUSH2 0x00c5
000000bc: PUSH1 0x04
000000be: DUP1
000000bf: POP
000000c0: POP
000000c1: PUSH2 0x0283
000000c4: JUMP
000000c5: JUMPDEST
000000c6: PUSH1 0x40
000000c8: MLOAD
000000c9: DUP1
000000ca: DUP3
000000cb: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000000e0: AND
000000e1: DUP2
000000e2: MSTORE
000000e3: PUSH1 0x20
000000e5: ADD
000000e6: SWAP2
000000e7: POP
000000e8: POP
000000e9: PUSH1 0x40
000000eb: MLOAD
000000ec: DUP1
000000ed: SWAP2
000000ee: SUB
000000ef: SWAP1
000000f0: RETURN
000000f1: JUMPDEST
000000f2: PUSH2 0x00fe
000000f5: PUSH1 0x04
000000f7: DUP1
000000f8: POP
000000f9: POP
000000fa: PUSH2 0x02a9
000000fd: JUMP
000000fe: JUMPDEST
000000ff: PUSH1 0x40
00000101: MLOAD
00000102: DUP1
00000103: DUP3
00000104: DUP2
00000105: MSTORE
00000106: PUSH1 0x20
00000108: ADD
00000109: SWAP2
0000010a: POP
0000010b: POP
0000010c: PUSH1 0x40
0000010e: MLOAD
0000010f: DUP1
00000110: SWAP2
00000111: SUB
00000112: SWAP1
00000113: RETURN
00000114: JUMPDEST
00000115: PUSH2 0x0121
00000118: PUSH1 0x04
0000011a: DUP1
0000011b: POP
0000011c: POP
0000011d: PUSH2 0x02b2
00000120: JUMP
00000121: JUMPDEST
00000122: PUSH1 0x40
00000124: MLOAD
00000125: DUP1
00000126: DUP3
00000127: DUP2
00000128: MSTORE
00000129: PUSH1 0x20
0000012b: ADD
0000012c: SWAP2
0000012d: POP
0000012e: POP
0000012f: PUSH1 0x40
00000131: MLOAD
00000132: DUP1
00000133: SWAP2
00000134: SUB
00000135: SWAP1
00000136: RETURN
00000137: JUMPDEST
00000138: PUSH2 0x0144
0000013b: PUSH1 0x04
0000013d: DUP1
0000013e: POP
0000013f: POP
00000140: PUSH2 0x02bb
00000143: JUMP
00000144: JUMPDEST
00000145: STOP
00000146: JUMPDEST
00000147: PUSH2 0x0153
0000014a: PUSH1 0x04
0000014c: DUP1
0000014d: POP
0000014e: POP
0000014f: PUSH2 0x040f
00000152: JUMP
00000153: JUMPDEST
00000154: STOP
00000155: JUMPDEST
00000156: PUSH2 0x0162
00000159: PUSH1 0x04
0000015b: DUP1
0000015c: POP
0000015d: POP
0000015e: PUSH2 0x04a3
00000161: JUMP
00000162: JUMPDEST
00000163: PUSH1 0x40
00000165: MLOAD
00000166: DUP1
00000167: DUP1
00000168: PUSH1 0x20
0000016a: ADD
0000016b: DUP3
0000016c: DUP2
0000016d: SUB
0000016e: DUP3
0000016f: MSTORE
00000170: DUP4
00000171: DUP2
00000172: DUP2
00000173: MLOAD
00000174: DUP2
00000175: MSTORE
00000176: PUSH1 0x20
00000178: ADD
00000179: SWAP2
0000017a: POP
0000017b: DUP1
0000017c: MLOAD
0000017d: SWAP1
0000017e: PUSH1 0x20
00000180: ADD
00000181: SWAP1
00000182: DUP1
00000183: DUP4
00000184: DUP4
00000185: DUP3
00000186: SWAP1
00000187: PUSH1 0x00
00000189: PUSH1 0x04
0000018b: PUSH1 0x20
0000018d: DUP5
0000018e: PUSH1 0x1f
00000190: ADD
00000191: DIV
00000192: PUSH1 0x0f
00000194: MUL
00000195: PUSH1 0x03
00000197: ADD
00000198: CALL
00000199: POP
0000019a: SWAP1
0000019b: POP
0000019c: SWAP1
0000019d: DUP2
0000019e: ADD
0000019f: SWAP1
000001a0: PUSH1 0x1f
000001a2: AND
000001a3: DUP1
000001a4: ISZERO
000001a5: PUSH2 0x01c2
000001a8: JUMPI
000001a9: DUP1
000001aa: DUP3
000001ab: SUB
000001ac: DUP1
000001ad: MLOAD
000001ae: PUSH1 0x01
000001b0: DUP4
000001b1: PUSH1 0x20
000001b3: SUB
000001b4: PUSH2 0x0100
000001b7: EXP
000001b8: SUB
000001b9: NOT
000001ba: AND
000001bb: DUP2
000001bc: MSTORE
000001bd: PUSH1 0x20
000001bf: ADD
000001c0: SWAP2
000001c1: POP
000001c2: JUMPDEST
000001c3: POP
000001c4: SWAP3
000001c5: POP
000001c6: POP
000001c7: POP
000001c8: PUSH1 0x40
000001ca: MLOAD
000001cb: DUP1
000001cc: SWAP2
000001cd: SUB
000001ce: SWAP1
000001cf: RETURN
000001d0: JUMPDEST
000001d1: PUSH2 0x01dd
000001d4: PUSH1 0x04
000001d6: DUP1
000001d7: POP
000001d8: POP
000001d9: PUSH2 0x0544
000001dc: JUMP
000001dd: JUMPDEST
000001de: STOP
000001df: JUMPDEST
000001e0: PUSH2 0x01ec
000001e3: PUSH1 0x04
000001e5: DUP1
000001e6: POP
000001e7: POP
000001e8: PUSH2 0x0698
000001eb: JUMP
000001ec: JUMPDEST
000001ed: PUSH1 0x40
000001ef: MLOAD
000001f0: DUP1
000001f1: DUP3
000001f2: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000207: AND
00000208: DUP2
00000209: MSTORE
0000020a: PUSH1 0x20
0000020c: ADD
0000020d: SWAP2
0000020e: POP
0000020f: POP
00000210: PUSH1 0x40
00000212: MLOAD
00000213: DUP1
00000214: SWAP2
00000215: SUB
00000216: SWAP1
00000217: RETURN
00000218: JUMPDEST
00000219: PUSH2 0x0225
0000021c: PUSH1 0x04
0000021e: DUP1
0000021f: POP
00000220: POP
00000221: PUSH2 0x06be
00000224: JUMP
00000225: JUMPDEST
00000226: PUSH1 0x40
00000228: MLOAD
00000229: DUP1
0000022a: DUP3
0000022b: DUP2
0000022c: MSTORE
0000022d: PUSH1 0x20
0000022f: ADD
00000230: SWAP2
00000231: POP
00000232: POP
00000233: PUSH1 0x40
00000235: MLOAD
00000236: DUP1
00000237: SWAP2
00000238: SUB
00000239: SWAP1
0000023a: RETURN
0000023b: JUMPDEST
0000023c: PUSH2 0x0248
0000023f: PUSH1 0x04
00000241: DUP1
00000242: POP
00000243: POP
00000244: PUSH2 0x06c7
00000247: JUMP
00000248: JUMPDEST
00000249: STOP
0000024a: JUMPDEST
0000024b: PUSH2 0x0257
0000024e: PUSH1 0x04
00000250: DUP1
00000251: POP
00000252: POP
00000253: PUSH2 0x0855
00000256: JUMP
00000257: JUMPDEST
00000258: PUSH1 0x40
0000025a: MLOAD
0000025b: DUP1
0000025c: DUP3
0000025d: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000272: AND
00000273: DUP2
00000274: MSTORE
00000275: PUSH1 0x20
00000277: ADD
00000278: SWAP2
00000279: POP
0000027a: POP
0000027b: PUSH1 0x40
0000027d: MLOAD
0000027e: DUP1
0000027f: SWAP2
00000280: SUB
00000281: SWAP1
00000282: RETURN
00000283: JUMPDEST
00000284: PUSH1 0x05
00000286: PUSH1 0x00
00000288: SWAP1
00000289: SLOAD
0000028a: SWAP1
0000028b: PUSH2 0x0100
0000028e: EXP
0000028f: SWAP1
00000290: DIV
00000291: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000002a6: AND
000002a7: DUP2
000002a8: JUMP
000002a9: JUMPDEST
000002aa: PUSH1 0x02
000002ac: PUSH1 0x00
000002ae: POP
000002af: SLOAD
000002b0: DUP2
000002b1: JUMP
000002b2: JUMPDEST
000002b3: PUSH1 0x03
000002b5: PUSH1 0x00
000002b7: POP
000002b8: SLOAD
000002b9: DUP2
000002ba: JUMP
000002bb: JUMPDEST
000002bc: PUSH1 0x02
000002be: PUSH1 0x06
000002c0: PUSH1 0x14
000002c2: SWAP1
000002c3: SLOAD
000002c4: SWAP1
000002c5: PUSH2 0x0100
000002c8: EXP
000002c9: SWAP1
000002ca: DIV
000002cb: PUSH1 0xff
000002cd: AND
000002ce: EQ
000002cf: ISZERO
000002d0: ISZERO
000002d1: PUSH2 0x02d9
000002d4: JUMPI
000002d5: PUSH2 0x0002
000002d8: JUMP
000002d9: JUMPDEST
000002da: PUSH1 0x05
000002dc: PUSH1 0x00
000002de: SWAP1
000002df: SLOAD
000002e0: SWAP1
000002e1: PUSH2 0x0100
000002e4: EXP
000002e5: SWAP1
000002e6: DIV
000002e7: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000002fc: AND
000002fd: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000312: AND
00000313: CALLER
00000314: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000329: AND
0000032a: EQ
0000032b: ISZERO
0000032c: DUP1
0000032d: ISZERO
0000032e: PUSH2 0x0385
00000331: JUMPI
00000332: POP
00000333: PUSH1 0x04
00000335: PUSH1 0x00
00000337: SWAP1
00000338: SLOAD
00000339: SWAP1
0000033a: PUSH2 0x0100
0000033d: EXP
0000033e: SWAP1
0000033f: DIV
00000340: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000355: AND
00000356: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
0000036b: AND
0000036c: CALLER
0000036d: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000382: AND
00000383: EQ
00000384: ISZERO
00000385: JUMPDEST
00000386: ISZERO
00000387: PUSH2 0x038f
0000038a: JUMPI
0000038b: PUSH2 0x0002
0000038e: JUMP
0000038f: JUMPDEST
00000390: PUSH1 0x06
00000392: PUSH1 0x00
00000394: SWAP1
00000395: SLOAD
00000396: SWAP1
00000397: PUSH2 0x0100
0000039a: EXP
0000039b: SWAP1
0000039c: DIV
0000039d: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000003b2: AND
000003b3: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000003c8: AND
000003c9: PUSH1 0x00
000003cb: PUSH1 0x02
000003cd: PUSH1 0x00
000003cf: POP
000003d0: SLOAD
000003d1: PUSH1 0x40
000003d3: MLOAD
000003d4: DUP1
000003d5: SWAP1
000003d6: POP
000003d7: PUSH1 0x00
000003d9: PUSH1 0x40
000003db: MLOAD
000003dc: DUP1
000003dd: DUP4
000003de: SUB
000003df: DUP2
000003e0: DUP6
000003e1: DUP9
000003e2: DUP9
000003e3: CALL
000003e4: SWAP4
000003e5: POP
000003e6: POP
000003e7: POP
000003e8: POP
000003e9: ISZERO
000003ea: ISZERO
000003eb: PUSH2 0x03f3
000003ee: JUMPI
000003ef: PUSH2 0x0002
000003f2: JUMP
000003f3: JUMPDEST
000003f4: PUSH1 0x04
000003f6: PUSH1 0x06
000003f8: PUSH1 0x14
000003fa: PUSH2 0x0100
000003fd: EXP
000003fe: DUP2
000003ff: SLOAD
00000400: DUP2
00000401: PUSH1 0xff
00000403: MUL
00000404: NOT
00000405: AND
00000406: SWAP1
00000407: DUP4
00000408: MUL
00000409: OR
0000040a: SWAP1
0000040b: SSTORE
0000040c: POP
0000040d: JUMPDEST
0000040e: JUMP
0000040f: JUMPDEST
00000410: PUSH1 0x04
00000412: PUSH1 0x00
00000414: SWAP1
00000415: SLOAD
00000416: SWAP1
00000417: PUSH2 0x0100
0000041a: EXP
0000041b: SWAP1
0000041c: DIV
0000041d: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000432: AND
00000433: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000448: AND
00000449: CALLER
0000044a: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
0000045f: AND
00000460: EQ
00000461: ISZERO
00000462: PUSH2 0x04a0
00000465: JUMPI
00000466: PUSH1 0x04
00000468: PUSH1 0x00
0000046a: SWAP1
0000046b: SLOAD
0000046c: SWAP1
0000046d: PUSH2 0x0100
00000470: EXP
00000471: SWAP1
00000472: DIV
00000473: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000488: AND
00000489: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
0000049e: AND
0000049f: SELFDESTRUCT
000004a0: JUMPDEST
000004a1: JUMPDEST
000004a2: JUMP
000004a3: JUMPDEST
000004a4: PUSH1 0x00
000004a6: PUSH1 0x00
000004a8: POP
000004a9: DUP1
000004aa: SLOAD
000004ab: PUSH1 0x01
000004ad: DUP2
000004ae: PUSH1 0x01
000004b0: AND
000004b1: ISZERO
000004b2: PUSH2 0x0100
000004b5: MUL
000004b6: SUB
000004b7: AND
000004b8: PUSH1 0x02
000004ba: SWAP1
000004bb: DIV
000004bc: DUP1
000004bd: PUSH1 0x1f
000004bf: ADD
000004c0: PUSH1 0x20
000004c2: DUP1
000004c3: SWAP2
000004c4: DIV
000004c5: MUL
000004c6: PUSH1 0x20
000004c8: ADD
000004c9: PUSH1 0x40
000004cb: MLOAD
000004cc: SWAP1
000004cd: DUP2
000004ce: ADD
000004cf: PUSH1 0x40
000004d1: MSTORE
000004d2: DUP1
000004d3: SWAP3
000004d4: SWAP2
000004d5: SWAP1
000004d6: DUP2
000004d7: DUP2
000004d8: MSTORE
000004d9: PUSH1 0x20
000004db: ADD
000004dc: DUP3
000004dd: DUP1
000004de: SLOAD
000004df: PUSH1 0x01
000004e1: DUP2
000004e2: PUSH1 0x01
000004e4: AND
000004e5: ISZERO
000004e6: PUSH2 0x0100
000004e9: MUL
000004ea: SUB
000004eb: AND
000004ec: PUSH1 0x02
000004ee: SWAP1
000004ef: DIV
000004f0: DUP1
000004f1: ISZERO
000004f2: PUSH2 0x053c
000004f5: JUMPI
000004f6: DUP1
000004f7: PUSH1 0x1f
000004f9: LT
000004fa: PUSH2 0x0511
000004fd: JUMPI
000004fe: PUSH2 0x0100
00000501: DUP1
00000502: DUP4
00000503: SLOAD
00000504: DIV
00000505: MUL
00000506: DUP4
00000507: MSTORE
00000508: SWAP2
00000509: PUSH1 0x20
0000050b: ADD
0000050c: SWAP2
0000050d: PUSH2 0x053c
00000510: JUMP
00000511: JUMPDEST
00000512: DUP3
00000513: ADD
00000514: SWAP2
00000515: SWAP1
00000516: PUSH1 0x00
00000518: MSTORE
00000519: PUSH1 0x20
0000051b: PUSH1 0x00
0000051d: KECCAK256
0000051e: SWAP1
0000051f: JUMPDEST
00000520: DUP2
00000521: SLOAD
00000522: DUP2
00000523: MSTORE
00000524: SWAP1
00000525: PUSH1 0x01
00000527: ADD
00000528: SWAP1
00000529: PUSH1 0x20
0000052b: ADD
0000052c: DUP1
0000052d: DUP4
0000052e: GT
0000052f: PUSH2 0x051f
00000532: JUMPI
00000533: DUP3
00000534: SWAP1
00000535: SUB
00000536: PUSH1 0x1f
00000538: AND
00000539: DUP3
0000053a: ADD
0000053b: SWAP2
0000053c: JUMPDEST
0000053d: POP
0000053e: POP
0000053f: POP
00000540: POP
00000541: POP
00000542: DUP2
00000543: JUMP
00000544: JUMPDEST
00000545: PUSH1 0x02
00000547: PUSH1 0x06
00000549: PUSH1 0x14
0000054b: SWAP1
0000054c: SLOAD
0000054d: SWAP1
0000054e: PUSH2 0x0100
00000551: EXP
00000552: SWAP1
00000553: DIV
00000554: PUSH1 0xff
00000556: AND
00000557: EQ
00000558: ISZERO
00000559: ISZERO
0000055a: PUSH2 0x0562
0000055d: JUMPI
0000055e: PUSH2 0x0002
00000561: JUMP
00000562: JUMPDEST
00000563: PUSH1 0x06
00000565: PUSH1 0x00
00000567: SWAP1
00000568: SLOAD
00000569: SWAP1
0000056a: PUSH2 0x0100
0000056d: EXP
0000056e: SWAP1
0000056f: DIV
00000570: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000585: AND
00000586: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
0000059b: AND
0000059c: CALLER
0000059d: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000005b2: AND
000005b3: EQ
000005b4: ISZERO
000005b5: DUP1
000005b6: ISZERO
000005b7: PUSH2 0x060e
000005ba: JUMPI
000005bb: POP
000005bc: PUSH1 0x04
000005be: PUSH1 0x00
000005c0: SWAP1
000005c1: SLOAD
000005c2: SWAP1
000005c3: PUSH2 0x0100
000005c6: EXP
000005c7: SWAP1
000005c8: DIV
000005c9: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000005de: AND
000005df: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000005f4: AND
000005f5: CALLER
000005f6: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
0000060b: AND
0000060c: EQ
0000060d: ISZERO
0000060e: JUMPDEST
0000060f: ISZERO
00000610: PUSH2 0x0618
00000613: JUMPI
00000614: PUSH2 0x0002
00000617: JUMP
00000618: JUMPDEST
00000619: PUSH1 0x05
0000061b: PUSH1 0x00
0000061d: SWAP1
0000061e: SLOAD
0000061f: SWAP1
00000620: PUSH2 0x0100
00000623: EXP
00000624: SWAP1
00000625: DIV
00000626: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
0000063b: AND
0000063c: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000651: AND
00000652: PUSH1 0x00
00000654: PUSH1 0x02
00000656: PUSH1 0x00
00000658: POP
00000659: SLOAD
0000065a: PUSH1 0x40
0000065c: MLOAD
0000065d: DUP1
0000065e: SWAP1
0000065f: POP
00000660: PUSH1 0x00
00000662: PUSH1 0x40
00000664: MLOAD
00000665: DUP1
00000666: DUP4
00000667: SUB
00000668: DUP2
00000669: DUP6
0000066a: DUP9
0000066b: DUP9
0000066c: CALL
0000066d: SWAP4
0000066e: POP
0000066f: POP
00000670: POP
00000671: POP
00000672: ISZERO
00000673: ISZERO
00000674: PUSH2 0x067c
00000677: JUMPI
00000678: PUSH2 0x0002
0000067b: JUMP
0000067c: JUMPDEST
0000067d: PUSH1 0x03
0000067f: PUSH1 0x06
00000681: PUSH1 0x14
00000683: PUSH2 0x0100
00000686: EXP
00000687: DUP2
00000688: SLOAD
00000689: DUP2
0000068a: PUSH1 0xff
0000068c: MUL
0000068d: NOT
0000068e: AND
0000068f: SWAP1
00000690: DUP4
00000691: MUL
00000692: OR
00000693: SWAP1
00000694: SSTORE
00000695: POP
00000696: JUMPDEST
00000697: JUMP
00000698: JUMPDEST
00000699: PUSH1 0x06
0000069b: PUSH1 0x00
0000069d: SWAP1
0000069e: SLOAD
0000069f: SWAP1
000006a0: PUSH2 0x0100
000006a3: EXP
000006a4: SWAP1
000006a5: DIV
000006a6: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000006bb: AND
000006bc: DUP2
000006bd: JUMP
000006be: JUMPDEST
000006bf: PUSH1 0x01
000006c1: PUSH1 0x00
000006c3: POP
000006c4: SLOAD
000006c5: DUP2
000006c6: JUMP
000006c7: JUMPDEST
000006c8: PUSH1 0x01
000006ca: PUSH1 0x06
000006cc: PUSH1 0x14
000006ce: SWAP1
000006cf: SLOAD
000006d0: SWAP1
000006d1: PUSH2 0x0100
000006d4: EXP
000006d5: SWAP1
000006d6: DIV
000006d7: PUSH1 0xff
000006d9: AND
000006da: EQ
000006db: ISZERO
000006dc: ISZERO
000006dd: PUSH2 0x06e5
000006e0: JUMPI
000006e1: PUSH2 0x0002
000006e4: JUMP
000006e5: JUMPDEST
000006e6: PUSH1 0x06
000006e8: PUSH1 0x00
000006ea: SWAP1
000006eb: SLOAD
000006ec: SWAP1
000006ed: PUSH2 0x0100
000006f0: EXP
000006f1: SWAP1
000006f2: DIV
000006f3: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000708: AND
00000709: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
0000071e: AND
0000071f: CALLER
00000720: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000735: AND
00000736: EQ
00000737: ISZERO
00000738: ISZERO
00000739: PUSH2 0x0741
0000073c: JUMPI
0000073d: PUSH2 0x0002
00000740: JUMP
00000741: JUMPDEST
00000742: PUSH1 0x01
00000744: PUSH1 0x00
00000746: POP
00000747: SLOAD
00000748: CALLVALUE
00000749: LT
0000074a: ISZERO
0000074b: PUSH2 0x0753
0000074e: JUMPI
0000074f: PUSH2 0x0002
00000752: JUMP
00000753: JUMPDEST
00000754: PUSH1 0x02
00000756: PUSH1 0x00
00000758: POP
00000759: SLOAD
0000075a: PUSH1 0x01
0000075c: PUSH1 0x00
0000075e: POP
0000075f: SLOAD
00000760: CALLVALUE
00000761: SUB
00000762: LT
00000763: ISZERO
00000764: PUSH2 0x076c
00000767: JUMPI
00000768: PUSH2 0x0002
0000076b: JUMP
0000076c: JUMPDEST
0000076d: PUSH1 0x04
0000076f: PUSH1 0x00
00000771: SWAP1
00000772: SLOAD
00000773: SWAP1
00000774: PUSH2 0x0100
00000777: EXP
00000778: SWAP1
00000779: DIV
0000077a: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
0000078f: AND
00000790: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000007a5: AND
000007a6: PUSH1 0x00
000007a8: PUSH1 0x01
000007aa: PUSH1 0x00
000007ac: POP
000007ad: SLOAD
000007ae: PUSH1 0x40
000007b0: MLOAD
000007b1: DUP1
000007b2: SWAP1
000007b3: POP
000007b4: PUSH1 0x00
000007b6: PUSH1 0x40
000007b8: MLOAD
000007b9: DUP1
000007ba: DUP4
000007bb: SUB
000007bc: DUP2
000007bd: DUP6
000007be: DUP9
000007bf: DUP9
000007c0: CALL
000007c1: SWAP4
000007c2: POP
000007c3: POP
000007c4: POP
000007c5: POP
000007c6: ISZERO
000007c7: ISZERO
000007c8: PUSH2 0x07d0
000007cb: JUMPI
000007cc: PUSH2 0x0002
000007cf: JUMP
000007d0: JUMPDEST
000007d1: PUSH1 0x02
000007d3: PUSH1 0x00
000007d5: POP
000007d6: SLOAD
000007d7: PUSH1 0x01
000007d9: PUSH1 0x00
000007db: POP
000007dc: SLOAD
000007dd: CALLVALUE
000007de: SUB
000007df: SUB
000007e0: PUSH1 0x03
000007e2: PUSH1 0x00
000007e4: POP
000007e5: DUP2
000007e6: SWAP1
000007e7: SSTORE
000007e8: POP
000007e9: PUSH1 0x00
000007eb: PUSH1 0x03
000007ed: PUSH1 0x00
000007ef: POP
000007f0: SLOAD
000007f1: GT
000007f2: ISZERO
000007f3: PUSH2 0x0839
000007f6: JUMPI
000007f7: CALLER
000007f8: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
0000080d: AND
0000080e: PUSH1 0x00
00000810: PUSH1 0x03
00000812: PUSH1 0x00
00000814: POP
00000815: SLOAD
00000816: PUSH1 0x40
00000818: MLOAD
00000819: DUP1
0000081a: SWAP1
0000081b: POP
0000081c: PUSH1 0x00
0000081e: PUSH1 0x40
00000820: MLOAD
00000821: DUP1
00000822: DUP4
00000823: SUB
00000824: DUP2
00000825: DUP6
00000826: DUP9
00000827: DUP9
00000828: CALL
00000829: SWAP4
0000082a: POP
0000082b: POP
0000082c: POP
0000082d: POP
0000082e: ISZERO
0000082f: ISZERO
00000830: PUSH2 0x0838
00000833: JUMPI
00000834: PUSH2 0x0002
00000837: JUMP
00000838: JUMPDEST
00000839: JUMPDEST
0000083a: PUSH1 0x02
0000083c: PUSH1 0x06
0000083e: PUSH1 0x14
00000840: PUSH2 0x0100
00000843: EXP
00000844: DUP2
00000845: SLOAD
00000846: DUP2
00000847: PUSH1 0xff
00000849: MUL
0000084a: NOT
0000084b: AND
0000084c: SWAP1
0000084d: DUP4
0000084e: MUL
0000084f: OR
00000850: SWAP1
00000851: SSTORE
00000852: POP
00000853: JUMPDEST
00000854: JUMP
00000855: JUMPDEST
00000856: PUSH1 0x04
00000858: PUSH1 0x00
0000085a: SWAP1
0000085b: SLOAD
0000085c: SWAP1
0000085d: PUSH2 0x0100
00000860: EXP
00000861: SWAP1
00000862: DIV
00000863: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000878: AND
00000879: DUP2
0000087a: 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
medium other detector Untrusted CALL target/value reachable 45 no no
view
trace_id: 0xae39d7fb20578586db24322c40e7c2e377434d1e7321b9053d82b82cbe170983
call_targets: 0xf9bbd346cf49bbddc2b13ea3fd04fded5a795f0a
target_varies: no
classification: constant_target
validation_json
{
    "sink": "CALL",
    "errors": 0,
    "status": "sink_reached",
    "attempts": 1,
    "trace_id": "0xae39d7fb20578586db24322c40e7c2e377434d1e7321b9053d82b82cbe170983",
    "confirmed": false,
    "trace_mode": "callTracer",
    "call_targets": [
        "0xf9bbd346cf49bbddc2b13ea3fd04fded5a795f0a"
    ],
    "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": "0x08551a53",
            "selector": "0x08551a53",
            "calldata_variants": [
                "0x08551a53",
                "0x08551a530000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x1a8315d5",
            "selector": "0x1a8315d5",
            "calldata_variants": [
                "0x1a8315d5",
                "0x1a8315d50000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x1ae2379c",
            "selector": "0x1ae2379c",
            "calldata_variants": [
                "0x1ae2379c",
                "0x1ae2379c0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x2d606843",
            "selector": "0x2d606843",
            "calldata_variants": [
                "0x2d606843",
                "0x2d6068430000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x41c0e1b5",
            "selector": "0x41c0e1b5",
            "calldata_variants": [
                "0x41c0e1b5",
                "0x41c0e1b50000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x5a3b7e42",
            "selector": "0x5a3b7e42",
            "calldata_variants": [
                "0x5a3b7e42",
                "0x5a3b7e420000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x6d9aad2b",
            "selector": "0x6d9aad2b",
            "calldata_variants": [
                "0x6d9aad2b",
                "0x6d9aad2b0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x7150d8ae",
            "selector": "0x7150d8ae",
            "calldata_variants": [
                "0x7150d8ae",
                "0x7150d8ae0000000000000000000000000000000000000000000000000000000000000000"
            ]
        }
    ]
}
evidence_json
{
    "examples": [
        {
            "pc": 408,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        },
        {
            "pc": 995,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        },
        {
            "pc": 1644,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        }
    ],
    "call_count": 5,
    "guards_detected": [
        {
            "pc": 787,
            "type": "msg_sender_eq_const",
            "value": "0xffffffffffffffffffffffffffffffffffffffff"
        },
        {
            "pc": 876,
            "type": "msg_sender_eq_const",
            "value": "0xffffffffffffffffffffffffffffffffffffffff"
        },
        {
            "pc": 1097,
            "type": "msg_sender_eq_const",
            "value": "0xffffffffffffffffffffffffffffffffffffffff"
        },
        {
            "pc": 1436,
            "type": "msg_sender_eq_const",
            "value": "0xffffffffffffffffffffffffffffffffffffffff"
        },
        {
            "pc": 1525,
            "type": "msg_sender_eq_const",
            "value": "0xffffffffffffffffffffffffffffffffffffffff"
        },
        {
            "pc": 1823,
            "type": "msg_sender_eq_const",
            "value": "0xffffffffffffffffffffffffffffffffffffffff"
        }
    ],
    "untrusted_call_count": 5
}
medium other detector ETH value transfer possible 40 no no
view
trace_id: 0xae39d7fb20578586db24322c40e7c2e377434d1e7321b9053d82b82cbe170983
call_targets: 0xf9bbd346cf49bbddc2b13ea3fd04fded5a795f0a
target_varies: no
classification: constant_target
validation_json
{
    "sink": "CALL",
    "errors": 0,
    "status": "sink_reached",
    "attempts": 1,
    "trace_id": "0xae39d7fb20578586db24322c40e7c2e377434d1e7321b9053d82b82cbe170983",
    "confirmed": false,
    "trace_mode": "callTracer",
    "call_targets": [
        "0xf9bbd346cf49bbddc2b13ea3fd04fded5a795f0a"
    ],
    "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": "0x08551a53",
            "selector": "0x08551a53",
            "calldata_variants": [
                "0x08551a53",
                "0x08551a530000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x1a8315d5",
            "selector": "0x1a8315d5",
            "calldata_variants": [
                "0x1a8315d5",
                "0x1a8315d50000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x1ae2379c",
            "selector": "0x1ae2379c",
            "calldata_variants": [
                "0x1ae2379c",
                "0x1ae2379c0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x2d606843",
            "selector": "0x2d606843",
            "calldata_variants": [
                "0x2d606843",
                "0x2d6068430000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x41c0e1b5",
            "selector": "0x41c0e1b5",
            "calldata_variants": [
                "0x41c0e1b5",
                "0x41c0e1b50000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x5a3b7e42",
            "selector": "0x5a3b7e42",
            "calldata_variants": [
                "0x5a3b7e42",
                "0x5a3b7e420000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x6d9aad2b",
            "selector": "0x6d9aad2b",
            "calldata_variants": [
                "0x6d9aad2b",
                "0x6d9aad2b0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x7150d8ae",
            "selector": "0x7150d8ae",
            "calldata_variants": [
                "0x7150d8ae",
                "0x7150d8ae0000000000000000000000000000000000000000000000000000000000000000"
            ]
        }
    ]
}
evidence_json
{
    "examples": [
        {
            "pc": 408,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        },
        {
            "pc": 995,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        },
        {
            "pc": 1644,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        }
    ],
    "eth_value_calls": 5,
    "guards_detected": [
        {
            "pc": 787,
            "type": "msg_sender_eq_const",
            "value": "0xffffffffffffffffffffffffffffffffffffffff"
        },
        {
            "pc": 876,
            "type": "msg_sender_eq_const",
            "value": "0xffffffffffffffffffffffffffffffffffffffff"
        },
        {
            "pc": 1097,
            "type": "msg_sender_eq_const",
            "value": "0xffffffffffffffffffffffffffffffffffffffff"
        },
        {
            "pc": 1436,
            "type": "msg_sender_eq_const",
            "value": "0xffffffffffffffffffffffffffffffffffffffff"
        },
        {
            "pc": 1525,
            "type": "msg_sender_eq_const",
            "value": "0xffffffffffffffffffffffffffffffffffffffff"
        },
        {
            "pc": 1823,
            "type": "msg_sender_eq_const",
            "value": "0xffffffffffffffffffffffffffffffffffffffff"
        }
    ]
}
medium other detector SELFDESTRUCT reachable 45 no no
view
trace_id: 0x7ba6fbd1c418828025f54d534d814f71f7a4386cf05bb6ed50de5ed7ab738157
validation_json
{
    "sink": "SELFDESTRUCT",
    "errors": 0,
    "status": "unknown",
    "attempts": 22,
    "trace_id": "0x7ba6fbd1c418828025f54d534d814f71f7a4386cf05bb6ed50de5ed7ab738157",
    "confirmed": false,
    "trace_mode": "structLogs",
    "call_targets": null,
    "matched_probe": null,
    "target_varies": null,
    "classification": "no_sink"
}
witness_json
{
    "notes": "heuristic witness; entrypoints are best-effort selectors with zeroed calldata",
    "constraints": [],
    "entrypoints": [
        {
            "calldata": "0x08551a53",
            "selector": "0x08551a53",
            "calldata_variants": [
                "0x08551a53",
                "0x08551a530000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x1a8315d5",
            "selector": "0x1a8315d5",
            "calldata_variants": [
                "0x1a8315d5",
                "0x1a8315d50000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x1ae2379c",
            "selector": "0x1ae2379c",
            "calldata_variants": [
                "0x1ae2379c",
                "0x1ae2379c0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x2d606843",
            "selector": "0x2d606843",
            "calldata_variants": [
                "0x2d606843",
                "0x2d6068430000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x41c0e1b5",
            "selector": "0x41c0e1b5",
            "calldata_variants": [
                "0x41c0e1b5",
                "0x41c0e1b50000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x5a3b7e42",
            "selector": "0x5a3b7e42",
            "calldata_variants": [
                "0x5a3b7e42",
                "0x5a3b7e420000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x6d9aad2b",
            "selector": "0x6d9aad2b",
            "calldata_variants": [
                "0x6d9aad2b",
                "0x6d9aad2b0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x7150d8ae",
            "selector": "0x7150d8ae",
            "calldata_variants": [
                "0x7150d8ae",
                "0x7150d8ae0000000000000000000000000000000000000000000000000000000000000000"
            ]
        }
    ]
}
evidence_json
{
    "guards_detected": [
        {
            "pc": 787,
            "type": "msg_sender_eq_const",
            "value": "0xffffffffffffffffffffffffffffffffffffffff"
        },
        {
            "pc": 876,
            "type": "msg_sender_eq_const",
            "value": "0xffffffffffffffffffffffffffffffffffffffff"
        },
        {
            "pc": 1097,
            "type": "msg_sender_eq_const",
            "value": "0xffffffffffffffffffffffffffffffffffffffff"
        },
        {
            "pc": 1436,
            "type": "msg_sender_eq_const",
            "value": "0xffffffffffffffffffffffffffffffffffffffff"
        },
        {
            "pc": 1525,
            "type": "msg_sender_eq_const",
            "value": "0xffffffffffffffffffffffffffffffffffffffff"
        },
        {
            "pc": 1823,
            "type": "msg_sender_eq_const",
            "value": "0xffffffffffffffffffffffffffffffffffffffff"
        }
    ],
    "selfdestruct_count": 1
}