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

Analysis Run

6a5f01b9-7b55-47d9-9f84-94c979b17f95

failed
Chain ID
1
Address
Block Number
Created
Fri, Jan 2, 2026 8:30 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
Verified
Review Backing
Not yet
Best current signal
Untrusted CALL target/value reachable
crit 0 high 0 direct contract
Review Checklist
1. Read the findings table first. Ignore raw jobs until the result looks real.
2. Confirm attacker control, not just the existence of a sink.
3. Confirm money or privilege impact.
4. Keep it if the behavior is real. Kill it if this is normal proxy, admin, or upgrade plumbing.

Processing Jobs

Status & attempts
ID Type Status Attempts Heartbeat
31334 report.consolidate complete 1 / 1 3 months ago
111002 artifact.fetch failed 1 / 3 1 week ago
111003 tool.cast_disasm complete 1 / 3 1 week ago
111004 analysis.bundle complete 1 / 3 1 week ago
111005 capability.graph complete 1 / 3 1 week ago
111006 detector.run complete 1 / 3 1 week ago
111007 validation.fork complete 1 / 3 1 week ago

Artifact

Runtime bytecode: available
Creation TX:
Deployer:
Proxy: no
Implementation:
Verified Source: yes

Slither

tool.slither

No slither job recorded yet.

Codex

