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

Analysis Run

019b477e-c684-73d1-9dc0-6d777f7b878b

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
Authorization based on tx.origin
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
25789 artifact.fetch complete 1 / 3 3 months ago
25790 tool.cast_disasm complete 1 / 3 3 months ago
69174 analysis.bundle complete 1 / 3 2 weeks ago
69175 capability.graph complete 1 / 3 2 weeks ago
69176 detector.run complete 1 / 3 2 weeks ago
69177 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
0
Selfdestruct
0
CREATE2
0
CALL-family (heavy)
5
EXT*/BALANCE
4
Total opcodes
1659
Flags
No heuristic flags raised.
View cast disassembly output
00000000: PUSH1 0x80
00000002: PUSH1 0x40
00000004: MSTORE
00000005: PUSH1 0x04
00000007: CALLDATASIZE
00000008: LT
00000009: PUSH2 0x0029
0000000c: JUMPI
0000000d: PUSH1 0x00
0000000f: CALLDATALOAD
00000010: PUSH1 0xe0
00000012: SHR
00000013: DUP1
00000014: PUSH4 0x112658d3
00000019: EQ
0000001a: PUSH2 0x002b
0000001d: JUMPI
0000001e: DUP1
0000001f: PUSH4 0x52aa0a67
00000024: EQ
00000025: PUSH2 0x003e
00000028: JUMPI
00000029: JUMPDEST
0000002a: STOP
0000002b: JUMPDEST
0000002c: PUSH2 0x0029
0000002f: PUSH2 0x0039
00000032: CALLDATASIZE
00000033: PUSH1 0x04
00000035: PUSH2 0x058c
00000038: JUMP
00000039: JUMPDEST
0000003a: PUSH2 0x0046
0000003d: JUMP
0000003e: JUMPDEST
0000003f: PUSH2 0x0029
00000042: PUSH2 0x00c3
00000045: JUMP
00000046: JUMPDEST
00000047: PUSH1 0x00
00000049: SLOAD
0000004a: PUSH1 0x01
0000004c: PUSH1 0x01
0000004e: PUSH1 0xa0
00000050: SHL
00000051: SUB
00000052: AND
00000053: CALLER
00000054: EQ
00000055: PUSH2 0x005d
00000058: JUMPI
00000059: PUSH1 0x00
0000005b: DUP1
0000005c: REVERT
0000005d: JUMPDEST
0000005e: DUP4
0000005f: PUSH1 0x01
00000061: PUSH1 0x01
00000063: PUSH1 0xa0
00000065: SHL
00000066: SUB
00000067: AND
00000068: DUP4
00000069: DUP4
0000006a: DUP4
0000006b: PUSH1 0x40
0000006d: MLOAD
0000006e: PUSH2 0x0078
00000071: SWAP3
00000072: SWAP2
00000073: SWAP1
00000074: PUSH2 0x0714
00000077: JUMP
00000078: JUMPDEST
00000079: PUSH1 0x00
0000007b: PUSH1 0x40
0000007d: MLOAD
0000007e: DUP1
0000007f: DUP4
00000080: SUB
00000081: DUP2
00000082: DUP6
00000083: DUP8
00000084: GAS
00000085: CALL
00000086: SWAP3
00000087: POP
00000088: POP
00000089: POP
0000008a: RETURNDATASIZE
0000008b: DUP1
0000008c: PUSH1 0x00
0000008e: DUP2
0000008f: EQ
00000090: PUSH2 0x00b5
00000093: JUMPI
00000094: PUSH1 0x40
00000096: MLOAD
00000097: SWAP2
00000098: POP
00000099: PUSH1 0x1f
0000009b: NOT
0000009c: PUSH1 0x3f
0000009e: RETURNDATASIZE
0000009f: ADD
000000a0: AND
000000a1: DUP3
000000a2: ADD
000000a3: PUSH1 0x40
000000a5: MSTORE
000000a6: RETURNDATASIZE
000000a7: DUP3
000000a8: MSTORE
000000a9: RETURNDATASIZE
000000aa: PUSH1 0x00
000000ac: PUSH1 0x20
000000ae: DUP5
000000af: ADD
000000b0: RETURNDATACOPY
000000b1: PUSH2 0x00ba
000000b4: JUMP
000000b5: JUMPDEST
000000b6: PUSH1 0x60
000000b8: SWAP2
000000b9: POP
000000ba: JUMPDEST
000000bb: POP
000000bc: POP
000000bd: POP
000000be: POP
000000bf: POP
000000c0: POP
000000c1: POP
000000c2: JUMP
000000c3: JUMPDEST
000000c4: PUSH1 0x01
000000c6: SLOAD
000000c7: PUSH1 0x01
000000c9: PUSH1 0x01
000000cb: PUSH1 0xa0
000000cd: SHL
000000ce: SUB
000000cf: AND
000000d0: ORIGIN
000000d1: EQ
000000d2: DUP1
000000d3: PUSH2 0x00e6
000000d6: JUMPI
000000d7: POP
000000d8: PUSH1 0x00
000000da: SLOAD
000000db: PUSH1 0x01
000000dd: PUSH1 0x01
000000df: PUSH1 0xa0
000000e1: SHL
000000e2: SUB
000000e3: AND
000000e4: ORIGIN
000000e5: EQ
000000e6: JUMPDEST
000000e7: PUSH2 0x00ef
000000ea: JUMPI
000000eb: PUSH1 0x00
000000ed: DUP1
000000ee: REVERT
000000ef: JUMPDEST
000000f0: PUSH1 0x02
000000f2: SLOAD
000000f3: PUSH1 0x03
000000f5: SLOAD
000000f6: PUSH1 0x40
000000f8: MLOAD
000000f9: PUSH4 0x70a08231
000000fe: PUSH1 0xe0
00000100: SHL
00000101: DUP2
00000102: MSTORE
00000103: PUSH1 0x00
00000105: SWAP3
00000106: PUSH1 0x01
00000108: PUSH1 0x01
0000010a: PUSH1 0xa0
0000010c: SHL
0000010d: SUB
0000010e: SWAP1
0000010f: DUP2
00000110: AND
00000111: SWAP3
00000112: PUSH4 0x70a08231
00000117: SWAP3
00000118: PUSH2 0x0127
0000011b: SWAP3
0000011c: SWAP1
0000011d: SWAP2
0000011e: AND
0000011f: SWAP1
00000120: PUSH1 0x04
00000122: ADD
00000123: PUSH2 0x0724
00000126: JUMP
00000127: JUMPDEST
00000128: PUSH1 0x20
0000012a: PUSH1 0x40
0000012c: MLOAD
0000012d: DUP1
0000012e: DUP4
0000012f: SUB
00000130: DUP2
00000131: DUP7
00000132: DUP1
00000133: EXTCODESIZE
00000134: ISZERO
00000135: DUP1
00000136: ISZERO
00000137: PUSH2 0x013f
0000013a: JUMPI
0000013b: PUSH1 0x00
0000013d: DUP1
0000013e: REVERT
0000013f: JUMPDEST
00000140: POP
00000141: GAS
00000142: STATICCALL
00000143: ISZERO
00000144: DUP1
00000145: ISZERO
00000146: PUSH2 0x0153
00000149: JUMPI
0000014a: RETURNDATASIZE
0000014b: PUSH1 0x00
0000014d: DUP1
0000014e: RETURNDATACOPY
0000014f: RETURNDATASIZE
00000150: PUSH1 0x00
00000152: REVERT
00000153: JUMPDEST
00000154: POP
00000155: POP
00000156: POP
00000157: POP
00000158: PUSH1 0x40
0000015a: MLOAD
0000015b: RETURNDATASIZE
0000015c: PUSH1 0x1f
0000015e: NOT
0000015f: PUSH1 0x1f
00000161: DUP3
00000162: ADD
00000163: AND
00000164: DUP3
00000165: ADD
00000166: DUP1
00000167: PUSH1 0x40
00000169: MSTORE
0000016a: POP
0000016b: DUP2
0000016c: ADD
0000016d: SWAP1
0000016e: PUSH2 0x0177
00000171: SWAP2
00000172: SWAP1
00000173: PUSH2 0x061b
00000176: JUMP
00000177: JUMPDEST
00000178: SWAP1
00000179: POP
0000017a: PUSH7 0x2386f26fc10000
00000182: PUSH7 0xb1a2bc2ec50000
0000018a: DUP3
0000018b: LT
0000018c: ISZERO
0000018d: PUSH2 0x0197
00000190: JUMPI
00000191: POP
00000192: POP
00000193: PUSH2 0x04dd
00000196: JUMP
00000197: JUMPDEST
00000198: PUSH1 0x40
0000019a: DUP1
0000019b: MLOAD
0000019c: PUSH1 0x01
0000019e: DUP1
0000019f: DUP3
000001a0: MSTORE
000001a1: DUP2
000001a2: DUP4
000001a3: ADD
000001a4: SWAP1
000001a5: SWAP3
000001a6: MSTORE
000001a7: PUSH1 0x60
000001a9: SWAP2
000001aa: PUSH1 0x20
000001ac: DUP1
000001ad: DUP4
000001ae: ADD
000001af: SWAP1
000001b0: DUP1
000001b1: CALLDATASIZE
000001b2: DUP4
000001b3: CALLDATACOPY
000001b4: POP
000001b5: POP
000001b6: PUSH1 0x02
000001b8: SLOAD
000001b9: DUP3
000001ba: MLOAD
000001bb: SWAP3
000001bc: SWAP4
000001bd: POP
000001be: PUSH1 0x01
000001c0: PUSH1 0x01
000001c2: PUSH1 0xa0
000001c4: SHL
000001c5: SUB
000001c6: AND
000001c7: SWAP2
000001c8: DUP4
000001c9: SWAP2
000001ca: POP
000001cb: PUSH1 0x00
000001cd: SWAP1
000001ce: PUSH2 0x01d3
000001d1: JUMPI
000001d2: INVALID
000001d3: JUMPDEST
000001d4: PUSH1 0x01
000001d6: PUSH1 0x01
000001d8: PUSH1 0xa0
000001da: SHL
000001db: SUB
000001dc: SWAP3
000001dd: SWAP1
000001de: SWAP3
000001df: AND
000001e0: PUSH1 0x20
000001e2: SWAP3
000001e3: DUP4
000001e4: MUL
000001e5: SWAP2
000001e6: SWAP1
000001e7: SWAP2
000001e8: ADD
000001e9: SWAP1
000001ea: SWAP2
000001eb: ADD
000001ec: MSTORE
000001ed: PUSH1 0x40
000001ef: DUP1
000001f0: MLOAD
000001f1: PUSH1 0x02
000001f3: DUP1
000001f4: DUP3
000001f5: MSTORE
000001f6: PUSH1 0x60
000001f8: DUP3
000001f9: DUP2
000001fa: ADD
000001fb: SWAP1
000001fc: SWAP4
000001fd: MSTORE
000001fe: DUP2
000001ff: PUSH1 0x20
00000201: ADD
00000202: PUSH1 0x20
00000204: DUP3
00000205: MUL
00000206: DUP1
00000207: CALLDATASIZE
00000208: DUP4
00000209: CALLDATACOPY
0000020a: ADD
0000020b: SWAP1
0000020c: POP
0000020d: POP
0000020e: SWAP1
0000020f: POP
00000210: PUSH1 0x00
00000212: DUP2
00000213: PUSH1 0x00
00000215: DUP2
00000216: MLOAD
00000217: DUP2
00000218: LT
00000219: PUSH2 0x021e
0000021c: JUMPI
0000021d: INVALID
0000021e: JUMPDEST
0000021f: PUSH1 0x20
00000221: MUL
00000222: PUSH1 0x20
00000224: ADD
00000225: ADD
00000226: DUP2
00000227: DUP2
00000228: MSTORE
00000229: POP
0000022a: POP
0000022b: PUSH1 0x04
0000022d: DUP2
0000022e: PUSH1 0x01
00000230: DUP2
00000231: MLOAD
00000232: DUP2
00000233: LT
00000234: PUSH2 0x0239
00000237: JUMPI
00000238: INVALID
00000239: JUMPDEST
0000023a: PUSH1 0x20
0000023c: SWAP1
0000023d: DUP2
0000023e: MUL
0000023f: SWAP2
00000240: SWAP1
00000241: SWAP2
00000242: ADD
00000243: ADD
00000244: MSTORE
00000245: PUSH1 0x40
00000247: DUP1
00000248: MLOAD
00000249: PUSH1 0x01
0000024b: DUP1
0000024c: DUP3
0000024d: MSTORE
0000024e: DUP2
0000024f: DUP4
00000250: ADD
00000251: SWAP1
00000252: SWAP3
00000253: MSTORE
00000254: PUSH1 0x60
00000256: SWAP2
00000257: DUP2
00000258: PUSH1 0x20
0000025a: ADD
0000025b: PUSH1 0x20
0000025d: DUP3
0000025e: MUL
0000025f: DUP1
00000260: CALLDATASIZE
00000261: DUP4
00000262: CALLDATACOPY
00000263: ADD
00000264: SWAP1
00000265: POP
00000266: POP
00000267: SWAP1
00000268: POP
00000269: DUP4
0000026a: DUP2
0000026b: PUSH1 0x00
0000026d: DUP2
0000026e: MLOAD
0000026f: DUP2
00000270: LT
00000271: PUSH2 0x0276
00000274: JUMPI
00000275: INVALID
00000276: JUMPDEST
00000277: PUSH1 0x20
00000279: MUL
0000027a: PUSH1 0x20
0000027c: ADD
0000027d: ADD
0000027e: DUP2
0000027f: DUP2
00000280: MSTORE
00000281: POP
00000282: POP
00000283: PUSH2 0x028a
00000286: PUSH2 0x04df
00000289: JUMP
0000028a: JUMPDEST
0000028b: POP
0000028c: PUSH1 0x40
0000028e: DUP1
0000028f: MLOAD
00000290: PUSH2 0x01e0
00000293: DUP2
00000294: ADD
00000295: DUP3
00000296: MSTORE
00000297: PUSH20 0xeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee
000002ac: DUP2
000002ad: MSTORE
000002ae: PUSH1 0x02
000002b0: SLOAD
000002b1: PUSH1 0x01
000002b3: PUSH1 0x01
000002b5: PUSH1 0xa0
000002b7: SHL
000002b8: SUB
000002b9: SWAP1
000002ba: DUP2
000002bb: AND
000002bc: PUSH1 0x20
000002be: DUP1
000002bf: DUP5
000002c0: ADD
000002c1: SWAP2
000002c2: SWAP1
000002c3: SWAP2
000002c4: MSTORE
000002c5: DUP3
000002c6: DUP5
000002c7: ADD
000002c8: DUP9
000002c9: SWAP1
000002ca: MSTORE
000002cb: DUP9
000002cc: DUP9
000002cd: ADD
000002ce: PUSH1 0x60
000002d0: DUP5
000002d1: ADD
000002d2: DUP2
000002d3: SWAP1
000002d4: MSTORE
000002d5: PUSH1 0x80
000002d7: DUP5
000002d8: ADD
000002d9: MSTORE
000002da: PUSH1 0xa0
000002dc: DUP4
000002dd: ADD
000002de: DUP8
000002df: SWAP1
000002e0: MSTORE
000002e1: DUP4
000002e2: MLOAD
000002e3: DUP1
000002e4: DUP6
000002e5: ADD
000002e6: DUP6
000002e7: MSTORE
000002e8: PUSH1 0x04
000002ea: DUP1
000002eb: DUP3
000002ec: MSTORE
000002ed: PUSH4 0x0d0e30db
000002f2: PUSH1 0xe4
000002f4: SHL
000002f5: DUP3
000002f6: DUP5
000002f7: ADD
000002f8: MSTORE
000002f9: PUSH1 0xc0
000002fb: DUP6
000002fc: ADD
000002fd: SWAP2
000002fe: SWAP1
000002ff: SWAP2
00000300: MSTORE
00000301: PUSH1 0xe0
00000303: DUP5
00000304: ADD
00000305: DUP8
00000306: SWAP1
00000307: MSTORE
00000308: PUSH2 0x0100
0000030b: DUP5
0000030c: ADD
0000030d: DUP7
0000030e: SWAP1
0000030f: MSTORE
00000310: PUSH1 0x00
00000312: PUSH2 0x0120
00000315: DUP6
00000316: ADD
00000317: DUP2
00000318: SWAP1
00000319: MSTORE
0000031a: PUSH2 0x0140
0000031d: DUP6
0000031e: ADD
0000031f: DUP2
00000320: SWAP1
00000321: MSTORE
00000322: PUSH2 0x0160
00000325: DUP6
00000326: ADD
00000327: DUP2
00000328: SWAP1
00000329: MSTORE
0000032a: DUP6
0000032b: MLOAD
0000032c: SWAP3
0000032d: DUP4
0000032e: ADD
0000032f: DUP7
00000330: MSTORE
00000331: DUP1
00000332: DUP4
00000333: MSTORE
00000334: PUSH2 0x0180
00000337: DUP6
00000338: ADD
00000339: SWAP3
0000033a: SWAP1
0000033b: SWAP3
0000033c: MSTORE
0000033d: TIMESTAMP
0000033e: PUSH2 0x01a0
00000341: DUP6
00000342: ADD
00000343: MSTORE
00000344: PUSH2 0x01c0
00000347: DUP5
00000348: ADD
00000349: SWAP2
0000034a: SWAP1
0000034b: SWAP2
0000034c: MSTORE
0000034d: PUSH1 0x03
0000034f: SLOAD
00000350: SWAP4
00000351: MLOAD
00000352: PUSH4 0x54e3f31b
00000357: PUSH1 0xe0
00000359: SHL
0000035a: DUP2
0000035b: MSTORE
0000035c: SWAP3
0000035d: SWAP4
0000035e: SWAP1
0000035f: SWAP2
00000360: AND
00000361: SWAP2
00000362: PUSH4 0x54e3f31b
00000367: SWAP2
00000368: DUP9
00000369: SWAP2
0000036a: PUSH2 0x0375
0000036d: SWAP2
0000036e: DUP7
0000036f: SWAP2
00000370: ADD
00000371: PUSH2 0x0754
00000374: JUMP
00000375: JUMPDEST
00000376: PUSH1 0x20
00000378: PUSH1 0x40
0000037a: MLOAD
0000037b: DUP1
0000037c: DUP4
0000037d: SUB
0000037e: DUP2
0000037f: DUP6
00000380: DUP9
00000381: DUP1
00000382: EXTCODESIZE
00000383: ISZERO
00000384: DUP1
00000385: ISZERO
00000386: PUSH2 0x038e
00000389: JUMPI
0000038a: PUSH1 0x00
0000038c: DUP1
0000038d: REVERT
0000038e: JUMPDEST
0000038f: POP
00000390: GAS
00000391: CALL
00000392: ISZERO
00000393: DUP1
00000394: ISZERO
00000395: PUSH2 0x03a2
00000398: JUMPI
00000399: RETURNDATASIZE
0000039a: PUSH1 0x00
0000039c: DUP1
0000039d: RETURNDATACOPY
0000039e: RETURNDATASIZE
0000039f: PUSH1 0x00
000003a1: REVERT
000003a2: JUMPDEST
000003a3: POP
000003a4: POP
000003a5: POP
000003a6: POP
000003a7: POP
000003a8: PUSH1 0x40
000003aa: MLOAD
000003ab: RETURNDATASIZE
000003ac: PUSH1 0x1f
000003ae: NOT
000003af: PUSH1 0x1f
000003b1: DUP3
000003b2: ADD
000003b3: AND
000003b4: DUP3
000003b5: ADD
000003b6: DUP1
000003b7: PUSH1 0x40
000003b9: MSTORE
000003ba: POP
000003bb: DUP2
000003bc: ADD
000003bd: SWAP1
000003be: PUSH2 0x03c7
000003c1: SWAP2
000003c2: SWAP1
000003c3: PUSH2 0x061b
000003c6: JUMP
000003c7: JUMPDEST
000003c8: POP
000003c9: PUSH1 0x02
000003cb: SLOAD
000003cc: PUSH1 0x40
000003ce: MLOAD
000003cf: PUSH4 0x70a08231
000003d4: PUSH1 0xe0
000003d6: SHL
000003d7: DUP2
000003d8: MSTORE
000003d9: PUSH1 0x00
000003db: SWAP2
000003dc: PUSH1 0x01
000003de: PUSH1 0x01
000003e0: PUSH1 0xa0
000003e2: SHL
000003e3: SUB
000003e4: AND
000003e5: SWAP1
000003e6: PUSH4 0x70a08231
000003eb: SWAP1
000003ec: PUSH2 0x03f9
000003ef: SWAP1
000003f0: ADDRESS
000003f1: SWAP1
000003f2: PUSH1 0x04
000003f4: ADD
000003f5: PUSH2 0x0724
000003f8: JUMP
000003f9: JUMPDEST
000003fa: PUSH1 0x20
000003fc: PUSH1 0x40
000003fe: MLOAD
000003ff: DUP1
00000400: DUP4
00000401: SUB
00000402: DUP2
00000403: DUP7
00000404: DUP1
00000405: EXTCODESIZE
00000406: ISZERO
00000407: DUP1
00000408: ISZERO
00000409: PUSH2 0x0411
0000040c: JUMPI
0000040d: PUSH1 0x00
0000040f: DUP1
00000410: REVERT
00000411: JUMPDEST
00000412: POP
00000413: GAS
00000414: STATICCALL
00000415: ISZERO
00000416: DUP1
00000417: ISZERO
00000418: PUSH2 0x0425
0000041b: JUMPI
0000041c: RETURNDATASIZE
0000041d: PUSH1 0x00
0000041f: DUP1
00000420: RETURNDATACOPY
00000421: RETURNDATASIZE
00000422: PUSH1 0x00
00000424: REVERT
00000425: JUMPDEST
00000426: POP
00000427: POP
00000428: POP
00000429: POP
0000042a: PUSH1 0x40
0000042c: MLOAD
0000042d: RETURNDATASIZE
0000042e: PUSH1 0x1f
00000430: NOT
00000431: PUSH1 0x1f
00000433: DUP3
00000434: ADD
00000435: AND
00000436: DUP3
00000437: ADD
00000438: DUP1
00000439: PUSH1 0x40
0000043b: MSTORE
0000043c: POP
0000043d: DUP2
0000043e: ADD
0000043f: SWAP1
00000440: PUSH2 0x0449
00000443: SWAP2
00000444: SWAP1
00000445: PUSH2 0x061b
00000448: JUMP
00000449: JUMPDEST
0000044a: SWAP1
0000044b: POP
0000044c: DUP6
0000044d: DUP2
0000044e: GT
0000044f: PUSH2 0x0473
00000452: JUMPI
00000453: PUSH1 0x40
00000455: MLOAD
00000456: PUSH3 0x461bcd
0000045a: PUSH1 0xe5
0000045c: SHL
0000045d: DUP2
0000045e: MSTORE
0000045f: PUSH1 0x04
00000461: ADD
00000462: PUSH2 0x046a
00000465: SWAP1
00000466: PUSH2 0x0738
00000469: JUMP
0000046a: JUMPDEST
0000046b: PUSH1 0x40
0000046d: MLOAD
0000046e: DUP1
0000046f: SWAP2
00000470: SUB
00000471: SWAP1
00000472: REVERT
00000473: JUMPDEST
00000474: PUSH1 0x02
00000476: SLOAD
00000477: PUSH1 0x40
00000479: MLOAD
0000047a: PUSH4 0x2e1a7d4d
0000047f: PUSH1 0xe0
00000481: SHL
00000482: DUP2
00000483: MSTORE
00000484: PUSH1 0x01
00000486: PUSH1 0x01
00000488: PUSH1 0xa0
0000048a: SHL
0000048b: SUB
0000048c: SWAP1
0000048d: SWAP2
0000048e: AND
0000048f: SWAP1
00000490: PUSH4 0x2e1a7d4d
00000495: SWAP1
00000496: PUSH2 0x04a3
00000499: SWAP1
0000049a: DUP5
0000049b: SWAP1
0000049c: PUSH1 0x04
0000049e: ADD
0000049f: PUSH2 0x0897
000004a2: JUMP
000004a3: JUMPDEST
000004a4: PUSH1 0x00
000004a6: PUSH1 0x40
000004a8: MLOAD
000004a9: DUP1
000004aa: DUP4
000004ab: SUB
000004ac: DUP2
000004ad: PUSH1 0x00
000004af: DUP8
000004b0: DUP1
000004b1: EXTCODESIZE
000004b2: ISZERO
000004b3: DUP1
000004b4: ISZERO
000004b5: PUSH2 0x04bd
000004b8: JUMPI
000004b9: PUSH1 0x00
000004bb: DUP1
000004bc: REVERT
000004bd: JUMPDEST
000004be: POP
000004bf: GAS
000004c0: CALL
000004c1: ISZERO
000004c2: DUP1
000004c3: ISZERO
000004c4: PUSH2 0x04d1
000004c7: JUMPI
000004c8: RETURNDATASIZE
000004c9: PUSH1 0x00
000004cb: DUP1
000004cc: RETURNDATACOPY
000004cd: RETURNDATASIZE
000004ce: PUSH1 0x00
000004d0: REVERT
000004d1: JUMPDEST
000004d2: POP
000004d3: POP
000004d4: POP
000004d5: POP
000004d6: POP
000004d7: POP
000004d8: POP
000004d9: POP
000004da: POP
000004db: POP
000004dc: POP
000004dd: JUMPDEST
000004de: JUMP
000004df: JUMPDEST
000004e0: PUSH1 0x40
000004e2: MLOAD
000004e3: DUP1
000004e4: PUSH2 0x01e0
000004e7: ADD
000004e8: PUSH1 0x40
000004ea: MSTORE
000004eb: DUP1
000004ec: PUSH1 0x00
000004ee: PUSH1 0x01
000004f0: PUSH1 0x01
000004f2: PUSH1 0xa0
000004f4: SHL
000004f5: SUB
000004f6: AND
000004f7: DUP2
000004f8: MSTORE
000004f9: PUSH1 0x20
000004fb: ADD
000004fc: PUSH1 0x00
000004fe: PUSH1 0x01
00000500: PUSH1 0x01
00000502: PUSH1 0xa0
00000504: SHL
00000505: SUB
00000506: AND
00000507: DUP2
00000508: MSTORE
00000509: PUSH1 0x20
0000050b: ADD
0000050c: PUSH1 0x00
0000050e: DUP2
0000050f: MSTORE
00000510: PUSH1 0x20
00000512: ADD
00000513: PUSH1 0x00
00000515: DUP2
00000516: MSTORE
00000517: PUSH1 0x20
00000519: ADD
0000051a: PUSH1 0x00
0000051c: DUP2
0000051d: MSTORE
0000051e: PUSH1 0x20
00000520: ADD
00000521: PUSH1 0x60
00000523: DUP2
00000524: MSTORE
00000525: PUSH1 0x20
00000527: ADD
00000528: PUSH1 0x60
0000052a: DUP2
0000052b: MSTORE
0000052c: PUSH1 0x20
0000052e: ADD
0000052f: PUSH1 0x60
00000531: DUP2
00000532: MSTORE
00000533: PUSH1 0x20
00000535: ADD
00000536: PUSH1 0x60
00000538: DUP2
00000539: MSTORE
0000053a: PUSH1 0x20
0000053c: ADD
0000053d: PUSH1 0x00
0000053f: PUSH1 0x01
00000541: PUSH1 0x01
00000543: PUSH1 0xa0
00000545: SHL
00000546: SUB
00000547: AND
00000548: DUP2
00000549: MSTORE
0000054a: PUSH1 0x20
0000054c: ADD
0000054d: PUSH1 0x00
0000054f: PUSH1 0x01
00000551: PUSH1 0x01
00000553: PUSH1 0xa0
00000555: SHL
00000556: SUB
00000557: AND
00000558: DUP2
00000559: MSTORE
0000055a: PUSH1 0x20
0000055c: ADD
0000055d: PUSH1 0x00
0000055f: DUP2
00000560: MSTORE
00000561: PUSH1 0x20
00000563: ADD
00000564: PUSH1 0x60
00000566: DUP2
00000567: MSTORE
00000568: PUSH1 0x20
0000056a: ADD
0000056b: PUSH1 0x00
0000056d: DUP2
0000056e: MSTORE
0000056f: PUSH1 0x20
00000571: ADD
00000572: PUSH1 0x00
00000574: PUSH16 0xffffffffffffffffffffffffffffffff
00000585: NOT
00000586: AND
00000587: DUP2
00000588: MSTORE
00000589: POP
0000058a: SWAP1
0000058b: JUMP
0000058c: JUMPDEST
0000058d: PUSH1 0x00
0000058f: DUP1
00000590: PUSH1 0x00
00000592: DUP1
00000593: PUSH1 0x60
00000595: DUP6
00000596: DUP8
00000597: SUB
00000598: SLT
00000599: ISZERO
0000059a: PUSH2 0x05a1
0000059d: JUMPI
0000059e: DUP4
0000059f: DUP5
000005a0: REVERT
000005a1: JUMPDEST
000005a2: DUP5
000005a3: CALLDATALOAD
000005a4: PUSH1 0x01
000005a6: PUSH1 0x01
000005a8: PUSH1 0xa0
000005aa: SHL
000005ab: SUB
000005ac: DUP2
000005ad: AND
000005ae: DUP2
000005af: EQ
000005b0: PUSH2 0x05b7
000005b3: JUMPI
000005b4: DUP5
000005b5: DUP6
000005b6: REVERT
000005b7: JUMPDEST
000005b8: SWAP4
000005b9: POP
000005ba: PUSH1 0x20
000005bc: DUP6
000005bd: ADD
000005be: CALLDATALOAD
000005bf: SWAP3
000005c0: POP
000005c1: PUSH1 0x40
000005c3: DUP6
000005c4: ADD
000005c5: CALLDATALOAD
000005c6: PUSH8 0xffffffffffffffff
000005cf: DUP1
000005d0: DUP3
000005d1: GT
000005d2: ISZERO
000005d3: PUSH2 0x05da
000005d6: JUMPI
000005d7: DUP4
000005d8: DUP5
000005d9: REVERT
000005da: JUMPDEST
000005db: DUP2
000005dc: DUP8
000005dd: ADD
000005de: SWAP2
000005df: POP
000005e0: DUP8
000005e1: PUSH1 0x1f
000005e3: DUP4
000005e4: ADD
000005e5: SLT
000005e6: PUSH2 0x05ed
000005e9: JUMPI
000005ea: DUP4
000005eb: DUP5
000005ec: REVERT
000005ed: JUMPDEST
000005ee: DUP2
000005ef: CALLDATALOAD
000005f0: DUP2
000005f1: DUP2
000005f2: GT
000005f3: ISZERO
000005f4: PUSH2 0x05fb
000005f7: JUMPI
000005f8: DUP5
000005f9: DUP6
000005fa: REVERT
000005fb: JUMPDEST
000005fc: DUP9
000005fd: PUSH1 0x20
000005ff: DUP3
00000600: DUP6
00000601: ADD
00000602: ADD
00000603: GT
00000604: ISZERO
00000605: PUSH2 0x060c
00000608: JUMPI
00000609: DUP5
0000060a: DUP6
0000060b: REVERT
0000060c: JUMPDEST
0000060d: SWAP6
0000060e: SWAP9
0000060f: SWAP5
00000610: SWAP8
00000611: POP
00000612: POP
00000613: PUSH1 0x20
00000615: ADD
00000616: SWAP5
00000617: POP
00000618: POP
00000619: POP
0000061a: JUMP
0000061b: JUMPDEST
0000061c: PUSH1 0x00
0000061e: PUSH1 0x20
00000620: DUP3
00000621: DUP5
00000622: SUB
00000623: SLT
00000624: ISZERO
00000625: PUSH2 0x062c
00000628: JUMPI
00000629: DUP1
0000062a: DUP2
0000062b: REVERT
0000062c: JUMPDEST
0000062d: POP
0000062e: MLOAD
0000062f: SWAP2
00000630: SWAP1
00000631: POP
00000632: JUMP
00000633: JUMPDEST
00000634: PUSH1 0x01
00000636: PUSH1 0x01
00000638: PUSH1 0xa0
0000063a: SHL
0000063b: SUB
0000063c: AND
0000063d: SWAP1
0000063e: MSTORE
0000063f: JUMP
00000640: JUMPDEST
00000641: PUSH1 0x00
00000643: DUP2
00000644: MLOAD
00000645: DUP1
00000646: DUP5
00000647: MSTORE
00000648: PUSH1 0x20
0000064a: DUP1
0000064b: DUP6
0000064c: ADD
0000064d: SWAP5
0000064e: POP
0000064f: DUP1
00000650: DUP5
00000651: ADD
00000652: DUP4
00000653: JUMPDEST
00000654: DUP4
00000655: DUP2
00000656: LT
00000657: ISZERO
00000658: PUSH2 0x0678
0000065b: JUMPI
0000065c: DUP2
0000065d: MLOAD
0000065e: PUSH1 0x01
00000660: PUSH1 0x01
00000662: PUSH1 0xa0
00000664: SHL
00000665: SUB
00000666: AND
00000667: DUP8
00000668: MSTORE
00000669: SWAP6
0000066a: DUP3
0000066b: ADD
0000066c: SWAP6
0000066d: SWAP1
0000066e: DUP3
0000066f: ADD
00000670: SWAP1
00000671: PUSH1 0x01
00000673: ADD
00000674: PUSH2 0x0653
00000677: JUMP
00000678: JUMPDEST
00000679: POP
0000067a: SWAP5
0000067b: SWAP6
0000067c: SWAP5
0000067d: POP
0000067e: POP
0000067f: POP
00000680: POP
00000681: POP
00000682: JUMP
00000683: JUMPDEST
00000684: PUSH1 0x00
00000686: DUP2
00000687: MLOAD
00000688: DUP1
00000689: DUP5
0000068a: MSTORE
0000068b: PUSH1 0x20
0000068d: DUP1
0000068e: DUP6
0000068f: ADD
00000690: SWAP5
00000691: POP
00000692: DUP1
00000693: DUP5
00000694: ADD
00000695: DUP4
00000696: JUMPDEST
00000697: DUP4
00000698: DUP2
00000699: LT
0000069a: ISZERO
0000069b: PUSH2 0x0678
0000069e: JUMPI
0000069f: DUP2
000006a0: MLOAD
000006a1: DUP8
000006a2: MSTORE
000006a3: SWAP6
000006a4: DUP3
000006a5: ADD
000006a6: SWAP6
000006a7: SWAP1
000006a8: DUP3
000006a9: ADD
000006aa: SWAP1
000006ab: PUSH1 0x01
000006ad: ADD
000006ae: PUSH2 0x0696
000006b1: JUMP
000006b2: JUMPDEST
000006b3: PUSH16 0xffffffffffffffffffffffffffffffff
000006c4: NOT
000006c5: AND
000006c6: SWAP1
000006c7: MSTORE
000006c8: JUMP
000006c9: JUMPDEST
000006ca: PUSH1 0x00
000006cc: DUP2
000006cd: MLOAD
000006ce: DUP1
000006cf: DUP5
000006d0: MSTORE
000006d1: DUP2
000006d2: JUMPDEST
000006d3: DUP2
000006d4: DUP2
000006d5: LT
000006d6: ISZERO
000006d7: PUSH2 0x06ee
000006da: JUMPI
000006db: PUSH1 0x20
000006dd: DUP2
000006de: DUP6
000006df: ADD
000006e0: DUP2
000006e1: ADD
000006e2: MLOAD
000006e3: DUP7
000006e4: DUP4
000006e5: ADD
000006e6: DUP3
000006e7: ADD
000006e8: MSTORE
000006e9: ADD
000006ea: PUSH2 0x06d2
000006ed: JUMP
000006ee: JUMPDEST
000006ef: DUP2
000006f0: DUP2
000006f1: GT
000006f2: ISZERO
000006f3: PUSH2 0x06ff
000006f6: JUMPI
000006f7: DUP3
000006f8: PUSH1 0x20
000006fa: DUP4
000006fb: DUP8
000006fc: ADD
000006fd: ADD
000006fe: MSTORE
000006ff: JUMPDEST
00000700: POP
00000701: PUSH1 0x1f
00000703: ADD
00000704: PUSH1 0x1f
00000706: NOT
00000707: AND
00000708: SWAP3
00000709: SWAP1
0000070a: SWAP3
0000070b: ADD
0000070c: PUSH1 0x20
0000070e: ADD
0000070f: SWAP3
00000710: SWAP2
00000711: POP
00000712: POP
00000713: JUMP
00000714: JUMPDEST
00000715: PUSH1 0x00
00000717: DUP3
00000718: DUP5
00000719: DUP4
0000071a: CALLDATACOPY
0000071b: SWAP2
0000071c: ADD
0000071d: SWAP1
0000071e: DUP2
0000071f: MSTORE
00000720: SWAP2
00000721: SWAP1
00000722: POP
00000723: JUMP
00000724: JUMPDEST
00000725: PUSH1 0x01
00000727: PUSH1 0x01
00000729: PUSH1 0xa0
0000072b: SHL
0000072c: SUB
0000072d: SWAP2
0000072e: SWAP1
0000072f: SWAP2
00000730: AND
00000731: DUP2
00000732: MSTORE
00000733: PUSH1 0x20
00000735: ADD
00000736: SWAP1
00000737: JUMP
00000738: JUMPDEST
00000739: PUSH1 0x20
0000073b: DUP1
0000073c: DUP3
0000073d: MSTORE
0000073e: PUSH1 0x02
00000740: SWAP1
00000741: DUP3
00000742: ADD
00000743: MSTORE
00000744: PUSH2 0x2121
00000747: PUSH1 0xf0
00000749: SHL
0000074a: PUSH1 0x40
0000074c: DUP3
0000074d: ADD
0000074e: MSTORE
0000074f: PUSH1 0x60
00000751: ADD
00000752: SWAP1
00000753: JUMP
00000754: JUMPDEST
00000755: PUSH1 0x00
00000757: PUSH1 0x20
00000759: DUP3
0000075a: MSTORE
0000075b: PUSH2 0x0768
0000075e: PUSH1 0x20
00000760: DUP4
00000761: ADD
00000762: DUP5
00000763: MLOAD
00000764: PUSH2 0x0633
00000767: JUMP
00000768: JUMPDEST
00000769: PUSH1 0x20
0000076b: DUP4
0000076c: ADD
0000076d: MLOAD
0000076e: PUSH2 0x077a
00000771: PUSH1 0x40
00000773: DUP5
00000774: ADD
00000775: DUP3
00000776: PUSH2 0x0633
00000779: JUMP
0000077a: JUMPDEST
0000077b: POP
0000077c: PUSH1 0x40
0000077e: DUP4
0000077f: ADD
00000780: MLOAD
00000781: PUSH1 0x60
00000783: DUP4
00000784: ADD
00000785: MSTORE
00000786: PUSH1 0x60
00000788: DUP4
00000789: ADD
0000078a: MLOAD
0000078b: PUSH1 0x80
0000078d: DUP4
0000078e: ADD
0000078f: MSTORE
00000790: PUSH1 0x80
00000792: DUP4
00000793: ADD
00000794: MLOAD
00000795: PUSH1 0xa0
00000797: DUP4
00000798: ADD
00000799: MSTORE
0000079a: PUSH1 0xa0
0000079c: DUP4
0000079d: ADD
0000079e: MLOAD
0000079f: PUSH2 0x01e0
000007a2: DUP1
000007a3: PUSH1 0xc0
000007a5: DUP6
000007a6: ADD
000007a7: MSTORE
000007a8: PUSH2 0x07b5
000007ab: PUSH2 0x0200
000007ae: DUP6
000007af: ADD
000007b0: DUP4
000007b1: PUSH2 0x0640
000007b4: JUMP
000007b5: JUMPDEST
000007b6: SWAP2
000007b7: POP
000007b8: PUSH1 0xc0
000007ba: DUP6
000007bb: ADD
000007bc: MLOAD
000007bd: PUSH1 0x1f
000007bf: NOT
000007c0: DUP1
000007c1: DUP7
000007c2: DUP6
000007c3: SUB
000007c4: ADD
000007c5: PUSH1 0xe0
000007c7: DUP8
000007c8: ADD
000007c9: MSTORE
000007ca: PUSH2 0x07d3
000007cd: DUP5
000007ce: DUP4
000007cf: PUSH2 0x06c9
000007d2: JUMP
000007d3: JUMPDEST
000007d4: SWAP4
000007d5: POP
000007d6: PUSH1 0xe0
000007d8: DUP8
000007d9: ADD
000007da: MLOAD
000007db: SWAP2
000007dc: POP
000007dd: PUSH2 0x0100
000007e0: DUP2
000007e1: DUP8
000007e2: DUP7
000007e3: SUB
000007e4: ADD
000007e5: DUP2
000007e6: DUP9
000007e7: ADD
000007e8: MSTORE
000007e9: PUSH2 0x07f2
000007ec: DUP6
000007ed: DUP5
000007ee: PUSH2 0x0683
000007f1: JUMP
000007f2: JUMPDEST
000007f3: SWAP5
000007f4: POP
000007f5: DUP1
000007f6: DUP9
000007f7: ADD
000007f8: MLOAD
000007f9: SWAP3
000007fa: POP
000007fb: POP
000007fc: PUSH2 0x0120
000007ff: DUP2
00000800: DUP8
00000801: DUP7
00000802: SUB
00000803: ADD
00000804: DUP2
00000805: DUP9
00000806: ADD
00000807: MSTORE
00000808: PUSH2 0x0811
0000080b: DUP6
0000080c: DUP5
0000080d: PUSH2 0x0683
00000810: JUMP
00000811: JUMPDEST
00000812: SWAP5
00000813: POP
00000814: DUP1
00000815: DUP9
00000816: ADD
00000817: MLOAD
00000818: SWAP3
00000819: POP
0000081a: POP
0000081b: PUSH2 0x0140
0000081e: PUSH2 0x0829
00000821: DUP2
00000822: DUP9
00000823: ADD
00000824: DUP5
00000825: PUSH2 0x0633
00000828: JUMP
00000829: JUMPDEST
0000082a: DUP8
0000082b: ADD
0000082c: MLOAD
0000082d: SWAP2
0000082e: POP
0000082f: PUSH2 0x0160
00000832: PUSH2 0x083d
00000835: DUP8
00000836: DUP3
00000837: ADD
00000838: DUP5
00000839: PUSH2 0x0633
0000083c: JUMP
0000083d: JUMPDEST
0000083e: DUP1
0000083f: DUP9
00000840: ADD
00000841: MLOAD
00000842: SWAP3
00000843: POP
00000844: POP
00000845: PUSH2 0x0180
00000848: DUP3
00000849: DUP2
0000084a: DUP9
0000084b: ADD
0000084c: MSTORE
0000084d: DUP1
0000084e: DUP9
0000084f: ADD
00000850: MLOAD
00000851: SWAP3
00000852: POP
00000853: POP
00000854: PUSH2 0x01a0
00000857: DUP2
00000858: DUP8
00000859: DUP7
0000085a: SUB
0000085b: ADD
0000085c: DUP2
0000085d: DUP9
0000085e: ADD
0000085f: MSTORE
00000860: PUSH2 0x0869
00000863: DUP6
00000864: DUP5
00000865: PUSH2 0x06c9
00000868: JUMP
00000869: JUMPDEST
0000086a: SWAP1
0000086b: DUP9
0000086c: ADD
0000086d: MLOAD
0000086e: PUSH2 0x01c0
00000871: DUP9
00000872: DUP2
00000873: ADD
00000874: SWAP2
00000875: SWAP1
00000876: SWAP2
00000877: MSTORE
00000878: DUP9
00000879: ADD
0000087a: MLOAD
0000087b: SWAP1
0000087c: SWAP5
0000087d: POP
0000087e: SWAP2
0000087f: POP
00000880: PUSH2 0x088d
00000883: SWAP1
00000884: POP
00000885: DUP3
00000886: DUP7
00000887: ADD
00000888: DUP3
00000889: PUSH2 0x06b2
0000088c: JUMP
0000088d: JUMPDEST
0000088e: POP
0000088f: SWAP1
00000890: SWAP5
00000891: SWAP4
00000892: POP
00000893: POP
00000894: POP
00000895: POP
00000896: JUMP
00000897: JUMPDEST
00000898: SWAP1
00000899: DUP2
0000089a: MSTORE
0000089b: PUSH1 0x20
0000089d: ADD
0000089e: SWAP1
0000089f: JUMP
000008a0: INVALID
000008a1: LOG2
000008a2: PUSH5 0x6970667358
000008a8: UNKNOWN(0x22)
000008a9: SLT
000008aa: KECCAK256
000008ab: UNKNOWN(0xE4)
000008ac: LT
000008ad: UNKNOWN(0xDB)
000008ae: MCOPY
000008af: UNKNOWN(0xF6)
000008b0: CALLDATASIZE
000008b1: UNKNOWN(0x2E)
000008b2: UNKNOWN(0xCA)
000008b3: UNKNOWN(0xBC)
000008b4: UNKNOWN(0xAB)
000008b5: CODECOPY
000008b6: UNKNOWN(0xAA)
000008b7: DUP9
000008b8: PUSH27 0x10eb41e30771c06c2774ec1387dd2030b9f264736f6c6343000705
000008d4: STOP
000008d5: CALLER

