0a0caf81-27d0-4e67-8b74-d4171ba6322e
Open this run to answer one question: is this real attacker-relevant behavior with real impact, or just normal contract plumbing?
| ID | Type | Status | Attempts | Heartbeat |
|---|---|---|---|---|
| 31416 | report.consolidate | complete | 1 / 1 | 3 months ago |
| 77122 | artifact.fetch | failed | 1 / 3 | 1 week ago |
| 77123 | tool.cast_disasm | complete | 1 / 3 | 1 week ago |
| 77124 | analysis.bundle | complete | 1 / 3 | 1 week ago |
| 77125 | capability.graph | complete | 1 / 3 | 1 week ago |
| 77126 | detector.run | complete | 1 / 3 | 1 week ago |
| 77127 | validation.fork | complete | 1 / 3 | 1 week ago |
No slither job recorded yet.
[codex:1121780] OpenAI Codex v0.77.0 (research preview)
[codex:1121780] --------
[codex:1121780] workdir: /tmp/codex-multi-_lf_3ulm
[codex:1121780] model: gpt-5.2-codex
[codex:1121780] provider: openai
[codex:1121780] approval: never
[codex:1121780] sandbox: read-only
[codex:1121780] reasoning effort: xhigh
[codex:1121780] reasoning summaries: auto
[codex:1121780] session id: 019b8171-c8a7-73d2-a1dc-fd64aa70163e
[codex:1121780] --------
[codex:1121780] user
[codex:1121780] You are a profit-focused exploit hunter. Your ONLY goal is finding ways to extract value (ETH, tokens, NFTs) from this contract.
[codex:1121780]
[codex:1121780] Read `AUDIT_BUNDLE.txt` completely before concluding. Treat `lib/` and `@openzeppelin/` as trusted unless misused.
[codex:1121780]
[codex:1121780] ONLY REPORT if you find a CONCRETE, EXPLOITABLE path to profit. We do NOT care about:
[codex:1121780] - Gas inefficiency, code quality, naming, or best practices
[codex:1121780] - Theoretical vulnerabilities without a clear extraction path
[codex:1121780] - Centralization risks (admin can rug) - assume admin keys are secure
[codex:1121780] - Front-running unless it enables theft beyond MEV
[codex:1121780] - DoS, griefing, or issues that don't result in attacker profit
[codex:1121780] - Missing events, view function issues, or informational findings
[codex:1121780]
[codex:1121780] HIGH-VALUE PATTERNS TO HUNT:
[codex:1121780] - Reentrancy: external calls before state updates that allow double-withdrawal
[codex:1121780] - Access control: missing/bypassable auth on withdraw, transfer, or mint functions
[codex:1121780] - Flash loan attacks: borrow -> manipulate -> profit in single tx
[codex:1121780] - Price oracle manipulation: TWAP with short window, spot price reads, stale prices
[codex:1121780] - Signature replay: missing nonce, chainId, or deadline in permit/meta-tx
[codex:1121780] - Proxy hijacking: unprotected initialize(), storage collision, UUPS without auth
[codex:1121780] - Accounting errors: rounding that favors attacker, share inflation, first depositor attacks
[codex:1121780] - Unchecked external calls: return value ignored on token transfers enabling fake tokens
[codex:1121780] - Cross-function reentrancy: state read in function A, modified via reentrant call, used stale in A
[codex:1121780]
[codex:1121780] For each finding, you MUST provide:
[codex:1121780] 1. Exact file and line numbers of vulnerable code
[codex:1121780] 2. Step-by-step exploit transaction sequence
[codex:1121780] 3. Estimated profit potential (order of magnitude: contract balance, LP reserves, etc.)
[codex:1121780]
[codex:1121780] If no concrete profit path exists: set no_findings=true. Do NOT pad with low-severity noise.
[codex:1121780]
[codex:1121780] Output MUST be valid JSON matching the provided schema.
[codex:1121780] - severity: info, low, medium, high, critical (use high/critical ONLY for clear extraction paths)
[codex:1121780] - category: access_control, reentrancy, math, oracle, upgradeability, auth, other
[codex:1121780] mcp startup: no servers
[codex:1121780]
[codex:1121780] thinking
[codex:1121780] **Preparing to audit with AUDIT_BUNDLE.txt**
[codex:1121780] exec
[codex:1121780] /bin/bash -lc ls in /tmp/codex-multi-_lf_3ulm succeeded in 6ms:
[codex:1121780] AUDIT_BUNDLE.txt
[codex:1121780] codex-output-schema.json
[codex:1121780] contracts
[codex:1121780] exec
[codex:1121780] /bin/bash -lc 'cat AUDIT_BUNDLE.txt' in /tmp/codex-multi-_lf_3ulm succeeded in 5ms:
[codex:1121780] This file concatenates first-party Solidity sources only (lib/@openzeppelin excluded).
[codex:1121780]
[codex:1121780] ================================================================================
[codex:1121780] FILE: contracts/contracts/DiamondHand.sol
[codex:1121780] ================================================================================
[codex:1121780] // SPDX-License-Identifier: MIT
[codex:1121780] pragma solidity ^0.8.17;
[codex:1121780]
[codex:1121780] import "@openzeppelin/contracts/utils/ReentrancyGuard.sol";
[codex:1121780] import "@openzeppelin/contracts/access/Ownable2Step.sol";
[codex:1121780] import {IDiamondNFTWrapper} from "./interfaces/IDiamondNFTWrapper.sol";
[codex:1121780] import {IBlazeStaking} from "./interfaces/IBlazeStaking.sol";
[codex:1121780]
[codex:1121780]
[codex:1121780] contract DiamondHand is ReentrancyGuard, Ownable2Step {
[codex:1121780] IDiamondNFTWrapper dNFT;
[codex:1121780]
[codex:1121780] IBlazeStaking blazeStaking;
[codex:1121780]
[codex:1121780] uint32 public immutable i_initialTimestamp;
[codex:1121780]
[codex:1121780] thinking
[codex:1121780] **Analyzing contract for exploits**
[codex:1121780]
[codex:1121780] I've carefully examined the DiamondHand contract for potential profit exploits, focusing on reentrancy, ticket manipulation, external calls, and payout calculations. After considering flash loans, snapshot manipulations, underflows, and leftover rounding, I find no concrete exploitable profit paths here; I will prepare a JSON response indicating no findings.
[codex:1121780] codex
[codex:1121780] {"no_findings":true,"summary":"No concrete, exploitable profit paths identified in the provided first-party contracts.","findings":[]}
[codex:1121780] tokens used
[codex:1121780] 6,128
[codex:1121780] {"no_findings":true,"summary":"No concrete, exploitable profit paths identified in the provided first-party contracts.","findings":[]}
{
"codex": {
"ran_at": "2026-01-03T01:22:12.738100+00:00",
"returncode": 0
},
"summary": "No concrete, exploitable profit paths identified in the provided first-party contracts.",
"raw_final": {
"summary": "No concrete, exploitable profit paths identified in the provided first-party contracts.",
"findings": [],
"no_findings": true
},
"no_findings": true,
"schema_version": 1
}
00000000: PUSH1 0x80 00000002: PUSH1 0x40 00000004: MSTORE 00000005: PUSH1 0x04 00000007: CALLDATASIZE 00000008: LT 00000009: PUSH2 0x0102 0000000c: JUMPI 0000000d: PUSH1 0x00 0000000f: CALLDATALOAD 00000010: PUSH1 0xe0 00000012: SHR 00000013: DUP1 00000014: PUSH4 0x79ba5097 00000019: GT 0000001a: PUSH2 0x0095 0000001d: JUMPI 0000001e: DUP1 0000001f: PUSH4 0xa51e262d 00000024: GT 00000025: PUSH2 0x0064 00000028: JUMPI 00000029: DUP1 0000002a: PUSH4 0xa51e262d 0000002f: EQ 00000030: PUSH2 0x032e 00000033: JUMPI 00000034: DUP1 00000035: PUSH4 0xcb0f3305 0000003a: EQ 0000003b: PUSH2 0x035b 0000003e: JUMPI 0000003f: DUP1 00000040: PUSH4 0xd11711a2 00000045: EQ 00000046: PUSH2 0x0393 00000049: JUMPI 0000004a: DUP1 0000004b: PUSH4 0xe30c3978 00000050: EQ 00000051: PUSH2 0x03a8 00000054: JUMPI 00000055: DUP1 00000056: PUSH4 0xf2fde38b 0000005b: EQ 0000005c: PUSH2 0x03c6 0000005f: JUMPI 00000060: PUSH1 0x00 00000062: DUP1 00000063: REVERT 00000064: JUMPDEST 00000065: DUP1 00000066: PUSH4 0x79ba5097 0000006b: EQ 0000006c: PUSH2 0x0271 0000006f: JUMPI 00000070: DUP1 00000071: PUSH4 0x857f14f3 00000076: EQ 00000077: PUSH2 0x0286 0000007a: JUMPI 0000007b: DUP1 0000007c: PUSH4 0x8bd95563 00000081: EQ 00000082: PUSH2 0x02b3 00000085: JUMPI 00000086: DUP1 00000087: PUSH4 0x8da5cb5b 0000008c: EQ 0000008d: PUSH2 0x02fc 00000090: JUMPI 00000091: PUSH1 0x00 00000093: DUP1 00000094: REVERT 00000095: JUMPDEST 00000096: DUP1 00000097: PUSH4 0x372500ab 0000009c: GT 0000009d: PUSH2 0x00d1 000000a0: JUMPI 000000a1: DUP1 000000a2: PUSH4 0x372500ab 000000a7: EQ 000000a8: PUSH2 0x01e8 000000ab: JUMPI 000000ac: DUP1 000000ad: PUSH4 0x3c42b341 000000b2: EQ 000000b3: PUSH2 0x01ff 000000b6: JUMPI 000000b7: DUP1 000000b8: PUSH4 0x5257b8fc 000000bd: EQ 000000be: PUSH2 0x022f 000000c1: JUMPI 000000c2: DUP1 000000c3: PUSH4 0x715018a6 000000c8: EQ 000000c9: PUSH2 0x025c 000000cc: JUMPI 000000cd: PUSH1 0x00 000000cf: DUP1 000000d0: REVERT 000000d1: JUMPDEST 000000d2: DUP1 000000d3: PUSH4 0x18291ef6 000000d8: EQ 000000d9: PUSH2 0x0141 000000dc: JUMPI 000000dd: DUP1 000000de: PUSH4 0x24a4f59d 000000e3: EQ 000000e4: PUSH2 0x0174 000000e7: JUMPI 000000e8: DUP1 000000e9: PUSH4 0x2f7cdab0 000000ee: EQ 000000ef: PUSH2 0x0194 000000f2: JUMPI 000000f3: DUP1 000000f4: PUSH4 0x308e401e 000000f9: EQ 000000fa: PUSH2 0x01c8 000000fd: JUMPI 000000fe: PUSH1 0x00 00000100: DUP1 00000101: REVERT 00000102: JUMPDEST 00000103: CALLDATASIZE 00000104: PUSH2 0x013c 00000107: JUMPI 00000108: PUSH1 0x00 0000010a: PUSH2 0x0111 0000010d: PUSH2 0x03e6 00000110: JUMP 00000111: JUMPDEST 00000112: POP 00000113: PUSH1 0x00 00000115: DUP2 00000116: DUP2 00000117: MSTORE 00000118: PUSH1 0x08 0000011a: PUSH1 0x20 0000011c: MSTORE 0000011d: PUSH1 0x40 0000011f: DUP2 00000120: KECCAK256 00000121: DUP1 00000122: SLOAD 00000123: SWAP3 00000124: SWAP5 00000125: POP 00000126: CALLVALUE 00000127: SWAP4 00000128: POP 00000129: SWAP2 0000012a: PUSH2 0x0134 0000012d: SWAP1 0000012e: DUP5 0000012f: SWAP1 00000130: PUSH2 0x0b1b 00000133: JUMP 00000134: JUMPDEST 00000135: SWAP3 00000136: POP 00000137: POP 00000138: DUP2 00000139: SWAP1 0000013a: SSTORE 0000013b: STOP 0000013c: JUMPDEST 0000013d: PUSH1 0x00 0000013f: DUP1 00000140: REVERT 00000141: JUMPDEST 00000142: CALLVALUE 00000143: DUP1 00000144: ISZERO 00000145: PUSH2 0x014d 00000148: JUMPI 00000149: PUSH1 0x00 0000014b: DUP1 0000014c: REVERT 0000014d: JUMPDEST 0000014e: POP 0000014f: PUSH2 0x0161 00000152: PUSH2 0x015c 00000155: CALLDATASIZE 00000156: PUSH1 0x04 00000158: PUSH2 0x0b4a 0000015b: JUMP 0000015c: JUMPDEST 0000015d: PUSH2 0x0461 00000160: JUMP 00000161: JUMPDEST 00000162: PUSH1 0x40 00000164: MLOAD 00000165: SWAP1 00000166: DUP2 00000167: MSTORE 00000168: PUSH1 0x20 0000016a: ADD 0000016b: JUMPDEST 0000016c: PUSH1 0x40 0000016e: MLOAD 0000016f: DUP1 00000170: SWAP2 00000171: SUB 00000172: SWAP1 00000173: RETURN 00000174: JUMPDEST 00000175: CALLVALUE 00000176: DUP1 00000177: ISZERO 00000178: PUSH2 0x0180 0000017b: JUMPI 0000017c: PUSH1 0x00 0000017e: DUP1 0000017f: REVERT 00000180: JUMPDEST 00000181: POP 00000182: PUSH2 0x0161 00000185: PUSH2 0x018f 00000188: CALLDATASIZE 00000189: PUSH1 0x04 0000018b: PUSH2 0x0b4a 0000018e: JUMP 0000018f: JUMPDEST 00000190: PUSH2 0x04e4 00000193: JUMP 00000194: JUMPDEST 00000195: CALLVALUE 00000196: DUP1 00000197: ISZERO 00000198: PUSH2 0x01a0 0000019b: JUMPI 0000019c: PUSH1 0x00 0000019e: DUP1 0000019f: REVERT 000001a0: JUMPDEST 000001a1: POP 000001a2: PUSH2 0x0161 000001a5: PUSH32 0x0000000000000000000000000000000000000000000000000000000000015180 000001c6: DUP2 000001c7: JUMP 000001c8: JUMPDEST 000001c9: CALLVALUE 000001ca: DUP1 000001cb: ISZERO 000001cc: PUSH2 0x01d4 000001cf: JUMPI 000001d0: PUSH1 0x00 000001d2: DUP1 000001d3: REVERT 000001d4: JUMPDEST 000001d5: POP 000001d6: PUSH2 0x0161 000001d9: PUSH2 0x01e3 000001dc: CALLDATASIZE 000001dd: PUSH1 0x04 000001df: PUSH2 0x0b4a 000001e2: JUMP 000001e3: JUMPDEST 000001e4: PUSH2 0x0586 000001e7: JUMP 000001e8: JUMPDEST 000001e9: CALLVALUE 000001ea: DUP1 000001eb: ISZERO 000001ec: PUSH2 0x01f4 000001ef: JUMPI 000001f0: PUSH1 0x00 000001f2: DUP1 000001f3: REVERT 000001f4: JUMPDEST 000001f5: POP 000001f6: PUSH2 0x01fd 000001f9: PUSH2 0x0643 000001fc: JUMP 000001fd: JUMPDEST 000001fe: STOP 000001ff: JUMPDEST 00000200: CALLVALUE 00000201: DUP1 00000202: ISZERO 00000203: PUSH2 0x020b 00000206: JUMPI 00000207: PUSH1 0x00 00000209: DUP1 0000020a: REVERT 0000020b: JUMPDEST 0000020c: POP 0000020d: PUSH2 0x0214 00000210: PUSH2 0x03e6 00000213: JUMP 00000214: JUMPDEST 00000215: PUSH1 0x40 00000217: DUP1 00000218: MLOAD 00000219: SWAP4 0000021a: DUP5 0000021b: MSTORE 0000021c: PUSH1 0x20 0000021e: DUP5 0000021f: ADD 00000220: SWAP3 00000221: SWAP1 00000222: SWAP3 00000223: MSTORE 00000224: SWAP1 00000225: DUP3 00000226: ADD 00000227: MSTORE 00000228: PUSH1 0x60 0000022a: ADD 0000022b: PUSH2 0x016b 0000022e: JUMP 0000022f: JUMPDEST 00000230: CALLVALUE 00000231: DUP1 00000232: ISZERO 00000233: PUSH2 0x023b 00000236: JUMPI 00000237: PUSH1 0x00 00000239: DUP1 0000023a: REVERT 0000023b: JUMPDEST 0000023c: POP 0000023d: PUSH2 0x0161 00000240: PUSH2 0x024a 00000243: CALLDATASIZE 00000244: PUSH1 0x04 00000246: PUSH2 0x0b65 00000249: JUMP 0000024a: JUMPDEST 0000024b: PUSH1 0x08 0000024d: PUSH1 0x20 0000024f: MSTORE 00000250: PUSH1 0x00 00000252: SWAP1 00000253: DUP2 00000254: MSTORE 00000255: PUSH1 0x40 00000257: SWAP1 00000258: KECCAK256 00000259: SLOAD 0000025a: DUP2 0000025b: JUMP 0000025c: JUMPDEST 0000025d: CALLVALUE 0000025e: DUP1 0000025f: ISZERO 00000260: PUSH2 0x0268 00000263: JUMPI 00000264: PUSH1 0x00 00000266: DUP1 00000267: REVERT 00000268: JUMPDEST 00000269: POP 0000026a: PUSH2 0x01fd 0000026d: PUSH2 0x07be 00000270: JUMP 00000271: JUMPDEST 00000272: CALLVALUE 00000273: DUP1 00000274: ISZERO 00000275: PUSH2 0x027d 00000278: JUMPI 00000279: PUSH1 0x00 0000027b: DUP1 0000027c: REVERT 0000027d: JUMPDEST 0000027e: POP 0000027f: PUSH2 0x01fd 00000282: PUSH2 0x07d0 00000285: JUMP 00000286: JUMPDEST 00000287: CALLVALUE 00000288: DUP1 00000289: ISZERO 0000028a: PUSH2 0x0292 0000028d: JUMPI 0000028e: PUSH1 0x00 00000290: DUP1 00000291: REVERT 00000292: JUMPDEST 00000293: POP 00000294: PUSH2 0x0161 00000297: PUSH2 0x02a1 0000029a: CALLDATASIZE 0000029b: PUSH1 0x04 0000029d: PUSH2 0x0b65 000002a0: JUMP 000002a1: JUMPDEST 000002a2: PUSH1 0x06 000002a4: PUSH1 0x20 000002a6: MSTORE 000002a7: PUSH1 0x00 000002a9: SWAP1 000002aa: DUP2 000002ab: MSTORE 000002ac: PUSH1 0x40 000002ae: SWAP1 000002af: KECCAK256 000002b0: SLOAD 000002b1: DUP2 000002b2: JUMP 000002b3: JUMPDEST 000002b4: CALLVALUE 000002b5: DUP1 000002b6: ISZERO 000002b7: PUSH2 0x02bf 000002ba: JUMPI 000002bb: PUSH1 0x00 000002bd: DUP1 000002be: REVERT 000002bf: JUMPDEST 000002c0: POP 000002c1: PUSH2 0x02e7 000002c4: PUSH32 0x00000000000000000000000000000000000000000000000000000000667be25b 000002e5: DUP2 000002e6: JUMP 000002e7: JUMPDEST 000002e8: PUSH1 0x40 000002ea: MLOAD 000002eb: PUSH4 0xffffffff 000002f0: SWAP1 000002f1: SWAP2 000002f2: AND 000002f3: DUP2 000002f4: MSTORE 000002f5: PUSH1 0x20 000002f7: ADD 000002f8: PUSH2 0x016b 000002fb: JUMP 000002fc: JUMPDEST 000002fd: CALLVALUE 000002fe: DUP1 000002ff: ISZERO 00000300: PUSH2 0x0308 00000303: JUMPI 00000304: PUSH1 0x00 00000306: DUP1 00000307: REVERT 00000308: JUMPDEST 00000309: POP 0000030a: PUSH1 0x01 0000030c: SLOAD 0000030d: PUSH1 0x01 0000030f: PUSH1 0x01 00000311: PUSH1 0xa0 00000313: SHL 00000314: SUB 00000315: AND 00000316: JUMPDEST 00000317: PUSH1 0x40 00000319: MLOAD 0000031a: PUSH1 0x01 0000031c: PUSH1 0x01 0000031e: PUSH1 0xa0 00000320: SHL 00000321: SUB 00000322: SWAP1 00000323: SWAP2 00000324: AND 00000325: DUP2 00000326: MSTORE 00000327: PUSH1 0x20 00000329: ADD 0000032a: PUSH2 0x016b 0000032d: JUMP 0000032e: JUMPDEST 0000032f: CALLVALUE 00000330: DUP1 00000331: ISZERO 00000332: PUSH2 0x033a 00000335: JUMPI 00000336: PUSH1 0x00 00000338: DUP1 00000339: REVERT 0000033a: JUMPDEST 0000033b: POP 0000033c: PUSH2 0x0161 0000033f: PUSH2 0x0349 00000342: CALLDATASIZE 00000343: PUSH1 0x04 00000345: PUSH2 0x0b4a 00000348: JUMP 00000349: JUMPDEST 0000034a: PUSH1 0x07 0000034c: PUSH1 0x20 0000034e: MSTORE 0000034f: PUSH1 0x00 00000351: SWAP1 00000352: DUP2 00000353: MSTORE 00000354: PUSH1 0x40 00000356: SWAP1 00000357: KECCAK256 00000358: SLOAD 00000359: DUP2 0000035a: JUMP 0000035b: JUMPDEST 0000035c: CALLVALUE 0000035d: DUP1 0000035e: ISZERO 0000035f: PUSH2 0x0367 00000362: JUMPI 00000363: PUSH1 0x00 00000365: DUP1 00000366: REVERT 00000367: JUMPDEST 00000368: POP 00000369: PUSH2 0x0161 0000036c: PUSH2 0x0376 0000036f: CALLDATASIZE 00000370: PUSH1 0x04 00000372: PUSH2 0x0b7e 00000375: JUMP 00000376: JUMPDEST 00000377: PUSH1 0x05 00000379: PUSH1 0x20 0000037b: SWAP1 0000037c: DUP2 0000037d: MSTORE 0000037e: PUSH1 0x00 00000380: SWAP3 00000381: DUP4 00000382: MSTORE 00000383: PUSH1 0x40 00000385: DUP1 00000386: DUP5 00000387: KECCAK256 00000388: SWAP1 00000389: SWAP2 0000038a: MSTORE 0000038b: SWAP1 0000038c: DUP3 0000038d: MSTORE 0000038e: SWAP1 0000038f: KECCAK256 00000390: SLOAD 00000391: DUP2 00000392: JUMP 00000393: JUMPDEST 00000394: CALLVALUE 00000395: DUP1 00000396: ISZERO 00000397: PUSH2 0x039f 0000039a: JUMPI 0000039b: PUSH1 0x00 0000039d: DUP1 0000039e: REVERT 0000039f: JUMPDEST 000003a0: POP 000003a1: PUSH2 0x01fd 000003a4: PUSH2 0x0814 000003a7: JUMP 000003a8: JUMPDEST 000003a9: CALLVALUE 000003aa: DUP1 000003ab: ISZERO 000003ac: PUSH2 0x03b4 000003af: JUMPI 000003b0: PUSH1 0x00 000003b2: DUP1 000003b3: REVERT 000003b4: JUMPDEST 000003b5: POP 000003b6: PUSH1 0x02 000003b8: SLOAD 000003b9: PUSH1 0x01 000003bb: PUSH1 0x01 000003bd: PUSH1 0xa0 000003bf: SHL 000003c0: SUB 000003c1: AND 000003c2: PUSH2 0x0316 000003c5: JUMP 000003c6: JUMPDEST 000003c7: CALLVALUE 000003c8: DUP1 000003c9: ISZERO 000003ca: PUSH2 0x03d2 000003cd: JUMPI 000003ce: PUSH1 0x00 000003d0: DUP1 000003d1: REVERT 000003d2: JUMPDEST 000003d3: POP 000003d4: PUSH2 0x01fd 000003d7: PUSH2 0x03e1 000003da: CALLDATASIZE 000003db: PUSH1 0x04 000003dd: PUSH2 0x0b4a 000003e0: JUMP 000003e1: JUMPDEST 000003e2: PUSH2 0x092f 000003e5: JUMP 000003e6: JUMPDEST 000003e7: PUSH1 0x00 000003e9: DUP1 000003ea: DUP1 000003eb: PUSH3 0x015180 000003ef: PUSH2 0x041e 000003f2: PUSH4 0xffffffff 000003f7: PUSH32 0x00000000000000000000000000000000000000000000000000000000667be25b 00000418: AND 00000419: TIMESTAMP 0000041a: PUSH2 0x0ba8 0000041d: JUMP 0000041e: JUMPDEST 0000041f: PUSH2 0x0428 00000422: SWAP2 00000423: SWAP1 00000424: PUSH2 0x0bd1 00000427: JUMP 00000428: JUMPDEST 00000429: PUSH2 0x0433 0000042c: SWAP1 0000042d: PUSH1 0x01 0000042f: PUSH2 0x0b1b 00000432: JUMP 00000433: JUMPDEST 00000434: SWAP3 00000435: POP 00000436: PUSH2 0x0441 00000439: PUSH2 0x0378 0000043c: DUP5 0000043d: PUSH2 0x0bd1 00000440: JUMP 00000441: JUMPDEST 00000442: PUSH2 0x044c 00000445: SWAP1 00000446: PUSH1 0x01 00000448: PUSH2 0x0b1b 0000044b: JUMP 0000044c: JUMPDEST 0000044d: SWAP2 0000044e: POP 0000044f: PUSH2 0x045a 00000452: PUSH2 0x0378 00000455: DUP5 00000456: PUSH2 0x0be5 00000459: JUMP 0000045a: JUMPDEST 0000045b: SWAP1 0000045c: POP 0000045d: SWAP1 0000045e: SWAP2 0000045f: SWAP3 00000460: JUMP 00000461: JUMPDEST 00000462: PUSH1 0x03 00000464: SLOAD 00000465: PUSH1 0x40 00000467: MLOAD 00000468: PUSH4 0x0c148f7b 0000046d: PUSH1 0xe1 0000046f: SHL 00000470: DUP2 00000471: MSTORE 00000472: PUSH1 0x01 00000474: PUSH1 0x01 00000476: PUSH1 0xa0 00000478: SHL 00000479: SUB 0000047a: DUP4 0000047b: DUP2 0000047c: AND 0000047d: PUSH1 0x04 0000047f: DUP4 00000480: ADD 00000481: MSTORE 00000482: PUSH1 0x00 00000484: SWAP3 00000485: PUSH1 0x1c 00000487: SWAP3 00000488: SWAP2 00000489: AND 0000048a: SWAP1 0000048b: PUSH4 0x18291ef6 00000490: SWAP1 00000491: PUSH1 0x24 00000493: ADD 00000494: PUSH1 0x20 00000496: PUSH1 0x40 00000498: MLOAD 00000499: DUP1 0000049a: DUP4 0000049b: SUB 0000049c: DUP2 0000049d: DUP7 0000049e: GAS 0000049f: STATICCALL 000004a0: ISZERO 000004a1: DUP1 000004a2: ISZERO 000004a3: PUSH2 0x04b0 000004a6: JUMPI 000004a7: RETURNDATASIZE 000004a8: PUSH1 0x00 000004aa: DUP1 000004ab: RETURNDATACOPY 000004ac: RETURNDATASIZE 000004ad: PUSH1 0x00 000004af: REVERT 000004b0: JUMPDEST 000004b1: POP 000004b2: POP 000004b3: POP 000004b4: POP 000004b5: PUSH1 0x40 000004b7: MLOAD 000004b8: RETURNDATASIZE 000004b9: PUSH1 0x1f 000004bb: NOT 000004bc: PUSH1 0x1f 000004be: DUP3 000004bf: ADD 000004c0: AND 000004c1: DUP3 000004c2: ADD 000004c3: DUP1 000004c4: PUSH1 0x40 000004c6: MSTORE 000004c7: POP 000004c8: DUP2 000004c9: ADD 000004ca: SWAP1 000004cb: PUSH2 0x04d4 000004ce: SWAP2 000004cf: SWAP1 000004d0: PUSH2 0x0bf9 000004d3: JUMP 000004d4: JUMPDEST 000004d5: PUSH2 0x04de 000004d8: SWAP2 000004d9: SWAP1 000004da: PUSH2 0x0bd1 000004dd: JUMP 000004de: JUMPDEST 000004df: SWAP3 000004e0: SWAP2 000004e1: POP 000004e2: POP 000004e3: JUMP 000004e4: JUMPDEST 000004e5: PUSH1 0x00 000004e7: DUP1 000004e8: PUSH2 0x04ef 000004eb: PUSH2 0x03e6 000004ee: JUMP 000004ef: JUMPDEST 000004f0: POP 000004f1: PUSH1 0x04 000004f3: DUP1 000004f4: SLOAD 000004f5: PUSH1 0x40 000004f7: MLOAD 000004f8: PUSH4 0x24bc8d3f 000004fd: PUSH1 0xe0 000004ff: SHL 00000500: DUP2 00000501: MSTORE 00000502: PUSH1 0x01 00000504: PUSH1 0x01 00000506: PUSH1 0xa0 00000508: SHL 00000509: SUB 0000050a: DUP9 0000050b: DUP2 0000050c: AND 0000050d: SWAP4 0000050e: DUP3 0000050f: ADD 00000510: SWAP4 00000511: SWAP1 00000512: SWAP4 00000513: MSTORE 00000514: PUSH1 0x24 00000516: DUP2 00000517: ADD 00000518: DUP5 00000519: SWAP1 0000051a: MSTORE 0000051b: SWAP3 0000051c: SWAP5 0000051d: POP 0000051e: PUSH9 0xd8d726b7177a800000 00000528: SWAP4 00000529: POP 0000052a: AND 0000052b: SWAP1 0000052c: PUSH4 0x24bc8d3f 00000531: SWAP1 00000532: PUSH1 0x44 00000534: ADD 00000535: PUSH1 0x20 00000537: PUSH1 0x40 00000539: MLOAD 0000053a: DUP1 0000053b: DUP4 0000053c: SUB 0000053d: DUP2 0000053e: DUP7 0000053f: GAS 00000540: STATICCALL 00000541: ISZERO 00000542: DUP1 00000543: ISZERO 00000544: PUSH2 0x0551 00000547: JUMPI 00000548: RETURNDATASIZE 00000549: PUSH1 0x00 0000054b: DUP1 0000054c: RETURNDATACOPY 0000054d: RETURNDATASIZE 0000054e: PUSH1 0x00 00000550: REVERT 00000551: JUMPDEST 00000552: POP 00000553: POP 00000554: POP 00000555: POP 00000556: PUSH1 0x40 00000558: MLOAD 00000559: RETURNDATASIZE 0000055a: PUSH1 0x1f 0000055c: NOT 0000055d: PUSH1 0x1f 0000055f: DUP3 00000560: ADD 00000561: AND 00000562: DUP3 00000563: ADD 00000564: DUP1 00000565: PUSH1 0x40 00000567: MSTORE 00000568: POP 00000569: DUP2 0000056a: ADD 0000056b: SWAP1 0000056c: PUSH2 0x0575 0000056f: SWAP2 00000570: SWAP1 00000571: PUSH2 0x0bf9 00000574: JUMP 00000575: JUMPDEST 00000576: PUSH2 0x057f 00000579: SWAP2 0000057a: SWAP1 0000057b: PUSH2 0x0bd1 0000057e: JUMP 0000057f: JUMPDEST 00000580: SWAP4 00000581: SWAP3 00000582: POP 00000583: POP 00000584: POP 00000585: JUMP 00000586: JUMPDEST 00000587: PUSH1 0x00 00000589: DUP1 0000058a: PUSH2 0x0591 0000058d: PUSH2 0x03e6 00000590: JUMP 00000591: JUMPDEST 00000592: POP 00000593: PUSH1 0x01 00000595: PUSH1 0x01 00000597: PUSH1 0xa0 00000599: SHL 0000059a: SUB 0000059b: DUP6 0000059c: AND 0000059d: PUSH1 0x00 0000059f: SWAP1 000005a0: DUP2 000005a1: MSTORE 000005a2: PUSH1 0x07 000005a4: PUSH1 0x20 000005a6: MSTORE 000005a7: PUSH1 0x40 000005a9: DUP2 000005aa: KECCAK256 000005ab: SLOAD 000005ac: SWAP2 000005ad: SWAP4 000005ae: POP 000005af: SWAP2 000005b0: POP 000005b1: PUSH2 0x05bb 000005b4: SWAP1 000005b5: PUSH1 0x01 000005b7: PUSH2 0x0b1b 000005ba: JUMP 000005bb: JUMPDEST 000005bc: SWAP1 000005bd: POP 000005be: JUMPDEST 000005bf: DUP2 000005c0: DUP2 000005c1: LT 000005c2: ISZERO 000005c3: PUSH2 0x063c 000005c6: JUMPI 000005c7: PUSH1 0x00 000005c9: DUP2 000005ca: DUP2 000005cb: MSTORE 000005cc: PUSH1 0x06 000005ce: PUSH1 0x20 000005d0: MSTORE 000005d1: PUSH1 0x40 000005d3: DUP2 000005d4: KECCAK256 000005d5: SLOAD 000005d6: ISZERO 000005d7: PUSH2 0x0627 000005da: JUMPI 000005db: PUSH1 0x00 000005dd: DUP3 000005de: DUP2 000005df: MSTORE 000005e0: PUSH1 0x06 000005e2: PUSH1 0x20 000005e4: SWAP1 000005e5: DUP2 000005e6: MSTORE 000005e7: PUSH1 0x40 000005e9: DUP1 000005ea: DUP4 000005eb: KECCAK256 000005ec: SLOAD 000005ed: PUSH1 0x08 000005ef: DUP4 000005f0: MSTORE 000005f1: DUP2 000005f2: DUP5 000005f3: KECCAK256 000005f4: SLOAD 000005f5: PUSH1 0x01 000005f7: PUSH1 0x01 000005f9: PUSH1 0xa0 000005fb: SHL 000005fc: SUB 000005fd: DUP11 000005fe: AND 000005ff: DUP6 00000600: MSTORE 00000601: PUSH1 0x05 00000603: DUP5 00000604: MSTORE 00000605: DUP3 00000606: DUP6 00000607: KECCAK256 00000608: DUP8 00000609: DUP7 0000060a: MSTORE 0000060b: SWAP1 0000060c: SWAP4 0000060d: MSTORE 0000060e: SWAP3 0000060f: KECCAK256 00000610: SLOAD 00000611: PUSH2 0x061a 00000614: SWAP2 00000615: SWAP1 00000616: PUSH2 0x0c12 00000619: JUMP 0000061a: JUMPDEST 0000061b: PUSH2 0x0624 0000061e: SWAP2 0000061f: SWAP1 00000620: PUSH2 0x0bd1 00000623: JUMP 00000624: JUMPDEST 00000625: SWAP1 00000626: POP 00000627: JUMPDEST 00000628: PUSH2 0x0631 0000062b: DUP2 0000062c: DUP6 0000062d: PUSH2 0x0b1b 00000630: JUMP 00000631: JUMPDEST 00000632: SWAP4 00000633: POP 00000634: POP 00000635: PUSH1 0x01 00000637: ADD 00000638: PUSH2 0x05be 0000063b: JUMP 0000063c: JUMPDEST 0000063d: POP 0000063e: POP 0000063f: SWAP2 00000640: SWAP1 00000641: POP 00000642: JUMP 00000643: JUMPDEST 00000644: PUSH2 0x064b 00000647: PUSH2 0x09a0 0000064a: JUMP 0000064b: JUMPDEST 0000064c: PUSH1 0x00 0000064e: PUSH2 0x0655 00000651: PUSH2 0x03e6 00000654: JUMP 00000655: JUMPDEST 00000656: POP 00000657: SWAP2 00000658: POP 00000659: POP 0000065a: PUSH1 0x00 0000065c: DUP1 0000065d: PUSH1 0x07 0000065f: PUSH1 0x00 00000661: PUSH2 0x0667 00000664: CALLER 00000665: SWAP1 00000666: JUMP 00000667: JUMPDEST 00000668: PUSH1 0x01 0000066a: PUSH1 0x01 0000066c: PUSH1 0xa0 0000066e: SHL 0000066f: SUB 00000670: AND 00000671: DUP2 00000672: MSTORE 00000673: PUSH1 0x20 00000675: DUP2 00000676: ADD 00000677: SWAP2 00000678: SWAP1 00000679: SWAP2 0000067a: MSTORE 0000067b: PUSH1 0x40 0000067d: ADD 0000067e: PUSH1 0x00 00000680: KECCAK256 00000681: SLOAD 00000682: PUSH2 0x068c 00000685: SWAP1 00000686: PUSH1 0x01 00000688: PUSH2 0x0b1b 0000068b: JUMP 0000068c: JUMPDEST 0000068d: SWAP1 0000068e: POP 0000068f: JUMPDEST 00000690: DUP3 00000691: DUP2 00000692: LT 00000693: ISZERO 00000694: PUSH2 0x073f 00000697: JUMPI 00000698: PUSH1 0x00 0000069a: DUP2 0000069b: DUP2 0000069c: MSTORE 0000069d: PUSH1 0x06 0000069f: PUSH1 0x20 000006a1: MSTORE 000006a2: PUSH1 0x40 000006a4: DUP2 000006a5: KECCAK256 000006a6: SLOAD 000006a7: ISZERO 000006a8: PUSH2 0x06ef 000006ab: JUMPI 000006ac: PUSH1 0x00 000006ae: DUP3 000006af: DUP2 000006b0: MSTORE 000006b1: PUSH1 0x06 000006b3: PUSH1 0x20 000006b5: SWAP1 000006b6: DUP2 000006b7: MSTORE 000006b8: PUSH1 0x40 000006ba: DUP1 000006bb: DUP4 000006bc: KECCAK256 000006bd: SLOAD 000006be: PUSH1 0x08 000006c0: DUP4 000006c1: MSTORE 000006c2: DUP2 000006c3: DUP5 000006c4: KECCAK256 000006c5: SLOAD 000006c6: CALLER 000006c7: DUP6 000006c8: MSTORE 000006c9: PUSH1 0x05 000006cb: DUP5 000006cc: MSTORE 000006cd: DUP3 000006ce: DUP6 000006cf: KECCAK256 000006d0: DUP8 000006d1: DUP7 000006d2: MSTORE 000006d3: SWAP1 000006d4: SWAP4 000006d5: MSTORE 000006d6: SWAP3 000006d7: KECCAK256 000006d8: SLOAD 000006d9: PUSH2 0x06e2 000006dc: SWAP2 000006dd: SWAP1 000006de: PUSH2 0x0c12 000006e1: JUMP 000006e2: JUMPDEST 000006e3: PUSH2 0x06ec 000006e6: SWAP2 000006e7: SWAP1 000006e8: PUSH2 0x0bd1 000006eb: JUMP 000006ec: JUMPDEST 000006ed: SWAP1 000006ee: POP 000006ef: JUMPDEST 000006f0: PUSH1 0x40 000006f2: DUP1 000006f3: MLOAD 000006f4: DUP4 000006f5: DUP2 000006f6: MSTORE 000006f7: PUSH1 0x20 000006f9: DUP2 000006fa: ADD 000006fb: DUP4 000006fc: SWAP1 000006fd: MSTORE 000006fe: CALLER 000006ff: SWAP2 00000700: PUSH32 0xdacbdde355ba930696a362ea6738feb9f8bd52dfb3d81947558fd3217e23e325 00000721: SWAP2 00000722: ADD 00000723: PUSH1 0x40 00000725: MLOAD 00000726: DUP1 00000727: SWAP2 00000728: SUB 00000729: SWAP1 0000072a: LOG2 0000072b: PUSH2 0x0734 0000072e: DUP2 0000072f: DUP5 00000730: PUSH2 0x0b1b 00000733: JUMP 00000734: JUMPDEST 00000735: SWAP3 00000736: POP 00000737: POP 00000738: PUSH1 0x01 0000073a: ADD 0000073b: PUSH2 0x068f 0000073e: JUMP 0000073f: JUMPDEST 00000740: POP 00000741: PUSH1 0x00 00000743: DUP2 00000744: GT 00000745: PUSH2 0x0788 00000748: JUMPI 00000749: PUSH1 0x40 0000074b: MLOAD 0000074c: PUSH3 0x461bcd 00000750: PUSH1 0xe5 00000752: SHL 00000753: DUP2 00000754: MSTORE 00000755: PUSH1 0x20 00000757: PUSH1 0x04 00000759: DUP3 0000075a: ADD 0000075b: MSTORE 0000075c: PUSH1 0x10 0000075e: PUSH1 0x24 00000760: DUP3 00000761: ADD 00000762: MSTORE 00000763: PUSH16 0x4e6f7468696e6720746f20636c61696d 00000774: PUSH1 0x80 00000776: SHL 00000777: PUSH1 0x44 00000779: DUP3 0000077a: ADD 0000077b: MSTORE 0000077c: PUSH1 0x64 0000077e: ADD 0000077f: JUMPDEST 00000780: PUSH1 0x40 00000782: MLOAD 00000783: DUP1 00000784: SWAP2 00000785: SUB 00000786: SWAP1 00000787: REVERT 00000788: JUMPDEST 00000789: PUSH2 0x0793 0000078c: PUSH1 0x01 0000078e: DUP4 0000078f: PUSH2 0x0ba8 00000792: JUMP 00000793: JUMPDEST 00000794: CALLER 00000795: PUSH1 0x00 00000797: DUP2 00000798: DUP2 00000799: MSTORE 0000079a: PUSH1 0x07 0000079c: PUSH1 0x20 0000079e: MSTORE 0000079f: PUSH1 0x40 000007a1: SWAP1 000007a2: KECCAK256 000007a3: SWAP2 000007a4: SWAP1 000007a5: SWAP2 000007a6: SSTORE 000007a7: PUSH2 0x07b0 000007aa: SWAP1 000007ab: DUP3 000007ac: PUSH2 0x09ca 000007af: JUMP 000007b0: JUMPDEST 000007b1: POP 000007b2: POP 000007b3: PUSH2 0x07bc 000007b6: PUSH1 0x01 000007b8: PUSH1 0x00 000007ba: SSTORE 000007bb: JUMP 000007bc: JUMPDEST 000007bd: JUMP 000007be: JUMPDEST 000007bf: PUSH2 0x07c6 000007c2: PUSH2 0x0a72 000007c5: JUMP 000007c6: JUMPDEST 000007c7: PUSH2 0x07bc 000007ca: PUSH1 0x00 000007cc: PUSH2 0x0a9f 000007cf: JUMP 000007d0: JUMPDEST 000007d1: PUSH1 0x02 000007d3: SLOAD 000007d4: CALLER 000007d5: SWAP1 000007d6: PUSH1 0x01 000007d8: PUSH1 0x01 000007da: PUSH1 0xa0 000007dc: SHL 000007dd: SUB 000007de: AND 000007df: DUP2 000007e0: EQ 000007e1: PUSH2 0x0808 000007e4: JUMPI 000007e5: PUSH1 0x40 000007e7: MLOAD 000007e8: PUSH4 0x118cdaa7 000007ed: PUSH1 0xe0 000007ef: SHL 000007f0: DUP2 000007f1: MSTORE 000007f2: PUSH1 0x01 000007f4: PUSH1 0x01 000007f6: PUSH1 0xa0 000007f8: SHL 000007f9: SUB 000007fa: DUP3 000007fb: AND 000007fc: PUSH1 0x04 000007fe: DUP3 000007ff: ADD 00000800: MSTORE 00000801: PUSH1 0x24 00000803: ADD 00000804: PUSH2 0x077f 00000807: JUMP 00000808: JUMPDEST 00000809: PUSH2 0x0811 0000080c: DUP2 0000080d: PUSH2 0x0a9f 00000810: JUMP 00000811: JUMPDEST 00000812: POP 00000813: JUMP 00000814: JUMPDEST 00000815: PUSH2 0x081c 00000818: PUSH2 0x09a0 0000081b: JUMP 0000081c: JUMPDEST 0000081d: PUSH1 0x00 0000081f: PUSH2 0x0826 00000822: PUSH2 0x03e6 00000825: JUMP 00000826: JUMPDEST 00000827: POP 00000828: SWAP2 00000829: POP 0000082a: POP 0000082b: PUSH1 0x00 0000082d: DUP1 0000082e: PUSH1 0x05 00000830: PUSH1 0x00 00000832: PUSH2 0x0838 00000835: CALLER 00000836: SWAP1 00000837: JUMP 00000838: JUMPDEST 00000839: PUSH1 0x01 0000083b: PUSH1 0x01 0000083d: PUSH1 0xa0 0000083f: SHL 00000840: SUB 00000841: AND 00000842: DUP2 00000843: MSTORE 00000844: PUSH1 0x20 00000846: DUP1 00000847: DUP3 00000848: ADD 00000849: SWAP3 0000084a: SWAP1 0000084b: SWAP3 0000084c: MSTORE 0000084d: PUSH1 0x40 0000084f: SWAP1 00000850: DUP2 00000851: ADD 00000852: PUSH1 0x00 00000854: SWAP1 00000855: DUP2 00000856: KECCAK256 00000857: DUP7 00000858: DUP3 00000859: MSTORE 0000085a: SWAP1 0000085b: SWAP3 0000085c: MSTORE 0000085d: SWAP1 0000085e: KECCAK256 0000085f: SLOAD 00000860: SWAP1 00000861: POP 00000862: DUP1 00000863: ISZERO 00000864: PUSH2 0x088b 00000867: JUMPI 00000868: PUSH1 0x00 0000086a: DUP4 0000086b: DUP2 0000086c: MSTORE 0000086d: PUSH1 0x06 0000086f: PUSH1 0x20 00000871: MSTORE 00000872: PUSH1 0x40 00000874: DUP2 00000875: KECCAK256 00000876: DUP1 00000877: SLOAD 00000878: DUP4 00000879: SWAP3 0000087a: SWAP1 0000087b: PUSH2 0x0885 0000087e: SWAP1 0000087f: DUP5 00000880: SWAP1 00000881: PUSH2 0x0ba8 00000884: JUMP 00000885: JUMPDEST 00000886: SWAP1 00000887: SWAP2 00000888: SSTORE 00000889: POP 0000088a: POP 0000088b: JUMPDEST 0000088c: PUSH2 0x0894 0000088f: CALLER 00000890: PUSH2 0x04e4 00000893: JUMP 00000894: JUMPDEST 00000895: PUSH2 0x089d 00000898: CALLER 00000899: PUSH2 0x0461 0000089c: JUMP 0000089d: JUMPDEST 0000089e: PUSH2 0x08a7 000008a1: SWAP2 000008a2: SWAP1 000008a3: PUSH2 0x0b1b 000008a6: JUMP 000008a7: JUMPDEST 000008a8: SWAP2 000008a9: POP 000008aa: DUP2 000008ab: PUSH1 0x06 000008ad: PUSH1 0x00 000008af: DUP6 000008b0: DUP2 000008b1: MSTORE 000008b2: PUSH1 0x20 000008b4: ADD 000008b5: SWAP1 000008b6: DUP2 000008b7: MSTORE 000008b8: PUSH1 0x20 000008ba: ADD 000008bb: PUSH1 0x00 000008bd: KECCAK256 000008be: PUSH1 0x00 000008c0: DUP3 000008c1: DUP3 000008c2: SLOAD 000008c3: PUSH2 0x08cc 000008c6: SWAP2 000008c7: SWAP1 000008c8: PUSH2 0x0b1b 000008cb: JUMP 000008cc: JUMPDEST 000008cd: SWAP1 000008ce: SWAP2 000008cf: SSTORE 000008d0: POP 000008d1: POP 000008d2: CALLER 000008d3: PUSH1 0x00 000008d5: DUP2 000008d6: DUP2 000008d7: MSTORE 000008d8: PUSH1 0x05 000008da: PUSH1 0x20 000008dc: SWAP1 000008dd: DUP2 000008de: MSTORE 000008df: PUSH1 0x40 000008e1: DUP1 000008e2: DUP4 000008e3: KECCAK256 000008e4: DUP8 000008e5: DUP5 000008e6: MSTORE 000008e7: DUP3 000008e8: MSTORE 000008e9: SWAP2 000008ea: DUP3 000008eb: SWAP1 000008ec: KECCAK256 000008ed: DUP6 000008ee: SWAP1 000008ef: SSTORE 000008f0: SWAP1 000008f1: MLOAD 000008f2: DUP5 000008f3: DUP2 000008f4: MSTORE 000008f5: DUP6 000008f6: SWAP3 000008f7: SWAP2 000008f8: PUSH32 0x64ceaa25376a606505a20223863437c73f24c3d44eca9912c49197b4aea536a4 00000919: SWAP2 0000091a: ADD 0000091b: PUSH1 0x40 0000091d: MLOAD 0000091e: DUP1 0000091f: SWAP2 00000920: SUB 00000921: SWAP1 00000922: LOG3 00000923: POP 00000924: POP 00000925: POP 00000926: PUSH2 0x07bc 00000929: PUSH1 0x01 0000092b: PUSH1 0x00 0000092d: SSTORE 0000092e: JUMP 0000092f: JUMPDEST 00000930: PUSH2 0x0937 00000933: PUSH2 0x0a72 00000936: JUMP 00000937: JUMPDEST 00000938: PUSH1 0x02 0000093a: DUP1 0000093b: SLOAD 0000093c: PUSH1 0x01 0000093e: PUSH1 0x01 00000940: PUSH1 0xa0 00000942: SHL 00000943: SUB 00000944: DUP4 00000945: AND 00000946: PUSH1 0x01 00000948: PUSH1 0x01 0000094a: PUSH1 0xa0 0000094c: SHL 0000094d: SUB 0000094e: NOT 0000094f: SWAP1 00000950: SWAP2 00000951: AND 00000952: DUP2 00000953: OR 00000954: SWAP1 00000955: SWAP2 00000956: SSTORE 00000957: PUSH2 0x0968 0000095a: PUSH1 0x01 0000095c: SLOAD 0000095d: PUSH1 0x01 0000095f: PUSH1 0x01 00000961: PUSH1 0xa0 00000963: SHL 00000964: SUB 00000965: AND 00000966: SWAP1 00000967: JUMP 00000968: JUMPDEST 00000969: PUSH1 0x01 0000096b: PUSH1 0x01 0000096d: PUSH1 0xa0 0000096f: SHL 00000970: SUB 00000971: AND 00000972: PUSH32 0x38d16b8cac22d99fc7c124b9cd0de2d3fa1faef420bfe791d8c362d765e22700 00000993: PUSH1 0x40 00000995: MLOAD 00000996: PUSH1 0x40 00000998: MLOAD 00000999: DUP1 0000099a: SWAP2 0000099b: SUB 0000099c: SWAP1 0000099d: LOG3 0000099e: POP 0000099f: JUMP 000009a0: JUMPDEST 000009a1: PUSH1 0x02 000009a3: PUSH1 0x00 000009a5: SLOAD 000009a6: SUB 000009a7: PUSH2 0x09c3 000009aa: JUMPI 000009ab: PUSH1 0x40 000009ad: MLOAD 000009ae: PUSH4 0x3ee5aeb5 000009b3: PUSH1 0xe0 000009b5: SHL 000009b6: DUP2 000009b7: MSTORE 000009b8: PUSH1 0x04 000009ba: ADD 000009bb: PUSH1 0x40 000009bd: MLOAD 000009be: DUP1 000009bf: SWAP2 000009c0: SUB 000009c1: SWAP1 000009c2: REVERT 000009c3: JUMPDEST 000009c4: PUSH1 0x02 000009c6: PUSH1 0x00 000009c8: SSTORE 000009c9: JUMP 000009ca: JUMPDEST 000009cb: PUSH1 0x00 000009cd: DUP3 000009ce: PUSH1 0x01 000009d0: PUSH1 0x01 000009d2: PUSH1 0xa0 000009d4: SHL 000009d5: SUB 000009d6: AND 000009d7: DUP3 000009d8: PUSH1 0x40 000009da: MLOAD 000009db: PUSH1 0x00 000009dd: PUSH1 0x40 000009df: MLOAD 000009e0: DUP1 000009e1: DUP4 000009e2: SUB 000009e3: DUP2 000009e4: DUP6 000009e5: DUP8 000009e6: GAS 000009e7: CALL 000009e8: SWAP3 000009e9: POP 000009ea: POP 000009eb: POP 000009ec: RETURNDATASIZE 000009ed: DUP1 000009ee: PUSH1 0x00 000009f0: DUP2 000009f1: EQ 000009f2: PUSH2 0x0a17 000009f5: JUMPI 000009f6: PUSH1 0x40 000009f8: MLOAD 000009f9: SWAP2 000009fa: POP 000009fb: PUSH1 0x1f 000009fd: NOT 000009fe: PUSH1 0x3f 00000a00: RETURNDATASIZE 00000a01: ADD 00000a02: AND 00000a03: DUP3 00000a04: ADD 00000a05: PUSH1 0x40 00000a07: MSTORE 00000a08: RETURNDATASIZE 00000a09: DUP3 00000a0a: MSTORE 00000a0b: RETURNDATASIZE 00000a0c: PUSH1 0x00 00000a0e: PUSH1 0x20 00000a10: DUP5 00000a11: ADD 00000a12: RETURNDATACOPY 00000a13: PUSH2 0x0a1c 00000a16: JUMP 00000a17: JUMPDEST 00000a18: PUSH1 0x60 00000a1a: SWAP2 00000a1b: POP 00000a1c: JUMPDEST 00000a1d: POP 00000a1e: POP 00000a1f: SWAP1 00000a20: POP 00000a21: DUP1 00000a22: PUSH2 0x0a6d 00000a25: JUMPI 00000a26: PUSH1 0x40 00000a28: MLOAD 00000a29: PUSH3 0x461bcd 00000a2d: PUSH1 0xe5 00000a2f: SHL 00000a30: DUP2 00000a31: MSTORE 00000a32: PUSH1 0x20 00000a34: PUSH1 0x04 00000a36: DUP3 00000a37: ADD 00000a38: MSTORE 00000a39: PUSH1 0x19 00000a3b: PUSH1 0x24 00000a3d: DUP3 00000a3e: ADD 00000a3f: MSTORE 00000a40: PUSH32 0x426c617a653a204661696c656420746f2073656e642045544800000000000000 00000a61: PUSH1 0x44 00000a63: DUP3 00000a64: ADD 00000a65: MSTORE 00000a66: PUSH1 0x64 00000a68: ADD 00000a69: PUSH2 0x077f 00000a6c: JUMP 00000a6d: JUMPDEST 00000a6e: POP 00000a6f: POP 00000a70: POP 00000a71: JUMP 00000a72: JUMPDEST 00000a73: PUSH1 0x01 00000a75: SLOAD 00000a76: PUSH1 0x01 00000a78: PUSH1 0x01 00000a7a: PUSH1 0xa0 00000a7c: SHL 00000a7d: SUB 00000a7e: AND 00000a7f: CALLER 00000a80: EQ 00000a81: PUSH2 0x07bc 00000a84: JUMPI 00000a85: PUSH1 0x40 00000a87: MLOAD 00000a88: PUSH4 0x118cdaa7 00000a8d: PUSH1 0xe0 00000a8f: SHL 00000a90: DUP2 00000a91: MSTORE 00000a92: CALLER 00000a93: PUSH1 0x04 00000a95: DUP3 00000a96: ADD 00000a97: MSTORE 00000a98: PUSH1 0x24 00000a9a: ADD 00000a9b: PUSH2 0x077f 00000a9e: JUMP 00000a9f: JUMPDEST 00000aa0: PUSH1 0x02 00000aa2: DUP1 00000aa3: SLOAD 00000aa4: PUSH1 0x01 00000aa6: PUSH1 0x01 00000aa8: PUSH1 0xa0 00000aaa: SHL 00000aab: SUB 00000aac: NOT 00000aad: AND 00000aae: SWAP1 00000aaf: SSTORE 00000ab0: PUSH2 0x0811 00000ab3: DUP2 00000ab4: PUSH1 0x01 00000ab6: DUP1 00000ab7: SLOAD 00000ab8: PUSH1 0x01 00000aba: PUSH1 0x01 00000abc: PUSH1 0xa0 00000abe: SHL 00000abf: SUB 00000ac0: DUP4 00000ac1: DUP2 00000ac2: AND 00000ac3: PUSH1 0x01 00000ac5: PUSH1 0x01 00000ac7: PUSH1 0xa0 00000ac9: SHL 00000aca: SUB 00000acb: NOT 00000acc: DUP4 00000acd: AND 00000ace: DUP2 00000acf: OR 00000ad0: SWAP1 00000ad1: SWAP4 00000ad2: SSTORE 00000ad3: PUSH1 0x40 00000ad5: MLOAD 00000ad6: SWAP2 00000ad7: AND 00000ad8: SWAP2 00000ad9: SWAP1 00000ada: DUP3 00000adb: SWAP1 00000adc: PUSH32 0x8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0 00000afd: SWAP1 00000afe: PUSH1 0x00 00000b00: SWAP1 00000b01: LOG3 00000b02: POP 00000b03: POP 00000b04: JUMP 00000b05: JUMPDEST 00000b06: PUSH4 0x4e487b71 00000b0b: PUSH1 0xe0 00000b0d: SHL 00000b0e: PUSH1 0x00 00000b10: MSTORE 00000b11: PUSH1 0x11 00000b13: PUSH1 0x04 00000b15: MSTORE 00000b16: PUSH1 0x24 00000b18: PUSH1 0x00 00000b1a: REVERT 00000b1b: JUMPDEST 00000b1c: DUP1 00000b1d: DUP3 00000b1e: ADD 00000b1f: DUP1 00000b20: DUP3 00000b21: GT 00000b22: ISZERO 00000b23: PUSH2 0x04de 00000b26: JUMPI 00000b27: PUSH2 0x04de 00000b2a: PUSH2 0x0b05 00000b2d: JUMP 00000b2e: JUMPDEST 00000b2f: DUP1 00000b30: CALLDATALOAD 00000b31: PUSH1 0x01 00000b33: PUSH1 0x01 00000b35: PUSH1 0xa0 00000b37: SHL 00000b38: SUB 00000b39: DUP2 00000b3a: AND 00000b3b: DUP2 00000b3c: EQ 00000b3d: PUSH2 0x0b45 00000b40: JUMPI 00000b41: PUSH1 0x00 00000b43: DUP1 00000b44: REVERT 00000b45: JUMPDEST 00000b46: SWAP2 00000b47: SWAP1 00000b48: POP 00000b49: JUMP 00000b4a: JUMPDEST 00000b4b: PUSH1 0x00 00000b4d: PUSH1 0x20 00000b4f: DUP3 00000b50: DUP5 00000b51: SUB 00000b52: SLT 00000b53: ISZERO 00000b54: PUSH2 0x0b5c 00000b57: JUMPI 00000b58: PUSH1 0x00 00000b5a: DUP1 00000b5b: REVERT 00000b5c: JUMPDEST 00000b5d: PUSH2 0x057f 00000b60: DUP3 00000b61: PUSH2 0x0b2e 00000b64: JUMP 00000b65: JUMPDEST 00000b66: PUSH1 0x00 00000b68: PUSH1 0x20 00000b6a: DUP3 00000b6b: DUP5 00000b6c: SUB 00000b6d: SLT 00000b6e: ISZERO 00000b6f: PUSH2 0x0b77 00000b72: JUMPI 00000b73: PUSH1 0x00 00000b75: DUP1 00000b76: REVERT 00000b77: JUMPDEST 00000b78: POP 00000b79: CALLDATALOAD 00000b7a: SWAP2 00000b7b: SWAP1 00000b7c: POP 00000b7d: JUMP 00000b7e: JUMPDEST 00000b7f: PUSH1 0x00 00000b81: DUP1 00000b82: PUSH1 0x40 00000b84: DUP4 00000b85: DUP6 00000b86: SUB 00000b87: SLT 00000b88: ISZERO 00000b89: PUSH2 0x0b91 00000b8c: JUMPI 00000b8d: PUSH1 0x00 00000b8f: DUP1 00000b90: REVERT 00000b91: JUMPDEST 00000b92: PUSH2 0x0b9a 00000b95: DUP4 00000b96: PUSH2 0x0b2e 00000b99: JUMP 00000b9a: JUMPDEST 00000b9b: SWAP5 00000b9c: PUSH1 0x20 00000b9e: SWAP4 00000b9f: SWAP1 00000ba0: SWAP4 00000ba1: ADD 00000ba2: CALLDATALOAD 00000ba3: SWAP4 00000ba4: POP 00000ba5: POP 00000ba6: POP 00000ba7: JUMP 00000ba8: JUMPDEST 00000ba9: DUP2 00000baa: DUP2 00000bab: SUB 00000bac: DUP2 00000bad: DUP2 00000bae: GT 00000baf: ISZERO 00000bb0: PUSH2 0x04de 00000bb3: JUMPI 00000bb4: PUSH2 0x04de 00000bb7: PUSH2 0x0b05 00000bba: JUMP 00000bbb: JUMPDEST 00000bbc: PUSH4 0x4e487b71 00000bc1: PUSH1 0xe0 00000bc3: SHL 00000bc4: PUSH1 0x00 00000bc6: MSTORE 00000bc7: PUSH1 0x12 00000bc9: PUSH1 0x04 00000bcb: MSTORE 00000bcc: PUSH1 0x24 00000bce: PUSH1 0x00 00000bd0: REVERT 00000bd1: JUMPDEST 00000bd2: PUSH1 0x00 00000bd4: DUP3 00000bd5: PUSH2 0x0be0 00000bd8: JUMPI 00000bd9: PUSH2 0x0be0 00000bdc: PUSH2 0x0bbb 00000bdf: JUMP 00000be0: JUMPDEST 00000be1: POP 00000be2: DIV 00000be3: SWAP1 00000be4: JUMP 00000be5: JUMPDEST 00000be6: PUSH1 0x00 00000be8: DUP3 00000be9: PUSH2 0x0bf4 00000bec: JUMPI 00000bed: PUSH2 0x0bf4 00000bf0: PUSH2 0x0bbb 00000bf3: JUMP 00000bf4: JUMPDEST 00000bf5: POP 00000bf6: MOD 00000bf7: SWAP1 00000bf8: JUMP 00000bf9: JUMPDEST 00000bfa: PUSH1 0x00 00000bfc: PUSH1 0x20 00000bfe: DUP3 00000bff: DUP5 00000c00: SUB 00000c01: SLT 00000c02: ISZERO 00000c03: PUSH2 0x0c0b 00000c06: JUMPI 00000c07: PUSH1 0x00 00000c09: DUP1 00000c0a: REVERT 00000c0b: JUMPDEST 00000c0c: POP 00000c0d: MLOAD 00000c0e: SWAP2 00000c0f: SWAP1 00000c10: POP 00000c11: JUMP 00000c12: JUMPDEST 00000c13: DUP1 00000c14: DUP3 00000c15: MUL 00000c16: DUP2 00000c17: ISZERO 00000c18: DUP3 00000c19: DUP3 00000c1a: DIV 00000c1b: DUP5 00000c1c: EQ 00000c1d: OR 00000c1e: PUSH2 0x04de 00000c21: JUMPI 00000c22: PUSH2 0x04de 00000c25: PUSH2 0x0b05 00000c28: JUMP 00000c29: INVALID 00000c2a: LOG2 00000c2b: PUSH5 0x6970667358 00000c31: UNKNOWN(0x22) 00000c32: SLT 00000c33: KECCAK256 00000c34: UNKNOWN(0xB9) 00000c35: UNKNOWN(0x26) 00000c36: UNKNOWN(0xFC) 00000c37: SWAP2 00000c38: DUP1 00000c39: UNKNOWN(0xAF) 00000c3a: AND 00000c3b: DUP16 00000c3c: BLOBBASEFEE 00000c3d: PUSH7 0xeaa8d435656d7c 00000c45: UNKNOWN(0xC4) 00000c46: REVERT 00000c47: DUP1 00000c48: GASLIMIT 00000c49: NOT 00000c4a: UNKNOWN(0x27) 00000c4b: UNKNOWN(0xD9) 00000c4c: UNKNOWN(0xF8) 00000c4d: CALLDATALOAD 00000c4e: ISZERO 00000c4f: PUSH16
| Severity | Category | Tool | Title | Confidence | Validated | Confirmed | Details |
|---|---|---|---|---|---|---|---|
| high | other | detector | Untrusted CALL target/value reachable | 60 | no | no |
viewtrace_id: 0x15cd0829fa6269aacba58a18ffa1173d4e9992924c4ab4a36c5fcb640c64be1a
call_targets:
0xe249c7a82573f55eb2b215cd6695800cfdfa4acc
target_varies:
no
classification:
constant_target
validation_json{
"sink": "CALL",
"errors": 0,
"status": "sink_reached",
"attempts": 1,
"trace_id": "0x15cd0829fa6269aacba58a18ffa1173d4e9992924c4ab4a36c5fcb640c64be1a",
"confirmed": false,
"trace_mode": "callTracer",
"call_targets": [
"0xe249c7a82573f55eb2b215cd6695800cfdfa4acc"
],
"matched_probe": null,
"target_varies": false,
"classification": "constant_target"
}
witness_json{
"notes": "heuristic witness; entrypoints are best-effort selectors with zeroed calldata",
"constraints": [],
"entrypoints": [
{
"calldata": "0xa51e262d",
"selector": "0xa51e262d",
"calldata_variants": [
"0xa51e262d",
"0xa51e262d0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xcb0f3305",
"selector": "0xcb0f3305",
"calldata_variants": [
"0xcb0f3305",
"0xcb0f33050000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xd11711a2",
"selector": "0xd11711a2",
"calldata_variants": [
"0xd11711a2",
"0xd11711a20000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xe30c3978",
"selector": "0xe30c3978",
"calldata_variants": [
"0xe30c3978",
"0xe30c39780000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xf2fde38b",
"selector": "0xf2fde38b",
"calldata_variants": [
"0xf2fde38b",
"0xf2fde38b0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x79ba5097",
"selector": "0x79ba5097",
"calldata_variants": [
"0x79ba5097",
"0x79ba50970000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x857f14f3",
"selector": "0x857f14f3",
"calldata_variants": [
"0x857f14f3",
"0x857f14f30000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x8bd95563",
"selector": "0x8bd95563",
"calldata_variants": [
"0x8bd95563",
"0x8bd955630000000000000000000000000000000000000000000000000000000000000000"
]
}
]
}
evidence_json{
"examples": [
{
"pc": 2535,
"opcode": "CALL",
"returndata_checked": null,
"value_expression_category": "computed",
"target_expression_category": "computed"
}
],
"call_count": 1,
"guards_detected": [],
"untrusted_call_count": 1
}
|
| high | other | detector | ETH value transfer possible | 55 | no | no |
viewtrace_id: 0x15cd0829fa6269aacba58a18ffa1173d4e9992924c4ab4a36c5fcb640c64be1a
call_targets:
0xe249c7a82573f55eb2b215cd6695800cfdfa4acc
target_varies:
no
classification:
constant_target
validation_json{
"sink": "CALL",
"errors": 0,
"status": "sink_reached",
"attempts": 1,
"trace_id": "0x15cd0829fa6269aacba58a18ffa1173d4e9992924c4ab4a36c5fcb640c64be1a",
"confirmed": false,
"trace_mode": "callTracer",
"call_targets": [
"0xe249c7a82573f55eb2b215cd6695800cfdfa4acc"
],
"matched_probe": null,
"target_varies": false,
"classification": "constant_target"
}
witness_json{
"notes": "heuristic witness; entrypoints are best-effort selectors with zeroed calldata",
"constraints": [],
"entrypoints": [
{
"calldata": "0xa51e262d",
"selector": "0xa51e262d",
"calldata_variants": [
"0xa51e262d",
"0xa51e262d0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xcb0f3305",
"selector": "0xcb0f3305",
"calldata_variants": [
"0xcb0f3305",
"0xcb0f33050000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xd11711a2",
"selector": "0xd11711a2",
"calldata_variants": [
"0xd11711a2",
"0xd11711a20000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xe30c3978",
"selector": "0xe30c3978",
"calldata_variants": [
"0xe30c3978",
"0xe30c39780000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xf2fde38b",
"selector": "0xf2fde38b",
"calldata_variants": [
"0xf2fde38b",
"0xf2fde38b0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x79ba5097",
"selector": "0x79ba5097",
"calldata_variants": [
"0x79ba5097",
"0x79ba50970000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x857f14f3",
"selector": "0x857f14f3",
"calldata_variants": [
"0x857f14f3",
"0x857f14f30000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x8bd95563",
"selector": "0x8bd95563",
"calldata_variants": [
"0x8bd95563",
"0x8bd955630000000000000000000000000000000000000000000000000000000000000000"
]
}
]
}
evidence_json{
"examples": [
{
"pc": 2535,
"opcode": "CALL",
"returndata_checked": null,
"value_expression_category": "computed",
"target_expression_category": "computed"
}
],
"eth_value_calls": 1,
"guards_detected": []
}
|