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

Analysis Run

019b3844-9588-72b1-8b75-31fbd9c95e56

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
13381 artifact.fetch complete 1 / 3 3 months ago
13382 tool.cast_disasm complete 1 / 3 3 months ago
112066 analysis.bundle complete 1 / 3 1 week ago
112067 capability.graph complete 1 / 3 1 week ago
112068 detector.run complete 1 / 3 1 week ago
112069 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
2
Selfdestruct
0
CREATE2
0
CALL-family (heavy)
0
EXT*/BALANCE
1
Total opcodes
921
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 0x006d
0000000c: JUMPI
0000000d: PUSH1 0x00
0000000f: CALLDATALOAD
00000010: PUSH29 0x0100000000000000000000000000000000000000000000000000000000
0000002e: SWAP1
0000002f: DIV
00000030: PUSH4 0xffffffff
00000035: AND
00000036: DUP1
00000037: PUSH4 0x3659cfe6
0000003c: EQ
0000003d: PUSH2 0x0077
00000040: JUMPI
00000041: DUP1
00000042: PUSH4 0x4f1ef286
00000047: EQ
00000048: PUSH2 0x00c8
0000004b: JUMPI
0000004c: DUP1
0000004d: PUSH4 0x5c60da1b
00000052: EQ
00000053: PUSH2 0x0161
00000056: JUMPI
00000057: DUP1
00000058: PUSH4 0x8f283970
0000005d: EQ
0000005e: PUSH2 0x01b8
00000061: JUMPI
00000062: DUP1
00000063: PUSH4 0xf851a440
00000068: EQ
00000069: PUSH2 0x0209
0000006c: JUMPI
0000006d: JUMPDEST
0000006e: PUSH2 0x0075
00000071: PUSH2 0x0260
00000074: JUMP
00000075: JUMPDEST
00000076: STOP
00000077: JUMPDEST
00000078: CALLVALUE
00000079: DUP1
0000007a: ISZERO
0000007b: PUSH2 0x0083
0000007e: JUMPI
0000007f: PUSH1 0x00
00000081: DUP1
00000082: REVERT
00000083: JUMPDEST
00000084: POP
00000085: PUSH2 0x00c6
00000088: PUSH1 0x04
0000008a: DUP1
0000008b: CALLDATASIZE
0000008c: SUB
0000008d: PUSH1 0x20
0000008f: DUP2
00000090: LT
00000091: ISZERO
00000092: PUSH2 0x009a
00000095: JUMPI
00000096: PUSH1 0x00
00000098: DUP1
00000099: REVERT
0000009a: JUMPDEST
0000009b: DUP2
0000009c: ADD
0000009d: SWAP1
0000009e: DUP1
0000009f: DUP1
000000a0: CALLDATALOAD
000000a1: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000000b6: AND
000000b7: SWAP1
000000b8: PUSH1 0x20
000000ba: ADD
000000bb: SWAP1
000000bc: SWAP3
000000bd: SWAP2
000000be: SWAP1
000000bf: POP
000000c0: POP
000000c1: POP
000000c2: PUSH2 0x027a
000000c5: JUMP
000000c6: JUMPDEST
000000c7: STOP
000000c8: JUMPDEST
000000c9: PUSH2 0x015f
000000cc: PUSH1 0x04
000000ce: DUP1
000000cf: CALLDATASIZE
000000d0: SUB
000000d1: PUSH1 0x40
000000d3: DUP2
000000d4: LT
000000d5: ISZERO
000000d6: PUSH2 0x00de
000000d9: JUMPI
000000da: PUSH1 0x00
000000dc: DUP1
000000dd: REVERT
000000de: JUMPDEST
000000df: DUP2
000000e0: ADD
000000e1: SWAP1
000000e2: DUP1
000000e3: DUP1
000000e4: CALLDATALOAD
000000e5: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000000fa: AND
000000fb: SWAP1
000000fc: PUSH1 0x20
000000fe: ADD
000000ff: SWAP1
00000100: SWAP3
00000101: SWAP2
00000102: SWAP1
00000103: DUP1
00000104: CALLDATALOAD
00000105: SWAP1
00000106: PUSH1 0x20
00000108: ADD
00000109: SWAP1
0000010a: PUSH5 0x0100000000
00000110: DUP2
00000111: GT
00000112: ISZERO
00000113: PUSH2 0x011b
00000116: JUMPI
00000117: PUSH1 0x00
00000119: DUP1
0000011a: REVERT
0000011b: JUMPDEST
0000011c: DUP3
0000011d: ADD
0000011e: DUP4
0000011f: PUSH1 0x20
00000121: DUP3
00000122: ADD
00000123: GT
00000124: ISZERO
00000125: PUSH2 0x012d
00000128: JUMPI
00000129: PUSH1 0x00
0000012b: DUP1
0000012c: REVERT
0000012d: JUMPDEST
0000012e: DUP1
0000012f: CALLDATALOAD
00000130: SWAP1
00000131: PUSH1 0x20
00000133: ADD
00000134: SWAP2
00000135: DUP5
00000136: PUSH1 0x01
00000138: DUP4
00000139: MUL
0000013a: DUP5
0000013b: ADD
0000013c: GT
0000013d: PUSH5 0x0100000000
00000143: DUP4
00000144: GT
00000145: OR
00000146: ISZERO
00000147: PUSH2 0x014f
0000014a: JUMPI
0000014b: PUSH1 0x00
0000014d: DUP1
0000014e: REVERT
0000014f: JUMPDEST
00000150: SWAP1
00000151: SWAP2
00000152: SWAP3
00000153: SWAP4
00000154: SWAP2
00000155: SWAP3
00000156: SWAP4
00000157: SWAP1
00000158: POP
00000159: POP
0000015a: POP
0000015b: PUSH2 0x02cf
0000015e: JUMP
0000015f: JUMPDEST
00000160: STOP
00000161: JUMPDEST
00000162: CALLVALUE
00000163: DUP1
00000164: ISZERO
00000165: PUSH2 0x016d
00000168: JUMPI
00000169: PUSH1 0x00
0000016b: DUP1
0000016c: REVERT
0000016d: JUMPDEST
0000016e: POP
0000016f: PUSH2 0x0176
00000172: PUSH2 0x03a7
00000175: JUMP
00000176: JUMPDEST
00000177: PUSH1 0x40
00000179: MLOAD
0000017a: DUP1
0000017b: DUP3
0000017c: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000191: AND
00000192: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000001a7: AND
000001a8: DUP2
000001a9: MSTORE
000001aa: PUSH1 0x20
000001ac: ADD
000001ad: SWAP2
000001ae: POP
000001af: POP
000001b0: PUSH1 0x40
000001b2: MLOAD
000001b3: DUP1
000001b4: SWAP2
000001b5: SUB
000001b6: SWAP1
000001b7: RETURN
000001b8: JUMPDEST
000001b9: CALLVALUE
000001ba: DUP1
000001bb: ISZERO
000001bc: PUSH2 0x01c4
000001bf: JUMPI
000001c0: PUSH1 0x00
000001c2: DUP1
000001c3: REVERT
000001c4: JUMPDEST
000001c5: POP
000001c6: PUSH2 0x0207
000001c9: PUSH1 0x04
000001cb: DUP1
000001cc: CALLDATASIZE
000001cd: SUB
000001ce: PUSH1 0x20
000001d0: DUP2
000001d1: LT
000001d2: ISZERO
000001d3: PUSH2 0x01db
000001d6: JUMPI
000001d7: PUSH1 0x00
000001d9: DUP1
000001da: REVERT
000001db: JUMPDEST
000001dc: DUP2
000001dd: ADD
000001de: SWAP1
000001df: DUP1
000001e0: DUP1
000001e1: CALLDATALOAD
000001e2: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000001f7: AND
000001f8: SWAP1
000001f9: PUSH1 0x20
000001fb: ADD
000001fc: SWAP1
000001fd: SWAP3
000001fe: SWAP2
000001ff: SWAP1
00000200: POP
00000201: POP
00000202: POP
00000203: PUSH2 0x03ff
00000206: JUMP
00000207: JUMPDEST
00000208: STOP
00000209: JUMPDEST
0000020a: CALLVALUE
0000020b: DUP1
0000020c: ISZERO
0000020d: PUSH2 0x0215
00000210: JUMPI
00000211: PUSH1 0x00
00000213: DUP1
00000214: REVERT
00000215: JUMPDEST
00000216: POP
00000217: PUSH2 0x021e
0000021a: PUSH2 0x05bd
0000021d: JUMP
0000021e: JUMPDEST
0000021f: PUSH1 0x40
00000221: MLOAD
00000222: DUP1
00000223: DUP3
00000224: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000239: AND
0000023a: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
0000024f: AND
00000250: DUP2
00000251: MSTORE
00000252: PUSH1 0x20
00000254: ADD
00000255: SWAP2
00000256: POP
00000257: POP
00000258: PUSH1 0x40
0000025a: MLOAD
0000025b: DUP1
0000025c: SWAP2
0000025d: SUB
0000025e: SWAP1
0000025f: RETURN
00000260: JUMPDEST
00000261: PUSH2 0x0268
00000264: PUSH2 0x0615
00000267: JUMP
00000268: JUMPDEST
00000269: PUSH2 0x0278
0000026c: PUSH2 0x0273
0000026f: PUSH2 0x06f0
00000272: JUMP
00000273: JUMPDEST
00000274: PUSH2 0x0721
00000277: JUMP
00000278: JUMPDEST
00000279: JUMP
0000027a: JUMPDEST
0000027b: PUSH2 0x0282
0000027e: PUSH2 0x0747
00000281: JUMP
00000282: JUMPDEST
00000283: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000298: AND
00000299: CALLER
0000029a: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000002af: AND
000002b0: EQ
000002b1: ISZERO
000002b2: PUSH2 0x02c3
000002b5: JUMPI
000002b6: PUSH2 0x02be
000002b9: DUP2
000002ba: PUSH2 0x0778
000002bd: JUMP
000002be: JUMPDEST
000002bf: PUSH2 0x02cc
000002c2: JUMP
000002c3: JUMPDEST
000002c4: PUSH2 0x02cb
000002c7: PUSH2 0x0260
000002ca: JUMP
000002cb: JUMPDEST
000002cc: JUMPDEST
000002cd: POP
000002ce: JUMP
000002cf: JUMPDEST
000002d0: PUSH2 0x02d7
000002d3: PUSH2 0x0747
000002d6: JUMP
000002d7: JUMPDEST
000002d8: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000002ed: AND
000002ee: CALLER
000002ef: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000304: AND
00000305: EQ
00000306: ISZERO
00000307: PUSH2 0x0399
0000030a: JUMPI
0000030b: PUSH2 0x0313
0000030e: DUP4
0000030f: PUSH2 0x0778
00000312: JUMP
00000313: JUMPDEST
00000314: PUSH1 0x00
00000316: DUP4
00000317: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
0000032c: AND
0000032d: DUP4
0000032e: DUP4
0000032f: PUSH1 0x40
00000331: MLOAD
00000332: DUP1
00000333: DUP4
00000334: DUP4
00000335: DUP1
00000336: DUP3
00000337: DUP5
00000338: CALLDATACOPY
00000339: DUP1
0000033a: DUP4
0000033b: ADD
0000033c: SWAP3
0000033d: POP
0000033e: POP
0000033f: POP
00000340: SWAP3
00000341: POP
00000342: POP
00000343: POP
00000344: PUSH1 0x00
00000346: PUSH1 0x40
00000348: MLOAD
00000349: DUP1
0000034a: DUP4
0000034b: SUB
0000034c: DUP2
0000034d: DUP6
0000034e: GAS
0000034f: DELEGATECALL
00000350: SWAP2
00000351: POP
00000352: POP
00000353: RETURNDATASIZE
00000354: DUP1
00000355: PUSH1 0x00
00000357: DUP2
00000358: EQ
00000359: PUSH2 0x037e
0000035c: JUMPI
0000035d: PUSH1 0x40
0000035f: MLOAD
00000360: SWAP2
00000361: POP
00000362: PUSH1 0x1f
00000364: NOT
00000365: PUSH1 0x3f
00000367: RETURNDATASIZE
00000368: ADD
00000369: AND
0000036a: DUP3
0000036b: ADD
0000036c: PUSH1 0x40
0000036e: MSTORE
0000036f: RETURNDATASIZE
00000370: DUP3
00000371: MSTORE
00000372: RETURNDATASIZE
00000373: PUSH1 0x00
00000375: PUSH1 0x20
00000377: DUP5
00000378: ADD
00000379: RETURNDATACOPY
0000037a: PUSH2 0x0383
0000037d: JUMP
0000037e: JUMPDEST
0000037f: PUSH1 0x60
00000381: SWAP2
00000382: POP
00000383: JUMPDEST
00000384: POP
00000385: POP
00000386: SWAP1
00000387: POP
00000388: DUP1
00000389: ISZERO
0000038a: ISZERO
0000038b: PUSH2 0x0393
0000038e: JUMPI
0000038f: PUSH1 0x00
00000391: DUP1
00000392: REVERT
00000393: JUMPDEST
00000394: POP
00000395: PUSH2 0x03a2
00000398: JUMP
00000399: JUMPDEST
0000039a: PUSH2 0x03a1
0000039d: PUSH2 0x0260
000003a0: JUMP
000003a1: JUMPDEST
000003a2: JUMPDEST
000003a3: POP
000003a4: POP
000003a5: POP
000003a6: JUMP
000003a7: JUMPDEST
000003a8: PUSH1 0x00
000003aa: PUSH2 0x03b1
000003ad: PUSH2 0x0747
000003b0: JUMP
000003b1: JUMPDEST
000003b2: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000003c7: AND
000003c8: CALLER
000003c9: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000003de: AND
000003df: EQ
000003e0: ISZERO
000003e1: PUSH2 0x03f3
000003e4: JUMPI
000003e5: PUSH2 0x03ec
000003e8: PUSH2 0x06f0
000003eb: JUMP
000003ec: JUMPDEST
000003ed: SWAP1
000003ee: POP
000003ef: PUSH2 0x03fc
000003f2: JUMP
000003f3: JUMPDEST
000003f4: PUSH2 0x03fb
000003f7: PUSH2 0x0260
000003fa: JUMP
000003fb: JUMPDEST
000003fc: JUMPDEST
000003fd: SWAP1
000003fe: JUMP
000003ff: JUMPDEST
00000400: PUSH2 0x0407
00000403: PUSH2 0x0747
00000406: JUMP
00000407: JUMPDEST
00000408: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
0000041d: AND
0000041e: CALLER
0000041f: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000434: AND
00000435: EQ
00000436: ISZERO
00000437: PUSH2 0x05b1
0000043a: JUMPI
0000043b: PUSH1 0x00
0000043d: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000452: AND
00000453: DUP2
00000454: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000469: AND
0000046a: EQ
0000046b: ISZERO
0000046c: ISZERO
0000046d: ISZERO
0000046e: PUSH2 0x0505
00000471: JUMPI
00000472: PUSH1 0x40
00000474: MLOAD
00000475: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000
00000496: DUP2
00000497: MSTORE
00000498: PUSH1 0x04
0000049a: ADD
0000049b: DUP1
0000049c: DUP1
0000049d: PUSH1 0x20
0000049f: ADD
000004a0: DUP3
000004a1: DUP2
000004a2: SUB
000004a3: DUP3
000004a4: MSTORE
000004a5: PUSH1 0x36
000004a7: DUP2
000004a8: MSTORE
000004a9: PUSH1 0x20
000004ab: ADD
000004ac: DUP1
000004ad: PUSH32 0x43616e6e6f74206368616e6765207468652061646d696e206f6620612070726f
000004ce: DUP2
000004cf: MSTORE
000004d0: PUSH1 0x20
000004d2: ADD
000004d3: PUSH32 0x787920746f20746865207a65726f206164647265737300000000000000000000
000004f4: DUP2
000004f5: MSTORE
000004f6: POP
000004f7: PUSH1 0x40
000004f9: ADD
000004fa: SWAP2
000004fb: POP
000004fc: POP
000004fd: PUSH1 0x40
000004ff: MLOAD
00000500: DUP1
00000501: SWAP2
00000502: SUB
00000503: SWAP1
00000504: REVERT
00000505: JUMPDEST
00000506: PUSH32 0x7e644d79422f17c01e4894b5f4f588d331ebfa28653d42ae832dc59e38c9798f
00000527: PUSH2 0x052e
0000052a: PUSH2 0x0747
0000052d: JUMP
0000052e: JUMPDEST
0000052f: DUP3
00000530: PUSH1 0x40
00000532: MLOAD
00000533: DUP1
00000534: DUP4
00000535: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
0000054a: AND
0000054b: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000560: AND
00000561: DUP2
00000562: MSTORE
00000563: PUSH1 0x20
00000565: ADD
00000566: DUP3
00000567: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
0000057c: AND
0000057d: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000592: AND
00000593: DUP2
00000594: MSTORE
00000595: PUSH1 0x20
00000597: ADD
00000598: SWAP3
00000599: POP
0000059a: POP
0000059b: POP
0000059c: PUSH1 0x40
0000059e: MLOAD
0000059f: DUP1
000005a0: SWAP2
000005a1: SUB
000005a2: SWAP1
000005a3: LOG1
000005a4: PUSH2 0x05ac
000005a7: DUP2
000005a8: PUSH2 0x07c7
000005ab: JUMP
000005ac: JUMPDEST
000005ad: PUSH2 0x05ba
000005b0: JUMP
000005b1: JUMPDEST
000005b2: PUSH2 0x05b9
000005b5: PUSH2 0x0260
000005b8: JUMP
000005b9: JUMPDEST
000005ba: JUMPDEST
000005bb: POP
000005bc: JUMP
000005bd: JUMPDEST
000005be: PUSH1 0x00
000005c0: PUSH2 0x05c7
000005c3: PUSH2 0x0747
000005c6: JUMP
000005c7: JUMPDEST
000005c8: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000005dd: AND
000005de: CALLER
000005df: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000005f4: AND
000005f5: EQ
000005f6: ISZERO
000005f7: PUSH2 0x0609
000005fa: JUMPI
000005fb: PUSH2 0x0602
000005fe: PUSH2 0x0747
00000601: JUMP
00000602: JUMPDEST
00000603: SWAP1
00000604: POP
00000605: PUSH2 0x0612
00000608: JUMP
00000609: JUMPDEST
0000060a: PUSH2 0x0611
0000060d: PUSH2 0x0260
00000610: JUMP
00000611: JUMPDEST
00000612: JUMPDEST
00000613: SWAP1
00000614: JUMP
00000615: JUMPDEST
00000616: PUSH2 0x061d
00000619: PUSH2 0x0747
0000061c: JUMP
0000061d: JUMPDEST
0000061e: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000633: AND
00000634: CALLER
00000635: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
0000064a: AND
0000064b: EQ
0000064c: ISZERO
0000064d: ISZERO
0000064e: ISZERO
0000064f: PUSH2 0x06e6
00000652: JUMPI
00000653: PUSH1 0x40
00000655: MLOAD
00000656: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000
00000677: DUP2
00000678: MSTORE
00000679: PUSH1 0x04
0000067b: ADD
0000067c: DUP1
0000067d: DUP1
0000067e: PUSH1 0x20
00000680: ADD
00000681: DUP3
00000682: DUP2
00000683: SUB
00000684: DUP3
00000685: MSTORE
00000686: PUSH1 0x32
00000688: DUP2
00000689: MSTORE
0000068a: PUSH1 0x20
0000068c: ADD
0000068d: DUP1
0000068e: PUSH32 0x43616e6e6f742063616c6c2066616c6c6261636b2066756e6374696f6e206672
000006af: DUP2
000006b0: MSTORE
000006b1: PUSH1 0x20
000006b3: ADD
000006b4: PUSH32 0x6f6d207468652070726f78792061646d696e0000000000000000000000000000
000006d5: DUP2
000006d6: MSTORE
000006d7: POP
000006d8: PUSH1 0x40
000006da: ADD
000006db: SWAP2
000006dc: POP
000006dd: POP
000006de: PUSH1 0x40
000006e0: MLOAD
000006e1: DUP1
000006e2: SWAP2
000006e3: SUB
000006e4: SWAP1
000006e5: REVERT
000006e6: JUMPDEST
000006e7: PUSH2 0x06ee
000006ea: PUSH2 0x07f6
000006ed: JUMP
000006ee: JUMPDEST
000006ef: JUMP
000006f0: JUMPDEST
000006f1: PUSH1 0x00
000006f3: DUP1
000006f4: PUSH32 0x360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc
00000715: PUSH1 0x01
00000717: MUL
00000718: SWAP1
00000719: POP
0000071a: DUP1
0000071b: SLOAD
0000071c: SWAP2
0000071d: POP
0000071e: POP
0000071f: SWAP1
00000720: JUMP
00000721: JUMPDEST
00000722: CALLDATASIZE
00000723: PUSH1 0x00
00000725: DUP1
00000726: CALLDATACOPY
00000727: PUSH1 0x00
00000729: DUP1
0000072a: CALLDATASIZE
0000072b: PUSH1 0x00
0000072d: DUP5
0000072e: GAS
0000072f: DELEGATECALL
00000730: RETURNDATASIZE
00000731: PUSH1 0x00
00000733: DUP1
00000734: RETURNDATACOPY
00000735: DUP1
00000736: PUSH1 0x00
00000738: DUP2
00000739: EQ
0000073a: PUSH2 0x0742
0000073d: JUMPI
0000073e: RETURNDATASIZE
0000073f: PUSH1 0x00
00000741: RETURN
00000742: JUMPDEST
00000743: RETURNDATASIZE
00000744: PUSH1 0x00
00000746: REVERT
00000747: JUMPDEST
00000748: PUSH1 0x00
0000074a: DUP1
0000074b: PUSH32 0xb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d6103
0000076c: PUSH1 0x01
0000076e: MUL
0000076f: SWAP1
00000770: POP
00000771: DUP1
00000772: SLOAD
00000773: SWAP2
00000774: POP
00000775: POP
00000776: SWAP1
00000777: JUMP
00000778: JUMPDEST
00000779: PUSH2 0x0781
0000077c: DUP2
0000077d: PUSH2 0x07f8
00000780: JUMP
00000781: JUMPDEST
00000782: DUP1
00000783: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000798: AND
00000799: PUSH32 0xbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b
000007ba: PUSH1 0x40
000007bc: MLOAD
000007bd: PUSH1 0x40
000007bf: MLOAD
000007c0: DUP1
000007c1: SWAP2
000007c2: SUB
000007c3: SWAP1
000007c4: LOG2
000007c5: POP
000007c6: JUMP
000007c7: JUMPDEST
000007c8: PUSH1 0x00
000007ca: PUSH32 0xb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d6103
000007eb: PUSH1 0x01
000007ed: MUL
000007ee: SWAP1
000007ef: POP
000007f0: DUP2
000007f1: DUP2
000007f2: SSTORE
000007f3: POP
000007f4: POP
000007f5: JUMP
000007f6: JUMPDEST
000007f7: JUMP
000007f8: JUMPDEST
000007f9: PUSH2 0x0801
000007fc: DUP2
000007fd: PUSH2 0x08ca
00000800: JUMP
00000801: JUMPDEST
00000802: ISZERO
00000803: ISZERO
00000804: PUSH2 0x089b
00000807: JUMPI
00000808: PUSH1 0x40
0000080a: MLOAD
0000080b: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000
0000082c: DUP2
0000082d: MSTORE
0000082e: PUSH1 0x04
00000830: ADD
00000831: DUP1
00000832: DUP1
00000833: PUSH1 0x20
00000835: ADD
00000836: DUP3
00000837: DUP2
00000838: SUB
00000839: DUP3
0000083a: MSTORE
0000083b: PUSH1 0x3b
0000083d: DUP2
0000083e: MSTORE
0000083f: PUSH1 0x20
00000841: ADD
00000842: DUP1
00000843: PUSH32 0x43616e6e6f742073657420612070726f787920696d706c656d656e746174696f
00000864: DUP2
00000865: MSTORE
00000866: PUSH1 0x20
00000868: ADD
00000869: PUSH32 0x6e20746f2061206e6f6e2d636f6e747261637420616464726573730000000000
0000088a: DUP2
0000088b: MSTORE
0000088c: POP
0000088d: PUSH1 0x40
0000088f: ADD
00000890: SWAP2
00000891: POP
00000892: POP
00000893: PUSH1 0x40
00000895: MLOAD
00000896: DUP1
00000897: SWAP2
00000898: SUB
00000899: SWAP1
0000089a: REVERT
0000089b: JUMPDEST
0000089c: PUSH1 0x00
0000089e: PUSH32 0x360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc
000008bf: PUSH1 0x01
000008c1: MUL
000008c2: SWAP1
000008c3: POP
000008c4: DUP2
000008c5: DUP2
000008c6: SSTORE
000008c7: POP
000008c8: POP
000008c9: JUMP
000008ca: JUMPDEST
000008cb: PUSH1 0x00
000008cd: DUP1
000008ce: DUP3
000008cf: EXTCODESIZE
000008d0: SWAP1
000008d1: POP
000008d2: PUSH1 0x00
000008d4: DUP2
000008d5: GT
000008d6: SWAP2
000008d7: POP
000008d8: POP
000008d9: SWAP2
000008da: SWAP1
000008db: POP
000008dc: JUMP
000008dd: INVALID
000008de: LOG1
000008df: PUSH6 0x627a7a723058
000008e6: KECCAK256
000008e7: PUSH12 0x4cda270a7e9f4e21e38863e4
000008f4: UNKNOWN(0xE6)
000008f5: UNKNOWN(0xA6)
000008f6: CREATE
000008f7: COINBASE
000008f8: UNKNOWN(0xD4)
000008f9: JUMPDEST
000008fa: UNKNOWN(0xED)
000008fb: PUSH25
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 upgradeability detector Untrusted DELEGATECALL target reachable 55 no no
view
trace_id: 0x9c32bd7ea540ef96e5ab25b73b932a216df01ea58c41095d3611f05b67ff6a71
call_targets: 0x18c210013ea6cbe99b2dacdc9cfcb6e07458f0ca
target_varies: no
classification: constant_target
validation_json
{
    "sink": "DELEGATECALL",
    "errors": 0,
    "status": "sink_reached",
    "attempts": 1,
    "trace_id": "0x9c32bd7ea540ef96e5ab25b73b932a216df01ea58c41095d3611f05b67ff6a71",
    "confirmed": false,
    "trace_mode": "callTracer",
    "call_targets": [
        "0x18c210013ea6cbe99b2dacdc9cfcb6e07458f0ca"
    ],
    "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": "0xffffffff",
            "selector": "0xffffffff",
            "calldata_variants": [
                "0xffffffff",
                "0xffffffff0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x3659cfe6",
            "selector": "0x3659cfe6",
            "calldata_variants": [
                "0x3659cfe6",
                "0x3659cfe60000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x4f1ef286",
            "selector": "0x4f1ef286",
            "calldata_variants": [
                "0x4f1ef286",
                "0x4f1ef2860000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x5c60da1b",
            "selector": "0x5c60da1b",
            "calldata_variants": [
                "0x5c60da1b",
                "0x5c60da1b0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x8f283970",
            "selector": "0x8f283970",
            "calldata_variants": [
                "0x8f283970",
                "0x8f2839700000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xf851a440",
            "selector": "0xf851a440",
            "calldata_variants": [
                "0xf851a440",
                "0xf851a4400000000000000000000000000000000000000000000000000000000000000000"
            ]
        }
    ]
}
evidence_json
{
    "examples": [
        {
            "pc": 847,
            "opcode": "DELEGATECALL",
            "returndata_checked": null,
            "value_expression_category": "n/a",
            "target_expression_category": "computed"
        },
        {
            "pc": 1839,
            "opcode": "DELEGATECALL",
            "returndata_checked": null,
            "value_expression_category": "n/a",
            "target_expression_category": "computed"
        }
    ],
    "guards_detected": [
        {
            "pc": 665,
            "type": "msg_sender_eq_const",
            "value": "0xffffffffffffffffffffffffffffffffffffffff"
        },
        {
            "pc": 750,
            "type": "msg_sender_eq_const",
            "value": "0xffffffffffffffffffffffffffffffffffffffff"
        },
        {
            "pc": 968,
            "type": "msg_sender_eq_const",
            "value": "0xffffffffffffffffffffffffffffffffffffffff"
        },
        {
            "pc": 1054,
            "type": "msg_sender_eq_const",
            "value": "0xffffffffffffffffffffffffffffffffffffffff"
        },
        {
            "pc": 1502,
            "type": "msg_sender_eq_const",
            "value": "0xffffffffffffffffffffffffffffffffffffffff"
        },
        {
            "pc": 1588,
            "type": "msg_sender_eq_const",
            "value": "0xffffffffffffffffffffffffffffffffffffffff"
        }
    ],
    "delegatecall_count": 2,
    "untrusted_delegatecall_count": 2
}
medium other detector CREATE/CREATE2 reachable 45 no no
view
trace_id: 0x5106a7875a75429b5216631db9e164b777331514b967c96dcd7f771dfd56d100
validation_json
{
    "sink": "CREATE",
    "errors": 0,
    "status": "unknown",
    "attempts": 12,
    "trace_id": "0x5106a7875a75429b5216631db9e164b777331514b967c96dcd7f771dfd56d100",
    "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": "0xffffffff",
            "selector": "0xffffffff",
            "calldata_variants": [
                "0xffffffff",
                "0xffffffff0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x3659cfe6",
            "selector": "0x3659cfe6",
            "calldata_variants": [
                "0x3659cfe6",
                "0x3659cfe60000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x4f1ef286",
            "selector": "0x4f1ef286",
            "calldata_variants": [
                "0x4f1ef286",
                "0x4f1ef2860000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x5c60da1b",
            "selector": "0x5c60da1b",
            "calldata_variants": [
                "0x5c60da1b",
                "0x5c60da1b0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x8f283970",
            "selector": "0x8f283970",
            "calldata_variants": [
                "0x8f283970",
                "0x8f2839700000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xf851a440",
            "selector": "0xf851a440",
            "calldata_variants": [
                "0xf851a440",
                "0xf851a4400000000000000000000000000000000000000000000000000000000000000000"
            ]
        }
    ]
}
evidence_json
{
    "create_count": 1,
    "create2_count": 0
}