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

Analysis Run

019b477e-c30a-7272-80d7-507f23a56298

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
Bytecode only
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
25151 artifact.fetch complete 1 / 3 3 months ago
25152 tool.cast_disasm complete 1 / 3 3 months ago
91221 analysis.bundle complete 1 / 3 2 weeks ago
91222 capability.graph complete 1 / 3 2 weeks ago
91223 detector.run complete 1 / 3 2 weeks ago
91224 validation.fork complete 1 / 3 2 weeks ago

Artifact

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

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)
4
EXT*/BALANCE
0
Total opcodes
754
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 0x0043
0000000c: JUMPI
0000000d: PUSH1 0x00
0000000f: CALLDATALOAD
00000010: PUSH1 0xe0
00000012: SHR
00000013: DUP1
00000014: PUSH4 0x3ccfd60b
00000019: EQ
0000001a: PUSH2 0x004f
0000001d: JUMPI
0000001e: DUP1
0000001f: PUSH4 0x79ba742b
00000024: EQ
00000025: PUSH2 0x0066
00000028: JUMPI
00000029: DUP1
0000002a: PUSH4 0x8da5cb5b
0000002f: EQ
00000030: PUSH2 0x008f
00000033: JUMPI
00000034: DUP1
00000035: PUSH4 0xa6f2ae3a
0000003a: EQ
0000003b: PUSH2 0x00ba
0000003e: JUMPI
0000003f: PUSH2 0x004a
00000042: JUMP
00000043: JUMPDEST
00000044: CALLDATASIZE
00000045: PUSH2 0x004a
00000048: JUMPI
00000049: STOP
0000004a: JUMPDEST
0000004b: PUSH1 0x00
0000004d: DUP1
0000004e: REVERT
0000004f: JUMPDEST
00000050: CALLVALUE
00000051: DUP1
00000052: ISZERO
00000053: PUSH2 0x005b
00000056: JUMPI
00000057: PUSH1 0x00
00000059: DUP1
0000005a: REVERT
0000005b: JUMPDEST
0000005c: POP
0000005d: PUSH2 0x0064
00000060: PUSH2 0x00c4
00000063: JUMP
00000064: JUMPDEST
00000065: STOP
00000066: JUMPDEST
00000067: CALLVALUE
00000068: DUP1
00000069: ISZERO
0000006a: PUSH2 0x0072
0000006d: JUMPI
0000006e: PUSH1 0x00
00000070: DUP1
00000071: REVERT
00000072: JUMPDEST
00000073: POP
00000074: PUSH2 0x008d
00000077: PUSH1 0x04
00000079: DUP1
0000007a: CALLDATASIZE
0000007b: SUB
0000007c: DUP2
0000007d: ADD
0000007e: SWAP1
0000007f: PUSH2 0x0088
00000082: SWAP2
00000083: SWAP1
00000084: PUSH2 0x034c
00000087: JUMP
00000088: JUMPDEST
00000089: PUSH2 0x022b
0000008c: JUMP
0000008d: JUMPDEST
0000008e: STOP
0000008f: JUMPDEST
00000090: CALLVALUE
00000091: DUP1
00000092: ISZERO
00000093: PUSH2 0x009b
00000096: JUMPI
00000097: PUSH1 0x00
00000099: DUP1
0000009a: REVERT
0000009b: JUMPDEST
0000009c: POP
0000009d: PUSH2 0x00a4
000000a0: PUSH2 0x0311
000000a3: JUMP
000000a4: JUMPDEST
000000a5: PUSH1 0x40
000000a7: MLOAD
000000a8: PUSH2 0x00b1
000000ab: SWAP2
000000ac: SWAP1
000000ad: PUSH2 0x0419
000000b0: JUMP
000000b1: JUMPDEST
000000b2: PUSH1 0x40
000000b4: MLOAD
000000b5: DUP1
000000b6: SWAP2
000000b7: SUB
000000b8: SWAP1
000000b9: RETURN
000000ba: JUMPDEST
000000bb: PUSH2 0x00c2
000000be: PUSH2 0x0335
000000c1: JUMP
000000c2: JUMPDEST
000000c3: STOP
000000c4: JUMPDEST
000000c5: PUSH1 0x00
000000c7: DUP1
000000c8: SLOAD
000000c9: SWAP1
000000ca: PUSH2 0x0100
000000cd: EXP
000000ce: SWAP1
000000cf: DIV
000000d0: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000000e5: AND
000000e6: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000000fb: AND
000000fc: CALLER
000000fd: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000112: AND
00000113: EQ
00000114: PUSH2 0x0152
00000117: JUMPI
00000118: PUSH1 0x40
0000011a: MLOAD
0000011b: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000
0000013c: DUP2
0000013d: MSTORE
0000013e: PUSH1 0x04
00000140: ADD
00000141: PUSH2 0x0149
00000144: SWAP1
00000145: PUSH2 0x0454
00000148: JUMP
00000149: JUMPDEST
0000014a: PUSH1 0x40
0000014c: MLOAD
0000014d: DUP1
0000014e: SWAP2
0000014f: SUB
00000150: SWAP1
00000151: REVERT
00000152: JUMPDEST
00000153: PUSH1 0x00
00000155: SELFBALANCE
00000156: SWAP1
00000157: POP
00000158: PUSH1 0x00
0000015a: DUP2
0000015b: GT
0000015c: PUSH2 0x019a
0000015f: JUMPI
00000160: PUSH1 0x40
00000162: MLOAD
00000163: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000
00000184: DUP2
00000185: MSTORE
00000186: PUSH1 0x04
00000188: ADD
00000189: PUSH2 0x0191
0000018c: SWAP1
0000018d: PUSH2 0x0434
00000190: JUMP
00000191: JUMPDEST
00000192: PUSH1 0x40
00000194: MLOAD
00000195: DUP1
00000196: SWAP2
00000197: SUB
00000198: SWAP1
00000199: REVERT
0000019a: JUMPDEST
0000019b: PUSH1 0x00
0000019d: DUP1
0000019e: PUSH1 0x00
000001a0: SWAP1
000001a1: SLOAD
000001a2: SWAP1
000001a3: PUSH2 0x0100
000001a6: EXP
000001a7: SWAP1
000001a8: DIV
000001a9: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000001be: AND
000001bf: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000001d4: AND
000001d5: DUP3
000001d6: PUSH1 0x40
000001d8: MLOAD
000001d9: PUSH2 0x01e1
000001dc: SWAP1
000001dd: PUSH2 0x0404
000001e0: JUMP
000001e1: JUMPDEST
000001e2: PUSH1 0x00
000001e4: PUSH1 0x40
000001e6: MLOAD
000001e7: DUP1
000001e8: DUP4
000001e9: SUB
000001ea: DUP2
000001eb: DUP6
000001ec: DUP8
000001ed: GAS
000001ee: CALL
000001ef: SWAP3
000001f0: POP
000001f1: POP
000001f2: POP
000001f3: RETURNDATASIZE
000001f4: DUP1
000001f5: PUSH1 0x00
000001f7: DUP2
000001f8: EQ
000001f9: PUSH2 0x021e
000001fc: JUMPI
000001fd: PUSH1 0x40
000001ff: MLOAD
00000200: SWAP2
00000201: POP
00000202: PUSH1 0x1f
00000204: NOT
00000205: PUSH1 0x3f
00000207: RETURNDATASIZE
00000208: ADD
00000209: AND
0000020a: DUP3
0000020b: ADD
0000020c: PUSH1 0x40
0000020e: MSTORE
0000020f: RETURNDATASIZE
00000210: DUP3
00000211: MSTORE
00000212: RETURNDATASIZE
00000213: PUSH1 0x00
00000215: PUSH1 0x20
00000217: DUP5
00000218: ADD
00000219: RETURNDATACOPY
0000021a: PUSH2 0x0223
0000021d: JUMP
0000021e: JUMPDEST
0000021f: PUSH1 0x60
00000221: SWAP2
00000222: POP
00000223: JUMPDEST
00000224: POP
00000225: POP
00000226: SWAP1
00000227: POP
00000228: POP
00000229: POP
0000022a: JUMP
0000022b: JUMPDEST
0000022c: PUSH1 0x00
0000022e: DUP1
0000022f: SLOAD
00000230: SWAP1
00000231: PUSH2 0x0100
00000234: EXP
00000235: SWAP1
00000236: DIV
00000237: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
0000024c: AND
0000024d: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000262: AND
00000263: CALLER
00000264: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000279: AND
0000027a: EQ
0000027b: PUSH2 0x02b9
0000027e: JUMPI
0000027f: PUSH1 0x40
00000281: MLOAD
00000282: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000
000002a3: DUP2
000002a4: MSTORE
000002a5: PUSH1 0x04
000002a7: ADD
000002a8: PUSH2 0x02b0
000002ab: SWAP1
000002ac: PUSH2 0x0454
000002af: JUMP
000002b0: JUMPDEST
000002b1: PUSH1 0x40
000002b3: MLOAD
000002b4: DUP1
000002b5: SWAP2
000002b6: SUB
000002b7: SWAP1
000002b8: REVERT
000002b9: JUMPDEST
000002ba: DUP1
000002bb: NUMBER
000002bc: GT
000002bd: ISZERO
000002be: PUSH2 0x02c6
000002c1: JUMPI
000002c2: PUSH1 0x00
000002c4: DUP1
000002c5: REVERT
000002c6: JUMPDEST
000002c7: COINBASE
000002c8: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000002dd: AND
000002de: PUSH2 0x08fc
000002e1: DUP4
000002e2: SWAP1
000002e3: DUP2
000002e4: ISZERO
000002e5: MUL
000002e6: SWAP1
000002e7: PUSH1 0x40
000002e9: MLOAD
000002ea: PUSH1 0x00
000002ec: PUSH1 0x40
000002ee: MLOAD
000002ef: DUP1
000002f0: DUP4
000002f1: SUB
000002f2: DUP2
000002f3: DUP6
000002f4: DUP9
000002f5: DUP9
000002f6: CALL
000002f7: SWAP4
000002f8: POP
000002f9: POP
000002fa: POP
000002fb: POP
000002fc: ISZERO
000002fd: DUP1
000002fe: ISZERO
000002ff: PUSH2 0x030c
00000302: JUMPI
00000303: RETURNDATASIZE
00000304: PUSH1 0x00
00000306: DUP1
00000307: RETURNDATACOPY
00000308: RETURNDATASIZE
00000309: PUSH1 0x00
0000030b: REVERT
0000030c: JUMPDEST
0000030d: POP
0000030e: POP
0000030f: POP
00000310: JUMP
00000311: JUMPDEST
00000312: PUSH1 0x00
00000314: DUP1
00000315: SLOAD
00000316: SWAP1
00000317: PUSH2 0x0100
0000031a: EXP
0000031b: SWAP1
0000031c: DIV
0000031d: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000332: AND
00000333: DUP2
00000334: JUMP
00000335: JUMPDEST
00000336: JUMP
00000337: JUMPDEST
00000338: PUSH1 0x00
0000033a: DUP2
0000033b: CALLDATALOAD
0000033c: SWAP1
0000033d: POP
0000033e: PUSH2 0x0346
00000341: DUP2
00000342: PUSH2 0x0526
00000345: JUMP
00000346: JUMPDEST
00000347: SWAP3
00000348: SWAP2
00000349: POP
0000034a: POP
0000034b: JUMP
0000034c: JUMPDEST
0000034d: PUSH1 0x00
0000034f: DUP1
00000350: PUSH1 0x40
00000352: DUP4
00000353: DUP6
00000354: SUB
00000355: SLT
00000356: ISZERO
00000357: PUSH2 0x0363
0000035a: JUMPI
0000035b: PUSH2 0x0362
0000035e: PUSH2 0x04cc
00000361: JUMP
00000362: JUMPDEST
00000363: JUMPDEST
00000364: PUSH1 0x00
00000366: PUSH2 0x0371
00000369: DUP6
0000036a: DUP3
0000036b: DUP7
0000036c: ADD
0000036d: PUSH2 0x0337
00000370: JUMP
00000371: JUMPDEST
00000372: SWAP3
00000373: POP
00000374: POP
00000375: PUSH1 0x20
00000377: PUSH2 0x0382
0000037a: DUP6
0000037b: DUP3
0000037c: DUP7
0000037d: ADD
0000037e: PUSH2 0x0337
00000381: JUMP
00000382: JUMPDEST
00000383: SWAP2
00000384: POP
00000385: POP
00000386: SWAP3
00000387: POP
00000388: SWAP3
00000389: SWAP1
0000038a: POP
0000038b: JUMP
0000038c: JUMPDEST
0000038d: PUSH2 0x0395
00000390: DUP2
00000391: PUSH2 0x0490
00000394: JUMP
00000395: JUMPDEST
00000396: DUP3
00000397: MSTORE
00000398: POP
00000399: POP
0000039a: JUMP
0000039b: JUMPDEST
0000039c: PUSH1 0x00
0000039e: PUSH2 0x03a8
000003a1: PUSH1 0x13
000003a3: DUP4
000003a4: PUSH2 0x047f
000003a7: JUMP
000003a8: JUMPDEST
000003a9: SWAP2
000003aa: POP
000003ab: PUSH2 0x03b3
000003ae: DUP3
000003af: PUSH2 0x04d1
000003b2: JUMP
000003b3: JUMPDEST
000003b4: PUSH1 0x20
000003b6: DUP3
000003b7: ADD
000003b8: SWAP1
000003b9: POP
000003ba: SWAP2
000003bb: SWAP1
000003bc: POP
000003bd: JUMP
000003be: JUMPDEST
000003bf: PUSH1 0x00
000003c1: PUSH2 0x03cb
000003c4: PUSH1 0x00
000003c6: DUP4
000003c7: PUSH2 0x0474
000003ca: JUMP
000003cb: JUMPDEST
000003cc: SWAP2
000003cd: POP
000003ce: PUSH2 0x03d6
000003d1: DUP3
000003d2: PUSH2 0x04fa
000003d5: JUMP
000003d6: JUMPDEST
000003d7: PUSH1 0x00
000003d9: DUP3
000003da: ADD
000003db: SWAP1
000003dc: POP
000003dd: SWAP2
000003de: SWAP1
000003df: POP
000003e0: JUMP
000003e1: JUMPDEST
000003e2: PUSH1 0x00
000003e4: PUSH2 0x03ee
000003e7: PUSH1 0x01
000003e9: DUP4
000003ea: PUSH2 0x047f
000003ed: JUMP
000003ee: JUMPDEST
000003ef: SWAP2
000003f0: POP
000003f1: PUSH2 0x03f9
000003f4: DUP3
000003f5: PUSH2 0x04fd
000003f8: JUMP
000003f9: JUMPDEST
000003fa: PUSH1 0x20
000003fc: DUP3
000003fd: ADD
000003fe: SWAP1
000003ff: POP
00000400: SWAP2
00000401: SWAP1
00000402: POP
00000403: JUMP
00000404: JUMPDEST
00000405: PUSH1 0x00
00000407: PUSH2 0x040f
0000040a: DUP3
0000040b: PUSH2 0x03be
0000040e: JUMP
0000040f: JUMPDEST
00000410: SWAP2
00000411: POP
00000412: DUP2
00000413: SWAP1
00000414: POP
00000415: SWAP2
00000416: SWAP1
00000417: POP
00000418: JUMP
00000419: JUMPDEST
0000041a: PUSH1 0x00
0000041c: PUSH1 0x20
0000041e: DUP3
0000041f: ADD
00000420: SWAP1
00000421: POP
00000422: PUSH2 0x042e
00000425: PUSH1 0x00
00000427: DUP4
00000428: ADD
00000429: DUP5
0000042a: PUSH2 0x038c
0000042d: JUMP
0000042e: JUMPDEST
0000042f: SWAP3
00000430: SWAP2
00000431: POP
00000432: POP
00000433: JUMP
00000434: JUMPDEST
00000435: PUSH1 0x00
00000437: PUSH1 0x20
00000439: DUP3
0000043a: ADD
0000043b: SWAP1
0000043c: POP
0000043d: DUP2
0000043e: DUP2
0000043f: SUB
00000440: PUSH1 0x00
00000442: DUP4
00000443: ADD
00000444: MSTORE
00000445: PUSH2 0x044d
00000448: DUP2
00000449: PUSH2 0x039b
0000044c: JUMP
0000044d: JUMPDEST
0000044e: SWAP1
0000044f: POP
00000450: SWAP2
00000451: SWAP1
00000452: POP
00000453: JUMP
00000454: JUMPDEST
00000455: PUSH1 0x00
00000457: PUSH1 0x20
00000459: DUP3
0000045a: ADD
0000045b: SWAP1
0000045c: POP
0000045d: DUP2
0000045e: DUP2
0000045f: SUB
00000460: PUSH1 0x00
00000462: DUP4
00000463: ADD
00000464: MSTORE
00000465: PUSH2 0x046d
00000468: DUP2
00000469: PUSH2 0x03e1
0000046c: JUMP
0000046d: JUMPDEST
0000046e: SWAP1
0000046f: POP
00000470: SWAP2
00000471: SWAP1
00000472: POP
00000473: JUMP
00000474: JUMPDEST
00000475: PUSH1 0x00
00000477: DUP2
00000478: SWAP1
00000479: POP
0000047a: SWAP3
0000047b: SWAP2
0000047c: POP
0000047d: POP
0000047e: JUMP
0000047f: JUMPDEST
00000480: PUSH1 0x00
00000482: DUP3
00000483: DUP3
00000484: MSTORE
00000485: PUSH1 0x20
00000487: DUP3
00000488: ADD
00000489: SWAP1
0000048a: POP
0000048b: SWAP3
0000048c: SWAP2
0000048d: POP
0000048e: POP
0000048f: JUMP
00000490: JUMPDEST
00000491: PUSH1 0x00
00000493: PUSH2 0x049b
00000496: DUP3
00000497: PUSH2 0x04a2
0000049a: JUMP
0000049b: JUMPDEST
0000049c: SWAP1
0000049d: POP
0000049e: SWAP2
0000049f: SWAP1
000004a0: POP
000004a1: JUMP
000004a2: JUMPDEST
000004a3: PUSH1 0x00
000004a5: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000004ba: DUP3
000004bb: AND
000004bc: SWAP1
000004bd: POP
000004be: SWAP2
000004bf: SWAP1
000004c0: POP
000004c1: JUMP
000004c2: JUMPDEST
000004c3: PUSH1 0x00
000004c5: DUP2
000004c6: SWAP1
000004c7: POP
000004c8: SWAP2
000004c9: SWAP1
000004ca: POP
000004cb: JUMP
000004cc: JUMPDEST
000004cd: PUSH1 0x00
000004cf: DUP1
000004d0: REVERT
000004d1: JUMPDEST
000004d2: PUSH32 0x496e737566666963656e742062616c616e636500000000000000000000000000
000004f3: PUSH1 0x00
000004f5: DUP3
000004f6: ADD
000004f7: MSTORE
000004f8: POP
000004f9: JUMP
000004fa: JUMPDEST
000004fb: POP
000004fc: JUMP
000004fd: JUMPDEST
000004fe: PUSH32 0x3100000000000000000000000000000000000000000000000000000000000000
0000051f: PUSH1 0x00
00000521: DUP3
00000522: ADD
00000523: MSTORE
00000524: POP
00000525: JUMP
00000526: JUMPDEST
00000527: PUSH2 0x052f
0000052a: DUP2
0000052b: PUSH2 0x04c2
0000052e: JUMP
0000052f: JUMPDEST
00000530: DUP2
00000531: EQ
00000532: PUSH2 0x053a
00000535: JUMPI
00000536: PUSH1 0x00
00000538: DUP1
00000539: REVERT
0000053a: JUMPDEST
0000053b: POP
0000053c: JUMP
0000053d: INVALID
0000053e: LOG2
0000053f: PUSH5 0x6970667358
00000545: UNKNOWN(0x22)
00000546: SLT
00000547: KECCAK256
00000548: CLZ
00000549: DUP13
0000054a: UNKNOWN(0xC8)
0000054b: MUL
0000054c: JUMPI
0000054d: SUB
0000054e: MSIZE
0000054f: INVALID
00000550: BASEFEE
00000551: DUP15
00000552: UNKNOWN(0xB1)
00000553: PUSH0
00000554: UNKNOWN(0xCC)
00000555: TSTORE
00000556: POP
00000557: LOG1
00000558: CREATE
00000559: UNKNOWN(0xB4)
0000055a: STATICCALL
0000055b: DELEGATECALL
0000055c: UNKNOWN(0x2D)
0000055d: CALLCODE
0000055e: UNKNOWN(0x24)
0000055f: UNKNOWN(0xD4)
00000560: SWAP10
00000561: UNKNOWN(0xE8)
00000562: UNKNOWN(0xAA)
00000563: PC
00000564: DUP16
00000565: LOG4
00000566: UNKNOWN(0xCE)
00000567: UNKNOWN(0xAE)
00000568: PUSH5 0x736f6c6343
0000056e: STOP
0000056f: ADDMOD
00000570: SMOD
00000571: STOP
00000572: CALLER

