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

Analysis Run

019ba9a5-c5da-73d4-b382-e9169a1b02be

complete
Chain ID
1
Address
Block Number
Created
Sat, Jan 10, 2026 8:42 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
Verified
Review Backing
Not yet
Best current signal
Untrusted DELEGATECALL target reachable
crit 0 high 0 proxy context implementation known
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
36996 artifact.fetch complete 1 / 3 3 months ago
36997 proxy.resolve complete 1 / 3 3 months ago
36998 tool.cast_disasm complete 1 / 3 3 months ago
36999 analysis.bundle complete 1 / 3 3 months ago
37000 capability.graph complete 1 / 3 3 months ago
37001 detector.run complete 1 / 3 3 months ago
37002 validation.fork complete 1 / 3 3 months ago

Artifact

Runtime bytecode: available
Creation TX:
Deployer:
Proxy: yes confirmed
Verified Source: yes
Proxy evidence
{
    "method": "etherscan+onchain",
    "status": "confirmed",
    "etherscan_hint": {
        "source": "etherscan",
        "etherscan": {
            "proxy_flag": true,
            "implementation": "0x2c0fa8b5c3a26ae8f014efb50ff27d95dd923502"
        }
    },
    "implementation": "0x2c0fa8b5c3a26ae8f014efb50ff27d95dd923502",
    "onchain_method": "eip1967"
}

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
2
Total opcodes
948
Flags
delegatecall_present
View cast disassembly output
00000000: PUSH1 0x80
00000002: PUSH1 0x40
00000004: MSTORE
00000005: PUSH1 0x04
00000007: CALLDATASIZE
00000008: LT
00000009: PUSH2 0x0043
0000000c: JUMPI
0000000d: PUSH1 0x00
0000000f: CALLDATALOAD
00000010: PUSH1 0xe0
00000012: SHR
00000013: DUP1
00000014: PUSH4 0x3659cfe6
00000019: EQ
0000001a: PUSH2 0x005a
0000001d: JUMPI
0000001e: DUP1
0000001f: PUSH4 0x4f1ef286
00000024: EQ
00000025: PUSH2 0x007a
00000028: JUMPI
00000029: DUP1
0000002a: PUSH4 0x5c60da1b
0000002f: EQ
00000030: PUSH2 0x008d
00000033: JUMPI
00000034: DUP1
00000035: PUSH4 0xf851a440
0000003a: EQ
0000003b: PUSH2 0x00be
0000003e: JUMPI
0000003f: PUSH2 0x0052
00000042: JUMP
00000043: JUMPDEST
00000044: CALLDATASIZE
00000045: PUSH2 0x0052
00000048: JUMPI
00000049: PUSH2 0x0050
0000004c: PUSH2 0x00d3
0000004f: JUMP
00000050: JUMPDEST
00000051: STOP
00000052: JUMPDEST
00000053: PUSH2 0x0050
00000056: PUSH2 0x00d3
00000059: JUMP
0000005a: JUMPDEST
0000005b: CALLVALUE
0000005c: DUP1
0000005d: ISZERO
0000005e: PUSH2 0x0066
00000061: JUMPI
00000062: PUSH1 0x00
00000064: DUP1
00000065: REVERT
00000066: JUMPDEST
00000067: POP
00000068: PUSH2 0x0050
0000006b: PUSH2 0x0075
0000006e: CALLDATASIZE
0000006f: PUSH1 0x04
00000071: PUSH2 0x063a
00000074: JUMP
00000075: JUMPDEST
00000076: PUSH2 0x00ed
00000079: JUMP
0000007a: JUMPDEST
0000007b: PUSH2 0x0050
0000007e: PUSH2 0x0088
00000081: CALLDATASIZE
00000082: PUSH1 0x04
00000084: PUSH2 0x0655
00000087: JUMP
00000088: JUMPDEST
00000089: PUSH2 0x0143
0000008c: JUMP
0000008d: JUMPDEST
0000008e: CALLVALUE
0000008f: DUP1
00000090: ISZERO
00000091: PUSH2 0x0099
00000094: JUMPI
00000095: PUSH1 0x00
00000097: DUP1
00000098: REVERT
00000099: JUMPDEST
0000009a: POP
0000009b: PUSH2 0x00a2
0000009e: PUSH2 0x01c3
000000a1: JUMP
000000a2: JUMPDEST
000000a3: PUSH1 0x40
000000a5: MLOAD
000000a6: PUSH1 0x01
000000a8: PUSH1 0x01
000000aa: PUSH1 0xa0
000000ac: SHL
000000ad: SUB
000000ae: SWAP1
000000af: SWAP2
000000b0: AND
000000b1: DUP2
000000b2: MSTORE
000000b3: PUSH1 0x20
000000b5: ADD
000000b6: PUSH1 0x40
000000b8: MLOAD
000000b9: DUP1
000000ba: SWAP2
000000bb: SUB
000000bc: SWAP1
000000bd: RETURN
000000be: JUMPDEST
000000bf: CALLVALUE
000000c0: DUP1
000000c1: ISZERO
000000c2: PUSH2 0x00ca
000000c5: JUMPI
000000c6: PUSH1 0x00
000000c8: DUP1
000000c9: REVERT
000000ca: JUMPDEST
000000cb: POP
000000cc: PUSH2 0x00a2
000000cf: PUSH2 0x020d
000000d2: JUMP
000000d3: JUMPDEST
000000d4: PUSH2 0x00db
000000d7: PUSH2 0x0264
000000da: JUMP
000000db: JUMPDEST
000000dc: PUSH2 0x00eb
000000df: PUSH2 0x00e6
000000e2: PUSH2 0x032d
000000e5: JUMP
000000e6: JUMPDEST
000000e7: PUSH2 0x0360
000000ea: JUMP
000000eb: JUMPDEST
000000ec: JUMP
000000ed: JUMPDEST
000000ee: PUSH32 0x000000000000000000000000059d3d353336886cfaf17383c9fb6715652cf9a1
0000010f: PUSH1 0x01
00000111: PUSH1 0x01
00000113: PUSH1 0xa0
00000115: SHL
00000116: SUB
00000117: AND
00000118: CALLER
00000119: SUB
0000011a: PUSH2 0x013b
0000011d: JUMPI
0000011e: PUSH2 0x0138
00000121: DUP2
00000122: PUSH1 0x40
00000124: MLOAD
00000125: DUP1
00000126: PUSH1 0x20
00000128: ADD
00000129: PUSH1 0x40
0000012b: MSTORE
0000012c: DUP1
0000012d: PUSH1 0x00
0000012f: DUP2
00000130: MSTORE
00000131: POP
00000132: PUSH1 0x00
00000134: PUSH2 0x0384
00000137: JUMP
00000138: JUMPDEST
00000139: POP
0000013a: JUMP
0000013b: JUMPDEST
0000013c: PUSH2 0x0138
0000013f: PUSH2 0x00d3
00000142: JUMP
00000143: JUMPDEST
00000144: PUSH32 0x000000000000000000000000059d3d353336886cfaf17383c9fb6715652cf9a1
00000165: PUSH1 0x01
00000167: PUSH1 0x01
00000169: PUSH1 0xa0
0000016b: SHL
0000016c: SUB
0000016d: AND
0000016e: CALLER
0000016f: SUB
00000170: PUSH2 0x01bb
00000173: JUMPI
00000174: PUSH2 0x01b6
00000177: DUP4
00000178: DUP4
00000179: DUP4
0000017a: DUP1
0000017b: DUP1
0000017c: PUSH1 0x1f
0000017e: ADD
0000017f: PUSH1 0x20
00000181: DUP1
00000182: SWAP2
00000183: DIV
00000184: MUL
00000185: PUSH1 0x20
00000187: ADD
00000188: PUSH1 0x40
0000018a: MLOAD
0000018b: SWAP1
0000018c: DUP2
0000018d: ADD
0000018e: PUSH1 0x40
00000190: MSTORE
00000191: DUP1
00000192: SWAP4
00000193: SWAP3
00000194: SWAP2
00000195: SWAP1
00000196: DUP2
00000197: DUP2
00000198: MSTORE
00000199: PUSH1 0x20
0000019b: ADD
0000019c: DUP4
0000019d: DUP4
0000019e: DUP1
0000019f: DUP3
000001a0: DUP5
000001a1: CALLDATACOPY
000001a2: PUSH1 0x00
000001a4: SWAP3
000001a5: ADD
000001a6: SWAP2
000001a7: SWAP1
000001a8: SWAP2
000001a9: MSTORE
000001aa: POP
000001ab: PUSH1 0x01
000001ad: SWAP3
000001ae: POP
000001af: PUSH2 0x0384
000001b2: SWAP2
000001b3: POP
000001b4: POP
000001b5: JUMP
000001b6: JUMPDEST
000001b7: POP
000001b8: POP
000001b9: POP
000001ba: JUMP
000001bb: JUMPDEST
000001bc: PUSH2 0x01b6
000001bf: PUSH2 0x00d3
000001c2: JUMP
000001c3: JUMPDEST
000001c4: PUSH1 0x00
000001c6: PUSH32 0x000000000000000000000000059d3d353336886cfaf17383c9fb6715652cf9a1
000001e7: PUSH1 0x01
000001e9: PUSH1 0x01
000001eb: PUSH1 0xa0
000001ed: SHL
000001ee: SUB
000001ef: AND
000001f0: CALLER
000001f1: SUB
000001f2: PUSH2 0x0202
000001f5: JUMPI
000001f6: PUSH2 0x01fd
000001f9: PUSH2 0x032d
000001fc: JUMP
000001fd: JUMPDEST
000001fe: SWAP1
000001ff: POP
00000200: SWAP1
00000201: JUMP
00000202: JUMPDEST
00000203: PUSH2 0x020a
00000206: PUSH2 0x00d3
00000209: JUMP
0000020a: JUMPDEST
0000020b: SWAP1
0000020c: JUMP
0000020d: JUMPDEST
0000020e: PUSH1 0x00
00000210: PUSH32 0x000000000000000000000000059d3d353336886cfaf17383c9fb6715652cf9a1
00000231: PUSH1 0x01
00000233: PUSH1 0x01
00000235: PUSH1 0xa0
00000237: SHL
00000238: SUB
00000239: AND
0000023a: CALLER
0000023b: SUB
0000023c: PUSH2 0x0202
0000023f: JUMPI
00000240: POP
00000241: PUSH32 0x000000000000000000000000059d3d353336886cfaf17383c9fb6715652cf9a1
00000262: SWAP1
00000263: JUMP
00000264: JUMPDEST
00000265: PUSH32 0x000000000000000000000000059d3d353336886cfaf17383c9fb6715652cf9a1
00000286: PUSH1 0x01
00000288: PUSH1 0x01
0000028a: PUSH1 0xa0
0000028c: SHL
0000028d: SUB
0000028e: AND
0000028f: CALLER
00000290: SUB
00000291: PUSH2 0x00eb
00000294: JUMPI
00000295: PUSH1 0x40
00000297: MLOAD
00000298: PUSH3 0x461bcd
0000029c: PUSH1 0xe5
0000029e: SHL
0000029f: DUP2
000002a0: MSTORE
000002a1: PUSH1 0x20
000002a3: PUSH1 0x04
000002a5: DUP3
000002a6: ADD
000002a7: MSTORE
000002a8: PUSH1 0x42
000002aa: PUSH1 0x24
000002ac: DUP3
000002ad: ADD
000002ae: MSTORE
000002af: PUSH32 0x5472616e73706172656e745570677261646561626c6550726f78793a2061646d
000002d0: PUSH1 0x44
000002d2: DUP3
000002d3: ADD
000002d4: MSTORE
000002d5: PUSH32 0x696e2063616e6e6f742066616c6c6261636b20746f2070726f78792074617267
000002f6: PUSH1 0x64
000002f8: DUP3
000002f9: ADD
000002fa: MSTORE
000002fb: PUSH32 0x6574000000000000000000000000000000000000000000000000000000000000
0000031c: PUSH1 0x84
0000031e: DUP3
0000031f: ADD
00000320: MSTORE
00000321: PUSH1 0xa4
00000323: ADD
00000324: JUMPDEST
00000325: PUSH1 0x40
00000327: MLOAD
00000328: DUP1
00000329: SWAP2
0000032a: SUB
0000032b: SWAP1
0000032c: REVERT
0000032d: JUMPDEST
0000032e: PUSH1 0x00
00000330: PUSH2 0x01fd
00000333: PUSH32 0x360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc
00000354: SLOAD
00000355: PUSH1 0x01
00000357: PUSH1 0x01
00000359: PUSH1 0xa0
0000035b: SHL
0000035c: SUB
0000035d: AND
0000035e: SWAP1
0000035f: JUMP
00000360: JUMPDEST
00000361: CALLDATASIZE
00000362: PUSH1 0x00
00000364: DUP1
00000365: CALLDATACOPY
00000366: PUSH1 0x00
00000368: DUP1
00000369: CALLDATASIZE
0000036a: PUSH1 0x00
0000036c: DUP5
0000036d: GAS
0000036e: DELEGATECALL
0000036f: RETURNDATASIZE
00000370: PUSH1 0x00
00000372: DUP1
00000373: RETURNDATACOPY
00000374: DUP1
00000375: DUP1
00000376: ISZERO
00000377: PUSH2 0x037f
0000037a: JUMPI
0000037b: RETURNDATASIZE
0000037c: PUSH1 0x00
0000037e: RETURN
0000037f: JUMPDEST
00000380: RETURNDATASIZE
00000381: PUSH1 0x00
00000383: REVERT
00000384: JUMPDEST
00000385: PUSH2 0x038d
00000388: DUP4
00000389: PUSH2 0x03af
0000038c: JUMP
0000038d: JUMPDEST
0000038e: PUSH1 0x00
00000390: DUP3
00000391: MLOAD
00000392: GT
00000393: DUP1
00000394: PUSH2 0x039a
00000397: JUMPI
00000398: POP
00000399: DUP1
0000039a: JUMPDEST
0000039b: ISZERO
0000039c: PUSH2 0x01b6
0000039f: JUMPI
000003a0: PUSH2 0x03a9
000003a3: DUP4
000003a4: DUP4
000003a5: PUSH2 0x03ef
000003a8: JUMP
000003a9: JUMPDEST
000003aa: POP
000003ab: POP
000003ac: POP
000003ad: POP
000003ae: JUMP
000003af: JUMPDEST
000003b0: PUSH2 0x03b8
000003b3: DUP2
000003b4: PUSH2 0x041b
000003b7: JUMP
000003b8: JUMPDEST
000003b9: PUSH1 0x40
000003bb: MLOAD
000003bc: PUSH1 0x01
000003be: PUSH1 0x01
000003c0: PUSH1 0xa0
000003c2: SHL
000003c3: SUB
000003c4: DUP3
000003c5: AND
000003c6: SWAP1
000003c7: PUSH32 0xbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b
000003e8: SWAP1
000003e9: PUSH1 0x00
000003eb: SWAP1
000003ec: LOG2
000003ed: POP
000003ee: JUMP
000003ef: JUMPDEST
000003f0: PUSH1 0x60
000003f2: PUSH2 0x0414
000003f5: DUP4
000003f6: DUP4
000003f7: PUSH1 0x40
000003f9: MLOAD
000003fa: DUP1
000003fb: PUSH1 0x60
000003fd: ADD
000003fe: PUSH1 0x40
00000400: MSTORE
00000401: DUP1
00000402: PUSH1 0x27
00000404: DUP2
00000405: MSTORE
00000406: PUSH1 0x20
00000408: ADD
00000409: PUSH2 0x076a
0000040c: PUSH1 0x27
0000040e: SWAP2
0000040f: CODECOPY
00000410: PUSH2 0x04f1
00000413: JUMP
00000414: JUMPDEST
00000415: SWAP4
00000416: SWAP3
00000417: POP
00000418: POP
00000419: POP
0000041a: JUMP
0000041b: JUMPDEST
0000041c: PUSH1 0x01
0000041e: PUSH1 0x01
00000420: PUSH1 0xa0
00000422: SHL
00000423: SUB
00000424: DUP2
00000425: AND
00000426: EXTCODESIZE
00000427: PUSH2 0x0498
0000042a: JUMPI
0000042b: PUSH1 0x40
0000042d: MLOAD
0000042e: PUSH3 0x461bcd
00000432: PUSH1 0xe5
00000434: SHL
00000435: DUP2
00000436: MSTORE
00000437: PUSH1 0x20
00000439: PUSH1 0x04
0000043b: DUP3
0000043c: ADD
0000043d: MSTORE
0000043e: PUSH1 0x2d
00000440: PUSH1 0x24
00000442: DUP3
00000443: ADD
00000444: MSTORE
00000445: PUSH32 0x455243313936373a206e657720696d706c656d656e746174696f6e206973206e
00000466: PUSH1 0x44
00000468: DUP3
00000469: ADD
0000046a: MSTORE
0000046b: PUSH32 0x6f74206120636f6e747261637400000000000000000000000000000000000000
0000048c: PUSH1 0x64
0000048e: DUP3
0000048f: ADD
00000490: MSTORE
00000491: PUSH1 0x84
00000493: ADD
00000494: PUSH2 0x0324
00000497: JUMP
00000498: JUMPDEST
00000499: PUSH32 0x360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc
000004ba: DUP1
000004bb: SLOAD
000004bc: PUSH32 0xffffffffffffffffffffffff0000000000000000000000000000000000000000
000004dd: AND
000004de: PUSH1 0x01
000004e0: PUSH1 0x01
000004e2: PUSH1 0xa0
000004e4: SHL
000004e5: SUB
000004e6: SWAP3
000004e7: SWAP1
000004e8: SWAP3
000004e9: AND
000004ea: SWAP2
000004eb: SWAP1
000004ec: SWAP2
000004ed: OR
000004ee: SWAP1
000004ef: SSTORE
000004f0: JUMP
000004f1: JUMPDEST
000004f2: PUSH1 0x60
000004f4: PUSH1 0x01
000004f6: PUSH1 0x01
000004f8: PUSH1 0xa0
000004fa: SHL
000004fb: SUB
000004fc: DUP5
000004fd: AND
000004fe: EXTCODESIZE
000004ff: PUSH2 0x0570
00000502: JUMPI
00000503: PUSH1 0x40
00000505: MLOAD
00000506: PUSH3 0x461bcd
0000050a: PUSH1 0xe5
0000050c: SHL
0000050d: DUP2
0000050e: MSTORE
0000050f: PUSH1 0x20
00000511: PUSH1 0x04
00000513: DUP3
00000514: ADD
00000515: MSTORE
00000516: PUSH1 0x26
00000518: PUSH1 0x24
0000051a: DUP3
0000051b: ADD
0000051c: MSTORE
0000051d: PUSH32 0x416464726573733a2064656c65676174652063616c6c20746f206e6f6e2d636f
0000053e: PUSH1 0x44
00000540: DUP3
00000541: ADD
00000542: MSTORE
00000543: PUSH32 0x6e74726163740000000000000000000000000000000000000000000000000000
00000564: PUSH1 0x64
00000566: DUP3
00000567: ADD
00000568: MSTORE
00000569: PUSH1 0x84
0000056b: ADD
0000056c: PUSH2 0x0324
0000056f: JUMP
00000570: JUMPDEST
00000571: PUSH1 0x00
00000573: DUP1
00000574: DUP6
00000575: PUSH1 0x01
00000577: PUSH1 0x01
00000579: PUSH1 0xa0
0000057b: SHL
0000057c: SUB
0000057d: AND
0000057e: DUP6
0000057f: PUSH1 0x40
00000581: MLOAD
00000582: PUSH2 0x058b
00000585: SWAP2
00000586: SWAP1
00000587: PUSH2 0x06fc
0000058a: JUMP
0000058b: JUMPDEST
0000058c: PUSH1 0x00
0000058e: PUSH1 0x40
00000590: MLOAD
00000591: DUP1
00000592: DUP4
00000593: SUB
00000594: DUP2
00000595: DUP6
00000596: GAS
00000597: DELEGATECALL
00000598: SWAP2
00000599: POP
0000059a: POP
0000059b: RETURNDATASIZE
0000059c: DUP1
0000059d: PUSH1 0x00
0000059f: DUP2
000005a0: EQ
000005a1: PUSH2 0x05c6
000005a4: JUMPI
000005a5: PUSH1 0x40
000005a7: MLOAD
000005a8: SWAP2
000005a9: POP
000005aa: PUSH1 0x1f
000005ac: NOT
000005ad: PUSH1 0x3f
000005af: RETURNDATASIZE
000005b0: ADD
000005b1: AND
000005b2: DUP3
000005b3: ADD
000005b4: PUSH1 0x40
000005b6: MSTORE
000005b7: RETURNDATASIZE
000005b8: DUP3
000005b9: MSTORE
000005ba: RETURNDATASIZE
000005bb: PUSH1 0x00
000005bd: PUSH1 0x20
000005bf: DUP5
000005c0: ADD
000005c1: RETURNDATACOPY
000005c2: PUSH2 0x05cb
000005c5: JUMP
000005c6: JUMPDEST
000005c7: PUSH1 0x60
000005c9: SWAP2
000005ca: POP
000005cb: JUMPDEST
000005cc: POP
000005cd: SWAP2
000005ce: POP
000005cf: SWAP2
000005d0: POP
000005d1: PUSH2 0x05db
000005d4: DUP3
000005d5: DUP3
000005d6: DUP7
000005d7: PUSH2 0x05e5
000005da: JUMP
000005db: JUMPDEST
000005dc: SWAP7
000005dd: SWAP6
000005de: POP
000005df: POP
000005e0: POP
000005e1: POP
000005e2: POP
000005e3: POP
000005e4: JUMP
000005e5: JUMPDEST
000005e6: PUSH1 0x60
000005e8: DUP4
000005e9: ISZERO
000005ea: PUSH2 0x05f4
000005ed: JUMPI
000005ee: POP
000005ef: DUP2
000005f0: PUSH2 0x0414
000005f3: JUMP
000005f4: JUMPDEST
000005f5: DUP3
000005f6: MLOAD
000005f7: ISZERO
000005f8: PUSH2 0x0604
000005fb: JUMPI
000005fc: DUP3
000005fd: MLOAD
000005fe: DUP1
000005ff: DUP5
00000600: PUSH1 0x20
00000602: ADD
00000603: REVERT
00000604: JUMPDEST
00000605: DUP2
00000606: PUSH1 0x40
00000608: MLOAD
00000609: PUSH3 0x461bcd
0000060d: PUSH1 0xe5
0000060f: SHL
00000610: DUP2
00000611: MSTORE
00000612: PUSH1 0x04
00000614: ADD
00000615: PUSH2 0x0324
00000618: SWAP2
00000619: SWAP1
0000061a: PUSH2 0x0718
0000061d: JUMP
0000061e: JUMPDEST
0000061f: DUP1
00000620: CALLDATALOAD
00000621: PUSH1 0x01
00000623: PUSH1 0x01
00000625: PUSH1 0xa0
00000627: SHL
00000628: SUB
00000629: DUP2
0000062a: AND
0000062b: DUP2
0000062c: EQ
0000062d: PUSH2 0x0635
00000630: JUMPI
00000631: PUSH1 0x00
00000633: DUP1
00000634: REVERT
00000635: JUMPDEST
00000636: SWAP2
00000637: SWAP1
00000638: POP
00000639: JUMP
0000063a: JUMPDEST
0000063b: PUSH1 0x00
0000063d: PUSH1 0x20
0000063f: DUP3
00000640: DUP5
00000641: SUB
00000642: SLT
00000643: ISZERO
00000644: PUSH2 0x064c
00000647: JUMPI
00000648: PUSH1 0x00
0000064a: DUP1
0000064b: REVERT
0000064c: JUMPDEST
0000064d: PUSH2 0x0414
00000650: DUP3
00000651: PUSH2 0x061e
00000654: JUMP
00000655: JUMPDEST
00000656: PUSH1 0x00
00000658: DUP1
00000659: PUSH1 0x00
0000065b: PUSH1 0x40
0000065d: DUP5
0000065e: DUP7
0000065f: SUB
00000660: SLT
00000661: ISZERO
00000662: PUSH2 0x066a
00000665: JUMPI
00000666: PUSH1 0x00
00000668: DUP1
00000669: REVERT
0000066a: JUMPDEST
0000066b: PUSH2 0x0673
0000066e: DUP5
0000066f: PUSH2 0x061e
00000672: JUMP
00000673: JUMPDEST
00000674: SWAP3
00000675: POP
00000676: PUSH1 0x20
00000678: DUP5
00000679: ADD
0000067a: CALLDATALOAD
0000067b: PUSH8 0xffffffffffffffff
00000684: DUP1
00000685: DUP3
00000686: GT
00000687: ISZERO
00000688: PUSH2 0x0690
0000068b: JUMPI
0000068c: PUSH1 0x00
0000068e: DUP1
0000068f: REVERT
00000690: JUMPDEST
00000691: DUP2
00000692: DUP7
00000693: ADD
00000694: SWAP2
00000695: POP
00000696: DUP7
00000697: PUSH1 0x1f
00000699: DUP4
0000069a: ADD
0000069b: SLT
0000069c: PUSH2 0x06a4
0000069f: JUMPI
000006a0: PUSH1 0x00
000006a2: DUP1
000006a3: REVERT
000006a4: JUMPDEST
000006a5: DUP2
000006a6: CALLDATALOAD
000006a7: DUP2
000006a8: DUP2
000006a9: GT
000006aa: ISZERO
000006ab: PUSH2 0x06b3
000006ae: JUMPI
000006af: PUSH1 0x00
000006b1: DUP1
000006b2: REVERT
000006b3: JUMPDEST
000006b4: DUP8
000006b5: PUSH1 0x20
000006b7: DUP3
000006b8: DUP6
000006b9: ADD
000006ba: ADD
000006bb: GT
000006bc: ISZERO
000006bd: PUSH2 0x06c5
000006c0: JUMPI
000006c1: PUSH1 0x00
000006c3: DUP1
000006c4: REVERT
000006c5: JUMPDEST
000006c6: PUSH1 0x20
000006c8: DUP4
000006c9: ADD
000006ca: SWAP5
000006cb: POP
000006cc: DUP1
000006cd: SWAP4
000006ce: POP
000006cf: POP
000006d0: POP
000006d1: POP
000006d2: SWAP3
000006d3: POP
000006d4: SWAP3
000006d5: POP
000006d6: SWAP3
000006d7: JUMP
000006d8: JUMPDEST
000006d9: PUSH1 0x00
000006db: JUMPDEST
000006dc: DUP4
000006dd: DUP2
000006de: LT
000006df: ISZERO
000006e0: PUSH2 0x06f3
000006e3: JUMPI
000006e4: DUP2
000006e5: DUP2
000006e6: ADD
000006e7: MLOAD
000006e8: DUP4
000006e9: DUP3
000006ea: ADD
000006eb: MSTORE
000006ec: PUSH1 0x20
000006ee: ADD
000006ef: PUSH2 0x06db
000006f2: JUMP
000006f3: JUMPDEST
000006f4: POP
000006f5: POP
000006f6: PUSH1 0x00
000006f8: SWAP2
000006f9: ADD
000006fa: MSTORE
000006fb: JUMP
000006fc: JUMPDEST
000006fd: PUSH1 0x00
000006ff: DUP3
00000700: MLOAD
00000701: PUSH2 0x070e
00000704: DUP2
00000705: DUP5
00000706: PUSH1 0x20
00000708: DUP8
00000709: ADD
0000070a: PUSH2 0x06d8
0000070d: JUMP
0000070e: JUMPDEST
0000070f: SWAP2
00000710: SWAP1
00000711: SWAP2
00000712: ADD
00000713: SWAP3
00000714: SWAP2
00000715: POP
00000716: POP
00000717: JUMP
00000718: JUMPDEST
00000719: PUSH1 0x20
0000071b: DUP2
0000071c: MSTORE
0000071d: PUSH1 0x00
0000071f: DUP3
00000720: MLOAD
00000721: DUP1
00000722: PUSH1 0x20
00000724: DUP5
00000725: ADD
00000726: MSTORE
00000727: PUSH2 0x0737
0000072a: DUP2
0000072b: PUSH1 0x40
0000072d: DUP6
0000072e: ADD
0000072f: PUSH1 0x20
00000731: DUP8
00000732: ADD
00000733: PUSH2 0x06d8
00000736: JUMP
00000737: JUMPDEST
00000738: PUSH1 0x1f
0000073a: ADD
0000073b: PUSH32 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0
0000075c: AND
0000075d: SWAP2
0000075e: SWAP1
0000075f: SWAP2
00000760: ADD
00000761: PUSH1 0x40
00000763: ADD
00000764: SWAP3
00000765: SWAP2
00000766: POP
00000767: POP
00000768: JUMP
00000769: INVALID
0000076a: COINBASE
0000076b: PUSH5 0x6472657373
00000771: GASPRICE
00000772: KECCAK256
00000773: PUSH13 0x6f772d6c6576656c2064656c65
00000781: PUSH8 0x6174652063616c6c
0000078a: KECCAK256
0000078b: PUSH7 0x61696c6564a164
00000793: PUSH20

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: 0x9277c71634dd47f9511eca121efbb4700730c48c8736a7f88eb3fa996e433788
call_targets: 0x2c0fa8b5c3a26ae8f014efb50ff27d95dd923502
target_varies: no
classification: constant_target
validation_json
{
    "sink": "DELEGATECALL",
    "errors": 0,
    "status": "sink_reached",
    "attempts": 2,
    "trace_id": "0x9277c71634dd47f9511eca121efbb4700730c48c8736a7f88eb3fa996e433788",
    "confirmed": false,
    "trace_mode": "callTracer",
    "call_targets": [
        "0x2c0fa8b5c3a26ae8f014efb50ff27d95dd923502"
    ],
    "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": "0x3659cfe6",
            "selector": "0x3659cfe6",
            "calldata_variants": [
                "0x3659cfe6",
                "0x3659cfe60000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x4f1ef286",
            "selector": "0x4f1ef286",
            "calldata_variants": [
                "0x4f1ef286",
                "0x4f1ef2860000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x5c60da1b",
            "selector": "0x5c60da1b",
            "calldata_variants": [
                "0x5c60da1b",
                "0x5c60da1b0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xf851a440",
            "selector": "0xf851a440",
            "calldata_variants": [
                "0xf851a440",
                "0xf851a4400000000000000000000000000000000000000000000000000000000000000000"
            ]
        }
    ]
}
evidence_json
{
    "examples": [
        {
            "pc": 878,
            "opcode": "DELEGATECALL",
            "returndata_checked": null,
            "value_expression_category": "n/a",
            "target_expression_category": "computed"
        },
        {
            "pc": 1431,
            "opcode": "DELEGATECALL",
            "returndata_checked": null,
            "value_expression_category": "n/a",
            "target_expression_category": "computed"
        }
    ],
    "guards_detected": [],
    "delegatecall_count": 2,
    "untrusted_delegatecall_count": 2
}
medium upgradeability cast DELEGATECALL present 80 no
view
evidence_json
{
    "notes": "delegatecall enables execution in caller context; common in proxies/upgradeable patterns",
    "delegatecall_count": 2
}