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

Analysis Run

019b3836-23c5-73f4-adb2-366210d871ce

complete
Chain ID
1
Address
Block Number
Created
Fri, Dec 19, 2025 8:03 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
2
Validated
2
Source
Bytecode only
Review Backing
Not yet
Best current signal
Untrusted CALL target/value 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
521 artifact.fetch complete 1 / 3 3 months ago
522 tool.cast_disasm complete 1 / 3 3 months ago
78463 analysis.bundle complete 1 / 3 1 week ago
78464 capability.graph complete 1 / 3 1 week ago
78465 detector.run complete 1 / 3 1 week ago
78466 validation.fork complete 1 / 3 1 week ago
113578 report.consolidate complete 1 / 6 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
Job Status
complete
Attempts
1 / 6
Findings
0
No findings?
View stderr
OpenAI Codex v0.118.0 (research preview)
--------
workdir: /tmp/codex-luyq6vac
model: gpt-5.4
provider: openai
approval: never
sandbox: read-only
reasoning effort: high
reasoning summaries: none
session id: 019d5c97-eb70-7d32-84f7-c251872ac481
--------
user
You are a security auditor. You ONLY have runtime bytecode + analysis artifacts.
You MUST read `BYTECODE_BUNDLE.json` before concluding; it contains the bytecode summary,
evidence bundle, callsites, storage slots, and detector findings.

Special cases when reasoning from bytecode (be explicit about uncertainty):
- Selector inference is best-effort; missing selectors are common.
- Fallback/receive paths may be the only entrypoints.
- CALL vs DELEGATECALL semantics differ; DELEGATECALL executes in caller storage.
- Proxy patterns (EIP-1967, minimal proxies, beacon) change which storage is authoritative.
- Storage slots are raw; mappings/arrays appear via keccak patterns, names are unknown.
- Guard detection is heuristic; absence of guards does NOT mean unguarded.
- Returndata checking is unknown unless explicitly shown in evidence.
- Precompiles (0x1..0x9) and common ERC20 transfer selectors may appear; do not over-claim.

Output MUST be valid JSON matching the provided schema.
- If you find nothing meaningful: set no_findings=true and findings=[].
- Otherwise: set no_findings=false and include findings with severity/category/title.
- Locations can be pc references like "pc:0x123" or selectors like "selector:0xa9059cbb".

Focus on: reentrancy, access control, upgradeability/proxy issues, signature validation,
accounting/invariant breaks, dangerous delegatecall, and untrusted external calls.
Be conservative: if evidence is weak, mark severity low/medium and explain why.
warning: Codex could not find system bubblewrap on PATH. Please install bubblewrap with your package manager. Codex will use the vendored bubblewrap in the meantime.
ERROR: You've hit your usage limit. Visit https://chatgpt.com/codex/settings/usage to purchase more credits or try again at Apr 8th, 2026 9:11 AM.
ERROR: You've hit your usage limit. Visit https://chatgpt.com/codex/settings/usage to purchase more credits or try again at Apr 8th, 2026 9:11 AM.
Metadata
{
    "codex": {
        "ran_at": "2026-04-05T07:42:35.109869+00:00",
        "returncode": 1
    },
    "project": {
        "mode": "bytecode",
        "bytecode_length": 4870,
        "bytecode_truncated": false,
        "capability_graph_present": true,
        "analysis_artifact_present": true
    },
    "summary": null,
    "no_findings": null,
    "schema_version": 1
}

Opcode Heuristics

