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

Analysis Run

019ba9a5-c626-70dd-8343-a2ecb52c2677

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
37066 artifact.fetch complete 1 / 3 3 months ago
37067 proxy.resolve complete 1 / 3 3 months ago
37068 tool.cast_disasm complete 1 / 3 3 months ago
37069 analysis.bundle complete 1 / 3 3 months ago
37070 capability.graph complete 1 / 3 3 months ago
37071 detector.run complete 1 / 3 3 months ago
37072 validation.fork complete 1 / 3 3 months ago

Artifact

Runtime bytecode: available
Creation TX:
Deployer:
Proxy: yes etherscan_only
Verified Source: yes
Proxy evidence
{
    "status": "etherscan_only",
    "etherscan_hint": {
        "source": "etherscan",
        "etherscan": {
            "proxy_flag": true,
            "implementation": "0x2a3f1a37c04f82aa274f5353834b2d002db91015"
        }
    },
    "implementation": "0x2a3f1a37c04f82aa274f5353834b2d002db91015"
}

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)
1
EXT*/BALANCE
2
Total opcodes
674
Flags
delegatecall_present
View cast disassembly output
00000000: PUSH1 0x80
00000002: PUSH1 0x40
00000004: MSTORE
00000005: PUSH1 0x04
00000007: CALLDATASIZE
00000008: LT
00000009: PUSH2 0x006c
0000000c: JUMPI
0000000d: PUSH4 0xffffffff
00000012: PUSH29 0x0100000000000000000000000000000000000000000000000000000000
00000030: PUSH1 0x00
00000032: CALLDATALOAD
00000033: DIV
00000034: AND
00000035: PUSH4 0x3659cfe6
0000003a: DUP2
0000003b: EQ
0000003c: PUSH2 0x0076
0000003f: JUMPI
00000040: DUP1
00000041: PUSH4 0x4f1ef286
00000046: EQ
00000047: PUSH2 0x0097
0000004a: JUMPI
0000004b: DUP1
0000004c: PUSH4 0x5c60da1b
00000051: EQ
00000052: PUSH2 0x00b7
00000055: JUMPI
00000056: DUP1
00000057: PUSH4 0x8f283970
0000005c: EQ
0000005d: PUSH2 0x00e8
00000060: JUMPI
00000061: DUP1
00000062: PUSH4 0xf851a440
00000067: EQ
00000068: PUSH2 0x0109
0000006b: JUMPI
0000006c: JUMPDEST
0000006d: PUSH2 0x0074
00000070: PUSH2 0x011e
00000073: JUMP
00000074: JUMPDEST
00000075: STOP
00000076: JUMPDEST
00000077: CALLVALUE
00000078: DUP1
00000079: ISZERO
0000007a: PUSH2 0x0082
0000007d: JUMPI
0000007e: PUSH1 0x00
00000080: DUP1
00000081: REVERT
00000082: JUMPDEST
00000083: POP
00000084: PUSH2 0x0074
00000087: PUSH1 0x01
00000089: PUSH1 0xa0
0000008b: PUSH1 0x02
0000008d: EXP
0000008e: SUB
0000008f: PUSH1 0x04
00000091: CALLDATALOAD
00000092: AND
00000093: PUSH2 0x0138
00000096: JUMP
00000097: JUMPDEST
00000098: PUSH2 0x0074
0000009b: PUSH1 0x04
0000009d: DUP1
0000009e: CALLDATALOAD
0000009f: PUSH1 0x01
000000a1: PUSH1 0xa0
000000a3: PUSH1 0x02
000000a5: EXP
000000a6: SUB
000000a7: AND
000000a8: SWAP1
000000a9: PUSH1 0x24
000000ab: DUP1
000000ac: CALLDATALOAD
000000ad: SWAP1
000000ae: DUP2
000000af: ADD
000000b0: SWAP2
000000b1: ADD
000000b2: CALLDATALOAD
000000b3: PUSH2 0x0172
000000b6: JUMP
000000b7: JUMPDEST
000000b8: CALLVALUE
000000b9: DUP1
000000ba: ISZERO
000000bb: PUSH2 0x00c3
000000be: JUMPI
000000bf: PUSH1 0x00
000000c1: DUP1
000000c2: REVERT
000000c3: JUMPDEST
000000c4: POP
000000c5: PUSH2 0x00cc
000000c8: PUSH2 0x01ea
000000cb: JUMP
000000cc: JUMPDEST
000000cd: PUSH1 0x40
000000cf: DUP1
000000d0: MLOAD
000000d1: PUSH1 0x01
000000d3: PUSH1 0xa0
000000d5: PUSH1 0x02
000000d7: EXP
000000d8: SUB
000000d9: SWAP1
000000da: SWAP3
000000db: AND
000000dc: DUP3
000000dd: MSTORE
000000de: MLOAD
000000df: SWAP1
000000e0: DUP2
000000e1: SWAP1
000000e2: SUB
000000e3: PUSH1 0x20
000000e5: ADD
000000e6: SWAP1
000000e7: RETURN
000000e8: JUMPDEST
000000e9: CALLVALUE
000000ea: DUP1
000000eb: ISZERO
000000ec: PUSH2 0x00f4
000000ef: JUMPI
000000f0: PUSH1 0x00
000000f2: DUP1
000000f3: REVERT
000000f4: JUMPDEST
000000f5: POP
000000f6: PUSH2 0x0074
000000f9: PUSH1 0x01
000000fb: PUSH1 0xa0
000000fd: PUSH1 0x02
000000ff: EXP
00000100: SUB
00000101: PUSH1 0x04
00000103: CALLDATALOAD
00000104: AND
00000105: PUSH2 0x0227
00000108: JUMP
00000109: JUMPDEST
0000010a: CALLVALUE
0000010b: DUP1
0000010c: ISZERO
0000010d: PUSH2 0x0115
00000110: JUMPI
00000111: PUSH1 0x00
00000113: DUP1
00000114: REVERT
00000115: JUMPDEST
00000116: POP
00000117: PUSH2 0x00cc
0000011a: PUSH2 0x0339
0000011d: JUMP
0000011e: JUMPDEST
0000011f: PUSH2 0x0126
00000122: PUSH2 0x0364
00000125: JUMP
00000126: JUMPDEST
00000127: PUSH2 0x0136
0000012a: PUSH2 0x0131
0000012d: PUSH2 0x0411
00000130: JUMP
00000131: JUMPDEST
00000132: PUSH2 0x0436
00000135: JUMP
00000136: JUMPDEST
00000137: JUMP
00000138: JUMPDEST
00000139: PUSH2 0x0140
0000013c: PUSH2 0x045a
0000013f: JUMP
00000140: JUMPDEST
00000141: PUSH1 0x01
00000143: PUSH1 0xa0
00000145: PUSH1 0x02
00000147: EXP
00000148: SUB
00000149: AND
0000014a: CALLER
0000014b: PUSH1 0x01
0000014d: PUSH1 0xa0
0000014f: PUSH1 0x02
00000151: EXP
00000152: SUB
00000153: AND
00000154: EQ
00000155: ISZERO
00000156: PUSH2 0x0167
00000159: JUMPI
0000015a: PUSH2 0x0162
0000015d: DUP2
0000015e: PUSH2 0x047f
00000161: JUMP
00000162: JUMPDEST
00000163: PUSH2 0x016f
00000166: JUMP
00000167: JUMPDEST
00000168: PUSH2 0x016f
0000016b: PUSH2 0x011e
0000016e: JUMP
0000016f: JUMPDEST
00000170: POP
00000171: JUMP
00000172: JUMPDEST
00000173: PUSH2 0x017a
00000176: PUSH2 0x045a
00000179: JUMP
0000017a: JUMPDEST
0000017b: PUSH1 0x01
0000017d: PUSH1 0xa0
0000017f: PUSH1 0x02
00000181: EXP
00000182: SUB
00000183: AND
00000184: CALLER
00000185: PUSH1 0x01
00000187: PUSH1 0xa0
00000189: PUSH1 0x02
0000018b: EXP
0000018c: SUB
0000018d: AND
0000018e: EQ
0000018f: ISZERO
00000190: PUSH2 0x01dd
00000193: JUMPI
00000194: PUSH2 0x019c
00000197: DUP4
00000198: PUSH2 0x047f
0000019b: JUMP
0000019c: JUMPDEST
0000019d: ADDRESS
0000019e: PUSH1 0x01
000001a0: PUSH1 0xa0
000001a2: PUSH1 0x02
000001a4: EXP
000001a5: SUB
000001a6: AND
000001a7: CALLVALUE
000001a8: DUP4
000001a9: DUP4
000001aa: PUSH1 0x40
000001ac: MLOAD
000001ad: DUP1
000001ae: DUP4
000001af: DUP4
000001b0: DUP1
000001b1: DUP3
000001b2: DUP5
000001b3: CALLDATACOPY
000001b4: DUP3
000001b5: ADD
000001b6: SWAP2
000001b7: POP
000001b8: POP
000001b9: SWAP3
000001ba: POP
000001bb: POP
000001bc: POP
000001bd: PUSH1 0x00
000001bf: PUSH1 0x40
000001c1: MLOAD
000001c2: DUP1
000001c3: DUP4
000001c4: SUB
000001c5: DUP2
000001c6: DUP6
000001c7: DUP8
000001c8: GAS
000001c9: CALL
000001ca: SWAP3
000001cb: POP
000001cc: POP
000001cd: POP
000001ce: ISZERO
000001cf: ISZERO
000001d0: PUSH2 0x01d8
000001d3: JUMPI
000001d4: PUSH1 0x00
000001d6: DUP1
000001d7: REVERT
000001d8: JUMPDEST
000001d9: PUSH2 0x01e5
000001dc: JUMP
000001dd: JUMPDEST
000001de: PUSH2 0x01e5
000001e1: PUSH2 0x011e
000001e4: JUMP
000001e5: JUMPDEST
000001e6: POP
000001e7: POP
000001e8: POP
000001e9: JUMP
000001ea: JUMPDEST
000001eb: PUSH1 0x00
000001ed: PUSH2 0x01f4
000001f0: PUSH2 0x045a
000001f3: JUMP
000001f4: JUMPDEST
000001f5: PUSH1 0x01
000001f7: PUSH1 0xa0
000001f9: PUSH1 0x02
000001fb: EXP
000001fc: SUB
000001fd: AND
000001fe: CALLER
000001ff: PUSH1 0x01
00000201: PUSH1 0xa0
00000203: PUSH1 0x02
00000205: EXP
00000206: SUB
00000207: AND
00000208: EQ
00000209: ISZERO
0000020a: PUSH2 0x021c
0000020d: JUMPI
0000020e: PUSH2 0x0215
00000211: PUSH2 0x0411
00000214: JUMP
00000215: JUMPDEST
00000216: SWAP1
00000217: POP
00000218: PUSH2 0x0224
0000021b: JUMP
0000021c: JUMPDEST
0000021d: PUSH2 0x0224
00000220: PUSH2 0x011e
00000223: JUMP
00000224: JUMPDEST
00000225: SWAP1
00000226: JUMP
00000227: JUMPDEST
00000228: PUSH2 0x022f
0000022b: PUSH2 0x045a
0000022e: JUMP
0000022f: JUMPDEST
00000230: PUSH1 0x01
00000232: PUSH1 0xa0
00000234: PUSH1 0x02
00000236: EXP
00000237: SUB
00000238: AND
00000239: CALLER
0000023a: PUSH1 0x01
0000023c: PUSH1 0xa0
0000023e: PUSH1 0x02
00000240: EXP
00000241: SUB
00000242: AND
00000243: EQ
00000244: ISZERO
00000245: PUSH2 0x0167
00000248: JUMPI
00000249: PUSH1 0x01
0000024b: PUSH1 0xa0
0000024d: PUSH1 0x02
0000024f: EXP
00000250: SUB
00000251: DUP2
00000252: AND
00000253: ISZERO
00000254: ISZERO
00000255: PUSH2 0x02e5
00000258: JUMPI
00000259: PUSH1 0x40
0000025b: DUP1
0000025c: MLOAD
0000025d: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000
0000027e: DUP2
0000027f: MSTORE
00000280: PUSH1 0x20
00000282: PUSH1 0x04
00000284: DUP3
00000285: ADD
00000286: MSTORE
00000287: PUSH1 0x36
00000289: PUSH1 0x24
0000028b: DUP3
0000028c: ADD
0000028d: MSTORE
0000028e: PUSH32 0x43616e6e6f74206368616e6765207468652061646d696e206f6620612070726f
000002af: PUSH1 0x44
000002b1: DUP3
000002b2: ADD
000002b3: MSTORE
000002b4: PUSH32 0x787920746f20746865207a65726f206164647265737300000000000000000000
000002d5: PUSH1 0x64
000002d7: DUP3
000002d8: ADD
000002d9: MSTORE
000002da: SWAP1
000002db: MLOAD
000002dc: SWAP1
000002dd: DUP2
000002de: SWAP1
000002df: SUB
000002e0: PUSH1 0x84
000002e2: ADD
000002e3: SWAP1
000002e4: REVERT
000002e5: JUMPDEST
000002e6: PUSH32 0x7e644d79422f17c01e4894b5f4f588d331ebfa28653d42ae832dc59e38c9798f
00000307: PUSH2 0x030e
0000030a: PUSH2 0x045a
0000030d: JUMP
0000030e: JUMPDEST
0000030f: PUSH1 0x40
00000311: DUP1
00000312: MLOAD
00000313: PUSH1 0x01
00000315: PUSH1 0xa0
00000317: PUSH1 0x02
00000319: EXP
0000031a: SUB
0000031b: SWAP3
0000031c: DUP4
0000031d: AND
0000031e: DUP2
0000031f: MSTORE
00000320: SWAP2
00000321: DUP5
00000322: AND
00000323: PUSH1 0x20
00000325: DUP4
00000326: ADD
00000327: MSTORE
00000328: DUP1
00000329: MLOAD
0000032a: SWAP2
0000032b: DUP3
0000032c: SWAP1
0000032d: SUB
0000032e: ADD
0000032f: SWAP1
00000330: LOG1
00000331: PUSH2 0x0162
00000334: DUP2
00000335: PUSH2 0x04c7
00000338: JUMP
00000339: JUMPDEST
0000033a: PUSH1 0x00
0000033c: PUSH2 0x0343
0000033f: PUSH2 0x045a
00000342: JUMP
00000343: JUMPDEST
00000344: PUSH1 0x01
00000346: PUSH1 0xa0
00000348: PUSH1 0x02
0000034a: EXP
0000034b: SUB
0000034c: AND
0000034d: CALLER
0000034e: PUSH1 0x01
00000350: PUSH1 0xa0
00000352: PUSH1 0x02
00000354: EXP
00000355: SUB
00000356: AND
00000357: EQ
00000358: ISZERO
00000359: PUSH2 0x021c
0000035c: JUMPI
0000035d: PUSH2 0x0215
00000360: PUSH2 0x045a
00000363: JUMP
00000364: JUMPDEST
00000365: PUSH2 0x036c
00000368: PUSH2 0x045a
0000036b: JUMP
0000036c: JUMPDEST
0000036d: PUSH1 0x01
0000036f: PUSH1 0xa0
00000371: PUSH1 0x02
00000373: EXP
00000374: SUB
00000375: AND
00000376: CALLER
00000377: EQ
00000378: ISZERO
00000379: PUSH2 0x0409
0000037c: JUMPI
0000037d: PUSH1 0x40
0000037f: DUP1
00000380: MLOAD
00000381: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000
000003a2: DUP2
000003a3: MSTORE
000003a4: PUSH1 0x20
000003a6: PUSH1 0x04
000003a8: DUP3
000003a9: ADD
000003aa: MSTORE
000003ab: PUSH1 0x32
000003ad: PUSH1 0x24
000003af: DUP3
000003b0: ADD
000003b1: MSTORE
000003b2: PUSH32 0x43616e6e6f742063616c6c2066616c6c6261636b2066756e6374696f6e206672
000003d3: PUSH1 0x44
000003d5: DUP3
000003d6: ADD
000003d7: MSTORE
000003d8: PUSH32 0x6f6d207468652070726f78792061646d696e0000000000000000000000000000
000003f9: PUSH1 0x64
000003fb: DUP3
000003fc: ADD
000003fd: MSTORE
000003fe: SWAP1
000003ff: MLOAD
00000400: SWAP1
00000401: DUP2
00000402: SWAP1
00000403: SUB
00000404: PUSH1 0x84
00000406: ADD
00000407: SWAP1
00000408: REVERT
00000409: JUMPDEST
0000040a: PUSH2 0x0136
0000040d: PUSH2 0x0136
00000410: JUMP
00000411: JUMPDEST
00000412: PUSH32 0x7050c9e0f4ca769c69bd3a8ef740bc37934f8e2c036e5a723fd8ee048ed3f8c3
00000433: SLOAD
00000434: SWAP1
00000435: JUMP
00000436: JUMPDEST
00000437: CALLDATASIZE
00000438: PUSH1 0x00
0000043a: DUP1
0000043b: CALLDATACOPY
0000043c: PUSH1 0x00
0000043e: DUP1
0000043f: CALLDATASIZE
00000440: PUSH1 0x00
00000442: DUP5
00000443: GAS
00000444: DELEGATECALL
00000445: RETURNDATASIZE
00000446: PUSH1 0x00
00000448: DUP1
00000449: RETURNDATACOPY
0000044a: DUP1
0000044b: DUP1
0000044c: ISZERO
0000044d: PUSH2 0x0455
00000450: JUMPI
00000451: RETURNDATASIZE
00000452: PUSH1 0x00
00000454: RETURN
00000455: JUMPDEST
00000456: RETURNDATASIZE
00000457: PUSH1 0x00
00000459: REVERT
0000045a: JUMPDEST
0000045b: PUSH32 0x10d6a54a4754c8869d6886b5f5d7fbfa5b4522237ea5c60d11bc4e7a1ff9390b
0000047c: SLOAD
0000047d: SWAP1
0000047e: JUMP
0000047f: JUMPDEST
00000480: PUSH2 0x0488
00000483: DUP2
00000484: PUSH2 0x04eb
00000487: JUMP
00000488: JUMPDEST
00000489: PUSH1 0x40
0000048b: DUP1
0000048c: MLOAD
0000048d: PUSH1 0x01
0000048f: PUSH1 0xa0
00000491: PUSH1 0x02
00000493: EXP
00000494: SUB
00000495: DUP4
00000496: AND
00000497: DUP2
00000498: MSTORE
00000499: SWAP1
0000049a: MLOAD
0000049b: PUSH32 0xbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b
000004bc: SWAP2
000004bd: DUP2
000004be: SWAP1
000004bf: SUB
000004c0: PUSH1 0x20
000004c2: ADD
000004c3: SWAP1
000004c4: LOG1
000004c5: POP
000004c6: JUMP
000004c7: JUMPDEST
000004c8: PUSH32 0x10d6a54a4754c8869d6886b5f5d7fbfa5b4522237ea5c60d11bc4e7a1ff9390b
000004e9: SSTORE
000004ea: JUMP
000004eb: JUMPDEST
000004ec: PUSH1 0x00
000004ee: PUSH2 0x04f6
000004f1: DUP3
000004f2: PUSH2 0x05ae
000004f5: JUMP
000004f6: JUMPDEST
000004f7: ISZERO
000004f8: ISZERO
000004f9: PUSH2 0x0589
000004fc: JUMPI
000004fd: PUSH1 0x40
000004ff: DUP1
00000500: MLOAD
00000501: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000
00000522: DUP2
00000523: MSTORE
00000524: PUSH1 0x20
00000526: PUSH1 0x04
00000528: DUP3
00000529: ADD
0000052a: MSTORE
0000052b: PUSH1 0x3b
0000052d: PUSH1 0x24
0000052f: DUP3
00000530: ADD
00000531: MSTORE
00000532: PUSH32 0x43616e6e6f742073657420612070726f787920696d706c656d656e746174696f
00000553: PUSH1 0x44
00000555: DUP3
00000556: ADD
00000557: MSTORE
00000558: PUSH32 0x6e20746f2061206e6f6e2d636f6e747261637420616464726573730000000000
00000579: PUSH1 0x64
0000057b: DUP3
0000057c: ADD
0000057d: MSTORE
0000057e: SWAP1
0000057f: MLOAD
00000580: SWAP1
00000581: DUP2
00000582: SWAP1
00000583: SUB
00000584: PUSH1 0x84
00000586: ADD
00000587: SWAP1
00000588: REVERT
00000589: JUMPDEST
0000058a: POP
0000058b: PUSH32 0x7050c9e0f4ca769c69bd3a8ef740bc37934f8e2c036e5a723fd8ee048ed3f8c3
000005ac: SSTORE
000005ad: JUMP
000005ae: JUMPDEST
000005af: PUSH1 0x00
000005b1: SWAP1
000005b2: EXTCODESIZE
000005b3: GT
000005b4: SWAP1
000005b5: JUMP
000005b6: STOP
000005b7: LOG1
000005b8: PUSH6 0x627a7a723058
000005bf: KECCAK256
000005c0: UNKNOWN(0xB2)
000005c1: PUSH21 0xfe16b200679a229fcce27c65314a32b3cff995c434
000005d7: SGT
000005d8: EXTCODEHASH
000005d9: MSTORE8
000005da: TSTORE
000005db: UNKNOWN(0xD5)
000005dc: PUSH6

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: 0x9dd83a94c863f5314ed817f0ec9d6749b3eaabe132f39e21d67a364f2e294e98
call_targets: 0x2a3f1a37c04f82aa274f5353834b2d002db91015
target_varies: no
classification: constant_target
validation_json
{
    "sink": "DELEGATECALL",
    "errors": 0,
    "status": "sink_reached",
    "attempts": 1,
    "trace_id": "0x9dd83a94c863f5314ed817f0ec9d6749b3eaabe132f39e21d67a364f2e294e98",
    "confirmed": false,
    "trace_mode": "callTracer",
    "call_targets": [
        "0x2a3f1a37c04f82aa274f5353834b2d002db91015"
    ],
    "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": "0x8f283970",
            "selector": "0x8f283970",
            "calldata_variants": [
                "0x8f283970",
                "0x8f2839700000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xf851a440",
            "selector": "0xf851a440",
            "calldata_variants": [
                "0xf851a440",
                "0xf851a4400000000000000000000000000000000000000000000000000000000000000000"
            ]
        }
    ]
}
evidence_json
{
    "examples": [
        {
            "pc": 1092,
            "opcode": "DELEGATECALL",
            "returndata_checked": null,
            "value_expression_category": "n/a",
            "target_expression_category": "computed"
        }
    ],
    "guards_detected": [],
    "delegatecall_count": 1,
    "untrusted_delegatecall_count": 1
}
high other detector Untrusted CALL target/value reachable 60 no no
view
trace_id: 0x9dd83a94c863f5314ed817f0ec9d6749b3eaabe132f39e21d67a364f2e294e98
call_targets: 0x4fabb145d64652a948d72533023f6e7a623c7c53
target_varies: no
classification: constant_target
validation_json
{
    "sink": "CALL",
    "errors": 0,
    "status": "sink_reached",
    "attempts": 1,
    "trace_id": "0x9dd83a94c863f5314ed817f0ec9d6749b3eaabe132f39e21d67a364f2e294e98",
    "confirmed": false,
    "trace_mode": "callTracer",
    "call_targets": [
        "0x4fabb145d64652a948d72533023f6e7a623c7c53"
    ],
    "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": "0x8f283970",
            "selector": "0x8f283970",
            "calldata_variants": [
                "0x8f283970",
                "0x8f2839700000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xf851a440",
            "selector": "0xf851a440",
            "calldata_variants": [
                "0xf851a440",
                "0xf851a4400000000000000000000000000000000000000000000000000000000000000000"
            ]
        }
    ]
}
evidence_json
{
    "examples": [
        {
            "pc": 457,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        }
    ],
    "call_count": 1,
    "guards_detected": [],
    "untrusted_call_count": 1
}
high other detector ETH value transfer possible 55 no no
view
trace_id: 0x9dd83a94c863f5314ed817f0ec9d6749b3eaabe132f39e21d67a364f2e294e98
call_targets: 0x4fabb145d64652a948d72533023f6e7a623c7c53
target_varies: no
classification: constant_target
validation_json
{
    "sink": "CALL",
    "errors": 0,
    "status": "sink_reached",
    "attempts": 1,
    "trace_id": "0x9dd83a94c863f5314ed817f0ec9d6749b3eaabe132f39e21d67a364f2e294e98",
    "confirmed": false,
    "trace_mode": "callTracer",
    "call_targets": [
        "0x4fabb145d64652a948d72533023f6e7a623c7c53"
    ],
    "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": "0x8f283970",
            "selector": "0x8f283970",
            "calldata_variants": [
                "0x8f283970",
                "0x8f2839700000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xf851a440",
            "selector": "0xf851a440",
            "calldata_variants": [
                "0xf851a440",
                "0xf851a4400000000000000000000000000000000000000000000000000000000000000000"
            ]
        }
    ]
}
evidence_json
{
    "examples": [
        {
            "pc": 457,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        }
    ],
    "eth_value_calls": 1,
    "guards_detected": []
}
medium upgradeability cast DELEGATECALL present 80 no
view
evidence_json
{
    "notes": "delegatecall enables execution in caller context; common in proxies/upgradeable patterns",
    "delegatecall_count": 1
}