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

Analysis Run

019b477e-c8c3-70c1-b11c-286ce560c287

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
26207 artifact.fetch complete 1 / 3 3 months ago
26208 tool.cast_disasm complete 1 / 3 3 months ago
112815 analysis.bundle complete 1 / 3 1 week ago
112816 capability.graph complete 1 / 3 1 week ago
112817 detector.run complete 1 / 3 1 week ago
112818 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
2
Selfdestruct
0
CREATE2
0
CALL-family (heavy)
0
EXT*/BALANCE
1
Total opcodes
620
Flags
delegatecall_present
View cast disassembly output
00000000: PUSH1 0x80
00000002: PUSH1 0x40
00000004: MSTORE
00000005: CALLDATASIZE
00000006: PUSH2 0x0013
00000009: JUMPI
0000000a: PUSH2 0x0011
0000000d: PUSH2 0x001d
00000010: JUMP
00000011: JUMPDEST
00000012: STOP
00000013: JUMPDEST
00000014: PUSH2 0x001b
00000017: PUSH2 0x001d
0000001a: JUMP
0000001b: JUMPDEST
0000001c: STOP
0000001d: JUMPDEST
0000001e: PUSH2 0x0025
00000021: PUSH2 0x0091
00000024: JUMP
00000025: JUMPDEST
00000026: PUSH2 0x0035
00000029: PUSH2 0x0030
0000002c: PUSH2 0x0093
0000002f: JUMP
00000030: JUMPDEST
00000031: PUSH2 0x00a2
00000034: JUMP
00000035: JUMPDEST
00000036: JUMP
00000037: JUMPDEST
00000038: PUSH1 0x60
0000003a: PUSH2 0x005c
0000003d: DUP4
0000003e: DUP4
0000003f: PUSH1 0x40
00000041: MLOAD
00000042: DUP1
00000043: PUSH1 0x60
00000045: ADD
00000046: PUSH1 0x40
00000048: MSTORE
00000049: DUP1
0000004a: PUSH1 0x27
0000004c: DUP2
0000004d: MSTORE
0000004e: PUSH1 0x20
00000050: ADD
00000051: PUSH2 0x03ff
00000054: PUSH1 0x27
00000056: SWAP2
00000057: CODECOPY
00000058: PUSH2 0x00c8
0000005b: JUMP
0000005c: JUMPDEST
0000005d: SWAP1
0000005e: POP
0000005f: SWAP3
00000060: SWAP2
00000061: POP
00000062: POP
00000063: JUMP
00000064: JUMPDEST
00000065: PUSH1 0x00
00000067: DUP1
00000068: DUP3
00000069: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
0000007e: AND
0000007f: EXTCODESIZE
00000080: GT
00000081: SWAP1
00000082: POP
00000083: SWAP2
00000084: SWAP1
00000085: POP
00000086: JUMP
00000087: JUMPDEST
00000088: PUSH1 0x00
0000008a: DUP2
0000008b: SWAP1
0000008c: POP
0000008d: SWAP2
0000008e: SWAP1
0000008f: POP
00000090: JUMP
00000091: JUMPDEST
00000092: JUMP
00000093: JUMPDEST
00000094: PUSH1 0x00
00000096: PUSH2 0x009d
00000099: PUSH2 0x0195
0000009c: JUMP
0000009d: JUMPDEST
0000009e: SWAP1
0000009f: POP
000000a0: SWAP1
000000a1: JUMP
000000a2: JUMPDEST
000000a3: CALLDATASIZE
000000a4: PUSH1 0x00
000000a6: DUP1
000000a7: CALLDATACOPY
000000a8: PUSH1 0x00
000000aa: DUP1
000000ab: CALLDATASIZE
000000ac: PUSH1 0x00
000000ae: DUP5
000000af: GAS
000000b0: DELEGATECALL
000000b1: RETURNDATASIZE
000000b2: PUSH1 0x00
000000b4: DUP1
000000b5: RETURNDATACOPY
000000b6: DUP1
000000b7: PUSH1 0x00
000000b9: DUP2
000000ba: EQ
000000bb: PUSH2 0x00c3
000000be: JUMPI
000000bf: RETURNDATASIZE
000000c0: PUSH1 0x00
000000c2: RETURN
000000c3: JUMPDEST
000000c4: RETURNDATASIZE
000000c5: PUSH1 0x00
000000c7: REVERT
000000c8: JUMPDEST
000000c9: PUSH1 0x60
000000cb: PUSH2 0x00d3
000000ce: DUP5
000000cf: PUSH2 0x0064
000000d2: JUMP
000000d3: JUMPDEST
000000d4: PUSH2 0x0112
000000d7: JUMPI
000000d8: PUSH1 0x40
000000da: MLOAD
000000db: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000
000000fc: DUP2
000000fd: MSTORE
000000fe: PUSH1 0x04
00000100: ADD
00000101: PUSH2 0x0109
00000104: SWAP1
00000105: PUSH2 0x0319
00000108: JUMP
00000109: JUMPDEST
0000010a: PUSH1 0x40
0000010c: MLOAD
0000010d: DUP1
0000010e: SWAP2
0000010f: SUB
00000110: SWAP1
00000111: REVERT
00000112: JUMPDEST
00000113: PUSH1 0x00
00000115: DUP1
00000116: DUP6
00000117: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
0000012c: AND
0000012d: DUP6
0000012e: PUSH1 0x40
00000130: MLOAD
00000131: PUSH2 0x013a
00000134: SWAP2
00000135: SWAP1
00000136: PUSH2 0x02e0
00000139: JUMP
0000013a: JUMPDEST
0000013b: PUSH1 0x00
0000013d: PUSH1 0x40
0000013f: MLOAD
00000140: DUP1
00000141: DUP4
00000142: SUB
00000143: DUP2
00000144: DUP6
00000145: GAS
00000146: DELEGATECALL
00000147: SWAP2
00000148: POP
00000149: POP
0000014a: RETURNDATASIZE
0000014b: DUP1
0000014c: PUSH1 0x00
0000014e: DUP2
0000014f: EQ
00000150: PUSH2 0x0175
00000153: JUMPI
00000154: PUSH1 0x40
00000156: MLOAD
00000157: SWAP2
00000158: POP
00000159: PUSH1 0x1f
0000015b: NOT
0000015c: PUSH1 0x3f
0000015e: RETURNDATASIZE
0000015f: ADD
00000160: AND
00000161: DUP3
00000162: ADD
00000163: PUSH1 0x40
00000165: MSTORE
00000166: RETURNDATASIZE
00000167: DUP3
00000168: MSTORE
00000169: RETURNDATASIZE
0000016a: PUSH1 0x00
0000016c: PUSH1 0x20
0000016e: DUP5
0000016f: ADD
00000170: RETURNDATACOPY
00000171: PUSH2 0x017a
00000174: JUMP
00000175: JUMPDEST
00000176: PUSH1 0x60
00000178: SWAP2
00000179: POP
0000017a: JUMPDEST
0000017b: POP
0000017c: SWAP2
0000017d: POP
0000017e: SWAP2
0000017f: POP
00000180: PUSH2 0x018a
00000183: DUP3
00000184: DUP3
00000185: DUP7
00000186: PUSH2 0x01ec
00000189: JUMP
0000018a: JUMPDEST
0000018b: SWAP3
0000018c: POP
0000018d: POP
0000018e: POP
0000018f: SWAP4
00000190: SWAP3
00000191: POP
00000192: POP
00000193: POP
00000194: JUMP
00000195: JUMPDEST
00000196: PUSH1 0x00
00000198: PUSH2 0x01c3
0000019b: PUSH32 0x360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc
000001bc: PUSH1 0x00
000001be: SHL
000001bf: PUSH2 0x0087
000001c2: JUMP
000001c3: JUMPDEST
000001c4: PUSH1 0x00
000001c6: ADD
000001c7: PUSH1 0x00
000001c9: SWAP1
000001ca: SLOAD
000001cb: SWAP1
000001cc: PUSH2 0x0100
000001cf: EXP
000001d0: SWAP1
000001d1: DIV
000001d2: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000001e7: AND
000001e8: SWAP1
000001e9: POP
000001ea: SWAP1
000001eb: JUMP
000001ec: JUMPDEST
000001ed: PUSH1 0x60
000001ef: DUP4
000001f0: ISZERO
000001f1: PUSH2 0x01fc
000001f4: JUMPI
000001f5: DUP3
000001f6: SWAP1
000001f7: POP
000001f8: PUSH2 0x024c
000001fb: JUMP
000001fc: JUMPDEST
000001fd: PUSH1 0x00
000001ff: DUP4
00000200: MLOAD
00000201: GT
00000202: ISZERO
00000203: PUSH2 0x020f
00000206: JUMPI
00000207: DUP3
00000208: MLOAD
00000209: DUP1
0000020a: DUP5
0000020b: PUSH1 0x20
0000020d: ADD
0000020e: REVERT
0000020f: JUMPDEST
00000210: DUP2
00000211: PUSH1 0x40
00000213: MLOAD
00000214: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000
00000235: DUP2
00000236: MSTORE
00000237: PUSH1 0x04
00000239: ADD
0000023a: PUSH2 0x0243
0000023d: SWAP2
0000023e: SWAP1
0000023f: PUSH2 0x02f7
00000242: JUMP
00000243: JUMPDEST
00000244: PUSH1 0x40
00000246: MLOAD
00000247: DUP1
00000248: SWAP2
00000249: SUB
0000024a: SWAP1
0000024b: REVERT
0000024c: JUMPDEST
0000024d: SWAP4
0000024e: SWAP3
0000024f: POP
00000250: POP
00000251: POP
00000252: JUMP
00000253: JUMPDEST
00000254: PUSH1 0x00
00000256: PUSH2 0x025e
00000259: DUP3
0000025a: PUSH2 0x0339
0000025d: JUMP
0000025e: JUMPDEST
0000025f: PUSH2 0x0268
00000262: DUP2
00000263: DUP6
00000264: PUSH2 0x034f
00000267: JUMP
00000268: JUMPDEST
00000269: SWAP4
0000026a: POP
0000026b: PUSH2 0x0278
0000026e: DUP2
0000026f: DUP6
00000270: PUSH1 0x20
00000272: DUP7
00000273: ADD
00000274: PUSH2 0x036b
00000277: JUMP
00000278: JUMPDEST
00000279: DUP1
0000027a: DUP5
0000027b: ADD
0000027c: SWAP2
0000027d: POP
0000027e: POP
0000027f: SWAP3
00000280: SWAP2
00000281: POP
00000282: POP
00000283: JUMP
00000284: JUMPDEST
00000285: PUSH1 0x00
00000287: PUSH2 0x028f
0000028a: DUP3
0000028b: PUSH2 0x0344
0000028e: JUMP
0000028f: JUMPDEST
00000290: PUSH2 0x0299
00000293: DUP2
00000294: DUP6
00000295: PUSH2 0x035a
00000298: JUMP
00000299: JUMPDEST
0000029a: SWAP4
0000029b: POP
0000029c: PUSH2 0x02a9
0000029f: DUP2
000002a0: DUP6
000002a1: PUSH1 0x20
000002a3: DUP7
000002a4: ADD
000002a5: PUSH2 0x036b
000002a8: JUMP
000002a9: JUMPDEST
000002aa: PUSH2 0x02b2
000002ad: DUP2
000002ae: PUSH2 0x039e
000002b1: JUMP
000002b2: JUMPDEST
000002b3: DUP5
000002b4: ADD
000002b5: SWAP2
000002b6: POP
000002b7: POP
000002b8: SWAP3
000002b9: SWAP2
000002ba: POP
000002bb: POP
000002bc: JUMP
000002bd: JUMPDEST
000002be: PUSH1 0x00
000002c0: PUSH2 0x02ca
000002c3: PUSH1 0x26
000002c5: DUP4
000002c6: PUSH2 0x035a
000002c9: JUMP
000002ca: JUMPDEST
000002cb: SWAP2
000002cc: POP
000002cd: PUSH2 0x02d5
000002d0: DUP3
000002d1: PUSH2 0x03af
000002d4: JUMP
000002d5: JUMPDEST
000002d6: PUSH1 0x40
000002d8: DUP3
000002d9: ADD
000002da: SWAP1
000002db: POP
000002dc: SWAP2
000002dd: SWAP1
000002de: POP
000002df: JUMP
000002e0: JUMPDEST
000002e1: PUSH1 0x00
000002e3: PUSH2 0x02ec
000002e6: DUP3
000002e7: DUP5
000002e8: PUSH2 0x0253
000002eb: JUMP
000002ec: JUMPDEST
000002ed: SWAP2
000002ee: POP
000002ef: DUP2
000002f0: SWAP1
000002f1: POP
000002f2: SWAP3
000002f3: SWAP2
000002f4: POP
000002f5: POP
000002f6: JUMP
000002f7: JUMPDEST
000002f8: PUSH1 0x00
000002fa: PUSH1 0x20
000002fc: DUP3
000002fd: ADD
000002fe: SWAP1
000002ff: POP
00000300: DUP2
00000301: DUP2
00000302: SUB
00000303: PUSH1 0x00
00000305: DUP4
00000306: ADD
00000307: MSTORE
00000308: PUSH2 0x0311
0000030b: DUP2
0000030c: DUP5
0000030d: PUSH2 0x0284
00000310: JUMP
00000311: JUMPDEST
00000312: SWAP1
00000313: POP
00000314: SWAP3
00000315: SWAP2
00000316: POP
00000317: POP
00000318: JUMP
00000319: JUMPDEST
0000031a: PUSH1 0x00
0000031c: PUSH1 0x20
0000031e: DUP3
0000031f: ADD
00000320: SWAP1
00000321: POP
00000322: DUP2
00000323: DUP2
00000324: SUB
00000325: PUSH1 0x00
00000327: DUP4
00000328: ADD
00000329: MSTORE
0000032a: PUSH2 0x0332
0000032d: DUP2
0000032e: PUSH2 0x02bd
00000331: JUMP
00000332: JUMPDEST
00000333: SWAP1
00000334: POP
00000335: SWAP2
00000336: SWAP1
00000337: POP
00000338: JUMP
00000339: JUMPDEST
0000033a: PUSH1 0x00
0000033c: DUP2
0000033d: MLOAD
0000033e: SWAP1
0000033f: POP
00000340: SWAP2
00000341: SWAP1
00000342: POP
00000343: JUMP
00000344: JUMPDEST
00000345: PUSH1 0x00
00000347: DUP2
00000348: MLOAD
00000349: SWAP1
0000034a: POP
0000034b: SWAP2
0000034c: SWAP1
0000034d: POP
0000034e: JUMP
0000034f: JUMPDEST
00000350: PUSH1 0x00
00000352: DUP2
00000353: SWAP1
00000354: POP
00000355: SWAP3
00000356: SWAP2
00000357: POP
00000358: POP
00000359: JUMP
0000035a: JUMPDEST
0000035b: PUSH1 0x00
0000035d: DUP3
0000035e: DUP3
0000035f: MSTORE
00000360: PUSH1 0x20
00000362: DUP3
00000363: ADD
00000364: SWAP1
00000365: POP
00000366: SWAP3
00000367: SWAP2
00000368: POP
00000369: POP
0000036a: JUMP
0000036b: JUMPDEST
0000036c: PUSH1 0x00
0000036e: JUMPDEST
0000036f: DUP4
00000370: DUP2
00000371: LT
00000372: ISZERO
00000373: PUSH2 0x0389
00000376: JUMPI
00000377: DUP1
00000378: DUP3
00000379: ADD
0000037a: MLOAD
0000037b: DUP2
0000037c: DUP5
0000037d: ADD
0000037e: MSTORE
0000037f: PUSH1 0x20
00000381: DUP2
00000382: ADD
00000383: SWAP1
00000384: POP
00000385: PUSH2 0x036e
00000388: JUMP
00000389: JUMPDEST
0000038a: DUP4
0000038b: DUP2
0000038c: GT
0000038d: ISZERO
0000038e: PUSH2 0x0398
00000391: JUMPI
00000392: PUSH1 0x00
00000394: DUP5
00000395: DUP5
00000396: ADD
00000397: MSTORE
00000398: JUMPDEST
00000399: POP
0000039a: POP
0000039b: POP
0000039c: POP
0000039d: JUMP
0000039e: JUMPDEST
0000039f: PUSH1 0x00
000003a1: PUSH1 0x1f
000003a3: NOT
000003a4: PUSH1 0x1f
000003a6: DUP4
000003a7: ADD
000003a8: AND
000003a9: SWAP1
000003aa: POP
000003ab: SWAP2
000003ac: SWAP1
000003ad: POP
000003ae: JUMP
000003af: JUMPDEST
000003b0: PUSH32 0x416464726573733a2064656c65676174652063616c6c20746f206e6f6e2d636f
000003d1: PUSH1 0x00
000003d3: DUP3
000003d4: ADD
000003d5: MSTORE
000003d6: PUSH32 0x6e74726163740000000000000000000000000000000000000000000000000000
000003f7: PUSH1 0x20
000003f9: DUP3
000003fa: ADD
000003fb: MSTORE
000003fc: POP
000003fd: JUMP
000003fe: INVALID
000003ff: COINBASE
00000400: PUSH5 0x6472657373
00000406: GASPRICE
00000407: KECCAK256
00000408: PUSH13 0x6f772d6c6576656c2064656c65
00000416: PUSH8 0x6174652063616c6c
0000041f: KECCAK256
00000420: PUSH7 0x61696c6564a264
00000428: PUSH10 0x70667358221220d35f2a
00000433: UNKNOWN(0x2C)
00000434: UNKNOWN(0xF9)
00000435: PUSH23 0xf4e9370d2d05a57653b8caa4c7f81b86b2e17e0a5cca23
0000044d: UNKNOWN(0xAB)
0000044e: DUP7
0000044f: PUSH32

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: 0x20eb8b3b70d88a5652af7bcf519de1e40f6d374e900645476067e1591a82f35a
call_targets: 0x6191d13860d792487bbd89e63e4c877dbb56d397
target_varies: no
classification: constant_target
validation_json
{
    "sink": "DELEGATECALL",
    "errors": 0,
    "status": "sink_reached",
    "attempts": 1,
    "trace_id": "0x20eb8b3b70d88a5652af7bcf519de1e40f6d374e900645476067e1591a82f35a",
    "confirmed": false,
    "trace_mode": "callTracer",
    "call_targets": [
        "0x6191d13860d792487bbd89e63e4c877dbb56d397"
    ],
    "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": "0x",
            "selector": "fallback",
            "calldata_variants": [
                "0x"
            ]
        }
    ]
}
evidence_json
{
    "examples": [
        {
            "pc": 176,
            "opcode": "DELEGATECALL",
            "returndata_checked": null,
            "value_expression_category": "n/a",
            "target_expression_category": "computed"
        },
        {
            "pc": 326,
            "opcode": "DELEGATECALL",
            "returndata_checked": null,
            "value_expression_category": "n/a",
            "target_expression_category": "computed"
        }
    ],
    "guards_detected": [],
    "delegatecall_count": 2,
    "untrusted_delegatecall_count": 2
}