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

Analysis Run

019b3836-3aef-71b9-b61c-762abcd0dd91

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
1
Validated
1
Source
Bytecode only
Review Backing
Not yet
Best current signal
CREATE/CREATE2 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
4313 artifact.fetch complete 1 / 3 3 months ago
4314 tool.cast_disasm complete 1 / 3 3 months ago
47408 analysis.bundle complete 1 / 3 1 week ago
47409 capability.graph complete 1 / 3 1 week ago
47410 detector.run complete 1 / 3 1 week ago
47411 validation.fork complete 1 / 3 1 week ago
113968 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-r_dgbf1y
model: gpt-5.4
provider: openai
approval: never
sandbox: read-only
reasoning effort: high
reasoning summaries: none
session id: 019d5cbe-aee6-7161-9813-af75de1b6c8e
--------
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-05T08:24:55.334400+00:00",
        "returncode": 1
    },
    "project": {
        "mode": "bytecode",
        "bytecode_length": 5006,
        "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
3
Total opcodes
1533
Flags
create_opcodes_present
View cast disassembly output
00000000: PUSH1 0x60
00000002: PUSH1 0x40
00000004: MSTORE
00000005: CALLDATASIZE
00000006: ISZERO
00000007: PUSH2 0x008d
0000000a: JUMPI
0000000b: PUSH1 0xe0
0000000d: PUSH1 0x02
0000000f: EXP
00000010: PUSH1 0x00
00000012: CALLDATALOAD
00000013: DIV
00000014: PUSH4 0x13af4035
00000019: DUP2
0000001a: EQ
0000001b: PUSH2 0x01b5
0000001e: JUMPI
0000001f: DUP1
00000020: PUSH4 0x4052c661
00000025: EQ
00000026: PUSH2 0x01e8
00000029: JUMPI
0000002a: DUP1
0000002b: PUSH4 0x496a698d
00000030: EQ
00000031: PUSH2 0x022e
00000034: JUMPI
00000035: DUP1
00000036: PUSH4 0x5d068051
0000003b: EQ
0000003c: PUSH2 0x0240
0000003f: JUMPI
00000040: DUP1
00000041: PUSH4 0x7a791524
00000046: EQ
00000047: PUSH2 0x026d
0000004a: JUMPI
0000004b: DUP1
0000004c: PUSH4 0x8da5cb5b
00000051: EQ
00000052: PUSH2 0x02ac
00000055: JUMPI
00000056: DUP1
00000057: PUSH4 0x9003adfe
0000005c: EQ
0000005d: PUSH2 0x02be
00000060: JUMPI
00000061: DUP1
00000062: PUSH4 0xa001ecdd
00000067: EQ
00000068: PUSH2 0x02c7
0000006b: JUMPI
0000006c: DUP1
0000006d: PUSH4 0xa07aea96
00000072: EQ
00000073: PUSH2 0x02d3
00000076: JUMPI
00000077: DUP1
00000078: PUSH4 0xe3cc838c
0000007d: EQ
0000007e: PUSH2 0x02dc
00000081: JUMPI
00000082: DUP1
00000083: PUSH4 0xf2b26d8f
00000088: EQ
00000089: PUSH2 0x02ed
0000008c: JUMPI
0000008d: JUMPDEST
0000008e: PUSH1 0x05
00000090: SLOAD
00000091: PUSH1 0x40
00000093: DUP1
00000094: MLOAD
00000095: PUSH32 0xecb70fb700000000000000000000000000000000000000000000000000000000
000000b6: DUP2
000000b7: MSTORE
000000b8: SWAP1
000000b9: MLOAD
000000ba: PUSH2 0x030f
000000bd: SWAP3
000000be: PUSH1 0x01
000000c0: PUSH1 0xa0
000000c2: PUSH1 0x02
000000c4: EXP
000000c5: SUB
000000c6: AND
000000c7: SWAP2
000000c8: PUSH4 0xecb70fb7
000000cd: SWAP2
000000ce: PUSH1 0x04
000000d0: DUP3
000000d1: DUP2
000000d2: ADD
000000d3: SWAP3
000000d4: PUSH1 0x20
000000d6: SWAP3
000000d7: SWAP2
000000d8: SWAP1
000000d9: DUP3
000000da: SWAP1
000000db: SUB
000000dc: ADD
000000dd: DUP2
000000de: PUSH1 0x00
000000e0: DUP8
000000e1: PUSH2 0x61da
000000e4: GAS
000000e5: SUB
000000e6: CALL
000000e7: ISZERO
000000e8: PUSH2 0x0002
000000eb: JUMPI
000000ec: POP
000000ed: POP
000000ee: PUSH1 0x40
000000f0: MLOAD
000000f1: MLOAD
000000f2: ISZERO
000000f3: SWAP1
000000f4: POP
000000f5: PUSH2 0x0311
000000f8: JUMPI
000000f9: PUSH1 0x05
000000fb: PUSH1 0x00
000000fd: SWAP1
000000fe: SLOAD
000000ff: SWAP1
00000100: PUSH2 0x0100
00000103: EXP
00000104: SWAP1
00000105: DIV
00000106: PUSH1 0x01
00000108: PUSH1 0xa0
0000010a: PUSH1 0x02
0000010c: EXP
0000010d: SUB
0000010e: AND
0000010f: PUSH1 0x01
00000111: PUSH1 0xa0
00000113: PUSH1 0x02
00000115: EXP
00000116: SUB
00000117: AND
00000118: PUSH4 0x63bd1d4a
0000011d: PUSH1 0x40
0000011f: MLOAD
00000120: DUP2
00000121: PUSH1 0xe0
00000123: PUSH1 0x02
00000125: EXP
00000126: MUL
00000127: DUP2
00000128: MSTORE
00000129: PUSH1 0x04
0000012b: ADD
0000012c: DUP1
0000012d: SWAP1
0000012e: POP
0000012f: PUSH1 0x00
00000131: PUSH1 0x40
00000133: MLOAD
00000134: DUP1
00000135: DUP4
00000136: SUB
00000137: DUP2
00000138: PUSH1 0x00
0000013a: DUP8
0000013b: PUSH2 0x61da
0000013e: GAS
0000013f: SUB
00000140: CALL
00000141: ISZERO
00000142: PUSH2 0x0002
00000145: JUMPI
00000146: POP
00000147: POP
00000148: PUSH1 0x01
0000014a: SLOAD
0000014b: PUSH2 0x0311
0000014e: SWAP2
0000014f: POP
00000150: CALLVALUE
00000151: ADDRESS
00000152: PUSH1 0x01
00000154: PUSH1 0xa0
00000156: PUSH1 0x02
00000158: EXP
00000159: SUB
0000015a: AND
0000015b: BALANCE
0000015c: SUB
0000015d: SUB
0000015e: PUSH1 0x02
00000160: DUP1
00000161: SLOAD
00000162: PUSH1 0xff
00000164: NOT
00000165: DUP2
00000166: AND
00000167: PUSH1 0xff
00000169: PUSH2 0x0100
0000016c: SWAP1
0000016d: SWAP3
0000016e: DIV
0000016f: SWAP2
00000170: SWAP1
00000171: SWAP2
00000172: AND
00000173: OR
00000174: SWAP1
00000175: SSTORE
00000176: PUSH1 0x04
00000178: DUP1
00000179: SLOAD
0000017a: PUSH1 0x01
0000017c: DUP2
0000017d: ADD
0000017e: DUP1
0000017f: DUP4
00000180: SSTORE
00000181: DUP3
00000182: DUP2
00000183: DUP4
00000184: DUP1
00000185: ISZERO
00000186: DUP3
00000187: SWAP1
00000188: GT
00000189: PUSH2 0x0427
0000018c: JUMPI
0000018d: DUP2
0000018e: DUP4
0000018f: PUSH1 0x00
00000191: MSTORE
00000192: PUSH1 0x20
00000194: PUSH1 0x00
00000196: KECCAK256
00000197: SWAP2
00000198: DUP3
00000199: ADD
0000019a: SWAP2
0000019b: ADD
0000019c: PUSH2 0x0427
0000019f: SWAP2
000001a0: SWAP1
000001a1: JUMPDEST
000001a2: DUP1
000001a3: DUP3
000001a4: GT
000001a5: ISZERO
000001a6: PUSH2 0x04ba
000001a9: JUMPI
000001aa: PUSH1 0x00
000001ac: DUP2
000001ad: SSTORE
000001ae: PUSH1 0x01
000001b0: ADD
000001b1: PUSH2 0x01a1
000001b4: JUMP
000001b5: JUMPDEST
000001b6: PUSH2 0x030f
000001b9: PUSH1 0x04
000001bb: CALLDATALOAD
000001bc: PUSH1 0x00
000001be: SLOAD
000001bf: PUSH1 0x01
000001c1: PUSH1 0xa0
000001c3: PUSH1 0x02
000001c5: EXP
000001c6: SUB
000001c7: SWAP1
000001c8: DUP2
000001c9: AND
000001ca: CALLER
000001cb: SWAP1
000001cc: SWAP2
000001cd: AND
000001ce: EQ
000001cf: ISZERO
000001d0: PUSH2 0x026a
000001d3: JUMPI
000001d4: PUSH1 0x00
000001d6: DUP1
000001d7: SLOAD
000001d8: PUSH1 0x01
000001da: PUSH1 0xa0
000001dc: PUSH1 0x02
000001de: EXP
000001df: SUB
000001e0: NOT
000001e1: AND
000001e2: DUP3
000001e3: OR
000001e4: SWAP1
000001e5: SSTORE
000001e6: POP
000001e7: JUMP
000001e8: JUMPDEST
000001e9: PUSH2 0x03f3
000001ec: PUSH1 0x04
000001ee: CALLDATALOAD
000001ef: PUSH1 0x04
000001f1: DUP1
000001f2: SLOAD
000001f3: DUP3
000001f4: SWAP1
000001f5: DUP2
000001f6: LT
000001f7: ISZERO
000001f8: PUSH2 0x0002
000001fb: JUMPI
000001fc: POP
000001fd: PUSH1 0x00
000001ff: MSTORE
00000200: PUSH32 0x8a35acfbc15ff81a39ae7d344fd709f28e8600b4aa8c65c6b64bfe7fe36bd19b
00000221: ADD
00000222: SLOAD
00000223: PUSH1 0x01
00000225: PUSH1 0xa0
00000227: PUSH1 0x02
00000229: EXP
0000022a: SUB
0000022b: AND
0000022c: DUP2
0000022d: JUMP
0000022e: JUMPDEST
0000022f: PUSH2 0x03f3
00000232: PUSH1 0x05
00000234: SLOAD
00000235: PUSH1 0x01
00000237: PUSH1 0xa0
00000239: PUSH1 0x02
0000023b: EXP
0000023c: SUB
0000023d: AND
0000023e: DUP2
0000023f: JUMP
00000240: JUMPDEST
00000241: PUSH2 0x030f
00000244: PUSH1 0x04
00000246: CALLDATALOAD
00000247: PUSH1 0x00
00000249: SLOAD
0000024a: PUSH1 0x01
0000024c: PUSH1 0xa0
0000024e: PUSH1 0x02
00000250: EXP
00000251: SUB
00000252: SWAP1
00000253: DUP2
00000254: AND
00000255: CALLER
00000256: SWAP1
00000257: SWAP2
00000258: AND
00000259: EQ
0000025a: ISZERO
0000025b: PUSH2 0x026a
0000025e: JUMPI
0000025f: PUSH1 0x01
00000261: SLOAD
00000262: PUSH1 0x00
00000264: EQ
00000265: ISZERO
00000266: PUSH2 0x04be
00000269: JUMPI
0000026a: JUMPDEST
0000026b: POP
0000026c: JUMP
0000026d: JUMPDEST
0000026e: PUSH2 0x030f
00000271: PUSH1 0x04
00000273: CALLDATALOAD
00000274: PUSH1 0x00
00000276: SLOAD
00000277: PUSH1 0x01
00000279: PUSH1 0xa0
0000027b: PUSH1 0x02
0000027d: EXP
0000027e: SUB
0000027f: SWAP1
00000280: DUP2
00000281: AND
00000282: CALLER
00000283: SWAP1
00000284: SWAP2
00000285: AND
00000286: EQ
00000287: ISZERO
00000288: PUSH2 0x026a
0000028b: JUMPI
0000028c: PUSH1 0x0a
0000028e: PUSH1 0xff
00000290: DUP3
00000291: AND
00000292: GT
00000293: PUSH2 0x026a
00000296: JUMPI
00000297: PUSH1 0x02
00000299: DUP1
0000029a: SLOAD
0000029b: PUSH2 0x0100
0000029e: DUP4
0000029f: MUL
000002a0: PUSH2 0xff00
000002a3: NOT
000002a4: SWAP1
000002a5: SWAP2
000002a6: AND
000002a7: OR
000002a8: SWAP1
000002a9: SSTORE
000002aa: POP
000002ab: JUMP
000002ac: JUMPDEST
000002ad: PUSH2 0x03f3
000002b0: PUSH1 0x00
000002b2: SLOAD
000002b3: PUSH1 0x01
000002b5: PUSH1 0xa0
000002b7: PUSH1 0x02
000002b9: EXP
000002ba: SUB
000002bb: AND
000002bc: DUP2
000002bd: JUMP
000002be: JUMPDEST
000002bf: PUSH2 0x02fd
000002c2: PUSH1 0x01
000002c4: SLOAD
000002c5: DUP2
000002c6: JUMP
000002c7: JUMPDEST
000002c8: PUSH2 0x0410
000002cb: PUSH1 0x02
000002cd: SLOAD
000002ce: PUSH1 0xff
000002d0: AND
000002d1: DUP2
000002d2: JUMP
000002d3: JUMPDEST
000002d4: PUSH2 0x02fd
000002d7: PUSH1 0x03
000002d9: SLOAD
000002da: DUP2
000002db: JUMP
000002dc: JUMPDEST
000002dd: PUSH2 0x0410
000002e0: PUSH1 0x02
000002e2: SLOAD
000002e3: PUSH2 0x0100
000002e6: SWAP1
000002e7: DIV
000002e8: PUSH1 0xff
000002ea: AND
000002eb: DUP2
000002ec: JUMP
000002ed: JUMPDEST
000002ee: PUSH1 0x01
000002f0: SLOAD
000002f1: ADDRESS
000002f2: PUSH1 0x01
000002f4: PUSH1 0xa0
000002f6: PUSH1 0x02
000002f8: EXP
000002f9: SUB
000002fa: AND
000002fb: BALANCE
000002fc: SUB
000002fd: JUMPDEST
000002fe: PUSH1 0x40
00000300: DUP1
00000301: MLOAD
00000302: SWAP2
00000303: DUP3
00000304: MSTORE
00000305: MLOAD
00000306: SWAP1
00000307: DUP2
00000308: SWAP1
00000309: SUB
0000030a: PUSH1 0x20
0000030c: ADD
0000030d: SWAP1
0000030e: RETURN
0000030f: JUMPDEST
00000310: STOP
00000311: JUMPDEST
00000312: PUSH1 0x05
00000314: SLOAD
00000315: PUSH1 0x40
00000317: DUP1
00000318: MLOAD
00000319: PUSH32 0xd98b9bb500000000000000000000000000000000000000000000000000000000
0000033a: DUP2
0000033b: MSTORE
0000033c: CALLER
0000033d: PUSH1 0x01
0000033f: PUSH1 0xa0
00000341: PUSH1 0x02
00000343: EXP
00000344: SUB
00000345: SWAP1
00000346: DUP2
00000347: AND
00000348: PUSH1 0x04
0000034a: DUP4
0000034b: ADD
0000034c: MSTORE
0000034d: CALLVALUE
0000034e: PUSH1 0x24
00000350: DUP4
00000351: ADD
00000352: MSTORE
00000353: SWAP2
00000354: MLOAD
00000355: SWAP3
00000356: SWAP1
00000357: SWAP2
00000358: AND
00000359: SWAP2
0000035a: PUSH4 0xd98b9bb5
0000035f: SWAP2
00000360: PUSH1 0x44
00000362: DUP2
00000363: DUP2
00000364: ADD
00000365: SWAP3
00000366: PUSH1 0x20
00000368: SWAP3
00000369: SWAP1
0000036a: SWAP2
0000036b: SWAP1
0000036c: DUP3
0000036d: SWAP1
0000036e: SUB
0000036f: ADD
00000370: DUP2
00000371: PUSH1 0x00
00000373: DUP8
00000374: PUSH2 0x61da
00000377: GAS
00000378: SUB
00000379: CALL
0000037a: ISZERO
0000037b: PUSH2 0x0002
0000037e: JUMPI
0000037f: POP
00000380: POP
00000381: PUSH1 0x40
00000383: MLOAD
00000384: MLOAD
00000385: ISZERO
00000386: SWAP1
00000387: POP
00000388: PUSH2 0x03d0
0000038b: JUMPI
0000038c: PUSH1 0x40
0000038e: MLOAD
0000038f: PUSH1 0x02
00000391: SLOAD
00000392: PUSH1 0x01
00000394: DUP1
00000395: SLOAD
00000396: PUSH1 0xff
00000398: SWAP3
00000399: SWAP1
0000039a: SWAP3
0000039b: AND
0000039c: PUSH1 0x64
0000039e: CALLVALUE
0000039f: DIV
000003a0: MUL
000003a1: SWAP1
000003a2: SWAP2
000003a3: ADD
000003a4: SWAP1
000003a5: SSTORE
000003a6: PUSH32 0x7e55dd91bd7f3069c54cd372e65e35f795c4e988a74ecd0cde4b12180fa77283
000003c7: SWAP1
000003c8: PUSH1 0x00
000003ca: SWAP1
000003cb: LOG1
000003cc: PUSH2 0x03f1
000003cf: JUMP
000003d0: JUMPDEST
000003d1: PUSH1 0x40
000003d3: MLOAD
000003d4: CALLER
000003d5: PUSH1 0x01
000003d7: PUSH1 0xa0
000003d9: PUSH1 0x02
000003db: EXP
000003dc: SUB
000003dd: AND
000003de: SWAP1
000003df: PUSH1 0x00
000003e1: SWAP1
000003e2: CALLVALUE
000003e3: SWAP1
000003e4: DUP3
000003e5: DUP2
000003e6: DUP2
000003e7: DUP2
000003e8: DUP6
000003e9: DUP9
000003ea: DUP4
000003eb: CALL
000003ec: POP
000003ed: POP
000003ee: POP
000003ef: POP
000003f0: POP
000003f1: JUMPDEST
000003f2: JUMP
000003f3: JUMPDEST
000003f4: PUSH1 0x40
000003f6: DUP1
000003f7: MLOAD
000003f8: PUSH1 0x01
000003fa: PUSH1 0xa0
000003fc: PUSH1 0x02
000003fe: EXP
000003ff: SUB
00000400: SWAP3
00000401: SWAP1
00000402: SWAP3
00000403: AND
00000404: DUP3
00000405: MSTORE
00000406: MLOAD
00000407: SWAP1
00000408: DUP2
00000409: SWAP1
0000040a: SUB
0000040b: PUSH1 0x20
0000040d: ADD
0000040e: SWAP1
0000040f: RETURN
00000410: JUMPDEST
00000411: PUSH1 0x40
00000413: DUP1
00000414: MLOAD
00000415: PUSH1 0xff
00000417: SWAP3
00000418: SWAP1
00000419: SWAP3
0000041a: AND
0000041b: DUP3
0000041c: MSTORE
0000041d: MLOAD
0000041e: SWAP1
0000041f: DUP2
00000420: SWAP1
00000421: SUB
00000422: PUSH1 0x20
00000424: ADD
00000425: SWAP1
00000426: RETURN
00000427: JUMPDEST
00000428: POP
00000429: POP
0000042a: POP
0000042b: PUSH1 0x00
0000042d: SWAP3
0000042e: DUP4
0000042f: MSTORE
00000430: PUSH1 0x05
00000432: SLOAD
00000433: PUSH1 0x20
00000435: SWAP1
00000436: SWAP4
00000437: KECCAK256
00000438: SWAP1
00000439: SWAP2
0000043a: ADD
0000043b: DUP1
0000043c: SLOAD
0000043d: PUSH1 0x01
0000043f: PUSH1 0xa0
00000441: PUSH1 0x02
00000443: EXP
00000444: SUB
00000445: NOT
00000446: AND
00000447: PUSH1 0x01
00000449: PUSH1 0xa0
0000044b: PUSH1 0x02
0000044d: EXP
0000044e: SUB
0000044f: SWAP4
00000450: SWAP1
00000451: SWAP4
00000452: AND
00000453: SWAP3
00000454: SWAP1
00000455: SWAP3
00000456: OR
00000457: SWAP1
00000458: SWAP2
00000459: SSTORE
0000045a: PUSH1 0x03
0000045c: SSTORE
0000045d: PUSH1 0x40
0000045f: MLOAD
00000460: PUSH2 0x026a
00000463: SWAP1
00000464: DUP3
00000465: SWAP1
00000466: DUP2
00000467: SWAP1
00000468: PUSH2 0x04e2
0000046b: DUP1
0000046c: PUSH2 0x04e4
0000046f: DUP4
00000470: CODECOPY
00000471: DUP2
00000472: ADD
00000473: DUP2
00000474: SWAP1
00000475: SUB
00000476: SWAP1
00000477: DUP3
00000478: CREATE
00000479: PUSH1 0x40
0000047b: MLOAD
0000047c: PUSH1 0x05
0000047e: DUP1
0000047f: SLOAD
00000480: PUSH1 0x01
00000482: PUSH1 0xa0
00000484: PUSH1 0x02
00000486: EXP
00000487: SUB
00000488: NOT
00000489: AND
0000048a: SWAP3
0000048b: SWAP1
0000048c: SWAP3
0000048d: OR
0000048e: SWAP1
0000048f: SWAP2
00000490: SSTORE
00000491: PUSH32 0x18b22f6af4fe35b5cc0aceb88e21b15c76c0bd0d302c926560ca690271323b23
000004b2: SWAP2
000004b3: POP
000004b4: PUSH1 0x00
000004b6: SWAP1
000004b7: LOG1
000004b8: POP
000004b9: JUMP
000004ba: JUMPDEST
000004bb: POP
000004bc: SWAP1
000004bd: JUMP
000004be: JUMPDEST
000004bf: PUSH1 0x01
000004c1: SLOAD
000004c2: PUSH1 0x40
000004c4: MLOAD
000004c5: PUSH1 0x01
000004c7: PUSH1 0xa0
000004c9: PUSH1 0x02
000004cb: EXP
000004cc: SUB
000004cd: DUP4
000004ce: AND
000004cf: SWAP2
000004d0: PUSH1 0x00
000004d2: SWAP2
000004d3: DUP3
000004d4: DUP2
000004d5: DUP2
000004d6: DUP2
000004d7: DUP6
000004d8: DUP9
000004d9: DUP4
000004da: CALL
000004db: POP
000004dc: POP
000004dd: POP
000004de: PUSH1 0x01
000004e0: SSTORE
000004e1: POP
000004e2: POP
000004e3: JUMP
000004e4: PUSH1 0x60
000004e6: PUSH1 0x40
000004e8: MSTORE
000004e9: PUSH1 0x00
000004eb: DUP1
000004ec: SLOAD
000004ed: PUSH1 0x01
000004ef: PUSH1 0xa0
000004f1: PUSH1 0x02
000004f3: EXP
000004f4: SUB
000004f5: NOT
000004f6: AND
000004f7: CALLER
000004f8: OR
000004f9: SWAP1
000004fa: SSTORE
000004fb: PUSH2 0x04be
000004fe: DUP1
000004ff: PUSH2 0x0024
00000502: PUSH1 0x00
00000504: CODECOPY
00000505: PUSH1 0x00
00000507: RETURN
00000508: PUSH1 0x60
0000050a: PUSH1 0x40
0000050c: MSTORE
0000050d: CALLDATASIZE
0000050e: ISZERO
0000050f: PUSH2 0x0098
00000512: JUMPI
00000513: PUSH1 0xe0
00000515: PUSH1 0x02
00000517: EXP
00000518: PUSH1 0x00
0000051a: CALLDATALOAD
0000051b: DIV
0000051c: PUSH4 0x2da0d1ea
00000521: DUP2
00000522: EQ
00000523: PUSH2 0x00a3
00000526: JUMPI
00000527: DUP1
00000528: PUSH4 0x3197cbb6
0000052d: EQ
0000052e: PUSH2 0x00ac
00000531: JUMPI
00000532: DUP1
00000533: PUSH4 0x4423c5f1
00000538: EQ
00000539: PUSH2 0x0151
0000053c: JUMPI
0000053d: DUP1
0000053e: PUSH4 0x44691f7e
00000543: EQ
00000544: PUSH2 0x01ea
00000547: JUMPI
00000548: DUP1
00000549: PUSH4 0x63bd1d4a
0000054e: EQ
0000054f: PUSH2 0x01f9
00000552: JUMPI
00000553: DUP1
00000554: PUSH4 0x78e97925
00000559: EQ
0000055a: PUSH2 0x021b
0000055d: JUMPI
0000055e: DUP1
0000055f: PUSH4 0x8da5cb5b
00000564: EQ
00000565: PUSH2 0x025a
00000568: JUMPI
00000569: DUP1
0000056a: PUSH4 0xb40a5627
0000056f: EQ
00000570: PUSH2 0x026c
00000573: JUMPI
00000574: DUP1
00000575: PUSH4 0xd98b9bb5
0000057a: EQ
0000057b: PUSH2 0x0275
0000057e: JUMPI
0000057f: DUP1
00000580: PUSH4 0xe6d9bb0f
00000585: EQ
00000586: PUSH2 0x02ab
00000589: JUMPI
0000058a: DUP1
0000058b: PUSH4 0xecb70fb7
00000590: EQ
00000591: PUSH2 0x02b8
00000594: JUMPI
00000595: DUP1
00000596: PUSH4 0xfe777bcd
0000059b: EQ
0000059c: PUSH2 0x02c6
0000059f: JUMPI
000005a0: JUMPDEST
000005a1: PUSH2 0x02da
000005a4: PUSH2 0x02dc
000005a7: PUSH2 0x02bc
000005aa: JUMP
000005ab: JUMPDEST
000005ac: PUSH2 0x0304
000005af: PUSH1 0x01
000005b1: SLOAD
000005b2: DUP2
000005b3: JUMP
000005b4: JUMPDEST
000005b5: PUSH2 0x0304
000005b8: JUMPDEST
000005b9: PUSH1 0x00
000005bb: PUSH3 0x015180
000005bf: PUSH2 0x035c
000005c2: JUMPDEST
000005c3: PUSH1 0x40
000005c5: DUP1
000005c6: MLOAD
000005c7: PUSH1 0x60
000005c9: DUP2
000005ca: ADD
000005cb: DUP3
000005cc: MSTORE
000005cd: PUSH1 0x00
000005cf: DUP1
000005d0: DUP3
000005d1: MSTORE
000005d2: PUSH1 0x20
000005d4: DUP3
000005d5: ADD
000005d6: DUP2
000005d7: SWAP1
000005d8: MSTORE
000005d9: SWAP2
000005da: DUP2
000005db: ADD
000005dc: DUP3
000005dd: SWAP1
000005de: MSTORE
000005df: PUSH1 0x03
000005e1: SLOAD
000005e2: SWAP1
000005e3: SWAP2
000005e4: SWAP1
000005e5: GT
000005e6: ISZERO
000005e7: PUSH2 0x01f6
000005ea: JUMPI
000005eb: PUSH1 0x03
000005ed: DUP1
000005ee: SLOAD
000005ef: PUSH1 0x00
000005f1: NOT
000005f2: DUP2
000005f3: ADD
000005f4: SWAP1
000005f5: DUP2
000005f6: LT
000005f7: ISZERO
000005f8: PUSH2 0x0002
000005fb: JUMPI
000005fc: PUSH1 0x00
000005fe: DUP3
000005ff: DUP2
00000600: MSTORE
00000601: SWAP2
00000602: MUL
00000603: PUSH32 0xc2575a0e9e593c00f959f8c92f12db2869c3395a3b0502d05e2516446f71f85b
00000624: ADD
00000625: SWAP1
00000626: POP
00000627: PUSH1 0x40
00000629: DUP1
0000062a: MLOAD
0000062b: PUSH1 0x60
0000062d: DUP2
0000062e: ADD
0000062f: DUP3
00000630: MSTORE
00000631: DUP3
00000632: SLOAD
00000633: PUSH1 0x01
00000635: PUSH1 0xa0
00000637: PUSH1 0x02
00000639: EXP
0000063a: SUB
0000063b: AND
0000063c: DUP2
0000063d: MSTORE
0000063e: PUSH1 0x01
00000640: DUP4
00000641: ADD
00000642: SLOAD
00000643: PUSH1 0x20
00000645: DUP3
00000646: ADD
00000647: MSTORE
00000648: PUSH1 0x02
0000064a: SWAP3
0000064b: SWAP1
0000064c: SWAP3
0000064d: ADD
0000064e: SLOAD
0000064f: SWAP1
00000650: DUP3
00000651: ADD
00000652: MSTORE
00000653: SWAP1
00000654: POP
00000655: PUSH2 0x01f6
00000658: JUMP
00000659: JUMPDEST
0000065a: PUSH2 0x0316
0000065d: PUSH1 0x04
0000065f: CALLDATALOAD
00000660: PUSH1 0x03
00000662: DUP1
00000663: SLOAD
00000664: DUP3
00000665: SWAP1
00000666: DUP2
00000667: LT
00000668: ISZERO
00000669: PUSH2 0x0002
0000066c: JUMPI
0000066d: POP
0000066e: PUSH1 0x00
00000670: DUP2
00000671: SWAP1
00000672: MSTORE
00000673: MUL
00000674: PUSH32 0xc2575a0e9e593c00f959f8c92f12db2869c3395a3b0502d05e2516446f71f85d
00000695: DUP2
00000696: ADD
00000697: SLOAD
00000698: PUSH32 0xc2575a0e9e593c00f959f8c92f12db2869c3395a3b0502d05e2516446f71f85b
000006b9: DUP3
000006ba: ADD
000006bb: SLOAD
000006bc: PUSH32 0xc2575a0e9e593c00f959f8c92f12db2869c3395a3b0502d05e2516446f71f85c
000006dd: SWAP3
000006de: SWAP1
000006df: SWAP3
000006e0: ADD
000006e1: SLOAD
000006e2: PUSH1 0x01
000006e4: PUSH1 0xa0
000006e6: PUSH1 0x02
000006e8: EXP
000006e9: SUB
000006ea: SWAP3
000006eb: SWAP1
000006ec: SWAP3
000006ed: AND
000006ee: SWAP2
000006ef: SWAP1
000006f0: DUP4
000006f1: JUMP
000006f2: JUMPDEST
000006f3: PUSH2 0x0304
000006f6: JUMPDEST
000006f7: PUSH1 0x03
000006f9: SLOAD
000006fa: PUSH1 0x00
000006fc: SWAP1
000006fd: GT
000006fe: JUMPDEST
000006ff: SWAP1
00000700: JUMP
00000701: JUMPDEST
00000702: PUSH2 0x02da
00000705: PUSH1 0x00
00000707: SLOAD
00000708: CALLER
00000709: PUSH1 0x01
0000070b: PUSH1 0xa0
0000070d: PUSH1 0x02
0000070f: EXP
00000710: SUB
00000711: SWAP1
00000712: DUP2
00000713: AND
00000714: SWAP2
00000715: AND
00000716: EQ
00000717: ISZERO
00000718: PUSH2 0x0302
0000071b: JUMPI
0000071c: PUSH2 0x039f
0000071f: PUSH2 0x02ca
00000722: JUMP
00000723: JUMPDEST
00000724: PUSH2 0x0304
00000727: PUSH1 0x00
00000729: PUSH1 0x03
0000072b: PUSH1 0x00
0000072d: POP
0000072e: PUSH1 0x00
00000730: DUP2
00000731: SLOAD
00000732: DUP2
00000733: LT
00000734: ISZERO
00000735: PUSH2 0x0002
00000738: JUMPI
00000739: POP
0000073a: SWAP1
0000073b: MSTORE
0000073c: PUSH32 0xc2575a0e9e593c00f959f8c92f12db2869c3395a3b0502d05e2516446f71f85d
0000075d: SLOAD
0000075e: PUSH2 0x01f6
00000761: JUMP
00000762: JUMPDEST
00000763: PUSH2 0x033f
00000766: PUSH1 0x00
00000768: SLOAD
00000769: PUSH1 0x01
0000076b: PUSH1 0xa0
0000076d: PUSH1 0x02
0000076f: EXP
00000770: SUB
00000771: AND
00000772: DUP2
00000773: JUMP
00000774: JUMPDEST
00000775: PUSH2 0x0304
00000778: PUSH1 0x02
0000077a: SLOAD
0000077b: DUP2
0000077c: JUMP
0000077d: JUMPDEST
0000077e: PUSH2 0x0304
00000781: PUSH1 0x04
00000783: CALLDATALOAD
00000784: PUSH1 0x24
00000786: CALLDATALOAD
00000787: PUSH1 0x00
00000789: DUP1
0000078a: SLOAD
0000078b: CALLER
0000078c: PUSH1 0x01
0000078e: PUSH1 0xa0
00000790: PUSH1 0x02
00000792: EXP
00000793: SUB
00000794: SWAP1
00000795: DUP2
00000796: AND
00000797: SWAP2
00000798: AND
00000799: EQ
0000079a: ISZERO
0000079b: PUSH2 0x0435
0000079e: JUMPI
0000079f: PUSH1 0x03
000007a1: SLOAD
000007a2: DUP2
000007a3: EQ
000007a4: DUP1
000007a5: ISZERO
000007a6: SWAP1
000007a7: PUSH2 0x0443
000007aa: JUMPI
000007ab: POP
000007ac: PUSH2 0x043b
000007af: PUSH2 0x00ba
000007b2: JUMP
000007b3: JUMPDEST
000007b4: PUSH2 0x0304
000007b7: PUSH1 0x00
000007b9: PUSH2 0x0368
000007bc: PUSH2 0x00b0
000007bf: JUMP
000007c0: JUMPDEST
000007c1: PUSH2 0x0304
000007c4: JUMPDEST
000007c5: PUSH1 0x00
000007c7: PUSH2 0x0387
000007ca: PUSH2 0x01ee
000007cd: JUMP
000007ce: JUMPDEST
000007cf: PUSH2 0x0304
000007d2: JUMPDEST
000007d3: ADDRESS
000007d4: PUSH1 0x01
000007d6: PUSH1 0xa0
000007d8: PUSH1 0x02
000007da: EXP
000007db: SUB
000007dc: AND
000007dd: BALANCE
000007de: PUSH2 0x01f6
000007e1: JUMP
000007e2: JUMPDEST
000007e3: STOP
000007e4: JUMPDEST
000007e5: ISZERO
000007e6: PUSH2 0x0302
000007e9: JUMPI
000007ea: PUSH1 0x40
000007ec: MLOAD
000007ed: CALLER
000007ee: PUSH1 0x01
000007f0: PUSH1 0xa0
000007f2: PUSH1 0x02
000007f4: EXP
000007f5: SUB
000007f6: AND
000007f7: SWAP1
000007f8: PUSH1 0x00
000007fa: SWAP1
000007fb: CALLVALUE
000007fc: SWAP1
000007fd: DUP3
000007fe: DUP2
000007ff: DUP2
00000800: DUP2
00000801: DUP6
00000802: DUP9
00000803: DUP4
00000804: CALL
00000805: POP
00000806: POP
00000807: POP
00000808: POP
00000809: POP
0000080a: JUMPDEST
0000080b: JUMP
0000080c: JUMPDEST
0000080d: PUSH1 0x40
0000080f: DUP1
00000810: MLOAD
00000811: SWAP2
00000812: DUP3
00000813: MSTORE
00000814: MLOAD
00000815: SWAP1
00000816: DUP2
00000817: SWAP1
00000818: SUB
00000819: PUSH1 0x20
0000081b: ADD
0000081c: SWAP1
0000081d: RETURN
0000081e: JUMPDEST
0000081f: PUSH1 0x40
00000821: DUP1
00000822: MLOAD
00000823: PUSH1 0x01
00000825: PUSH1 0xa0
00000827: PUSH1 0x02
00000829: EXP
0000082a: SUB
0000082b: SWAP5
0000082c: SWAP1
0000082d: SWAP5
0000082e: AND
0000082f: DUP5
00000830: MSTORE
00000831: PUSH1 0x20
00000833: DUP5
00000834: ADD
00000835: SWAP3
00000836: SWAP1
00000837: SWAP3
00000838: MSTORE
00000839: DUP3
0000083a: DUP3
0000083b: ADD
0000083c: MSTORE
0000083d: MLOAD
0000083e: SWAP1
0000083f: DUP2
00000840: SWAP1
00000841: SUB
00000842: PUSH1 0x60
00000844: ADD
00000845: SWAP1
00000846: RETURN
00000847: JUMPDEST
00000848: PUSH1 0x40
0000084a: DUP1
0000084b: MLOAD
0000084c: PUSH1 0x01
0000084e: PUSH1 0xa0
00000850: PUSH1 0x02
00000852: EXP
00000853: SUB
00000854: SWAP3
00000855: SWAP1
00000856: SWAP3
00000857: AND
00000858: DUP3
00000859: MSTORE
0000085a: MLOAD
0000085b: SWAP1
0000085c: DUP2
0000085d: SWAP1
0000085e: SUB
0000085f: PUSH1 0x20
00000861: ADD
00000862: SWAP1
00000863: RETURN
00000864: JUMPDEST
00000865: PUSH1 0x40
00000867: ADD
00000868: MLOAD
00000869: ADD
0000086a: SWAP1
0000086b: POP
0000086c: PUSH2 0x01f6
0000086f: JUMP
00000870: JUMPDEST
00000871: TIMESTAMP
00000872: GT
00000873: PUSH2 0x0377
00000876: JUMPI
00000877: TIMESTAMP
00000878: PUSH2 0x0381
0000087b: PUSH2 0x00b0
0000087e: JUMP
0000087f: JUMPDEST
00000880: PUSH1 0x00
00000882: JUMPDEST
00000883: SWAP1
00000884: POP
00000885: PUSH2 0x01f6
00000888: JUMP
00000889: JUMPDEST
0000088a: SUB
0000088b: PUSH2 0x037a
0000088e: JUMP
0000088f: JUMPDEST
00000890: DUP1
00000891: ISZERO
00000892: PUSH2 0x037a
00000895: JUMPI
00000896: POP
00000897: PUSH2 0x0396
0000089a: PUSH2 0x00b0
0000089d: JUMP
0000089e: JUMPDEST
0000089f: TIMESTAMP
000008a0: GT
000008a1: SWAP1
000008a2: POP
000008a3: PUSH2 0x01f6
000008a6: JUMP
000008a7: JUMPDEST
000008a8: PUSH1 0x01
000008aa: SSTORE
000008ab: PUSH2 0x03aa
000008ae: PUSH2 0x00ba
000008b1: JUMP
000008b2: JUMPDEST
000008b3: MLOAD
000008b4: PUSH1 0x01
000008b6: PUSH1 0xa0
000008b8: PUSH1 0x02
000008ba: EXP
000008bb: SUB
000008bc: AND
000008bd: PUSH1 0x00
000008bf: PUSH2 0x03be
000008c2: PUSH2 0x02ca
000008c5: JUMP
000008c6: JUMPDEST
000008c7: PUSH1 0x40
000008c9: MLOAD
000008ca: PUSH1 0x00
000008cc: DUP2
000008cd: DUP2
000008ce: DUP2
000008cf: DUP6
000008d0: DUP9
000008d1: DUP9
000008d2: CALL
000008d3: POP
000008d4: POP
000008d5: POP
000008d6: POP
000008d7: POP
000008d8: JUMP
000008d9: JUMPDEST
000008da: POP
000008db: POP
000008dc: POP
000008dd: SWAP2
000008de: SWAP1
000008df: SWAP1
000008e0: PUSH1 0x00
000008e2: MSTORE
000008e3: PUSH1 0x20
000008e5: PUSH1 0x00
000008e7: KECCAK256
000008e8: SWAP1
000008e9: PUSH1 0x03
000008eb: MUL
000008ec: ADD
000008ed: PUSH1 0x00
000008ef: POP
000008f0: PUSH1 0x40
000008f2: DUP1
000008f3: MLOAD
000008f4: PUSH1 0x60
000008f6: DUP2
000008f7: ADD
000008f8: DUP3
000008f9: MSTORE
000008fa: DUP7
000008fb: DUP2
000008fc: MSTORE
000008fd: PUSH1 0x20
000008ff: DUP2
00000900: ADD
00000901: DUP7
00000902: SWAP1
00000903: MSTORE
00000904: TIMESTAMP
00000905: SWAP2
00000906: ADD
00000907: DUP2
00000908: SWAP1
00000909: MSTORE
0000090a: DUP2
0000090b: SLOAD
0000090c: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000921: NOT
00000922: AND
00000923: DUP7
00000924: OR
00000925: DUP3
00000926: SSTORE
00000927: PUSH1 0x01
00000929: DUP3
0000092a: DUP2
0000092b: ADD
0000092c: DUP7
0000092d: SWAP1
0000092e: SSTORE
0000092f: PUSH1 0x02
00000931: SWAP3
00000932: DUP4
00000933: ADD
00000934: SWAP2
00000935: SWAP1
00000936: SWAP2
00000937: SSTORE
00000938: SWAP2
00000939: SWAP1
0000093a: SSTORE
0000093b: SWAP1
0000093c: POP
0000093d: JUMPDEST
0000093e: SWAP3
0000093f: SWAP2
00000940: POP
00000941: POP
00000942: JUMP
00000943: JUMPDEST
00000944: PUSH1 0x20
00000946: ADD
00000947: MLOAD
00000948: DUP3
00000949: GT
0000094a: ISZERO
0000094b: JUMPDEST
0000094c: ISZERO
0000094d: PUSH2 0x0450
00000950: JUMPI
00000951: POP
00000952: PUSH1 0x00
00000954: PUSH2 0x0435
00000957: JUMP
00000958: JUMPDEST
00000959: PUSH1 0x03
0000095b: DUP1
0000095c: SLOAD
0000095d: PUSH1 0x01
0000095f: DUP2
00000960: ADD
00000961: DUP1
00000962: DUP4
00000963: SSTORE
00000964: DUP3
00000965: DUP2
00000966: DUP4
00000967: DUP1
00000968: ISZERO
00000969: DUP3
0000096a: SWAP1
0000096b: GT
0000096c: PUSH2 0x03d1
0000096f: JUMPI
00000970: PUSH1 0x03
00000972: MUL
00000973: DUP2
00000974: PUSH1 0x03
00000976: MUL
00000977: DUP4
00000978: PUSH1 0x00
0000097a: MSTORE
0000097b: PUSH1 0x20
0000097d: PUSH1 0x00
0000097f: KECCAK256
00000980: SWAP2
00000981: DUP3
00000982: ADD
00000983: SWAP2
00000984: ADD
00000985: PUSH2 0x03d1
00000988: SWAP2
00000989: SWAP1
0000098a: JUMPDEST
0000098b: DUP1
0000098c: DUP3
0000098d: GT
0000098e: ISZERO
0000098f: PUSH2 0x04ba
00000992: JUMPI
00000993: DUP1
00000994: SLOAD
00000995: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000009aa: NOT
000009ab: AND
000009ac: DUP2
000009ad: SSTORE
000009ae: PUSH1 0x00
000009b0: PUSH1 0x01
000009b2: DUP3
000009b3: ADD
000009b4: DUP2
000009b5: DUP2
000009b6: SSTORE
000009b7: PUSH1 0x02
000009b9: SWAP3
000009ba: SWAP1
000009bb: SWAP3
000009bc: ADD
000009bd: SSTORE
000009be: PUSH2 0x0482
000009c1: JUMP
000009c2: JUMPDEST
000009c3: POP
000009c4: SWAP1
000009c5: 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
high other detector Untrusted CALL target/value reachable 60 no no
view
trace_id: 0xa3ae00f24f52b521a3a2c4b78c31f95ab34d358d8968aabcb7f053b6b14a4589
call_targets: 0xafcb0ca8f05c5374a4d11f4197fc25f51a76813d
target_varies: no
classification: constant_target
validation_json
{
    "sink": "CALL",
    "errors": 0,
    "status": "sink_reached",
    "attempts": 1,
    "trace_id": "0xa3ae00f24f52b521a3a2c4b78c31f95ab34d358d8968aabcb7f053b6b14a4589",
    "confirmed": false,
    "trace_mode": "callTracer",
    "call_targets": [
        "0xafcb0ca8f05c5374a4d11f4197fc25f51a76813d"
    ],
    "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": "0x13af4035",
            "selector": "0x13af4035",
            "calldata_variants": [
                "0x13af4035",
                "0x13af40350000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x4052c661",
            "selector": "0x4052c661",
            "calldata_variants": [
                "0x4052c661",
                "0x4052c6610000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x496a698d",
            "selector": "0x496a698d",
            "calldata_variants": [
                "0x496a698d",
                "0x496a698d0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x5d068051",
            "selector": "0x5d068051",
            "calldata_variants": [
                "0x5d068051",
                "0x5d0680510000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x7a791524",
            "selector": "0x7a791524",
            "calldata_variants": [
                "0x7a791524",
                "0x7a7915240000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x8da5cb5b",
            "selector": "0x8da5cb5b",
            "calldata_variants": [
                "0x8da5cb5b",
                "0x8da5cb5b0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x9003adfe",
            "selector": "0x9003adfe",
            "calldata_variants": [
                "0x9003adfe",
                "0x9003adfe0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xa001ecdd",
            "selector": "0xa001ecdd",
            "calldata_variants": [
                "0xa001ecdd",
                "0xa001ecdd0000000000000000000000000000000000000000000000000000000000000000"
            ]
        }
    ]
}
evidence_json
{
    "examples": [
        {
            "pc": 230,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        },
        {
            "pc": 320,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        },
        {
            "pc": 889,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        }
    ],
    "call_count": 7,
    "guards_detected": [],
    "untrusted_call_count": 7
}
high other detector ETH value transfer possible 55 no no
view
trace_id: 0xa3ae00f24f52b521a3a2c4b78c31f95ab34d358d8968aabcb7f053b6b14a4589
call_targets: 0xafcb0ca8f05c5374a4d11f4197fc25f51a76813d
target_varies: no
classification: constant_target
validation_json
{
    "sink": "CALL",
    "errors": 0,
    "status": "sink_reached",
    "attempts": 1,
    "trace_id": "0xa3ae00f24f52b521a3a2c4b78c31f95ab34d358d8968aabcb7f053b6b14a4589",
    "confirmed": false,
    "trace_mode": "callTracer",
    "call_targets": [
        "0xafcb0ca8f05c5374a4d11f4197fc25f51a76813d"
    ],
    "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": "0x13af4035",
            "selector": "0x13af4035",
            "calldata_variants": [
                "0x13af4035",
                "0x13af40350000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x4052c661",
            "selector": "0x4052c661",
            "calldata_variants": [
                "0x4052c661",
                "0x4052c6610000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x496a698d",
            "selector": "0x496a698d",
            "calldata_variants": [
                "0x496a698d",
                "0x496a698d0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x5d068051",
            "selector": "0x5d068051",
            "calldata_variants": [
                "0x5d068051",
                "0x5d0680510000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x7a791524",
            "selector": "0x7a791524",
            "calldata_variants": [
                "0x7a791524",
                "0x7a7915240000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x8da5cb5b",
            "selector": "0x8da5cb5b",
            "calldata_variants": [
                "0x8da5cb5b",
                "0x8da5cb5b0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x9003adfe",
            "selector": "0x9003adfe",
            "calldata_variants": [
                "0x9003adfe",
                "0x9003adfe0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xa001ecdd",
            "selector": "0xa001ecdd",
            "calldata_variants": [
                "0xa001ecdd",
                "0xa001ecdd0000000000000000000000000000000000000000000000000000000000000000"
            ]
        }
    ]
}
evidence_json
{
    "examples": [
        {
            "pc": 230,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        },
        {
            "pc": 320,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        },
        {
            "pc": 889,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        }
    ],
    "eth_value_calls": 7,
    "guards_detected": []
}
medium other detector CREATE/CREATE2 reachable 45 yes yes
view
trace_id: 0x4fdb3b787d276bf2bc14937601185f9921f0698df409721e333e60ab7b2a05fc
validation_json
{
    "sink": "CREATE",
    "errors": 0,
    "status": "confirmed",
    "attempts": 23,
    "trace_id": "0x4fdb3b787d276bf2bc14937601185f9921f0698df409721e333e60ab7b2a05fc",
    "confirmed": true,
    "trace_mode": "structLogs",
    "call_targets": null,
    "matched_probe": null,
    "target_varies": null,
    "classification": "sink_reached"
}
witness_json
{
    "notes": "heuristic witness; entrypoints are best-effort selectors with zeroed calldata",
    "constraints": [],
    "entrypoints": [
        {
            "calldata": "0x13af4035",
            "selector": "0x13af4035",
            "calldata_variants": [
                "0x13af4035",
                "0x13af40350000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x4052c661",
            "selector": "0x4052c661",
            "calldata_variants": [
                "0x4052c661",
                "0x4052c6610000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x496a698d",
            "selector": "0x496a698d",
            "calldata_variants": [
                "0x496a698d",
                "0x496a698d0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x5d068051",
            "selector": "0x5d068051",
            "calldata_variants": [
                "0x5d068051",
                "0x5d0680510000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x7a791524",
            "selector": "0x7a791524",
            "calldata_variants": [
                "0x7a791524",
                "0x7a7915240000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x8da5cb5b",
            "selector": "0x8da5cb5b",
            "calldata_variants": [
                "0x8da5cb5b",
                "0x8da5cb5b0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x9003adfe",
            "selector": "0x9003adfe",
            "calldata_variants": [
                "0x9003adfe",
                "0x9003adfe0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xa001ecdd",
            "selector": "0xa001ecdd",
            "calldata_variants": [
                "0xa001ecdd",
                "0xa001ecdd0000000000000000000000000000000000000000000000000000000000000000"
            ]
        }
    ]
}
evidence_json
{
    "create_count": 1,
    "create2_count": 0
}