Findings

validated = confirmed for call sinks; sink observed for others
Severity Category Tool Title Confidence Validated Confirmed Details
high auth detector Authorization based on tx.origin 70 no
view
validation_json
{
    "reason": "missing sink mapping",
    "status": "no_sink"
}
witness_json
{
    "notes": "heuristic witness; entrypoints are best-effort selectors with zeroed calldata",
    "constraints": [],
    "entrypoints": [
        {
            "calldata": "0x112658d3",
            "selector": "0x112658d3",
            "calldata_variants": [
                "0x112658d3",
                "0x112658d30000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x52aa0a67",
            "selector": "0x52aa0a67",
            "calldata_variants": [
                "0x52aa0a67",
                "0x52aa0a670000000000000000000000000000000000000000000000000000000000000000"
            ]
        }
    ]
}
evidence_json
{
    "guards_detected": [
        {
            "pc": 209,
            "type": "tx_origin_used"
        },
        {
            "pc": 229,
            "type": "tx_origin_used"
        },
        {
            "pc": 208,
            "type": "tx_origin_used"
        },
        {
            "pc": 228,
            "type": "tx_origin_used"
        }
    ]
}
medium other detector Untrusted CALL target/value reachable 45 no no
view
trace_id: 0xa172c3196b7b5c020cc7e844eada57b50973a335acb45e8cf3bfb487e7580819
call_targets: 0x70be4a28431e5b02d9ec8bdb332461b677dca023
target_varies: no
classification: constant_target
validation_json
{
    "sink": "CALL",
    "errors": 0,
    "status": "sink_reached",
    "attempts": 1,
    "trace_id": "0xa172c3196b7b5c020cc7e844eada57b50973a335acb45e8cf3bfb487e7580819",
    "confirmed": false,
    "trace_mode": "callTracer",
    "call_targets": [
        "0x70be4a28431e5b02d9ec8bdb332461b677dca023"
    ],
    "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": "0x112658d3",
            "selector": "0x112658d3",
            "calldata_variants": [
                "0x112658d3",
                "0x112658d30000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x52aa0a67",
            "selector": "0x52aa0a67",
            "calldata_variants": [
                "0x52aa0a67",
                "0x52aa0a670000000000000000000000000000000000000000000000000000000000000000"
            ]
        }
    ]
}
evidence_json
{
    "examples": [
        {
            "pc": 133,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        },
        {
            "pc": 913,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        },
        {
            "pc": 1216,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        }
    ],
    "call_count": 3,
    "guards_detected": [
        {
            "pc": 209,
            "type": "tx_origin_used"
        },
        {
            "pc": 229,
            "type": "tx_origin_used"
        },
        {
            "pc": 208,
            "type": "tx_origin_used"
        },
        {
            "pc": 228,
            "type": "tx_origin_used"
        }
    ],
    "untrusted_call_count": 3
}
medium other detector ETH value transfer possible 40 no no
view
trace_id: 0xa172c3196b7b5c020cc7e844eada57b50973a335acb45e8cf3bfb487e7580819
call_targets: 0x70be4a28431e5b02d9ec8bdb332461b677dca023
target_varies: no
classification: constant_target
validation_json
{
    "sink": "CALL",
    "errors": 0,
    "status": "sink_reached",
    "attempts": 1,
    "trace_id": "0xa172c3196b7b5c020cc7e844eada57b50973a335acb45e8cf3bfb487e7580819",
    "confirmed": false,
    "trace_mode": "callTracer",
    "call_targets": [
        "0x70be4a28431e5b02d9ec8bdb332461b677dca023"
    ],
    "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": "0x112658d3",
            "selector": "0x112658d3",
            "calldata_variants": [
                "0x112658d3",
                "0x112658d30000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x52aa0a67",
            "selector": "0x52aa0a67",
            "calldata_variants": [
                "0x52aa0a67",
                "0x52aa0a670000000000000000000000000000000000000000000000000000000000000000"
            ]
        }
    ]
}
evidence_json
{
    "examples": [
        {
            "pc": 133,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        },
        {
            "pc": 913,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        },
        {
            "pc": 1216,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        }
    ],
    "eth_value_calls": 3,
    "guards_detected": [
        {
            "pc": 209,
            "type": "tx_origin_used"
        },
        {
            "pc": 229,
            "type": "tx_origin_used"
        },
        {
            "pc": 208,
            "type": "tx_origin_used"
        },
        {
            "pc": 228,
            "type": "tx_origin_used"
        }
    ]
}