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

Analysis Run

019b3836-5b29-70dd-a20a-650a341bf4e6

complete
Chain ID
1
Address
Block Number
Created
Fri, Dec 19, 2025 8:04 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
9009 artifact.fetch complete 1 / 3 3 months ago
9010 tool.cast_disasm complete 1 / 3 3 months ago
52612 analysis.bundle complete 1 / 3 1 week ago
52613 capability.graph complete 1 / 3 1 week ago
52614 detector.run complete 1 / 3 1 week ago
52615 validation.fork complete 1 / 3 1 week ago
113419 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-99zqpaer
model: gpt-5.4
provider: openai
approval: never
sandbox: read-only
reasoning effort: high
reasoning summaries: none
session id: 019d5c93-65fe-7320-bfdd-7073870ed0c0
--------
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:37:38.583284+00:00",
        "returncode": 1
    },
    "project": {
        "mode": "bytecode",
        "bytecode_length": 6666,
        "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)
6
EXT*/BALANCE
1
Total opcodes
1997
Flags
No heuristic flags raised.
View cast disassembly output
00000000: PUSH1 0x60
00000002: PUSH1 0x40
00000004: MSTORE
00000005: CALLDATASIZE
00000006: ISZERO
00000007: PUSH2 0x00c1
0000000a: JUMPI
0000000b: PUSH1 0x00
0000000d: CALLDATALOAD
0000000e: PUSH29 0x0100000000000000000000000000000000000000000000000000000000
0000002c: SWAP1
0000002d: DIV
0000002e: DUP1
0000002f: PUSH4 0x06fdde03
00000034: EQ
00000035: PUSH2 0x00ca
00000038: JUMPI
00000039: DUP1
0000003a: PUSH4 0x095ea7b3
0000003f: EQ
00000040: PUSH2 0x0145
00000043: JUMPI
00000044: DUP1
00000045: PUSH4 0x18160ddd
0000004a: EQ
0000004b: PUSH2 0x017c
0000004e: JUMPI
0000004f: DUP1
00000050: PUSH4 0x23b872dd
00000055: EQ
00000056: PUSH2 0x019f
00000059: JUMPI
0000005a: DUP1
0000005b: PUSH4 0x313ce567
00000060: EQ
00000061: PUSH2 0x01df
00000064: JUMPI
00000065: DUP1
00000066: PUSH4 0x5a3b7e42
0000006b: EQ
0000006c: PUSH2 0x0205
0000006f: JUMPI
00000070: DUP1
00000071: PUSH4 0x70a08231
00000076: EQ
00000077: PUSH2 0x0280
0000007a: JUMPI
0000007b: DUP1
0000007c: PUSH4 0x836a1e23
00000081: EQ
00000082: PUSH2 0x02ac
00000085: JUMPI
00000086: DUP1
00000087: PUSH4 0x8da5cb5b
0000008c: EQ
0000008d: PUSH2 0x02bb
00000090: JUMPI
00000091: DUP1
00000092: PUSH4 0x95d89b41
00000097: EQ
00000098: PUSH2 0x02f4
0000009b: JUMPI
0000009c: DUP1
0000009d: PUSH4 0xa9059cbb
000000a2: EQ
000000a3: PUSH2 0x036f
000000a6: JUMPI
000000a7: DUP1
000000a8: PUSH4 0xcae9ca51
000000ad: EQ
000000ae: PUSH2 0x0390
000000b1: JUMPI
000000b2: DUP1
000000b3: PUSH4 0xdd62ed3e
000000b8: EQ
000000b9: PUSH2 0x040e
000000bc: JUMPI
000000bd: PUSH2 0x00c1
000000c0: JUMP
000000c1: JUMPDEST
000000c2: PUSH2 0x00c8
000000c5: JUMPDEST
000000c6: JUMPDEST
000000c7: JUMP
000000c8: JUMPDEST
000000c9: STOP
000000ca: JUMPDEST
000000cb: PUSH2 0x00d7
000000ce: PUSH1 0x04
000000d0: DUP1
000000d1: POP
000000d2: POP
000000d3: PUSH2 0x0443
000000d6: JUMP
000000d7: JUMPDEST
000000d8: PUSH1 0x40
000000da: MLOAD
000000db: DUP1
000000dc: DUP1
000000dd: PUSH1 0x20
000000df: ADD
000000e0: DUP3
000000e1: DUP2
000000e2: SUB
000000e3: DUP3
000000e4: MSTORE
000000e5: DUP4
000000e6: DUP2
000000e7: DUP2
000000e8: MLOAD
000000e9: DUP2
000000ea: MSTORE
000000eb: PUSH1 0x20
000000ed: ADD
000000ee: SWAP2
000000ef: POP
000000f0: DUP1
000000f1: MLOAD
000000f2: SWAP1
000000f3: PUSH1 0x20
000000f5: ADD
000000f6: SWAP1
000000f7: DUP1
000000f8: DUP4
000000f9: DUP4
000000fa: DUP3
000000fb: SWAP1
000000fc: PUSH1 0x00
000000fe: PUSH1 0x04
00000100: PUSH1 0x20
00000102: DUP5
00000103: PUSH1 0x1f
00000105: ADD
00000106: DIV
00000107: PUSH1 0x03
00000109: MUL
0000010a: PUSH1 0x0f
0000010c: ADD
0000010d: CALL
0000010e: POP
0000010f: SWAP1
00000110: POP
00000111: SWAP1
00000112: DUP2
00000113: ADD
00000114: SWAP1
00000115: PUSH1 0x1f
00000117: AND
00000118: DUP1
00000119: ISZERO
0000011a: PUSH2 0x0137
0000011d: JUMPI
0000011e: DUP1
0000011f: DUP3
00000120: SUB
00000121: DUP1
00000122: MLOAD
00000123: PUSH1 0x01
00000125: DUP4
00000126: PUSH1 0x20
00000128: SUB
00000129: PUSH2 0x0100
0000012c: EXP
0000012d: SUB
0000012e: NOT
0000012f: AND
00000130: DUP2
00000131: MSTORE
00000132: PUSH1 0x20
00000134: ADD
00000135: SWAP2
00000136: POP
00000137: JUMPDEST
00000138: POP
00000139: SWAP3
0000013a: POP
0000013b: POP
0000013c: POP
0000013d: PUSH1 0x40
0000013f: MLOAD
00000140: DUP1
00000141: SWAP2
00000142: SUB
00000143: SWAP1
00000144: RETURN
00000145: JUMPDEST
00000146: PUSH2 0x0164
00000149: PUSH1 0x04
0000014b: DUP1
0000014c: DUP1
0000014d: CALLDATALOAD
0000014e: SWAP1
0000014f: PUSH1 0x20
00000151: ADD
00000152: SWAP1
00000153: SWAP2
00000154: SWAP1
00000155: DUP1
00000156: CALLDATALOAD
00000157: SWAP1
00000158: PUSH1 0x20
0000015a: ADD
0000015b: SWAP1
0000015c: SWAP2
0000015d: SWAP1
0000015e: POP
0000015f: POP
00000160: PUSH2 0x04e4
00000163: JUMP
00000164: JUMPDEST
00000165: PUSH1 0x40
00000167: MLOAD
00000168: DUP1
00000169: DUP3
0000016a: ISZERO
0000016b: ISZERO
0000016c: DUP2
0000016d: MSTORE
0000016e: PUSH1 0x20
00000170: ADD
00000171: SWAP2
00000172: POP
00000173: POP
00000174: PUSH1 0x40
00000176: MLOAD
00000177: DUP1
00000178: SWAP2
00000179: SUB
0000017a: SWAP1
0000017b: RETURN
0000017c: JUMPDEST
0000017d: PUSH2 0x0189
00000180: PUSH1 0x04
00000182: DUP1
00000183: POP
00000184: POP
00000185: PUSH2 0x0553
00000188: JUMP
00000189: JUMPDEST
0000018a: PUSH1 0x40
0000018c: MLOAD
0000018d: DUP1
0000018e: DUP3
0000018f: DUP2
00000190: MSTORE
00000191: PUSH1 0x20
00000193: ADD
00000194: SWAP2
00000195: POP
00000196: POP
00000197: PUSH1 0x40
00000199: MLOAD
0000019a: DUP1
0000019b: SWAP2
0000019c: SUB
0000019d: SWAP1
0000019e: RETURN
0000019f: JUMPDEST
000001a0: PUSH2 0x01c7
000001a3: PUSH1 0x04
000001a5: DUP1
000001a6: DUP1
000001a7: CALLDATALOAD
000001a8: SWAP1
000001a9: PUSH1 0x20
000001ab: ADD
000001ac: SWAP1
000001ad: SWAP2
000001ae: SWAP1
000001af: DUP1
000001b0: CALLDATALOAD
000001b1: SWAP1
000001b2: PUSH1 0x20
000001b4: ADD
000001b5: SWAP1
000001b6: SWAP2
000001b7: SWAP1
000001b8: DUP1
000001b9: CALLDATALOAD
000001ba: SWAP1
000001bb: PUSH1 0x20
000001bd: ADD
000001be: SWAP1
000001bf: SWAP2
000001c0: SWAP1
000001c1: POP
000001c2: POP
000001c3: PUSH2 0x055c
000001c6: JUMP
000001c7: JUMPDEST
000001c8: PUSH1 0x40
000001ca: MLOAD
000001cb: DUP1
000001cc: DUP3
000001cd: ISZERO
000001ce: ISZERO
000001cf: DUP2
000001d0: MSTORE
000001d1: PUSH1 0x20
000001d3: ADD
000001d4: SWAP2
000001d5: POP
000001d6: POP
000001d7: PUSH1 0x40
000001d9: MLOAD
000001da: DUP1
000001db: SWAP2
000001dc: SUB
000001dd: SWAP1
000001de: RETURN
000001df: JUMPDEST
000001e0: PUSH2 0x01ec
000001e3: PUSH1 0x04
000001e5: DUP1
000001e6: POP
000001e7: POP
000001e8: PUSH2 0x07c0
000001eb: JUMP
000001ec: JUMPDEST
000001ed: PUSH1 0x40
000001ef: MLOAD
000001f0: DUP1
000001f1: DUP3
000001f2: PUSH1 0xff
000001f4: AND
000001f5: DUP2
000001f6: MSTORE
000001f7: PUSH1 0x20
000001f9: ADD
000001fa: SWAP2
000001fb: POP
000001fc: POP
000001fd: PUSH1 0x40
000001ff: MLOAD
00000200: DUP1
00000201: SWAP2
00000202: SUB
00000203: SWAP1
00000204: RETURN
00000205: JUMPDEST
00000206: PUSH2 0x0212
00000209: PUSH1 0x04
0000020b: DUP1
0000020c: POP
0000020d: POP
0000020e: PUSH2 0x07d3
00000211: JUMP
00000212: JUMPDEST
00000213: PUSH1 0x40
00000215: MLOAD
00000216: DUP1
00000217: DUP1
00000218: PUSH1 0x20
0000021a: ADD
0000021b: DUP3
0000021c: DUP2
0000021d: SUB
0000021e: DUP3
0000021f: MSTORE
00000220: DUP4
00000221: DUP2
00000222: DUP2
00000223: MLOAD
00000224: DUP2
00000225: MSTORE
00000226: PUSH1 0x20
00000228: ADD
00000229: SWAP2
0000022a: POP
0000022b: DUP1
0000022c: MLOAD
0000022d: SWAP1
0000022e: PUSH1 0x20
00000230: ADD
00000231: SWAP1
00000232: DUP1
00000233: DUP4
00000234: DUP4
00000235: DUP3
00000236: SWAP1
00000237: PUSH1 0x00
00000239: PUSH1 0x04
0000023b: PUSH1 0x20
0000023d: DUP5
0000023e: PUSH1 0x1f
00000240: ADD
00000241: DIV
00000242: PUSH1 0x03
00000244: MUL
00000245: PUSH1 0x0f
00000247: ADD
00000248: CALL
00000249: POP
0000024a: SWAP1
0000024b: POP
0000024c: SWAP1
0000024d: DUP2
0000024e: ADD
0000024f: SWAP1
00000250: PUSH1 0x1f
00000252: AND
00000253: DUP1
00000254: ISZERO
00000255: PUSH2 0x0272
00000258: JUMPI
00000259: DUP1
0000025a: DUP3
0000025b: SUB
0000025c: DUP1
0000025d: MLOAD
0000025e: PUSH1 0x01
00000260: DUP4
00000261: PUSH1 0x20
00000263: SUB
00000264: PUSH2 0x0100
00000267: EXP
00000268: SUB
00000269: NOT
0000026a: AND
0000026b: DUP2
0000026c: MSTORE
0000026d: PUSH1 0x20
0000026f: ADD
00000270: SWAP2
00000271: POP
00000272: JUMPDEST
00000273: POP
00000274: SWAP3
00000275: POP
00000276: POP
00000277: POP
00000278: PUSH1 0x40
0000027a: MLOAD
0000027b: DUP1
0000027c: SWAP2
0000027d: SUB
0000027e: SWAP1
0000027f: RETURN
00000280: JUMPDEST
00000281: PUSH2 0x0296
00000284: PUSH1 0x04
00000286: DUP1
00000287: DUP1
00000288: CALLDATALOAD
00000289: SWAP1
0000028a: PUSH1 0x20
0000028c: ADD
0000028d: SWAP1
0000028e: SWAP2
0000028f: SWAP1
00000290: POP
00000291: POP
00000292: PUSH2 0x0874
00000295: JUMP
00000296: JUMPDEST
00000297: PUSH1 0x40
00000299: MLOAD
0000029a: DUP1
0000029b: DUP3
0000029c: DUP2
0000029d: MSTORE
0000029e: PUSH1 0x20
000002a0: ADD
000002a1: SWAP2
000002a2: POP
000002a3: POP
000002a4: PUSH1 0x40
000002a6: MLOAD
000002a7: DUP1
000002a8: SWAP2
000002a9: SUB
000002aa: SWAP1
000002ab: RETURN
000002ac: JUMPDEST
000002ad: PUSH2 0x02b9
000002b0: PUSH1 0x04
000002b2: DUP1
000002b3: POP
000002b4: POP
000002b5: PUSH2 0x088f
000002b8: JUMP
000002b9: JUMPDEST
000002ba: STOP
000002bb: JUMPDEST
000002bc: PUSH2 0x02c8
000002bf: PUSH1 0x04
000002c1: DUP1
000002c2: POP
000002c3: POP
000002c4: PUSH2 0x095a
000002c7: JUMP
000002c8: JUMPDEST
000002c9: PUSH1 0x40
000002cb: MLOAD
000002cc: DUP1
000002cd: DUP3
000002ce: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000002e3: AND
000002e4: DUP2
000002e5: MSTORE
000002e6: PUSH1 0x20
000002e8: ADD
000002e9: SWAP2
000002ea: POP
000002eb: POP
000002ec: PUSH1 0x40
000002ee: MLOAD
000002ef: DUP1
000002f0: SWAP2
000002f1: SUB
000002f2: SWAP1
000002f3: RETURN
000002f4: JUMPDEST
000002f5: PUSH2 0x0301
000002f8: PUSH1 0x04
000002fa: DUP1
000002fb: POP
000002fc: POP
000002fd: PUSH2 0x0980
00000300: JUMP
00000301: JUMPDEST
00000302: PUSH1 0x40
00000304: MLOAD
00000305: DUP1
00000306: DUP1
00000307: PUSH1 0x20
00000309: ADD
0000030a: DUP3
0000030b: DUP2
0000030c: SUB
0000030d: DUP3
0000030e: MSTORE
0000030f: DUP4
00000310: DUP2
00000311: DUP2
00000312: MLOAD
00000313: DUP2
00000314: MSTORE
00000315: PUSH1 0x20
00000317: ADD
00000318: SWAP2
00000319: POP
0000031a: DUP1
0000031b: MLOAD
0000031c: SWAP1
0000031d: PUSH1 0x20
0000031f: ADD
00000320: SWAP1
00000321: DUP1
00000322: DUP4
00000323: DUP4
00000324: DUP3
00000325: SWAP1
00000326: PUSH1 0x00
00000328: PUSH1 0x04
0000032a: PUSH1 0x20
0000032c: DUP5
0000032d: PUSH1 0x1f
0000032f: ADD
00000330: DIV
00000331: PUSH1 0x03
00000333: MUL
00000334: PUSH1 0x0f
00000336: ADD
00000337: CALL
00000338: POP
00000339: SWAP1
0000033a: POP
0000033b: SWAP1
0000033c: DUP2
0000033d: ADD
0000033e: SWAP1
0000033f: PUSH1 0x1f
00000341: AND
00000342: DUP1
00000343: ISZERO
00000344: PUSH2 0x0361
00000347: JUMPI
00000348: DUP1
00000349: DUP3
0000034a: SUB
0000034b: DUP1
0000034c: MLOAD
0000034d: PUSH1 0x01
0000034f: DUP4
00000350: PUSH1 0x20
00000352: SUB
00000353: PUSH2 0x0100
00000356: EXP
00000357: SUB
00000358: NOT
00000359: AND
0000035a: DUP2
0000035b: MSTORE
0000035c: PUSH1 0x20
0000035e: ADD
0000035f: SWAP2
00000360: POP
00000361: JUMPDEST
00000362: POP
00000363: SWAP3
00000364: POP
00000365: POP
00000366: POP
00000367: PUSH1 0x40
00000369: MLOAD
0000036a: DUP1
0000036b: SWAP2
0000036c: SUB
0000036d: SWAP1
0000036e: RETURN
0000036f: JUMPDEST
00000370: PUSH2 0x038e
00000373: PUSH1 0x04
00000375: DUP1
00000376: DUP1
00000377: CALLDATALOAD
00000378: SWAP1
00000379: PUSH1 0x20
0000037b: ADD
0000037c: SWAP1
0000037d: SWAP2
0000037e: SWAP1
0000037f: DUP1
00000380: CALLDATALOAD
00000381: SWAP1
00000382: PUSH1 0x20
00000384: ADD
00000385: SWAP1
00000386: SWAP2
00000387: SWAP1
00000388: POP
00000389: POP
0000038a: PUSH2 0x0a21
0000038d: JUMP
0000038e: JUMPDEST
0000038f: STOP
00000390: JUMPDEST
00000391: PUSH2 0x03f6
00000394: PUSH1 0x04
00000396: DUP1
00000397: DUP1
00000398: CALLDATALOAD
00000399: SWAP1
0000039a: PUSH1 0x20
0000039c: ADD
0000039d: SWAP1
0000039e: SWAP2
0000039f: SWAP1
000003a0: DUP1
000003a1: CALLDATALOAD
000003a2: SWAP1
000003a3: PUSH1 0x20
000003a5: ADD
000003a6: SWAP1
000003a7: SWAP2
000003a8: SWAP1
000003a9: DUP1
000003aa: CALLDATALOAD
000003ab: SWAP1
000003ac: PUSH1 0x20
000003ae: ADD
000003af: SWAP1
000003b0: DUP3
000003b1: ADD
000003b2: DUP1
000003b3: CALLDATALOAD
000003b4: SWAP1
000003b5: PUSH1 0x20
000003b7: ADD
000003b8: SWAP2
000003b9: SWAP2
000003ba: SWAP1
000003bb: DUP1
000003bc: DUP1
000003bd: PUSH1 0x1f
000003bf: ADD
000003c0: PUSH1 0x20
000003c2: DUP1
000003c3: SWAP2
000003c4: DIV
000003c5: MUL
000003c6: PUSH1 0x20
000003c8: ADD
000003c9: PUSH1 0x40
000003cb: MLOAD
000003cc: SWAP1
000003cd: DUP2
000003ce: ADD
000003cf: PUSH1 0x40
000003d1: MSTORE
000003d2: DUP1
000003d3: SWAP4
000003d4: SWAP3
000003d5: SWAP2
000003d6: SWAP1
000003d7: DUP2
000003d8: DUP2
000003d9: MSTORE
000003da: PUSH1 0x20
000003dc: ADD
000003dd: DUP4
000003de: DUP4
000003df: DUP1
000003e0: DUP3
000003e1: DUP5
000003e2: CALLDATACOPY
000003e3: DUP3
000003e4: ADD
000003e5: SWAP2
000003e6: POP
000003e7: POP
000003e8: POP
000003e9: POP
000003ea: POP
000003eb: POP
000003ec: SWAP1
000003ed: SWAP1
000003ee: SWAP2
000003ef: SWAP1
000003f0: POP
000003f1: POP
000003f2: PUSH2 0x0bac
000003f5: JUMP
000003f6: JUMPDEST
000003f7: PUSH1 0x40
000003f9: MLOAD
000003fa: DUP1
000003fb: DUP3
000003fc: ISZERO
000003fd: ISZERO
000003fe: DUP2
000003ff: MSTORE
00000400: PUSH1 0x20
00000402: ADD
00000403: SWAP2
00000404: POP
00000405: POP
00000406: PUSH1 0x40
00000408: MLOAD
00000409: DUP1
0000040a: SWAP2
0000040b: SUB
0000040c: SWAP1
0000040d: RETURN
0000040e: JUMPDEST
0000040f: PUSH2 0x042d
00000412: PUSH1 0x04
00000414: DUP1
00000415: DUP1
00000416: CALLDATALOAD
00000417: SWAP1
00000418: PUSH1 0x20
0000041a: ADD
0000041b: SWAP1
0000041c: SWAP2
0000041d: SWAP1
0000041e: DUP1
0000041f: CALLDATALOAD
00000420: SWAP1
00000421: PUSH1 0x20
00000423: ADD
00000424: SWAP1
00000425: SWAP2
00000426: SWAP1
00000427: POP
00000428: POP
00000429: PUSH2 0x0cd9
0000042c: JUMP
0000042d: JUMPDEST
0000042e: PUSH1 0x40
00000430: MLOAD
00000431: DUP1
00000432: DUP3
00000433: DUP2
00000434: MSTORE
00000435: PUSH1 0x20
00000437: ADD
00000438: SWAP2
00000439: POP
0000043a: POP
0000043b: PUSH1 0x40
0000043d: MLOAD
0000043e: DUP1
0000043f: SWAP2
00000440: SUB
00000441: SWAP1
00000442: RETURN
00000443: JUMPDEST
00000444: PUSH1 0x01
00000446: PUSH1 0x00
00000448: POP
00000449: DUP1
0000044a: SLOAD
0000044b: PUSH1 0x01
0000044d: DUP2
0000044e: PUSH1 0x01
00000450: AND
00000451: ISZERO
00000452: PUSH2 0x0100
00000455: MUL
00000456: SUB
00000457: AND
00000458: PUSH1 0x02
0000045a: SWAP1
0000045b: DIV
0000045c: DUP1
0000045d: PUSH1 0x1f
0000045f: ADD
00000460: PUSH1 0x20
00000462: DUP1
00000463: SWAP2
00000464: DIV
00000465: MUL
00000466: PUSH1 0x20
00000468: ADD
00000469: PUSH1 0x40
0000046b: MLOAD
0000046c: SWAP1
0000046d: DUP2
0000046e: ADD
0000046f: PUSH1 0x40
00000471: MSTORE
00000472: DUP1
00000473: SWAP3
00000474: SWAP2
00000475: SWAP1
00000476: DUP2
00000477: DUP2
00000478: MSTORE
00000479: PUSH1 0x20
0000047b: ADD
0000047c: DUP3
0000047d: DUP1
0000047e: SLOAD
0000047f: PUSH1 0x01
00000481: DUP2
00000482: PUSH1 0x01
00000484: AND
00000485: ISZERO
00000486: PUSH2 0x0100
00000489: MUL
0000048a: SUB
0000048b: AND
0000048c: PUSH1 0x02
0000048e: SWAP1
0000048f: DIV
00000490: DUP1
00000491: ISZERO
00000492: PUSH2 0x04dc
00000495: JUMPI
00000496: DUP1
00000497: PUSH1 0x1f
00000499: LT
0000049a: PUSH2 0x04b1
0000049d: JUMPI
0000049e: PUSH2 0x0100
000004a1: DUP1
000004a2: DUP4
000004a3: SLOAD
000004a4: DIV
000004a5: MUL
000004a6: DUP4
000004a7: MSTORE
000004a8: SWAP2
000004a9: PUSH1 0x20
000004ab: ADD
000004ac: SWAP2
000004ad: PUSH2 0x04dc
000004b0: JUMP
000004b1: JUMPDEST
000004b2: DUP3
000004b3: ADD
000004b4: SWAP2
000004b5: SWAP1
000004b6: PUSH1 0x00
000004b8: MSTORE
000004b9: PUSH1 0x20
000004bb: PUSH1 0x00
000004bd: KECCAK256
000004be: SWAP1
000004bf: JUMPDEST
000004c0: DUP2
000004c1: SLOAD
000004c2: DUP2
000004c3: MSTORE
000004c4: SWAP1
000004c5: PUSH1 0x01
000004c7: ADD
000004c8: SWAP1
000004c9: PUSH1 0x20
000004cb: ADD
000004cc: DUP1
000004cd: DUP4
000004ce: GT
000004cf: PUSH2 0x04bf
000004d2: JUMPI
000004d3: DUP3
000004d4: SWAP1
000004d5: SUB
000004d6: PUSH1 0x1f
000004d8: AND
000004d9: DUP3
000004da: ADD
000004db: SWAP2
000004dc: JUMPDEST
000004dd: POP
000004de: POP
000004df: POP
000004e0: POP
000004e1: POP
000004e2: DUP2
000004e3: JUMP
000004e4: JUMPDEST
000004e5: PUSH1 0x00
000004e7: DUP2
000004e8: PUSH1 0x07
000004ea: PUSH1 0x00
000004ec: POP
000004ed: PUSH1 0x00
000004ef: CALLER
000004f0: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000505: AND
00000506: DUP2
00000507: MSTORE
00000508: PUSH1 0x20
0000050a: ADD
0000050b: SWAP1
0000050c: DUP2
0000050d: MSTORE
0000050e: PUSH1 0x20
00000510: ADD
00000511: PUSH1 0x00
00000513: KECCAK256
00000514: PUSH1 0x00
00000516: POP
00000517: PUSH1 0x00
00000519: DUP6
0000051a: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
0000052f: AND
00000530: DUP2
00000531: MSTORE
00000532: PUSH1 0x20
00000534: ADD
00000535: SWAP1
00000536: DUP2
00000537: MSTORE
00000538: PUSH1 0x20
0000053a: ADD
0000053b: PUSH1 0x00
0000053d: KECCAK256
0000053e: PUSH1 0x00
00000540: POP
00000541: DUP2
00000542: SWAP1
00000543: SSTORE
00000544: POP
00000545: PUSH1 0x01
00000547: SWAP1
00000548: POP
00000549: PUSH2 0x054d
0000054c: JUMP
0000054d: JUMPDEST
0000054e: SWAP3
0000054f: SWAP2
00000550: POP
00000551: POP
00000552: JUMP
00000553: JUMPDEST
00000554: PUSH1 0x04
00000556: PUSH1 0x00
00000558: POP
00000559: SLOAD
0000055a: DUP2
0000055b: JUMP
0000055c: JUMPDEST
0000055d: PUSH1 0x00
0000055f: DUP2
00000560: PUSH1 0x06
00000562: PUSH1 0x00
00000564: POP
00000565: PUSH1 0x00
00000567: DUP7
00000568: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
0000057d: AND
0000057e: DUP2
0000057f: MSTORE
00000580: PUSH1 0x20
00000582: ADD
00000583: SWAP1
00000584: DUP2
00000585: MSTORE
00000586: PUSH1 0x20
00000588: ADD
00000589: PUSH1 0x00
0000058b: KECCAK256
0000058c: PUSH1 0x00
0000058e: POP
0000058f: SLOAD
00000590: LT
00000591: ISZERO
00000592: PUSH2 0x059a
00000595: JUMPI
00000596: PUSH2 0x0002
00000599: JUMP
0000059a: JUMPDEST
0000059b: PUSH1 0x06
0000059d: PUSH1 0x00
0000059f: POP
000005a0: PUSH1 0x00
000005a2: DUP5
000005a3: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000005b8: AND
000005b9: DUP2
000005ba: MSTORE
000005bb: PUSH1 0x20
000005bd: ADD
000005be: SWAP1
000005bf: DUP2
000005c0: MSTORE
000005c1: PUSH1 0x20
000005c3: ADD
000005c4: PUSH1 0x00
000005c6: KECCAK256
000005c7: PUSH1 0x00
000005c9: POP
000005ca: SLOAD
000005cb: DUP3
000005cc: PUSH1 0x06
000005ce: PUSH1 0x00
000005d0: POP
000005d1: PUSH1 0x00
000005d3: DUP7
000005d4: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000005e9: AND
000005ea: DUP2
000005eb: MSTORE
000005ec: PUSH1 0x20
000005ee: ADD
000005ef: SWAP1
000005f0: DUP2
000005f1: MSTORE
000005f2: PUSH1 0x20
000005f4: ADD
000005f5: PUSH1 0x00
000005f7: KECCAK256
000005f8: PUSH1 0x00
000005fa: POP
000005fb: SLOAD
000005fc: ADD
000005fd: LT
000005fe: ISZERO
000005ff: PUSH2 0x0607
00000602: JUMPI
00000603: PUSH2 0x0002
00000606: JUMP
00000607: JUMPDEST
00000608: PUSH1 0x07
0000060a: PUSH1 0x00
0000060c: POP
0000060d: PUSH1 0x00
0000060f: DUP6
00000610: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000625: AND
00000626: DUP2
00000627: MSTORE
00000628: PUSH1 0x20
0000062a: ADD
0000062b: SWAP1
0000062c: DUP2
0000062d: MSTORE
0000062e: PUSH1 0x20
00000630: ADD
00000631: PUSH1 0x00
00000633: KECCAK256
00000634: PUSH1 0x00
00000636: POP
00000637: PUSH1 0x00
00000639: CALLER
0000063a: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
0000064f: AND
00000650: DUP2
00000651: MSTORE
00000652: PUSH1 0x20
00000654: ADD
00000655: SWAP1
00000656: DUP2
00000657: MSTORE
00000658: PUSH1 0x20
0000065a: ADD
0000065b: PUSH1 0x00
0000065d: KECCAK256
0000065e: PUSH1 0x00
00000660: POP
00000661: SLOAD
00000662: DUP3
00000663: GT
00000664: ISZERO
00000665: PUSH2 0x066d
00000668: JUMPI
00000669: PUSH2 0x0002
0000066c: JUMP
0000066d: JUMPDEST
0000066e: DUP2
0000066f: PUSH1 0x06
00000671: PUSH1 0x00
00000673: POP
00000674: PUSH1 0x00
00000676: DUP7
00000677: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
0000068c: AND
0000068d: DUP2
0000068e: MSTORE
0000068f: PUSH1 0x20
00000691: ADD
00000692: SWAP1
00000693: DUP2
00000694: MSTORE
00000695: PUSH1 0x20
00000697: ADD
00000698: PUSH1 0x00
0000069a: KECCAK256
0000069b: PUSH1 0x00
0000069d: DUP3
0000069e: DUP3
0000069f: DUP3
000006a0: POP
000006a1: SLOAD
000006a2: SUB
000006a3: SWAP3
000006a4: POP
000006a5: POP
000006a6: DUP2
000006a7: SWAP1
000006a8: SSTORE
000006a9: POP
000006aa: DUP2
000006ab: PUSH1 0x06
000006ad: PUSH1 0x00
000006af: POP
000006b0: PUSH1 0x00
000006b2: DUP6
000006b3: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000006c8: AND
000006c9: DUP2
000006ca: MSTORE
000006cb: PUSH1 0x20
000006cd: ADD
000006ce: SWAP1
000006cf: DUP2
000006d0: MSTORE
000006d1: PUSH1 0x20
000006d3: ADD
000006d4: PUSH1 0x00
000006d6: KECCAK256
000006d7: PUSH1 0x00
000006d9: DUP3
000006da: DUP3
000006db: DUP3
000006dc: POP
000006dd: SLOAD
000006de: ADD
000006df: SWAP3
000006e0: POP
000006e1: POP
000006e2: DUP2
000006e3: SWAP1
000006e4: SSTORE
000006e5: POP
000006e6: DUP2
000006e7: PUSH1 0x07
000006e9: PUSH1 0x00
000006eb: POP
000006ec: PUSH1 0x00
000006ee: DUP7
000006ef: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000704: AND
00000705: DUP2
00000706: MSTORE
00000707: PUSH1 0x20
00000709: ADD
0000070a: SWAP1
0000070b: DUP2
0000070c: MSTORE
0000070d: PUSH1 0x20
0000070f: ADD
00000710: PUSH1 0x00
00000712: KECCAK256
00000713: PUSH1 0x00
00000715: POP
00000716: PUSH1 0x00
00000718: CALLER
00000719: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
0000072e: AND
0000072f: DUP2
00000730: MSTORE
00000731: PUSH1 0x20
00000733: ADD
00000734: SWAP1
00000735: DUP2
00000736: MSTORE
00000737: PUSH1 0x20
00000739: ADD
0000073a: PUSH1 0x00
0000073c: KECCAK256
0000073d: PUSH1 0x00
0000073f: DUP3
00000740: DUP3
00000741: DUP3
00000742: POP
00000743: SLOAD
00000744: SUB
00000745: SWAP3
00000746: POP
00000747: POP
00000748: DUP2
00000749: SWAP1
0000074a: SSTORE
0000074b: POP
0000074c: DUP3
0000074d: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000762: AND
00000763: DUP5
00000764: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000779: AND
0000077a: PUSH32 0xddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef
0000079b: DUP5
0000079c: PUSH1 0x40
0000079e: MLOAD
0000079f: DUP1
000007a0: DUP3
000007a1: DUP2
000007a2: MSTORE
000007a3: PUSH1 0x20
000007a5: ADD
000007a6: SWAP2
000007a7: POP
000007a8: POP
000007a9: PUSH1 0x40
000007ab: MLOAD
000007ac: DUP1
000007ad: SWAP2
000007ae: SUB
000007af: SWAP1
000007b0: LOG3
000007b1: PUSH1 0x01
000007b3: SWAP1
000007b4: POP
000007b5: PUSH2 0x07b9
000007b8: JUMP
000007b9: JUMPDEST
000007ba: SWAP4
000007bb: SWAP3
000007bc: POP
000007bd: POP
000007be: POP
000007bf: JUMP
000007c0: JUMPDEST
000007c1: PUSH1 0x03
000007c3: PUSH1 0x00
000007c5: SWAP1
000007c6: SLOAD
000007c7: SWAP1
000007c8: PUSH2 0x0100
000007cb: EXP
000007cc: SWAP1
000007cd: DIV
000007ce: PUSH1 0xff
000007d0: AND
000007d1: DUP2
000007d2: JUMP
000007d3: JUMPDEST
000007d4: PUSH1 0x00
000007d6: PUSH1 0x00
000007d8: POP
000007d9: DUP1
000007da: SLOAD
000007db: PUSH1 0x01
000007dd: DUP2
000007de: PUSH1 0x01
000007e0: AND
000007e1: ISZERO
000007e2: PUSH2 0x0100
000007e5: MUL
000007e6: SUB
000007e7: AND
000007e8: PUSH1 0x02
000007ea: SWAP1
000007eb: DIV
000007ec: DUP1
000007ed: PUSH1 0x1f
000007ef: ADD
000007f0: PUSH1 0x20
000007f2: DUP1
000007f3: SWAP2
000007f4: DIV
000007f5: MUL
000007f6: PUSH1 0x20
000007f8: ADD
000007f9: PUSH1 0x40
000007fb: MLOAD
000007fc: SWAP1
000007fd: DUP2
000007fe: ADD
000007ff: PUSH1 0x40
00000801: MSTORE
00000802: DUP1
00000803: SWAP3
00000804: SWAP2
00000805: SWAP1
00000806: DUP2
00000807: DUP2
00000808: MSTORE
00000809: PUSH1 0x20
0000080b: ADD
0000080c: DUP3
0000080d: DUP1
0000080e: SLOAD
0000080f: PUSH1 0x01
00000811: DUP2
00000812: PUSH1 0x01
00000814: AND
00000815: ISZERO
00000816: PUSH2 0x0100
00000819: MUL
0000081a: SUB
0000081b: AND
0000081c: PUSH1 0x02
0000081e: SWAP1
0000081f: DIV
00000820: DUP1
00000821: ISZERO
00000822: PUSH2 0x086c
00000825: JUMPI
00000826: DUP1
00000827: PUSH1 0x1f
00000829: LT
0000082a: PUSH2 0x0841
0000082d: JUMPI
0000082e: PUSH2 0x0100
00000831: DUP1
00000832: DUP4
00000833: SLOAD
00000834: DIV
00000835: MUL
00000836: DUP4
00000837: MSTORE
00000838: SWAP2
00000839: PUSH1 0x20
0000083b: ADD
0000083c: SWAP2
0000083d: PUSH2 0x086c
00000840: JUMP
00000841: JUMPDEST
00000842: DUP3
00000843: ADD
00000844: SWAP2
00000845: SWAP1
00000846: PUSH1 0x00
00000848: MSTORE
00000849: PUSH1 0x20
0000084b: PUSH1 0x00
0000084d: KECCAK256
0000084e: SWAP1
0000084f: JUMPDEST
00000850: DUP2
00000851: SLOAD
00000852: DUP2
00000853: MSTORE
00000854: SWAP1
00000855: PUSH1 0x01
00000857: ADD
00000858: SWAP1
00000859: PUSH1 0x20
0000085b: ADD
0000085c: DUP1
0000085d: DUP4
0000085e: GT
0000085f: PUSH2 0x084f
00000862: JUMPI
00000863: DUP3
00000864: SWAP1
00000865: SUB
00000866: PUSH1 0x1f
00000868: AND
00000869: DUP3
0000086a: ADD
0000086b: SWAP2
0000086c: JUMPDEST
0000086d: POP
0000086e: POP
0000086f: POP
00000870: POP
00000871: POP
00000872: DUP2
00000873: JUMP
00000874: JUMPDEST
00000875: PUSH1 0x06
00000877: PUSH1 0x00
00000879: POP
0000087a: PUSH1 0x20
0000087c: MSTORE
0000087d: DUP1
0000087e: PUSH1 0x00
00000880: MSTORE
00000881: PUSH1 0x40
00000883: PUSH1 0x00
00000885: KECCAK256
00000886: PUSH1 0x00
00000888: SWAP2
00000889: POP
0000088a: SWAP1
0000088b: POP
0000088c: SLOAD
0000088d: DUP2
0000088e: JUMP
0000088f: JUMPDEST
00000890: CALLER
00000891: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000008a6: AND
000008a7: PUSH1 0x05
000008a9: PUSH1 0x00
000008ab: SWAP1
000008ac: SLOAD
000008ad: SWAP1
000008ae: PUSH2 0x0100
000008b1: EXP
000008b2: SWAP1
000008b3: DIV
000008b4: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000008c9: AND
000008ca: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000008df: AND
000008e0: EQ
000008e1: ISZERO
000008e2: PUSH2 0x0957
000008e5: JUMPI
000008e6: PUSH1 0x05
000008e8: PUSH1 0x00
000008ea: SWAP1
000008eb: SLOAD
000008ec: SWAP1
000008ed: PUSH2 0x0100
000008f0: EXP
000008f1: SWAP1
000008f2: DIV
000008f3: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000908: AND
00000909: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
0000091e: AND
0000091f: PUSH1 0x00
00000921: PUSH3 0x200b20
00000925: ADDRESS
00000926: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
0000093b: AND
0000093c: BALANCE
0000093d: SUB
0000093e: PUSH1 0x40
00000940: MLOAD
00000941: DUP1
00000942: SWAP1
00000943: POP
00000944: PUSH1 0x00
00000946: PUSH1 0x40
00000948: MLOAD
00000949: DUP1
0000094a: DUP4
0000094b: SUB
0000094c: DUP2
0000094d: DUP6
0000094e: DUP9
0000094f: DUP9
00000950: CALL
00000951: SWAP4
00000952: POP
00000953: POP
00000954: POP
00000955: POP
00000956: POP
00000957: JUMPDEST
00000958: JUMPDEST
00000959: JUMP
0000095a: JUMPDEST
0000095b: PUSH1 0x05
0000095d: PUSH1 0x00
0000095f: SWAP1
00000960: SLOAD
00000961: SWAP1
00000962: PUSH2 0x0100
00000965: EXP
00000966: SWAP1
00000967: DIV
00000968: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
0000097d: AND
0000097e: DUP2
0000097f: JUMP
00000980: JUMPDEST
00000981: PUSH1 0x02
00000983: PUSH1 0x00
00000985: POP
00000986: DUP1
00000987: SLOAD
00000988: PUSH1 0x01
0000098a: DUP2
0000098b: PUSH1 0x01
0000098d: AND
0000098e: ISZERO
0000098f: PUSH2 0x0100
00000992: MUL
00000993: SUB
00000994: AND
00000995: PUSH1 0x02
00000997: SWAP1
00000998: DIV
00000999: DUP1
0000099a: PUSH1 0x1f
0000099c: ADD
0000099d: PUSH1 0x20
0000099f: DUP1
000009a0: SWAP2
000009a1: DIV
000009a2: MUL
000009a3: PUSH1 0x20
000009a5: ADD
000009a6: PUSH1 0x40
000009a8: MLOAD
000009a9: SWAP1
000009aa: DUP2
000009ab: ADD
000009ac: PUSH1 0x40
000009ae: MSTORE
000009af: DUP1
000009b0: SWAP3
000009b1: SWAP2
000009b2: SWAP1
000009b3: DUP2
000009b4: DUP2
000009b5: MSTORE
000009b6: PUSH1 0x20
000009b8: ADD
000009b9: DUP3
000009ba: DUP1
000009bb: SLOAD
000009bc: PUSH1 0x01
000009be: DUP2
000009bf: PUSH1 0x01
000009c1: AND
000009c2: ISZERO
000009c3: PUSH2 0x0100
000009c6: MUL
000009c7: SUB
000009c8: AND
000009c9: PUSH1 0x02
000009cb: SWAP1
000009cc: DIV
000009cd: DUP1
000009ce: ISZERO
000009cf: PUSH2 0x0a19
000009d2: JUMPI
000009d3: DUP1
000009d4: PUSH1 0x1f
000009d6: LT
000009d7: PUSH2 0x09ee
000009da: JUMPI
000009db: PUSH2 0x0100
000009de: DUP1
000009df: DUP4
000009e0: SLOAD
000009e1: DIV
000009e2: MUL
000009e3: DUP4
000009e4: MSTORE
000009e5: SWAP2
000009e6: PUSH1 0x20
000009e8: ADD
000009e9: SWAP2
000009ea: PUSH2 0x0a19
000009ed: JUMP
000009ee: JUMPDEST
000009ef: DUP3
000009f0: ADD
000009f1: SWAP2
000009f2: SWAP1
000009f3: PUSH1 0x00
000009f5: MSTORE
000009f6: PUSH1 0x20
000009f8: PUSH1 0x00
000009fa: KECCAK256
000009fb: SWAP1
000009fc: JUMPDEST
000009fd: DUP2
000009fe: SLOAD
000009ff: DUP2
00000a00: MSTORE
00000a01: SWAP1
00000a02: PUSH1 0x01
00000a04: ADD
00000a05: SWAP1
00000a06: PUSH1 0x20
00000a08: ADD
00000a09: DUP1
00000a0a: DUP4
00000a0b: GT
00000a0c: PUSH2 0x09fc
00000a0f: JUMPI
00000a10: DUP3
00000a11: SWAP1
00000a12: SUB
00000a13: PUSH1 0x1f
00000a15: AND
00000a16: DUP3
00000a17: ADD
00000a18: SWAP2
00000a19: JUMPDEST
00000a1a: POP
00000a1b: POP
00000a1c: POP
00000a1d: POP
00000a1e: POP
00000a1f: DUP2
00000a20: JUMP
00000a21: JUMPDEST
00000a22: DUP1
00000a23: PUSH1 0x06
00000a25: PUSH1 0x00
00000a27: POP
00000a28: PUSH1 0x00
00000a2a: CALLER
00000a2b: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000a40: AND
00000a41: DUP2
00000a42: MSTORE
00000a43: PUSH1 0x20
00000a45: ADD
00000a46: SWAP1
00000a47: DUP2
00000a48: MSTORE
00000a49: PUSH1 0x20
00000a4b: ADD
00000a4c: PUSH1 0x00
00000a4e: KECCAK256
00000a4f: PUSH1 0x00
00000a51: POP
00000a52: SLOAD
00000a53: LT
00000a54: ISZERO
00000a55: PUSH2 0x0a5d
00000a58: JUMPI
00000a59: PUSH2 0x0002
00000a5c: JUMP
00000a5d: JUMPDEST
00000a5e: PUSH1 0x06
00000a60: PUSH1 0x00
00000a62: POP
00000a63: PUSH1 0x00
00000a65: DUP4
00000a66: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000a7b: AND
00000a7c: DUP2
00000a7d: MSTORE
00000a7e: PUSH1 0x20
00000a80: ADD
00000a81: SWAP1
00000a82: DUP2
00000a83: MSTORE
00000a84: PUSH1 0x20
00000a86: ADD
00000a87: PUSH1 0x00
00000a89: KECCAK256
00000a8a: PUSH1 0x00
00000a8c: POP
00000a8d: SLOAD
00000a8e: DUP2
00000a8f: PUSH1 0x06
00000a91: PUSH1 0x00
00000a93: POP
00000a94: PUSH1 0x00
00000a96: DUP6
00000a97: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000aac: AND
00000aad: DUP2
00000aae: MSTORE
00000aaf: PUSH1 0x20
00000ab1: ADD
00000ab2: SWAP1
00000ab3: DUP2
00000ab4: MSTORE
00000ab5: PUSH1 0x20
00000ab7: ADD
00000ab8: PUSH1 0x00
00000aba: KECCAK256
00000abb: PUSH1 0x00
00000abd: POP
00000abe: SLOAD
00000abf: ADD
00000ac0: LT
00000ac1: ISZERO
00000ac2: PUSH2 0x0aca
00000ac5: JUMPI
00000ac6: PUSH2 0x0002
00000ac9: JUMP
00000aca: JUMPDEST
00000acb: DUP1
00000acc: PUSH1 0x06
00000ace: PUSH1 0x00
00000ad0: POP
00000ad1: PUSH1 0x00
00000ad3: CALLER
00000ad4: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000ae9: AND
00000aea: DUP2
00000aeb: MSTORE
00000aec: PUSH1 0x20
00000aee: ADD
00000aef: SWAP1
00000af0: DUP2
00000af1: MSTORE
00000af2: PUSH1 0x20
00000af4: ADD
00000af5: PUSH1 0x00
00000af7: KECCAK256
00000af8: PUSH1 0x00
00000afa: DUP3
00000afb: DUP3
00000afc: DUP3
00000afd: POP
00000afe: SLOAD
00000aff: SUB
00000b00: SWAP3
00000b01: POP
00000b02: POP
00000b03: DUP2
00000b04: SWAP1
00000b05: SSTORE
00000b06: POP
00000b07: DUP1
00000b08: PUSH1 0x06
00000b0a: PUSH1 0x00
00000b0c: POP
00000b0d: PUSH1 0x00
00000b0f: DUP5
00000b10: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000b25: AND
00000b26: DUP2
00000b27: MSTORE
00000b28: PUSH1 0x20
00000b2a: ADD
00000b2b: SWAP1
00000b2c: DUP2
00000b2d: MSTORE
00000b2e: PUSH1 0x20
00000b30: ADD
00000b31: PUSH1 0x00
00000b33: KECCAK256
00000b34: PUSH1 0x00
00000b36: DUP3
00000b37: DUP3
00000b38: DUP3
00000b39: POP
00000b3a: SLOAD
00000b3b: ADD
00000b3c: SWAP3
00000b3d: POP
00000b3e: POP
00000b3f: DUP2
00000b40: SWAP1
00000b41: SSTORE
00000b42: POP
00000b43: DUP2
00000b44: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000b59: AND
00000b5a: CALLER
00000b5b: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000b70: AND
00000b71: PUSH32 0xddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef
00000b92: DUP4
00000b93: PUSH1 0x40
00000b95: MLOAD
00000b96: DUP1
00000b97: DUP3
00000b98: DUP2
00000b99: MSTORE
00000b9a: PUSH1 0x20
00000b9c: ADD
00000b9d: SWAP2
00000b9e: POP
00000b9f: POP
00000ba0: PUSH1 0x40
00000ba2: MLOAD
00000ba3: DUP1
00000ba4: SWAP2
00000ba5: SUB
00000ba6: SWAP1
00000ba7: LOG3
00000ba8: JUMPDEST
00000ba9: POP
00000baa: POP
00000bab: JUMP
00000bac: JUMPDEST
00000bad: PUSH1 0x00
00000baf: PUSH1 0x00
00000bb1: DUP5
00000bb2: SWAP1
00000bb3: POP
00000bb4: PUSH2 0x0bbd
00000bb7: DUP6
00000bb8: DUP6
00000bb9: PUSH2 0x04e4
00000bbc: JUMP
00000bbd: JUMPDEST
00000bbe: ISZERO
00000bbf: PUSH2 0x0cd0
00000bc2: JUMPI
00000bc3: DUP1
00000bc4: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000bd9: AND
00000bda: PUSH4 0x8f4ffcb1
00000bdf: CALLER
00000be0: DUP7
00000be1: ADDRESS
00000be2: DUP8
00000be3: PUSH1 0x40
00000be5: MLOAD
00000be6: DUP6
00000be7: PUSH29 0x0100000000000000000000000000000000000000000000000000000000
00000c05: MUL
00000c06: DUP2
00000c07: MSTORE
00000c08: PUSH1 0x04
00000c0a: ADD
00000c0b: DUP1
00000c0c: DUP6
00000c0d: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000c22: AND
00000c23: DUP2
00000c24: MSTORE
00000c25: PUSH1 0x20
00000c27: ADD
00000c28: DUP5
00000c29: DUP2
00000c2a: MSTORE
00000c2b: PUSH1 0x20
00000c2d: ADD
00000c2e: DUP4
00000c2f: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000c44: AND
00000c45: DUP2
00000c46: MSTORE
00000c47: PUSH1 0x20
00000c49: ADD
00000c4a: DUP1
00000c4b: PUSH1 0x20
00000c4d: ADD
00000c4e: DUP3
00000c4f: DUP2
00000c50: SUB
00000c51: DUP3
00000c52: MSTORE
00000c53: DUP4
00000c54: DUP2
00000c55: DUP2
00000c56: MLOAD
00000c57: DUP2
00000c58: MSTORE
00000c59: PUSH1 0x20
00000c5b: ADD
00000c5c: SWAP2
00000c5d: POP
00000c5e: DUP1
00000c5f: MLOAD
00000c60: SWAP1
00000c61: PUSH1 0x20
00000c63: ADD
00000c64: SWAP1
00000c65: DUP1
00000c66: DUP4
00000c67: DUP4
00000c68: DUP3
00000c69: SWAP1
00000c6a: PUSH1 0x00
00000c6c: PUSH1 0x04
00000c6e: PUSH1 0x20
00000c70: DUP5
00000c71: PUSH1 0x1f
00000c73: ADD
00000c74: DIV
00000c75: PUSH1 0x03
00000c77: MUL
00000c78: PUSH1 0x0f
00000c7a: ADD
00000c7b: CALL
00000c7c: POP
00000c7d: SWAP1
00000c7e: POP
00000c7f: SWAP1
00000c80: DUP2
00000c81: ADD
00000c82: SWAP1
00000c83: PUSH1 0x1f
00000c85: AND
00000c86: DUP1
00000c87: ISZERO
00000c88: PUSH2 0x0ca5
00000c8b: JUMPI
00000c8c: DUP1
00000c8d: DUP3
00000c8e: SUB
00000c8f: DUP1
00000c90: MLOAD
00000c91: PUSH1 0x01
00000c93: DUP4
00000c94: PUSH1 0x20
00000c96: SUB
00000c97: PUSH2 0x0100
00000c9a: EXP
00000c9b: SUB
00000c9c: NOT
00000c9d: AND
00000c9e: DUP2
00000c9f: MSTORE
00000ca0: PUSH1 0x20
00000ca2: ADD
00000ca3: SWAP2
00000ca4: POP
00000ca5: JUMPDEST
00000ca6: POP
00000ca7: SWAP6
00000ca8: POP
00000ca9: POP
00000caa: POP
00000cab: POP
00000cac: POP
00000cad: POP
00000cae: PUSH1 0x00
00000cb0: PUSH1 0x40
00000cb2: MLOAD
00000cb3: DUP1
00000cb4: DUP4
00000cb5: SUB
00000cb6: DUP2
00000cb7: PUSH1 0x00
00000cb9: DUP8
00000cba: PUSH2 0x61da
00000cbd: GAS
00000cbe: SUB
00000cbf: CALL
00000cc0: ISZERO
00000cc1: PUSH2 0x0002
00000cc4: JUMPI
00000cc5: POP
00000cc6: POP
00000cc7: POP
00000cc8: PUSH1 0x01
00000cca: SWAP2
00000ccb: POP
00000ccc: PUSH2 0x0cd1
00000ccf: JUMP
00000cd0: JUMPDEST
00000cd1: JUMPDEST
00000cd2: POP
00000cd3: SWAP4
00000cd4: SWAP3
00000cd5: POP
00000cd6: POP
00000cd7: POP
00000cd8: JUMP
00000cd9: JUMPDEST
00000cda: PUSH1 0x07
00000cdc: PUSH1 0x00
00000cde: POP
00000cdf: PUSH1 0x20
00000ce1: MSTORE
00000ce2: DUP2
00000ce3: PUSH1 0x00
00000ce5: MSTORE
00000ce6: PUSH1 0x40
00000ce8: PUSH1 0x00
00000cea: KECCAK256
00000ceb: PUSH1 0x00
00000ced: POP
00000cee: PUSH1 0x20
00000cf0: MSTORE
00000cf1: DUP1
00000cf2: PUSH1 0x00
00000cf4: MSTORE
00000cf5: PUSH1 0x40
00000cf7: PUSH1 0x00
00000cf9: KECCAK256
00000cfa: PUSH1 0x00
00000cfc: SWAP2
00000cfd: POP
00000cfe: SWAP2
00000cff: POP
00000d00: POP
00000d01: SLOAD
00000d02: DUP2
00000d03: 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: 0x6399d37cc6815fcb9083f9f01e33f7d69c1ea1f250b48d3231ee127432e577d5
call_targets: 0x0000000000000000000000000000000000000004, 0xbe750ee5493be64a1dd973e1f3f3db30d78e2b00
target_varies: yes
classification: target_varies
validation_json
{
    "sink": "CALL",
    "errors": 0,
    "status": "confirmed",
    "attempts": 1,
    "trace_id": "0x6399d37cc6815fcb9083f9f01e33f7d69c1ea1f250b48d3231ee127432e577d5",
    "confirmed": true,
    "trace_mode": "callTracer",
    "call_targets": [
        "0x0000000000000000000000000000000000000004",
        "0xbe750ee5493be64a1dd973e1f3f3db30d78e2b00"
    ],
    "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": "0x095ea7b3",
            "selector": "0x095ea7b3",
            "calldata_variants": [
                "0x095ea7b3",
                "0x095ea7b30000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "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": "0x5a3b7e42",
            "selector": "0x5a3b7e42",
            "calldata_variants": [
                "0x5a3b7e42",
                "0x5a3b7e420000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x70a08231",
            "selector": "0x70a08231",
            "calldata_variants": [
                "0x70a08231",
                "0x70a082310000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x836a1e23",
            "selector": "0x836a1e23",
            "calldata_variants": [
                "0x836a1e23",
                "0x836a1e230000000000000000000000000000000000000000000000000000000000000000"
            ]
        }
    ]
}
evidence_json
{
    "examples": [
        {
            "pc": 269,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        },
        {
            "pc": 584,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        },
        {
            "pc": 823,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        }
    ],
    "call_count": 6,
    "guards_detected": [],
    "untrusted_call_count": 6
}
high other detector ETH value transfer possible 55 yes yes
view
trace_id: 0x6399d37cc6815fcb9083f9f01e33f7d69c1ea1f250b48d3231ee127432e577d5
call_targets: 0x0000000000000000000000000000000000000004, 0xbe750ee5493be64a1dd973e1f3f3db30d78e2b00
target_varies: yes
classification: target_varies
validation_json
{
    "sink": "CALL",
    "errors": 0,
    "status": "confirmed",
    "attempts": 1,
    "trace_id": "0x6399d37cc6815fcb9083f9f01e33f7d69c1ea1f250b48d3231ee127432e577d5",
    "confirmed": true,
    "trace_mode": "callTracer",
    "call_targets": [
        "0x0000000000000000000000000000000000000004",
        "0xbe750ee5493be64a1dd973e1f3f3db30d78e2b00"
    ],
    "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": "0x095ea7b3",
            "selector": "0x095ea7b3",
            "calldata_variants": [
                "0x095ea7b3",
                "0x095ea7b30000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "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": "0x5a3b7e42",
            "selector": "0x5a3b7e42",
            "calldata_variants": [
                "0x5a3b7e42",
                "0x5a3b7e420000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x70a08231",
            "selector": "0x70a08231",
            "calldata_variants": [
                "0x70a08231",
                "0x70a082310000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x836a1e23",
            "selector": "0x836a1e23",
            "calldata_variants": [
                "0x836a1e23",
                "0x836a1e230000000000000000000000000000000000000000000000000000000000000000"
            ]
        }
    ]
}
evidence_json
{
    "examples": [
        {
            "pc": 269,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        },
        {
            "pc": 584,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        },
        {
            "pc": 823,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        }
    ],
    "eth_value_calls": 6,
    "guards_detected": []
}