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

Analysis Run

019ba940-8836-7017-9b7e-309755216b4c

complete
Chain ID
1
Address
Block Number
Created
Sat, Jan 10, 2026 6:52 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
36259 artifact.fetch complete 1 / 3 3 months ago
36260 proxy.resolve complete 1 / 3 3 months ago
36261 tool.cast_disasm complete 1 / 3 3 months ago
36262 analysis.bundle complete 1 / 3 3 months ago
36263 capability.graph complete 1 / 3 3 months ago
36264 detector.run complete 1 / 3 3 months ago
36265 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": "0x8a128385580d0becdd30000d8120bf2327c32f21"
        }
    },
    "implementation": "0x8a128385580d0becdd30000d8120bf2327c32f21",
    "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
3
Selfdestruct
0
CREATE2
0
CALL-family (heavy)
0
EXT*/BALANCE
3
Total opcodes
1105
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 0x004a
0000000c: JUMPI
0000000d: PUSH1 0x00
0000000f: CALLDATALOAD
00000010: PUSH1 0xe0
00000012: SHR
00000013: DUP1
00000014: PUSH4 0x3659cfe6
00000019: EQ
0000001a: PUSH2 0x0054
0000001d: JUMPI
0000001e: DUP1
0000001f: PUSH4 0x4f1ef286
00000024: EQ
00000025: PUSH2 0x0074
00000028: JUMPI
00000029: DUP1
0000002a: PUSH4 0x5c60da1b
0000002f: EQ
00000030: PUSH2 0x0087
00000033: JUMPI
00000034: DUP1
00000035: PUSH4 0xd1f57894
0000003a: EQ
0000003b: PUSH2 0x00b8
0000003e: JUMPI
0000003f: DUP1
00000040: PUSH4 0xf851a440
00000045: EQ
00000046: PUSH2 0x00cb
00000049: JUMPI
0000004a: JUMPDEST
0000004b: PUSH2 0x0052
0000004e: PUSH2 0x00e0
00000051: JUMP
00000052: JUMPDEST
00000053: STOP
00000054: JUMPDEST
00000055: CALLVALUE
00000056: DUP1
00000057: ISZERO
00000058: PUSH2 0x0060
0000005b: JUMPI
0000005c: PUSH1 0x00
0000005e: DUP1
0000005f: REVERT
00000060: JUMPDEST
00000061: POP
00000062: PUSH2 0x0052
00000065: PUSH2 0x006f
00000068: CALLDATASIZE
00000069: PUSH1 0x04
0000006b: PUSH2 0x0586
0000006e: JUMP
0000006f: JUMPDEST
00000070: PUSH2 0x0108
00000073: JUMP
00000074: JUMPDEST
00000075: PUSH2 0x0052
00000078: PUSH2 0x0082
0000007b: CALLDATASIZE
0000007c: PUSH1 0x04
0000007e: PUSH2 0x05a8
00000081: JUMP
00000082: JUMPDEST
00000083: PUSH2 0x014d
00000086: JUMP
00000087: JUMPDEST
00000088: CALLVALUE
00000089: DUP1
0000008a: ISZERO
0000008b: PUSH2 0x0093
0000008e: JUMPI
0000008f: PUSH1 0x00
00000091: DUP1
00000092: REVERT
00000093: JUMPDEST
00000094: POP
00000095: PUSH2 0x009c
00000098: PUSH2 0x0204
0000009b: JUMP
0000009c: JUMPDEST
0000009d: PUSH1 0x40
0000009f: MLOAD
000000a0: PUSH1 0x01
000000a2: PUSH1 0x01
000000a4: PUSH1 0xa0
000000a6: SHL
000000a7: SUB
000000a8: SWAP1
000000a9: SWAP2
000000aa: AND
000000ab: DUP2
000000ac: MSTORE
000000ad: PUSH1 0x20
000000af: ADD
000000b0: PUSH1 0x40
000000b2: MLOAD
000000b3: DUP1
000000b4: SWAP2
000000b5: SUB
000000b6: SWAP1
000000b7: RETURN
000000b8: JUMPDEST
000000b9: PUSH2 0x0052
000000bc: PUSH2 0x00c6
000000bf: CALLDATASIZE
000000c0: PUSH1 0x04
000000c2: PUSH2 0x0641
000000c5: JUMP
000000c6: JUMPDEST
000000c7: PUSH2 0x0256
000000ca: JUMP
000000cb: JUMPDEST
000000cc: CALLVALUE
000000cd: DUP1
000000ce: ISZERO
000000cf: PUSH2 0x00d7
000000d2: JUMPI
000000d3: PUSH1 0x00
000000d5: DUP1
000000d6: REVERT
000000d7: JUMPDEST
000000d8: POP
000000d9: PUSH2 0x009c
000000dc: PUSH2 0x0344
000000df: JUMP
000000e0: JUMPDEST
000000e1: PUSH2 0x00e8
000000e4: PUSH2 0x039c
000000e7: JUMP
000000e8: JUMPDEST
000000e9: PUSH2 0x0106
000000ec: PUSH2 0x0101
000000ef: PUSH1 0x00
000000f1: DUP1
000000f2: MLOAD
000000f3: PUSH1 0x20
000000f5: PUSH2 0x078a
000000f8: DUP4
000000f9: CODECOPY
000000fa: DUP2
000000fb: MLOAD
000000fc: SWAP2
000000fd: MSTORE
000000fe: SLOAD
000000ff: SWAP1
00000100: JUMP
00000101: JUMPDEST
00000102: PUSH2 0x03a4
00000105: JUMP
00000106: JUMPDEST
00000107: JUMP
00000108: JUMPDEST
00000109: CALLER
0000010a: PUSH1 0x01
0000010c: PUSH1 0x01
0000010e: PUSH1 0xa0
00000110: SHL
00000111: SUB
00000112: PUSH32 0x00000000000000000000000046339b1b9bc2145fcd272afc99002a931f8c2cff
00000133: AND
00000134: EQ
00000135: ISZERO
00000136: PUSH2 0x0145
00000139: JUMPI
0000013a: PUSH2 0x0142
0000013d: DUP2
0000013e: PUSH2 0x03c8
00000141: JUMP
00000142: JUMPDEST
00000143: POP
00000144: JUMP
00000145: JUMPDEST
00000146: PUSH2 0x0142
00000149: PUSH2 0x00e0
0000014c: JUMP
0000014d: JUMPDEST
0000014e: CALLER
0000014f: PUSH1 0x01
00000151: PUSH1 0x01
00000153: PUSH1 0xa0
00000155: SHL
00000156: SUB
00000157: PUSH32 0x00000000000000000000000046339b1b9bc2145fcd272afc99002a931f8c2cff
00000178: AND
00000179: EQ
0000017a: ISZERO
0000017b: PUSH2 0x01f7
0000017e: JUMPI
0000017f: PUSH2 0x0187
00000182: DUP4
00000183: PUSH2 0x03c8
00000186: JUMP
00000187: JUMPDEST
00000188: PUSH1 0x00
0000018a: DUP4
0000018b: PUSH1 0x01
0000018d: PUSH1 0x01
0000018f: PUSH1 0xa0
00000191: SHL
00000192: SUB
00000193: AND
00000194: DUP4
00000195: DUP4
00000196: PUSH1 0x40
00000198: MLOAD
00000199: PUSH2 0x01a3
0000019c: SWAP3
0000019d: SWAP2
0000019e: SWAP1
0000019f: PUSH2 0x0703
000001a2: JUMP
000001a3: JUMPDEST
000001a4: PUSH1 0x00
000001a6: PUSH1 0x40
000001a8: MLOAD
000001a9: DUP1
000001aa: DUP4
000001ab: SUB
000001ac: DUP2
000001ad: DUP6
000001ae: GAS
000001af: DELEGATECALL
000001b0: SWAP2
000001b1: POP
000001b2: POP
000001b3: RETURNDATASIZE
000001b4: DUP1
000001b5: PUSH1 0x00
000001b7: DUP2
000001b8: EQ
000001b9: PUSH2 0x01de
000001bc: JUMPI
000001bd: PUSH1 0x40
000001bf: MLOAD
000001c0: SWAP2
000001c1: POP
000001c2: PUSH1 0x1f
000001c4: NOT
000001c5: PUSH1 0x3f
000001c7: RETURNDATASIZE
000001c8: ADD
000001c9: AND
000001ca: DUP3
000001cb: ADD
000001cc: PUSH1 0x40
000001ce: MSTORE
000001cf: RETURNDATASIZE
000001d0: DUP3
000001d1: MSTORE
000001d2: RETURNDATASIZE
000001d3: PUSH1 0x00
000001d5: PUSH1 0x20
000001d7: DUP5
000001d8: ADD
000001d9: RETURNDATACOPY
000001da: PUSH2 0x01e3
000001dd: JUMP
000001de: JUMPDEST
000001df: PUSH1 0x60
000001e1: SWAP2
000001e2: POP
000001e3: JUMPDEST
000001e4: POP
000001e5: POP
000001e6: SWAP1
000001e7: POP
000001e8: DUP1
000001e9: PUSH2 0x01f1
000001ec: JUMPI
000001ed: PUSH1 0x00
000001ef: DUP1
000001f0: REVERT
000001f1: JUMPDEST
000001f2: POP
000001f3: POP
000001f4: POP
000001f5: POP
000001f6: JUMP
000001f7: JUMPDEST
000001f8: PUSH2 0x01ff
000001fb: PUSH2 0x00e0
000001fe: JUMP
000001ff: JUMPDEST
00000200: POP
00000201: POP
00000202: POP
00000203: JUMP
00000204: JUMPDEST
00000205: PUSH1 0x00
00000207: CALLER
00000208: PUSH1 0x01
0000020a: PUSH1 0x01
0000020c: PUSH1 0xa0
0000020e: SHL
0000020f: SUB
00000210: PUSH32 0x00000000000000000000000046339b1b9bc2145fcd272afc99002a931f8c2cff
00000231: AND
00000232: EQ
00000233: ISZERO
00000234: PUSH2 0x024b
00000237: JUMPI
00000238: POP
00000239: PUSH1 0x00
0000023b: DUP1
0000023c: MLOAD
0000023d: PUSH1 0x20
0000023f: PUSH2 0x078a
00000242: DUP4
00000243: CODECOPY
00000244: DUP2
00000245: MLOAD
00000246: SWAP2
00000247: MSTORE
00000248: SLOAD
00000249: SWAP1
0000024a: JUMP
0000024b: JUMPDEST
0000024c: PUSH2 0x0253
0000024f: PUSH2 0x00e0
00000252: JUMP
00000253: JUMPDEST
00000254: SWAP1
00000255: JUMP
00000256: JUMPDEST
00000257: PUSH1 0x00
00000259: PUSH2 0x026e
0000025c: PUSH1 0x00
0000025e: DUP1
0000025f: MLOAD
00000260: PUSH1 0x20
00000262: PUSH2 0x078a
00000265: DUP4
00000266: CODECOPY
00000267: DUP2
00000268: MLOAD
00000269: SWAP2
0000026a: MSTORE
0000026b: SLOAD
0000026c: SWAP1
0000026d: JUMP
0000026e: JUMPDEST
0000026f: PUSH1 0x01
00000271: PUSH1 0x01
00000273: PUSH1 0xa0
00000275: SHL
00000276: SUB
00000277: AND
00000278: EQ
00000279: PUSH2 0x0281
0000027c: JUMPI
0000027d: PUSH1 0x00
0000027f: DUP1
00000280: REVERT
00000281: JUMPDEST
00000282: PUSH2 0x02ac
00000285: PUSH1 0x01
00000287: PUSH32 0x360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbd
000002a8: PUSH2 0x0713
000002ab: JUMP
000002ac: JUMPDEST
000002ad: PUSH1 0x00
000002af: DUP1
000002b0: MLOAD
000002b1: PUSH1 0x20
000002b3: PUSH2 0x078a
000002b6: DUP4
000002b7: CODECOPY
000002b8: DUP2
000002b9: MLOAD
000002ba: SWAP2
000002bb: MSTORE
000002bc: EQ
000002bd: PUSH2 0x02c8
000002c0: JUMPI
000002c1: PUSH2 0x02c8
000002c4: PUSH2 0x0738
000002c7: JUMP
000002c8: JUMPDEST
000002c9: PUSH2 0x02d1
000002cc: DUP3
000002cd: PUSH2 0x0408
000002d0: JUMP
000002d1: JUMPDEST
000002d2: DUP1
000002d3: MLOAD
000002d4: ISZERO
000002d5: PUSH2 0x0340
000002d8: JUMPI
000002d9: PUSH1 0x00
000002db: DUP3
000002dc: PUSH1 0x01
000002de: PUSH1 0x01
000002e0: PUSH1 0xa0
000002e2: SHL
000002e3: SUB
000002e4: AND
000002e5: DUP3
000002e6: PUSH1 0x40
000002e8: MLOAD
000002e9: PUSH2 0x02f2
000002ec: SWAP2
000002ed: SWAP1
000002ee: PUSH2 0x074e
000002f1: JUMP
000002f2: JUMPDEST
000002f3: PUSH1 0x00
000002f5: PUSH1 0x40
000002f7: MLOAD
000002f8: DUP1
000002f9: DUP4
000002fa: SUB
000002fb: DUP2
000002fc: DUP6
000002fd: GAS
000002fe: DELEGATECALL
000002ff: SWAP2
00000300: POP
00000301: POP
00000302: RETURNDATASIZE
00000303: DUP1
00000304: PUSH1 0x00
00000306: DUP2
00000307: EQ
00000308: PUSH2 0x032d
0000030b: JUMPI
0000030c: PUSH1 0x40
0000030e: MLOAD
0000030f: SWAP2
00000310: POP
00000311: PUSH1 0x1f
00000313: NOT
00000314: PUSH1 0x3f
00000316: RETURNDATASIZE
00000317: ADD
00000318: AND
00000319: DUP3
0000031a: ADD
0000031b: PUSH1 0x40
0000031d: MSTORE
0000031e: RETURNDATASIZE
0000031f: DUP3
00000320: MSTORE
00000321: RETURNDATASIZE
00000322: PUSH1 0x00
00000324: PUSH1 0x20
00000326: DUP5
00000327: ADD
00000328: RETURNDATACOPY
00000329: PUSH2 0x0332
0000032c: JUMP
0000032d: JUMPDEST
0000032e: PUSH1 0x60
00000330: SWAP2
00000331: POP
00000332: JUMPDEST
00000333: POP
00000334: POP
00000335: SWAP1
00000336: POP
00000337: DUP1
00000338: PUSH2 0x01ff
0000033b: JUMPI
0000033c: PUSH1 0x00
0000033e: DUP1
0000033f: REVERT
00000340: JUMPDEST
00000341: POP
00000342: POP
00000343: JUMP
00000344: JUMPDEST
00000345: PUSH1 0x00
00000347: CALLER
00000348: PUSH1 0x01
0000034a: PUSH1 0x01
0000034c: PUSH1 0xa0
0000034e: SHL
0000034f: SUB
00000350: PUSH32 0x00000000000000000000000046339b1b9bc2145fcd272afc99002a931f8c2cff
00000371: AND
00000372: EQ
00000373: ISZERO
00000374: PUSH2 0x024b
00000377: JUMPI
00000378: POP
00000379: PUSH32 0x00000000000000000000000046339b1b9bc2145fcd272afc99002a931f8c2cff
0000039a: SWAP1
0000039b: JUMP
0000039c: JUMPDEST
0000039d: PUSH2 0x0106
000003a0: PUSH2 0x049a
000003a3: JUMP
000003a4: JUMPDEST
000003a5: CALLDATASIZE
000003a6: PUSH1 0x00
000003a8: DUP1
000003a9: CALLDATACOPY
000003aa: PUSH1 0x00
000003ac: DUP1
000003ad: CALLDATASIZE
000003ae: PUSH1 0x00
000003b0: DUP5
000003b1: GAS
000003b2: DELEGATECALL
000003b3: RETURNDATASIZE
000003b4: PUSH1 0x00
000003b6: DUP1
000003b7: RETURNDATACOPY
000003b8: DUP1
000003b9: DUP1
000003ba: ISZERO
000003bb: PUSH2 0x03c3
000003be: JUMPI
000003bf: RETURNDATASIZE
000003c0: PUSH1 0x00
000003c2: RETURN
000003c3: JUMPDEST
000003c4: RETURNDATASIZE
000003c5: PUSH1 0x00
000003c7: REVERT
000003c8: JUMPDEST
000003c9: PUSH2 0x03d1
000003cc: DUP2
000003cd: PUSH2 0x0408
000003d0: JUMP
000003d1: JUMPDEST
000003d2: PUSH1 0x40
000003d4: MLOAD
000003d5: PUSH1 0x01
000003d7: PUSH1 0x01
000003d9: PUSH1 0xa0
000003db: SHL
000003dc: SUB
000003dd: DUP3
000003de: AND
000003df: SWAP1
000003e0: PUSH32 0xbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b
00000401: SWAP1
00000402: PUSH1 0x00
00000404: SWAP1
00000405: LOG2
00000406: POP
00000407: JUMP
00000408: JUMPDEST
00000409: PUSH2 0x0411
0000040c: DUP2
0000040d: PUSH2 0x052e
00000410: JUMP
00000411: JUMPDEST
00000412: PUSH2 0x0488
00000415: JUMPI
00000416: PUSH1 0x40
00000418: MLOAD
00000419: PUSH3 0x461bcd
0000041d: PUSH1 0xe5
0000041f: SHL
00000420: DUP2
00000421: MSTORE
00000422: PUSH1 0x20
00000424: PUSH1 0x04
00000426: DUP3
00000427: ADD
00000428: MSTORE
00000429: PUSH1 0x3b
0000042b: PUSH1 0x24
0000042d: DUP3
0000042e: ADD
0000042f: MSTORE
00000430: PUSH32 0x43616e6e6f742073657420612070726f787920696d706c656d656e746174696f
00000451: PUSH1 0x44
00000453: DUP3
00000454: ADD
00000455: MSTORE
00000456: PUSH32 0x6e20746f2061206e6f6e2d636f6e747261637420616464726573730000000000
00000477: PUSH1 0x64
00000479: DUP3
0000047a: ADD
0000047b: MSTORE
0000047c: PUSH1 0x84
0000047e: ADD
0000047f: JUMPDEST
00000480: PUSH1 0x40
00000482: MLOAD
00000483: DUP1
00000484: SWAP2
00000485: SUB
00000486: SWAP1
00000487: REVERT
00000488: JUMPDEST
00000489: PUSH1 0x00
0000048b: DUP1
0000048c: MLOAD
0000048d: PUSH1 0x20
0000048f: PUSH2 0x078a
00000492: DUP4
00000493: CODECOPY
00000494: DUP2
00000495: MLOAD
00000496: SWAP2
00000497: MSTORE
00000498: SSTORE
00000499: JUMP
0000049a: JUMPDEST
0000049b: CALLER
0000049c: PUSH1 0x01
0000049e: PUSH1 0x01
000004a0: PUSH1 0xa0
000004a2: SHL
000004a3: SUB
000004a4: PUSH32 0x00000000000000000000000046339b1b9bc2145fcd272afc99002a931f8c2cff
000004c5: AND
000004c6: EQ
000004c7: ISZERO
000004c8: PUSH2 0x0106
000004cb: JUMPI
000004cc: PUSH1 0x40
000004ce: MLOAD
000004cf: PUSH3 0x461bcd
000004d3: PUSH1 0xe5
000004d5: SHL
000004d6: DUP2
000004d7: MSTORE
000004d8: PUSH1 0x20
000004da: PUSH1 0x04
000004dc: DUP3
000004dd: ADD
000004de: MSTORE
000004df: PUSH1 0x32
000004e1: PUSH1 0x24
000004e3: DUP3
000004e4: ADD
000004e5: MSTORE
000004e6: PUSH32 0x43616e6e6f742063616c6c2066616c6c6261636b2066756e6374696f6e206672
00000507: PUSH1 0x44
00000509: DUP3
0000050a: ADD
0000050b: MSTORE
0000050c: PUSH18 0x37b6903a343290383937bc3c9030b236b4b7
0000051f: PUSH1 0x71
00000521: SHL
00000522: PUSH1 0x64
00000524: DUP3
00000525: ADD
00000526: MSTORE
00000527: PUSH1 0x84
00000529: ADD
0000052a: PUSH2 0x047f
0000052d: JUMP
0000052e: JUMPDEST
0000052f: PUSH1 0x00
00000531: DUP2
00000532: EXTCODEHASH
00000533: PUSH32 0xc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470
00000554: DUP2
00000555: DUP2
00000556: EQ
00000557: DUP1
00000558: ISZERO
00000559: SWAP1
0000055a: PUSH2 0x0562
0000055d: JUMPI
0000055e: POP
0000055f: DUP2
00000560: ISZERO
00000561: ISZERO
00000562: JUMPDEST
00000563: SWAP5
00000564: SWAP4
00000565: POP
00000566: POP
00000567: POP
00000568: POP
00000569: JUMP
0000056a: JUMPDEST
0000056b: DUP1
0000056c: CALLDATALOAD
0000056d: PUSH1 0x01
0000056f: PUSH1 0x01
00000571: PUSH1 0xa0
00000573: SHL
00000574: SUB
00000575: DUP2
00000576: AND
00000577: DUP2
00000578: EQ
00000579: PUSH2 0x0581
0000057c: JUMPI
0000057d: PUSH1 0x00
0000057f: DUP1
00000580: REVERT
00000581: JUMPDEST
00000582: SWAP2
00000583: SWAP1
00000584: POP
00000585: JUMP
00000586: JUMPDEST
00000587: PUSH1 0x00
00000589: PUSH1 0x20
0000058b: DUP3
0000058c: DUP5
0000058d: SUB
0000058e: SLT
0000058f: ISZERO
00000590: PUSH2 0x0598
00000593: JUMPI
00000594: PUSH1 0x00
00000596: DUP1
00000597: REVERT
00000598: JUMPDEST
00000599: PUSH2 0x05a1
0000059c: DUP3
0000059d: PUSH2 0x056a
000005a0: JUMP
000005a1: JUMPDEST
000005a2: SWAP4
000005a3: SWAP3
000005a4: POP
000005a5: POP
000005a6: POP
000005a7: JUMP
000005a8: JUMPDEST
000005a9: PUSH1 0x00
000005ab: DUP1
000005ac: PUSH1 0x00
000005ae: PUSH1 0x40
000005b0: DUP5
000005b1: DUP7
000005b2: SUB
000005b3: SLT
000005b4: ISZERO
000005b5: PUSH2 0x05bd
000005b8: JUMPI
000005b9: PUSH1 0x00
000005bb: DUP1
000005bc: REVERT
000005bd: JUMPDEST
000005be: PUSH2 0x05c6
000005c1: DUP5
000005c2: PUSH2 0x056a
000005c5: JUMP
000005c6: JUMPDEST
000005c7: SWAP3
000005c8: POP
000005c9: PUSH1 0x20
000005cb: DUP5
000005cc: ADD
000005cd: CALLDATALOAD
000005ce: PUSH8 0xffffffffffffffff
000005d7: DUP1
000005d8: DUP3
000005d9: GT
000005da: ISZERO
000005db: PUSH2 0x05e3
000005de: JUMPI
000005df: PUSH1 0x00
000005e1: DUP1
000005e2: REVERT
000005e3: JUMPDEST
000005e4: DUP2
000005e5: DUP7
000005e6: ADD
000005e7: SWAP2
000005e8: POP
000005e9: DUP7
000005ea: PUSH1 0x1f
000005ec: DUP4
000005ed: ADD
000005ee: SLT
000005ef: PUSH2 0x05f7
000005f2: JUMPI
000005f3: PUSH1 0x00
000005f5: DUP1
000005f6: REVERT
000005f7: JUMPDEST
000005f8: DUP2
000005f9: CALLDATALOAD
000005fa: DUP2
000005fb: DUP2
000005fc: GT
000005fd: ISZERO
000005fe: PUSH2 0x0606
00000601: JUMPI
00000602: PUSH1 0x00
00000604: DUP1
00000605: REVERT
00000606: JUMPDEST
00000607: DUP8
00000608: PUSH1 0x20
0000060a: DUP3
0000060b: DUP6
0000060c: ADD
0000060d: ADD
0000060e: GT
0000060f: ISZERO
00000610: PUSH2 0x0618
00000613: JUMPI
00000614: PUSH1 0x00
00000616: DUP1
00000617: REVERT
00000618: JUMPDEST
00000619: PUSH1 0x20
0000061b: DUP4
0000061c: ADD
0000061d: SWAP5
0000061e: POP
0000061f: DUP1
00000620: SWAP4
00000621: POP
00000622: POP
00000623: POP
00000624: POP
00000625: SWAP3
00000626: POP
00000627: SWAP3
00000628: POP
00000629: SWAP3
0000062a: JUMP
0000062b: JUMPDEST
0000062c: PUSH4 0x4e487b71
00000631: PUSH1 0xe0
00000633: SHL
00000634: PUSH1 0x00
00000636: MSTORE
00000637: PUSH1 0x41
00000639: PUSH1 0x04
0000063b: MSTORE
0000063c: PUSH1 0x24
0000063e: PUSH1 0x00
00000640: REVERT
00000641: JUMPDEST
00000642: PUSH1 0x00
00000644: DUP1
00000645: PUSH1 0x40
00000647: DUP4
00000648: DUP6
00000649: SUB
0000064a: SLT
0000064b: ISZERO
0000064c: PUSH2 0x0654
0000064f: JUMPI
00000650: PUSH1 0x00
00000652: DUP1
00000653: REVERT
00000654: JUMPDEST
00000655: PUSH2 0x065d
00000658: DUP4
00000659: PUSH2 0x056a
0000065c: JUMP
0000065d: JUMPDEST
0000065e: SWAP2
0000065f: POP
00000660: PUSH1 0x20
00000662: DUP4
00000663: ADD
00000664: CALLDATALOAD
00000665: PUSH8 0xffffffffffffffff
0000066e: DUP1
0000066f: DUP3
00000670: GT
00000671: ISZERO
00000672: PUSH2 0x067a
00000675: JUMPI
00000676: PUSH1 0x00
00000678: DUP1
00000679: REVERT
0000067a: JUMPDEST
0000067b: DUP2
0000067c: DUP6
0000067d: ADD
0000067e: SWAP2
0000067f: POP
00000680: DUP6
00000681: PUSH1 0x1f
00000683: DUP4
00000684: ADD
00000685: SLT
00000686: PUSH2 0x068e
00000689: JUMPI
0000068a: PUSH1 0x00
0000068c: DUP1
0000068d: REVERT
0000068e: JUMPDEST
0000068f: DUP2
00000690: CALLDATALOAD
00000691: DUP2
00000692: DUP2
00000693: GT
00000694: ISZERO
00000695: PUSH2 0x06a0
00000698: JUMPI
00000699: PUSH2 0x06a0
0000069c: PUSH2 0x062b
0000069f: JUMP
000006a0: JUMPDEST
000006a1: PUSH1 0x40
000006a3: MLOAD
000006a4: PUSH1 0x1f
000006a6: DUP3
000006a7: ADD
000006a8: PUSH1 0x1f
000006aa: NOT
000006ab: SWAP1
000006ac: DUP2
000006ad: AND
000006ae: PUSH1 0x3f
000006b0: ADD
000006b1: AND
000006b2: DUP2
000006b3: ADD
000006b4: SWAP1
000006b5: DUP4
000006b6: DUP3
000006b7: GT
000006b8: DUP2
000006b9: DUP4
000006ba: LT
000006bb: OR
000006bc: ISZERO
000006bd: PUSH2 0x06c8
000006c0: JUMPI
000006c1: PUSH2 0x06c8
000006c4: PUSH2 0x062b
000006c7: JUMP
000006c8: JUMPDEST
000006c9: DUP2
000006ca: PUSH1 0x40
000006cc: MSTORE
000006cd: DUP3
000006ce: DUP2
000006cf: MSTORE
000006d0: DUP9
000006d1: PUSH1 0x20
000006d3: DUP5
000006d4: DUP8
000006d5: ADD
000006d6: ADD
000006d7: GT
000006d8: ISZERO
000006d9: PUSH2 0x06e1
000006dc: JUMPI
000006dd: PUSH1 0x00
000006df: DUP1
000006e0: REVERT
000006e1: JUMPDEST
000006e2: DUP3
000006e3: PUSH1 0x20
000006e5: DUP7
000006e6: ADD
000006e7: PUSH1 0x20
000006e9: DUP4
000006ea: ADD
000006eb: CALLDATACOPY
000006ec: PUSH1 0x00
000006ee: PUSH1 0x20
000006f0: DUP5
000006f1: DUP4
000006f2: ADD
000006f3: ADD
000006f4: MSTORE
000006f5: DUP1
000006f6: SWAP6
000006f7: POP
000006f8: POP
000006f9: POP
000006fa: POP
000006fb: POP
000006fc: POP
000006fd: SWAP3
000006fe: POP
000006ff: SWAP3
00000700: SWAP1
00000701: POP
00000702: JUMP
00000703: JUMPDEST
00000704: DUP2
00000705: DUP4
00000706: DUP3
00000707: CALLDATACOPY
00000708: PUSH1 0x00
0000070a: SWAP2
0000070b: ADD
0000070c: SWAP1
0000070d: DUP2
0000070e: MSTORE
0000070f: SWAP2
00000710: SWAP1
00000711: POP
00000712: JUMP
00000713: JUMPDEST
00000714: PUSH1 0x00
00000716: DUP3
00000717: DUP3
00000718: LT
00000719: ISZERO
0000071a: PUSH2 0x0733
0000071d: JUMPI
0000071e: PUSH4 0x4e487b71
00000723: PUSH1 0xe0
00000725: SHL
00000726: PUSH1 0x00
00000728: MSTORE
00000729: PUSH1 0x11
0000072b: PUSH1 0x04
0000072d: MSTORE
0000072e: PUSH1 0x24
00000730: PUSH1 0x00
00000732: REVERT
00000733: JUMPDEST
00000734: POP
00000735: SUB
00000736: SWAP1
00000737: JUMP
00000738: JUMPDEST
00000739: PUSH4 0x4e487b71
0000073e: PUSH1 0xe0
00000740: SHL
00000741: PUSH1 0x00
00000743: MSTORE
00000744: PUSH1 0x01
00000746: PUSH1 0x04
00000748: MSTORE
00000749: PUSH1 0x24
0000074b: PUSH1 0x00
0000074d: REVERT
0000074e: JUMPDEST
0000074f: PUSH1 0x00
00000751: DUP3
00000752: MLOAD
00000753: PUSH1 0x00
00000755: JUMPDEST
00000756: DUP2
00000757: DUP2
00000758: LT
00000759: ISZERO
0000075a: PUSH2 0x076f
0000075d: JUMPI
0000075e: PUSH1 0x20
00000760: DUP2
00000761: DUP7
00000762: ADD
00000763: DUP2
00000764: ADD
00000765: MLOAD
00000766: DUP6
00000767: DUP4
00000768: ADD
00000769: MSTORE
0000076a: ADD
0000076b: PUSH2 0x0755
0000076e: JUMP
0000076f: JUMPDEST
00000770: DUP2
00000771: DUP2
00000772: GT
00000773: ISZERO
00000774: PUSH2 0x077e
00000777: JUMPI
00000778: PUSH1 0x00
0000077a: DUP3
0000077b: DUP6
0000077c: ADD
0000077d: MSTORE
0000077e: JUMPDEST
0000077f: POP
00000780: SWAP2
00000781: SWAP1
00000782: SWAP2
00000783: ADD
00000784: SWAP3
00000785: SWAP2
00000786: POP
00000787: POP
00000788: JUMP
00000789: INVALID
0000078a: CALLDATASIZE
0000078b: ADDMOD
0000078c: SWAP5
0000078d: LOG1
0000078e: EXTCODESIZE
0000078f: LOG1
00000790: LOG3
00000791: UNKNOWN(0x21)
00000792: MOD
00000793: PUSH8 0xc828492db98dca3e
0000079c: KECCAK256
0000079d: PUSH23 0xcc3735a920a3ca505d382bbca264697066735822122084
000007b5: PUSH12 0x1d85f2f301ea3ea60fb4eb86
000007c2: BALANCE
000007c3: UNKNOWN(0xB1)
000007c4: PUSH3 0xa87e67
000007c8: UNKNOWN(0x22)
000007c9: CREATE
000007ca: UNKNOWN(0xB3)
000007cb: PUSH2 0x5507
000007ce: UNKNOWN(0xDB)
000007cf: UNKNOWN(0xB0)
000007d0: OR
000007d1: 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: 0x9f7b74cb1e95535765b8591004d0218b179b0b007bbdf85801c0123d605e6860
call_targets: 0x8a128385580d0becdd30000d8120bf2327c32f21
target_varies: no
classification: constant_target
validation_json
{
    "sink": "DELEGATECALL",
    "errors": 0,
    "status": "sink_reached",
    "attempts": 2,
    "trace_id": "0x9f7b74cb1e95535765b8591004d0218b179b0b007bbdf85801c0123d605e6860",
    "confirmed": false,
    "trace_mode": "callTracer",
    "call_targets": [
        "0x8a128385580d0becdd30000d8120bf2327c32f21"
    ],
    "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": "0xd1f57894",
            "selector": "0xd1f57894",
            "calldata_variants": [
                "0xd1f57894",
                "0xd1f578940000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xf851a440",
            "selector": "0xf851a440",
            "calldata_variants": [
                "0xf851a440",
                "0xf851a4400000000000000000000000000000000000000000000000000000000000000000"
            ]
        }
    ]
}
evidence_json
{
    "examples": [
        {
            "pc": 431,
            "opcode": "DELEGATECALL",
            "returndata_checked": null,
            "value_expression_category": "n/a",
            "target_expression_category": "computed"
        },
        {
            "pc": 766,
            "opcode": "DELEGATECALL",
            "returndata_checked": null,
            "value_expression_category": "n/a",
            "target_expression_category": "computed"
        },
        {
            "pc": 946,
            "opcode": "DELEGATECALL",
            "returndata_checked": null,
            "value_expression_category": "n/a",
            "target_expression_category": "computed"
        }
    ],
    "guards_detected": [],
    "delegatecall_count": 3,
    "untrusted_delegatecall_count": 3
}
medium upgradeability cast DELEGATECALL present 80 no
view
evidence_json
{
    "notes": "delegatecall enables execution in caller context; common in proxies/upgradeable patterns",
    "delegatecall_count": 3
}
medium other detector CREATE/CREATE2 reachable 45 no no
view
trace_id: 0xe3aeb2b2f8452e93151bfbcd4f2485a23f2879cdc552e44863175e802816da64
validation_json
{
    "sink": "CREATE",
    "errors": 0,
    "status": "unknown",
    "attempts": 10,
    "trace_id": "0xe3aeb2b2f8452e93151bfbcd4f2485a23f2879cdc552e44863175e802816da64",
    "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": "0x3659cfe6",
            "selector": "0x3659cfe6",
            "calldata_variants": [
                "0x3659cfe6",
                "0x3659cfe60000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x4f1ef286",
            "selector": "0x4f1ef286",
            "calldata_variants": [
                "0x4f1ef286",
                "0x4f1ef2860000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x5c60da1b",
            "selector": "0x5c60da1b",
            "calldata_variants": [
                "0x5c60da1b",
                "0x5c60da1b0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xd1f57894",
            "selector": "0xd1f57894",
            "calldata_variants": [
                "0xd1f57894",
                "0xd1f578940000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xf851a440",
            "selector": "0xf851a440",
            "calldata_variants": [
                "0xf851a440",
                "0xf851a4400000000000000000000000000000000000000000000000000000000000000000"
            ]
        }
    ]
}
evidence_json
{
    "create_count": 1,
    "create2_count": 0
}
low other cast Contract creation opcode present 60 no
view
evidence_json
{
    "notes": "runtime can deploy contracts dynamically via CREATE/CREATE2",
    "create_count": 1,
    "create2_count": 0
}