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

Analysis Run

019b477e-a957-73d8-9ac2-c8330b576cfb

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
20609 artifact.fetch complete 1 / 3 3 months ago
20610 tool.cast_disasm complete 1 / 3 3 months ago
88365 analysis.bundle complete 1 / 3 1 week ago
88366 capability.graph complete 1 / 3 1 week ago
88367 detector.run complete 1 / 3 1 week ago
88368 validation.fork complete 1 / 3 1 week 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
4
Selfdestruct
0
CREATE2
0
CALL-family (heavy)
4
EXT*/BALANCE
4
Total opcodes
1181
Flags
delegatecall_present
View cast disassembly output
00000000: PUSH1 0x60
00000002: PUSH1 0x40
00000004: MSTORE
00000005: CALLDATASIZE
00000006: ISZERO
00000007: PUSH2 0x0082
0000000a: JUMPI
0000000b: PUSH1 0xe0
0000000d: PUSH1 0x02
0000000f: EXP
00000010: PUSH1 0x00
00000012: CALLDATALOAD
00000013: DIV
00000014: PUSH4 0x36b196cf
00000019: DUP2
0000001a: EQ
0000001b: PUSH2 0x00a5
0000001e: JUMPI
0000001f: DUP1
00000020: PUSH4 0x4fb2e45d
00000025: EQ
00000026: PUSH2 0x00cb
00000029: JUMPI
0000002a: DUP1
0000002b: PUSH4 0x506d994b
00000030: EQ
00000031: PUSH2 0x00f1
00000034: JUMPI
00000035: DUP1
00000036: PUSH4 0x66bc5fa8
0000003b: EQ
0000003c: PUSH2 0x00a5
0000003f: JUMPI
00000040: DUP1
00000041: PUSH4 0x6ff96d17
00000046: EQ
00000047: PUSH2 0x016b
0000004a: JUMPI
0000004b: DUP1
0000004c: PUSH4 0x8da5cb5b
00000051: EQ
00000052: PUSH2 0x0188
00000055: JUMPI
00000056: DUP1
00000057: PUSH4 0x9555a942
0000005c: EQ
0000005d: PUSH2 0x019f
00000060: JUMPI
00000061: DUP1
00000062: PUSH4 0xbeabacc8
00000067: EQ
00000068: PUSH2 0x01d7
0000006b: JUMPI
0000006c: DUP1
0000006d: PUSH4 0xf340fa01
00000072: EQ
00000073: PUSH2 0x020f
00000076: JUMPI
00000077: DUP1
00000078: PUSH4 0xf3fef3a3
0000007d: EQ
0000007e: PUSH2 0x0232
00000081: JUMPI
00000082: JUMPDEST
00000083: PUSH2 0x0230
00000086: PUSH1 0x01
00000088: PUSH1 0xa0
0000008a: PUSH1 0x02
0000008c: EXP
0000008d: SUB
0000008e: CALLER
0000008f: AND
00000090: PUSH1 0x00
00000092: SWAP1
00000093: DUP2
00000094: MSTORE
00000095: PUSH1 0x02
00000097: PUSH1 0x20
00000099: MSTORE
0000009a: PUSH1 0x40
0000009c: SWAP1
0000009d: KECCAK256
0000009e: DUP1
0000009f: SLOAD
000000a0: CALLVALUE
000000a1: ADD
000000a2: SWAP1
000000a3: SSTORE
000000a4: JUMP
000000a5: JUMPDEST
000000a6: CALLVALUE
000000a7: PUSH2 0x0002
000000aa: JUMPI
000000ab: PUSH2 0x0230
000000ae: PUSH1 0x04
000000b0: CALLDATALOAD
000000b1: PUSH1 0x00
000000b3: SLOAD
000000b4: CALLER
000000b5: PUSH1 0x01
000000b7: PUSH1 0xa0
000000b9: PUSH1 0x02
000000bb: EXP
000000bc: SUB
000000bd: SWAP1
000000be: DUP2
000000bf: AND
000000c0: SWAP2
000000c1: AND
000000c2: EQ
000000c3: PUSH2 0x0295
000000c6: JUMPI
000000c7: PUSH2 0x0002
000000ca: JUMP
000000cb: JUMPDEST
000000cc: CALLVALUE
000000cd: PUSH2 0x0002
000000d0: JUMPI
000000d1: PUSH2 0x0230
000000d4: PUSH1 0x04
000000d6: CALLDATALOAD
000000d7: PUSH1 0x00
000000d9: SLOAD
000000da: CALLER
000000db: PUSH1 0x01
000000dd: PUSH1 0xa0
000000df: PUSH1 0x02
000000e1: EXP
000000e2: SUB
000000e3: SWAP1
000000e4: DUP2
000000e5: AND
000000e6: SWAP2
000000e7: AND
000000e8: EQ
000000e9: PUSH2 0x02bc
000000ec: JUMPI
000000ed: PUSH2 0x0002
000000f0: JUMP
000000f1: JUMPDEST
000000f2: CALLVALUE
000000f3: PUSH2 0x0002
000000f6: JUMPI
000000f7: PUSH1 0x40
000000f9: DUP1
000000fa: MLOAD
000000fb: PUSH1 0x20
000000fd: PUSH1 0x04
000000ff: PUSH1 0x64
00000101: CALLDATALOAD
00000102: DUP2
00000103: DUP2
00000104: ADD
00000105: CALLDATALOAD
00000106: PUSH1 0x1f
00000108: DUP2
00000109: ADD
0000010a: DUP5
0000010b: SWAP1
0000010c: DIV
0000010d: DUP5
0000010e: MUL
0000010f: DUP6
00000110: ADD
00000111: DUP5
00000112: ADD
00000113: SWAP1
00000114: SWAP6
00000115: MSTORE
00000116: DUP5
00000117: DUP5
00000118: MSTORE
00000119: PUSH2 0x0230
0000011c: SWAP5
0000011d: DUP3
0000011e: CALLDATALOAD
0000011f: SWAP5
00000120: PUSH1 0x24
00000122: DUP1
00000123: CALLDATALOAD
00000124: SWAP6
00000125: PUSH1 0x44
00000127: CALLDATALOAD
00000128: SWAP6
00000129: SWAP5
0000012a: PUSH1 0x84
0000012c: SWAP5
0000012d: SWAP3
0000012e: ADD
0000012f: SWAP2
00000130: SWAP1
00000131: DUP2
00000132: SWAP1
00000133: DUP5
00000134: ADD
00000135: DUP4
00000136: DUP3
00000137: DUP1
00000138: DUP3
00000139: DUP5
0000013a: CALLDATACOPY
0000013b: POP
0000013c: SWAP5
0000013d: SWAP7
0000013e: POP
0000013f: POP
00000140: POP
00000141: POP
00000142: POP
00000143: POP
00000144: POP
00000145: PUSH1 0x01
00000147: PUSH1 0xa0
00000149: PUSH1 0x02
0000014b: EXP
0000014c: SUB
0000014d: CALLER
0000014e: AND
0000014f: PUSH1 0x00
00000151: SWAP1
00000152: DUP2
00000153: MSTORE
00000154: PUSH1 0x01
00000156: PUSH1 0x20
00000158: MSTORE
00000159: PUSH1 0x40
0000015b: SWAP1
0000015c: KECCAK256
0000015d: SLOAD
0000015e: PUSH1 0xff
00000160: AND
00000161: ISZERO
00000162: ISZERO
00000163: PUSH2 0x02f1
00000166: JUMPI
00000167: PUSH2 0x0002
0000016a: JUMP
0000016b: JUMPDEST
0000016c: CALLVALUE
0000016d: PUSH2 0x0002
00000170: JUMPI
00000171: PUSH2 0x0267
00000174: PUSH1 0x04
00000176: CALLDATALOAD
00000177: PUSH1 0x02
00000179: PUSH1 0x20
0000017b: MSTORE
0000017c: PUSH1 0x00
0000017e: SWAP1
0000017f: DUP2
00000180: MSTORE
00000181: PUSH1 0x40
00000183: SWAP1
00000184: KECCAK256
00000185: SLOAD
00000186: DUP2
00000187: JUMP
00000188: JUMPDEST
00000189: CALLVALUE
0000018a: PUSH2 0x0002
0000018d: JUMPI
0000018e: PUSH2 0x0279
00000191: PUSH1 0x00
00000193: SLOAD
00000194: PUSH1 0x01
00000196: PUSH1 0xa0
00000198: PUSH1 0x02
0000019a: EXP
0000019b: SUB
0000019c: AND
0000019d: DUP2
0000019e: JUMP
0000019f: JUMPDEST
000001a0: CALLVALUE
000001a1: PUSH2 0x0002
000001a4: JUMPI
000001a5: PUSH2 0x0230
000001a8: PUSH1 0x04
000001aa: CALLDATALOAD
000001ab: PUSH1 0x24
000001ad: CALLDATALOAD
000001ae: PUSH1 0x44
000001b0: CALLDATALOAD
000001b1: PUSH1 0x01
000001b3: PUSH1 0xa0
000001b5: PUSH1 0x02
000001b7: EXP
000001b8: SUB
000001b9: CALLER
000001ba: AND
000001bb: PUSH1 0x00
000001bd: SWAP1
000001be: DUP2
000001bf: MSTORE
000001c0: PUSH1 0x01
000001c2: PUSH1 0x20
000001c4: MSTORE
000001c5: PUSH1 0x40
000001c7: SWAP1
000001c8: KECCAK256
000001c9: SLOAD
000001ca: PUSH1 0xff
000001cc: AND
000001cd: ISZERO
000001ce: ISZERO
000001cf: PUSH2 0x0446
000001d2: JUMPI
000001d3: PUSH2 0x0002
000001d6: JUMP
000001d7: JUMPDEST
000001d8: CALLVALUE
000001d9: PUSH2 0x0002
000001dc: JUMPI
000001dd: PUSH2 0x0230
000001e0: PUSH1 0x04
000001e2: CALLDATALOAD
000001e3: PUSH1 0x24
000001e5: CALLDATALOAD
000001e6: PUSH1 0x44
000001e8: CALLDATALOAD
000001e9: PUSH1 0x01
000001eb: PUSH1 0xa0
000001ed: PUSH1 0x02
000001ef: EXP
000001f0: SUB
000001f1: CALLER
000001f2: AND
000001f3: PUSH1 0x00
000001f5: SWAP1
000001f6: DUP2
000001f7: MSTORE
000001f8: PUSH1 0x01
000001fa: PUSH1 0x20
000001fc: MSTORE
000001fd: PUSH1 0x40
000001ff: SWAP1
00000200: KECCAK256
00000201: SLOAD
00000202: PUSH1 0xff
00000204: AND
00000205: ISZERO
00000206: ISZERO
00000207: PUSH2 0x0532
0000020a: JUMPI
0000020b: PUSH2 0x0002
0000020e: JUMP
0000020f: JUMPDEST
00000210: PUSH1 0x01
00000212: PUSH1 0xa0
00000214: PUSH1 0x02
00000216: EXP
00000217: SUB
00000218: PUSH1 0x04
0000021a: CALLDATALOAD
0000021b: AND
0000021c: PUSH1 0x00
0000021e: SWAP1
0000021f: DUP2
00000220: MSTORE
00000221: PUSH1 0x02
00000223: PUSH1 0x20
00000225: MSTORE
00000226: PUSH1 0x40
00000228: SWAP1
00000229: KECCAK256
0000022a: DUP1
0000022b: SLOAD
0000022c: CALLVALUE
0000022d: ADD
0000022e: SWAP1
0000022f: SSTORE
00000230: JUMPDEST
00000231: STOP
00000232: JUMPDEST
00000233: CALLVALUE
00000234: PUSH2 0x0002
00000237: JUMPI
00000238: PUSH2 0x0230
0000023b: PUSH1 0x04
0000023d: CALLDATALOAD
0000023e: PUSH1 0x24
00000240: CALLDATALOAD
00000241: PUSH1 0x01
00000243: PUSH1 0xa0
00000245: PUSH1 0x02
00000247: EXP
00000248: SUB
00000249: CALLER
0000024a: AND
0000024b: PUSH1 0x00
0000024d: SWAP1
0000024e: DUP2
0000024f: MSTORE
00000250: PUSH1 0x01
00000252: PUSH1 0x20
00000254: MSTORE
00000255: PUSH1 0x40
00000257: SWAP1
00000258: KECCAK256
00000259: SLOAD
0000025a: PUSH1 0xff
0000025c: AND
0000025d: ISZERO
0000025e: ISZERO
0000025f: PUSH2 0x06a1
00000262: JUMPI
00000263: PUSH2 0x0002
00000266: JUMP
00000267: JUMPDEST
00000268: PUSH1 0x40
0000026a: DUP1
0000026b: MLOAD
0000026c: SWAP2
0000026d: DUP3
0000026e: MSTORE
0000026f: MLOAD
00000270: SWAP1
00000271: DUP2
00000272: SWAP1
00000273: SUB
00000274: PUSH1 0x20
00000276: ADD
00000277: SWAP1
00000278: RETURN
00000279: JUMPDEST
0000027a: PUSH1 0x40
0000027c: DUP1
0000027d: MLOAD
0000027e: PUSH1 0x01
00000280: PUSH1 0xa0
00000282: PUSH1 0x02
00000284: EXP
00000285: SUB
00000286: SWAP1
00000287: SWAP3
00000288: AND
00000289: DUP3
0000028a: MSTORE
0000028b: MLOAD
0000028c: SWAP1
0000028d: DUP2
0000028e: SWAP1
0000028f: SUB
00000290: PUSH1 0x20
00000292: ADD
00000293: SWAP1
00000294: RETURN
00000295: JUMPDEST
00000296: PUSH1 0x01
00000298: PUSH1 0xa0
0000029a: PUSH1 0x02
0000029c: EXP
0000029d: SUB
0000029e: AND
0000029f: PUSH1 0x00
000002a1: SWAP1
000002a2: DUP2
000002a3: MSTORE
000002a4: PUSH1 0x01
000002a6: PUSH1 0x20
000002a8: DUP2
000002a9: SWAP1
000002aa: MSTORE
000002ab: PUSH1 0x40
000002ad: SWAP1
000002ae: SWAP2
000002af: KECCAK256
000002b0: DUP1
000002b1: SLOAD
000002b2: PUSH1 0xff
000002b4: NOT
000002b5: AND
000002b6: SWAP1
000002b7: SWAP2
000002b8: OR
000002b9: SWAP1
000002ba: SSTORE
000002bb: JUMP
000002bc: JUMPDEST
000002bd: PUSH1 0x00
000002bf: DUP1
000002c0: SLOAD
000002c1: PUSH13 0x01000000000000000000000000
000002cf: DUP1
000002d0: DUP5
000002d1: MUL
000002d2: DIV
000002d3: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000002e8: NOT
000002e9: SWAP1
000002ea: SWAP2
000002eb: AND
000002ec: OR
000002ed: SWAP1
000002ee: SSTORE
000002ef: POP
000002f0: JUMP
000002f1: JUMPDEST
000002f2: PUSH1 0x01
000002f4: PUSH1 0xa0
000002f6: PUSH1 0x02
000002f8: EXP
000002f9: SUB
000002fa: DUP5
000002fb: AND
000002fc: PUSH1 0x00
000002fe: SWAP1
000002ff: DUP2
00000300: MSTORE
00000301: PUSH1 0x02
00000303: PUSH1 0x20
00000305: MSTORE
00000306: PUSH1 0x40
00000308: SWAP1
00000309: KECCAK256
0000030a: SLOAD
0000030b: DUP3
0000030c: GT
0000030d: ISZERO
0000030e: PUSH2 0x0316
00000311: JUMPI
00000312: PUSH2 0x0002
00000315: JUMP
00000316: JUMPDEST
00000317: PUSH1 0x01
00000319: PUSH1 0xa0
0000031b: PUSH1 0x02
0000031d: EXP
0000031e: SUB
0000031f: DUP5
00000320: AND
00000321: PUSH1 0x00
00000323: SWAP1
00000324: DUP2
00000325: MSTORE
00000326: PUSH1 0x02
00000328: PUSH1 0x20
0000032a: SWAP1
0000032b: DUP2
0000032c: MSTORE
0000032d: PUSH1 0x40
0000032f: DUP1
00000330: DUP4
00000331: KECCAK256
00000332: SLOAD
00000333: DUP2
00000334: MLOAD
00000335: DUP4
00000336: ADD
00000337: SWAP4
00000338: SWAP1
00000339: SWAP4
0000033a: MSTORE
0000033b: DUP1
0000033c: MLOAD
0000033d: PUSH1 0xe0
0000033f: PUSH1 0x02
00000341: EXP
00000342: PUSH4 0x3ef5e445
00000347: MUL
00000348: DUP2
00000349: MSTORE
0000034a: PUSH1 0x04
0000034c: DUP2
0000034d: ADD
0000034e: SWAP4
0000034f: SWAP1
00000350: SWAP4
00000351: MSTORE
00000352: PUSH1 0x24
00000354: DUP4
00000355: ADD
00000356: DUP6
00000357: SWAP1
00000358: MSTORE
00000359: MLOAD
0000035a: PUSH20 0xf5c1f023d47808621229e1cf2b9ef8ec4f33ca94
0000036f: SWAP3
00000370: PUSH4 0x3ef5e445
00000375: SWAP3
00000376: PUSH1 0x44
00000378: DUP1
00000379: DUP4
0000037a: ADD
0000037b: SWAP4
0000037c: SWAP2
0000037d: SWAP3
0000037e: DUP3
0000037f: SWAP1
00000380: SUB
00000381: ADD
00000382: DUP2
00000383: DUP7
00000384: DUP1
00000385: EXTCODESIZE
00000386: ISZERO
00000387: PUSH2 0x0002
0000038a: JUMPI
0000038b: PUSH1 0x32
0000038d: GAS
0000038e: SUB
0000038f: DELEGATECALL
00000390: ISZERO
00000391: PUSH2 0x0002
00000394: JUMPI
00000395: POP
00000396: POP
00000397: POP
00000398: PUSH1 0x40
0000039a: MLOAD
0000039b: DUP1
0000039c: MLOAD
0000039d: SWAP1
0000039e: PUSH1 0x20
000003a0: ADD
000003a1: POP
000003a2: PUSH1 0x02
000003a4: PUSH1 0x00
000003a6: POP
000003a7: PUSH1 0x00
000003a9: DUP7
000003aa: PUSH1 0x01
000003ac: PUSH1 0xa0
000003ae: PUSH1 0x02
000003b0: EXP
000003b1: SUB
000003b2: AND
000003b3: DUP2
000003b4: MSTORE
000003b5: PUSH1 0x20
000003b7: ADD
000003b8: SWAP1
000003b9: DUP2
000003ba: MSTORE
000003bb: PUSH1 0x20
000003bd: ADD
000003be: PUSH1 0x00
000003c0: KECCAK256
000003c1: PUSH1 0x00
000003c3: POP
000003c4: DUP2
000003c5: SWAP1
000003c6: SSTORE
000003c7: POP
000003c8: DUP3
000003c9: PUSH1 0x01
000003cb: PUSH1 0xa0
000003cd: PUSH1 0x02
000003cf: EXP
000003d0: SUB
000003d1: AND
000003d2: DUP3
000003d3: DUP3
000003d4: PUSH1 0x40
000003d6: MLOAD
000003d7: DUP1
000003d8: DUP3
000003d9: DUP1
000003da: MLOAD
000003db: SWAP1
000003dc: PUSH1 0x20
000003de: ADD
000003df: SWAP1
000003e0: DUP1
000003e1: DUP4
000003e2: DUP4
000003e3: DUP3
000003e4: SWAP1
000003e5: PUSH1 0x00
000003e7: PUSH1 0x04
000003e9: PUSH1 0x20
000003eb: DUP5
000003ec: PUSH1 0x1f
000003ee: ADD
000003ef: DIV
000003f0: PUSH1 0x03
000003f2: MUL
000003f3: PUSH1 0x0f
000003f5: ADD
000003f6: CALL
000003f7: POP
000003f8: SWAP1
000003f9: POP
000003fa: ADD
000003fb: SWAP2
000003fc: POP
000003fd: POP
000003fe: PUSH1 0x40
00000400: MLOAD
00000401: DUP1
00000402: SWAP2
00000403: SUB
00000404: SWAP1
00000405: KECCAK256
00000406: PUSH1 0xe0
00000408: PUSH1 0x02
0000040a: EXP
0000040b: SWAP1
0000040c: DIV
0000040d: SWAP1
0000040e: PUSH1 0x40
00000410: MLOAD
00000411: DUP3
00000412: PUSH1 0xe0
00000414: PUSH1 0x02
00000416: EXP
00000417: MUL
00000418: DUP2
00000419: MSTORE
0000041a: PUSH1 0x04
0000041c: ADD
0000041d: DUP1
0000041e: SWAP1
0000041f: POP
00000420: PUSH1 0x00
00000422: PUSH1 0x40
00000424: MLOAD
00000425: DUP1
00000426: DUP4
00000427: SUB
00000428: DUP2
00000429: DUP6
0000042a: DUP9
0000042b: PUSH2 0x8502
0000042e: GAS
0000042f: SUB
00000430: CALL
00000431: SWAP4
00000432: POP
00000433: POP
00000434: POP
00000435: POP
00000436: ISZERO
00000437: ISZERO
00000438: PUSH2 0x0440
0000043b: JUMPI
0000043c: PUSH2 0x0002
0000043f: JUMP
00000440: JUMPDEST
00000441: POP
00000442: POP
00000443: POP
00000444: POP
00000445: JUMP
00000446: JUMPDEST
00000447: PUSH1 0x01
00000449: PUSH1 0xa0
0000044b: PUSH1 0x02
0000044d: EXP
0000044e: SUB
0000044f: DUP4
00000450: AND
00000451: PUSH1 0x00
00000453: SWAP1
00000454: DUP2
00000455: MSTORE
00000456: PUSH1 0x02
00000458: PUSH1 0x20
0000045a: MSTORE
0000045b: PUSH1 0x40
0000045d: SWAP1
0000045e: KECCAK256
0000045f: SLOAD
00000460: DUP2
00000461: GT
00000462: ISZERO
00000463: PUSH2 0x046b
00000466: JUMPI
00000467: PUSH2 0x0002
0000046a: JUMP
0000046b: JUMPDEST
0000046c: PUSH1 0x01
0000046e: PUSH1 0xa0
00000470: PUSH1 0x02
00000472: EXP
00000473: SUB
00000474: DUP4
00000475: AND
00000476: PUSH1 0x00
00000478: SWAP1
00000479: DUP2
0000047a: MSTORE
0000047b: PUSH1 0x02
0000047d: PUSH1 0x20
0000047f: SWAP1
00000480: DUP2
00000481: MSTORE
00000482: PUSH1 0x40
00000484: DUP1
00000485: DUP4
00000486: KECCAK256
00000487: SLOAD
00000488: DUP2
00000489: MLOAD
0000048a: DUP4
0000048b: ADD
0000048c: SWAP4
0000048d: SWAP1
0000048e: SWAP4
0000048f: MSTORE
00000490: DUP1
00000491: MLOAD
00000492: PUSH1 0xe0
00000494: PUSH1 0x02
00000496: EXP
00000497: PUSH4 0x3ef5e445
0000049c: MUL
0000049d: DUP2
0000049e: MSTORE
0000049f: PUSH1 0x04
000004a1: DUP2
000004a2: ADD
000004a3: SWAP4
000004a4: SWAP1
000004a5: SWAP4
000004a6: MSTORE
000004a7: PUSH1 0x24
000004a9: DUP4
000004aa: ADD
000004ab: DUP5
000004ac: SWAP1
000004ad: MSTORE
000004ae: MLOAD
000004af: PUSH20 0xf5c1f023d47808621229e1cf2b9ef8ec4f33ca94
000004c4: SWAP3
000004c5: PUSH4 0x3ef5e445
000004ca: SWAP3
000004cb: PUSH1 0x44
000004cd: DUP1
000004ce: DUP4
000004cf: ADD
000004d0: SWAP4
000004d1: SWAP2
000004d2: SWAP3
000004d3: DUP3
000004d4: SWAP1
000004d5: SUB
000004d6: ADD
000004d7: DUP2
000004d8: DUP7
000004d9: DUP1
000004da: EXTCODESIZE
000004db: ISZERO
000004dc: PUSH2 0x0002
000004df: JUMPI
000004e0: PUSH1 0x32
000004e2: GAS
000004e3: SUB
000004e4: DELEGATECALL
000004e5: ISZERO
000004e6: PUSH2 0x0002
000004e9: JUMPI
000004ea: POP
000004eb: POP
000004ec: PUSH1 0x40
000004ee: DUP1
000004ef: MLOAD
000004f0: DUP1
000004f1: MLOAD
000004f2: PUSH1 0x01
000004f4: PUSH1 0xa0
000004f6: PUSH1 0x02
000004f8: EXP
000004f9: SUB
000004fa: DUP1
000004fb: DUP9
000004fc: AND
000004fd: PUSH1 0x00
000004ff: SWAP1
00000500: DUP2
00000501: MSTORE
00000502: PUSH1 0x02
00000504: PUSH1 0x20
00000506: MSTORE
00000507: SWAP4
00000508: DUP5
00000509: KECCAK256
0000050a: SWAP2
0000050b: SWAP1
0000050c: SWAP2
0000050d: SSTORE
0000050e: DUP6
0000050f: AND
00000510: SWAP3
00000511: POP
00000512: DUP4
00000513: SWAP2
00000514: DUP2
00000515: DUP2
00000516: DUP2
00000517: DUP6
00000518: DUP8
00000519: PUSH2 0x8502
0000051c: GAS
0000051d: SUB
0000051e: CALL
0000051f: SWAP3
00000520: POP
00000521: POP
00000522: POP
00000523: ISZERO
00000524: ISZERO
00000525: PUSH2 0x052d
00000528: JUMPI
00000529: PUSH2 0x0002
0000052c: JUMP
0000052d: JUMPDEST
0000052e: POP
0000052f: POP
00000530: POP
00000531: JUMP
00000532: JUMPDEST
00000533: PUSH1 0x01
00000535: PUSH1 0xa0
00000537: PUSH1 0x02
00000539: EXP
0000053a: SUB
0000053b: DUP4
0000053c: AND
0000053d: PUSH1 0x00
0000053f: SWAP1
00000540: DUP2
00000541: MSTORE
00000542: PUSH1 0x02
00000544: PUSH1 0x20
00000546: MSTORE
00000547: PUSH1 0x40
00000549: SWAP1
0000054a: KECCAK256
0000054b: SLOAD
0000054c: DUP2
0000054d: GT
0000054e: ISZERO
0000054f: PUSH2 0x0557
00000552: JUMPI
00000553: PUSH2 0x0002
00000556: JUMP
00000557: JUMPDEST
00000558: PUSH1 0x01
0000055a: PUSH1 0xa0
0000055c: PUSH1 0x02
0000055e: EXP
0000055f: SUB
00000560: DUP4
00000561: AND
00000562: PUSH1 0x00
00000564: SWAP1
00000565: DUP2
00000566: MSTORE
00000567: PUSH1 0x02
00000569: PUSH1 0x20
0000056b: SWAP1
0000056c: DUP2
0000056d: MSTORE
0000056e: PUSH1 0x40
00000570: DUP1
00000571: DUP4
00000572: KECCAK256
00000573: SLOAD
00000574: DUP2
00000575: MLOAD
00000576: DUP4
00000577: ADD
00000578: SWAP4
00000579: SWAP1
0000057a: SWAP4
0000057b: MSTORE
0000057c: DUP1
0000057d: MLOAD
0000057e: PUSH1 0xe0
00000580: PUSH1 0x02
00000582: EXP
00000583: PUSH4 0x3ef5e445
00000588: MUL
00000589: DUP2
0000058a: MSTORE
0000058b: PUSH1 0x04
0000058d: DUP2
0000058e: ADD
0000058f: SWAP4
00000590: SWAP1
00000591: SWAP4
00000592: MSTORE
00000593: PUSH1 0x24
00000595: DUP4
00000596: ADD
00000597: DUP5
00000598: SWAP1
00000599: MSTORE
0000059a: MLOAD
0000059b: PUSH20 0xf5c1f023d47808621229e1cf2b9ef8ec4f33ca94
000005b0: SWAP3
000005b1: PUSH4 0x3ef5e445
000005b6: SWAP3
000005b7: PUSH1 0x44
000005b9: DUP1
000005ba: DUP4
000005bb: ADD
000005bc: SWAP4
000005bd: SWAP2
000005be: SWAP3
000005bf: DUP3
000005c0: SWAP1
000005c1: SUB
000005c2: ADD
000005c3: DUP2
000005c4: DUP7
000005c5: DUP1
000005c6: EXTCODESIZE
000005c7: ISZERO
000005c8: PUSH2 0x0002
000005cb: JUMPI
000005cc: PUSH1 0x32
000005ce: GAS
000005cf: SUB
000005d0: DELEGATECALL
000005d1: ISZERO
000005d2: PUSH2 0x0002
000005d5: JUMPI
000005d6: POP
000005d7: POP
000005d8: PUSH1 0x40
000005da: DUP1
000005db: MLOAD
000005dc: DUP1
000005dd: MLOAD
000005de: PUSH1 0x01
000005e0: PUSH1 0xa0
000005e2: PUSH1 0x02
000005e4: EXP
000005e5: SUB
000005e6: DUP1
000005e7: DUP9
000005e8: AND
000005e9: PUSH1 0x00
000005eb: SWAP1
000005ec: DUP2
000005ed: MSTORE
000005ee: PUSH1 0x02
000005f0: PUSH1 0x20
000005f2: SWAP1
000005f3: DUP2
000005f4: MSTORE
000005f5: DUP6
000005f6: DUP3
000005f7: KECCAK256
000005f8: SWAP4
000005f9: SWAP1
000005fa: SWAP4
000005fb: SSTORE
000005fc: SWAP1
000005fd: DUP8
000005fe: AND
000005ff: DUP2
00000600: MSTORE
00000601: DUP4
00000602: DUP2
00000603: KECCAK256
00000604: SLOAD
00000605: SWAP3
00000606: DUP3
00000607: ADD
00000608: MSTORE
00000609: DUP3
0000060a: MLOAD
0000060b: PUSH32 0x771602f700000000000000000000000000000000000000000000000000000000
0000062c: DUP2
0000062d: MSTORE
0000062e: PUSH1 0x04
00000630: DUP2
00000631: ADD
00000632: SWAP3
00000633: SWAP1
00000634: SWAP3
00000635: MSTORE
00000636: PUSH1 0x24
00000638: DUP3
00000639: ADD
0000063a: DUP6
0000063b: SWAP1
0000063c: MSTORE
0000063d: SWAP2
0000063e: MLOAD
0000063f: PUSH20 0xf5c1f023d47808621229e1cf2b9ef8ec4f33ca94
00000654: SWAP4
00000655: POP
00000656: PUSH4 0x771602f7
0000065b: SWAP3
0000065c: PUSH1 0x44
0000065e: DUP1
0000065f: DUP5
00000660: ADD
00000661: SWAP4
00000662: SWAP2
00000663: SWAP3
00000664: SWAP2
00000665: DUP3
00000666: SWAP1
00000667: SUB
00000668: ADD
00000669: DUP2
0000066a: DUP7
0000066b: DUP1
0000066c: EXTCODESIZE
0000066d: ISZERO
0000066e: PUSH2 0x0002
00000671: JUMPI
00000672: PUSH1 0x32
00000674: GAS
00000675: SUB
00000676: DELEGATECALL
00000677: ISZERO
00000678: PUSH2 0x0002
0000067b: JUMPI
0000067c: POP
0000067d: POP
0000067e: PUSH1 0x40
00000680: DUP1
00000681: MLOAD
00000682: MLOAD
00000683: PUSH1 0x01
00000685: PUSH1 0xa0
00000687: PUSH1 0x02
00000689: EXP
0000068a: SUB
0000068b: DUP6
0000068c: AND
0000068d: PUSH1 0x00
0000068f: SWAP1
00000690: DUP2
00000691: MSTORE
00000692: PUSH1 0x02
00000694: PUSH1 0x20
00000696: MSTORE
00000697: SWAP2
00000698: SWAP1
00000699: SWAP2
0000069a: KECCAK256
0000069b: SSTORE
0000069c: POP
0000069d: POP
0000069e: POP
0000069f: POP
000006a0: JUMP
000006a1: JUMPDEST
000006a2: PUSH1 0x40
000006a4: MLOAD
000006a5: PUSH1 0x01
000006a7: PUSH1 0xa0
000006a9: PUSH1 0x02
000006ab: EXP
000006ac: SUB
000006ad: DUP4
000006ae: AND
000006af: SWAP1
000006b0: DUP3
000006b1: SWAP1
000006b2: PUSH1 0x00
000006b4: DUP2
000006b5: DUP2
000006b6: DUP2
000006b7: DUP6
000006b8: DUP8
000006b9: PUSH2 0x8502
000006bc: GAS
000006bd: SUB
000006be: CALL
000006bf: SWAP3
000006c0: POP
000006c1: POP
000006c2: POP
000006c3: ISZERO
000006c4: ISZERO
000006c5: PUSH2 0x06cd
000006c8: JUMPI
000006c9: PUSH2 0x0002
000006cc: JUMP
000006cd: JUMPDEST
000006ce: POP
000006cf: POP
000006d0: JUMP

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: 0x2a145503dfdff77498548df4c4933d7fe4ff54ed30b06e3bdf489d613e1fafc7
validation_json
{
    "sink": "DELEGATECALL",
    "errors": 0,
    "status": "unknown",
    "attempts": 120,
    "trace_id": "0x2a145503dfdff77498548df4c4933d7fe4ff54ed30b06e3bdf489d613e1fafc7",
    "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": "0x36b196cf",
            "selector": "0x36b196cf",
            "calldata_variants": [
                "0x36b196cf",
                "0x36b196cf0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x4fb2e45d",
            "selector": "0x4fb2e45d",
            "calldata_variants": [
                "0x4fb2e45d",
                "0x4fb2e45d0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x506d994b",
            "selector": "0x506d994b",
            "calldata_variants": [
                "0x506d994b",
                "0x506d994b0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x66bc5fa8",
            "selector": "0x66bc5fa8",
            "calldata_variants": [
                "0x66bc5fa8",
                "0x66bc5fa80000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x6ff96d17",
            "selector": "0x6ff96d17",
            "calldata_variants": [
                "0x6ff96d17",
                "0x6ff96d170000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x8da5cb5b",
            "selector": "0x8da5cb5b",
            "calldata_variants": [
                "0x8da5cb5b",
                "0x8da5cb5b0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x9555a942",
            "selector": "0x9555a942",
            "calldata_variants": [
                "0x9555a942",
                "0x9555a9420000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xbeabacc8",
            "selector": "0xbeabacc8",
            "calldata_variants": [
                "0xbeabacc8",
                "0xbeabacc80000000000000000000000000000000000000000000000000000000000000000"
            ]
        }
    ]
}
evidence_json
{
    "examples": [
        {
            "pc": 911,
            "opcode": "DELEGATECALL",
            "returndata_checked": null,
            "value_expression_category": "n/a",
            "target_expression_category": "computed"
        },
        {
            "pc": 1252,
            "opcode": "DELEGATECALL",
            "returndata_checked": null,
            "value_expression_category": "n/a",
            "target_expression_category": "computed"
        },
        {
            "pc": 1488,
            "opcode": "DELEGATECALL",
            "returndata_checked": null,
            "value_expression_category": "n/a",
            "target_expression_category": "computed"
        }
    ],
    "guards_detected": [],
    "delegatecall_count": 4,
    "untrusted_delegatecall_count": 4
}
high other detector Untrusted CALL target/value reachable 60 no no
view
trace_id: 0xa3a175699ba69dbadf3cfb3aa03bdbe9dcb0cd12427f44eeab233b0cf67fc47a
call_targets: 0x722cc4fadd0d6fedaa1a87d7293426d6f051fe59
target_varies: no
classification: constant_target
validation_json
{
    "sink": "CALL",
    "errors": 0,
    "status": "sink_reached",
    "attempts": 1,
    "trace_id": "0xa3a175699ba69dbadf3cfb3aa03bdbe9dcb0cd12427f44eeab233b0cf67fc47a",
    "confirmed": false,
    "trace_mode": "callTracer",
    "call_targets": [
        "0x722cc4fadd0d6fedaa1a87d7293426d6f051fe59"
    ],
    "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": "0x36b196cf",
            "selector": "0x36b196cf",
            "calldata_variants": [
                "0x36b196cf",
                "0x36b196cf0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x4fb2e45d",
            "selector": "0x4fb2e45d",
            "calldata_variants": [
                "0x4fb2e45d",
                "0x4fb2e45d0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x506d994b",
            "selector": "0x506d994b",
            "calldata_variants": [
                "0x506d994b",
                "0x506d994b0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x66bc5fa8",
            "selector": "0x66bc5fa8",
            "calldata_variants": [
                "0x66bc5fa8",
                "0x66bc5fa80000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x6ff96d17",
            "selector": "0x6ff96d17",
            "calldata_variants": [
                "0x6ff96d17",
                "0x6ff96d170000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x8da5cb5b",
            "selector": "0x8da5cb5b",
            "calldata_variants": [
                "0x8da5cb5b",
                "0x8da5cb5b0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x9555a942",
            "selector": "0x9555a942",
            "calldata_variants": [
                "0x9555a942",
                "0x9555a9420000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xbeabacc8",
            "selector": "0xbeabacc8",
            "calldata_variants": [
                "0xbeabacc8",
                "0xbeabacc80000000000000000000000000000000000000000000000000000000000000000"
            ]
        }
    ]
}
evidence_json
{
    "examples": [
        {
            "pc": 1014,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        },
        {
            "pc": 1072,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        },
        {
            "pc": 1310,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        }
    ],
    "call_count": 4,
    "guards_detected": [],
    "untrusted_call_count": 4
}
high other detector ETH value transfer possible 55 no no
view
trace_id: 0xa3a175699ba69dbadf3cfb3aa03bdbe9dcb0cd12427f44eeab233b0cf67fc47a
call_targets: 0x722cc4fadd0d6fedaa1a87d7293426d6f051fe59
target_varies: no
classification: constant_target
validation_json
{
    "sink": "CALL",
    "errors": 0,
    "status": "sink_reached",
    "attempts": 1,
    "trace_id": "0xa3a175699ba69dbadf3cfb3aa03bdbe9dcb0cd12427f44eeab233b0cf67fc47a",
    "confirmed": false,
    "trace_mode": "callTracer",
    "call_targets": [
        "0x722cc4fadd0d6fedaa1a87d7293426d6f051fe59"
    ],
    "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": "0x36b196cf",
            "selector": "0x36b196cf",
            "calldata_variants": [
                "0x36b196cf",
                "0x36b196cf0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x4fb2e45d",
            "selector": "0x4fb2e45d",
            "calldata_variants": [
                "0x4fb2e45d",
                "0x4fb2e45d0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x506d994b",
            "selector": "0x506d994b",
            "calldata_variants": [
                "0x506d994b",
                "0x506d994b0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x66bc5fa8",
            "selector": "0x66bc5fa8",
            "calldata_variants": [
                "0x66bc5fa8",
                "0x66bc5fa80000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x6ff96d17",
            "selector": "0x6ff96d17",
            "calldata_variants": [
                "0x6ff96d17",
                "0x6ff96d170000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x8da5cb5b",
            "selector": "0x8da5cb5b",
            "calldata_variants": [
                "0x8da5cb5b",
                "0x8da5cb5b0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x9555a942",
            "selector": "0x9555a942",
            "calldata_variants": [
                "0x9555a942",
                "0x9555a9420000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xbeabacc8",
            "selector": "0xbeabacc8",
            "calldata_variants": [
                "0xbeabacc8",
                "0xbeabacc80000000000000000000000000000000000000000000000000000000000000000"
            ]
        }
    ]
}
evidence_json
{
    "examples": [
        {
            "pc": 1014,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        },
        {
            "pc": 1072,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        },
        {
            "pc": 1310,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        }
    ],
    "eth_value_calls": 4,
    "guards_detected": []
}