tool.cast_disasm
Delegatecall
0
Selfdestruct
0
CREATE2
0
CALL-family (heavy)
7
EXT*/BALANCE
1
Total opcodes
1603
Flags
No heuristic flags raised.
View cast disassembly output
00000000: PUSH1 0x60
00000002: PUSH1 0x40
00000004: MSTORE
00000005: CALLDATASIZE
00000006: ISZERO
00000007: PUSH2 0x007f
0000000a: JUMPI
0000000b: PUSH1 0x00
0000000d: CALLDATALOAD
0000000e: PUSH29 0x0100000000000000000000000000000000000000000000000000000000
0000002c: SWAP1
0000002d: DIV
0000002e: DUP1
0000002f: PUSH4 0x3ccfd60b
00000034: EQ
00000035: PUSH2 0x0081
00000038: JUMPI
00000039: DUP1
0000003a: PUSH4 0x4c773795
0000003f: EQ
00000040: PUSH2 0x0090
00000043: JUMPI
00000044: DUP1
00000045: PUSH4 0x524f3889
0000004a: EQ
0000004b: PUSH2 0x00c9
0000004e: JUMPI
0000004f: DUP1
00000050: PUSH4 0x853828b6
00000055: EQ
00000056: PUSH2 0x0133
00000059: JUMPI
0000005a: DUP1
0000005b: PUSH4 0xa4c8a1c1
00000060: EQ
00000061: PUSH2 0x0142
00000064: JUMPI
00000065: DUP1
00000066: PUSH4 0xadf59f99
0000006b: EQ
0000006c: PUSH2 0x0243
0000006f: JUMPI
00000070: DUP1
00000071: PUSH4 0xf8b2cb4f
00000076: EQ
00000077: PUSH2 0x02fd
0000007a: JUMPI
0000007b: PUSH2 0x007f
0000007e: JUMP
0000007f: JUMPDEST
00000080: STOP
00000081: JUMPDEST
00000082: PUSH2 0x008e
00000085: PUSH1 0x04
00000087: DUP1
00000088: POP
00000089: POP
0000008a: PUSH2 0x039d
0000008d: JUMP
0000008e: JUMPDEST
0000008f: STOP
00000090: JUMPDEST
00000091: PUSH2 0x009d
00000094: PUSH1 0x04
00000096: DUP1
00000097: POP
00000098: POP
00000099: PUSH2 0x0329
0000009c: JUMP
0000009d: JUMPDEST
0000009e: PUSH1 0x40
000000a0: MLOAD
000000a1: DUP1
000000a2: DUP3
000000a3: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000000b8: AND
000000b9: DUP2
000000ba: MSTORE
000000bb: PUSH1 0x20
000000bd: ADD
000000be: SWAP2
000000bf: POP
000000c0: POP
000000c1: PUSH1 0x40
000000c3: MLOAD
000000c4: DUP1
000000c5: SWAP2
000000c6: SUB
000000c7: SWAP1
000000c8: RETURN
000000c9: JUMPDEST
000000ca: PUSH2 0x011d
000000cd: PUSH1 0x04
000000cf: DUP1
000000d0: DUP1
000000d1: CALLDATALOAD
000000d2: SWAP1
000000d3: PUSH1 0x20
000000d5: ADD
000000d6: SWAP1
000000d7: DUP3
000000d8: ADD
000000d9: DUP1
000000da: CALLDATALOAD
000000db: SWAP1
000000dc: PUSH1 0x20
000000de: ADD
000000df: SWAP2
000000e0: SWAP2
000000e1: SWAP1
000000e2: DUP1
000000e3: DUP1
000000e4: PUSH1 0x1f
000000e6: ADD
000000e7: PUSH1 0x20
000000e9: DUP1
000000ea: SWAP2
000000eb: DIV
000000ec: MUL
000000ed: PUSH1 0x20
000000ef: ADD
000000f0: PUSH1 0x40
000000f2: MLOAD
000000f3: SWAP1
000000f4: DUP2
000000f5: ADD
000000f6: PUSH1 0x40
000000f8: MSTORE
000000f9: DUP1
000000fa: SWAP4
000000fb: SWAP3
000000fc: SWAP2
000000fd: SWAP1
000000fe: DUP2
000000ff: DUP2
00000100: MSTORE
00000101: PUSH1 0x20
00000103: ADD
00000104: DUP4
00000105: DUP4
00000106: DUP1
00000107: DUP3
00000108: DUP5
00000109: CALLDATACOPY
0000010a: DUP3
0000010b: ADD
0000010c: SWAP2
0000010d: POP
0000010e: POP
0000010f: POP
00000110: POP
00000111: POP
00000112: POP
00000113: SWAP1
00000114: SWAP1
00000115: SWAP2
00000116: SWAP1
00000117: POP
00000118: POP
00000119: PUSH2 0x034f
0000011c: JUMP
0000011d: JUMPDEST
0000011e: PUSH1 0x40
00000120: MLOAD
00000121: DUP1
00000122: DUP3
00000123: DUP2
00000124: MSTORE
00000125: PUSH1 0x20
00000127: ADD
00000128: SWAP2
00000129: POP
0000012a: POP
0000012b: PUSH1 0x40
0000012d: MLOAD
0000012e: DUP1
0000012f: SWAP2
00000130: SUB
00000131: SWAP1
00000132: RETURN
00000133: JUMPDEST
00000134: PUSH2 0x0140
00000137: PUSH1 0x04
00000139: DUP1
0000013a: POP
0000013b: POP
0000013c: PUSH2 0x0437
0000013f: JUMP
00000140: JUMPDEST
00000141: STOP
00000142: JUMPDEST
00000143: PUSH2 0x022d
00000146: PUSH1 0x04
00000148: DUP1
00000149: DUP1
0000014a: CALLDATALOAD
0000014b: SWAP1
0000014c: PUSH1 0x20
0000014e: ADD
0000014f: SWAP1
00000150: SWAP2
00000151: SWAP1
00000152: DUP1
00000153: CALLDATALOAD
00000154: SWAP1
00000155: PUSH1 0x20
00000157: ADD
00000158: SWAP1
00000159: DUP3
0000015a: ADD
0000015b: DUP1
0000015c: CALLDATALOAD
0000015d: SWAP1
0000015e: PUSH1 0x20
00000160: ADD
00000161: SWAP2
00000162: SWAP2
00000163: SWAP1
00000164: DUP1
00000165: DUP1
00000166: PUSH1 0x1f
00000168: ADD
00000169: PUSH1 0x20
0000016b: DUP1
0000016c: SWAP2
0000016d: DIV
0000016e: MUL
0000016f: PUSH1 0x20
00000171: ADD
00000172: PUSH1 0x40
00000174: MLOAD
00000175: SWAP1
00000176: DUP2
00000177: ADD
00000178: PUSH1 0x40
0000017a: MSTORE
0000017b: DUP1
0000017c: SWAP4
0000017d: SWAP3
0000017e: SWAP2
0000017f: SWAP1
00000180: DUP2
00000181: DUP2
00000182: MSTORE
00000183: PUSH1 0x20
00000185: ADD
00000186: DUP4
00000187: DUP4
00000188: DUP1
00000189: DUP3
0000018a: DUP5
0000018b: CALLDATACOPY
0000018c: DUP3
0000018d: ADD
0000018e: SWAP2
0000018f: POP
00000190: POP
00000191: POP
00000192: POP
00000193: POP
00000194: POP
00000195: SWAP1
00000196: SWAP1
00000197: SWAP2
00000198: SWAP1
00000199: DUP1
0000019a: CALLDATALOAD
0000019b: SWAP1
0000019c: PUSH1 0x20
0000019e: ADD
0000019f: SWAP1
000001a0: DUP3
000001a1: ADD
000001a2: DUP1
000001a3: CALLDATALOAD
000001a4: SWAP1
000001a5: PUSH1 0x20
000001a7: ADD
000001a8: SWAP2
000001a9: SWAP2
000001aa: SWAP1
000001ab: DUP1
000001ac: DUP1
000001ad: PUSH1 0x1f
000001af: ADD
000001b0: PUSH1 0x20
000001b2: DUP1
000001b3: SWAP2
000001b4: DIV
000001b5: MUL
000001b6: PUSH1 0x20
000001b8: ADD
000001b9: PUSH1 0x40
000001bb: MLOAD
000001bc: SWAP1
000001bd: DUP2
000001be: ADD
000001bf: PUSH1 0x40
000001c1: MSTORE
000001c2: DUP1
000001c3: SWAP4
000001c4: SWAP3
000001c5: SWAP2
000001c6: SWAP1
000001c7: DUP2
000001c8: DUP2
000001c9: MSTORE
000001ca: PUSH1 0x20
000001cc: ADD
000001cd: DUP4
000001ce: DUP4
000001cf: DUP1
000001d0: DUP3
000001d1: DUP5
000001d2: CALLDATACOPY
000001d3: DUP3
000001d4: ADD
000001d5: SWAP2
000001d6: POP
000001d7: POP
000001d8: POP
000001d9: POP
000001da: POP
000001db: POP
000001dc: SWAP1
000001dd: SWAP1
000001de: SWAP2
000001df: SWAP1
000001e0: DUP1
000001e1: CALLDATALOAD
000001e2: SWAP1
000001e3: PUSH1 0x20
000001e5: ADD
000001e6: SWAP1
000001e7: DUP3
000001e8: ADD
000001e9: DUP1
000001ea: CALLDATALOAD
000001eb: SWAP1
000001ec: PUSH1 0x20
000001ee: ADD
000001ef: SWAP2
000001f0: SWAP2
000001f1: SWAP1
000001f2: DUP1
000001f3: DUP1
000001f4: PUSH1 0x1f
000001f6: ADD
000001f7: PUSH1 0x20
000001f9: DUP1
000001fa: SWAP2
000001fb: DIV
000001fc: MUL
000001fd: PUSH1 0x20
000001ff: ADD
00000200: PUSH1 0x40
00000202: MLOAD
00000203: SWAP1
00000204: DUP2
00000205: ADD
00000206: PUSH1 0x40
00000208: MSTORE
00000209: DUP1
0000020a: SWAP4
0000020b: SWAP3
0000020c: SWAP2
0000020d: SWAP1
0000020e: DUP2
0000020f: DUP2
00000210: MSTORE
00000211: PUSH1 0x20
00000213: ADD
00000214: DUP4
00000215: DUP4
00000216: DUP1
00000217: DUP3
00000218: DUP5
00000219: CALLDATACOPY
0000021a: DUP3
0000021b: ADD
0000021c: SWAP2
0000021d: POP
0000021e: POP
0000021f: POP
00000220: POP
00000221: POP
00000222: POP
00000223: SWAP1
00000224: SWAP1
00000225: SWAP2
00000226: SWAP1
00000227: POP
00000228: POP
00000229: PUSH2 0x070f
0000022c: JUMP
0000022d: JUMPDEST
0000022e: PUSH1 0x40
00000230: MLOAD
00000231: DUP1
00000232: DUP3
00000233: DUP2
00000234: MSTORE
00000235: PUSH1 0x20
00000237: ADD
00000238: SWAP2
00000239: POP
0000023a: POP
0000023b: PUSH1 0x40
0000023d: MLOAD
0000023e: DUP1
0000023f: SWAP2
00000240: SUB
00000241: SWAP1
00000242: RETURN
00000243: JUMPDEST
00000244: PUSH2 0x02e7
00000247: PUSH1 0x04
00000249: DUP1
0000024a: DUP1
0000024b: CALLDATALOAD
0000024c: SWAP1
0000024d: PUSH1 0x20
0000024f: ADD
00000250: SWAP1
00000251: SWAP2
00000252: SWAP1
00000253: DUP1
00000254: CALLDATALOAD
00000255: SWAP1
00000256: PUSH1 0x20
00000258: ADD
00000259: SWAP1
0000025a: DUP3
0000025b: ADD
0000025c: DUP1
0000025d: CALLDATALOAD
0000025e: SWAP1
0000025f: PUSH1 0x20
00000261: ADD
00000262: SWAP2
00000263: SWAP2
00000264: SWAP1
00000265: DUP1
00000266: DUP1
00000267: PUSH1 0x1f
00000269: ADD
0000026a: PUSH1 0x20
0000026c: DUP1
0000026d: SWAP2
0000026e: DIV
0000026f: MUL
00000270: PUSH1 0x20
00000272: ADD
00000273: PUSH1 0x40
00000275: MLOAD
00000276: SWAP1
00000277: DUP2
00000278: ADD
00000279: PUSH1 0x40
0000027b: MSTORE
0000027c: DUP1
0000027d: SWAP4
0000027e: SWAP3
0000027f: SWAP2
00000280: SWAP1
00000281: DUP2
00000282: DUP2
00000283: MSTORE
00000284: PUSH1 0x20
00000286: ADD
00000287: DUP4
00000288: DUP4
00000289: DUP1
0000028a: DUP3
0000028b: DUP5
0000028c: CALLDATACOPY
0000028d: DUP3
0000028e: ADD
0000028f: SWAP2
00000290: POP
00000291: POP
00000292: POP
00000293: POP
00000294: POP
00000295: POP
00000296: SWAP1
00000297: SWAP1
00000298: SWAP2
00000299: SWAP1
0000029a: DUP1
0000029b: CALLDATALOAD
0000029c: SWAP1
0000029d: PUSH1 0x20
0000029f: ADD
000002a0: SWAP1
000002a1: DUP3
000002a2: ADD
000002a3: DUP1
000002a4: CALLDATALOAD
000002a5: SWAP1
000002a6: PUSH1 0x20
000002a8: ADD
000002a9: SWAP2
000002aa: SWAP2
000002ab: SWAP1
000002ac: DUP1
000002ad: DUP1
000002ae: PUSH1 0x1f
000002b0: ADD
000002b1: PUSH1 0x20
000002b3: DUP1
000002b4: SWAP2
000002b5: DIV
000002b6: MUL
000002b7: PUSH1 0x20
000002b9: ADD
000002ba: PUSH1 0x40
000002bc: MLOAD
000002bd: SWAP1
000002be: DUP2
000002bf: ADD
000002c0: PUSH1 0x40
000002c2: MSTORE
000002c3: DUP1
000002c4: SWAP4
000002c5: SWAP3
000002c6: SWAP2
000002c7: SWAP1
000002c8: DUP2
000002c9: DUP2
000002ca: MSTORE
000002cb: PUSH1 0x20
000002cd: ADD
000002ce: DUP4
000002cf: DUP4
000002d0: DUP1
000002d1: DUP3
000002d2: DUP5
000002d3: CALLDATACOPY
000002d4: DUP3
000002d5: ADD
000002d6: SWAP2
000002d7: POP
000002d8: POP
000002d9: POP
000002da: POP
000002db: POP
000002dc: POP
000002dd: SWAP1
000002de: SWAP1
000002df: SWAP2
000002e0: SWAP1
000002e1: POP
000002e2: POP
000002e3: PUSH2 0x04fd
000002e6: JUMP
000002e7: JUMPDEST
000002e8: PUSH1 0x40
000002ea: MLOAD
000002eb: DUP1
000002ec: DUP3
000002ed: DUP2
000002ee: MSTORE
000002ef: PUSH1 0x20
000002f1: ADD
000002f2: SWAP2
000002f3: POP
000002f4: POP
000002f5: PUSH1 0x40
000002f7: MLOAD
000002f8: DUP1
000002f9: SWAP2
000002fa: SUB
000002fb: SWAP1
000002fc: RETURN
000002fd: JUMPDEST
000002fe: PUSH2 0x0313
00000301: PUSH1 0x04
00000303: DUP1
00000304: DUP1
00000305: CALLDATALOAD
00000306: SWAP1
00000307: PUSH1 0x20
00000309: ADD
0000030a: SWAP1
0000030b: SWAP2
0000030c: SWAP1
0000030d: POP
0000030e: POP
0000030f: PUSH2 0x035f
00000312: JUMP
00000313: JUMPDEST
00000314: PUSH1 0x40
00000316: MLOAD
00000317: DUP1
00000318: DUP3
00000319: DUP2
0000031a: MSTORE
0000031b: PUSH1 0x20
0000031d: ADD
0000031e: SWAP2
0000031f: POP
00000320: POP
00000321: PUSH1 0x40
00000323: MLOAD
00000324: DUP1
00000325: SWAP2
00000326: SUB
00000327: SWAP1
00000328: RETURN
00000329: JUMPDEST
0000032a: PUSH1 0x01
0000032c: PUSH1 0x00
0000032e: SWAP1
0000032f: SLOAD
00000330: SWAP1
00000331: PUSH2 0x0100
00000334: EXP
00000335: SWAP1
00000336: DIV
00000337: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
0000034c: AND
0000034d: DUP2
0000034e: JUMP
0000034f: JUMPDEST
00000350: PUSH1 0x00
00000352: PUSH1 0x0a
00000354: SWAP1
00000355: POP
00000356: PUSH2 0x035a
00000359: JUMP
0000035a: JUMPDEST
0000035b: SWAP2
0000035c: SWAP1
0000035d: POP
0000035e: JUMP
0000035f: JUMPDEST
00000360: PUSH1 0x00
00000362: PUSH1 0x02
00000364: PUSH1 0x00
00000366: POP
00000367: PUSH1 0x00
00000369: DUP4
0000036a: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
0000037f: AND
00000380: DUP2
00000381: MSTORE
00000382: PUSH1 0x20
00000384: ADD
00000385: SWAP1
00000386: DUP2
00000387: MSTORE
00000388: PUSH1 0x20
0000038a: ADD
0000038b: PUSH1 0x00
0000038d: KECCAK256
0000038e: PUSH1 0x00
00000390: POP
00000391: SLOAD
00000392: SWAP1
00000393: POP
00000394: PUSH2 0x0398
00000397: JUMP
00000398: JUMPDEST
00000399: SWAP2
0000039a: SWAP1
0000039b: POP
0000039c: JUMP
0000039d: JUMPDEST
0000039e: CALLER
0000039f: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000003b4: AND
000003b5: PUSH1 0x00
000003b7: PUSH1 0x02
000003b9: PUSH1 0x00
000003bb: POP
000003bc: PUSH1 0x00
000003be: CALLER
000003bf: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000003d4: AND
000003d5: DUP2
000003d6: MSTORE
000003d7: PUSH1 0x20
000003d9: ADD
000003da: SWAP1
000003db: DUP2
000003dc: MSTORE
000003dd: PUSH1 0x20
000003df: ADD
000003e0: PUSH1 0x00
000003e2: KECCAK256
000003e3: PUSH1 0x00
000003e5: POP
000003e6: SLOAD
000003e7: PUSH1 0x40
000003e9: MLOAD
000003ea: DUP1
000003eb: SWAP1
000003ec: POP
000003ed: PUSH1 0x00
000003ef: PUSH1 0x40
000003f1: MLOAD
000003f2: DUP1
000003f3: DUP4
000003f4: SUB
000003f5: DUP2
000003f6: DUP6
000003f7: DUP9
000003f8: DUP9
000003f9: CALL
000003fa: SWAP4
000003fb: POP
000003fc: POP
000003fd: POP
000003fe: POP
000003ff: POP
00000400: PUSH1 0x00
00000402: PUSH1 0x02
00000404: PUSH1 0x00
00000406: POP
00000407: PUSH1 0x00
00000409: CALLER
0000040a: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
0000041f: AND
00000420: DUP2
00000421: MSTORE
00000422: PUSH1 0x20
00000424: ADD
00000425: SWAP1
00000426: DUP2
00000427: MSTORE
00000428: PUSH1 0x20
0000042a: ADD
0000042b: PUSH1 0x00
0000042d: KECCAK256
0000042e: PUSH1 0x00
00000430: POP
00000431: DUP2
00000432: SWAP1
00000433: SSTORE
00000434: POP
00000435: JUMPDEST
00000436: JUMP
00000437: JUMPDEST
00000438: PUSH1 0x03
0000043a: PUSH1 0x00
0000043c: SWAP1
0000043d: SLOAD
0000043e: SWAP1
0000043f: PUSH2 0x0100
00000442: EXP
00000443: SWAP1
00000444: DIV
00000445: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
0000045a: AND
0000045b: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000470: AND
00000471: CALLER
00000472: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000487: AND
00000488: EQ
00000489: ISZERO
0000048a: PUSH2 0x04fa
0000048d: JUMPI
0000048e: PUSH1 0x03
00000490: PUSH1 0x00
00000492: SWAP1
00000493: SLOAD
00000494: SWAP1
00000495: PUSH2 0x0100
00000498: EXP
00000499: SWAP1
0000049a: DIV
0000049b: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000004b0: AND
000004b1: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000004c6: AND
000004c7: PUSH1 0x00
000004c9: ADDRESS
000004ca: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000004df: AND
000004e0: BALANCE
000004e1: PUSH1 0x40
000004e3: MLOAD
000004e4: DUP1
000004e5: SWAP1
000004e6: POP
000004e7: PUSH1 0x00
000004e9: PUSH1 0x40
000004eb: MLOAD
000004ec: DUP1
000004ed: DUP4
000004ee: SUB
000004ef: DUP2
000004f0: DUP6
000004f1: DUP9
000004f2: DUP9
000004f3: CALL
000004f4: SWAP4
000004f5: POP
000004f6: POP
000004f7: POP
000004f8: POP
000004f9: POP
000004fa: JUMPDEST
000004fb: JUMPDEST
000004fc: JUMP
000004fd: JUMPDEST
000004fe: PUSH1 0x00
00000500: DUP3
00000501: PUSH1 0x00
00000503: PUSH2 0x050b
00000506: DUP3
00000507: PUSH2 0x034f
0000050a: JUMP
0000050b: JUMPDEST
0000050c: SWAP1
0000050d: POP
0000050e: PUSH1 0x00
00000510: CALLVALUE
00000511: GT
00000512: ISZERO
00000513: PUSH2 0x0553
00000516: JUMPI
00000517: CALLVALUE
00000518: PUSH1 0x02
0000051a: PUSH1 0x00
0000051c: POP
0000051d: PUSH1 0x00
0000051f: CALLER
00000520: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000535: AND
00000536: DUP2
00000537: MSTORE
00000538: PUSH1 0x20
0000053a: ADD
0000053b: SWAP1
0000053c: DUP2
0000053d: MSTORE
0000053e: PUSH1 0x20
00000540: ADD
00000541: PUSH1 0x00
00000543: KECCAK256
00000544: PUSH1 0x00
00000546: DUP3
00000547: DUP3
00000548: DUP3
00000549: POP
0000054a: SLOAD
0000054b: ADD
0000054c: SWAP3
0000054d: POP
0000054e: POP
0000054f: DUP2
00000550: SWAP1
00000551: SSTORE
00000552: POP
00000553: JUMPDEST
00000554: DUP1
00000555: PUSH1 0x02
00000557: PUSH1 0x00
00000559: POP
0000055a: PUSH1 0x00
0000055c: CALLER
0000055d: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000572: AND
00000573: DUP2
00000574: MSTORE
00000575: PUSH1 0x20
00000577: ADD
00000578: SWAP1
00000579: DUP2
0000057a: MSTORE
0000057b: PUSH1 0x20
0000057d: ADD
0000057e: PUSH1 0x00
00000580: KECCAK256
00000581: PUSH1 0x00
00000583: POP
00000584: SLOAD
00000585: LT
00000586: ISZERO
00000587: ISZERO
00000588: PUSH2 0x0705
0000058b: JUMPI
0000058c: DUP1
0000058d: PUSH1 0x02
0000058f: PUSH1 0x00
00000591: POP
00000592: PUSH1 0x00
00000594: CALLER
00000595: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000005aa: AND
000005ab: DUP2
000005ac: MSTORE
000005ad: PUSH1 0x20
000005af: ADD
000005b0: SWAP1
000005b1: DUP2
000005b2: MSTORE
000005b3: PUSH1 0x20
000005b5: ADD
000005b6: PUSH1 0x00
000005b8: KECCAK256
000005b9: PUSH1 0x00
000005bb: DUP3
000005bc: DUP3
000005bd: DUP3
000005be: POP
000005bf: SLOAD
000005c0: SUB
000005c1: SWAP3
000005c2: POP
000005c3: POP
000005c4: DUP2
000005c5: SWAP1
000005c6: SSTORE
000005c7: POP
000005c8: PUSH1 0x00
000005ca: PUSH1 0x00
000005cc: POP
000005cd: SLOAD
000005ce: TIMESTAMP
000005cf: ADD
000005d0: PUSH1 0x40
000005d2: MLOAD
000005d3: DUP1
000005d4: DUP3
000005d5: DUP2
000005d6: MSTORE
000005d7: PUSH1 0x20
000005d9: ADD
000005da: SWAP2
000005db: POP
000005dc: POP
000005dd: PUSH1 0x40
000005df: MLOAD
000005e0: DUP1
000005e1: SWAP2
000005e2: SUB
000005e3: SWAP1
000005e4: KECCAK256
000005e5: SWAP3
000005e6: POP
000005e7: DUP3
000005e8: POP
000005e9: PUSH1 0x00
000005eb: PUSH1 0x00
000005ed: DUP2
000005ee: DUP2
000005ef: POP
000005f0: SLOAD
000005f1: DUP1
000005f2: SWAP3
000005f3: SWAP2
000005f4: SWAP1
000005f5: PUSH1 0x01
000005f7: ADD
000005f8: SWAP2
000005f9: SWAP1
000005fa: POP
000005fb: SSTORE
000005fc: POP
000005fd: PUSH32 0x10e5a0630317080a2108e57e2358f5878434478003c4b2b80055896d299ce9d8
0000061e: DUP4
0000061f: DUP8
00000620: DUP8
00000621: DUP8
00000622: PUSH1 0x40
00000624: MLOAD
00000625: DUP1
00000626: DUP6
00000627: DUP2
00000628: MSTORE
00000629: PUSH1 0x20
0000062b: ADD
0000062c: DUP5
0000062d: DUP2
0000062e: MSTORE
0000062f: PUSH1 0x20
00000631: ADD
00000632: DUP1
00000633: PUSH1 0x20
00000635: ADD
00000636: DUP1
00000637: PUSH1 0x20
00000639: ADD
0000063a: DUP4
0000063b: DUP2
0000063c: SUB
0000063d: DUP4
0000063e: MSTORE
0000063f: DUP6
00000640: DUP2
00000641: DUP2
00000642: MLOAD
00000643: DUP2
00000644: MSTORE
00000645: PUSH1 0x20
00000647: ADD
00000648: SWAP2
00000649: POP
0000064a: DUP1
0000064b: MLOAD
0000064c: SWAP1
0000064d: PUSH1 0x20
0000064f: ADD
00000650: SWAP1
00000651: DUP1
00000652: DUP4
00000653: DUP4
00000654: DUP3
00000655: SWAP1
00000656: PUSH1 0x00
00000658: PUSH1 0x04
0000065a: PUSH1 0x20
0000065c: DUP5
0000065d: PUSH1 0x1f
0000065f: ADD
00000660: DIV
00000661: PUSH1 0x03
00000663: MUL
00000664: PUSH1 0x0f
00000666: ADD
00000667: CALL
00000668: POP
00000669: SWAP1
0000066a: POP
0000066b: SWAP1
0000066c: DUP2
0000066d: ADD
0000066e: SWAP1
0000066f: PUSH1 0x1f
00000671: AND
00000672: DUP1
00000673: ISZERO
00000674: PUSH2 0x0691
00000677: JUMPI
00000678: DUP1
00000679: DUP3
0000067a: SUB
0000067b: DUP1
0000067c: MLOAD
0000067d: PUSH1 0x01
0000067f: DUP4
00000680: PUSH1 0x20
00000682: SUB
00000683: PUSH2 0x0100
00000686: EXP
00000687: SUB
00000688: NOT
00000689: AND
0000068a: DUP2
0000068b: MSTORE
0000068c: PUSH1 0x20
0000068e: ADD
0000068f: SWAP2
00000690: POP
00000691: JUMPDEST
00000692: POP
00000693: DUP4
00000694: DUP2
00000695: SUB
00000696: DUP3
00000697: MSTORE
00000698: DUP5
00000699: DUP2
0000069a: DUP2
0000069b: MLOAD
0000069c: DUP2
0000069d: MSTORE
0000069e: PUSH1 0x20
000006a0: ADD
000006a1: SWAP2
000006a2: POP
000006a3: DUP1
000006a4: MLOAD
000006a5: SWAP1
000006a6: PUSH1 0x20
000006a8: ADD
000006a9: SWAP1
000006aa: DUP1
000006ab: DUP4
000006ac: DUP4
000006ad: DUP3
000006ae: SWAP1
000006af: PUSH1 0x00
000006b1: PUSH1 0x04
000006b3: PUSH1 0x20
000006b5: DUP5
000006b6: PUSH1 0x1f
000006b8: ADD
000006b9: DIV
000006ba: PUSH1 0x03
000006bc: MUL
000006bd: PUSH1 0x0f
000006bf: ADD
000006c0: CALL
000006c1: POP
000006c2: SWAP1
000006c3: POP
000006c4: SWAP1
000006c5: DUP2
000006c6: ADD
000006c7: SWAP1
000006c8: PUSH1 0x1f
000006ca: AND
000006cb: DUP1
000006cc: ISZERO
000006cd: PUSH2 0x06ea
000006d0: JUMPI
000006d1: DUP1
000006d2: DUP3
000006d3: SUB
000006d4: DUP1
000006d5: MLOAD
000006d6: PUSH1 0x01
000006d8: DUP4
000006d9: PUSH1 0x20
000006db: SUB
000006dc: PUSH2 0x0100
000006df: EXP
000006e0: SUB
000006e1: NOT
000006e2: AND
000006e3: DUP2
000006e4: MSTORE
000006e5: PUSH1 0x20
000006e7: ADD
000006e8: SWAP2
000006e9: POP
000006ea: JUMPDEST
000006eb: POP
000006ec: SWAP7
000006ed: POP
000006ee: POP
000006ef: POP
000006f0: POP
000006f1: POP
000006f2: POP
000006f3: POP
000006f4: PUSH1 0x40
000006f6: MLOAD
000006f7: DUP1
000006f8: SWAP2
000006f9: SUB
000006fa: SWAP1
000006fb: LOG1
000006fc: DUP3
000006fd: SWAP3
000006fe: POP
000006ff: POP
00000700: POP
00000701: PUSH2 0x0708
00000704: JUMP
00000705: JUMPDEST
00000706: POP
00000707: POP
00000708: JUMPDEST
00000709: SWAP4
0000070a: SWAP3
0000070b: POP
0000070c: POP
0000070d: POP
0000070e: JUMP
0000070f: JUMPDEST
00000710: PUSH1 0x00
00000712: DUP4
00000713: PUSH1 0x00
00000715: PUSH2 0x071d
00000718: DUP3
00000719: PUSH2 0x034f
0000071c: JUMP
0000071d: JUMPDEST
0000071e: SWAP1
0000071f: POP
00000720: PUSH1 0x00
00000722: CALLVALUE
00000723: GT
00000724: ISZERO
00000725: PUSH2 0x0765
00000728: JUMPI
00000729: CALLVALUE
0000072a: PUSH1 0x02
0000072c: PUSH1 0x00
0000072e: POP
0000072f: PUSH1 0x00
00000731: CALLER
00000732: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000747: AND
00000748: DUP2
00000749: MSTORE
0000074a: PUSH1 0x20
0000074c: ADD
0000074d: SWAP1
0000074e: DUP2
0000074f: MSTORE
00000750: PUSH1 0x20
00000752: ADD
00000753: PUSH1 0x00
00000755: KECCAK256
00000756: PUSH1 0x00
00000758: DUP3
00000759: DUP3
0000075a: DUP3
0000075b: POP
0000075c: SLOAD
0000075d: ADD
0000075e: SWAP3
0000075f: POP
00000760: POP
00000761: DUP2
00000762: SWAP1
00000763: SSTORE
00000764: POP
00000765: JUMPDEST
00000766: DUP1
00000767: PUSH1 0x02
00000769: PUSH1 0x00
0000076b: POP
0000076c: PUSH1 0x00
0000076e: CALLER
0000076f: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000784: AND
00000785: DUP2
00000786: MSTORE
00000787: PUSH1 0x20
00000789: ADD
0000078a: SWAP1
0000078b: DUP2
0000078c: MSTORE
0000078d: PUSH1 0x20
0000078f: ADD
00000790: PUSH1 0x00
00000792: KECCAK256
00000793: PUSH1 0x00
00000795: POP
00000796: SLOAD
00000797: LT
00000798: ISZERO
00000799: ISZERO
0000079a: PUSH2 0x0977
0000079d: JUMPI
0000079e: DUP1
0000079f: PUSH1 0x02
000007a1: PUSH1 0x00
000007a3: POP
000007a4: PUSH1 0x00
000007a6: CALLER
000007a7: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000007bc: AND
000007bd: DUP2
000007be: MSTORE
000007bf: PUSH1 0x20
000007c1: ADD
000007c2: SWAP1
000007c3: DUP2
000007c4: MSTORE
000007c5: PUSH1 0x20
000007c7: ADD
000007c8: PUSH1 0x00
000007ca: KECCAK256
000007cb: PUSH1 0x00
000007cd: DUP3
000007ce: DUP3
000007cf: DUP3
000007d0: POP
000007d1: SLOAD
000007d2: SUB
000007d3: SWAP3
000007d4: POP
000007d5: POP
000007d6: DUP2
000007d7: SWAP1
000007d8: SSTORE
000007d9: POP
000007da: PUSH1 0x00
000007dc: PUSH1 0x00
000007de: POP
000007df: SLOAD
000007e0: TIMESTAMP
000007e1: ADD
000007e2: PUSH1 0x40
000007e4: MLOAD
000007e5: DUP1
000007e6: DUP3
000007e7: DUP2
000007e8: MSTORE
000007e9: PUSH1 0x20
000007eb: ADD
000007ec: SWAP2
000007ed: POP
000007ee: POP
000007ef: PUSH1 0x40
000007f1: MLOAD
000007f2: DUP1
000007f3: SWAP2
000007f4: SUB
000007f5: SWAP1
000007f6: KECCAK256
000007f7: SWAP3
000007f8: POP
000007f9: DUP3
000007fa: POP
000007fb: PUSH1 0x00
000007fd: PUSH1 0x00
000007ff: DUP2
00000800: DUP2
00000801: POP
00000802: SLOAD
00000803: DUP1
00000804: SWAP3
00000805: SWAP2
00000806: SWAP1
00000807: PUSH1 0x01
00000809: ADD
0000080a: SWAP2
0000080b: SWAP1
0000080c: POP
0000080d: SSTORE
0000080e: POP
0000080f: PUSH32 0x97b98c12b3b1eb3cfb7e686c5bc6b4bd78827780c4c92685f8095a321dff7f75
00000830: DUP4
00000831: DUP9
00000832: DUP9
00000833: DUP9
00000834: DUP9
00000835: PUSH1 0x40
00000837: MLOAD
00000838: DUP1
00000839: DUP7
0000083a: DUP2
0000083b: MSTORE
0000083c: PUSH1 0x20
0000083e: ADD
0000083f: DUP6
00000840: DUP2
00000841: MSTORE
00000842: PUSH1 0x20
00000844: ADD
00000845: DUP1
00000846: PUSH1 0x20
00000848: ADD
00000849: DUP1
0000084a: PUSH1 0x20
0000084c: ADD
0000084d: DUP1
0000084e: PUSH1 0x20
00000850: ADD
00000851: DUP5
00000852: DUP2
00000853: SUB
00000854: DUP5
00000855: MSTORE
00000856: DUP8
00000857: DUP2
00000858: DUP2
00000859: MLOAD
0000085a: DUP2
0000085b: MSTORE
0000085c: PUSH1 0x20
0000085e: ADD
0000085f: SWAP2
00000860: POP
00000861: DUP1
00000862: MLOAD
00000863: SWAP1
00000864: PUSH1 0x20
00000866: ADD
00000867: SWAP1
00000868: DUP1
00000869: DUP4
0000086a: DUP4
0000086b: DUP3
0000086c: SWAP1
0000086d: PUSH1 0x00
0000086f: PUSH1 0x04
00000871: PUSH1 0x20
00000873: DUP5
00000874: PUSH1 0x1f
00000876: ADD
00000877: DIV
00000878: PUSH1 0x03
0000087a: MUL
0000087b: PUSH1 0x0f
0000087d: ADD
0000087e: CALL
0000087f: POP
00000880: SWAP1
00000881: POP
00000882: SWAP1
00000883: DUP2
00000884: ADD
00000885: SWAP1
00000886: PUSH1 0x1f
00000888: AND
00000889: DUP1
0000088a: ISZERO
0000088b: PUSH2 0x08a8
0000088e: JUMPI
0000088f: DUP1
00000890: DUP3
00000891: SUB
00000892: DUP1
00000893: MLOAD
00000894: PUSH1 0x01
00000896: DUP4
00000897: PUSH1 0x20
00000899: SUB
0000089a: PUSH2 0x0100
0000089d: EXP
0000089e: SUB
0000089f: NOT
000008a0: AND
000008a1: DUP2
000008a2: MSTORE
000008a3: PUSH1 0x20
000008a5: ADD
000008a6: SWAP2
000008a7: POP
000008a8: JUMPDEST
000008a9: POP
000008aa: DUP5
000008ab: DUP2
000008ac: SUB
000008ad: DUP4
000008ae: MSTORE
000008af: DUP7
000008b0: DUP2
000008b1: DUP2
000008b2: MLOAD
000008b3: DUP2
000008b4: MSTORE
000008b5: PUSH1 0x20
000008b7: ADD
000008b8: SWAP2
000008b9: POP
000008ba: DUP1
000008bb: MLOAD
000008bc: SWAP1
000008bd: PUSH1 0x20
000008bf: ADD
000008c0: SWAP1
000008c1: DUP1
000008c2: DUP4
000008c3: DUP4
000008c4: DUP3
000008c5: SWAP1
000008c6: PUSH1 0x00
000008c8: PUSH1 0x04
000008ca: PUSH1 0x20
000008cc: DUP5
000008cd: PUSH1 0x1f
000008cf: ADD
000008d0: DIV
000008d1: PUSH1 0x03
000008d3: MUL
000008d4: PUSH1 0x0f
000008d6: ADD
000008d7: CALL
000008d8: POP
000008d9: SWAP1
000008da: POP
000008db: SWAP1
000008dc: DUP2
000008dd: ADD
000008de: SWAP1
000008df: PUSH1 0x1f
000008e1: AND
000008e2: DUP1
000008e3: ISZERO
000008e4: PUSH2 0x0901
000008e7: JUMPI
000008e8: DUP1
000008e9: DUP3
000008ea: SUB
000008eb: DUP1
000008ec: MLOAD
000008ed: PUSH1 0x01
000008ef: DUP4
000008f0: PUSH1 0x20
000008f2: SUB
000008f3: PUSH2 0x0100
000008f6: EXP
000008f7: SUB
000008f8: NOT
000008f9: AND
000008fa: DUP2
000008fb: MSTORE
000008fc: PUSH1 0x20
000008fe: ADD
000008ff: SWAP2
00000900: POP
00000901: JUMPDEST
00000902: POP
00000903: DUP5
00000904: DUP2
00000905: SUB
00000906: DUP3
00000907: MSTORE
00000908: DUP6
00000909: DUP2
0000090a: DUP2
0000090b: MLOAD
0000090c: DUP2
0000090d: MSTORE
0000090e: PUSH1 0x20
00000910: ADD
00000911: SWAP2
00000912: POP
00000913: DUP1
00000914: MLOAD
00000915: SWAP1
00000916: PUSH1 0x20
00000918: ADD
00000919: SWAP1
0000091a: DUP1
0000091b: DUP4
0000091c: DUP4
0000091d: DUP3
0000091e: SWAP1
0000091f: PUSH1 0x00
00000921: PUSH1 0x04
00000923: PUSH1 0x20
00000925: DUP5
00000926: PUSH1 0x1f
00000928: ADD
00000929: DIV
0000092a: PUSH1 0x03
0000092c: MUL
0000092d: PUSH1 0x0f
0000092f: ADD
00000930: CALL
00000931: POP
00000932: SWAP1
00000933: POP
00000934: SWAP1
00000935: DUP2
00000936: ADD
00000937: SWAP1
00000938: PUSH1 0x1f
0000093a: AND
0000093b: DUP1
0000093c: ISZERO
0000093d: PUSH2 0x095a
00000940: JUMPI
00000941: DUP1
00000942: DUP3
00000943: SUB
00000944: DUP1
00000945: MLOAD
00000946: PUSH1 0x01
00000948: DUP4
00000949: PUSH1 0x20
0000094b: SUB
0000094c: PUSH2 0x0100
0000094f: EXP
00000950: SUB
00000951: NOT
00000952: AND
00000953: DUP2
00000954: MSTORE
00000955: PUSH1 0x20
00000957: ADD
00000958: SWAP2
00000959: POP
0000095a: JUMPDEST
0000095b: POP
0000095c: SWAP9
0000095d: POP
0000095e: POP
0000095f: POP
00000960: POP
00000961: POP
00000962: POP
00000963: POP
00000964: POP
00000965: POP
00000966: PUSH1 0x40
00000968: MLOAD
00000969: DUP1
0000096a: SWAP2
0000096b: SUB
0000096c: SWAP1
0000096d: LOG1
0000096e: DUP3
0000096f: SWAP3
00000970: POP
00000971: POP
00000972: POP
00000973: PUSH2 0x097a
00000976: JUMP
00000977: JUMPDEST
00000978: POP
00000979: POP
0000097a: JUMPDEST
0000097b: SWAP5
0000097c: SWAP4
0000097d: POP
0000097e: POP
0000097f: POP
00000980: POP
00000981: JUMP
View stderr
Warning: This is a nightly build of Foundry. It is recommended to use the latest stable version. To mute this warning set `FOUNDRY_DISABLE_NIGHTLY_WARNING` in your environment.