Findings

validated = confirmed for call sinks; sink observed for others
Severity Category Tool Title Confidence Validated Confirmed Details
high upgradeability detector Untrusted DELEGATECALL target reachable 55 no no
view
trace_id: 0xe803b1edd846997b8f21e18ac0146ea93dff4e18b4d4aa59c7fc2596b8919b69
validation_json
{
    "sink": "DELEGATECALL",
    "errors": 0,
    "status": "unknown",
    "attempts": 48,
    "trace_id": "0xe803b1edd846997b8f21e18ac0146ea93dff4e18b4d4aa59c7fc2596b8919b69",
    "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": "0x3ccfd60b",
            "selector": "0x3ccfd60b",
            "calldata_variants": [
                "0x3ccfd60b",
                "0x3ccfd60b0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x79ba742b",
            "selector": "0x79ba742b",
            "calldata_variants": [
                "0x79ba742b",
                "0x79ba742b0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x8da5cb5b",
            "selector": "0x8da5cb5b",
            "calldata_variants": [
                "0x8da5cb5b",
                "0x8da5cb5b0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xa6f2ae3a",
            "selector": "0xa6f2ae3a",
            "calldata_variants": [
                "0xa6f2ae3a",
                "0xa6f2ae3a0000000000000000000000000000000000000000000000000000000000000000"
            ]
        }
    ]
}
evidence_json
{
    "examples": [
        {
            "pc": 1371,
            "opcode": "DELEGATECALL",
            "returndata_checked": null,
            "value_expression_category": "n/a",
            "target_expression_category": "computed"
        }
    ],
    "guards_detected": [
        {
            "pc": 252,
            "type": "msg_sender_eq_const",
            "value": "0xffffffffffffffffffffffffffffffffffffffff"
        },
        {
            "pc": 611,
            "type": "msg_sender_eq_const",
            "value": "0xffffffffffffffffffffffffffffffffffffffff"
        }
    ],
    "delegatecall_count": 1,
    "untrusted_delegatecall_count": 1
}
medium other detector Untrusted CALL target/value reachable 45 no no
view
trace_id: 0xd82ddfc600ebde29d62f9f11ef1bf149007f60048c62a5410fdefd6b51e2414c
call_targets: 0xb967bde2ec3447528fe47b1f3e3ef8ef1d223dbc
target_varies: no
classification: constant_target
validation_json
{
    "sink": "CALL",
    "errors": 0,
    "status": "sink_reached",
    "attempts": 1,
    "trace_id": "0xd82ddfc600ebde29d62f9f11ef1bf149007f60048c62a5410fdefd6b51e2414c",
    "confirmed": false,
    "trace_mode": "callTracer",
    "call_targets": [
        "0xb967bde2ec3447528fe47b1f3e3ef8ef1d223dbc"
    ],
    "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": "0x3ccfd60b",
            "selector": "0x3ccfd60b",
            "calldata_variants": [
                "0x3ccfd60b",
                "0x3ccfd60b0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x79ba742b",
            "selector": "0x79ba742b",
            "calldata_variants": [
                "0x79ba742b",
                "0x79ba742b0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x8da5cb5b",
            "selector": "0x8da5cb5b",
            "calldata_variants": [
                "0x8da5cb5b",
                "0x8da5cb5b0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xa6f2ae3a",
            "selector": "0xa6f2ae3a",
            "calldata_variants": [
                "0xa6f2ae3a",
                "0xa6f2ae3a0000000000000000000000000000000000000000000000000000000000000000"
            ]
        }
    ]
}
evidence_json
{
    "examples": [
        {
            "pc": 494,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        },
        {
            "pc": 758,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        },
        {
            "pc": 1373,
            "opcode": "CALLCODE",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        }
    ],
    "call_count": 3,
    "guards_detected": [
        {
            "pc": 252,
            "type": "msg_sender_eq_const",
            "value": "0xffffffffffffffffffffffffffffffffffffffff"
        },
        {
            "pc": 611,
            "type": "msg_sender_eq_const",
            "value": "0xffffffffffffffffffffffffffffffffffffffff"
        }
    ],
    "untrusted_call_count": 3
}
medium other detector ETH value transfer possible 40 no no
view
trace_id: 0xd82ddfc600ebde29d62f9f11ef1bf149007f60048c62a5410fdefd6b51e2414c
call_targets: 0xb967bde2ec3447528fe47b1f3e3ef8ef1d223dbc
target_varies: no
classification: constant_target
validation_json
{
    "sink": "CALL",
    "errors": 0,
    "status": "sink_reached",
    "attempts": 1,
    "trace_id": "0xd82ddfc600ebde29d62f9f11ef1bf149007f60048c62a5410fdefd6b51e2414c",
    "confirmed": false,
    "trace_mode": "callTracer",
    "call_targets": [
        "0xb967bde2ec3447528fe47b1f3e3ef8ef1d223dbc"
    ],
    "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": "0x3ccfd60b",
            "selector": "0x3ccfd60b",
            "calldata_variants": [
                "0x3ccfd60b",
                "0x3ccfd60b0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x79ba742b",
            "selector": "0x79ba742b",
            "calldata_variants": [
                "0x79ba742b",
                "0x79ba742b0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x8da5cb5b",
            "selector": "0x8da5cb5b",
            "calldata_variants": [
                "0x8da5cb5b",
                "0x8da5cb5b0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xa6f2ae3a",
            "selector": "0xa6f2ae3a",
            "calldata_variants": [
                "0xa6f2ae3a",
                "0xa6f2ae3a0000000000000000000000000000000000000000000000000000000000000000"
            ]
        }
    ]
}
evidence_json
{
    "examples": [
        {
            "pc": 494,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        },
        {
            "pc": 758,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        },
        {
            "pc": 1373,
            "opcode": "CALLCODE",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        }
    ],
    "eth_value_calls": 3,
    "guards_detected": [
        {
            "pc": 252,
            "type": "msg_sender_eq_const",
            "value": "0xffffffffffffffffffffffffffffffffffffffff"
        },
        {
            "pc": 611,
            "type": "msg_sender_eq_const",
            "value": "0xffffffffffffffffffffffffffffffffffffffff"
        }
    ]
}
medium other detector CREATE/CREATE2 reachable 45 no no
view
trace_id: 0x0db01e2427f217ba950012ca9d711bbfef1df85fe068dd4bd589f6f602c87090
validation_json
{
    "sink": "CREATE",
    "errors": 0,
    "status": "unknown",
    "attempts": 8,
    "trace_id": "0x0db01e2427f217ba950012ca9d711bbfef1df85fe068dd4bd589f6f602c87090",
    "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": "0x3ccfd60b",
            "selector": "0x3ccfd60b",
            "calldata_variants": [
                "0x3ccfd60b",
                "0x3ccfd60b0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x79ba742b",
            "selector": "0x79ba742b",
            "calldata_variants": [
                "0x79ba742b",
                "0x79ba742b0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x8da5cb5b",
            "selector": "0x8da5cb5b",
            "calldata_variants": [
                "0x8da5cb5b",
                "0x8da5cb5b0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xa6f2ae3a",
            "selector": "0xa6f2ae3a",
            "calldata_variants": [
                "0xa6f2ae3a",
                "0xa6f2ae3a0000000000000000000000000000000000000000000000000000000000000000"
            ]
        }
    ]
}
evidence_json
{
    "create_count": 1,
    "create2_count": 0
}