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

Analysis Run

019b477e-c76f-70ca-9ee6-a788ce9faf74

complete
Chain ID
1
Address
Block Number
Created
Mon, Dec 22, 2025 7:17 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 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
25967 artifact.fetch complete 1 / 3 3 months ago
25968 tool.cast_disasm complete 1 / 3 3 months ago
91397 analysis.bundle complete 1 / 3 1 week ago
91398 capability.graph complete 1 / 3 1 week ago
91399 detector.run complete 1 / 3 1 week ago
91400 validation.fork complete 1 / 3 1 week ago

Artifact

Runtime bytecode: available
Creation TX:
Deployer:
Proxy: no
Implementation:
Verified Source: yes

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
0
CALL-family (heavy)
0
EXT*/BALANCE
0
Total opcodes
640
Flags
delegatecall_present
View cast disassembly output
00000000: PUSH1 0x80
00000002: PUSH1 0x40
00000004: MSTORE
00000005: PUSH1 0x04
00000007: CALLDATASIZE
00000008: LT
00000009: PUSH2 0x00c0
0000000c: JUMPI
0000000d: PUSH1 0x00
0000000f: CALLDATALOAD
00000010: PUSH1 0xe0
00000012: SHR
00000013: DUP1
00000014: PUSH4 0x7b4044a0
00000019: GT
0000001a: PUSH2 0x0074
0000001d: JUMPI
0000001e: DUP1
0000001f: PUSH4 0xcfd7b0df
00000024: GT
00000025: PUSH2 0x004e
00000028: JUMPI
00000029: DUP1
0000002a: PUSH4 0xcfd7b0df
0000002f: EQ
00000030: PUSH2 0x0243
00000033: JUMPI
00000034: DUP1
00000035: PUSH4 0xd7dfa0dd
0000003a: EQ
0000003b: PUSH2 0x0270
0000003e: JUMPI
0000003f: DUP1
00000040: PUSH4 0xe3b2594f
00000045: EQ
00000046: PUSH2 0x02a4
00000049: JUMPI
0000004a: PUSH2 0x00c7
0000004d: JUMP
0000004e: JUMPDEST
0000004f: DUP1
00000050: PUSH4 0x7b4044a0
00000055: EQ
00000056: PUSH2 0x0202
00000059: JUMPI
0000005a: DUP1
0000005b: PUSH4 0x95d89b41
00000060: EQ
00000061: PUSH2 0x0218
00000064: JUMPI
00000065: DUP1
00000066: PUSH4 0xa001ecdd
0000006b: EQ
0000006c: PUSH2 0x022d
0000006f: JUMPI
00000070: PUSH2 0x00c7
00000073: JUMP
00000074: JUMPDEST
00000075: DUP1
00000076: PUSH4 0x1bb534ba
0000007b: GT
0000007c: PUSH2 0x00a5
0000007f: JUMPI
00000080: DUP1
00000081: PUSH4 0x1bb534ba
00000086: EQ
00000087: PUSH2 0x015c
0000008a: JUMPI
0000008b: DUP1
0000008c: PUSH4 0x200d2ed2
00000091: EQ
00000092: PUSH2 0x01ae
00000095: JUMPI
00000096: DUP1
00000097: PUSH4 0x570ca735
0000009c: EQ
0000009d: PUSH2 0x01d5
000000a0: JUMPI
000000a1: PUSH2 0x00c7
000000a4: JUMP
000000a5: JUMPDEST
000000a6: DUP1
000000a7: PUSH4 0x06fdde03
000000ac: EQ
000000ad: PUSH2 0x010d
000000b0: JUMPI
000000b1: DUP1
000000b2: PUSH4 0x18160ddd
000000b7: EQ
000000b8: PUSH2 0x0138
000000bb: JUMPI
000000bc: PUSH2 0x00c7
000000bf: JUMP
000000c0: JUMPDEST
000000c1: CALLDATASIZE
000000c2: PUSH2 0x00c7
000000c5: JUMPI
000000c6: STOP
000000c7: JUMPDEST
000000c8: PUSH1 0x40
000000ca: MLOAD
000000cb: CALLDATASIZE
000000cc: PUSH1 0x00
000000ce: DUP3
000000cf: CALLDATACOPY
000000d0: PUSH1 0x00
000000d2: DUP1
000000d3: CALLDATASIZE
000000d4: DUP4
000000d5: PUSH32 0x360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc
000000f6: SLOAD
000000f7: GAS
000000f8: DELEGATECALL
000000f9: RETURNDATASIZE
000000fa: DUP1
000000fb: PUSH1 0x00
000000fd: DUP5
000000fe: RETURNDATACOPY
000000ff: DUP2
00000100: DUP1
00000101: ISZERO
00000102: PUSH2 0x0109
00000105: JUMPI
00000106: DUP2
00000107: DUP5
00000108: RETURN
00000109: JUMPDEST
0000010a: DUP2
0000010b: DUP5
0000010c: REVERT
0000010d: JUMPDEST
0000010e: CALLVALUE
0000010f: DUP1
00000110: ISZERO
00000111: PUSH2 0x0119
00000114: JUMPI
00000115: PUSH1 0x00
00000117: DUP1
00000118: REVERT
00000119: JUMPDEST
0000011a: POP
0000011b: PUSH2 0x0122
0000011e: PUSH2 0x02ba
00000121: JUMP
00000122: JUMPDEST
00000123: PUSH1 0x40
00000125: MLOAD
00000126: PUSH2 0x012f
00000129: SWAP2
0000012a: SWAP1
0000012b: PUSH2 0x0396
0000012e: JUMP
0000012f: JUMPDEST
00000130: PUSH1 0x40
00000132: MLOAD
00000133: DUP1
00000134: SWAP2
00000135: SUB
00000136: SWAP1
00000137: RETURN
00000138: JUMPDEST
00000139: CALLVALUE
0000013a: DUP1
0000013b: ISZERO
0000013c: PUSH2 0x0144
0000013f: JUMPI
00000140: PUSH1 0x00
00000142: DUP1
00000143: REVERT
00000144: JUMPDEST
00000145: POP
00000146: PUSH2 0x014e
00000149: PUSH1 0x0a
0000014b: SLOAD
0000014c: DUP2
0000014d: JUMP
0000014e: JUMPDEST
0000014f: PUSH1 0x40
00000151: MLOAD
00000152: SWAP1
00000153: DUP2
00000154: MSTORE
00000155: PUSH1 0x20
00000157: ADD
00000158: PUSH2 0x012f
0000015b: JUMP
0000015c: JUMPDEST
0000015d: CALLVALUE
0000015e: DUP1
0000015f: ISZERO
00000160: PUSH2 0x0168
00000163: JUMPI
00000164: PUSH1 0x00
00000166: DUP1
00000167: REVERT
00000168: JUMPDEST
00000169: POP
0000016a: PUSH1 0x02
0000016c: SLOAD
0000016d: PUSH2 0x0189
00000170: SWAP1
00000171: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000186: AND
00000187: DUP2
00000188: JUMP
00000189: JUMPDEST
0000018a: PUSH1 0x40
0000018c: MLOAD
0000018d: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000001a2: SWAP1
000001a3: SWAP2
000001a4: AND
000001a5: DUP2
000001a6: MSTORE
000001a7: PUSH1 0x20
000001a9: ADD
000001aa: PUSH2 0x012f
000001ad: JUMP
000001ae: JUMPDEST
000001af: CALLVALUE
000001b0: DUP1
000001b1: ISZERO
000001b2: PUSH2 0x01ba
000001b5: JUMPI
000001b6: PUSH1 0x00
000001b8: DUP1
000001b9: REVERT
000001ba: JUMPDEST
000001bb: POP
000001bc: PUSH1 0x07
000001be: SLOAD
000001bf: PUSH2 0x01c8
000001c2: SWAP1
000001c3: PUSH1 0xff
000001c5: AND
000001c6: DUP2
000001c7: JUMP
000001c8: JUMPDEST
000001c9: PUSH1 0x40
000001cb: MLOAD
000001cc: PUSH2 0x012f
000001cf: SWAP2
000001d0: SWAP1
000001d1: PUSH2 0x0355
000001d4: JUMP
000001d5: JUMPDEST
000001d6: CALLVALUE
000001d7: DUP1
000001d8: ISZERO
000001d9: PUSH2 0x01e1
000001dc: JUMPI
000001dd: PUSH1 0x00
000001df: DUP1
000001e0: REVERT
000001e1: JUMPDEST
000001e2: POP
000001e3: PUSH1 0x01
000001e5: SLOAD
000001e6: PUSH2 0x0189
000001e9: SWAP1
000001ea: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000001ff: AND
00000200: DUP2
00000201: JUMP
00000202: JUMPDEST
00000203: CALLVALUE
00000204: DUP1
00000205: ISZERO
00000206: PUSH2 0x020e
00000209: JUMPI
0000020a: PUSH1 0x00
0000020c: DUP1
0000020d: REVERT
0000020e: JUMPDEST
0000020f: POP
00000210: PUSH2 0x014e
00000213: PUSH1 0x06
00000215: SLOAD
00000216: DUP2
00000217: JUMP
00000218: JUMPDEST
00000219: CALLVALUE
0000021a: DUP1
0000021b: ISZERO
0000021c: PUSH2 0x0224
0000021f: JUMPI
00000220: PUSH1 0x00
00000222: DUP1
00000223: REVERT
00000224: JUMPDEST
00000225: POP
00000226: PUSH2 0x0122
00000229: PUSH2 0x0348
0000022c: JUMP
0000022d: JUMPDEST
0000022e: CALLVALUE
0000022f: DUP1
00000230: ISZERO
00000231: PUSH2 0x0239
00000234: JUMPI
00000235: PUSH1 0x00
00000237: DUP1
00000238: REVERT
00000239: JUMPDEST
0000023a: POP
0000023b: PUSH2 0x014e
0000023e: PUSH1 0x05
00000240: SLOAD
00000241: DUP2
00000242: JUMP
00000243: JUMPDEST
00000244: CALLVALUE
00000245: DUP1
00000246: ISZERO
00000247: PUSH2 0x024f
0000024a: JUMPI
0000024b: PUSH1 0x00
0000024d: DUP1
0000024e: REVERT
0000024f: JUMPDEST
00000250: POP
00000251: PUSH1 0x03
00000253: SLOAD
00000254: PUSH2 0x0189
00000257: SWAP1
00000258: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
0000026d: AND
0000026e: DUP2
0000026f: JUMP
00000270: JUMPDEST
00000271: CALLVALUE
00000272: DUP1
00000273: ISZERO
00000274: PUSH2 0x027c
00000277: JUMPI
00000278: PUSH1 0x00
0000027a: DUP1
0000027b: REVERT
0000027c: JUMPDEST
0000027d: POP
0000027e: PUSH32 0x360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc
0000029f: SLOAD
000002a0: PUSH2 0x0189
000002a3: JUMP
000002a4: JUMPDEST
000002a5: CALLVALUE
000002a6: DUP1
000002a7: ISZERO
000002a8: PUSH2 0x02b0
000002ab: JUMPI
000002ac: PUSH1 0x00
000002ae: DUP1
000002af: REVERT
000002b0: JUMPDEST
000002b1: POP
000002b2: PUSH2 0x014e
000002b5: PUSH1 0x04
000002b7: SLOAD
000002b8: DUP2
000002b9: JUMP
000002ba: JUMPDEST
000002bb: PUSH1 0x08
000002bd: DUP1
000002be: SLOAD
000002bf: PUSH2 0x02c7
000002c2: SWAP1
000002c3: PUSH2 0x0409
000002c6: JUMP
000002c7: JUMPDEST
000002c8: DUP1
000002c9: PUSH1 0x1f
000002cb: ADD
000002cc: PUSH1 0x20
000002ce: DUP1
000002cf: SWAP2
000002d0: DIV
000002d1: MUL
000002d2: PUSH1 0x20
000002d4: ADD
000002d5: PUSH1 0x40
000002d7: MLOAD
000002d8: SWAP1
000002d9: DUP2
000002da: ADD
000002db: PUSH1 0x40
000002dd: MSTORE
000002de: DUP1
000002df: SWAP3
000002e0: SWAP2
000002e1: SWAP1
000002e2: DUP2
000002e3: DUP2
000002e4: MSTORE
000002e5: PUSH1 0x20
000002e7: ADD
000002e8: DUP3
000002e9: DUP1
000002ea: SLOAD
000002eb: PUSH2 0x02f3
000002ee: SWAP1
000002ef: PUSH2 0x0409
000002f2: JUMP
000002f3: JUMPDEST
000002f4: DUP1
000002f5: ISZERO
000002f6: PUSH2 0x0340
000002f9: JUMPI
000002fa: DUP1
000002fb: PUSH1 0x1f
000002fd: LT
000002fe: PUSH2 0x0315
00000301: JUMPI
00000302: PUSH2 0x0100
00000305: DUP1
00000306: DUP4
00000307: SLOAD
00000308: DIV
00000309: MUL
0000030a: DUP4
0000030b: MSTORE
0000030c: SWAP2
0000030d: PUSH1 0x20
0000030f: ADD
00000310: SWAP2
00000311: PUSH2 0x0340
00000314: JUMP
00000315: JUMPDEST
00000316: DUP3
00000317: ADD
00000318: SWAP2
00000319: SWAP1
0000031a: PUSH1 0x00
0000031c: MSTORE
0000031d: PUSH1 0x20
0000031f: PUSH1 0x00
00000321: KECCAK256
00000322: SWAP1
00000323: JUMPDEST
00000324: DUP2
00000325: SLOAD
00000326: DUP2
00000327: MSTORE
00000328: SWAP1
00000329: PUSH1 0x01
0000032b: ADD
0000032c: SWAP1
0000032d: PUSH1 0x20
0000032f: ADD
00000330: DUP1
00000331: DUP4
00000332: GT
00000333: PUSH2 0x0323
00000336: JUMPI
00000337: DUP3
00000338: SWAP1
00000339: SUB
0000033a: PUSH1 0x1f
0000033c: AND
0000033d: DUP3
0000033e: ADD
0000033f: SWAP2
00000340: JUMPDEST
00000341: POP
00000342: POP
00000343: POP
00000344: POP
00000345: POP
00000346: DUP2
00000347: JUMP
00000348: JUMPDEST
00000349: PUSH1 0x09
0000034b: DUP1
0000034c: SLOAD
0000034d: PUSH2 0x02c7
00000350: SWAP1
00000351: PUSH2 0x0409
00000354: JUMP
00000355: JUMPDEST
00000356: PUSH1 0x20
00000358: DUP2
00000359: ADD
0000035a: PUSH1 0x02
0000035c: DUP4
0000035d: LT
0000035e: PUSH2 0x0390
00000361: JUMPI
00000362: PUSH32 0x4e487b7100000000000000000000000000000000000000000000000000000000
00000383: PUSH1 0x00
00000385: MSTORE
00000386: PUSH1 0x21
00000388: PUSH1 0x04
0000038a: MSTORE
0000038b: PUSH1 0x24
0000038d: PUSH1 0x00
0000038f: REVERT
00000390: JUMPDEST
00000391: SWAP2
00000392: SWAP1
00000393: MSTORE
00000394: SWAP1
00000395: JUMP
00000396: JUMPDEST
00000397: PUSH1 0x00
00000399: PUSH1 0x20
0000039b: DUP1
0000039c: DUP4
0000039d: MSTORE
0000039e: DUP4
0000039f: MLOAD
000003a0: DUP1
000003a1: DUP3
000003a2: DUP6
000003a3: ADD
000003a4: MSTORE
000003a5: PUSH1 0x00
000003a7: JUMPDEST
000003a8: DUP2
000003a9: DUP2
000003aa: LT
000003ab: ISZERO
000003ac: PUSH2 0x03c3
000003af: JUMPI
000003b0: DUP6
000003b1: DUP2
000003b2: ADD
000003b3: DUP4
000003b4: ADD
000003b5: MLOAD
000003b6: DUP6
000003b7: DUP3
000003b8: ADD
000003b9: PUSH1 0x40
000003bb: ADD
000003bc: MSTORE
000003bd: DUP3
000003be: ADD
000003bf: PUSH2 0x03a7
000003c2: JUMP
000003c3: JUMPDEST
000003c4: DUP2
000003c5: DUP2
000003c6: GT
000003c7: ISZERO
000003c8: PUSH2 0x03d5
000003cb: JUMPI
000003cc: PUSH1 0x00
000003ce: PUSH1 0x40
000003d0: DUP4
000003d1: DUP8
000003d2: ADD
000003d3: ADD
000003d4: MSTORE
000003d5: JUMPDEST
000003d6: POP
000003d7: PUSH1 0x1f
000003d9: ADD
000003da: PUSH32 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0
000003fb: AND
000003fc: SWAP3
000003fd: SWAP1
000003fe: SWAP3
000003ff: ADD
00000400: PUSH1 0x40
00000402: ADD
00000403: SWAP4
00000404: SWAP3
00000405: POP
00000406: POP
00000407: POP
00000408: JUMP
00000409: JUMPDEST
0000040a: PUSH1 0x01
0000040c: DUP2
0000040d: DUP2
0000040e: SHR
0000040f: SWAP1
00000410: DUP3
00000411: AND
00000412: DUP1
00000413: PUSH2 0x041d
00000416: JUMPI
00000417: PUSH1 0x7f
00000419: DUP3
0000041a: AND
0000041b: SWAP2
0000041c: POP
0000041d: JUMPDEST
0000041e: PUSH1 0x20
00000420: DUP3
00000421: LT
00000422: DUP2
00000423: EQ
00000424: ISZERO
00000425: PUSH2 0x0457
00000428: JUMPI
00000429: PUSH32 0x4e487b7100000000000000000000000000000000000000000000000000000000
0000044a: PUSH1 0x00
0000044c: MSTORE
0000044d: PUSH1 0x22
0000044f: PUSH1 0x04
00000451: MSTORE
00000452: PUSH1 0x24
00000454: PUSH1 0x00
00000456: REVERT
00000457: JUMPDEST
00000458: POP
00000459: SWAP2
0000045a: SWAP1
0000045b: POP
0000045c: JUMP
0000045d: INVALID
0000045e: LOG2
0000045f: PUSH5 0x6970667358
00000465: UNKNOWN(0x22)
00000466: SLT
00000467: KECCAK256
00000468: UNKNOWN(0xF6)
00000469: UNKNOWN(0xAC)
0000046a: UNKNOWN(0x1F)
0000046b: UNKNOWN(0xD7)
0000046c: CALLDATASIZE
0000046d: GASPRICE
0000046e: CALLDATASIZE
0000046f: UNKNOWN(0xB7)
00000470: BYTE
00000471: UNKNOWN(0x4B)
00000472: UNKNOWN(0xC2)
00000473: PUSH3 0xe40ec0
00000477: UNKNOWN(0xFB)
00000478: UNKNOWN(0x4E)
00000479: UNKNOWN(0xBD)
0000047a: EXP
0000047b: UNKNOWN(0x0D)
0000047c: UNKNOWN(0xA6)
0000047d: BLOBBASEFEE
0000047e: MUL
0000047f: UNKNOWN(0x27)
00000480: DUP9
00000481: PUSH16 0x49edfcc9523864736f6c634300080600
00000492: CALLER

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: 0xf4d26c2cb23c3fff749ba5dc4eff21907552c7d288a3e4d2246b4af9eba53012
validation_json
{
    "sink": "DELEGATECALL",
    "errors": 0,
    "status": "unknown",
    "attempts": 132,
    "trace_id": "0xf4d26c2cb23c3fff749ba5dc4eff21907552c7d288a3e4d2246b4af9eba53012",
    "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": "0xcfd7b0df",
            "selector": "0xcfd7b0df",
            "calldata_variants": [
                "0xcfd7b0df",
                "0xcfd7b0df0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xd7dfa0dd",
            "selector": "0xd7dfa0dd",
            "calldata_variants": [
                "0xd7dfa0dd",
                "0xd7dfa0dd0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xe3b2594f",
            "selector": "0xe3b2594f",
            "calldata_variants": [
                "0xe3b2594f",
                "0xe3b2594f0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x7b4044a0",
            "selector": "0x7b4044a0",
            "calldata_variants": [
                "0x7b4044a0",
                "0x7b4044a00000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x95d89b41",
            "selector": "0x95d89b41",
            "calldata_variants": [
                "0x95d89b41",
                "0x95d89b410000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xa001ecdd",
            "selector": "0xa001ecdd",
            "calldata_variants": [
                "0xa001ecdd",
                "0xa001ecdd0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x1bb534ba",
            "selector": "0x1bb534ba",
            "calldata_variants": [
                "0x1bb534ba",
                "0x1bb534ba0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x200d2ed2",
            "selector": "0x200d2ed2",
            "calldata_variants": [
                "0x200d2ed2",
                "0x200d2ed20000000000000000000000000000000000000000000000000000000000000000"
            ]
        }
    ]
}
evidence_json
{
    "examples": [
        {
            "pc": 248,
            "opcode": "DELEGATECALL",
            "returndata_checked": null,
            "value_expression_category": "n/a",
            "target_expression_category": "computed"
        }
    ],
    "guards_detected": [],
    "delegatecall_count": 1,
    "untrusted_delegatecall_count": 1
}