Findings

validated = confirmed for call sinks; sink observed for others
Severity Category Tool Title Confidence Validated Confirmed Details
medium other detector Untrusted CALL target/value reachable 45 yes yes
view
trace_id: 0x5af57946c982c318c6683cdaec2bc2bcc07536518f111a556d18117ba3405bbf
call_targets: 0x0000000000000000000000000000000000000001, 0x20cfcf5c2a38c0e66a2f77e923bc196f5804850d
target_varies: yes
classification: target_varies
validation_json
{
    "sink": "CALL",
    "errors": 0,
    "status": "confirmed",
    "attempts": 1,
    "trace_id": "0x5af57946c982c318c6683cdaec2bc2bcc07536518f111a556d18117ba3405bbf",
    "confirmed": true,
    "trace_mode": "callTracer",
    "call_targets": [
        "0x0000000000000000000000000000000000000001",
        "0x20cfcf5c2a38c0e66a2f77e923bc196f5804850d"
    ],
    "matched_probe": null,
    "target_varies": true,
    "classification": "target_varies"
}
witness_json
{
    "notes": "heuristic witness; entrypoints are best-effort selectors with zeroed calldata",
    "constraints": [],
    "entrypoints": [
        {
            "calldata": "0x3ccfd60b",
            "selector": "0x3ccfd60b",
            "calldata_variants": [
                "0x3ccfd60b",
                "0x3ccfd60b0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x4c773795",
            "selector": "0x4c773795",
            "calldata_variants": [
                "0x4c773795",
                "0x4c7737950000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x524f3889",
            "selector": "0x524f3889",
            "calldata_variants": [
                "0x524f3889",
                "0x524f38890000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x853828b6",
            "selector": "0x853828b6",
            "calldata_variants": [
                "0x853828b6",
                "0x853828b60000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xa4c8a1c1",
            "selector": "0xa4c8a1c1",
            "calldata_variants": [
                "0xa4c8a1c1",
                "0xa4c8a1c10000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xadf59f99",
            "selector": "0xadf59f99",
            "calldata_variants": [
                "0xadf59f99",
                "0xadf59f990000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xf8b2cb4f",
            "selector": "0xf8b2cb4f",
            "calldata_variants": [
                "0xf8b2cb4f",
                "0xf8b2cb4f0000000000000000000000000000000000000000000000000000000000000000"
            ]
        }
    ]
}
evidence_json
{
    "examples": [
        {
            "pc": 1017,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        },
        {
            "pc": 1267,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        },
        {
            "pc": 1639,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        }
    ],
    "call_count": 7,
    "guards_detected": [
        {
            "pc": 1137,
            "type": "msg_sender_eq_const",
            "value": "0xffffffffffffffffffffffffffffffffffffffff"
        }
    ],
    "untrusted_call_count": 7
}
medium other detector ETH value transfer possible 40 yes yes
view
trace_id: 0x5af57946c982c318c6683cdaec2bc2bcc07536518f111a556d18117ba3405bbf
call_targets: 0x0000000000000000000000000000000000000001, 0x20cfcf5c2a38c0e66a2f77e923bc196f5804850d
target_varies: yes
classification: target_varies
validation_json
{
    "sink": "CALL",
    "errors": 0,
    "status": "confirmed",
    "attempts": 1,
    "trace_id": "0x5af57946c982c318c6683cdaec2bc2bcc07536518f111a556d18117ba3405bbf",
    "confirmed": true,
    "trace_mode": "callTracer",
    "call_targets": [
        "0x0000000000000000000000000000000000000001",
        "0x20cfcf5c2a38c0e66a2f77e923bc196f5804850d"
    ],
    "matched_probe": null,
    "target_varies": true,
    "classification": "target_varies"
}
witness_json
{
    "notes": "heuristic witness; entrypoints are best-effort selectors with zeroed calldata",
    "constraints": [],
    "entrypoints": [
        {
            "calldata": "0x3ccfd60b",
            "selector": "0x3ccfd60b",
            "calldata_variants": [
                "0x3ccfd60b",
                "0x3ccfd60b0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x4c773795",
            "selector": "0x4c773795",
            "calldata_variants": [
                "0x4c773795",
                "0x4c7737950000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x524f3889",
            "selector": "0x524f3889",
            "calldata_variants": [
                "0x524f3889",
                "0x524f38890000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x853828b6",
            "selector": "0x853828b6",
            "calldata_variants": [
                "0x853828b6",
                "0x853828b60000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xa4c8a1c1",
            "selector": "0xa4c8a1c1",
            "calldata_variants": [
                "0xa4c8a1c1",
                "0xa4c8a1c10000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xadf59f99",
            "selector": "0xadf59f99",
            "calldata_variants": [
                "0xadf59f99",
                "0xadf59f990000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xf8b2cb4f",
            "selector": "0xf8b2cb4f",
            "calldata_variants": [
                "0xf8b2cb4f",
                "0xf8b2cb4f0000000000000000000000000000000000000000000000000000000000000000"
            ]
        }
    ]
}
evidence_json
{
    "examples": [
        {
            "pc": 1017,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        },
        {
            "pc": 1267,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        },
        {
            "pc": 1639,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        }
    ],
    "eth_value_calls": 7,
    "guards_detected": [
        {
            "pc": 1137,
            "type": "msg_sender_eq_const",
            "value": "0xffffffffffffffffffffffffffffffffffffffff"
        }
    ]
}