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

Analysis Run

019b3836-377b-72b5-8cf5-b8071730f5bb

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 2 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
3761 artifact.fetch complete 1 / 3 3 months ago
3762 tool.cast_disasm complete 1 / 3 3 months ago
105321 analysis.bundle complete 1 / 3 1 week ago
105322 capability.graph complete 1 / 3 1 week ago
105323 detector.run complete 1 / 3 1 week ago
105324 validation.fork complete 1 / 3 1 week ago
113901 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-y3gy8z4o
model: gpt-5.4
provider: openai
approval: never
sandbox: read-only
reasoning effort: high
reasoning summaries: none
session id: 019d5ca2-6019-7671-93c3-b50d75e78e04
--------
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:54:00.175686+00:00",
        "returncode": 1
    },
    "project": {
        "mode": "bytecode",
        "bytecode_length": 4714,
        "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)
3
EXT*/BALANCE
0
Total opcodes
1755
Flags
No heuristic flags raised.
View cast disassembly output
00000000: PUSH1 0x60
00000002: PUSH1 0x40
00000004: MSTORE
00000005: CALLDATASIZE
00000006: ISZERO
00000007: PUSH2 0x0098
0000000a: JUMPI
0000000b: PUSH1 0xe0
0000000d: PUSH1 0x02
0000000f: EXP
00000010: PUSH1 0x00
00000012: CALLDATALOAD
00000013: DIV
00000014: PUSH4 0x06fdde03
00000019: DUP2
0000001a: EQ
0000001b: PUSH2 0x00a0
0000001e: JUMPI
0000001f: DUP1
00000020: PUSH4 0x18160ddd
00000025: EQ
00000026: PUSH2 0x00fe
00000029: JUMPI
0000002a: DUP1
0000002b: PUSH4 0x23b872dd
00000030: EQ
00000031: PUSH2 0x0107
00000034: JUMPI
00000035: DUP1
00000036: PUSH4 0x313ce567
0000003b: EQ
0000003c: PUSH2 0x0139
0000003f: JUMPI
00000040: DUP1
00000041: PUSH4 0x54fd4d50
00000046: EQ
00000047: PUSH2 0x0145
0000004a: JUMPI
0000004b: DUP1
0000004c: PUSH4 0x668ad45f
00000051: EQ
00000052: PUSH2 0x01a0
00000055: JUMPI
00000056: DUP1
00000057: PUSH4 0x70a08231
0000005c: EQ
0000005d: PUSH2 0x030f
00000060: JUMPI
00000061: DUP1
00000062: PUSH4 0x95d89b41
00000067: EQ
00000068: PUSH2 0x0327
0000006b: JUMPI
0000006c: DUP1
0000006d: PUSH4 0xa9059cbb
00000072: EQ
00000073: PUSH2 0x0384
00000076: JUMPI
00000077: DUP1
00000078: PUSH4 0xcae9ca51
0000007d: EQ
0000007e: PUSH2 0x03b3
00000081: JUMPI
00000082: DUP1
00000083: PUSH4 0xdc3080f2
00000088: EQ
00000089: PUSH2 0x051a
0000008c: JUMPI
0000008d: DUP1
0000008e: PUSH4 0xdd62ed3e
00000093: EQ
00000094: PUSH2 0x053f
00000097: JUMPI
00000098: JUMPDEST
00000099: PUSH2 0x0564
0000009c: PUSH2 0x0002
0000009f: JUMP
000000a0: JUMPDEST
000000a1: PUSH1 0x40
000000a3: DUP1
000000a4: MLOAD
000000a5: PUSH1 0x00
000000a7: DUP1
000000a8: SLOAD
000000a9: PUSH1 0x20
000000ab: PUSH1 0x02
000000ad: PUSH1 0x01
000000af: DUP4
000000b0: AND
000000b1: ISZERO
000000b2: PUSH2 0x0100
000000b5: MUL
000000b6: PUSH1 0x00
000000b8: NOT
000000b9: ADD
000000ba: SWAP1
000000bb: SWAP3
000000bc: AND
000000bd: SWAP2
000000be: SWAP1
000000bf: SWAP2
000000c0: DIV
000000c1: PUSH1 0x1f
000000c3: DUP2
000000c4: ADD
000000c5: DUP3
000000c6: SWAP1
000000c7: DIV
000000c8: DUP3
000000c9: MUL
000000ca: DUP5
000000cb: ADD
000000cc: DUP3
000000cd: ADD
000000ce: SWAP1
000000cf: SWAP5
000000d0: MSTORE
000000d1: DUP4
000000d2: DUP4
000000d3: MSTORE
000000d4: PUSH2 0x0566
000000d7: SWAP4
000000d8: SWAP1
000000d9: DUP4
000000da: ADD
000000db: DUP3
000000dc: DUP3
000000dd: DUP1
000000de: ISZERO
000000df: PUSH2 0x0628
000000e2: JUMPI
000000e3: DUP1
000000e4: PUSH1 0x1f
000000e6: LT
000000e7: PUSH2 0x05fd
000000ea: JUMPI
000000eb: PUSH2 0x0100
000000ee: DUP1
000000ef: DUP4
000000f0: SLOAD
000000f1: DIV
000000f2: MUL
000000f3: DUP4
000000f4: MSTORE
000000f5: SWAP2
000000f6: PUSH1 0x20
000000f8: ADD
000000f9: SWAP2
000000fa: PUSH2 0x0628
000000fd: JUMP
000000fe: JUMPDEST
000000ff: PUSH2 0x05d4
00000102: PUSH1 0x04
00000104: SLOAD
00000105: DUP2
00000106: JUMP
00000107: JUMPDEST
00000108: PUSH2 0x05d4
0000010b: PUSH1 0x04
0000010d: CALLDATALOAD
0000010e: PUSH1 0x24
00000110: CALLDATALOAD
00000111: PUSH1 0x44
00000113: CALLDATALOAD
00000114: PUSH1 0x01
00000116: PUSH1 0xa0
00000118: PUSH1 0x02
0000011a: EXP
0000011b: SUB
0000011c: DUP4
0000011d: AND
0000011e: PUSH1 0x00
00000120: SWAP1
00000121: DUP2
00000122: MSTORE
00000123: PUSH1 0x05
00000125: PUSH1 0x20
00000127: MSTORE
00000128: PUSH1 0x40
0000012a: DUP2
0000012b: KECCAK256
0000012c: SLOAD
0000012d: DUP3
0000012e: SWAP1
0000012f: LT
00000130: ISZERO
00000131: PUSH2 0x0835
00000134: JUMPI
00000135: PUSH2 0x0002
00000138: JUMP
00000139: JUMPDEST
0000013a: PUSH2 0x05e6
0000013d: PUSH1 0x03
0000013f: SLOAD
00000140: PUSH1 0xff
00000142: AND
00000143: DUP2
00000144: JUMP
00000145: JUMPDEST
00000146: PUSH2 0x0566
00000149: PUSH1 0x02
0000014b: DUP1
0000014c: SLOAD
0000014d: PUSH1 0x40
0000014f: DUP1
00000150: MLOAD
00000151: PUSH1 0x20
00000153: PUSH1 0x01
00000155: DUP5
00000156: AND
00000157: ISZERO
00000158: PUSH2 0x0100
0000015b: MUL
0000015c: PUSH1 0x00
0000015e: NOT
0000015f: ADD
00000160: SWAP1
00000161: SWAP4
00000162: AND
00000163: DUP5
00000164: SWAP1
00000165: DIV
00000166: PUSH1 0x1f
00000168: DUP2
00000169: ADD
0000016a: DUP5
0000016b: SWAP1
0000016c: DIV
0000016d: DUP5
0000016e: MUL
0000016f: DUP3
00000170: ADD
00000171: DUP5
00000172: ADD
00000173: SWAP1
00000174: SWAP3
00000175: MSTORE
00000176: DUP2
00000177: DUP2
00000178: MSTORE
00000179: SWAP3
0000017a: SWAP2
0000017b: DUP4
0000017c: ADD
0000017d: DUP3
0000017e: DUP3
0000017f: DUP1
00000180: ISZERO
00000181: PUSH2 0x0628
00000184: JUMPI
00000185: DUP1
00000186: PUSH1 0x1f
00000188: LT
00000189: PUSH2 0x05fd
0000018c: JUMPI
0000018d: PUSH2 0x0100
00000190: DUP1
00000191: DUP4
00000192: SLOAD
00000193: DIV
00000194: MUL
00000195: DUP4
00000196: MSTORE
00000197: SWAP2
00000198: PUSH1 0x20
0000019a: ADD
0000019b: SWAP2
0000019c: PUSH2 0x0628
0000019f: JUMP
000001a0: JUMPDEST
000001a1: PUSH1 0x40
000001a3: DUP1
000001a4: MLOAD
000001a5: PUSH1 0x20
000001a7: PUSH1 0x24
000001a9: DUP1
000001aa: CALLDATALOAD
000001ab: PUSH1 0x04
000001ad: DUP2
000001ae: DUP2
000001af: ADD
000001b0: CALLDATALOAD
000001b1: PUSH1 0x1f
000001b3: DUP2
000001b4: ADD
000001b5: DUP6
000001b6: SWAP1
000001b7: DIV
000001b8: DUP6
000001b9: MUL
000001ba: DUP7
000001bb: ADD
000001bc: DUP6
000001bd: ADD
000001be: SWAP1
000001bf: SWAP7
000001c0: MSTORE
000001c1: DUP6
000001c2: DUP6
000001c3: MSTORE
000001c4: PUSH2 0x0564
000001c7: SWAP6
000001c8: DUP2
000001c9: CALLDATALOAD
000001ca: SWAP6
000001cb: SWAP2
000001cc: SWAP5
000001cd: PUSH1 0x44
000001cf: SWAP5
000001d0: SWAP3
000001d1: SWAP4
000001d2: SWAP1
000001d3: SWAP3
000001d4: ADD
000001d5: SWAP2
000001d6: DUP2
000001d7: SWAP1
000001d8: DUP5
000001d9: ADD
000001da: DUP4
000001db: DUP3
000001dc: DUP1
000001dd: DUP3
000001de: DUP5
000001df: CALLDATACOPY
000001e0: POP
000001e1: POP
000001e2: PUSH1 0x40
000001e4: DUP1
000001e5: MLOAD
000001e6: PUSH1 0x20
000001e8: PUSH1 0x64
000001ea: CALLDATALOAD
000001eb: DUP1
000001ec: DUP12
000001ed: ADD
000001ee: CALLDATALOAD
000001ef: PUSH1 0x1f
000001f1: DUP2
000001f2: ADD
000001f3: DUP4
000001f4: SWAP1
000001f5: DIV
000001f6: DUP4
000001f7: MUL
000001f8: DUP5
000001f9: ADD
000001fa: DUP4
000001fb: ADD
000001fc: SWAP1
000001fd: SWAP5
000001fe: MSTORE
000001ff: DUP4
00000200: DUP4
00000201: MSTORE
00000202: SWAP8
00000203: SWAP10
00000204: SWAP9
00000205: CALLDATALOAD
00000206: SWAP9
00000207: SWAP8
00000208: PUSH1 0x84
0000020a: SWAP8
0000020b: POP
0000020c: SWAP2
0000020d: SWAP6
0000020e: POP
0000020f: PUSH1 0x24
00000211: SWAP2
00000212: SWAP1
00000213: SWAP2
00000214: ADD
00000215: SWAP4
00000216: POP
00000217: SWAP1
00000218: SWAP2
00000219: POP
0000021a: DUP2
0000021b: SWAP1
0000021c: DUP5
0000021d: ADD
0000021e: DUP4
0000021f: DUP3
00000220: DUP1
00000221: DUP3
00000222: DUP5
00000223: CALLDATACOPY
00000224: POP
00000225: POP
00000226: PUSH1 0x40
00000228: DUP1
00000229: MLOAD
0000022a: PUSH1 0x20
0000022c: SWAP8
0000022d: CALLDATALOAD
0000022e: DUP1
0000022f: DUP11
00000230: ADD
00000231: CALLDATALOAD
00000232: PUSH1 0x1f
00000234: DUP2
00000235: ADD
00000236: DUP11
00000237: SWAP1
00000238: DIV
00000239: DUP11
0000023a: MUL
0000023b: DUP4
0000023c: ADD
0000023d: DUP11
0000023e: ADD
0000023f: SWAP1
00000240: SWAP4
00000241: MSTORE
00000242: DUP3
00000243: DUP3
00000244: MSTORE
00000245: SWAP7
00000246: SWAP9
00000247: SWAP8
00000248: PUSH1 0xa4
0000024a: SWAP8
0000024b: SWAP2
0000024c: SWAP7
0000024d: POP
0000024e: PUSH1 0x24
00000250: SWAP2
00000251: SWAP1
00000252: SWAP2
00000253: ADD
00000254: SWAP5
00000255: POP
00000256: SWAP1
00000257: SWAP3
00000258: POP
00000259: DUP3
0000025a: SWAP2
0000025b: POP
0000025c: DUP5
0000025d: ADD
0000025e: DUP4
0000025f: DUP3
00000260: DUP1
00000261: DUP3
00000262: DUP5
00000263: CALLDATACOPY
00000264: POP
00000265: SWAP5
00000266: SWAP7
00000267: POP
00000268: POP
00000269: POP
0000026a: POP
0000026b: POP
0000026c: POP
0000026d: POP
0000026e: PUSH1 0x01
00000270: PUSH1 0xa0
00000272: PUSH1 0x02
00000274: EXP
00000275: SUB
00000276: CALLER
00000277: AND
00000278: PUSH1 0x00
0000027a: SWAP1
0000027b: DUP2
0000027c: MSTORE
0000027d: PUSH1 0x05
0000027f: PUSH1 0x20
00000281: SWAP1
00000282: DUP2
00000283: MSTORE
00000284: PUSH1 0x40
00000286: DUP3
00000287: KECCAK256
00000288: DUP8
00000289: SWAP1
0000028a: SSTORE
0000028b: PUSH1 0x04
0000028d: DUP8
0000028e: SWAP1
0000028f: SSTORE
00000290: DUP2
00000291: SLOAD
00000292: DUP7
00000293: MLOAD
00000294: DUP4
00000295: DUP1
00000296: MSTORE
00000297: PUSH1 0x02
00000299: PUSH1 0x01
0000029b: DUP4
0000029c: AND
0000029d: ISZERO
0000029e: PUSH2 0x0100
000002a1: MUL
000002a2: PUSH1 0x00
000002a4: NOT
000002a5: ADD
000002a6: SWAP1
000002a7: SWAP3
000002a8: AND
000002a9: SWAP2
000002aa: SWAP1
000002ab: SWAP2
000002ac: DIV
000002ad: PUSH1 0x1f
000002af: SWAP1
000002b0: DUP2
000002b1: ADD
000002b2: DUP4
000002b3: SWAP1
000002b4: DIV
000002b5: PUSH32 0x290decd9548b62a8d60345a988386fc84ba6bc95484008f6362f93160ef3e563
000002d6: SWAP1
000002d7: DUP2
000002d8: ADD
000002d9: SWAP4
000002da: SWAP1
000002db: SWAP2
000002dc: SWAP1
000002dd: DUP10
000002de: ADD
000002df: SWAP1
000002e0: DUP4
000002e1: SWAP1
000002e2: LT
000002e3: PUSH2 0x0630
000002e6: JUMPI
000002e7: DUP1
000002e8: MLOAD
000002e9: PUSH1 0xff
000002eb: NOT
000002ec: AND
000002ed: DUP4
000002ee: DUP1
000002ef: ADD
000002f0: OR
000002f1: DUP6
000002f2: SSTORE
000002f3: JUMPDEST
000002f4: POP
000002f5: PUSH2 0x0660
000002f8: SWAP3
000002f9: SWAP2
000002fa: POP
000002fb: JUMPDEST
000002fc: DUP1
000002fd: DUP3
000002fe: GT
000002ff: ISZERO
00000300: PUSH2 0x06b9
00000303: JUMPI
00000304: PUSH1 0x00
00000306: DUP2
00000307: SSTORE
00000308: PUSH1 0x01
0000030a: ADD
0000030b: PUSH2 0x02fb
0000030e: JUMP
0000030f: JUMPDEST
00000310: PUSH2 0x05d4
00000313: PUSH1 0x04
00000315: CALLDATALOAD
00000316: PUSH1 0x05
00000318: PUSH1 0x20
0000031a: MSTORE
0000031b: PUSH1 0x00
0000031d: SWAP1
0000031e: DUP2
0000031f: MSTORE
00000320: PUSH1 0x40
00000322: SWAP1
00000323: KECCAK256
00000324: SLOAD
00000325: DUP2
00000326: JUMP
00000327: JUMPDEST
00000328: PUSH2 0x0566
0000032b: PUSH1 0x01
0000032d: DUP1
0000032e: SLOAD
0000032f: PUSH1 0x40
00000331: DUP1
00000332: MLOAD
00000333: PUSH1 0x20
00000335: PUSH1 0x02
00000337: DUP5
00000338: DUP7
00000339: AND
0000033a: ISZERO
0000033b: PUSH2 0x0100
0000033e: MUL
0000033f: PUSH1 0x00
00000341: NOT
00000342: ADD
00000343: SWAP1
00000344: SWAP5
00000345: AND
00000346: SWAP4
00000347: SWAP1
00000348: SWAP4
00000349: DIV
0000034a: PUSH1 0x1f
0000034c: DUP2
0000034d: ADD
0000034e: DUP5
0000034f: SWAP1
00000350: DIV
00000351: DUP5
00000352: MUL
00000353: DUP3
00000354: ADD
00000355: DUP5
00000356: ADD
00000357: SWAP1
00000358: SWAP3
00000359: MSTORE
0000035a: DUP2
0000035b: DUP2
0000035c: MSTORE
0000035d: SWAP3
0000035e: SWAP2
0000035f: DUP4
00000360: ADD
00000361: DUP3
00000362: DUP3
00000363: DUP1
00000364: ISZERO
00000365: PUSH2 0x0628
00000368: JUMPI
00000369: DUP1
0000036a: PUSH1 0x1f
0000036c: LT
0000036d: PUSH2 0x05fd
00000370: JUMPI
00000371: PUSH2 0x0100
00000374: DUP1
00000375: DUP4
00000376: SLOAD
00000377: DIV
00000378: MUL
00000379: DUP4
0000037a: MSTORE
0000037b: SWAP2
0000037c: PUSH1 0x20
0000037e: ADD
0000037f: SWAP2
00000380: PUSH2 0x0628
00000383: JUMP
00000384: JUMPDEST
00000385: PUSH2 0x0564
00000388: PUSH1 0x04
0000038a: CALLDATALOAD
0000038b: PUSH1 0x24
0000038d: CALLDATALOAD
0000038e: PUSH1 0x01
00000390: PUSH1 0xa0
00000392: PUSH1 0x02
00000394: EXP
00000395: SUB
00000396: CALLER
00000397: AND
00000398: PUSH1 0x00
0000039a: SWAP1
0000039b: DUP2
0000039c: MSTORE
0000039d: PUSH1 0x05
0000039f: PUSH1 0x20
000003a1: MSTORE
000003a2: PUSH1 0x40
000003a4: SWAP1
000003a5: KECCAK256
000003a6: SLOAD
000003a7: DUP2
000003a8: SWAP1
000003a9: LT
000003aa: ISZERO
000003ab: PUSH2 0x07a3
000003ae: JUMPI
000003af: PUSH2 0x0002
000003b2: JUMP
000003b3: JUMPDEST
000003b4: PUSH1 0x40
000003b6: DUP1
000003b7: MLOAD
000003b8: PUSH1 0x20
000003ba: PUSH1 0x44
000003bc: CALLDATALOAD
000003bd: PUSH1 0x04
000003bf: DUP2
000003c0: DUP2
000003c1: ADD
000003c2: CALLDATALOAD
000003c3: PUSH1 0x1f
000003c5: DUP2
000003c6: ADD
000003c7: DUP5
000003c8: SWAP1
000003c9: DIV
000003ca: DUP5
000003cb: MUL
000003cc: DUP6
000003cd: ADD
000003ce: DUP5
000003cf: ADD
000003d0: SWAP1
000003d1: SWAP6
000003d2: MSTORE
000003d3: DUP5
000003d4: DUP5
000003d5: MSTORE
000003d6: PUSH2 0x05d4
000003d9: SWAP5
000003da: DUP2
000003db: CALLDATALOAD
000003dc: SWAP5
000003dd: PUSH1 0x24
000003df: DUP1
000003e0: CALLDATALOAD
000003e1: SWAP6
000003e2: SWAP4
000003e3: SWAP5
000003e4: PUSH1 0x64
000003e6: SWAP5
000003e7: SWAP3
000003e8: SWAP4
000003e9: SWAP2
000003ea: ADD
000003eb: SWAP2
000003ec: DUP2
000003ed: SWAP1
000003ee: DUP5
000003ef: ADD
000003f0: DUP4
000003f1: DUP3
000003f2: DUP1
000003f3: DUP3
000003f4: DUP5
000003f5: CALLDATACOPY
000003f6: POP
000003f7: SWAP5
000003f8: SWAP7
000003f9: POP
000003fa: POP
000003fb: POP
000003fc: POP
000003fd: POP
000003fe: POP
000003ff: POP
00000400: PUSH1 0x00
00000402: PUSH1 0x00
00000404: DUP4
00000405: PUSH1 0x06
00000407: PUSH1 0x00
00000409: POP
0000040a: PUSH1 0x00
0000040c: CALLER
0000040d: PUSH1 0x01
0000040f: PUSH1 0xa0
00000411: PUSH1 0x02
00000413: EXP
00000414: SUB
00000415: AND
00000416: DUP2
00000417: MSTORE
00000418: PUSH1 0x20
0000041a: ADD
0000041b: SWAP1
0000041c: DUP2
0000041d: MSTORE
0000041e: PUSH1 0x20
00000420: ADD
00000421: PUSH1 0x00
00000423: KECCAK256
00000424: PUSH1 0x00
00000426: POP
00000427: PUSH1 0x00
00000429: DUP8
0000042a: PUSH1 0x01
0000042c: PUSH1 0xa0
0000042e: PUSH1 0x02
00000430: EXP
00000431: SUB
00000432: AND
00000433: DUP2
00000434: MSTORE
00000435: PUSH1 0x20
00000437: ADD
00000438: SWAP1
00000439: DUP2
0000043a: MSTORE
0000043b: PUSH1 0x20
0000043d: ADD
0000043e: PUSH1 0x00
00000440: KECCAK256
00000441: PUSH1 0x00
00000443: POP
00000444: DUP2
00000445: SWAP1
00000446: SSTORE
00000447: POP
00000448: DUP5
00000449: SWAP1
0000044a: POP
0000044b: DUP1
0000044c: PUSH1 0x01
0000044e: PUSH1 0xa0
00000450: PUSH1 0x02
00000452: EXP
00000453: SUB
00000454: AND
00000455: PUSH4 0x8f4ffcb1
0000045a: CALLER
0000045b: DUP7
0000045c: ADDRESS
0000045d: DUP8
0000045e: PUSH1 0x40
00000460: MLOAD
00000461: DUP6
00000462: PUSH1 0xe0
00000464: PUSH1 0x02
00000466: EXP
00000467: MUL
00000468: DUP2
00000469: MSTORE
0000046a: PUSH1 0x04
0000046c: ADD
0000046d: DUP1
0000046e: DUP6
0000046f: PUSH1 0x01
00000471: PUSH1 0xa0
00000473: PUSH1 0x02
00000475: EXP
00000476: SUB
00000477: AND
00000478: DUP2
00000479: MSTORE
0000047a: PUSH1 0x20
0000047c: ADD
0000047d: DUP5
0000047e: DUP2
0000047f: MSTORE
00000480: PUSH1 0x20
00000482: ADD
00000483: DUP4
00000484: PUSH1 0x01
00000486: PUSH1 0xa0
00000488: PUSH1 0x02
0000048a: EXP
0000048b: SUB
0000048c: AND
0000048d: DUP2
0000048e: MSTORE
0000048f: PUSH1 0x20
00000491: ADD
00000492: DUP1
00000493: PUSH1 0x20
00000495: ADD
00000496: DUP3
00000497: DUP2
00000498: SUB
00000499: DUP3
0000049a: MSTORE
0000049b: DUP4
0000049c: DUP2
0000049d: DUP2
0000049e: MLOAD
0000049f: DUP2
000004a0: MSTORE
000004a1: PUSH1 0x20
000004a3: ADD
000004a4: SWAP2
000004a5: POP
000004a6: DUP1
000004a7: MLOAD
000004a8: SWAP1
000004a9: PUSH1 0x20
000004ab: ADD
000004ac: SWAP1
000004ad: DUP1
000004ae: DUP4
000004af: DUP4
000004b0: DUP3
000004b1: SWAP1
000004b2: PUSH1 0x00
000004b4: PUSH1 0x04
000004b6: PUSH1 0x20
000004b8: DUP5
000004b9: PUSH1 0x1f
000004bb: ADD
000004bc: DIV
000004bd: PUSH1 0x0f
000004bf: MUL
000004c0: PUSH1 0x03
000004c2: ADD
000004c3: CALL
000004c4: POP
000004c5: SWAP1
000004c6: POP
000004c7: SWAP1
000004c8: DUP2
000004c9: ADD
000004ca: SWAP1
000004cb: PUSH1 0x1f
000004cd: AND
000004ce: DUP1
000004cf: ISZERO
000004d0: PUSH2 0x04ed
000004d3: JUMPI
000004d4: DUP1
000004d5: DUP3
000004d6: SUB
000004d7: DUP1
000004d8: MLOAD
000004d9: PUSH1 0x01
000004db: DUP4
000004dc: PUSH1 0x20
000004de: SUB
000004df: PUSH2 0x0100
000004e2: EXP
000004e3: SUB
000004e4: NOT
000004e5: AND
000004e6: DUP2
000004e7: MSTORE
000004e8: PUSH1 0x20
000004ea: ADD
000004eb: SWAP2
000004ec: POP
000004ed: JUMPDEST
000004ee: POP
000004ef: SWAP6
000004f0: POP
000004f1: POP
000004f2: POP
000004f3: POP
000004f4: POP
000004f5: POP
000004f6: PUSH1 0x00
000004f8: PUSH1 0x40
000004fa: MLOAD
000004fb: DUP1
000004fc: DUP4
000004fd: SUB
000004fe: DUP2
000004ff: PUSH1 0x00
00000501: DUP8
00000502: PUSH2 0x61da
00000505: GAS
00000506: SUB
00000507: CALL
00000508: ISZERO
00000509: PUSH2 0x0002
0000050c: JUMPI
0000050d: POP
0000050e: PUSH1 0x01
00000510: SWAP8
00000511: SWAP7
00000512: POP
00000513: POP
00000514: POP
00000515: POP
00000516: POP
00000517: POP
00000518: POP
00000519: JUMP
0000051a: JUMPDEST
0000051b: PUSH1 0x07
0000051d: PUSH1 0x20
0000051f: SWAP1
00000520: DUP2
00000521: MSTORE
00000522: PUSH1 0x04
00000524: CALLDATALOAD
00000525: PUSH1 0x00
00000527: SWAP1
00000528: DUP2
00000529: MSTORE
0000052a: PUSH1 0x40
0000052c: DUP1
0000052d: DUP3
0000052e: KECCAK256
0000052f: SWAP1
00000530: SWAP3
00000531: MSTORE
00000532: PUSH1 0x24
00000534: CALLDATALOAD
00000535: DUP2
00000536: MSTORE
00000537: KECCAK256
00000538: SLOAD
00000539: PUSH2 0x05d4
0000053c: SWAP1
0000053d: DUP2
0000053e: JUMP
0000053f: JUMPDEST
00000540: PUSH1 0x06
00000542: PUSH1 0x20
00000544: SWAP1
00000545: DUP2
00000546: MSTORE
00000547: PUSH1 0x04
00000549: CALLDATALOAD
0000054a: PUSH1 0x00
0000054c: SWAP1
0000054d: DUP2
0000054e: MSTORE
0000054f: PUSH1 0x40
00000551: DUP1
00000552: DUP3
00000553: KECCAK256
00000554: SWAP1
00000555: SWAP3
00000556: MSTORE
00000557: PUSH1 0x24
00000559: CALLDATALOAD
0000055a: DUP2
0000055b: MSTORE
0000055c: KECCAK256
0000055d: SLOAD
0000055e: PUSH2 0x05d4
00000561: SWAP1
00000562: DUP2
00000563: JUMP
00000564: JUMPDEST
00000565: STOP
00000566: JUMPDEST
00000567: PUSH1 0x40
00000569: MLOAD
0000056a: DUP1
0000056b: DUP1
0000056c: PUSH1 0x20
0000056e: ADD
0000056f: DUP3
00000570: DUP2
00000571: SUB
00000572: DUP3
00000573: MSTORE
00000574: DUP4
00000575: DUP2
00000576: DUP2
00000577: MLOAD
00000578: DUP2
00000579: MSTORE
0000057a: PUSH1 0x20
0000057c: ADD
0000057d: SWAP2
0000057e: POP
0000057f: DUP1
00000580: MLOAD
00000581: SWAP1
00000582: PUSH1 0x20
00000584: ADD
00000585: SWAP1
00000586: DUP1
00000587: DUP4
00000588: DUP4
00000589: DUP3
0000058a: SWAP1
0000058b: PUSH1 0x00
0000058d: PUSH1 0x04
0000058f: PUSH1 0x20
00000591: DUP5
00000592: PUSH1 0x1f
00000594: ADD
00000595: DIV
00000596: PUSH1 0x0f
00000598: MUL
00000599: PUSH1 0x03
0000059b: ADD
0000059c: CALL
0000059d: POP
0000059e: SWAP1
0000059f: POP
000005a0: SWAP1
000005a1: DUP2
000005a2: ADD
000005a3: SWAP1
000005a4: PUSH1 0x1f
000005a6: AND
000005a7: DUP1
000005a8: ISZERO
000005a9: PUSH2 0x05c6
000005ac: JUMPI
000005ad: DUP1
000005ae: DUP3
000005af: SUB
000005b0: DUP1
000005b1: MLOAD
000005b2: PUSH1 0x01
000005b4: DUP4
000005b5: PUSH1 0x20
000005b7: SUB
000005b8: PUSH2 0x0100
000005bb: EXP
000005bc: SUB
000005bd: NOT
000005be: AND
000005bf: DUP2
000005c0: MSTORE
000005c1: PUSH1 0x20
000005c3: ADD
000005c4: SWAP2
000005c5: POP
000005c6: JUMPDEST
000005c7: POP
000005c8: SWAP3
000005c9: POP
000005ca: POP
000005cb: POP
000005cc: PUSH1 0x40
000005ce: MLOAD
000005cf: DUP1
000005d0: SWAP2
000005d1: SUB
000005d2: SWAP1
000005d3: RETURN
000005d4: JUMPDEST
000005d5: PUSH1 0x40
000005d7: DUP1
000005d8: MLOAD
000005d9: SWAP2
000005da: DUP3
000005db: MSTORE
000005dc: MLOAD
000005dd: SWAP1
000005de: DUP2
000005df: SWAP1
000005e0: SUB
000005e1: PUSH1 0x20
000005e3: ADD
000005e4: SWAP1
000005e5: RETURN
000005e6: JUMPDEST
000005e7: PUSH1 0x40
000005e9: DUP1
000005ea: MLOAD
000005eb: PUSH1 0xff
000005ed: SWAP3
000005ee: SWAP1
000005ef: SWAP3
000005f0: AND
000005f1: DUP3
000005f2: MSTORE
000005f3: MLOAD
000005f4: SWAP1
000005f5: DUP2
000005f6: SWAP1
000005f7: SUB
000005f8: PUSH1 0x20
000005fa: ADD
000005fb: SWAP1
000005fc: RETURN
000005fd: JUMPDEST
000005fe: DUP3
000005ff: ADD
00000600: SWAP2
00000601: SWAP1
00000602: PUSH1 0x00
00000604: MSTORE
00000605: PUSH1 0x20
00000607: PUSH1 0x00
00000609: KECCAK256
0000060a: SWAP1
0000060b: JUMPDEST
0000060c: DUP2
0000060d: SLOAD
0000060e: DUP2
0000060f: MSTORE
00000610: SWAP1
00000611: PUSH1 0x01
00000613: ADD
00000614: SWAP1
00000615: PUSH1 0x20
00000617: ADD
00000618: DUP1
00000619: DUP4
0000061a: GT
0000061b: PUSH2 0x060b
0000061e: JUMPI
0000061f: DUP3
00000620: SWAP1
00000621: SUB
00000622: PUSH1 0x1f
00000624: AND
00000625: DUP3
00000626: ADD
00000627: SWAP2
00000628: JUMPDEST
00000629: POP
0000062a: POP
0000062b: POP
0000062c: POP
0000062d: POP
0000062e: DUP2
0000062f: JUMP
00000630: JUMPDEST
00000631: DUP3
00000632: DUP1
00000633: ADD
00000634: PUSH1 0x01
00000636: ADD
00000637: DUP6
00000638: SSTORE
00000639: DUP3
0000063a: ISZERO
0000063b: PUSH2 0x02f3
0000063e: JUMPI
0000063f: SWAP2
00000640: DUP3
00000641: ADD
00000642: JUMPDEST
00000643: DUP3
00000644: DUP2
00000645: GT
00000646: ISZERO
00000647: PUSH2 0x02f3
0000064a: JUMPI
0000064b: DUP3
0000064c: MLOAD
0000064d: DUP3
0000064e: PUSH1 0x00
00000650: POP
00000651: SSTORE
00000652: SWAP2
00000653: PUSH1 0x20
00000655: ADD
00000656: SWAP2
00000657: SWAP1
00000658: PUSH1 0x01
0000065a: ADD
0000065b: SWAP1
0000065c: PUSH2 0x0642
0000065f: JUMP
00000660: JUMPDEST
00000661: POP
00000662: POP
00000663: DUP2
00000664: PUSH1 0x01
00000666: PUSH1 0x00
00000668: POP
00000669: SWAP1
0000066a: DUP1
0000066b: MLOAD
0000066c: SWAP1
0000066d: PUSH1 0x20
0000066f: ADD
00000670: SWAP1
00000671: DUP3
00000672: DUP1
00000673: SLOAD
00000674: PUSH1 0x01
00000676: DUP2
00000677: PUSH1 0x01
00000679: AND
0000067a: ISZERO
0000067b: PUSH2 0x0100
0000067e: MUL
0000067f: SUB
00000680: AND
00000681: PUSH1 0x02
00000683: SWAP1
00000684: DIV
00000685: SWAP1
00000686: PUSH1 0x00
00000688: MSTORE
00000689: PUSH1 0x20
0000068b: PUSH1 0x00
0000068d: KECCAK256
0000068e: SWAP1
0000068f: PUSH1 0x1f
00000691: ADD
00000692: PUSH1 0x20
00000694: SWAP1
00000695: DIV
00000696: DUP2
00000697: ADD
00000698: SWAP3
00000699: DUP3
0000069a: PUSH1 0x1f
0000069c: LT
0000069d: PUSH2 0x06bd
000006a0: JUMPI
000006a1: DUP1
000006a2: MLOAD
000006a3: PUSH1 0xff
000006a5: NOT
000006a6: AND
000006a7: DUP4
000006a8: DUP1
000006a9: ADD
000006aa: OR
000006ab: DUP6
000006ac: SSTORE
000006ad: JUMPDEST
000006ae: POP
000006af: PUSH2 0x06ed
000006b2: SWAP3
000006b3: SWAP2
000006b4: POP
000006b5: PUSH2 0x02fb
000006b8: JUMP
000006b9: JUMPDEST
000006ba: POP
000006bb: SWAP1
000006bc: JUMP
000006bd: JUMPDEST
000006be: DUP3
000006bf: DUP1
000006c0: ADD
000006c1: PUSH1 0x01
000006c3: ADD
000006c4: DUP6
000006c5: SSTORE
000006c6: DUP3
000006c7: ISZERO
000006c8: PUSH2 0x06ad
000006cb: JUMPI
000006cc: SWAP2
000006cd: DUP3
000006ce: ADD
000006cf: JUMPDEST
000006d0: DUP3
000006d1: DUP2
000006d2: GT
000006d3: ISZERO
000006d4: PUSH2 0x06ad
000006d7: JUMPI
000006d8: DUP3
000006d9: MLOAD
000006da: DUP3
000006db: PUSH1 0x00
000006dd: POP
000006de: SSTORE
000006df: SWAP2
000006e0: PUSH1 0x20
000006e2: ADD
000006e3: SWAP2
000006e4: SWAP1
000006e5: PUSH1 0x01
000006e7: ADD
000006e8: SWAP1
000006e9: PUSH2 0x06cf
000006ec: JUMP
000006ed: JUMPDEST
000006ee: POP
000006ef: POP
000006f0: PUSH1 0x03
000006f2: DUP1
000006f3: SLOAD
000006f4: PUSH1 0xff
000006f6: NOT
000006f7: AND
000006f8: DUP5
000006f9: OR
000006fa: SWAP1
000006fb: SSTORE
000006fc: PUSH1 0x02
000006fe: DUP1
000006ff: SLOAD
00000700: DUP3
00000701: MLOAD
00000702: PUSH1 0x00
00000704: DUP4
00000705: SWAP1
00000706: MSTORE
00000707: PUSH32 0x405787fa12a823e0f2b7631cc41b3ba8828b3321ca811111fa75cd3aa3bb5ace
00000728: PUSH1 0x20
0000072a: PUSH1 0x01
0000072c: DUP5
0000072d: AND
0000072e: ISZERO
0000072f: PUSH2 0x0100
00000732: MUL
00000733: PUSH1 0x00
00000735: NOT
00000736: ADD
00000737: SWAP1
00000738: SWAP4
00000739: AND
0000073a: DUP5
0000073b: SWAP1
0000073c: DIV
0000073d: PUSH1 0x1f
0000073f: SWAP1
00000740: DUP2
00000741: ADD
00000742: DUP5
00000743: SWAP1
00000744: DIV
00000745: DUP3
00000746: ADD
00000747: SWAP4
00000748: DUP7
00000749: ADD
0000074a: SWAP1
0000074b: DUP4
0000074c: SWAP1
0000074d: LT
0000074e: PUSH2 0x076a
00000751: JUMPI
00000752: DUP1
00000753: MLOAD
00000754: PUSH1 0xff
00000756: NOT
00000757: AND
00000758: DUP4
00000759: DUP1
0000075a: ADD
0000075b: OR
0000075c: DUP6
0000075d: SSTORE
0000075e: JUMPDEST
0000075f: POP
00000760: PUSH2 0x079a
00000763: SWAP3
00000764: SWAP2
00000765: POP
00000766: PUSH2 0x02fb
00000769: JUMP
0000076a: JUMPDEST
0000076b: DUP3
0000076c: DUP1
0000076d: ADD
0000076e: PUSH1 0x01
00000770: ADD
00000771: DUP6
00000772: SSTORE
00000773: DUP3
00000774: ISZERO
00000775: PUSH2 0x075e
00000778: JUMPI
00000779: SWAP2
0000077a: DUP3
0000077b: ADD
0000077c: JUMPDEST
0000077d: DUP3
0000077e: DUP2
0000077f: GT
00000780: ISZERO
00000781: PUSH2 0x075e
00000784: JUMPI
00000785: DUP3
00000786: MLOAD
00000787: DUP3
00000788: PUSH1 0x00
0000078a: POP
0000078b: SSTORE
0000078c: SWAP2
0000078d: PUSH1 0x20
0000078f: ADD
00000790: SWAP2
00000791: SWAP1
00000792: PUSH1 0x01
00000794: ADD
00000795: SWAP1
00000796: PUSH2 0x077c
00000799: JUMP
0000079a: JUMPDEST
0000079b: POP
0000079c: POP
0000079d: POP
0000079e: POP
0000079f: POP
000007a0: POP
000007a1: POP
000007a2: JUMP
000007a3: JUMPDEST
000007a4: PUSH1 0x01
000007a6: PUSH1 0xa0
000007a8: PUSH1 0x02
000007aa: EXP
000007ab: SUB
000007ac: DUP3
000007ad: AND
000007ae: PUSH1 0x00
000007b0: SWAP1
000007b1: DUP2
000007b2: MSTORE
000007b3: PUSH1 0x05
000007b5: PUSH1 0x20
000007b7: MSTORE
000007b8: PUSH1 0x40
000007ba: SWAP1
000007bb: KECCAK256
000007bc: SLOAD
000007bd: DUP2
000007be: DUP2
000007bf: ADD
000007c0: LT
000007c1: ISZERO
000007c2: PUSH2 0x07ca
000007c5: JUMPI
000007c6: PUSH2 0x0002
000007c9: JUMP
000007ca: JUMPDEST
000007cb: PUSH1 0x01
000007cd: PUSH1 0xa0
000007cf: PUSH1 0x02
000007d1: EXP
000007d2: SUB
000007d3: CALLER
000007d4: DUP2
000007d5: AND
000007d6: PUSH1 0x00
000007d8: DUP2
000007d9: DUP2
000007da: MSTORE
000007db: PUSH1 0x05
000007dd: PUSH1 0x20
000007df: SWAP1
000007e0: DUP2
000007e1: MSTORE
000007e2: PUSH1 0x40
000007e4: DUP1
000007e5: DUP4
000007e6: KECCAK256
000007e7: DUP1
000007e8: SLOAD
000007e9: DUP8
000007ea: SWAP1
000007eb: SUB
000007ec: SWAP1
000007ed: SSTORE
000007ee: SWAP4
000007ef: DUP7
000007f0: AND
000007f1: DUP1
000007f2: DUP4
000007f3: MSTORE
000007f4: SWAP2
000007f5: DUP5
000007f6: SWAP1
000007f7: KECCAK256
000007f8: DUP1
000007f9: SLOAD
000007fa: DUP7
000007fb: ADD
000007fc: SWAP1
000007fd: SSTORE
000007fe: DUP4
000007ff: MLOAD
00000800: DUP6
00000801: DUP2
00000802: MSTORE
00000803: SWAP4
00000804: MLOAD
00000805: SWAP2
00000806: SWAP4
00000807: PUSH32 0xddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef
00000828: SWAP3
00000829: SWAP1
0000082a: DUP2
0000082b: SWAP1
0000082c: SUB
0000082d: SWAP1
0000082e: SWAP2
0000082f: ADD
00000830: SWAP1
00000831: LOG3
00000832: POP
00000833: POP
00000834: JUMP
00000835: JUMPDEST
00000836: PUSH1 0x01
00000838: PUSH1 0xa0
0000083a: PUSH1 0x02
0000083c: EXP
0000083d: SUB
0000083e: DUP4
0000083f: AND
00000840: PUSH1 0x00
00000842: SWAP1
00000843: DUP2
00000844: MSTORE
00000845: PUSH1 0x05
00000847: PUSH1 0x20
00000849: MSTORE
0000084a: PUSH1 0x40
0000084c: SWAP1
0000084d: KECCAK256
0000084e: SLOAD
0000084f: DUP1
00000850: DUP4
00000851: ADD
00000852: LT
00000853: ISZERO
00000854: PUSH2 0x085c
00000857: JUMPI
00000858: PUSH2 0x0002
0000085b: JUMP
0000085c: JUMPDEST
0000085d: PUSH1 0x01
0000085f: PUSH1 0xa0
00000861: PUSH1 0x02
00000863: EXP
00000864: SUB
00000865: DUP5
00000866: DUP2
00000867: AND
00000868: PUSH1 0x00
0000086a: DUP2
0000086b: DUP2
0000086c: MSTORE
0000086d: PUSH1 0x06
0000086f: PUSH1 0x20
00000871: SWAP1
00000872: DUP2
00000873: MSTORE
00000874: PUSH1 0x40
00000876: DUP1
00000877: DUP4
00000878: KECCAK256
00000879: CALLER
0000087a: SWAP6
0000087b: SWAP1
0000087c: SWAP6
0000087d: AND
0000087e: DUP1
0000087f: DUP5
00000880: MSTORE
00000881: SWAP5
00000882: DUP3
00000883: MSTORE
00000884: DUP1
00000885: DUP4
00000886: KECCAK256
00000887: SLOAD
00000888: SWAP4
00000889: DUP4
0000088a: MSTORE
0000088b: PUSH1 0x07
0000088d: DUP3
0000088e: MSTORE
0000088f: DUP1
00000890: DUP4
00000891: KECCAK256
00000892: SWAP5
00000893: DUP4
00000894: MSTORE
00000895: SWAP4
00000896: SWAP1
00000897: MSTORE
00000898: SWAP2
00000899: SWAP1
0000089a: SWAP2
0000089b: KECCAK256
0000089c: SLOAD
0000089d: DUP4
0000089e: ADD
0000089f: GT
000008a0: ISZERO
000008a1: PUSH2 0x08a9
000008a4: JUMPI
000008a5: PUSH2 0x0002
000008a8: JUMP
000008a9: JUMPDEST
000008aa: PUSH1 0x01
000008ac: PUSH1 0xa0
000008ae: PUSH1 0x02
000008b0: EXP
000008b1: SUB
000008b2: DUP5
000008b3: DUP2
000008b4: AND
000008b5: PUSH1 0x00
000008b7: DUP2
000008b8: DUP2
000008b9: MSTORE
000008ba: PUSH1 0x05
000008bc: PUSH1 0x20
000008be: SWAP1
000008bf: DUP2
000008c0: MSTORE
000008c1: PUSH1 0x40
000008c3: DUP1
000008c4: DUP4
000008c5: KECCAK256
000008c6: DUP1
000008c7: SLOAD
000008c8: DUP9
000008c9: SWAP1
000008ca: SUB
000008cb: SWAP1
000008cc: SSTORE
000008cd: DUP8
000008ce: DUP6
000008cf: AND
000008d0: DUP1
000008d1: DUP5
000008d2: MSTORE
000008d3: DUP2
000008d4: DUP5
000008d5: KECCAK256
000008d6: DUP1
000008d7: SLOAD
000008d8: DUP10
000008d9: ADD
000008da: SWAP1
000008db: SSTORE
000008dc: DUP5
000008dd: DUP5
000008de: MSTORE
000008df: PUSH1 0x07
000008e1: DUP4
000008e2: MSTORE
000008e3: DUP2
000008e4: DUP5
000008e5: KECCAK256
000008e6: CALLER
000008e7: SWAP7
000008e8: SWAP1
000008e9: SWAP7
000008ea: AND
000008eb: DUP5
000008ec: MSTORE
000008ed: SWAP5
000008ee: DUP3
000008ef: MSTORE
000008f0: SWAP2
000008f1: DUP3
000008f2: SWAP1
000008f3: KECCAK256
000008f4: DUP1
000008f5: SLOAD
000008f6: DUP8
000008f7: ADD
000008f8: SWAP1
000008f9: SSTORE
000008fa: DUP2
000008fb: MLOAD
000008fc: DUP7
000008fd: DUP2
000008fe: MSTORE
000008ff: SWAP2
00000900: MLOAD
00000901: PUSH32 0xddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef
00000922: SWAP3
00000923: DUP2
00000924: SWAP1
00000925: SUB
00000926: SWAP1
00000927: SWAP2
00000928: ADD
00000929: SWAP1
0000092a: LOG3
0000092b: POP
0000092c: PUSH1 0x01
0000092e: SWAP4
0000092f: SWAP3
00000930: POP
00000931: POP
00000932: POP
00000933: 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 yes yes
view
trace_id: 0x82287b96aaa583c29237a4cf0168401478b0ad8618b48207e85bf811199e34e1
call_targets: 0x0000000000000000000000000000000000000004, 0x9dd6b91ed221b1c0014fce31ffae32ff0e7d35ec
target_varies: yes
classification: target_varies
validation_json
{
    "sink": "CALL",
    "errors": 0,
    "status": "confirmed",
    "attempts": 1,
    "trace_id": "0x82287b96aaa583c29237a4cf0168401478b0ad8618b48207e85bf811199e34e1",
    "confirmed": true,
    "trace_mode": "callTracer",
    "call_targets": [
        "0x0000000000000000000000000000000000000004",
        "0x9dd6b91ed221b1c0014fce31ffae32ff0e7d35ec"
    ],
    "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": "0x06fdde03",
            "selector": "0x06fdde03",
            "calldata_variants": [
                "0x06fdde03",
                "0x06fdde030000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x18160ddd",
            "selector": "0x18160ddd",
            "calldata_variants": [
                "0x18160ddd",
                "0x18160ddd0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x23b872dd",
            "selector": "0x23b872dd",
            "calldata_variants": [
                "0x23b872dd",
                "0x23b872dd0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x313ce567",
            "selector": "0x313ce567",
            "calldata_variants": [
                "0x313ce567",
                "0x313ce5670000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x54fd4d50",
            "selector": "0x54fd4d50",
            "calldata_variants": [
                "0x54fd4d50",
                "0x54fd4d500000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x668ad45f",
            "selector": "0x668ad45f",
            "calldata_variants": [
                "0x668ad45f",
                "0x668ad45f0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x70a08231",
            "selector": "0x70a08231",
            "calldata_variants": [
                "0x70a08231",
                "0x70a082310000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x95d89b41",
            "selector": "0x95d89b41",
            "calldata_variants": [
                "0x95d89b41",
                "0x95d89b410000000000000000000000000000000000000000000000000000000000000000"
            ]
        }
    ]
}
evidence_json
{
    "examples": [
        {
            "pc": 1219,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        },
        {
            "pc": 1287,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        },
        {
            "pc": 1436,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        }
    ],
    "call_count": 3,
    "guards_detected": [],
    "untrusted_call_count": 3
}
high other detector ETH value transfer possible 55 yes yes
view
trace_id: 0x82287b96aaa583c29237a4cf0168401478b0ad8618b48207e85bf811199e34e1
call_targets: 0x0000000000000000000000000000000000000004, 0x9dd6b91ed221b1c0014fce31ffae32ff0e7d35ec
target_varies: yes
classification: target_varies
validation_json
{
    "sink": "CALL",
    "errors": 0,
    "status": "confirmed",
    "attempts": 1,
    "trace_id": "0x82287b96aaa583c29237a4cf0168401478b0ad8618b48207e85bf811199e34e1",
    "confirmed": true,
    "trace_mode": "callTracer",
    "call_targets": [
        "0x0000000000000000000000000000000000000004",
        "0x9dd6b91ed221b1c0014fce31ffae32ff0e7d35ec"
    ],
    "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": "0x06fdde03",
            "selector": "0x06fdde03",
            "calldata_variants": [
                "0x06fdde03",
                "0x06fdde030000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x18160ddd",
            "selector": "0x18160ddd",
            "calldata_variants": [
                "0x18160ddd",
                "0x18160ddd0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x23b872dd",
            "selector": "0x23b872dd",
            "calldata_variants": [
                "0x23b872dd",
                "0x23b872dd0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x313ce567",
            "selector": "0x313ce567",
            "calldata_variants": [
                "0x313ce567",
                "0x313ce5670000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x54fd4d50",
            "selector": "0x54fd4d50",
            "calldata_variants": [
                "0x54fd4d50",
                "0x54fd4d500000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x668ad45f",
            "selector": "0x668ad45f",
            "calldata_variants": [
                "0x668ad45f",
                "0x668ad45f0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x70a08231",
            "selector": "0x70a08231",
            "calldata_variants": [
                "0x70a08231",
                "0x70a082310000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x95d89b41",
            "selector": "0x95d89b41",
            "calldata_variants": [
                "0x95d89b41",
                "0x95d89b410000000000000000000000000000000000000000000000000000000000000000"
            ]
        }
    ]
}
evidence_json
{
    "examples": [
        {
            "pc": 1219,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        },
        {
            "pc": 1287,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        },
        {
            "pc": 1436,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        }
    ],
    "eth_value_calls": 3,
    "guards_detected": []
}