report.consolidate
Job Status
complete
Attempts
1 / 1
Findings
0
No findings?
yes
Summary
Reviewed `contracts/Contract.sol` in `AUDIT_BUNDLE.txt`; no concrete, exploitable profit paths found under stated assumptions.
View stderr
[codex:9313] OpenAI Codex v0.77.0 (research preview)
[codex:9313] --------
[codex:9313] workdir: /tmp/codex-multi-umrtbii_
[codex:9313] model: gpt-5.2-codex
[codex:9313] provider: openai
[codex:9313] approval: never
[codex:9313] sandbox: read-only
[codex:9313] reasoning effort: xhigh
[codex:9313] reasoning summaries: auto
[codex:9313] session id: 019b8065-c050-78a0-b622-f048fb0d0c17
[codex:9313] --------
[codex:9313] user
[codex:9313] You are a profit-focused exploit hunter. Your ONLY goal is finding ways to extract value (ETH, tokens, NFTs) from this contract.
[codex:9313] 
[codex:9313] Read `AUDIT_BUNDLE.txt` completely before concluding. Treat `lib/` and `@openzeppelin/` as trusted unless misused.
[codex:9313] 
[codex:9313] ONLY REPORT if you find a CONCRETE, EXPLOITABLE path to profit. We do NOT care about:
[codex:9313] - Gas inefficiency, code quality, naming, or best practices
[codex:9313] - Theoretical vulnerabilities without a clear extraction path
[codex:9313] - Centralization risks (admin can rug) - assume admin keys are secure
[codex:9313] - Front-running unless it enables theft beyond MEV
[codex:9313] - DoS, griefing, or issues that don't result in attacker profit
[codex:9313] - Missing events, view function issues, or informational findings
[codex:9313] 
[codex:9313] HIGH-VALUE PATTERNS TO HUNT:
[codex:9313] - Reentrancy: external calls before state updates that allow double-withdrawal
[codex:9313] - Access control: missing/bypassable auth on withdraw, transfer, or mint functions
[codex:9313] - Flash loan attacks: borrow -> manipulate -> profit in single tx
[codex:9313] - Price oracle manipulation: TWAP with short window, spot price reads, stale prices
[codex:9313] - Signature replay: missing nonce, chainId, or deadline in permit/meta-tx
[codex:9313] - Proxy hijacking: unprotected initialize(), storage collision, UUPS without auth
[codex:9313] - Accounting errors: rounding that favors attacker, share inflation, first depositor attacks
[codex:9313] - Unchecked external calls: return value ignored on token transfers enabling fake tokens
[codex:9313] - Cross-function reentrancy: state read in function A, modified via reentrant call, used stale in A
[codex:9313] 
[codex:9313] For each finding, you MUST provide:
[codex:9313] 1. Exact file and line numbers of vulnerable code
[codex:9313] 2. Step-by-step exploit transaction sequence
[codex:9313] 3. Estimated profit potential (order of magnitude: contract balance, LP reserves, etc.)
[codex:9313] 
[codex:9313] If no concrete profit path exists: set no_findings=true. Do NOT pad with low-severity noise.
[codex:9313] 
[codex:9313] Output MUST be valid JSON matching the provided schema.
[codex:9313] - severity: info, low, medium, high, critical (use high/critical ONLY for clear extraction paths)
[codex:9313] - category: access_control, reentrancy, math, oracle, upgradeability, auth, other
[codex:9313] mcp startup: no servers
[codex:9313] 
[codex:9313] thinking
[codex:9313] **Preparing to review skill instructions**
[codex:9313] exec
[codex:9313] /bin/bash -lc ls in /tmp/codex-multi-umrtbii_ succeeded in 6ms:
[codex:9313] AUDIT_BUNDLE.txt
[codex:9313] codex-output-schema.json
[codex:9313] contracts
[codex:9313] exec
[codex:9313] /bin/bash -lc 'rg --files' in /tmp/codex-multi-umrtbii_ succeeded in 8ms:
[codex:9313] codex-output-schema.json
[codex:9313] AUDIT_BUNDLE.txt
[codex:9313] contracts/Contract.sol
[codex:9313] 
[codex:9313] thinking
[codex:9313] **Reading AUDIT_BUNDLE.txt**
[codex:9313] exec
[codex:9313] /bin/bash -lc 'cat AUDIT_BUNDLE.txt' in /tmp/codex-multi-umrtbii_ succeeded in 8ms:
[codex:9313] This file concatenates first-party Solidity sources only (lib/@openzeppelin excluded).
[codex:9313] 
[codex:9313] ================================================================================
[codex:9313] FILE: contracts/Contract.sol
[codex:9313] ================================================================================
[codex:9313] //last compiled with soljson-v0.3.6-2016-08-29-b8060c5.js
[codex:9313] 
[codex:9313] contract SafeMath {
[codex:9313]   //internals
[codex:9313] 
[codex:9313]   function safeMul(uint a, uint b) internal returns (uint) {
[codex:9313]     uint c = a * b;
[codex:9313]     assert(a == 0 || c / a == b);
[codex:9313]     return c;
[codex:9313]   }
[codex:9313] 
[codex:9313]   function safeSub(uint a, uint b) internal returns (uint) {
[codex:9313]     assert(b <= a);
[codex:9313]     return a - b;
[codex:9313]   }
[codex:9313] 
[codex:9313] 
[codex:9313] thinking
[codex:9313] **Analyzing potential EtherDelta vulnerabilities**
[codex:9313] thinking
[codex:9313] **Preparing final audit summary**
[codex:9313] 
[codex:9313] I'm putting together a JSON report that states no concrete exploitable profit paths were found in the contract audit. I'll ensure it matches the codex output schema with a clear summary and empty findings list.
[codex:9313] codex
[codex:9313] {"no_findings":true,"summary":"Reviewed `contracts/Contract.sol` in `AUDIT_BUNDLE.txt`; no concrete, exploitable profit paths found under stated assumptions.","findings":[]}
[codex:9313] tokens used
[codex:9313] 9,727
[codex:9313] {"no_findings":true,"summary":"Reviewed `contracts/Contract.sol` in `AUDIT_BUNDLE.txt`; no concrete, exploitable profit paths found under stated assumptions.","findings":[]}
Metadata
{
    "codex": {
        "ran_at": "2026-01-02T20:30:07.559542+00:00",
        "returncode": 0
    },
    "summary": "Reviewed `contracts/Contract.sol` in `AUDIT_BUNDLE.txt`; no concrete, exploitable profit paths found under stated assumptions.",
    "raw_final": {
        "summary": "Reviewed `contracts/Contract.sol` in `AUDIT_BUNDLE.txt`; no concrete, exploitable profit paths found under stated assumptions.",
        "findings": [],
        "no_findings": true
    },
    "no_findings": true,
    "schema_version": 1
}

Opcode Heuristics

tool.cast_disasm
Delegatecall
0
Selfdestruct
0
CREATE2
0
CALL-family (heavy)
9
EXT*/BALANCE
2
Total opcodes
2873
Flags
No heuristic flags raised.
View cast disassembly output
00000000: PUSH1 0x60
00000002: PUSH1 0x40
00000004: MSTORE
00000005: CALLDATASIZE
00000006: ISZERO
00000007: PUSH2 0x00a3
0000000a: JUMPI
0000000b: PUSH1 0xe0
0000000d: PUSH1 0x02
0000000f: EXP
00000010: PUSH1 0x00
00000012: CALLDATALOAD
00000013: DIV
00000014: PUSH4 0x0a19b14a
00000019: DUP2
0000001a: EQ
0000001b: PUSH2 0x00ab
0000001e: JUMPI
0000001f: DUP1
00000020: PUSH4 0x278b8c0e
00000025: EQ
00000026: PUSH2 0x00e2
00000029: JUMPI
0000002a: DUP1
0000002b: PUSH4 0x2e1a7d4d
00000030: EQ
00000031: PUSH2 0x0111
00000034: JUMPI
00000035: DUP1
00000036: PUSH4 0x338b5dea
0000003b: EQ
0000003c: PUSH2 0x0125
0000003f: JUMPI
00000040: DUP1
00000041: PUSH4 0x57786394
00000046: EQ
00000047: PUSH2 0x0150
0000004a: JUMPI
0000004b: DUP1
0000004c: PUSH4 0x65e17c9d
00000051: EQ
00000052: PUSH2 0x0159
00000055: JUMPI
00000056: DUP1
00000057: PUSH4 0x6c86888b
0000005c: EQ
0000005d: PUSH2 0x016b
00000060: JUMPI
00000061: DUP1
00000062: PUSH4 0x93f0bb51
00000067: EQ
00000068: PUSH2 0x01da
0000006b: JUMPI
0000006c: DUP1
0000006d: PUSH4 0x9e281a98
00000072: EQ
00000073: PUSH2 0x0207
00000076: JUMPI
00000077: DUP1
00000078: PUSH4 0xc281309e
0000007d: EQ
0000007e: PUSH2 0x0232
00000081: JUMPI
00000082: DUP1
00000083: PUSH4 0xd0e30db0
00000088: EQ
00000089: PUSH2 0x023b
0000008c: JUMPI
0000008d: DUP1
0000008e: PUSH4 0xf7888aec
00000093: EQ
00000094: PUSH2 0x0287
00000097: JUMPI
00000098: DUP1
00000099: PUSH4 0xfb6e155f
0000009e: EQ
0000009f: PUSH2 0x02bb
000000a2: JUMPI
000000a3: JUMPDEST
000000a4: PUSH2 0x03e6
000000a7: PUSH2 0x0002
000000aa: JUMP
000000ab: JUMPDEST
000000ac: PUSH2 0x03e6
000000af: PUSH1 0x04
000000b1: CALLDATALOAD
000000b2: PUSH1 0x24
000000b4: CALLDATALOAD
000000b5: PUSH1 0x44
000000b7: CALLDATALOAD
000000b8: PUSH1 0x64
000000ba: CALLDATALOAD
000000bb: PUSH1 0x84
000000bd: CALLDATALOAD
000000be: PUSH1 0xa4
000000c0: CALLDATALOAD
000000c1: PUSH1 0xc4
000000c3: CALLDATALOAD
000000c4: PUSH1 0xe4
000000c6: CALLDATALOAD
000000c7: PUSH2 0x0104
000000ca: CALLDATALOAD
000000cb: PUSH2 0x0124
000000ce: CALLDATALOAD
000000cf: PUSH2 0x0144
000000d2: CALLDATALOAD
000000d3: PUSH1 0x00
000000d5: PUSH1 0x00
000000d7: CALLVALUE
000000d8: GT
000000d9: ISZERO
000000da: PUSH2 0x042b
000000dd: JUMPI
000000de: PUSH2 0x0002
000000e1: JUMP
000000e2: JUMPDEST
000000e3: PUSH2 0x03e6
000000e6: PUSH1 0x04
000000e8: CALLDATALOAD
000000e9: PUSH1 0x24
000000eb: CALLDATALOAD
000000ec: PUSH1 0x44
000000ee: CALLDATALOAD
000000ef: PUSH1 0x64
000000f1: CALLDATALOAD
000000f2: PUSH1 0x84
000000f4: CALLDATALOAD
000000f5: PUSH1 0xa4
000000f7: CALLDATALOAD
000000f8: PUSH1 0xc4
000000fa: CALLDATALOAD
000000fb: PUSH1 0xe4
000000fd: CALLDATALOAD
000000fe: PUSH2 0x0104
00000101: CALLDATALOAD
00000102: PUSH1 0x00
00000104: PUSH1 0x00
00000106: CALLVALUE
00000107: GT
00000108: ISZERO
00000109: PUSH2 0x08b4
0000010c: JUMPI
0000010d: PUSH2 0x0002
00000110: JUMP
00000111: JUMPDEST
00000112: PUSH2 0x03e6
00000115: PUSH1 0x04
00000117: CALLDATALOAD
00000118: PUSH1 0x00
0000011a: CALLVALUE
0000011b: GT
0000011c: ISZERO
0000011d: PUSH2 0x0ab3
00000120: JUMPI
00000121: PUSH2 0x0002
00000124: JUMP
00000125: JUMPDEST
00000126: PUSH2 0x03e6
00000129: PUSH1 0x04
0000012b: CALLDATALOAD
0000012c: PUSH1 0x24
0000012e: CALLDATALOAD
0000012f: PUSH1 0x00
00000131: CALLVALUE
00000132: GT
00000133: DUP1
00000134: PUSH2 0x0146
00000137: JUMPI
00000138: POP
00000139: DUP2
0000013a: PUSH1 0x01
0000013c: PUSH1 0xa0
0000013e: PUSH1 0x02
00000140: EXP
00000141: SUB
00000142: AND
00000143: PUSH1 0x00
00000145: EQ
00000146: JUMPDEST
00000147: ISZERO
00000148: PUSH2 0x0b61
0000014b: JUMPI
0000014c: PUSH2 0x0002
0000014f: JUMP
00000150: JUMPDEST
00000151: PUSH2 0x03e8
00000154: PUSH1 0x03
00000156: SLOAD
00000157: DUP2
00000158: JUMP
00000159: JUMPDEST
0000015a: PUSH2 0x03fa
0000015d: PUSH1 0x02
0000015f: SLOAD
00000160: PUSH1 0x01
00000162: PUSH1 0xa0
00000164: PUSH1 0x02
00000166: EXP
00000167: SUB
00000168: AND
00000169: DUP2
0000016a: JUMP
0000016b: JUMPDEST
0000016c: PUSH2 0x0417
0000016f: PUSH1 0x04
00000171: CALLDATALOAD
00000172: PUSH1 0x24
00000174: CALLDATALOAD
00000175: PUSH1 0x44
00000177: CALLDATALOAD
00000178: PUSH1 0x64
0000017a: CALLDATALOAD
0000017b: PUSH1 0x84
0000017d: CALLDATALOAD
0000017e: PUSH1 0xa4
00000180: CALLDATALOAD
00000181: PUSH1 0xc4
00000183: CALLDATALOAD
00000184: PUSH1 0xe4
00000186: CALLDATALOAD
00000187: PUSH2 0x0104
0000018a: CALLDATALOAD
0000018b: PUSH2 0x0124
0000018e: CALLDATALOAD
0000018f: PUSH2 0x0144
00000192: CALLDATALOAD
00000193: PUSH2 0x0164
00000196: CALLDATALOAD
00000197: PUSH1 0x01
00000199: PUSH1 0xa0
0000019b: PUSH1 0x02
0000019d: EXP
0000019e: SUB
0000019f: DUP13
000001a0: DUP2
000001a1: AND
000001a2: PUSH1 0x00
000001a4: SWAP1
000001a5: DUP2
000001a6: MSTORE
000001a7: PUSH1 0x20
000001a9: DUP2
000001aa: DUP2
000001ab: MSTORE
000001ac: PUSH1 0x40
000001ae: DUP1
000001af: DUP4
000001b0: KECCAK256
000001b1: SWAP4
000001b2: DUP6
000001b3: AND
000001b4: DUP4
000001b5: MSTORE
000001b6: SWAP3
000001b7: SWAP1
000001b8: MSTORE
000001b9: SWAP1
000001ba: DUP2
000001bb: KECCAK256
000001bc: SLOAD
000001bd: DUP4
000001be: SWAP1
000001bf: LT
000001c0: DUP1
000001c1: ISZERO
000001c2: SWAP1
000001c3: PUSH2 0x0c96
000001c6: JUMPI
000001c7: POP
000001c8: DUP3
000001c9: PUSH2 0x0c93
000001cc: DUP15
000001cd: DUP15
000001ce: DUP15
000001cf: DUP15
000001d0: DUP15
000001d1: DUP15
000001d2: DUP15
000001d3: DUP15
000001d4: DUP15
000001d5: DUP15
000001d6: PUSH2 0x02df
000001d9: JUMP
000001da: JUMPDEST
000001db: PUSH2 0x03e6
000001de: PUSH1 0x04
000001e0: CALLDATALOAD
000001e1: PUSH1 0x24
000001e3: CALLDATALOAD
000001e4: PUSH1 0x44
000001e6: CALLDATALOAD
000001e7: PUSH1 0x64
000001e9: CALLDATALOAD
000001ea: PUSH1 0x84
000001ec: CALLDATALOAD
000001ed: PUSH1 0xa4
000001ef: CALLDATALOAD
000001f0: PUSH1 0xc4
000001f2: CALLDATALOAD
000001f3: PUSH1 0xe4
000001f5: CALLDATALOAD
000001f6: PUSH2 0x0104
000001f9: CALLDATALOAD
000001fa: PUSH1 0x00
000001fc: CALLVALUE
000001fd: GT
000001fe: ISZERO
000001ff: PUSH2 0x0ca4
00000202: JUMPI
00000203: PUSH2 0x0002
00000206: JUMP
00000207: JUMPDEST
00000208: PUSH2 0x03e6
0000020b: PUSH1 0x04
0000020d: CALLDATALOAD
0000020e: PUSH1 0x24
00000210: CALLDATALOAD
00000211: PUSH1 0x00
00000213: CALLVALUE
00000214: GT
00000215: DUP1
00000216: PUSH2 0x0228
00000219: JUMPI
0000021a: POP
0000021b: DUP2
0000021c: PUSH1 0x01
0000021e: PUSH1 0xa0
00000220: PUSH1 0x02
00000222: EXP
00000223: SUB
00000224: AND
00000225: PUSH1 0x00
00000227: EQ
00000228: JUMPDEST
00000229: ISZERO
0000022a: PUSH2 0x0d30
0000022d: JUMPI
0000022e: PUSH2 0x0002
00000231: JUMP
00000232: JUMPDEST
00000233: PUSH2 0x03e8
00000236: PUSH1 0x04
00000238: SLOAD
00000239: DUP2
0000023a: JUMP
0000023b: JUMPDEST
0000023c: PUSH2 0x03e6
0000023f: CALLER
00000240: PUSH1 0x01
00000242: PUSH1 0xa0
00000244: PUSH1 0x02
00000246: EXP
00000247: SUB
00000248: AND
00000249: PUSH1 0x00
0000024b: SWAP1
0000024c: DUP2
0000024d: MSTORE
0000024e: PUSH1 0x00
00000250: DUP1
00000251: MLOAD
00000252: PUSH1 0x20
00000254: PUSH2 0x0f9f
00000257: DUP4
00000258: CODECOPY
00000259: DUP2
0000025a: MLOAD
0000025b: SWAP2
0000025c: MSTORE
0000025d: PUSH1 0x20
0000025f: MSTORE
00000260: PUSH1 0x40
00000262: SWAP1
00000263: KECCAK256
00000264: SLOAD
00000265: PUSH2 0x0ea3
00000268: SWAP1
00000269: CALLVALUE
0000026a: JUMPDEST
0000026b: PUSH1 0x00
0000026d: DUP3
0000026e: DUP3
0000026f: ADD
00000270: PUSH2 0x0f8f
00000273: DUP5
00000274: DUP3
00000275: LT
00000276: DUP1
00000277: ISZERO
00000278: SWAP1
00000279: PUSH2 0x0282
0000027c: JUMPI
0000027d: POP
0000027e: DUP4
0000027f: DUP3
00000280: LT
00000281: ISZERO
00000282: JUMPDEST
00000283: PUSH2 0x0660
00000286: JUMP
00000287: JUMPDEST
00000288: PUSH2 0x03e8
0000028b: PUSH1 0x04
0000028d: CALLDATALOAD
0000028e: PUSH1 0x24
00000290: CALLDATALOAD
00000291: PUSH1 0x01
00000293: PUSH1 0xa0
00000295: PUSH1 0x02
00000297: EXP
00000298: SUB
00000299: DUP3
0000029a: DUP2
0000029b: AND
0000029c: PUSH1 0x00
0000029e: SWAP1
0000029f: DUP2
000002a0: MSTORE
000002a1: PUSH1 0x20
000002a3: DUP2
000002a4: DUP2
000002a5: MSTORE
000002a6: PUSH1 0x40
000002a8: DUP1
000002a9: DUP4
000002aa: KECCAK256
000002ab: SWAP4
000002ac: DUP6
000002ad: AND
000002ae: DUP4
000002af: MSTORE
000002b0: SWAP3
000002b1: SWAP1
000002b2: MSTORE
000002b3: KECCAK256
000002b4: SLOAD
000002b5: JUMPDEST
000002b6: SWAP3
000002b7: SWAP2
000002b8: POP
000002b9: POP
000002ba: JUMP
000002bb: JUMPDEST
000002bc: PUSH2 0x03e8
000002bf: PUSH1 0x04
000002c1: CALLDATALOAD
000002c2: PUSH1 0x24
000002c4: CALLDATALOAD
000002c5: PUSH1 0x44
000002c7: CALLDATALOAD
000002c8: PUSH1 0x64
000002ca: CALLDATALOAD
000002cb: PUSH1 0x84
000002cd: CALLDATALOAD
000002ce: PUSH1 0xa4
000002d0: CALLDATALOAD
000002d1: PUSH1 0xc4
000002d3: CALLDATALOAD
000002d4: PUSH1 0xe4
000002d6: CALLDATALOAD
000002d7: PUSH2 0x0104
000002da: CALLDATALOAD
000002db: PUSH2 0x0124
000002de: CALLDATALOAD
000002df: JUMPDEST
000002e0: PUSH1 0x00
000002e2: PUSH1 0x00
000002e4: PUSH1 0x00
000002e6: PUSH1 0x00
000002e8: PUSH1 0x02
000002ea: DUP15
000002eb: DUP15
000002ec: DUP15
000002ed: DUP15
000002ee: DUP15
000002ef: DUP15
000002f0: PUSH1 0x40
000002f2: MLOAD
000002f3: DUP1
000002f4: DUP8
000002f5: PUSH1 0x01
000002f7: PUSH1 0xa0
000002f9: PUSH1 0x02
000002fb: EXP
000002fc: SUB
000002fd: AND
000002fe: PUSH1 0x60
00000300: PUSH1 0x02
00000302: EXP
00000303: MUL
00000304: DUP2
00000305: MSTORE
00000306: PUSH1 0x14
00000308: ADD
00000309: DUP7
0000030a: DUP2
0000030b: MSTORE
0000030c: PUSH1 0x20
0000030e: ADD
0000030f: DUP6
00000310: PUSH1 0x01
00000312: PUSH1 0xa0
00000314: PUSH1 0x02
00000316: EXP
00000317: SUB
00000318: AND
00000319: PUSH1 0x60
0000031b: PUSH1 0x02
0000031d: EXP
0000031e: MUL
0000031f: DUP2
00000320: MSTORE
00000321: PUSH1 0x14
00000323: ADD
00000324: DUP5
00000325: DUP2
00000326: MSTORE
00000327: PUSH1 0x20
00000329: ADD
0000032a: DUP4
0000032b: DUP2
0000032c: MSTORE
0000032d: PUSH1 0x20
0000032f: ADD
00000330: DUP3
00000331: DUP2
00000332: MSTORE
00000333: PUSH1 0x20
00000335: ADD
00000336: SWAP7
00000337: POP
00000338: POP
00000339: POP
0000033a: POP
0000033b: POP
0000033c: POP
0000033d: POP
0000033e: PUSH1 0x20
00000340: PUSH1 0x40
00000342: MLOAD
00000343: DUP1
00000344: DUP4
00000345: SUB
00000346: DUP2
00000347: PUSH1 0x00
00000349: DUP7
0000034a: PUSH2 0x61da
0000034d: GAS
0000034e: SUB
0000034f: CALL
00000350: ISZERO
00000351: PUSH2 0x0002
00000354: JUMPI
00000355: POP
00000356: POP
00000357: PUSH1 0x40
00000359: DUP1
0000035a: MLOAD
0000035b: DUP1
0000035c: MLOAD
0000035d: PUSH1 0x00
0000035f: DUP3
00000360: DUP2
00000361: MSTORE
00000362: PUSH1 0x20
00000364: DUP4
00000365: DUP2
00000366: ADD
00000367: DUP1
00000368: DUP7
00000369: MSTORE
0000036a: DUP4
0000036b: SWAP1
0000036c: MSTORE
0000036d: PUSH1 0xff
0000036f: DUP13
00000370: AND
00000371: DUP5
00000372: DUP7
00000373: ADD
00000374: MSTORE
00000375: PUSH1 0x60
00000377: DUP5
00000378: ADD
00000379: DUP12
0000037a: SWAP1
0000037b: MSTORE
0000037c: PUSH1 0x80
0000037e: DUP5
0000037f: ADD
00000380: DUP11
00000381: SWAP1
00000382: MSTORE
00000383: SWAP4
00000384: MLOAD
00000385: SWAP2
00000386: SWAP7
00000387: POP
00000388: PUSH1 0x01
0000038a: PUSH1 0xa0
0000038c: PUSH1 0x02
0000038e: EXP
0000038f: SUB
00000390: DUP13
00000391: AND
00000392: SWAP4
00000393: PUSH1 0x01
00000395: SWAP4
00000396: PUSH1 0xa0
00000398: DUP1
00000399: DUP3
0000039a: ADD
0000039b: SWAP5
0000039c: SWAP3
0000039d: SWAP4
0000039e: PUSH1 0x1f
000003a0: NOT
000003a1: DUP5
000003a2: ADD
000003a3: SWAP4
000003a4: SWAP3
000003a5: DUP4
000003a6: SWAP1
000003a7: SUB
000003a8: SWAP1
000003a9: SWAP2
000003aa: ADD
000003ab: SWAP2
000003ac: SWAP1
000003ad: DUP7
000003ae: PUSH2 0x61da
000003b1: GAS
000003b2: SUB
000003b3: CALL
000003b4: ISZERO
000003b5: PUSH2 0x0002
000003b8: JUMPI
000003b9: POP
000003ba: POP
000003bb: PUSH1 0x20
000003bd: PUSH1 0x40
000003bf: MLOAD
000003c0: SUB
000003c1: MLOAD
000003c2: PUSH1 0x01
000003c4: PUSH1 0xa0
000003c6: PUSH1 0x02
000003c8: EXP
000003c9: SUB
000003ca: AND
000003cb: EQ
000003cc: DUP1
000003cd: ISZERO
000003ce: PUSH2 0x03d7
000003d1: JUMPI
000003d2: POP
000003d3: DUP10
000003d4: NUMBER
000003d5: GT
000003d6: ISZERO
000003d7: JUMPDEST
000003d8: ISZERO
000003d9: ISZERO
000003da: PUSH2 0x0f29
000003dd: JUMPI
000003de: PUSH1 0x00
000003e0: SWAP4
000003e1: POP
000003e2: PUSH2 0x0f18
000003e5: JUMP
000003e6: JUMPDEST
000003e7: STOP
000003e8: JUMPDEST
000003e9: PUSH1 0x40
000003eb: DUP1
000003ec: MLOAD
000003ed: SWAP2
000003ee: DUP3
000003ef: MSTORE
000003f0: MLOAD
000003f1: SWAP1
000003f2: DUP2
000003f3: SWAP1
000003f4: SUB
000003f5: PUSH1 0x20
000003f7: ADD
000003f8: SWAP1
000003f9: RETURN
000003fa: JUMPDEST
000003fb: PUSH1 0x40
000003fd: DUP1
000003fe: MLOAD
000003ff: PUSH1 0x01
00000401: PUSH1 0xa0
00000403: PUSH1 0x02
00000405: EXP
00000406: SUB
00000407: SWAP3
00000408: SWAP1
00000409: SWAP3
0000040a: AND
0000040b: DUP3
0000040c: MSTORE
0000040d: MLOAD
0000040e: SWAP1
0000040f: DUP2
00000410: SWAP1
00000411: SUB
00000412: PUSH1 0x20
00000414: ADD
00000415: SWAP1
00000416: RETURN
00000417: JUMPDEST
00000418: PUSH1 0x40
0000041a: DUP1
0000041b: MLOAD
0000041c: SWAP2
0000041d: ISZERO
0000041e: ISZERO
0000041f: DUP3
00000420: MSTORE
00000421: MLOAD
00000422: SWAP1
00000423: DUP2
00000424: SWAP1
00000425: SUB
00000426: PUSH1 0x20
00000428: ADD
00000429: SWAP1
0000042a: RETURN
0000042b: JUMPDEST
0000042c: PUSH1 0x02
0000042e: DUP13
0000042f: DUP13
00000430: DUP13
00000431: DUP13
00000432: DUP13
00000433: DUP13
00000434: PUSH1 0x40
00000436: MLOAD
00000437: DUP1
00000438: DUP8
00000439: PUSH1 0x01
0000043b: PUSH1 0xa0
0000043d: PUSH1 0x02
0000043f: EXP
00000440: SUB
00000441: AND
00000442: PUSH1 0x60
00000444: PUSH1 0x02
00000446: EXP
00000447: MUL
00000448: DUP2
00000449: MSTORE
0000044a: PUSH1 0x14
0000044c: ADD
0000044d: DUP7
0000044e: DUP2
0000044f: MSTORE
00000450: PUSH1 0x20
00000452: ADD
00000453: DUP6
00000454: PUSH1 0x01
00000456: PUSH1 0xa0
00000458: PUSH1 0x02
0000045a: EXP
0000045b: SUB
0000045c: AND
0000045d: PUSH1 0x60
0000045f: PUSH1 0x02
00000461: EXP
00000462: MUL
00000463: DUP2
00000464: MSTORE
00000465: PUSH1 0x14
00000467: ADD
00000468: DUP5
00000469: DUP2
0000046a: MSTORE
0000046b: PUSH1 0x20
0000046d: ADD
0000046e: DUP4
0000046f: DUP2
00000470: MSTORE
00000471: PUSH1 0x20
00000473: ADD
00000474: DUP3
00000475: DUP2
00000476: MSTORE
00000477: PUSH1 0x20
00000479: ADD
0000047a: SWAP7
0000047b: POP
0000047c: POP
0000047d: POP
0000047e: POP
0000047f: POP
00000480: POP
00000481: POP
00000482: PUSH1 0x20
00000484: PUSH1 0x40
00000486: MLOAD
00000487: DUP1
00000488: DUP4
00000489: SUB
0000048a: DUP2
0000048b: PUSH1 0x00
0000048d: DUP7
0000048e: PUSH2 0x61da
00000491: GAS
00000492: SUB
00000493: CALL
00000494: ISZERO
00000495: PUSH2 0x0002
00000498: JUMPI
00000499: POP
0000049a: POP
0000049b: PUSH1 0x40
0000049d: DUP1
0000049e: MLOAD
0000049f: DUP1
000004a0: MLOAD
000004a1: PUSH1 0x00
000004a3: DUP3
000004a4: DUP2
000004a5: MSTORE
000004a6: PUSH1 0x20
000004a8: DUP4
000004a9: DUP2
000004aa: ADD
000004ab: DUP1
000004ac: DUP7
000004ad: MSTORE
000004ae: DUP4
000004af: SWAP1
000004b0: MSTORE
000004b1: PUSH1 0xff
000004b3: DUP11
000004b4: AND
000004b5: DUP5
000004b6: DUP7
000004b7: ADD
000004b8: MSTORE
000004b9: PUSH1 0x60
000004bb: DUP5
000004bc: ADD
000004bd: DUP10
000004be: SWAP1
000004bf: MSTORE
000004c0: PUSH1 0x80
000004c2: DUP5
000004c3: ADD
000004c4: DUP9
000004c5: SWAP1
000004c6: MSTORE
000004c7: SWAP4
000004c8: MLOAD
000004c9: SWAP2
000004ca: SWAP5
000004cb: POP
000004cc: PUSH1 0x01
000004ce: PUSH1 0xa0
000004d0: PUSH1 0x02
000004d2: EXP
000004d3: SUB
000004d4: DUP11
000004d5: AND
000004d6: SWAP4
000004d7: PUSH1 0x01
000004d9: SWAP4
000004da: PUSH1 0xa0
000004dc: DUP2
000004dd: DUP2
000004de: ADD
000004df: SWAP5
000004e0: SWAP3
000004e1: SWAP4
000004e2: PUSH1 0x1f
000004e4: NOT
000004e5: DUP5
000004e6: ADD
000004e7: SWAP4
000004e8: SWAP3
000004e9: DUP4
000004ea: SWAP1
000004eb: SUB
000004ec: SWAP1
000004ed: SWAP2
000004ee: ADD
000004ef: SWAP2
000004f0: SWAP1
000004f1: DUP7
000004f2: PUSH2 0x61da
000004f5: GAS
000004f6: SUB
000004f7: CALL
000004f8: ISZERO
000004f9: PUSH2 0x0002
000004fc: JUMPI
000004fd: POP
000004fe: POP
000004ff: PUSH1 0x20
00000501: PUSH1 0x40
00000503: MLOAD
00000504: SUB
00000505: MLOAD
00000506: PUSH1 0x01
00000508: PUSH1 0xa0
0000050a: PUSH1 0x02
0000050c: EXP
0000050d: SUB
0000050e: AND
0000050f: EQ
00000510: DUP1
00000511: ISZERO
00000512: PUSH2 0x051b
00000515: JUMPI
00000516: POP
00000517: DUP8
00000518: NUMBER
00000519: GT
0000051a: ISZERO
0000051b: JUMPDEST
0000051c: DUP1
0000051d: ISZERO
0000051e: PUSH2 0x0540
00000521: JUMPI
00000522: POP
00000523: PUSH1 0x00
00000525: DUP2
00000526: DUP2
00000527: MSTORE
00000528: PUSH1 0x01
0000052a: PUSH1 0x20
0000052c: MSTORE
0000052d: PUSH1 0x40
0000052f: SWAP1
00000530: KECCAK256
00000531: SLOAD
00000532: DUP12
00000533: SWAP1
00000534: PUSH2 0x053d
00000537: SWAP1
00000538: DUP5
00000539: PUSH2 0x026a
0000053c: JUMP
0000053d: JUMPDEST
0000053e: GT
0000053f: ISZERO
00000540: JUMPDEST
00000541: DUP1
00000542: ISZERO
00000543: PUSH2 0x0571
00000546: JUMPI
00000547: POP
00000548: PUSH1 0x01
0000054a: PUSH1 0xa0
0000054c: PUSH1 0x02
0000054e: EXP
0000054f: SUB
00000550: DUP13
00000551: DUP2
00000552: AND
00000553: PUSH1 0x00
00000555: SWAP1
00000556: DUP2
00000557: MSTORE
00000558: PUSH1 0x20
0000055a: DUP2
0000055b: DUP2
0000055c: MSTORE
0000055d: PUSH1 0x40
0000055f: DUP1
00000560: DUP4
00000561: KECCAK256
00000562: CALLER
00000563: SWAP1
00000564: SWAP5
00000565: AND
00000566: DUP4
00000567: MSTORE
00000568: SWAP3
00000569: SWAP1
0000056a: MSTORE
0000056b: KECCAK256
0000056c: SLOAD
0000056d: DUP3
0000056e: SWAP1
0000056f: LT
00000570: ISZERO
00000571: JUMPDEST
00000572: DUP1
00000573: ISZERO
00000574: PUSH2 0x05b4
00000577: JUMPI
00000578: POP
00000579: DUP11
0000057a: PUSH2 0x0583
0000057d: DUP11
0000057e: DUP5
0000057f: PUSH2 0x060a
00000582: JUMP
00000583: JUMPDEST
00000584: DUP2
00000585: ISZERO
00000586: PUSH2 0x0002
00000589: JUMPI
0000058a: PUSH1 0x01
0000058c: PUSH1 0xa0
0000058e: PUSH1 0x02
00000590: EXP
00000591: SUB
00000592: DUP13
00000593: DUP2
00000594: AND
00000595: PUSH1 0x00
00000597: SWAP1
00000598: DUP2
00000599: MSTORE
0000059a: PUSH1 0x20
0000059c: DUP2
0000059d: DUP2
0000059e: MSTORE
0000059f: PUSH1 0x40
000005a1: DUP1
000005a2: DUP4
000005a3: KECCAK256
000005a4: SWAP4
000005a5: DUP13
000005a6: AND
000005a7: DUP4
000005a8: MSTORE
000005a9: SWAP3
000005aa: SWAP1
000005ab: MSTORE
000005ac: KECCAK256
000005ad: SLOAD
000005ae: SWAP2
000005af: SWAP1
000005b0: DIV
000005b1: SWAP1
000005b2: LT
000005b3: ISZERO
000005b4: JUMPDEST
000005b5: ISZERO
000005b6: ISZERO
000005b7: PUSH2 0x062b
000005ba: JUMPI
000005bb: PUSH2 0x0002
000005be: JUMP
000005bf: JUMPDEST
000005c0: PUSH1 0x01
000005c2: PUSH1 0xa0
000005c4: PUSH1 0x02
000005c6: EXP
000005c7: SUB
000005c8: DUP14
000005c9: DUP2
000005ca: AND
000005cb: PUSH1 0x00
000005cd: SWAP1
000005ce: DUP2
000005cf: MSTORE
000005d0: PUSH1 0x20
000005d2: DUP2
000005d3: DUP2
000005d4: MSTORE
000005d5: PUSH1 0x40
000005d7: DUP1
000005d8: DUP4
000005d9: KECCAK256
000005da: CALLER
000005db: DUP6
000005dc: AND
000005dd: DUP5
000005de: MSTORE
000005df: SWAP1
000005e0: SWAP2
000005e1: MSTORE
000005e2: DUP1
000005e3: DUP3
000005e4: KECCAK256
000005e5: SWAP4
000005e6: SWAP1
000005e7: SWAP4
000005e8: SSTORE
000005e9: SWAP1
000005ea: DUP9
000005eb: AND
000005ec: DUP2
000005ed: MSTORE
000005ee: KECCAK256
000005ef: SLOAD
000005f0: PUSH1 0x03
000005f2: SLOAD
000005f3: PUSH2 0x066c
000005f6: SWAP2
000005f7: SWAP1
000005f8: PUSH8 0x0de0b6b3a7640000
00000601: SWAP1
00000602: PUSH2 0x06bc
00000605: SWAP1
00000606: DUP7
00000607: SWAP1
00000608: DUP4
00000609: SUB
0000060a: JUMPDEST
0000060b: PUSH1 0x00
0000060d: DUP3
0000060e: DUP3
0000060f: MUL
00000610: PUSH2 0x0f8f
00000613: DUP5
00000614: DUP4
00000615: EQ
00000616: DUP1
00000617: PUSH2 0x0282
0000061a: JUMPI
0000061b: POP
0000061c: DUP4
0000061d: DUP6
0000061e: DUP4
0000061f: DUP2
00000620: ISZERO
00000621: PUSH2 0x0002
00000624: JUMPI
00000625: DIV
00000626: EQ
00000627: PUSH2 0x0660
0000062a: JUMP
0000062b: JUMPDEST
0000062c: PUSH1 0x01
0000062e: PUSH1 0xa0
00000630: PUSH1 0x02
00000632: EXP
00000633: SUB
00000634: DUP13
00000635: DUP2
00000636: AND
00000637: PUSH1 0x00
00000639: SWAP1
0000063a: DUP2
0000063b: MSTORE
0000063c: PUSH1 0x20
0000063e: DUP2
0000063f: DUP2
00000640: MSTORE
00000641: PUSH1 0x40
00000643: DUP1
00000644: DUP4
00000645: KECCAK256
00000646: CALLER
00000647: SWAP1
00000648: SWAP5
00000649: AND
0000064a: DUP4
0000064b: MSTORE
0000064c: SWAP3
0000064d: SWAP1
0000064e: MSTORE
0000064f: KECCAK256
00000650: SLOAD
00000651: PUSH2 0x05bf
00000654: SWAP1
00000655: DUP4
00000656: JUMPDEST
00000657: PUSH1 0x00
00000659: PUSH2 0x0f96
0000065c: DUP4
0000065d: DUP4
0000065e: GT
0000065f: ISZERO
00000660: JUMPDEST
00000661: DUP1
00000662: ISZERO
00000663: ISZERO
00000664: PUSH2 0x0ab0
00000667: JUMPI
00000668: PUSH2 0x0002
0000066b: JUMP
0000066c: JUMPDEST
0000066d: PUSH1 0x01
0000066f: PUSH1 0xa0
00000671: PUSH1 0x02
00000673: EXP
00000674: SUB
00000675: DUP14
00000676: DUP2
00000677: AND
00000678: PUSH1 0x00
0000067a: SWAP1
0000067b: DUP2
0000067c: MSTORE
0000067d: PUSH1 0x20
0000067f: DUP2
00000680: DUP2
00000681: MSTORE
00000682: PUSH1 0x40
00000684: DUP1
00000685: DUP4
00000686: KECCAK256
00000687: DUP12
00000688: DUP6
00000689: AND
0000068a: DUP5
0000068b: MSTORE
0000068c: SWAP1
0000068d: SWAP2
0000068e: MSTORE
0000068f: DUP1
00000690: DUP3
00000691: KECCAK256
00000692: SWAP4
00000693: SWAP1
00000694: SWAP4
00000695: SSTORE
00000696: PUSH1 0x02
00000698: SLOAD
00000699: SWAP1
0000069a: SWAP2
0000069b: AND
0000069c: DUP2
0000069d: MSTORE
0000069e: KECCAK256
0000069f: SLOAD
000006a0: PUSH1 0x03
000006a2: SLOAD
000006a3: PUSH2 0x06c8
000006a6: SWAP2
000006a7: SWAP1
000006a8: PUSH8 0x0de0b6b3a7640000
000006b1: SWAP1
000006b2: PUSH2 0x06bc
000006b5: SWAP1
000006b6: DUP7
000006b7: SWAP1
000006b8: PUSH2 0x060a
000006bb: JUMP
000006bc: JUMPDEST
000006bd: DUP2
000006be: ISZERO
000006bf: PUSH2 0x0002
000006c2: JUMPI
000006c3: DIV
000006c4: PUSH2 0x026a
000006c7: JUMP
000006c8: JUMPDEST
000006c9: PUSH1 0x01
000006cb: PUSH1 0xa0
000006cd: PUSH1 0x02
000006cf: EXP
000006d0: SUB
000006d1: DUP14
000006d2: DUP2
000006d3: AND
000006d4: PUSH1 0x00
000006d6: SWAP1
000006d7: DUP2
000006d8: MSTORE
000006d9: PUSH1 0x20
000006db: DUP2
000006dc: DUP2
000006dd: MSTORE
000006de: PUSH1 0x40
000006e0: DUP1
000006e1: DUP4
000006e2: KECCAK256
000006e3: PUSH1 0x02
000006e5: SLOAD
000006e6: DUP6
000006e7: AND
000006e8: DUP5
000006e9: MSTORE
000006ea: DUP3
000006eb: MSTORE
000006ec: DUP1
000006ed: DUP4
000006ee: KECCAK256
000006ef: SWAP5
000006f0: SWAP1
000006f1: SWAP5
000006f2: SSTORE
000006f3: DUP14
000006f4: DUP4
000006f5: AND
000006f6: DUP3
000006f7: MSTORE
000006f8: DUP2
000006f9: DUP2
000006fa: MSTORE
000006fb: DUP4
000006fc: DUP3
000006fd: KECCAK256
000006fe: SWAP3
000006ff: DUP11
00000700: AND
00000701: DUP3
00000702: MSTORE
00000703: SWAP2
00000704: SWAP1
00000705: SWAP2
00000706: MSTORE
00000707: KECCAK256
00000708: SLOAD
00000709: PUSH2 0x0717
0000070c: SWAP1
0000070d: DUP13
0000070e: PUSH2 0x076c
00000711: DUP13
00000712: DUP7
00000713: PUSH2 0x060a
00000716: JUMP
00000717: JUMPDEST
00000718: PUSH1 0x01
0000071a: PUSH1 0xa0
0000071c: PUSH1 0x02
0000071e: EXP
0000071f: SUB
00000720: DUP12
00000721: DUP2
00000722: AND
00000723: PUSH1 0x00
00000725: SWAP1
00000726: DUP2
00000727: MSTORE
00000728: PUSH1 0x20
0000072a: DUP2
0000072b: DUP2
0000072c: MSTORE
0000072d: PUSH1 0x40
0000072f: DUP1
00000730: DUP4
00000731: KECCAK256
00000732: DUP12
00000733: DUP6
00000734: AND
00000735: DUP5
00000736: MSTORE
00000737: SWAP1
00000738: SWAP2
00000739: MSTORE
0000073a: DUP1
0000073b: DUP3
0000073c: KECCAK256
0000073d: SWAP4
0000073e: SWAP1
0000073f: SWAP4
00000740: SSTORE
00000741: CALLER
00000742: SWAP1
00000743: SWAP2
00000744: AND
00000745: DUP2
00000746: MSTORE
00000747: KECCAK256
00000748: SLOAD
00000749: PUSH1 0x04
0000074b: SLOAD
0000074c: PUSH2 0x0778
0000074f: SWAP2
00000750: SWAP1
00000751: PUSH8 0x0de0b6b3a7640000
0000075a: SWAP1
0000075b: DUP15
0000075c: SWAP1
0000075d: PUSH2 0x07cd
00000760: SWAP1
00000761: PUSH2 0x07e0
00000764: SWAP1
00000765: DUP5
00000766: SUB
00000767: DUP16
00000768: PUSH2 0x060a
0000076b: JUMP
0000076c: JUMPDEST
0000076d: DUP2
0000076e: ISZERO
0000076f: PUSH2 0x0002
00000772: JUMPI
00000773: DIV
00000774: PUSH2 0x0656
00000777: JUMP
00000778: JUMPDEST
00000779: PUSH1 0x01
0000077b: PUSH1 0xa0
0000077d: PUSH1 0x02
0000077f: EXP
00000780: SUB
00000781: DUP12
00000782: DUP2
00000783: AND
00000784: PUSH1 0x00
00000786: SWAP1
00000787: DUP2
00000788: MSTORE
00000789: PUSH1 0x20
0000078b: DUP2
0000078c: DUP2
0000078d: MSTORE
0000078e: PUSH1 0x40
00000790: DUP1
00000791: DUP4
00000792: KECCAK256
00000793: CALLER
00000794: DUP6
00000795: AND
00000796: DUP5
00000797: MSTORE
00000798: SWAP1
00000799: SWAP2
0000079a: MSTORE
0000079b: DUP1
0000079c: DUP3
0000079d: KECCAK256
0000079e: SWAP4
0000079f: SWAP1
000007a0: SWAP4
000007a1: SSTORE
000007a2: PUSH1 0x02
000007a4: SLOAD
000007a5: SWAP1
000007a6: SWAP2
000007a7: AND
000007a8: DUP2
000007a9: MSTORE
000007aa: KECCAK256
000007ab: SLOAD
000007ac: PUSH1 0x04
000007ae: SLOAD
000007af: PUSH2 0x07e6
000007b2: SWAP2
000007b3: SWAP1
000007b4: PUSH8 0x0de0b6b3a7640000
000007bd: SWAP1
000007be: DUP15
000007bf: SWAP1
000007c0: PUSH2 0x07cd
000007c3: SWAP1
000007c4: PUSH2 0x07e0
000007c7: SWAP1
000007c8: DUP16
000007c9: PUSH2 0x060a
000007cc: JUMP
000007cd: JUMPDEST
000007ce: DUP2
000007cf: ISZERO
000007d0: PUSH2 0x0002
000007d3: JUMPI
000007d4: DIV
000007d5: DUP2
000007d6: ISZERO
000007d7: PUSH2 0x0002
000007da: JUMPI
000007db: DIV
000007dc: PUSH2 0x026a
000007df: JUMP
000007e0: JUMPDEST
000007e1: DUP8
000007e2: PUSH2 0x060a
000007e5: JUMP
000007e6: JUMPDEST
000007e7: PUSH1 0x01
000007e9: PUSH1 0xa0
000007eb: PUSH1 0x02
000007ed: EXP
000007ee: SUB
000007ef: DUP12
000007f0: DUP2
000007f1: AND
000007f2: PUSH1 0x00
000007f4: SWAP1
000007f5: DUP2
000007f6: MSTORE
000007f7: PUSH1 0x20
000007f9: DUP2
000007fa: DUP2
000007fb: MSTORE
000007fc: PUSH1 0x40
000007fe: DUP1
000007ff: DUP4
00000800: KECCAK256
00000801: PUSH1 0x02
00000803: SLOAD
00000804: SWAP1
00000805: SWAP5
00000806: AND
00000807: DUP4
00000808: MSTORE
00000809: SWAP3
0000080a: DUP2
0000080b: MSTORE
0000080c: DUP3
0000080d: DUP3
0000080e: KECCAK256
0000080f: SWAP4
00000810: SWAP1
00000811: SWAP4
00000812: SSTORE
00000813: DUP4
00000814: DUP2
00000815: MSTORE
00000816: PUSH1 0x01
00000818: SWAP1
00000819: SWAP3
0000081a: MSTORE
0000081b: SWAP1
0000081c: KECCAK256
0000081d: SLOAD
0000081e: PUSH2 0x0827
00000821: SWAP1
00000822: DUP4
00000823: PUSH2 0x026a
00000826: JUMP
00000827: JUMPDEST
00000828: PUSH1 0x00
0000082a: DUP3
0000082b: DUP2
0000082c: MSTORE
0000082d: PUSH1 0x01
0000082f: PUSH1 0x20
00000831: MSTORE
00000832: PUSH1 0x40
00000834: SWAP1
00000835: KECCAK256
00000836: SSTORE
00000837: PUSH32 0x6effdda786735d5033bfad5f53e5131abcced9e52be6c507b62d639685fbed6d
00000858: DUP13
00000859: DUP4
0000085a: DUP13
0000085b: DUP15
0000085c: DUP14
0000085d: DUP4
0000085e: MUL
0000085f: DUP2
00000860: ISZERO
00000861: PUSH2 0x0002
00000864: JUMPI
00000865: PUSH1 0x40
00000867: DUP1
00000868: MLOAD
00000869: PUSH1 0x01
0000086b: PUSH1 0xa0
0000086d: PUSH1 0x02
0000086f: EXP
00000870: SUB
00000871: SWAP7
00000872: DUP8
00000873: AND
00000874: DUP2
00000875: MSTORE
00000876: PUSH1 0x20
00000878: DUP2
00000879: ADD
0000087a: SWAP6
0000087b: SWAP1
0000087c: SWAP6
0000087d: MSTORE
0000087e: SWAP3
0000087f: DUP6
00000880: AND
00000881: DUP5
00000882: DUP5
00000883: ADD
00000884: MSTORE
00000885: DIV
00000886: PUSH1 0x60
00000888: DUP4
00000889: ADD
0000088a: MSTORE
0000088b: DUP10
0000088c: DUP4
0000088d: AND
0000088e: PUSH1 0x80
00000890: DUP4
00000891: ADD
00000892: MSTORE
00000893: CALLER
00000894: SWAP1
00000895: SWAP3
00000896: AND
00000897: PUSH1 0xa0
00000899: DUP3
0000089a: ADD
0000089b: MSTORE
0000089c: SWAP1
0000089d: MLOAD
0000089e: SWAP1
0000089f: DUP2
000008a0: SWAP1
000008a1: SUB
000008a2: PUSH1 0xc0
000008a4: ADD
000008a5: SWAP1
000008a6: LOG1
000008a7: POP
000008a8: POP
000008a9: POP
000008aa: POP
000008ab: POP
000008ac: POP
000008ad: POP
000008ae: POP
000008af: POP
000008b0: POP
000008b1: POP
000008b2: POP
000008b3: JUMP
000008b4: JUMPDEST
000008b5: PUSH1 0x02
000008b7: DUP11
000008b8: DUP11
000008b9: DUP11
000008ba: DUP11
000008bb: DUP11
000008bc: DUP11
000008bd: PUSH1 0x40
000008bf: MLOAD
000008c0: DUP1
000008c1: DUP8
000008c2: PUSH1 0x01
000008c4: PUSH1 0xa0
000008c6: PUSH1 0x02
000008c8: EXP
000008c9: SUB
000008ca: AND
000008cb: PUSH1 0x60
000008cd: PUSH1 0x02
000008cf: EXP
000008d0: MUL
000008d1: DUP2
000008d2: MSTORE
000008d3: PUSH1 0x14
000008d5: ADD
000008d6: DUP7
000008d7: DUP2
000008d8: MSTORE
000008d9: PUSH1 0x20
000008db: ADD
000008dc: DUP6
000008dd: PUSH1 0x01
000008df: PUSH1 0xa0
000008e1: PUSH1 0x02
000008e3: EXP
000008e4: SUB
000008e5: AND
000008e6: PUSH1 0x60
000008e8: PUSH1 0x02
000008ea: EXP
000008eb: MUL
000008ec: DUP2
000008ed: MSTORE
000008ee: PUSH1 0x14
000008f0: ADD
000008f1: DUP5
000008f2: DUP2
000008f3: MSTORE
000008f4: PUSH1 0x20
000008f6: ADD
000008f7: DUP4
000008f8: DUP2
000008f9: MSTORE
000008fa: PUSH1 0x20
000008fc: ADD
000008fd: DUP3
000008fe: DUP2
000008ff: MSTORE
00000900: PUSH1 0x20
00000902: ADD
00000903: SWAP7
00000904: POP
00000905: POP
00000906: POP
00000907: POP
00000908: POP
00000909: POP
0000090a: POP
0000090b: PUSH1 0x20
0000090d: PUSH1 0x40
0000090f: MLOAD
00000910: DUP1
00000911: DUP4
00000912: SUB
00000913: DUP2
00000914: PUSH1 0x00
00000916: DUP7
00000917: PUSH2 0x61da
0000091a: GAS
0000091b: SUB
0000091c: CALL
0000091d: ISZERO
0000091e: PUSH2 0x0002
00000921: JUMPI
00000922: POP
00000923: POP
00000924: PUSH1 0x40
00000926: DUP1
00000927: MLOAD
00000928: DUP1
00000929: MLOAD
0000092a: PUSH1 0x00
0000092c: DUP3
0000092d: DUP2
0000092e: MSTORE
0000092f: PUSH1 0x20
00000931: DUP4
00000932: DUP2
00000933: ADD
00000934: DUP1
00000935: DUP7
00000936: MSTORE
00000937: DUP4
00000938: SWAP1
00000939: MSTORE
0000093a: PUSH1 0xff
0000093c: DUP10
0000093d: AND
0000093e: DUP5
0000093f: DUP7
00000940: ADD
00000941: MSTORE
00000942: PUSH1 0x60
00000944: DUP5
00000945: ADD
00000946: DUP9
00000947: SWAP1
00000948: MSTORE
00000949: PUSH1 0x80
0000094b: DUP5
0000094c: ADD
0000094d: DUP8
0000094e: SWAP1
0000094f: MSTORE
00000950: SWAP4
00000951: MLOAD
00000952: SWAP2
00000953: SWAP5
00000954: POP
00000955: CALLER
00000956: PUSH1 0x01
00000958: PUSH1 0xa0
0000095a: PUSH1 0x02
0000095c: EXP
0000095d: SUB
0000095e: AND
0000095f: SWAP4
00000960: PUSH1 0x01
00000962: SWAP4
00000963: PUSH1 0xa0
00000965: DUP2
00000966: DUP2
00000967: ADD
00000968: SWAP5
00000969: SWAP3
0000096a: SWAP4
0000096b: PUSH1 0x1f
0000096d: NOT
0000096e: DUP5
0000096f: ADD
00000970: SWAP4
00000971: SWAP3
00000972: DUP4
00000973: SWAP1
00000974: SUB
00000975: SWAP1
00000976: SWAP2
00000977: ADD
00000978: SWAP2
00000979: SWAP1
0000097a: DUP7
0000097b: PUSH2 0x61da
0000097e: GAS
0000097f: SUB
00000980: CALL
00000981: ISZERO
00000982: PUSH2 0x0002
00000985: JUMPI
00000986: POP
00000987: POP
00000988: PUSH1 0x40
0000098a: MLOAD
0000098b: PUSH1 0x1f
0000098d: NOT
0000098e: ADD
0000098f: MLOAD
00000990: PUSH1 0x01
00000992: PUSH1 0xa0
00000994: PUSH1 0x02
00000996: EXP
00000997: SUB
00000998: AND
00000999: EQ
0000099a: PUSH2 0x09a2
0000099d: JUMPI
0000099e: PUSH2 0x0002
000009a1: JUMP
000009a2: JUMPDEST
000009a3: PUSH1 0x00
000009a5: DUP2
000009a6: DUP2
000009a7: MSTORE
000009a8: PUSH1 0x01
000009aa: PUSH1 0x20
000009ac: SWAP1
000009ad: DUP2
000009ae: MSTORE
000009af: PUSH1 0x40
000009b1: SWAP2
000009b2: DUP3
000009b3: SWAP1
000009b4: KECCAK256
000009b5: DUP12
000009b6: SWAP1
000009b7: SSTORE
000009b8: DUP2
000009b9: MLOAD
000009ba: PUSH1 0x01
000009bc: PUSH1 0xa0
000009be: PUSH1 0x02
000009c0: EXP
000009c1: SUB
000009c2: DUP14
000009c3: DUP2
000009c4: AND
000009c5: DUP3
000009c6: MSTORE
000009c7: SWAP2
000009c8: DUP2
000009c9: ADD
000009ca: DUP13
000009cb: SWAP1
000009cc: MSTORE
000009cd: DUP11
000009ce: DUP3
000009cf: AND
000009d0: DUP2
000009d1: DUP5
000009d2: ADD
000009d3: MSTORE
000009d4: PUSH1 0x60
000009d6: DUP2
000009d7: ADD
000009d8: DUP11
000009d9: SWAP1
000009da: MSTORE
000009db: PUSH1 0x80
000009dd: DUP2
000009de: ADD
000009df: DUP10
000009e0: SWAP1
000009e1: MSTORE
000009e2: PUSH1 0xa0
000009e4: DUP2
000009e5: ADD
000009e6: DUP9
000009e7: SWAP1
000009e8: MSTORE
000009e9: CALLER
000009ea: SWAP1
000009eb: SWAP2
000009ec: AND
000009ed: PUSH1 0xc0
000009ef: DUP3
000009f0: ADD
000009f1: MSTORE
000009f2: PUSH1 0xff
000009f4: DUP7
000009f5: AND
000009f6: PUSH1 0xe0
000009f8: DUP3
000009f9: ADD
000009fa: MSTORE
000009fb: PUSH2 0x0100
000009fe: DUP2
000009ff: ADD
00000a00: DUP6
00000a01: SWAP1
00000a02: MSTORE
00000a03: PUSH2 0x0120
00000a06: DUP2
00000a07: ADD
00000a08: DUP5
00000a09: SWAP1
00000a0a: MSTORE
00000a0b: SWAP1
00000a0c: MLOAD
00000a0d: PUSH32 0x1e0b760c386003e9cb9bcf4fcf3997886042859d9b6ed6320e804597fcdb28b0
00000a2e: SWAP2
00000a2f: DUP2
00000a30: SWAP1
00000a31: SUB
00000a32: PUSH2 0x0140
00000a35: ADD
00000a36: SWAP1
00000a37: LOG1
00000a38: POP
00000a39: POP
00000a3a: POP
00000a3b: POP
00000a3c: POP
00000a3d: POP
00000a3e: POP
00000a3f: POP
00000a40: POP
00000a41: POP
00000a42: JUMP
00000a43: JUMPDEST
00000a44: CALLER
00000a45: PUSH1 0x01
00000a47: PUSH1 0xa0
00000a49: PUSH1 0x02
00000a4b: EXP
00000a4c: SUB
00000a4d: AND
00000a4e: PUSH1 0x00
00000a50: DUP2
00000a51: DUP2
00000a52: MSTORE
00000a53: PUSH1 0x00
00000a55: DUP1
00000a56: MLOAD
00000a57: PUSH1 0x20
00000a59: PUSH2 0x0f9f
00000a5c: DUP4
00000a5d: CODECOPY
00000a5e: DUP2
00000a5f: MLOAD
00000a60: SWAP2
00000a61: MSTORE
00000a62: PUSH1 0x20
00000a64: SWAP1
00000a65: DUP2
00000a66: MSTORE
00000a67: PUSH1 0x40
00000a69: DUP1
00000a6a: DUP4
00000a6b: KECCAK256
00000a6c: SLOAD
00000a6d: DUP2
00000a6e: MLOAD
00000a6f: SWAP4
00000a70: DUP5
00000a71: MSTORE
00000a72: SWAP2
00000a73: DUP4
00000a74: ADD
00000a75: SWAP4
00000a76: SWAP1
00000a77: SWAP4
00000a78: MSTORE
00000a79: DUP2
00000a7a: DUP4
00000a7b: ADD
00000a7c: DUP5
00000a7d: SWAP1
00000a7e: MSTORE
00000a7f: PUSH1 0x60
00000a81: DUP3
00000a82: ADD
00000a83: MSTORE
00000a84: SWAP1
00000a85: MLOAD
00000a86: PUSH32 0xf341246adaac6f497bc2a656f546ab9e182111d630394f0c57c710a59a2cb567
00000aa7: SWAP2
00000aa8: DUP2
00000aa9: SWAP1
00000aaa: SUB
00000aab: PUSH1 0x80
00000aad: ADD
00000aae: SWAP1
00000aaf: LOG1
00000ab0: JUMPDEST
00000ab1: POP
00000ab2: JUMP
00000ab3: JUMPDEST
00000ab4: CALLER
00000ab5: PUSH1 0x01
00000ab7: PUSH1 0xa0
00000ab9: PUSH1 0x02
00000abb: EXP
00000abc: SUB
00000abd: AND
00000abe: PUSH1 0x00
00000ac0: SWAP1
00000ac1: DUP2
00000ac2: MSTORE
00000ac3: PUSH1 0x00
00000ac5: DUP1
00000ac6: MLOAD
00000ac7: PUSH1 0x20
00000ac9: PUSH2 0x0f9f
00000acc: DUP4
00000acd: CODECOPY
00000ace: DUP2
00000acf: MLOAD
00000ad0: SWAP2
00000ad1: MSTORE
00000ad2: PUSH1 0x20
00000ad4: MSTORE
00000ad5: PUSH1 0x40
00000ad7: SWAP1
00000ad8: KECCAK256
00000ad9: SLOAD
00000ada: DUP2
00000adb: SWAP1
00000adc: LT
00000add: ISZERO
00000ade: PUSH2 0x0ae6
00000ae1: JUMPI
00000ae2: PUSH2 0x0002
00000ae5: JUMP
00000ae6: JUMPDEST
00000ae7: CALLER
00000ae8: PUSH1 0x01
00000aea: PUSH1 0xa0
00000aec: PUSH1 0x02
00000aee: EXP
00000aef: SUB
00000af0: AND
00000af1: PUSH1 0x00
00000af3: SWAP1
00000af4: DUP2
00000af5: MSTORE
00000af6: PUSH1 0x00
00000af8: DUP1
00000af9: MLOAD
00000afa: PUSH1 0x20
00000afc: PUSH2 0x0f9f
00000aff: DUP4
00000b00: CODECOPY
00000b01: DUP2
00000b02: MLOAD
00000b03: SWAP2
00000b04: MSTORE
00000b05: PUSH1 0x20
00000b07: MSTORE
00000b08: PUSH1 0x40
00000b0a: SWAP1
00000b0b: KECCAK256
00000b0c: SLOAD
00000b0d: PUSH2 0x0b16
00000b10: SWAP1
00000b11: DUP3
00000b12: PUSH2 0x0656
00000b15: JUMP
00000b16: JUMPDEST
00000b17: CALLER
00000b18: PUSH1 0x01
00000b1a: PUSH1 0xa0
00000b1c: PUSH1 0x02
00000b1e: EXP
00000b1f: SUB
00000b20: AND
00000b21: PUSH1 0x00
00000b23: DUP2
00000b24: DUP2
00000b25: MSTORE
00000b26: PUSH1 0x00
00000b28: DUP1
00000b29: MLOAD
00000b2a: PUSH1 0x20
00000b2c: PUSH2 0x0f9f
00000b2f: DUP4
00000b30: CODECOPY
00000b31: DUP2
00000b32: MLOAD
00000b33: SWAP2
00000b34: MSTORE
00000b35: PUSH1 0x20
00000b37: MSTORE
00000b38: PUSH1 0x40
00000b3a: DUP1
00000b3b: DUP3
00000b3c: KECCAK256
00000b3d: SWAP4
00000b3e: SWAP1
00000b3f: SWAP4
00000b40: SSTORE
00000b41: SWAP2
00000b42: MLOAD
00000b43: SWAP1
00000b44: SWAP2
00000b45: DUP4
00000b46: SWAP2
00000b47: SWAP1
00000b48: DUP2
00000b49: DUP2
00000b4a: DUP2
00000b4b: DUP6
00000b4c: DUP8
00000b4d: PUSH2 0x8502
00000b50: GAS
00000b51: SUB
00000b52: CALL
00000b53: SWAP3
00000b54: POP
00000b55: POP
00000b56: POP
00000b57: ISZERO
00000b58: ISZERO
00000b59: PUSH2 0x0a43
00000b5c: JUMPI
00000b5d: PUSH2 0x0002
00000b60: JUMP
00000b61: JUMPDEST
00000b62: DUP2
00000b63: PUSH1 0x01
00000b65: PUSH1 0xa0
00000b67: PUSH1 0x02
00000b69: EXP
00000b6a: SUB
00000b6b: AND
00000b6c: PUSH4 0x23b872dd
00000b71: CALLER
00000b72: ADDRESS
00000b73: DUP5
00000b74: PUSH1 0x40
00000b76: MLOAD
00000b77: DUP5
00000b78: PUSH1 0xe0
00000b7a: PUSH1 0x02
00000b7c: EXP
00000b7d: MUL
00000b7e: DUP2
00000b7f: MSTORE
00000b80: PUSH1 0x04
00000b82: ADD
00000b83: DUP1
00000b84: DUP5
00000b85: PUSH1 0x01
00000b87: PUSH1 0xa0
00000b89: PUSH1 0x02
00000b8b: EXP
00000b8c: SUB
00000b8d: AND
00000b8e: DUP2
00000b8f: MSTORE
00000b90: PUSH1 0x20
00000b92: ADD
00000b93: DUP4
00000b94: PUSH1 0x01
00000b96: PUSH1 0xa0
00000b98: PUSH1 0x02
00000b9a: EXP
00000b9b: SUB
00000b9c: AND
00000b9d: DUP2
00000b9e: MSTORE
00000b9f: PUSH1 0x20
00000ba1: ADD
00000ba2: DUP3
00000ba3: DUP2
00000ba4: MSTORE
00000ba5: PUSH1 0x20
00000ba7: ADD
00000ba8: SWAP4
00000ba9: POP
00000baa: POP
00000bab: POP
00000bac: POP
00000bad: PUSH1 0x20
00000baf: PUSH1 0x40
00000bb1: MLOAD
00000bb2: DUP1
00000bb3: DUP4
00000bb4: SUB
00000bb5: DUP2
00000bb6: PUSH1 0x00
00000bb8: DUP8
00000bb9: DUP1
00000bba: EXTCODESIZE
00000bbb: ISZERO
00000bbc: PUSH2 0x0002
00000bbf: JUMPI
00000bc0: PUSH2 0x61da
00000bc3: GAS
00000bc4: SUB
00000bc5: CALL
00000bc6: ISZERO
00000bc7: PUSH2 0x0002
00000bca: JUMPI
00000bcb: POP
00000bcc: POP
00000bcd: PUSH1 0x40
00000bcf: MLOAD
00000bd0: MLOAD
00000bd1: ISZERO
00000bd2: ISZERO
00000bd3: SWAP1
00000bd4: POP
00000bd5: PUSH2 0x0bdd
00000bd8: JUMPI
00000bd9: PUSH2 0x0002
00000bdc: JUMP
00000bdd: JUMPDEST
00000bde: PUSH1 0x01
00000be0: PUSH1 0xa0
00000be2: PUSH1 0x02
00000be4: EXP
00000be5: SUB
00000be6: DUP3
00000be7: DUP2
00000be8: AND
00000be9: PUSH1 0x00
00000beb: SWAP1
00000bec: DUP2
00000bed: MSTORE
00000bee: PUSH1 0x20
00000bf0: DUP2
00000bf1: DUP2
00000bf2: MSTORE
00000bf3: PUSH1 0x40
00000bf5: DUP1
00000bf6: DUP4
00000bf7: KECCAK256
00000bf8: CALLER
00000bf9: SWAP1
00000bfa: SWAP5
00000bfb: AND
00000bfc: DUP4
00000bfd: MSTORE
00000bfe: SWAP3
00000bff: SWAP1
00000c00: MSTORE
00000c01: KECCAK256
00000c02: SLOAD
00000c03: PUSH2 0x0c0c
00000c06: SWAP1
00000c07: DUP3
00000c08: PUSH2 0x026a
00000c0b: JUMP
00000c0c: JUMPDEST
00000c0d: PUSH1 0x01
00000c0f: PUSH1 0xa0
00000c11: PUSH1 0x02
00000c13: EXP
00000c14: SUB
00000c15: DUP4
00000c16: DUP2
00000c17: AND
00000c18: PUSH1 0x00
00000c1a: DUP2
00000c1b: DUP2
00000c1c: MSTORE
00000c1d: PUSH1 0x20
00000c1f: DUP2
00000c20: DUP2
00000c21: MSTORE
00000c22: PUSH1 0x40
00000c24: DUP1
00000c25: DUP4
00000c26: KECCAK256
00000c27: CALLER
00000c28: SWAP1
00000c29: SWAP6
00000c2a: AND
00000c2b: DUP1
00000c2c: DUP5
00000c2d: MSTORE
00000c2e: SWAP5
00000c2f: DUP3
00000c30: MSTORE
00000c31: SWAP2
00000c32: DUP3
00000c33: SWAP1
00000c34: KECCAK256
00000c35: DUP6
00000c36: SWAP1
00000c37: SSTORE
00000c38: DUP2
00000c39: MLOAD
00000c3a: SWAP3
00000c3b: DUP4
00000c3c: MSTORE
00000c3d: DUP3
00000c3e: ADD
00000c3f: SWAP3
00000c40: SWAP1
00000c41: SWAP3
00000c42: MSTORE
00000c43: DUP1
00000c44: DUP3
00000c45: ADD
00000c46: DUP5
00000c47: SWAP1
00000c48: MSTORE
00000c49: PUSH1 0x60
00000c4b: DUP2
00000c4c: ADD
00000c4d: SWAP3
00000c4e: SWAP1
00000c4f: SWAP3
00000c50: MSTORE
00000c51: MLOAD
00000c52: PUSH32 0xdcbc1c05240f31ff3ad067ef1ee35ce4997762752e3a095284754544f4c709d7
00000c73: SWAP2
00000c74: DUP2
00000c75: SWAP1
00000c76: SUB
00000c77: PUSH1 0x80
00000c79: ADD
00000c7a: SWAP1
00000c7b: LOG1
00000c7c: POP
00000c7d: POP
00000c7e: JUMP
00000c7f: JUMPDEST
00000c80: POP
00000c81: PUSH1 0x01
00000c83: JUMPDEST
00000c84: SWAP13
00000c85: SWAP12
00000c86: POP
00000c87: POP
00000c88: POP
00000c89: POP
00000c8a: POP
00000c8b: POP
00000c8c: POP
00000c8d: POP
00000c8e: POP
00000c8f: POP
00000c90: POP
00000c91: POP
00000c92: JUMP
00000c93: JUMPDEST
00000c94: LT
00000c95: ISZERO
00000c96: JUMPDEST
00000c97: ISZERO
00000c98: ISZERO
00000c99: PUSH2 0x0c7f
00000c9c: JUMPI
00000c9d: POP
00000c9e: PUSH1 0x00
00000ca0: PUSH2 0x0c83
00000ca3: JUMP
00000ca4: JUMPDEST
00000ca5: PUSH1 0x40
00000ca7: DUP1
00000ca8: MLOAD
00000ca9: PUSH1 0x01
00000cab: PUSH1 0xa0
00000cad: PUSH1 0x02
00000caf: EXP
00000cb0: SUB
00000cb1: DUP12
00000cb2: DUP2
00000cb3: AND
00000cb4: DUP3
00000cb5: MSTORE
00000cb6: PUSH1 0x20
00000cb8: DUP3
00000cb9: ADD
00000cba: DUP12
00000cbb: SWAP1
00000cbc: MSTORE
00000cbd: DUP10
00000cbe: DUP2
00000cbf: AND
00000cc0: DUP3
00000cc1: DUP5
00000cc2: ADD
00000cc3: MSTORE
00000cc4: PUSH1 0x60
00000cc6: DUP3
00000cc7: ADD
00000cc8: DUP10
00000cc9: SWAP1
00000cca: MSTORE
00000ccb: PUSH1 0x80
00000ccd: DUP3
00000cce: ADD
00000ccf: DUP9
00000cd0: SWAP1
00000cd1: MSTORE
00000cd2: PUSH1 0xa0
00000cd4: DUP3
00000cd5: ADD
00000cd6: DUP8
00000cd7: SWAP1
00000cd8: MSTORE
00000cd9: CALLER
00000cda: AND
00000cdb: PUSH1 0xc0
00000cdd: DUP3
00000cde: ADD
00000cdf: MSTORE
00000ce0: PUSH1 0xff
00000ce2: DUP6
00000ce3: AND
00000ce4: PUSH1 0xe0
00000ce6: DUP3
00000ce7: ADD
00000ce8: MSTORE
00000ce9: PUSH2 0x0100
00000cec: DUP2
00000ced: ADD
00000cee: DUP5
00000cef: SWAP1
00000cf0: MSTORE
00000cf1: PUSH2 0x0120
00000cf4: DUP2
00000cf5: ADD
00000cf6: DUP4
00000cf7: SWAP1
00000cf8: MSTORE
00000cf9: SWAP1
00000cfa: MLOAD
00000cfb: PUSH32 0x91daf02b6d1454acd74c097a67e389a9d9371da3ff51366947022dc36748ce4d
00000d1c: SWAP2
00000d1d: DUP2
00000d1e: SWAP1
00000d1f: SUB
00000d20: PUSH2 0x0140
00000d23: ADD
00000d24: SWAP1
00000d25: LOG1
00000d26: POP
00000d27: POP
00000d28: POP
00000d29: POP
00000d2a: POP
00000d2b: POP
00000d2c: POP
00000d2d: POP
00000d2e: POP
00000d2f: JUMP
00000d30: JUMPDEST
00000d31: PUSH1 0x01
00000d33: PUSH1 0xa0
00000d35: PUSH1 0x02
00000d37: EXP
00000d38: SUB
00000d39: DUP3
00000d3a: DUP2
00000d3b: AND
00000d3c: PUSH1 0x00
00000d3e: SWAP1
00000d3f: DUP2
00000d40: MSTORE
00000d41: PUSH1 0x20
00000d43: DUP2
00000d44: DUP2
00000d45: MSTORE
00000d46: PUSH1 0x40
00000d48: DUP1
00000d49: DUP4
00000d4a: KECCAK256
00000d4b: CALLER
00000d4c: SWAP1
00000d4d: SWAP5
00000d4e: AND
00000d4f: DUP4
00000d50: MSTORE
00000d51: SWAP3
00000d52: SWAP1
00000d53: MSTORE
00000d54: KECCAK256
00000d55: SLOAD
00000d56: DUP2
00000d57: SWAP1
00000d58: LT
00000d59: ISZERO
00000d5a: PUSH2 0x0d62
00000d5d: JUMPI
00000d5e: PUSH2 0x0002
00000d61: JUMP
00000d62: JUMPDEST
00000d63: PUSH1 0x01
00000d65: PUSH1 0xa0
00000d67: PUSH1 0x02
00000d69: EXP
00000d6a: SUB
00000d6b: DUP3
00000d6c: DUP2
00000d6d: AND
00000d6e: PUSH1 0x00
00000d70: SWAP1
00000d71: DUP2
00000d72: MSTORE
00000d73: PUSH1 0x20
00000d75: DUP2
00000d76: DUP2
00000d77: MSTORE
00000d78: PUSH1 0x40
00000d7a: DUP1
00000d7b: DUP4
00000d7c: KECCAK256
00000d7d: CALLER
00000d7e: SWAP1
00000d7f: SWAP5
00000d80: AND
00000d81: DUP4
00000d82: MSTORE
00000d83: SWAP3
00000d84: SWAP1
00000d85: MSTORE
00000d86: KECCAK256
00000d87: SLOAD
00000d88: PUSH2 0x0d91
00000d8b: SWAP1
00000d8c: DUP3
00000d8d: PUSH2 0x0656
00000d90: JUMP
00000d91: JUMPDEST
00000d92: PUSH1 0x01
00000d94: PUSH1 0xa0
00000d96: PUSH1 0x02
00000d98: EXP
00000d99: SUB
00000d9a: DUP4
00000d9b: DUP2
00000d9c: AND
00000d9d: PUSH1 0x00
00000d9f: DUP2
00000da0: DUP2
00000da1: MSTORE
00000da2: PUSH1 0x20
00000da4: DUP2
00000da5: DUP2
00000da6: MSTORE
00000da7: PUSH1 0x40
00000da9: DUP1
00000daa: DUP4
00000dab: KECCAK256
00000dac: CALLER
00000dad: SWAP1
00000dae: SWAP6
00000daf: AND
00000db0: DUP1
00000db1: DUP5
00000db2: MSTORE
00000db3: SWAP5
00000db4: DUP3
00000db5: MSTORE
00000db6: DUP1
00000db7: DUP4
00000db8: KECCAK256
00000db9: SWAP6
00000dba: SWAP1
00000dbb: SWAP6
00000dbc: SSTORE
00000dbd: DUP5
00000dbe: MLOAD
00000dbf: PUSH32 0xa9059cbb00000000000000000000000000000000000000000000000000000000
00000de0: DUP2
00000de1: MSTORE
00000de2: PUSH1 0x04
00000de4: DUP2
00000de5: ADD
00000de6: SWAP5
00000de7: SWAP1
00000de8: SWAP5
00000de9: MSTORE
00000dea: PUSH1 0x24
00000dec: DUP5
00000ded: ADD
00000dee: DUP7
00000def: SWAP1
00000df0: MSTORE
00000df1: SWAP4
00000df2: MLOAD
00000df3: SWAP2
00000df4: SWAP4
00000df5: PUSH4 0xa9059cbb
00000dfa: SWAP4
00000dfb: PUSH1 0x44
00000dfd: DUP2
00000dfe: DUP2
00000dff: ADD
00000e00: SWAP5
00000e01: SWAP3
00000e02: SWAP4
00000e03: SWAP2
00000e04: DUP4
00000e05: SWAP1
00000e06: SUB
00000e07: ADD
00000e08: SWAP1
00000e09: DUP3
00000e0a: SWAP1
00000e0b: DUP8
00000e0c: DUP1
00000e0d: EXTCODESIZE
00000e0e: ISZERO
00000e0f: PUSH2 0x0002
00000e12: JUMPI
00000e13: PUSH2 0x61da
00000e16: GAS
00000e17: SUB
00000e18: CALL
00000e19: ISZERO
00000e1a: PUSH2 0x0002
00000e1d: JUMPI
00000e1e: POP
00000e1f: POP
00000e20: PUSH1 0x40
00000e22: MLOAD
00000e23: MLOAD
00000e24: ISZERO
00000e25: ISZERO
00000e26: SWAP1
00000e27: POP
00000e28: PUSH2 0x0e30
00000e2b: JUMPI
00000e2c: PUSH2 0x0002
00000e2f: JUMP
00000e30: JUMPDEST
00000e31: PUSH1 0x01
00000e33: PUSH1 0xa0
00000e35: PUSH1 0x02
00000e37: EXP
00000e38: SUB
00000e39: DUP3
00000e3a: DUP2
00000e3b: AND
00000e3c: PUSH1 0x00
00000e3e: DUP2
00000e3f: DUP2
00000e40: MSTORE
00000e41: PUSH1 0x20
00000e43: DUP2
00000e44: DUP2
00000e45: MSTORE
00000e46: PUSH1 0x40
00000e48: DUP1
00000e49: DUP4
00000e4a: KECCAK256
00000e4b: CALLER
00000e4c: SWAP1
00000e4d: SWAP6
00000e4e: AND
00000e4f: DUP1
00000e50: DUP5
00000e51: MSTORE
00000e52: SWAP5
00000e53: DUP3
00000e54: MSTORE
00000e55: SWAP2
00000e56: DUP3
00000e57: SWAP1
00000e58: KECCAK256
00000e59: SLOAD
00000e5a: DUP3
00000e5b: MLOAD
00000e5c: SWAP4
00000e5d: DUP5
00000e5e: MSTORE
00000e5f: SWAP1
00000e60: DUP4
00000e61: ADD
00000e62: SWAP4
00000e63: SWAP1
00000e64: SWAP4
00000e65: MSTORE
00000e66: DUP2
00000e67: DUP2
00000e68: ADD
00000e69: DUP5
00000e6a: SWAP1
00000e6b: MSTORE
00000e6c: PUSH1 0x60
00000e6e: DUP3
00000e6f: ADD
00000e70: SWAP3
00000e71: SWAP1
00000e72: SWAP3
00000e73: MSTORE
00000e74: SWAP1
00000e75: MLOAD
00000e76: PUSH32 0xf341246adaac6f497bc2a656f546ab9e182111d630394f0c57c710a59a2cb567
00000e97: SWAP2
00000e98: DUP2
00000e99: SWAP1
00000e9a: SUB
00000e9b: PUSH1 0x80
00000e9d: ADD
00000e9e: SWAP1
00000e9f: LOG1
00000ea0: POP
00000ea1: POP
00000ea2: JUMP
00000ea3: JUMPDEST
00000ea4: CALLER
00000ea5: PUSH1 0x01
00000ea7: PUSH1 0xa0
00000ea9: PUSH1 0x02
00000eab: EXP
00000eac: SUB
00000ead: AND
00000eae: PUSH1 0x00
00000eb0: DUP2
00000eb1: DUP2
00000eb2: MSTORE
00000eb3: PUSH1 0x00
00000eb5: DUP1
00000eb6: MLOAD
00000eb7: PUSH1 0x20
00000eb9: PUSH2 0x0f9f
00000ebc: DUP4
00000ebd: CODECOPY
00000ebe: DUP2
00000ebf: MLOAD
00000ec0: SWAP2
00000ec1: MSTORE
00000ec2: PUSH1 0x20
00000ec4: SWAP1
00000ec5: DUP2
00000ec6: MSTORE
00000ec7: PUSH1 0x40
00000ec9: DUP1
00000eca: DUP4
00000ecb: KECCAK256
00000ecc: DUP6
00000ecd: SWAP1
00000ece: SSTORE
00000ecf: DUP1
00000ed0: MLOAD
00000ed1: SWAP3
00000ed2: DUP4
00000ed3: MSTORE
00000ed4: SWAP1
00000ed5: DUP3
00000ed6: ADD
00000ed7: SWAP3
00000ed8: SWAP1
00000ed9: SWAP3
00000eda: MSTORE
00000edb: CALLVALUE
00000edc: DUP2
00000edd: DUP4
00000ede: ADD
00000edf: MSTORE
00000ee0: PUSH1 0x60
00000ee2: DUP2
00000ee3: ADD
00000ee4: SWAP3
00000ee5: SWAP1
00000ee6: SWAP3
00000ee7: MSTORE
00000ee8: MLOAD
00000ee9: PUSH32 0xdcbc1c05240f31ff3ad067ef1ee35ce4997762752e3a095284754544f4c709d7
00000f0a: SWAP2
00000f0b: DUP2
00000f0c: SWAP1
00000f0d: SUB
00000f0e: PUSH1 0x80
00000f10: ADD
00000f11: SWAP1
00000f12: LOG1
00000f13: JUMP
00000f14: JUMPDEST
00000f15: DUP1
00000f16: SWAP4
00000f17: POP
00000f18: JUMPDEST
00000f19: POP
00000f1a: POP
00000f1b: POP
00000f1c: SWAP11
00000f1d: SWAP10
00000f1e: POP
00000f1f: POP
00000f20: POP
00000f21: POP
00000f22: POP
00000f23: POP
00000f24: POP
00000f25: POP
00000f26: POP
00000f27: POP
00000f28: JUMP
00000f29: JUMPDEST
00000f2a: PUSH1 0x00
00000f2c: DUP4
00000f2d: DUP2
00000f2e: MSTORE
00000f2f: PUSH1 0x01
00000f31: PUSH1 0x20
00000f33: MSTORE
00000f34: PUSH1 0x40
00000f36: SWAP1
00000f37: KECCAK256
00000f38: SLOAD
00000f39: PUSH2 0x0f43
00000f3c: SWAP1
00000f3d: DUP15
00000f3e: SWAP1
00000f3f: PUSH2 0x0656
00000f42: JUMP
00000f43: JUMPDEST
00000f44: PUSH1 0x01
00000f46: PUSH1 0xa0
00000f48: PUSH1 0x02
00000f4a: EXP
00000f4b: SUB
00000f4c: DUP14
00000f4d: DUP2
00000f4e: AND
00000f4f: PUSH1 0x00
00000f51: SWAP1
00000f52: DUP2
00000f53: MSTORE
00000f54: PUSH1 0x20
00000f56: DUP2
00000f57: DUP2
00000f58: MSTORE
00000f59: PUSH1 0x40
00000f5b: DUP1
00000f5c: DUP4
00000f5d: KECCAK256
00000f5e: SWAP4
00000f5f: DUP14
00000f60: AND
00000f61: DUP4
00000f62: MSTORE
00000f63: SWAP3
00000f64: SWAP1
00000f65: MSTORE
00000f66: KECCAK256
00000f67: SLOAD
00000f68: SWAP1
00000f69: SWAP3
00000f6a: POP
00000f6b: DUP12
00000f6c: SWAP1
00000f6d: PUSH2 0x0f76
00000f70: SWAP1
00000f71: DUP16
00000f72: PUSH2 0x060a
00000f75: JUMP
00000f76: JUMPDEST
00000f77: DUP2
00000f78: ISZERO
00000f79: PUSH2 0x0002
00000f7c: JUMPI
00000f7d: DIV
00000f7e: SWAP1
00000f7f: POP
00000f80: DUP1
00000f81: DUP3
00000f82: LT
00000f83: ISZERO
00000f84: PUSH2 0x0f14
00000f87: JUMPI
00000f88: DUP2
00000f89: SWAP4
00000f8a: POP
00000f8b: PUSH2 0x0f18
00000f8e: JUMP
00000f8f: JUMPDEST
00000f90: SWAP4
00000f91: SWAP3
00000f92: POP
00000f93: POP
00000f94: POP
00000f95: JUMP
00000f96: JUMPDEST
00000f97: POP
00000f98: DUP1
00000f99: DUP3
00000f9a: SUB
00000f9b: PUSH2 0x02b5
00000f9e: JUMP
00000f9f: UNKNOWN(0xAD)
00000fa0: ORIGIN
00000fa1: UNKNOWN(0x28)
00000fa2: UNKNOWN(0xB6)
00000fa3: PUSH23 0xf7d3cd4284a5443f17f1962b36e491b30a40b2405849e5
00000fbb: SWAP8
00000fbc: UNKNOWN(0xBA)
00000fbd: PUSH0
00000fbe: UNKNOWN(0xB5)

Findings

validated = confirmed for call sinks; sink observed for others
Severity Category Tool Title Confidence Validated Confirmed Details
high auth detector Authorization based on tx.origin 70 no
view
validation_json
{
    "reason": "missing sink mapping",
    "status": "no_sink"
}
witness_json
{
    "notes": "heuristic witness; entrypoints are best-effort selectors with zeroed calldata",
    "constraints": [],
    "entrypoints": [
        {
            "calldata": "0x0a19b14a",
            "selector": "0x0a19b14a",
            "calldata_variants": [
                "0x0a19b14a",
                "0x0a19b14a0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x278b8c0e",
            "selector": "0x278b8c0e",
            "calldata_variants": [
                "0x278b8c0e",
                "0x278b8c0e0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x2e1a7d4d",
            "selector": "0x2e1a7d4d",
            "calldata_variants": [
                "0x2e1a7d4d",
                "0x2e1a7d4d0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x338b5dea",
            "selector": "0x338b5dea",
            "calldata_variants": [
                "0x338b5dea",
                "0x338b5dea0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x57786394",
            "selector": "0x57786394",
            "calldata_variants": [
                "0x57786394",
                "0x577863940000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x65e17c9d",
            "selector": "0x65e17c9d",
            "calldata_variants": [
                "0x65e17c9d",
                "0x65e17c9d0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x6c86888b",
            "selector": "0x6c86888b",
            "calldata_variants": [
                "0x6c86888b",
                "0x6c86888b0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x93f0bb51",
            "selector": "0x93f0bb51",
            "calldata_variants": [
                "0x93f0bb51",
                "0x93f0bb510000000000000000000000000000000000000000000000000000000000000000"
            ]
        }
    ]
}
evidence_json
{
    "guards_detected": [
        {
            "pc": 4000,
            "type": "tx_origin_used"
        }
    ]
}
medium other detector Untrusted CALL target/value reachable 45 yes yes
view
trace_id: 0x2a6561f425b1bb604fd9ee98b6aeebc3eee15c2bf94a9bed7e474ef59fbace4f
call_targets: 0x0000000000000000000000000000000000000001, 0x0000000000000000000000000000000000000002, 0x4aea7cf559f67cedcad07e12ae6bc00f07e8cf65
target_varies: yes
classification: target_varies
validation_json
{
    "sink": "CALL",
    "errors": 0,
    "status": "confirmed",
    "attempts": 1,
    "trace_id": "0x2a6561f425b1bb604fd9ee98b6aeebc3eee15c2bf94a9bed7e474ef59fbace4f",
    "confirmed": true,
    "trace_mode": "callTracer",
    "call_targets": [
        "0x0000000000000000000000000000000000000001",
        "0x0000000000000000000000000000000000000002",
        "0x4aea7cf559f67cedcad07e12ae6bc00f07e8cf65"
    ],
    "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": "0x0a19b14a",
            "selector": "0x0a19b14a",
            "calldata_variants": [
                "0x0a19b14a",
                "0x0a19b14a0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x278b8c0e",
            "selector": "0x278b8c0e",
            "calldata_variants": [
                "0x278b8c0e",
                "0x278b8c0e0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x2e1a7d4d",
            "selector": "0x2e1a7d4d",
            "calldata_variants": [
                "0x2e1a7d4d",
                "0x2e1a7d4d0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x338b5dea",
            "selector": "0x338b5dea",
            "calldata_variants": [
                "0x338b5dea",
                "0x338b5dea0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x57786394",
            "selector": "0x57786394",
            "calldata_variants": [
                "0x57786394",
                "0x577863940000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x65e17c9d",
            "selector": "0x65e17c9d",
            "calldata_variants": [
                "0x65e17c9d",
                "0x65e17c9d0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x6c86888b",
            "selector": "0x6c86888b",
            "calldata_variants": [
                "0x6c86888b",
                "0x6c86888b0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x93f0bb51",
            "selector": "0x93f0bb51",
            "calldata_variants": [
                "0x93f0bb51",
                "0x93f0bb510000000000000000000000000000000000000000000000000000000000000000"
            ]
        }
    ]
}
evidence_json
{
    "examples": [
        {
            "pc": 847,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        },
        {
            "pc": 947,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        },
        {
            "pc": 1171,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        }
    ],
    "call_count": 9,
    "guards_detected": [
        {
            "pc": 4000,
            "type": "tx_origin_used"
        }
    ],
    "untrusted_call_count": 9
}
medium other detector ETH value transfer possible 40 yes yes
view
trace_id: 0x2a6561f425b1bb604fd9ee98b6aeebc3eee15c2bf94a9bed7e474ef59fbace4f
call_targets: 0x0000000000000000000000000000000000000001, 0x0000000000000000000000000000000000000002, 0x4aea7cf559f67cedcad07e12ae6bc00f07e8cf65
target_varies: yes
classification: target_varies
validation_json
{
    "sink": "CALL",
    "errors": 0,
    "status": "confirmed",
    "attempts": 1,
    "trace_id": "0x2a6561f425b1bb604fd9ee98b6aeebc3eee15c2bf94a9bed7e474ef59fbace4f",
    "confirmed": true,
    "trace_mode": "callTracer",
    "call_targets": [
        "0x0000000000000000000000000000000000000001",
        "0x0000000000000000000000000000000000000002",
        "0x4aea7cf559f67cedcad07e12ae6bc00f07e8cf65"
    ],
    "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": "0x0a19b14a",
            "selector": "0x0a19b14a",
            "calldata_variants": [
                "0x0a19b14a",
                "0x0a19b14a0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x278b8c0e",
            "selector": "0x278b8c0e",
            "calldata_variants": [
                "0x278b8c0e",
                "0x278b8c0e0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x2e1a7d4d",
            "selector": "0x2e1a7d4d",
            "calldata_variants": [
                "0x2e1a7d4d",
                "0x2e1a7d4d0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x338b5dea",
            "selector": "0x338b5dea",
            "calldata_variants": [
                "0x338b5dea",
                "0x338b5dea0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x57786394",
            "selector": "0x57786394",
            "calldata_variants": [
                "0x57786394",
                "0x577863940000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x65e17c9d",
            "selector": "0x65e17c9d",
            "calldata_variants": [
                "0x65e17c9d",
                "0x65e17c9d0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x6c86888b",
            "selector": "0x6c86888b",
            "calldata_variants": [
                "0x6c86888b",
                "0x6c86888b0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x93f0bb51",
            "selector": "0x93f0bb51",
            "calldata_variants": [
                "0x93f0bb51",
                "0x93f0bb510000000000000000000000000000000000000000000000000000000000000000"
            ]
        }
    ]
}
evidence_json
{
    "examples": [
        {
            "pc": 847,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        },
        {
            "pc": 947,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        },
        {
            "pc": 1171,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        }
    ],
    "eth_value_calls": 9,
    "guards_detected": [
        {
            "pc": 4000,
            "type": "tx_origin_used"
        }
    ]
}