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

Analysis Run

019b3844-8fe9-7246-a9ad-283c4a7cf3ac

complete
Chain ID
1
Address
Block Number
Created
Fri, Dec 19, 2025 8:19 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 DELEGATECALL target 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
12513 artifact.fetch complete 1 / 3 3 months ago
12514 tool.cast_disasm complete 1 / 3 3 months ago
84756 analysis.bundle complete 1 / 3 1 week ago
84757 capability.graph complete 1 / 3 1 week ago
84758 detector.run complete 1 / 3 1 week ago
84759 validation.fork complete 1 / 3 1 week 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
1
Selfdestruct
0
CREATE2
1
CALL-family (heavy)
1
EXT*/BALANCE
1
Total opcodes
1282
Flags
delegatecall_present create_opcodes_present
View cast disassembly output
00000000: PUSH1 0x80
00000002: PUSH1 0x40
00000004: MSTORE
00000005: PUSH1 0x04
00000007: CALLDATASIZE
00000008: LT
00000009: PUSH2 0x0082
0000000c: JUMPI
0000000d: PUSH4 0xffffffff
00000012: PUSH29 0x0100000000000000000000000000000000000000000000000000000000
00000030: PUSH1 0x00
00000032: CALLDATALOAD
00000033: DIV
00000034: AND
00000035: PUSH4 0x025313a2
0000003a: DUP2
0000003b: EQ
0000003c: PUSH2 0x00ff
0000003f: JUMPI
00000040: DUP1
00000041: PUSH4 0x54fd4d50
00000046: EQ
00000047: PUSH2 0x0130
0000004a: JUMPI
0000004b: DUP1
0000004c: PUSH4 0x5a8b1a9f
00000051: EQ
00000052: PUSH2 0x01ba
00000055: JUMPI
00000056: DUP1
00000057: PUSH4 0x5c60da1b
0000005c: EQ
0000005d: PUSH2 0x0220
00000060: JUMPI
00000061: DUP1
00000062: PUSH4 0x6fde8202
00000067: EQ
00000068: PUSH2 0x0235
0000006b: JUMPI
0000006c: DUP1
0000006d: PUSH4 0x958a41dd
00000072: EQ
00000073: PUSH2 0x024a
00000076: JUMPI
00000077: DUP1
00000078: PUSH4 0xf1739cae
0000007d: EQ
0000007e: PUSH2 0x02e3
00000081: JUMPI
00000082: JUMPDEST
00000083: PUSH1 0x00
00000085: PUSH1 0x60
00000087: PUSH2 0x008e
0000008a: PUSH2 0x0304
0000008d: JUMP
0000008e: JUMPDEST
0000008f: SWAP2
00000090: POP
00000091: PUSH1 0x01
00000093: PUSH1 0xa0
00000095: PUSH1 0x02
00000097: EXP
00000098: SUB
00000099: DUP3
0000009a: AND
0000009b: ISZERO
0000009c: ISZERO
0000009d: PUSH2 0x00a5
000000a0: JUMPI
000000a1: PUSH1 0x00
000000a3: DUP1
000000a4: REVERT
000000a5: JUMPDEST
000000a6: PUSH1 0x00
000000a8: CALLDATASIZE
000000a9: DUP1
000000aa: DUP1
000000ab: PUSH1 0x1f
000000ad: ADD
000000ae: PUSH1 0x20
000000b0: DUP1
000000b1: SWAP2
000000b2: DIV
000000b3: MUL
000000b4: PUSH1 0x20
000000b6: ADD
000000b7: PUSH1 0x40
000000b9: MLOAD
000000ba: SWAP1
000000bb: DUP2
000000bc: ADD
000000bd: PUSH1 0x40
000000bf: MSTORE
000000c0: DUP1
000000c1: SWAP4
000000c2: SWAP3
000000c3: SWAP2
000000c4: SWAP1
000000c5: DUP2
000000c6: DUP2
000000c7: MSTORE
000000c8: PUSH1 0x20
000000ca: ADD
000000cb: DUP4
000000cc: DUP4
000000cd: DUP1
000000ce: DUP3
000000cf: DUP5
000000d0: CALLDATACOPY
000000d1: DUP3
000000d2: ADD
000000d3: SWAP2
000000d4: POP
000000d5: POP
000000d6: POP
000000d7: POP
000000d8: POP
000000d9: POP
000000da: SWAP1
000000db: POP
000000dc: PUSH1 0x00
000000de: DUP1
000000df: DUP3
000000e0: MLOAD
000000e1: PUSH1 0x20
000000e3: DUP5
000000e4: ADD
000000e5: DUP6
000000e6: GAS
000000e7: DELEGATECALL
000000e8: RETURNDATASIZE
000000e9: PUSH1 0x40
000000eb: MLOAD
000000ec: DUP2
000000ed: PUSH1 0x00
000000ef: DUP3
000000f0: RETURNDATACOPY
000000f1: DUP3
000000f2: DUP1
000000f3: ISZERO
000000f4: PUSH2 0x00fb
000000f7: JUMPI
000000f8: DUP3
000000f9: DUP3
000000fa: RETURN
000000fb: JUMPDEST
000000fc: DUP3
000000fd: DUP3
000000fe: REVERT
000000ff: JUMPDEST
00000100: CALLVALUE
00000101: DUP1
00000102: ISZERO
00000103: PUSH2 0x010b
00000106: JUMPI
00000107: PUSH1 0x00
00000109: DUP1
0000010a: REVERT
0000010b: JUMPDEST
0000010c: POP
0000010d: PUSH2 0x0114
00000110: PUSH2 0x0314
00000113: JUMP
00000114: JUMPDEST
00000115: PUSH1 0x40
00000117: DUP1
00000118: MLOAD
00000119: PUSH1 0x01
0000011b: PUSH1 0xa0
0000011d: PUSH1 0x02
0000011f: EXP
00000120: SUB
00000121: SWAP1
00000122: SWAP3
00000123: AND
00000124: DUP3
00000125: MSTORE
00000126: MLOAD
00000127: SWAP1
00000128: DUP2
00000129: SWAP1
0000012a: SUB
0000012b: PUSH1 0x20
0000012d: ADD
0000012e: SWAP1
0000012f: RETURN
00000130: JUMPDEST
00000131: CALLVALUE
00000132: DUP1
00000133: ISZERO
00000134: PUSH2 0x013c
00000137: JUMPI
00000138: PUSH1 0x00
0000013a: DUP1
0000013b: REVERT
0000013c: JUMPDEST
0000013d: POP
0000013e: PUSH2 0x0145
00000141: PUSH2 0x0323
00000144: JUMP
00000145: JUMPDEST
00000146: PUSH1 0x40
00000148: DUP1
00000149: MLOAD
0000014a: PUSH1 0x20
0000014c: DUP1
0000014d: DUP3
0000014e: MSTORE
0000014f: DUP4
00000150: MLOAD
00000151: DUP2
00000152: DUP4
00000153: ADD
00000154: MSTORE
00000155: DUP4
00000156: MLOAD
00000157: SWAP2
00000158: SWAP3
00000159: DUP4
0000015a: SWAP3
0000015b: SWAP1
0000015c: DUP4
0000015d: ADD
0000015e: SWAP2
0000015f: DUP6
00000160: ADD
00000161: SWAP1
00000162: DUP1
00000163: DUP4
00000164: DUP4
00000165: PUSH1 0x00
00000167: JUMPDEST
00000168: DUP4
00000169: DUP2
0000016a: LT
0000016b: ISZERO
0000016c: PUSH2 0x017f
0000016f: JUMPI
00000170: DUP2
00000171: DUP2
00000172: ADD
00000173: MLOAD
00000174: DUP4
00000175: DUP3
00000176: ADD
00000177: MSTORE
00000178: PUSH1 0x20
0000017a: ADD
0000017b: PUSH2 0x0167
0000017e: JUMP
0000017f: JUMPDEST
00000180: POP
00000181: POP
00000182: POP
00000183: POP
00000184: SWAP1
00000185: POP
00000186: SWAP1
00000187: DUP2
00000188: ADD
00000189: SWAP1
0000018a: PUSH1 0x1f
0000018c: AND
0000018d: DUP1
0000018e: ISZERO
0000018f: PUSH2 0x01ac
00000192: JUMPI
00000193: DUP1
00000194: DUP3
00000195: SUB
00000196: DUP1
00000197: MLOAD
00000198: PUSH1 0x01
0000019a: DUP4
0000019b: PUSH1 0x20
0000019d: SUB
0000019e: PUSH2 0x0100
000001a1: EXP
000001a2: SUB
000001a3: NOT
000001a4: AND
000001a5: DUP2
000001a6: MSTORE
000001a7: PUSH1 0x20
000001a9: ADD
000001aa: SWAP2
000001ab: POP
000001ac: JUMPDEST
000001ad: POP
000001ae: SWAP3
000001af: POP
000001b0: POP
000001b1: POP
000001b2: PUSH1 0x40
000001b4: MLOAD
000001b5: DUP1
000001b6: SWAP2
000001b7: SUB
000001b8: SWAP1
000001b9: RETURN
000001ba: JUMPDEST
000001bb: CALLVALUE
000001bc: DUP1
000001bd: ISZERO
000001be: PUSH2 0x01c6
000001c1: JUMPI
000001c2: PUSH1 0x00
000001c4: DUP1
000001c5: REVERT
000001c6: JUMPDEST
000001c7: POP
000001c8: PUSH1 0x40
000001ca: DUP1
000001cb: MLOAD
000001cc: PUSH1 0x20
000001ce: PUSH1 0x04
000001d0: DUP1
000001d1: CALLDATALOAD
000001d2: DUP1
000001d3: DUP3
000001d4: ADD
000001d5: CALLDATALOAD
000001d6: PUSH1 0x1f
000001d8: DUP2
000001d9: ADD
000001da: DUP5
000001db: SWAP1
000001dc: DIV
000001dd: DUP5
000001de: MUL
000001df: DUP6
000001e0: ADD
000001e1: DUP5
000001e2: ADD
000001e3: SWAP1
000001e4: SWAP6
000001e5: MSTORE
000001e6: DUP5
000001e7: DUP5
000001e8: MSTORE
000001e9: PUSH2 0x021e
000001ec: SWAP5
000001ed: CALLDATASIZE
000001ee: SWAP5
000001ef: SWAP3
000001f0: SWAP4
000001f1: PUSH1 0x24
000001f3: SWAP4
000001f4: SWAP3
000001f5: DUP5
000001f6: ADD
000001f7: SWAP2
000001f8: SWAP1
000001f9: DUP2
000001fa: SWAP1
000001fb: DUP5
000001fc: ADD
000001fd: DUP4
000001fe: DUP3
000001ff: DUP1
00000200: DUP3
00000201: DUP5
00000202: CALLDATACOPY
00000203: POP
00000204: SWAP5
00000205: SWAP8
00000206: POP
00000207: POP
00000208: POP
00000209: SWAP3
0000020a: CALLDATALOAD
0000020b: PUSH1 0x01
0000020d: PUSH1 0xa0
0000020f: PUSH1 0x02
00000211: EXP
00000212: SUB
00000213: AND
00000214: SWAP4
00000215: POP
00000216: PUSH2 0x03b8
00000219: SWAP3
0000021a: POP
0000021b: POP
0000021c: POP
0000021d: JUMP
0000021e: JUMPDEST
0000021f: STOP
00000220: JUMPDEST
00000221: CALLVALUE
00000222: DUP1
00000223: ISZERO
00000224: PUSH2 0x022c
00000227: JUMPI
00000228: PUSH1 0x00
0000022a: DUP1
0000022b: REVERT
0000022c: JUMPDEST
0000022d: POP
0000022e: PUSH2 0x0114
00000231: PUSH2 0x0304
00000234: JUMP
00000235: JUMPDEST
00000236: CALLVALUE
00000237: DUP1
00000238: ISZERO
00000239: PUSH2 0x0241
0000023c: JUMPI
0000023d: PUSH1 0x00
0000023f: DUP1
00000240: REVERT
00000241: JUMPDEST
00000242: POP
00000243: PUSH2 0x0114
00000246: PUSH2 0x03e2
00000249: JUMP
0000024a: JUMPDEST
0000024b: PUSH1 0x40
0000024d: DUP1
0000024e: MLOAD
0000024f: PUSH1 0x20
00000251: PUSH1 0x04
00000253: DUP1
00000254: CALLDATALOAD
00000255: DUP1
00000256: DUP3
00000257: ADD
00000258: CALLDATALOAD
00000259: PUSH1 0x1f
0000025b: DUP2
0000025c: ADD
0000025d: DUP5
0000025e: SWAP1
0000025f: DIV
00000260: DUP5
00000261: MUL
00000262: DUP6
00000263: ADD
00000264: DUP5
00000265: ADD
00000266: SWAP1
00000267: SWAP6
00000268: MSTORE
00000269: DUP5
0000026a: DUP5
0000026b: MSTORE
0000026c: PUSH2 0x021e
0000026f: SWAP5
00000270: CALLDATASIZE
00000271: SWAP5
00000272: SWAP3
00000273: SWAP4
00000274: PUSH1 0x24
00000276: SWAP4
00000277: SWAP3
00000278: DUP5
00000279: ADD
0000027a: SWAP2
0000027b: SWAP1
0000027c: DUP2
0000027d: SWAP1
0000027e: DUP5
0000027f: ADD
00000280: DUP4
00000281: DUP3
00000282: DUP1
00000283: DUP3
00000284: DUP5
00000285: CALLDATACOPY
00000286: POP
00000287: POP
00000288: PUSH1 0x40
0000028a: DUP1
0000028b: MLOAD
0000028c: PUSH1 0x20
0000028e: PUSH1 0x1f
00000290: DUP2
00000291: DUP11
00000292: ADD
00000293: CALLDATALOAD
00000294: DUP12
00000295: ADD
00000296: DUP1
00000297: CALLDATALOAD
00000298: SWAP2
00000299: DUP3
0000029a: ADD
0000029b: DUP4
0000029c: SWAP1
0000029d: DIV
0000029e: DUP4
0000029f: MUL
000002a0: DUP5
000002a1: ADD
000002a2: DUP4
000002a3: ADD
000002a4: DUP6
000002a5: MSTORE
000002a6: DUP2
000002a7: DUP5
000002a8: MSTORE
000002a9: SWAP9
000002aa: SWAP12
000002ab: PUSH1 0x01
000002ad: PUSH1 0xa0
000002af: PUSH1 0x02
000002b1: EXP
000002b2: SUB
000002b3: DUP12
000002b4: CALLDATALOAD
000002b5: AND
000002b6: SWAP12
000002b7: SWAP1
000002b8: SWAP11
000002b9: SWAP1
000002ba: SWAP10
000002bb: SWAP5
000002bc: ADD
000002bd: SWAP8
000002be: POP
000002bf: SWAP2
000002c0: SWAP6
000002c1: POP
000002c2: SWAP2
000002c3: DUP3
000002c4: ADD
000002c5: SWAP4
000002c6: POP
000002c7: SWAP2
000002c8: POP
000002c9: DUP2
000002ca: SWAP1
000002cb: DUP5
000002cc: ADD
000002cd: DUP4
000002ce: DUP3
000002cf: DUP1
000002d0: DUP3
000002d1: DUP5
000002d2: CALLDATACOPY
000002d3: POP
000002d4: SWAP5
000002d5: SWAP8
000002d6: POP
000002d7: PUSH2 0x03f1
000002da: SWAP7
000002db: POP
000002dc: POP
000002dd: POP
000002de: POP
000002df: POP
000002e0: POP
000002e1: POP
000002e2: JUMP
000002e3: JUMPDEST
000002e4: CALLVALUE
000002e5: DUP1
000002e6: ISZERO
000002e7: PUSH2 0x02ef
000002ea: JUMPI
000002eb: PUSH1 0x00
000002ed: DUP1
000002ee: REVERT
000002ef: JUMPDEST
000002f0: POP
000002f1: PUSH2 0x021e
000002f4: PUSH1 0x01
000002f6: PUSH1 0xa0
000002f8: PUSH1 0x02
000002fa: EXP
000002fb: SUB
000002fc: PUSH1 0x04
000002fe: CALLDATALOAD
000002ff: AND
00000300: PUSH2 0x049f
00000303: JUMP
00000304: JUMPDEST
00000305: PUSH1 0x02
00000307: SLOAD
00000308: PUSH1 0x01
0000030a: PUSH1 0xa0
0000030c: PUSH1 0x02
0000030e: EXP
0000030f: SUB
00000310: AND
00000311: JUMPDEST
00000312: SWAP1
00000313: JUMP
00000314: JUMPDEST
00000315: PUSH1 0x00
00000317: PUSH2 0x031e
0000031a: PUSH2 0x03e2
0000031d: JUMP
0000031e: JUMPDEST
0000031f: SWAP1
00000320: POP
00000321: SWAP1
00000322: JUMP
00000323: JUMPDEST
00000324: PUSH1 0x01
00000326: DUP1
00000327: SLOAD
00000328: PUSH1 0x40
0000032a: DUP1
0000032b: MLOAD
0000032c: PUSH1 0x20
0000032e: PUSH1 0x1f
00000330: PUSH1 0x02
00000332: PUSH1 0x00
00000334: NOT
00000335: PUSH2 0x0100
00000338: DUP8
00000339: DUP10
0000033a: AND
0000033b: ISZERO
0000033c: MUL
0000033d: ADD
0000033e: SWAP1
0000033f: SWAP6
00000340: AND
00000341: SWAP5
00000342: SWAP1
00000343: SWAP5
00000344: DIV
00000345: SWAP4
00000346: DUP5
00000347: ADD
00000348: DUP2
00000349: SWAP1
0000034a: DIV
0000034b: DUP2
0000034c: MUL
0000034d: DUP3
0000034e: ADD
0000034f: DUP2
00000350: ADD
00000351: SWAP1
00000352: SWAP3
00000353: MSTORE
00000354: DUP3
00000355: DUP2
00000356: MSTORE
00000357: PUSH1 0x60
00000359: SWAP4
0000035a: SWAP1
0000035b: SWAP3
0000035c: SWAP1
0000035d: SWAP2
0000035e: DUP4
0000035f: ADD
00000360: DUP3
00000361: DUP3
00000362: DUP1
00000363: ISZERO
00000364: PUSH2 0x03ae
00000367: JUMPI
00000368: DUP1
00000369: PUSH1 0x1f
0000036b: LT
0000036c: PUSH2 0x0383
0000036f: JUMPI
00000370: PUSH2 0x0100
00000373: DUP1
00000374: DUP4
00000375: SLOAD
00000376: DIV
00000377: MUL
00000378: DUP4
00000379: MSTORE
0000037a: SWAP2
0000037b: PUSH1 0x20
0000037d: ADD
0000037e: SWAP2
0000037f: PUSH2 0x03ae
00000382: JUMP
00000383: JUMPDEST
00000384: DUP3
00000385: ADD
00000386: SWAP2
00000387: SWAP1
00000388: PUSH1 0x00
0000038a: MSTORE
0000038b: PUSH1 0x20
0000038d: PUSH1 0x00
0000038f: KECCAK256
00000390: SWAP1
00000391: JUMPDEST
00000392: DUP2
00000393: SLOAD
00000394: DUP2
00000395: MSTORE
00000396: SWAP1
00000397: PUSH1 0x01
00000399: ADD
0000039a: SWAP1
0000039b: PUSH1 0x20
0000039d: ADD
0000039e: DUP1
0000039f: DUP4
000003a0: GT
000003a1: PUSH2 0x0391
000003a4: JUMPI
000003a5: DUP3
000003a6: SWAP1
000003a7: SUB
000003a8: PUSH1 0x1f
000003aa: AND
000003ab: DUP3
000003ac: ADD
000003ad: SWAP2
000003ae: JUMPDEST
000003af: POP
000003b0: POP
000003b1: POP
000003b2: POP
000003b3: POP
000003b4: SWAP1
000003b5: POP
000003b6: SWAP1
000003b7: JUMP
000003b8: JUMPDEST
000003b9: PUSH2 0x03c0
000003bc: PUSH2 0x0314
000003bf: JUMP
000003c0: JUMPDEST
000003c1: PUSH1 0x01
000003c3: PUSH1 0xa0
000003c5: PUSH1 0x02
000003c7: EXP
000003c8: SUB
000003c9: AND
000003ca: CALLER
000003cb: EQ
000003cc: PUSH2 0x03d4
000003cf: JUMPI
000003d0: PUSH1 0x00
000003d2: DUP1
000003d3: REVERT
000003d4: JUMPDEST
000003d5: PUSH2 0x03de
000003d8: DUP3
000003d9: DUP3
000003da: PUSH2 0x0527
000003dd: JUMP
000003de: JUMPDEST
000003df: POP
000003e0: POP
000003e1: JUMP
000003e2: JUMPDEST
000003e3: PUSH1 0x00
000003e5: SLOAD
000003e6: PUSH1 0x01
000003e8: PUSH1 0xa0
000003ea: PUSH1 0x02
000003ec: EXP
000003ed: SUB
000003ee: AND
000003ef: SWAP1
000003f0: JUMP
000003f1: JUMPDEST
000003f2: PUSH2 0x03f9
000003f5: PUSH2 0x0314
000003f8: JUMP
000003f9: JUMPDEST
000003fa: PUSH1 0x01
000003fc: PUSH1 0xa0
000003fe: PUSH1 0x02
00000400: EXP
00000401: SUB
00000402: AND
00000403: CALLER
00000404: EQ
00000405: PUSH2 0x040d
00000408: JUMPI
00000409: PUSH1 0x00
0000040b: DUP1
0000040c: REVERT
0000040d: JUMPDEST
0000040e: PUSH2 0x0417
00000411: DUP4
00000412: DUP4
00000413: PUSH2 0x03b8
00000416: JUMP
00000417: JUMPDEST
00000418: ADDRESS
00000419: PUSH1 0x01
0000041b: PUSH1 0xa0
0000041d: PUSH1 0x02
0000041f: EXP
00000420: SUB
00000421: AND
00000422: CALLVALUE
00000423: DUP3
00000424: PUSH1 0x40
00000426: MLOAD
00000427: DUP1
00000428: DUP3
00000429: DUP1
0000042a: MLOAD
0000042b: SWAP1
0000042c: PUSH1 0x20
0000042e: ADD
0000042f: SWAP1
00000430: DUP1
00000431: DUP4
00000432: DUP4
00000433: PUSH1 0x00
00000435: JUMPDEST
00000436: DUP4
00000437: DUP2
00000438: LT
00000439: ISZERO
0000043a: PUSH2 0x044d
0000043d: JUMPI
0000043e: DUP2
0000043f: DUP2
00000440: ADD
00000441: MLOAD
00000442: DUP4
00000443: DUP3
00000444: ADD
00000445: MSTORE
00000446: PUSH1 0x20
00000448: ADD
00000449: PUSH2 0x0435
0000044c: JUMP
0000044d: JUMPDEST
0000044e: POP
0000044f: POP
00000450: POP
00000451: POP
00000452: SWAP1
00000453: POP
00000454: SWAP1
00000455: DUP2
00000456: ADD
00000457: SWAP1
00000458: PUSH1 0x1f
0000045a: AND
0000045b: DUP1
0000045c: ISZERO
0000045d: PUSH2 0x047a
00000460: JUMPI
00000461: DUP1
00000462: DUP3
00000463: SUB
00000464: DUP1
00000465: MLOAD
00000466: PUSH1 0x01
00000468: DUP4
00000469: PUSH1 0x20
0000046b: SUB
0000046c: PUSH2 0x0100
0000046f: EXP
00000470: SUB
00000471: NOT
00000472: AND
00000473: DUP2
00000474: MSTORE
00000475: PUSH1 0x20
00000477: ADD
00000478: SWAP2
00000479: POP
0000047a: JUMPDEST
0000047b: POP
0000047c: SWAP2
0000047d: POP
0000047e: POP
0000047f: PUSH1 0x00
00000481: PUSH1 0x40
00000483: MLOAD
00000484: DUP1
00000485: DUP4
00000486: SUB
00000487: DUP2
00000488: DUP6
00000489: DUP8
0000048a: GAS
0000048b: CALL
0000048c: SWAP3
0000048d: POP
0000048e: POP
0000048f: POP
00000490: ISZERO
00000491: ISZERO
00000492: PUSH2 0x049a
00000495: JUMPI
00000496: PUSH1 0x00
00000498: DUP1
00000499: REVERT
0000049a: JUMPDEST
0000049b: POP
0000049c: POP
0000049d: POP
0000049e: JUMP
0000049f: JUMPDEST
000004a0: PUSH2 0x04a7
000004a3: PUSH2 0x0314
000004a6: JUMP
000004a7: JUMPDEST
000004a8: PUSH1 0x01
000004aa: PUSH1 0xa0
000004ac: PUSH1 0x02
000004ae: EXP
000004af: SUB
000004b0: AND
000004b1: CALLER
000004b2: EQ
000004b3: PUSH2 0x04bb
000004b6: JUMPI
000004b7: PUSH1 0x00
000004b9: DUP1
000004ba: REVERT
000004bb: JUMPDEST
000004bc: PUSH1 0x01
000004be: PUSH1 0xa0
000004c0: PUSH1 0x02
000004c2: EXP
000004c3: SUB
000004c4: DUP2
000004c5: AND
000004c6: ISZERO
000004c7: ISZERO
000004c8: PUSH2 0x04d0
000004cb: JUMPI
000004cc: PUSH1 0x00
000004ce: DUP1
000004cf: REVERT
000004d0: JUMPDEST
000004d1: PUSH32 0x5a3e66efaa1e445ebd894728a69d6959842ea1e97bd79b892797106e270efcd9
000004f2: PUSH2 0x04f9
000004f5: PUSH2 0x0314
000004f8: JUMP
000004f9: JUMPDEST
000004fa: PUSH1 0x40
000004fc: DUP1
000004fd: MLOAD
000004fe: PUSH1 0x01
00000500: PUSH1 0xa0
00000502: PUSH1 0x02
00000504: EXP
00000505: SUB
00000506: SWAP3
00000507: DUP4
00000508: AND
00000509: DUP2
0000050a: MSTORE
0000050b: SWAP2
0000050c: DUP5
0000050d: AND
0000050e: PUSH1 0x20
00000510: DUP4
00000511: ADD
00000512: MSTORE
00000513: DUP1
00000514: MLOAD
00000515: SWAP2
00000516: DUP3
00000517: SWAP1
00000518: SUB
00000519: ADD
0000051a: SWAP1
0000051b: LOG1
0000051c: PUSH2 0x0524
0000051f: DUP2
00000520: PUSH2 0x061d
00000523: JUMP
00000524: JUMPDEST
00000525: POP
00000526: JUMP
00000527: JUMPDEST
00000528: PUSH1 0x02
0000052a: SLOAD
0000052b: PUSH1 0x01
0000052d: PUSH1 0xa0
0000052f: PUSH1 0x02
00000531: EXP
00000532: SUB
00000533: DUP3
00000534: DUP2
00000535: AND
00000536: SWAP2
00000537: AND
00000538: EQ
00000539: ISZERO
0000053a: PUSH2 0x0542
0000053d: JUMPI
0000053e: PUSH1 0x00
00000540: DUP1
00000541: REVERT
00000542: JUMPDEST
00000543: DUP2
00000544: MLOAD
00000545: PUSH2 0x0555
00000548: SWAP1
00000549: PUSH1 0x01
0000054b: SWAP1
0000054c: PUSH1 0x20
0000054e: DUP6
0000054f: ADD
00000550: SWAP1
00000551: PUSH2 0x064c
00000554: JUMP
00000555: JUMPDEST
00000556: POP
00000557: PUSH1 0x02
00000559: DUP1
0000055a: SLOAD
0000055b: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000570: NOT
00000571: AND
00000572: PUSH1 0x01
00000574: PUSH1 0xa0
00000576: PUSH1 0x02
00000578: EXP
00000579: SUB
0000057a: DUP4
0000057b: AND
0000057c: SWAP1
0000057d: DUP2
0000057e: OR
0000057f: SWAP1
00000580: SWAP2
00000581: SSTORE
00000582: PUSH1 0x40
00000584: DUP1
00000585: MLOAD
00000586: PUSH1 0x20
00000588: DUP1
00000589: DUP3
0000058a: MSTORE
0000058b: DUP6
0000058c: MLOAD
0000058d: DUP2
0000058e: DUP4
0000058f: ADD
00000590: MSTORE
00000591: DUP6
00000592: MLOAD
00000593: PUSH32 0x8e05e0e35ff592971ca8b477d4285a33a61ded208d644042667b78693a472f5e
000005b4: SWAP4
000005b5: DUP8
000005b6: SWAP4
000005b7: SWAP3
000005b8: DUP4
000005b9: SWAP3
000005ba: SWAP2
000005bb: DUP4
000005bc: ADD
000005bd: SWAP2
000005be: SWAP1
000005bf: DUP6
000005c0: ADD
000005c1: SWAP1
000005c2: DUP1
000005c3: DUP4
000005c4: DUP4
000005c5: PUSH1 0x00
000005c7: JUMPDEST
000005c8: DUP4
000005c9: DUP2
000005ca: LT
000005cb: ISZERO
000005cc: PUSH2 0x05df
000005cf: JUMPI
000005d0: DUP2
000005d1: DUP2
000005d2: ADD
000005d3: MLOAD
000005d4: DUP4
000005d5: DUP3
000005d6: ADD
000005d7: MSTORE
000005d8: PUSH1 0x20
000005da: ADD
000005db: PUSH2 0x05c7
000005de: JUMP
000005df: JUMPDEST
000005e0: POP
000005e1: POP
000005e2: POP
000005e3: POP
000005e4: SWAP1
000005e5: POP
000005e6: SWAP1
000005e7: DUP2
000005e8: ADD
000005e9: SWAP1
000005ea: PUSH1 0x1f
000005ec: AND
000005ed: DUP1
000005ee: ISZERO
000005ef: PUSH2 0x060c
000005f2: JUMPI
000005f3: DUP1
000005f4: DUP3
000005f5: SUB
000005f6: DUP1
000005f7: MLOAD
000005f8: PUSH1 0x01
000005fa: DUP4
000005fb: PUSH1 0x20
000005fd: SUB
000005fe: PUSH2 0x0100
00000601: EXP
00000602: SUB
00000603: NOT
00000604: AND
00000605: DUP2
00000606: MSTORE
00000607: PUSH1 0x20
00000609: ADD
0000060a: SWAP2
0000060b: POP
0000060c: JUMPDEST
0000060d: POP
0000060e: SWAP3
0000060f: POP
00000610: POP
00000611: POP
00000612: PUSH1 0x40
00000614: MLOAD
00000615: DUP1
00000616: SWAP2
00000617: SUB
00000618: SWAP1
00000619: LOG2
0000061a: POP
0000061b: POP
0000061c: JUMP
0000061d: JUMPDEST
0000061e: PUSH1 0x00
00000620: DUP1
00000621: SLOAD
00000622: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000637: NOT
00000638: AND
00000639: PUSH1 0x01
0000063b: PUSH1 0xa0
0000063d: PUSH1 0x02
0000063f: EXP
00000640: SUB
00000641: SWAP3
00000642: SWAP1
00000643: SWAP3
00000644: AND
00000645: SWAP2
00000646: SWAP1
00000647: SWAP2
00000648: OR
00000649: SWAP1
0000064a: SSTORE
0000064b: JUMP
0000064c: JUMPDEST
0000064d: DUP3
0000064e: DUP1
0000064f: SLOAD
00000650: PUSH1 0x01
00000652: DUP2
00000653: PUSH1 0x01
00000655: AND
00000656: ISZERO
00000657: PUSH2 0x0100
0000065a: MUL
0000065b: SUB
0000065c: AND
0000065d: PUSH1 0x02
0000065f: SWAP1
00000660: DIV
00000661: SWAP1
00000662: PUSH1 0x00
00000664: MSTORE
00000665: PUSH1 0x20
00000667: PUSH1 0x00
00000669: KECCAK256
0000066a: SWAP1
0000066b: PUSH1 0x1f
0000066d: ADD
0000066e: PUSH1 0x20
00000670: SWAP1
00000671: DIV
00000672: DUP2
00000673: ADD
00000674: SWAP3
00000675: DUP3
00000676: PUSH1 0x1f
00000678: LT
00000679: PUSH2 0x068d
0000067c: JUMPI
0000067d: DUP1
0000067e: MLOAD
0000067f: PUSH1 0xff
00000681: NOT
00000682: AND
00000683: DUP4
00000684: DUP1
00000685: ADD
00000686: OR
00000687: DUP6
00000688: SSTORE
00000689: PUSH2 0x06ba
0000068c: JUMP
0000068d: JUMPDEST
0000068e: DUP3
0000068f: DUP1
00000690: ADD
00000691: PUSH1 0x01
00000693: ADD
00000694: DUP6
00000695: SSTORE
00000696: DUP3
00000697: ISZERO
00000698: PUSH2 0x06ba
0000069b: JUMPI
0000069c: SWAP2
0000069d: DUP3
0000069e: ADD
0000069f: JUMPDEST
000006a0: DUP3
000006a1: DUP2
000006a2: GT
000006a3: ISZERO
000006a4: PUSH2 0x06ba
000006a7: JUMPI
000006a8: DUP3
000006a9: MLOAD
000006aa: DUP3
000006ab: SSTORE
000006ac: SWAP2
000006ad: PUSH1 0x20
000006af: ADD
000006b0: SWAP2
000006b1: SWAP1
000006b2: PUSH1 0x01
000006b4: ADD
000006b5: SWAP1
000006b6: PUSH2 0x069f
000006b9: JUMP
000006ba: JUMPDEST
000006bb: POP
000006bc: PUSH2 0x06c6
000006bf: SWAP3
000006c0: SWAP2
000006c1: POP
000006c2: PUSH2 0x06ca
000006c5: JUMP
000006c6: JUMPDEST
000006c7: POP
000006c8: SWAP1
000006c9: JUMP
000006ca: JUMPDEST
000006cb: PUSH2 0x0311
000006ce: SWAP2
000006cf: SWAP1
000006d0: JUMPDEST
000006d1: DUP1
000006d2: DUP3
000006d3: GT
000006d4: ISZERO
000006d5: PUSH2 0x06c6
000006d8: JUMPI
000006d9: PUSH1 0x00
000006db: DUP2
000006dc: SSTORE
000006dd: PUSH1 0x01
000006df: ADD
000006e0: PUSH2 0x06d0
000006e3: JUMP
000006e4: STOP
000006e5: LOG1
000006e6: PUSH6 0x627a7a723058
000006ed: KECCAK256
000006ee: BALANCE
000006ef: SMOD
000006f0: UNKNOWN(0xE7)
000006f1: SWAP15
000006f2: CREATE2
000006f3: PUSH17 0x7e729c375b3961658939026405feb206ee
00000705: UNKNOWN(0xAB)
00000706: UNKNOWN(0xCE)
00000707: DUP5
00000708: UNKNOWN(0xCE)
00000709: PUSH18
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
critical upgradeability detector Untrusted DELEGATECALL target reachable 70 no no
view
trace_id: 0x7e0a7ac1a9a03c3a2c41e940b342b7b81078f398e8399125a2c4723f31709f60
validation_json
{
    "sink": "DELEGATECALL",
    "errors": 0,
    "status": "unknown",
    "attempts": 84,
    "trace_id": "0x7e0a7ac1a9a03c3a2c41e940b342b7b81078f398e8399125a2c4723f31709f60",
    "confirmed": false,
    "trace_mode": "callTracer",
    "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": "0x025313a2",
            "selector": "0x025313a2",
            "calldata_variants": [
                "0x025313a2",
                "0x025313a20000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x54fd4d50",
            "selector": "0x54fd4d50",
            "calldata_variants": [
                "0x54fd4d50",
                "0x54fd4d500000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x5a8b1a9f",
            "selector": "0x5a8b1a9f",
            "calldata_variants": [
                "0x5a8b1a9f",
                "0x5a8b1a9f0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x5c60da1b",
            "selector": "0x5c60da1b",
            "calldata_variants": [
                "0x5c60da1b",
                "0x5c60da1b0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x6fde8202",
            "selector": "0x6fde8202",
            "calldata_variants": [
                "0x6fde8202",
                "0x6fde82020000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x958a41dd",
            "selector": "0x958a41dd",
            "calldata_variants": [
                "0x958a41dd",
                "0x958a41dd0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xf1739cae",
            "selector": "0xf1739cae",
            "calldata_variants": [
                "0xf1739cae",
                "0xf1739cae0000000000000000000000000000000000000000000000000000000000000000"
            ]
        }
    ]
}
evidence_json
{
    "examples": [
        {
            "pc": 231,
            "opcode": "DELEGATECALL",
            "returndata_checked": null,
            "value_expression_category": "n/a",
            "target_expression_category": "computed"
        }
    ],
    "guards_detected": [],
    "delegatecall_count": 1,
    "untrusted_delegatecall_count": 1
}
high other detector ETH value transfer possible 55 no no
view
trace_id: 0x786223d53857fb42af717af140db8ba2cc768144aeadc94cd9ea8c5703dc7bf7
call_targets: 0x7963aa3202d186e0da113423da0fccf879b69cb2
target_varies: no
classification: constant_target
validation_json
{
    "sink": "CALL",
    "errors": 0,
    "status": "sink_reached",
    "attempts": 1,
    "trace_id": "0x786223d53857fb42af717af140db8ba2cc768144aeadc94cd9ea8c5703dc7bf7",
    "confirmed": false,
    "trace_mode": "callTracer",
    "call_targets": [
        "0x7963aa3202d186e0da113423da0fccf879b69cb2"
    ],
    "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": "0x025313a2",
            "selector": "0x025313a2",
            "calldata_variants": [
                "0x025313a2",
                "0x025313a20000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x54fd4d50",
            "selector": "0x54fd4d50",
            "calldata_variants": [
                "0x54fd4d50",
                "0x54fd4d500000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x5a8b1a9f",
            "selector": "0x5a8b1a9f",
            "calldata_variants": [
                "0x5a8b1a9f",
                "0x5a8b1a9f0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x5c60da1b",
            "selector": "0x5c60da1b",
            "calldata_variants": [
                "0x5c60da1b",
                "0x5c60da1b0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x6fde8202",
            "selector": "0x6fde8202",
            "calldata_variants": [
                "0x6fde8202",
                "0x6fde82020000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x958a41dd",
            "selector": "0x958a41dd",
            "calldata_variants": [
                "0x958a41dd",
                "0x958a41dd0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xf1739cae",
            "selector": "0xf1739cae",
            "calldata_variants": [
                "0xf1739cae",
                "0xf1739cae0000000000000000000000000000000000000000000000000000000000000000"
            ]
        }
    ]
}
evidence_json
{
    "examples": [
        {
            "pc": 1163,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        }
    ],
    "eth_value_calls": 1,
    "guards_detected": []
}
high other detector Untrusted CALL target/value reachable 60 no no
view
trace_id: 0x786223d53857fb42af717af140db8ba2cc768144aeadc94cd9ea8c5703dc7bf7
call_targets: 0x7963aa3202d186e0da113423da0fccf879b69cb2
target_varies: no
classification: constant_target
validation_json
{
    "sink": "CALL",
    "errors": 0,
    "status": "sink_reached",
    "attempts": 1,
    "trace_id": "0x786223d53857fb42af717af140db8ba2cc768144aeadc94cd9ea8c5703dc7bf7",
    "confirmed": false,
    "trace_mode": "callTracer",
    "call_targets": [
        "0x7963aa3202d186e0da113423da0fccf879b69cb2"
    ],
    "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": "0x025313a2",
            "selector": "0x025313a2",
            "calldata_variants": [
                "0x025313a2",
                "0x025313a20000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x54fd4d50",
            "selector": "0x54fd4d50",
            "calldata_variants": [
                "0x54fd4d50",
                "0x54fd4d500000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x5a8b1a9f",
            "selector": "0x5a8b1a9f",
            "calldata_variants": [
                "0x5a8b1a9f",
                "0x5a8b1a9f0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x5c60da1b",
            "selector": "0x5c60da1b",
            "calldata_variants": [
                "0x5c60da1b",
                "0x5c60da1b0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x6fde8202",
            "selector": "0x6fde8202",
            "calldata_variants": [
                "0x6fde8202",
                "0x6fde82020000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x958a41dd",
            "selector": "0x958a41dd",
            "calldata_variants": [
                "0x958a41dd",
                "0x958a41dd0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xf1739cae",
            "selector": "0xf1739cae",
            "calldata_variants": [
                "0xf1739cae",
                "0xf1739cae0000000000000000000000000000000000000000000000000000000000000000"
            ]
        }
    ]
}
evidence_json
{
    "examples": [
        {
            "pc": 1163,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        }
    ],
    "call_count": 1,
    "guards_detected": [],
    "untrusted_call_count": 1
}
medium other detector CREATE/CREATE2 reachable 45 no no
view
trace_id: 0x743de5f7291c992618ea33ceeecc31b544473f8b42517605ec542d95bc0cfe16
validation_json
{
    "sink": "CREATE",
    "errors": 0,
    "status": "unknown",
    "attempts": 14,
    "trace_id": "0x743de5f7291c992618ea33ceeecc31b544473f8b42517605ec542d95bc0cfe16",
    "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": "0x025313a2",
            "selector": "0x025313a2",
            "calldata_variants": [
                "0x025313a2",
                "0x025313a20000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x54fd4d50",
            "selector": "0x54fd4d50",
            "calldata_variants": [
                "0x54fd4d50",
                "0x54fd4d500000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x5a8b1a9f",
            "selector": "0x5a8b1a9f",
            "calldata_variants": [
                "0x5a8b1a9f",
                "0x5a8b1a9f0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x5c60da1b",
            "selector": "0x5c60da1b",
            "calldata_variants": [
                "0x5c60da1b",
                "0x5c60da1b0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x6fde8202",
            "selector": "0x6fde8202",
            "calldata_variants": [
                "0x6fde8202",
                "0x6fde82020000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x958a41dd",
            "selector": "0x958a41dd",
            "calldata_variants": [
                "0x958a41dd",
                "0x958a41dd0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xf1739cae",
            "selector": "0xf1739cae",
            "calldata_variants": [
                "0xf1739cae",
                "0xf1739cae0000000000000000000000000000000000000000000000000000000000000000"
            ]
        }
    ]
}
evidence_json
{
    "create_count": 0,
    "create2_count": 1
}