44ac7875-1c5d-46d7-abfc-c41ed56bea65
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 |
|---|---|---|---|---|
| 31433 | report.consolidate | complete | 1 / 1 | 3 months ago |
| 77224 | artifact.fetch | failed | 1 / 3 | 1 week ago |
| 77225 | tool.cast_disasm | complete | 1 / 3 | 1 week ago |
| 77226 | analysis.bundle | complete | 1 / 3 | 1 week ago |
| 77227 | capability.graph | complete | 1 / 3 | 1 week ago |
| 77228 | detector.run | complete | 1 / 3 | 1 week ago |
| 77229 | validation.fork | complete | 1 / 3 | 1 week ago |
No slither job recorded yet.
[codex:118900] OpenAI Codex v0.77.0 (research preview)
[codex:118900] --------
[codex:118900] workdir: /tmp/codex-multi-at3bub2j
[codex:118900] model: gpt-5.2-codex
[codex:118900] provider: openai
[codex:118900] approval: never
[codex:118900] sandbox: read-only
[codex:118900] reasoning effort: xhigh
[codex:118900] reasoning summaries: auto
[codex:118900] session id: 019b81b2-db38-7b22-84f3-45935a9dffb7
[codex:118900] --------
[codex:118900] user
[codex:118900] You are a profit-focused exploit hunter. Your ONLY goal is finding ways to extract value (ETH, tokens, NFTs) from this contract.
[codex:118900]
[codex:118900] Read `AUDIT_BUNDLE.txt` completely before concluding. Treat `lib/` and `@openzeppelin/` as trusted unless misused.
[codex:118900]
[codex:118900] ONLY REPORT if you find a CONCRETE, EXPLOITABLE path to profit. We do NOT care about:
[codex:118900] - Gas inefficiency, code quality, naming, or best practices
[codex:118900] - Theoretical vulnerabilities without a clear extraction path
[codex:118900] - Centralization risks (admin can rug) - assume admin keys are secure
[codex:118900] - Front-running unless it enables theft beyond MEV
[codex:118900] - DoS, griefing, or issues that don't result in attacker profit
[codex:118900] - Missing events, view function issues, or informational findings
[codex:118900]
[codex:118900] HIGH-VALUE PATTERNS TO HUNT:
[codex:118900] - Reentrancy: external calls before state updates that allow double-withdrawal
[codex:118900] - Access control: missing/bypassable auth on withdraw, transfer, or mint functions
[codex:118900] - Flash loan attacks: borrow -> manipulate -> profit in single tx
[codex:118900] - Price oracle manipulation: TWAP with short window, spot price reads, stale prices
[codex:118900] - Signature replay: missing nonce, chainId, or deadline in permit/meta-tx
[codex:118900] - Proxy hijacking: unprotected initialize(), storage collision, UUPS without auth
[codex:118900] - Accounting errors: rounding that favors attacker, share inflation, first depositor attacks
[codex:118900] - Unchecked external calls: return value ignored on token transfers enabling fake tokens
[codex:118900] - Cross-function reentrancy: state read in function A, modified via reentrant call, used stale in A
[codex:118900]
[codex:118900] For each finding, you MUST provide:
[codex:118900] 1. Exact file and line numbers of vulnerable code
[codex:118900] 2. Step-by-step exploit transaction sequence
[codex:118900] 3. Estimated profit potential (order of magnitude: contract balance, LP reserves, etc.)
[codex:118900]
[codex:118900] If no concrete profit path exists: set no_findings=true. Do NOT pad with low-severity noise.
[codex:118900]
[codex:118900] Output MUST be valid JSON matching the provided schema.
[codex:118900] - severity: info, low, medium, high, critical (use high/critical ONLY for clear extraction paths)
[codex:118900] - category: access_control, reentrancy, math, oracle, upgradeability, auth, other
[codex:118900] mcp startup: no servers
[codex:118900]
[codex:118900] thinking
[codex:118900] **Preparing to analyze AUDIT_BUNDLE**
[codex:118900] exec
[codex:118900] /bin/bash -lc ls in /tmp/codex-multi-at3bub2j succeeded in 7ms:
[codex:118900] AUDIT_BUNDLE.txt
[codex:118900] codex-output-schema.json
[codex:118900] contracts
[codex:118900] exec
[codex:118900] /bin/bash -lc "sed -n '1,200p' AUDIT_BUNDLE.txt" in /tmp/codex-multi-at3bub2j succeeded in 5ms:
[codex:118900] This file concatenates first-party Solidity sources only (lib/@openzeppelin excluded).
[codex:118900]
[codex:118900] ================================================================================
[codex:118900] FILE: contracts/Contract.sol
[codex:118900] ================================================================================
[codex:118900] pragma solidity ^0.4.11;
[codex:118900]
[codex:118900] contract Ownable {
[codex:118900] address public owner;
[codex:118900]
[codex:118900]
[codex:118900] /**
[codex:118900] * @dev The Ownable constructor sets the original `owner` of the contract to the sender
[codex:118900] * account.
[codex:118900] */
[codex:118900] function Ownable() {
[codex:118900] owner = msg.sender;
[codex:118900] }
[codex:118900]
[codex:118900]
[codex:118900]
[codex:118900] thinking
[codex:118900] **Continuing to read AUDIT_BUNDLE file**
[codex:118900] exec
[codex:118900] /bin/bash -lc "sed -n '200,400p' AUDIT_BUNDLE.txt" in /tmp/codex-multi-at3bub2j succeeded in 6ms:
[codex:118900] ///////////////////
[codex:118900] // ERC20 Methods
[codex:118900] ///////////////////
[codex:118900]
[codex:118900] /// @notice Send `_amount` tokens to `_to` from `msg.sender`
[codex:118900] /// @param _to The address of the recipient
[codex:118900] /// @param _amount The amount of tokens to be transferred
[codex:118900] /// @return Whether the transfer was successful or not
[codex:118900] function transfer(address _to, uint256 _amount) returns (bool success) {
[codex:118900] if (!transfersEnabled) throw;
[codex:118900] return doTransfer(msg.sender, _to, _amount);
[codex:118900] }
[codex:118900]
[codex:118900] /// @notice Send `_amount` tokens to `_to` from `_from` on the condition it
[codex:118900] /// is approved by `_from`
[codex:118900] /// @param _from The address holding the tokens being transferred
[codex:118900] /// @param _to The address of the recipient
[codex:118900] /// @param _amount The amount of tokens to be transferred
[codex:118900] /// @return True if the transfer was successful
[codex:118900] function transferFrom(address _from, address _to, uint256 _amount
[codex:118900] exec
[codex:118900] /bin/bash -lc "sed -n '400,800p' AUDIT_BUNDLE.txt" in /tmp/codex-multi-at3bub2j succeeded in 6ms:
[codex:118900] }
[codex:118900]
[codex:118900] // This will return the expected totalSupply during normal situations
[codex:118900] } else {
[codex:118900] return getValueAt(totalSupplyHistory, _blockNumber);
[codex:118900] }
[codex:118900] }
[codex:118900]
[codex:118900] ////////////////
[codex:118900] // Clone Token Method
[codex:118900] ////////////////
[codex:118900]
[codex:118900] /// @notice Creates a new clone token with the initial distribution being
[codex:118900] /// this token at `_snapshotBlock`
[codex:118900] /// @param _cloneTokenName Name of the clone token
[codex:118900] /// @param _cloneDecimalUnits Number of decimals of the smallest unit
[codex:118900] /// @param _cloneTokenSymbol Symbol of the clone token
[codex:118900] /// @param _snapshotBlock Block when the distribution of the parent token is
[codex:118900] /// copied to set the initial distribution of the new clone token;
[codex:118900] /// if the block is zero than the actual block, the current block is used
[codex:118900]
[codex:118900] thinking
[codex:118900] **Verifying AUDIT_BUNDLE completion**
[codex:118900] exec
[codex:118900] /bin/bash -lc "sed -n '800,1000p' AUDIT_BUNDLE.txt" in /tmp/codex-multi-at3bub2j succeeded in 6ms:
[codex:118900]
[codex:118900]
[codex:118900]
[codex:118900]
[codex:118900] thinking
[codex:118900] **Analyzing potential vulnerabilities in ProfitSharing and MiniMeToken**
[codex:118900] thinking
[codex:118900] **Examining reentrancy risks via token callbacks**
[codex:118900]
[codex:118900] This chunk digs into subtle reentrancy possibilities caused by external calls to MiniMeToken’s balance checks during claimDividend, especially if the token has a parent token that’s malicious or attacker-controlled. I’m considering how calls to balanceOfAt or totalSupplyAt before updating claimed flags could let an attacker reenter and claim multiple times, potentially extracting extra profit if the token or its parent hooks back into ProfitSharing. It’s tricky since this requires attacker control of token or parent token contracts, but I want to be thorough in following these call paths and their implications.
[codex:118900] thinking
[codex:118900] **Evaluating token parent relationships and claim logic**
[codex:118900]
[codex:118900] This part explores how ProfitSharing’s use of MiniMeToken and its parent tokens might enable reentrancy if a malicious parent token exists, though such scenarios seem unlikely without attacker control over deployed tokens. I’m reviewing storage and mapping access to confirm claim flags update correctly and considering token controller privileges and SafeMath use, concluding no straightforward profit exploits emerge here.
[codex:118900] exec
[codex:118900] /bin/bash -lc 'cat codex-output-schema.json' in /tmp/codex-multi-at3bub2j succeeded in 5ms:
[codex:118900] {"type": "object", "additionalProperties": false, "required": ["no_findings", "summary", "findings"], "properties": {"no_findings": {"type": "boolean"}, "summary": {"type": "string"}, "findings": {"type": "array", "items": {"type": "object", "additionalProperties": false, "required": ["severity", "category", "title", "evidence", "locations", "exploit_scenario", "recommendation"], "properties": {"severity": {"type": "string", "enum": ["info", "low", "medium", "high", "critical"]}, "category": {"type": "string", "enum": ["access_control", "reentrancy", "math", "oracle", "upgradeability", "auth", "other"]}, "title": {"type": "string"}, "exploit_scenario": {"type": "string"}, "recommendation": {"type": "string"}, "evidence": {"type": "string"}, "locations": {"type": "array", "items": {"type": "string"}}}}}}}
[codex:118900]
[codex:118900] thinking
[codex:118900] **Preparing final JSON report**
[codex:118900] codex
[codex:118900] {"no_findings":true,"summary":"No concrete, exploitable profit path found in AUDIT_BUNDLE.txt.","findings":[]}
[codex:118900] tokens used
[codex:118900] 27,516
[codex:118900] {"no_findings":true,"summary":"No concrete, exploitable profit path found in AUDIT_BUNDLE.txt.","findings":[]}
{
"codex": {
"ran_at": "2026-01-03T02:35:08.050015+00:00",
"returncode": 0
},
"summary": "No concrete, exploitable profit path found in AUDIT_BUNDLE.txt.",
"raw_final": {
"summary": "No concrete, exploitable profit path found in AUDIT_BUNDLE.txt.",
"findings": [],
"no_findings": true
},
"no_findings": true,
"schema_version": 1
}
00000000: PUSH1 0x60 00000002: PUSH1 0x40 00000004: MSTORE 00000005: CALLDATASIZE 00000006: ISZERO 00000007: PUSH2 0x007d 0000000a: JUMPI 0000000b: PUSH4 0xffffffff 00000010: PUSH1 0xe0 00000012: PUSH1 0x02 00000014: EXP 00000015: PUSH1 0x00 00000017: CALLDATALOAD 00000018: DIV 00000019: AND 0000001a: PUSH4 0x22c9427e 0000001f: DUP2 00000020: EQ 00000021: PUSH2 0x007f 00000024: JUMPI 00000025: DUP1 00000026: PUSH4 0x30e1f16f 0000002b: EQ 0000002c: PUSH2 0x0094 0000002f: JUMPI 00000030: DUP1 00000031: PUSH4 0x6423b5f0 00000036: EQ 00000037: PUSH2 0x00a6 0000003a: JUMPI 0000003b: DUP1 0000003c: PUSH4 0x7c1a35d7 00000041: EQ 00000042: PUSH2 0x00d2 00000045: JUMPI 00000046: DUP1 00000047: PUSH4 0x814b3fe0 0000004c: EQ 0000004d: PUSH2 0x00f4 00000050: JUMPI 00000051: DUP1 00000052: PUSH4 0x8da5cb5b 00000057: EQ 00000058: PUSH2 0x013c 0000005b: JUMPI 0000005c: DUP1 0000005d: PUSH4 0x9abd3572 00000062: EQ 00000063: PUSH2 0x0168 00000066: JUMPI 00000067: DUP1 00000068: PUSH4 0xa289d187 0000006d: EQ 0000006e: PUSH2 0x017d 00000071: JUMPI 00000072: DUP1 00000073: PUSH4 0xf2fde38b 00000078: EQ 00000079: PUSH2 0x0187 0000007c: JUMPI 0000007d: JUMPDEST 0000007e: INVALID 0000007f: JUMPDEST 00000080: CALLVALUE 00000081: ISZERO 00000082: PUSH2 0x0087 00000085: JUMPI 00000086: INVALID 00000087: JUMPDEST 00000088: PUSH2 0x0092 0000008b: PUSH1 0x04 0000008d: CALLDATALOAD 0000008e: PUSH2 0x01a5 00000091: JUMP 00000092: JUMPDEST 00000093: STOP 00000094: JUMPDEST 00000095: CALLVALUE 00000096: ISZERO 00000097: PUSH2 0x009c 0000009a: JUMPI 0000009b: INVALID 0000009c: JUMPDEST 0000009d: PUSH2 0x0092 000000a0: PUSH2 0x0401 000000a3: JUMP 000000a4: JUMPDEST 000000a5: STOP 000000a6: JUMPDEST 000000a7: CALLVALUE 000000a8: ISZERO 000000a9: PUSH2 0x00ae 000000ac: JUMPI 000000ad: INVALID 000000ae: JUMPDEST 000000af: PUSH2 0x00b6 000000b2: PUSH2 0x0501 000000b5: JUMP 000000b6: JUMPDEST 000000b7: PUSH1 0x40 000000b9: DUP1 000000ba: MLOAD 000000bb: PUSH1 0x01 000000bd: PUSH1 0xa0 000000bf: PUSH1 0x02 000000c1: EXP 000000c2: SUB 000000c3: SWAP1 000000c4: SWAP3 000000c5: AND 000000c6: DUP3 000000c7: MSTORE 000000c8: MLOAD 000000c9: SWAP1 000000ca: DUP2 000000cb: SWAP1 000000cc: SUB 000000cd: PUSH1 0x20 000000cf: ADD 000000d0: SWAP1 000000d1: RETURN 000000d2: JUMPDEST 000000d3: CALLVALUE 000000d4: ISZERO 000000d5: PUSH2 0x00da 000000d8: JUMPI 000000d9: INVALID 000000da: JUMPDEST 000000db: PUSH2 0x00e2 000000de: PUSH2 0x0510 000000e1: JUMP 000000e2: JUMPDEST 000000e3: PUSH1 0x40 000000e5: DUP1 000000e6: MLOAD 000000e7: SWAP2 000000e8: DUP3 000000e9: MSTORE 000000ea: MLOAD 000000eb: SWAP1 000000ec: DUP2 000000ed: SWAP1 000000ee: SUB 000000ef: PUSH1 0x20 000000f1: ADD 000000f2: SWAP1 000000f3: RETURN 000000f4: JUMPDEST 000000f5: CALLVALUE 000000f6: ISZERO 000000f7: PUSH2 0x00fc 000000fa: JUMPI 000000fb: INVALID 000000fc: JUMPDEST 000000fd: PUSH2 0x0107 00000100: PUSH1 0x04 00000102: CALLDATALOAD 00000103: PUSH2 0x0516 00000106: JUMP 00000107: JUMPDEST 00000108: PUSH1 0x40 0000010a: DUP1 0000010b: MLOAD 0000010c: SWAP7 0000010d: DUP8 0000010e: MSTORE 0000010f: PUSH1 0x20 00000111: DUP8 00000112: ADD 00000113: SWAP6 00000114: SWAP1 00000115: SWAP6 00000116: MSTORE 00000117: DUP6 00000118: DUP6 00000119: ADD 0000011a: SWAP4 0000011b: SWAP1 0000011c: SWAP4 0000011d: MSTORE 0000011e: PUSH1 0x60 00000120: DUP6 00000121: ADD 00000122: SWAP2 00000123: SWAP1 00000124: SWAP2 00000125: MSTORE 00000126: PUSH1 0x80 00000128: DUP5 00000129: ADD 0000012a: MSTORE 0000012b: ISZERO 0000012c: ISZERO 0000012d: PUSH1 0xa0 0000012f: DUP4 00000130: ADD 00000131: MSTORE 00000132: MLOAD 00000133: SWAP1 00000134: DUP2 00000135: SWAP1 00000136: SUB 00000137: PUSH1 0xc0 00000139: ADD 0000013a: SWAP1 0000013b: RETURN 0000013c: JUMPDEST 0000013d: CALLVALUE 0000013e: ISZERO 0000013f: PUSH2 0x0144 00000142: JUMPI 00000143: INVALID 00000144: JUMPDEST 00000145: PUSH2 0x00b6 00000148: PUSH2 0x055f 0000014b: JUMP 0000014c: JUMPDEST 0000014d: PUSH1 0x40 0000014f: DUP1 00000150: MLOAD 00000151: PUSH1 0x01 00000153: PUSH1 0xa0 00000155: PUSH1 0x02 00000157: EXP 00000158: SUB 00000159: SWAP1 0000015a: SWAP3 0000015b: AND 0000015c: DUP3 0000015d: MSTORE 0000015e: MLOAD 0000015f: SWAP1 00000160: DUP2 00000161: SWAP1 00000162: SUB 00000163: PUSH1 0x20 00000165: ADD 00000166: SWAP1 00000167: RETURN 00000168: JUMPDEST 00000169: CALLVALUE 0000016a: ISZERO 0000016b: PUSH2 0x0170 0000016e: JUMPI 0000016f: INVALID 00000170: JUMPDEST 00000171: PUSH2 0x0092 00000174: PUSH1 0x04 00000176: CALLDATALOAD 00000177: PUSH2 0x056e 0000017a: JUMP 0000017b: JUMPDEST 0000017c: STOP 0000017d: JUMPDEST 0000017e: PUSH2 0x0092 00000181: PUSH2 0x074a 00000184: JUMP 00000185: JUMPDEST 00000186: STOP 00000187: JUMPDEST 00000188: CALLVALUE 00000189: ISZERO 0000018a: PUSH2 0x018f 0000018d: JUMPI 0000018e: INVALID 0000018f: JUMPDEST 00000190: PUSH2 0x0092 00000193: PUSH1 0x01 00000195: PUSH1 0xa0 00000197: PUSH1 0x02 00000199: EXP 0000019a: SUB 0000019b: PUSH1 0x04 0000019d: CALLDATALOAD 0000019e: AND 0000019f: PUSH2 0x08ea 000001a2: JUMP 000001a3: JUMPDEST 000001a4: STOP 000001a5: JUMPDEST 000001a6: PUSH1 0x00 000001a8: DUP1 000001a9: SLOAD 000001aa: DUP2 000001ab: SWAP1 000001ac: DUP2 000001ad: SWAP1 000001ae: DUP2 000001af: SWAP1 000001b0: DUP2 000001b1: SWAP1 000001b2: CALLER 000001b3: PUSH1 0x01 000001b5: PUSH1 0xa0 000001b7: PUSH1 0x02 000001b9: EXP 000001ba: SUB 000001bb: SWAP1 000001bc: DUP2 000001bd: AND 000001be: SWAP2 000001bf: AND 000001c0: EQ 000001c1: PUSH2 0x01ca 000001c4: JUMPI 000001c5: PUSH1 0x00 000001c7: PUSH1 0x00 000001c9: REVERT 000001ca: JUMPDEST 000001cb: PUSH1 0x03 000001cd: SLOAD 000001ce: DUP7 000001cf: SWAP1 000001d0: DUP2 000001d1: LT 000001d2: PUSH2 0x01db 000001d5: JUMPI 000001d6: PUSH1 0x00 000001d8: PUSH1 0x00 000001da: REVERT 000001db: JUMPDEST 000001dc: PUSH1 0x03 000001de: DUP1 000001df: SLOAD 000001e0: DUP9 000001e1: SWAP1 000001e2: DUP2 000001e3: LT 000001e4: PUSH2 0x01e9 000001e7: JUMPI 000001e8: INVALID 000001e9: JUMPDEST 000001ea: SWAP1 000001eb: PUSH1 0x00 000001ed: MSTORE 000001ee: PUSH1 0x20 000001f0: PUSH1 0x00 000001f2: KECCAK256 000001f3: SWAP1 000001f4: PUSH1 0x07 000001f6: MUL 000001f7: ADD 000001f8: PUSH1 0x00 000001fa: JUMPDEST 000001fb: POP 000001fc: PUSH1 0x05 000001fe: DUP2 000001ff: ADD 00000200: SLOAD 00000201: SWAP1 00000202: SWAP7 00000203: POP 00000204: PUSH1 0xff 00000206: AND 00000207: ISZERO 00000208: PUSH2 0x0211 0000020b: JUMPI 0000020c: PUSH1 0x00 0000020e: PUSH1 0x00 00000210: REVERT 00000211: JUMPDEST 00000212: PUSH2 0x0224 00000215: PUSH2 0x021c 00000218: PUSH2 0x0936 0000021b: JUMP 0000021c: JUMPDEST 0000021d: PUSH1 0x02 0000021f: SLOAD 00000220: PUSH2 0x093b 00000223: JUMP 00000224: JUMPDEST 00000225: PUSH1 0x01 00000227: DUP8 00000228: ADD 00000229: SLOAD 0000022a: LT 0000022b: PUSH2 0x0234 0000022e: JUMPI 0000022f: PUSH1 0x00 00000231: PUSH1 0x00 00000233: REVERT 00000234: JUMPDEST 00000235: PUSH1 0x01 00000237: PUSH1 0x03 00000239: DUP9 0000023a: DUP2 0000023b: SLOAD 0000023c: DUP2 0000023d: LT 0000023e: ISZERO 0000023f: ISZERO 00000240: PUSH2 0x0245 00000243: JUMPI 00000244: INVALID 00000245: JUMPDEST 00000246: SWAP1 00000247: PUSH1 0x00 00000249: MSTORE 0000024a: PUSH1 0x20 0000024c: PUSH1 0x00 0000024e: KECCAK256 0000024f: SWAP1 00000250: PUSH1 0x07 00000252: MUL 00000253: ADD 00000254: PUSH1 0x00 00000256: JUMPDEST 00000257: POP 00000258: PUSH1 0x05 0000025a: ADD 0000025b: DUP1 0000025c: SLOAD 0000025d: PUSH1 0xff 0000025f: NOT 00000260: AND 00000261: SWAP2 00000262: ISZERO 00000263: ISZERO 00000264: SWAP2 00000265: SWAP1 00000266: SWAP2 00000267: OR 00000268: SWAP1 00000269: SSTORE 0000026a: PUSH1 0x01 0000026c: SLOAD 0000026d: PUSH1 0x40 0000026f: DUP1 00000270: MLOAD 00000271: PUSH1 0x00 00000273: PUSH1 0x20 00000275: SWAP2 00000276: DUP3 00000277: ADD 00000278: DUP2 00000279: SWAP1 0000027a: MSTORE 0000027b: DUP3 0000027c: MLOAD 0000027d: PUSH1 0xe4 0000027f: PUSH1 0x02 00000281: EXP 00000282: PUSH4 0x0981b24d 00000287: MUL 00000288: DUP2 00000289: MSTORE 0000028a: NUMBER 0000028b: PUSH1 0x04 0000028d: DUP3 0000028e: ADD 0000028f: MSTORE 00000290: SWAP3 00000291: MLOAD 00000292: PUSH1 0x01 00000294: PUSH1 0xa0 00000296: PUSH1 0x02 00000298: EXP 00000299: SUB 0000029a: SWAP1 0000029b: SWAP5 0000029c: AND 0000029d: SWAP4 0000029e: PUSH4 0x981b24d0 000002a3: SWAP4 000002a4: PUSH1 0x24 000002a6: DUP1 000002a7: DUP3 000002a8: ADD 000002a9: SWAP5 000002aa: SWAP4 000002ab: SWAP2 000002ac: DUP4 000002ad: SWAP1 000002ae: SUB 000002af: ADD 000002b0: SWAP1 000002b1: DUP3 000002b2: SWAP1 000002b3: DUP8 000002b4: DUP1 000002b5: EXTCODESIZE 000002b6: ISZERO 000002b7: ISZERO 000002b8: PUSH2 0x02bd 000002bb: JUMPI 000002bc: INVALID 000002bd: JUMPDEST 000002be: PUSH2 0x02c6 000002c1: GAS 000002c2: SUB 000002c3: CALL 000002c4: ISZERO 000002c5: ISZERO 000002c6: PUSH2 0x02cb 000002c9: JUMPI 000002ca: INVALID 000002cb: JUMPDEST 000002cc: POP 000002cd: POP 000002ce: POP 000002cf: PUSH1 0x40 000002d1: MLOAD 000002d2: DUP1 000002d3: MLOAD 000002d4: SWAP1 000002d5: POP 000002d6: SWAP5 000002d7: POP 000002d8: PUSH2 0x02e9 000002db: DUP7 000002dc: PUSH1 0x02 000002de: ADD 000002df: SLOAD 000002e0: DUP8 000002e1: PUSH1 0x03 000002e3: ADD 000002e4: SLOAD 000002e5: PUSH2 0x093b 000002e8: JUMP 000002e9: JUMPDEST 000002ea: PUSH1 0x03 000002ec: SLOAD 000002ed: SWAP1 000002ee: SWAP5 000002ef: POP 000002f0: SWAP3 000002f1: POP 000002f2: PUSH2 0x02fc 000002f5: NUMBER 000002f6: PUSH1 0x01 000002f8: PUSH2 0x093b 000002fb: JUMP 000002fc: JUMPDEST 000002fd: SWAP2 000002fe: POP 000002ff: PUSH1 0x03 00000301: DUP1 00000302: SLOAD 00000303: DUP1 00000304: PUSH1 0x01 00000306: ADD 00000307: DUP3 00000308: DUP2 00000309: PUSH2 0x0312 0000030c: SWAP2 0000030d: SWAP1 0000030e: PUSH2 0x09b8 00000311: JUMP 00000312: JUMPDEST 00000313: SWAP2 00000314: PUSH1 0x00 00000316: MSTORE 00000317: PUSH1 0x20 00000319: PUSH1 0x00 0000031b: KECCAK256 0000031c: SWAP1 0000031d: PUSH1 0x07 0000031f: MUL 00000320: ADD 00000321: PUSH1 0x00 00000323: JUMPDEST 00000324: PUSH1 0xc0 00000326: PUSH1 0x40 00000328: MLOAD 00000329: SWAP1 0000032a: DUP2 0000032b: ADD 0000032c: PUSH1 0x40 0000032e: MSTORE 0000032f: DUP1 00000330: DUP7 00000331: DUP2 00000332: MSTORE 00000333: PUSH1 0x20 00000335: ADD 00000336: PUSH2 0x033d 00000339: PUSH2 0x0936 0000033c: JUMP 0000033d: JUMPDEST 0000033e: DUP2 0000033f: MSTORE 00000340: PUSH1 0x20 00000342: DUP1 00000343: DUP3 00000344: ADD 00000345: DUP11 00000346: SWAP1 00000347: MSTORE 00000348: PUSH1 0x00 0000034a: PUSH1 0x40 0000034c: DUP1 0000034d: DUP5 0000034e: ADD 0000034f: DUP3 00000350: SWAP1 00000351: MSTORE 00000352: PUSH1 0x60 00000354: DUP1 00000355: DUP6 00000356: ADD 00000357: DUP15 00000358: SWAP1 00000359: MSTORE 0000035a: PUSH1 0x80 0000035c: SWAP5 0000035d: DUP6 0000035e: ADD 0000035f: SWAP3 00000360: SWAP1 00000361: SWAP3 00000362: MSTORE 00000363: DUP5 00000364: MLOAD 00000365: DUP8 00000366: SSTORE 00000367: DUP5 00000368: DUP4 00000369: ADD 0000036a: MLOAD 0000036b: PUSH1 0x01 0000036d: DUP9 0000036e: ADD 0000036f: SSTORE 00000370: DUP5 00000371: DUP2 00000372: ADD 00000373: MLOAD 00000374: PUSH1 0x02 00000376: DUP9 00000377: ADD 00000378: SSTORE 00000379: DUP5 0000037a: DUP3 0000037b: ADD 0000037c: MLOAD 0000037d: PUSH1 0x03 0000037f: DUP9 00000380: ADD 00000381: SSTORE 00000382: DUP5 00000383: DUP5 00000384: ADD 00000385: MLOAD 00000386: PUSH1 0x04 00000388: DUP9 00000389: ADD 0000038a: SSTORE 0000038b: PUSH1 0xa0 0000038d: SWAP1 0000038e: SWAP5 0000038f: ADD 00000390: MLOAD 00000391: PUSH1 0x05 00000393: SWAP1 00000394: SWAP7 00000395: ADD 00000396: DUP1 00000397: SLOAD 00000398: PUSH1 0xff 0000039a: NOT 0000039b: AND 0000039c: SWAP7 0000039d: ISZERO 0000039e: ISZERO 0000039f: SWAP7 000003a0: SWAP1 000003a1: SWAP7 000003a2: OR 000003a3: SWAP1 000003a4: SWAP6 000003a5: SSTORE 000003a6: DUP3 000003a7: MLOAD 000003a8: DUP9 000003a9: DUP2 000003aa: MSTORE 000003ab: SWAP1 000003ac: DUP2 000003ad: ADD 000003ae: DUP11 000003af: SWAP1 000003b0: MSTORE 000003b1: DUP1 000003b2: DUP4 000003b3: ADD 000003b4: DUP12 000003b5: SWAP1 000003b6: MSTORE 000003b7: SWAP4 000003b8: DUP5 000003b9: ADD 000003ba: DUP9 000003bb: SWAP1 000003bc: MSTORE 000003bd: SWAP1 000003be: MLOAD 000003bf: CALLER 000003c0: PUSH1 0x01 000003c2: PUSH1 0xa0 000003c4: PUSH1 0x02 000003c6: EXP 000003c7: SUB 000003c8: AND 000003c9: SWAP5 000003ca: POP 000003cb: PUSH32 0x820e5e0bd7a055839c0210e84ddba311de47df61f9c489947f436bcf0f302ff1 000003ec: SWAP4 000003ed: DUP2 000003ee: SWAP1 000003ef: SUB 000003f0: SWAP1 000003f1: SWAP2 000003f2: ADD 000003f3: SWAP2 000003f4: POP 000003f5: LOG2 000003f6: JUMPDEST 000003f7: JUMPDEST 000003f8: POP 000003f9: JUMPDEST 000003fa: POP 000003fb: POP 000003fc: POP 000003fd: POP 000003fe: POP 000003ff: POP 00000400: JUMP 00000401: JUMPDEST 00000402: PUSH1 0x03 00000404: SLOAD 00000405: PUSH1 0x01 00000407: PUSH1 0xa0 00000409: PUSH1 0x02 0000040b: EXP 0000040c: SUB 0000040d: CALLER 0000040e: AND 0000040f: PUSH1 0x00 00000411: SWAP1 00000412: DUP2 00000413: MSTORE 00000414: PUSH1 0x04 00000416: PUSH1 0x20 00000418: MSTORE 00000419: PUSH1 0x40 0000041b: DUP2 0000041c: KECCAK256 0000041d: SLOAD 0000041e: SWAP1 0000041f: SWAP2 00000420: SWAP1 00000421: LT 00000422: PUSH2 0x042b 00000425: JUMPI 00000426: PUSH1 0x00 00000428: PUSH1 0x00 0000042a: REVERT 0000042b: JUMPDEST 0000042c: POP 0000042d: PUSH1 0x01 0000042f: PUSH1 0xa0 00000431: PUSH1 0x02 00000433: EXP 00000434: SUB 00000435: CALLER 00000436: AND 00000437: PUSH1 0x00 00000439: SWAP1 0000043a: DUP2 0000043b: MSTORE 0000043c: PUSH1 0x04 0000043e: PUSH1 0x20 00000440: MSTORE 00000441: PUSH1 0x40 00000443: SWAP1 00000444: KECCAK256 00000445: SLOAD 00000446: JUMPDEST 00000447: PUSH1 0x03 00000449: SLOAD 0000044a: DUP2 0000044b: LT 0000044c: ISZERO 0000044d: PUSH2 0x04fd 00000450: JUMPI 00000451: PUSH1 0x03 00000453: DUP1 00000454: SLOAD 00000455: DUP3 00000456: SWAP1 00000457: DUP2 00000458: LT 00000459: PUSH2 0x045e 0000045c: JUMPI 0000045d: INVALID 0000045e: JUMPDEST 0000045f: SWAP1 00000460: PUSH1 0x00 00000462: MSTORE 00000463: PUSH1 0x20 00000465: PUSH1 0x00 00000467: KECCAK256 00000468: SWAP1 00000469: PUSH1 0x07 0000046b: MUL 0000046c: ADD 0000046d: PUSH1 0x00 0000046f: JUMPDEST 00000470: POP 00000471: PUSH1 0x01 00000473: PUSH1 0xa0 00000475: PUSH1 0x02 00000477: EXP 00000478: SUB 00000479: CALLER 0000047a: AND 0000047b: PUSH1 0x00 0000047d: SWAP1 0000047e: DUP2 0000047f: MSTORE 00000480: PUSH1 0x06 00000482: SWAP2 00000483: SWAP1 00000484: SWAP2 00000485: ADD 00000486: PUSH1 0x20 00000488: MSTORE 00000489: PUSH1 0x40 0000048b: SWAP1 0000048c: KECCAK256 0000048d: SLOAD 0000048e: PUSH1 0xff 00000490: AND 00000491: ISZERO 00000492: DUP1 00000493: ISZERO 00000494: PUSH2 0x04c1 00000497: JUMPI 00000498: POP 00000499: PUSH1 0x03 0000049b: DUP1 0000049c: SLOAD 0000049d: DUP3 0000049e: SWAP1 0000049f: DUP2 000004a0: LT 000004a1: PUSH2 0x04a6 000004a4: JUMPI 000004a5: INVALID 000004a6: JUMPDEST 000004a7: SWAP1 000004a8: PUSH1 0x00 000004aa: MSTORE 000004ab: PUSH1 0x20 000004ad: PUSH1 0x00 000004af: KECCAK256 000004b0: SWAP1 000004b1: PUSH1 0x07 000004b3: MUL 000004b4: ADD 000004b5: PUSH1 0x00 000004b7: JUMPDEST 000004b8: POP 000004b9: PUSH1 0x05 000004bb: ADD 000004bc: SLOAD 000004bd: PUSH1 0xff 000004bf: AND 000004c0: ISZERO 000004c1: JUMPDEST 000004c2: ISZERO 000004c3: PUSH2 0x04f3 000004c6: JUMPI 000004c7: PUSH2 0x04d1 000004ca: DUP2 000004cb: PUSH1 0x01 000004cd: PUSH2 0x0952 000004d0: JUMP 000004d1: JUMPDEST 000004d2: PUSH1 0x01 000004d4: PUSH1 0xa0 000004d6: PUSH1 0x02 000004d8: EXP 000004d9: SUB 000004da: CALLER 000004db: AND 000004dc: PUSH1 0x00 000004de: SWAP1 000004df: DUP2 000004e0: MSTORE 000004e1: PUSH1 0x04 000004e3: PUSH1 0x20 000004e5: MSTORE 000004e6: PUSH1 0x40 000004e8: SWAP1 000004e9: KECCAK256 000004ea: SSTORE 000004eb: PUSH2 0x04f3 000004ee: DUP2 000004ef: PUSH2 0x056e 000004f2: JUMP 000004f3: JUMPDEST 000004f4: JUMPDEST 000004f5: JUMPDEST 000004f6: PUSH1 0x01 000004f8: ADD 000004f9: PUSH2 0x0446 000004fc: JUMP 000004fd: JUMPDEST 000004fe: JUMPDEST 000004ff: POP 00000500: JUMP 00000501: JUMPDEST 00000502: PUSH1 0x01 00000504: SLOAD 00000505: PUSH1 0x01 00000507: PUSH1 0xa0 00000509: PUSH1 0x02 0000050b: EXP 0000050c: SUB 0000050d: AND 0000050e: DUP2 0000050f: JUMP 00000510: JUMPDEST 00000511: PUSH1 0x02 00000513: SLOAD 00000514: DUP2 00000515: JUMP 00000516: JUMPDEST 00000517: PUSH1 0x03 00000519: DUP1 0000051a: SLOAD 0000051b: DUP3 0000051c: SWAP1 0000051d: DUP2 0000051e: LT 0000051f: PUSH2 0x0524 00000522: JUMPI 00000523: INVALID 00000524: JUMPDEST 00000525: SWAP1 00000526: PUSH1 0x00 00000528: MSTORE 00000529: PUSH1 0x20 0000052b: PUSH1 0x00 0000052d: KECCAK256 0000052e: SWAP1 0000052f: PUSH1 0x07 00000531: MUL 00000532: ADD 00000533: PUSH1 0x00 00000535: JUMPDEST 00000536: POP 00000537: DUP1 00000538: SLOAD 00000539: PUSH1 0x01 0000053b: DUP3 0000053c: ADD 0000053d: SLOAD 0000053e: PUSH1 0x02 00000540: DUP4 00000541: ADD 00000542: SLOAD 00000543: PUSH1 0x03 00000545: DUP5 00000546: ADD 00000547: SLOAD 00000548: PUSH1 0x04 0000054a: DUP6 0000054b: ADD 0000054c: SLOAD 0000054d: PUSH1 0x05 0000054f: SWAP1 00000550: SWAP6 00000551: ADD 00000552: SLOAD 00000553: SWAP4 00000554: SWAP6 00000555: POP 00000556: SWAP2 00000557: SWAP4 00000558: SWAP1 00000559: SWAP3 0000055a: PUSH1 0xff 0000055c: AND 0000055d: DUP7 0000055e: JUMP 0000055f: JUMPDEST 00000560: PUSH1 0x00 00000562: SLOAD 00000563: PUSH1 0x01 00000565: PUSH1 0xa0 00000567: PUSH1 0x02 00000569: EXP 0000056a: SUB 0000056b: AND 0000056c: DUP2 0000056d: JUMP 0000056e: JUMPDEST 0000056f: PUSH1 0x03 00000571: SLOAD 00000572: PUSH1 0x00 00000574: SWAP1 00000575: DUP2 00000576: SWAP1 00000577: DUP2 00000578: SWAP1 00000579: DUP5 0000057a: SWAP1 0000057b: DUP2 0000057c: LT 0000057d: PUSH2 0x0586 00000580: JUMPI 00000581: PUSH1 0x00 00000583: PUSH1 0x00 00000585: REVERT 00000586: JUMPDEST 00000587: PUSH1 0x03 00000589: DUP1 0000058a: SLOAD 0000058b: DUP7 0000058c: SWAP1 0000058d: DUP2 0000058e: LT 0000058f: PUSH2 0x0594 00000592: JUMPI 00000593: INVALID 00000594: JUMPDEST 00000595: SWAP1 00000596: PUSH1 0x00 00000598: MSTORE 00000599: PUSH1 0x20 0000059b: PUSH1 0x00 0000059d: KECCAK256 0000059e: SWAP1 0000059f: PUSH1 0x07 000005a1: MUL 000005a2: ADD 000005a3: PUSH1 0x00 000005a5: JUMPDEST 000005a6: POP 000005a7: PUSH1 0x01 000005a9: PUSH1 0xa0 000005ab: PUSH1 0x02 000005ad: EXP 000005ae: SUB 000005af: CALLER 000005b0: AND 000005b1: PUSH1 0x00 000005b3: SWAP1 000005b4: DUP2 000005b5: MSTORE 000005b6: PUSH1 0x06 000005b8: DUP3 000005b9: ADD 000005ba: PUSH1 0x20 000005bc: MSTORE 000005bd: PUSH1 0x40 000005bf: SWAP1 000005c0: KECCAK256 000005c1: SLOAD 000005c2: SWAP1 000005c3: SWAP5 000005c4: POP 000005c5: PUSH1 0xff 000005c7: AND 000005c8: ISZERO 000005c9: PUSH2 0x05d2 000005cc: JUMPI 000005cd: PUSH1 0x00 000005cf: PUSH1 0x00 000005d1: REVERT 000005d2: JUMPDEST 000005d3: PUSH1 0x05 000005d5: DUP5 000005d6: ADD 000005d7: SLOAD 000005d8: PUSH1 0xff 000005da: AND 000005db: ISZERO 000005dc: PUSH2 0x05e5 000005df: JUMPI 000005e0: PUSH1 0x00 000005e2: PUSH1 0x00 000005e4: REVERT 000005e5: JUMPDEST 000005e6: PUSH1 0x01 000005e8: SLOAD 000005e9: DUP5 000005ea: SLOAD 000005eb: PUSH1 0x40 000005ed: DUP1 000005ee: MLOAD 000005ef: PUSH1 0x00 000005f1: PUSH1 0x20 000005f3: SWAP2 000005f4: DUP3 000005f5: ADD 000005f6: DUP2 000005f7: SWAP1 000005f8: MSTORE 000005f9: DUP3 000005fa: MLOAD 000005fb: PUSH1 0xe1 000005fd: PUSH1 0x02 000005ff: EXP 00000600: PUSH4 0x277166bf 00000605: MUL 00000606: DUP2 00000607: MSTORE 00000608: PUSH1 0x01 0000060a: PUSH1 0xa0 0000060c: PUSH1 0x02 0000060e: EXP 0000060f: SUB 00000610: CALLER 00000611: DUP2 00000612: AND 00000613: PUSH1 0x04 00000615: DUP4 00000616: ADD 00000617: MSTORE 00000618: PUSH1 0x24 0000061a: DUP3 0000061b: ADD 0000061c: SWAP6 0000061d: SWAP1 0000061e: SWAP6 0000061f: MSTORE 00000620: SWAP3 00000621: MLOAD 00000622: SWAP4 00000623: SWAP1 00000624: SWAP5 00000625: AND 00000626: SWAP4 00000627: PUSH4 0x4ee2cd7e 0000062c: SWAP4 0000062d: PUSH1 0x44 0000062f: DUP1 00000630: DUP6 00000631: ADD 00000632: SWAP5 00000633: SWAP2 00000634: SWAP3 00000635: SWAP2 00000636: DUP4 00000637: SWAP1 00000638: SUB 00000639: ADD 0000063a: SWAP1 0000063b: DUP3 0000063c: SWAP1 0000063d: DUP8 0000063e: DUP1 0000063f: EXTCODESIZE 00000640: ISZERO 00000641: ISZERO 00000642: PUSH2 0x0647 00000645: JUMPI 00000646: INVALID 00000647: JUMPDEST 00000648: PUSH2 0x02c6 0000064b: GAS 0000064c: SUB 0000064d: CALL 0000064e: ISZERO 0000064f: ISZERO 00000650: PUSH2 0x0655 00000653: JUMPI 00000654: INVALID 00000655: JUMPDEST 00000656: POP 00000657: POP 00000658: PUSH1 0x40 0000065a: MLOAD 0000065b: MLOAD 0000065c: PUSH1 0x04 0000065e: DUP7 0000065f: ADD 00000660: SLOAD 00000661: PUSH1 0x02 00000663: DUP8 00000664: ADD 00000665: SLOAD 00000666: SWAP2 00000667: SWAP6 00000668: POP 00000669: PUSH2 0x068b 0000066c: SWAP3 0000066d: POP 0000066e: SWAP1 0000066f: PUSH2 0x067f 00000672: SWAP1 00000673: DUP7 00000674: SWAP1 00000675: PUSH4 0xffffffff 0000067a: PUSH2 0x096c 0000067d: AND 0000067e: JUMP 0000067f: JUMPDEST 00000680: SWAP1 00000681: PUSH4 0xffffffff 00000686: PUSH2 0x099b 00000689: AND 0000068a: JUMP 0000068b: JUMPDEST 0000068c: PUSH1 0x01 0000068e: PUSH1 0xa0 00000690: PUSH1 0x02 00000692: EXP 00000693: SUB 00000694: CALLER 00000695: AND 00000696: PUSH1 0x00 00000698: SWAP1 00000699: DUP2 0000069a: MSTORE 0000069b: PUSH1 0x06 0000069d: DUP7 0000069e: ADD 0000069f: PUSH1 0x20 000006a1: MSTORE 000006a2: PUSH1 0x40 000006a4: SWAP1 000006a5: KECCAK256 000006a6: DUP1 000006a7: SLOAD 000006a8: PUSH1 0xff 000006aa: NOT 000006ab: AND 000006ac: PUSH1 0x01 000006ae: OR 000006af: SWAP1 000006b0: SSTORE 000006b1: PUSH1 0x03 000006b3: DUP6 000006b4: ADD 000006b5: SLOAD 000006b6: SWAP1 000006b7: SWAP3 000006b8: POP 000006b9: PUSH2 0x06c2 000006bc: SWAP1 000006bd: DUP4 000006be: PUSH2 0x0952 000006c1: JUMP 000006c2: JUMPDEST 000006c3: PUSH1 0x03 000006c5: DUP6 000006c6: ADD 000006c7: SSTORE 000006c8: PUSH1 0x00 000006ca: DUP3 000006cb: GT 000006cc: ISZERO 000006cd: PUSH2 0x0741 000006d0: JUMPI 000006d1: PUSH1 0x40 000006d3: MLOAD 000006d4: PUSH1 0x01 000006d6: PUSH1 0xa0 000006d8: PUSH1 0x02 000006da: EXP 000006db: SUB 000006dc: CALLER 000006dd: AND 000006de: SWAP1 000006df: DUP4 000006e0: ISZERO 000006e1: PUSH2 0x08fc 000006e4: MUL 000006e5: SWAP1 000006e6: DUP5 000006e7: SWAP1 000006e8: PUSH1 0x00 000006ea: DUP2 000006eb: DUP2 000006ec: DUP2 000006ed: DUP6 000006ee: DUP9 000006ef: DUP9 000006f0: CALL 000006f1: SWAP4 000006f2: POP 000006f3: POP 000006f4: POP 000006f5: POP 000006f6: ISZERO 000006f7: ISZERO 000006f8: PUSH2 0x06fd 000006fb: JUMPI 000006fc: INVALID 000006fd: JUMPDEST 000006fe: PUSH1 0x40 00000700: DUP1 00000701: MLOAD 00000702: DUP7 00000703: DUP2 00000704: MSTORE 00000705: PUSH1 0x20 00000707: DUP2 00000708: ADD 00000709: DUP5 0000070a: SWAP1 0000070b: MSTORE 0000070c: DUP2 0000070d: MLOAD 0000070e: PUSH1 0x01 00000710: PUSH1 0xa0 00000712: PUSH1 0x02 00000714: EXP 00000715: SUB 00000716: CALLER 00000717: AND 00000718: SWAP3 00000719: PUSH32 0xa1c93169468f71ef26f4adf10bca8df21460f11843a01ed9c69da306e33c3847 0000073a: SWAP3 0000073b: DUP3 0000073c: SWAP1 0000073d: SUB 0000073e: ADD 0000073f: SWAP1 00000740: LOG2 00000741: JUMPDEST 00000742: JUMPDEST 00000743: JUMPDEST 00000744: POP 00000745: POP 00000746: POP 00000747: POP 00000748: POP 00000749: JUMP 0000074a: JUMPDEST 0000074b: PUSH1 0x00 0000074d: DUP1 0000074e: SLOAD 0000074f: DUP2 00000750: SWAP1 00000751: DUP2 00000752: SWAP1 00000753: CALLER 00000754: PUSH1 0x01 00000756: PUSH1 0xa0 00000758: PUSH1 0x02 0000075a: EXP 0000075b: SUB 0000075c: SWAP1 0000075d: DUP2 0000075e: AND 0000075f: SWAP2 00000760: AND 00000761: EQ 00000762: PUSH2 0x076b 00000765: JUMPI 00000766: PUSH1 0x00 00000768: PUSH1 0x00 0000076a: REVERT 0000076b: JUMPDEST 0000076c: PUSH1 0x01 0000076e: SLOAD 0000076f: PUSH1 0x40 00000771: DUP1 00000772: MLOAD 00000773: PUSH1 0x00 00000775: PUSH1 0x20 00000777: SWAP2 00000778: DUP3 00000779: ADD 0000077a: DUP2 0000077b: SWAP1 0000077c: MSTORE 0000077d: DUP3 0000077e: MLOAD 0000077f: PUSH1 0xe4 00000781: PUSH1 0x02 00000783: EXP 00000784: PUSH4 0x0981b24d 00000789: MUL 0000078a: DUP2 0000078b: MSTORE 0000078c: NUMBER 0000078d: PUSH1 0x04 0000078f: DUP3 00000790: ADD 00000791: MSTORE 00000792: SWAP3 00000793: MLOAD 00000794: PUSH1 0x01 00000796: PUSH1 0xa0 00000798: PUSH1 0x02 0000079a: EXP 0000079b: SUB 0000079c: SWAP1 0000079d: SWAP5 0000079e: AND 0000079f: SWAP4 000007a0: PUSH4 0x981b24d0 000007a5: SWAP4 000007a6: PUSH1 0x24 000007a8: DUP1 000007a9: DUP3 000007aa: ADD 000007ab: SWAP5 000007ac: SWAP4 000007ad: SWAP2 000007ae: DUP4 000007af: SWAP1 000007b0: SUB 000007b1: ADD 000007b2: SWAP1 000007b3: DUP3 000007b4: SWAP1 000007b5: DUP8 000007b6: DUP1 000007b7: EXTCODESIZE 000007b8: ISZERO 000007b9: ISZERO 000007ba: PUSH2 0x07bf 000007bd: JUMPI 000007be: INVALID 000007bf: JUMPDEST 000007c0: PUSH2 0x02c6 000007c3: GAS 000007c4: SUB 000007c5: CALL 000007c6: ISZERO 000007c7: ISZERO 000007c8: PUSH2 0x07cd 000007cb: JUMPI 000007cc: INVALID 000007cd: JUMPDEST 000007ce: POP 000007cf: POP 000007d0: PUSH1 0x40 000007d2: MLOAD 000007d3: MLOAD 000007d4: PUSH1 0x03 000007d6: SLOAD 000007d7: SWAP1 000007d8: SWAP5 000007d9: POP 000007da: SWAP3 000007db: POP 000007dc: PUSH2 0x07e8 000007df: SWAP1 000007e0: POP 000007e1: NUMBER 000007e2: PUSH1 0x01 000007e4: PUSH2 0x093b 000007e7: JUMP 000007e8: JUMPDEST 000007e9: SWAP1 000007ea: POP 000007eb: PUSH1 0x03 000007ed: DUP1 000007ee: SLOAD 000007ef: DUP1 000007f0: PUSH1 0x01 000007f2: ADD 000007f3: DUP3 000007f4: DUP2 000007f5: PUSH2 0x07fe 000007f8: SWAP2 000007f9: SWAP1 000007fa: PUSH2 0x09b8 000007fd: JUMP 000007fe: JUMPDEST 000007ff: SWAP2 00000800: PUSH1 0x00 00000802: MSTORE 00000803: PUSH1 0x20 00000805: PUSH1 0x00 00000807: KECCAK256 00000808: SWAP1 00000809: PUSH1 0x07 0000080b: MUL 0000080c: ADD 0000080d: PUSH1 0x00 0000080f: JUMPDEST 00000810: PUSH1 0xc0 00000812: PUSH1 0x40 00000814: MLOAD 00000815: SWAP1 00000816: DUP2 00000817: ADD 00000818: PUSH1 0x40 0000081a: MSTORE 0000081b: DUP1 0000081c: DUP6 0000081d: DUP2 0000081e: MSTORE 0000081f: PUSH1 0x20 00000821: ADD 00000822: PUSH2 0x0829 00000825: PUSH2 0x0936 00000828: JUMP 00000829: JUMPDEST 0000082a: DUP2 0000082b: MSTORE 0000082c: CALLVALUE 0000082d: PUSH1 0x20 0000082f: DUP1 00000830: DUP4 00000831: ADD 00000832: DUP3 00000833: SWAP1 00000834: MSTORE 00000835: PUSH1 0x00 00000837: PUSH1 0x40 00000839: DUP1 0000083a: DUP6 0000083b: ADD 0000083c: DUP3 0000083d: SWAP1 0000083e: MSTORE 0000083f: PUSH1 0x60 00000841: DUP1 00000842: DUP7 00000843: ADD 00000844: DUP14 00000845: SWAP1 00000846: MSTORE 00000847: PUSH1 0x80 00000849: SWAP6 0000084a: DUP7 0000084b: ADD 0000084c: SWAP3 0000084d: SWAP1 0000084e: SWAP3 0000084f: MSTORE 00000850: DUP6 00000851: MLOAD 00000852: DUP9 00000853: SSTORE 00000854: DUP6 00000855: DUP4 00000856: ADD 00000857: MLOAD 00000858: PUSH1 0x01 0000085a: DUP10 0000085b: ADD 0000085c: SSTORE 0000085d: DUP6 0000085e: DUP2 0000085f: ADD 00000860: MLOAD 00000861: PUSH1 0x02 00000863: DUP10 00000864: ADD 00000865: SSTORE 00000866: DUP6 00000867: DUP3 00000868: ADD 00000869: MLOAD 0000086a: PUSH1 0x03 0000086c: DUP10 0000086d: ADD 0000086e: SSTORE 0000086f: DUP6 00000870: DUP6 00000871: ADD 00000872: MLOAD 00000873: PUSH1 0x04 00000875: DUP10 00000876: ADD 00000877: SSTORE 00000878: PUSH1 0xa0 0000087a: SWAP1 0000087b: SWAP6 0000087c: ADD 0000087d: MLOAD 0000087e: PUSH1 0x05 00000880: SWAP1 00000881: SWAP8 00000882: ADD 00000883: DUP1 00000884: SLOAD 00000885: PUSH1 0xff 00000887: NOT 00000888: AND 00000889: SWAP8 0000088a: ISZERO 0000088b: ISZERO 0000088c: SWAP8 0000088d: SWAP1 0000088e: SWAP8 0000088f: OR 00000890: SWAP1 00000891: SWAP7 00000892: SSTORE 00000893: DUP4 00000894: MLOAD 00000895: DUP9 00000896: DUP2 00000897: MSTORE 00000898: SWAP1 00000899: DUP2 0000089a: ADD 0000089b: SWAP2 0000089c: SWAP1 0000089d: SWAP2 0000089e: MSTORE 0000089f: DUP1 000008a0: DUP4 000008a1: ADD 000008a2: DUP10 000008a3: SWAP1 000008a4: MSTORE 000008a5: SWAP4 000008a6: DUP5 000008a7: ADD 000008a8: DUP8 000008a9: SWAP1 000008aa: MSTORE 000008ab: SWAP1 000008ac: MLOAD 000008ad: CALLER 000008ae: PUSH1 0x01 000008b0: PUSH1 0xa0 000008b2: PUSH1 0x02 000008b4: EXP 000008b5: SUB 000008b6: AND 000008b7: SWAP5 000008b8: POP 000008b9: PUSH32 0xcbf89ed8b63aa0a8f6e744e4023554f41dc830838d138eb2d4099cbcfe4a0831 000008da: SWAP4 000008db: DUP2 000008dc: SWAP1 000008dd: SUB 000008de: SWAP1 000008df: SWAP2 000008e0: ADD 000008e1: SWAP2 000008e2: POP 000008e3: LOG2 000008e4: JUMPDEST 000008e5: JUMPDEST 000008e6: POP 000008e7: POP 000008e8: POP 000008e9: JUMP 000008ea: JUMPDEST 000008eb: PUSH1 0x00 000008ed: SLOAD 000008ee: CALLER 000008ef: PUSH1 0x01 000008f1: PUSH1 0xa0 000008f3: PUSH1 0x02 000008f5: EXP 000008f6: SUB 000008f7: SWAP1 000008f8: DUP2 000008f9: AND 000008fa: SWAP2 000008fb: AND 000008fc: EQ 000008fd: PUSH2 0x0906 00000900: JUMPI 00000901: PUSH1 0x00 00000903: PUSH1 0x00 00000905: REVERT 00000906: JUMPDEST 00000907: PUSH1 0x01 00000909: PUSH1 0xa0 0000090b: PUSH1 0x02 0000090d: EXP 0000090e: SUB 0000090f: DUP2 00000910: AND 00000911: ISZERO 00000912: PUSH2 0x04fd 00000915: JUMPI 00000916: PUSH1 0x00 00000918: DUP1 00000919: SLOAD 0000091a: PUSH1 0x01 0000091c: PUSH1 0xa0 0000091e: PUSH1 0x02 00000920: EXP 00000921: SUB 00000922: NOT 00000923: AND 00000924: PUSH1 0x01 00000926: PUSH1 0xa0 00000928: PUSH1 0x02 0000092a: EXP 0000092b: SUB 0000092c: DUP4 0000092d: AND 0000092e: OR 0000092f: SWAP1 00000930: SSTORE 00000931: JUMPDEST 00000932: JUMPDEST 00000933: JUMPDEST 00000934: POP 00000935: JUMP 00000936: JUMPDEST 00000937: TIMESTAMP 00000938: JUMPDEST 00000939: SWAP1 0000093a: JUMP 0000093b: JUMPDEST 0000093c: PUSH1 0x00 0000093e: DUP3 0000093f: DUP3 00000940: GT 00000941: ISZERO 00000942: PUSH2 0x0947 00000945: JUMPI 00000946: INVALID 00000947: JUMPDEST 00000948: POP 00000949: DUP1 0000094a: DUP3 0000094b: SUB 0000094c: JUMPDEST 0000094d: SWAP3 0000094e: SWAP2 0000094f: POP 00000950: POP 00000951: JUMP 00000952: JUMPDEST 00000953: PUSH1 0x00 00000955: DUP3 00000956: DUP3 00000957: ADD 00000958: DUP4 00000959: DUP2 0000095a: LT 0000095b: ISZERO 0000095c: PUSH2 0x0961 0000095f: JUMPI 00000960: INVALID 00000961: JUMPDEST 00000962: DUP1 00000963: SWAP2 00000964: POP 00000965: JUMPDEST 00000966: POP 00000967: SWAP3 00000968: SWAP2 00000969: POP 0000096a: POP 0000096b: JUMP 0000096c: JUMPDEST 0000096d: PUSH1 0x00 0000096f: DUP3 00000970: DUP3 00000971: MUL 00000972: DUP4 00000973: ISZERO 00000974: DUP1 00000975: PUSH2 0x0988 00000978: JUMPI 00000979: POP 0000097a: DUP3 0000097b: DUP5 0000097c: DUP3 0000097d: DUP2 0000097e: ISZERO 0000097f: ISZERO 00000980: PUSH2 0x0985 00000983: JUMPI 00000984: INVALID 00000985: JUMPDEST 00000986: DIV 00000987: EQ 00000988: JUMPDEST 00000989: ISZERO 0000098a: ISZERO 0000098b: PUSH2 0x0961 0000098e: JUMPI 0000098f: INVALID 00000990: JUMPDEST 00000991: DUP1 00000992: SWAP2 00000993: POP 00000994: JUMPDEST 00000995: POP 00000996: SWAP3 00000997: SWAP2 00000998: POP 00000999: POP 0000099a: JUMP 0000099b: JUMPDEST 0000099c: PUSH1 0x00 0000099e: PUSH1 0x00 000009a0: DUP3 000009a1: DUP5 000009a2: DUP2 000009a3: ISZERO 000009a4: ISZERO 000009a5: PUSH2 0x09aa 000009a8: JUMPI 000009a9: INVALID 000009aa: JUMPDEST 000009ab: DIV 000009ac: SWAP1 000009ad: POP 000009ae: DUP1 000009af: SWAP2 000009b0: POP 000009b1: JUMPDEST 000009b2: POP 000009b3: SWAP3 000009b4: SWAP2 000009b5: POP 000009b6: POP 000009b7: JUMP 000009b8: JUMPDEST 000009b9: DUP2 000009ba: SLOAD 000009bb: DUP2 000009bc: DUP4 000009bd: SSTORE 000009be: DUP2 000009bf: DUP2 000009c0: ISZERO 000009c1: GT 000009c2: PUSH2 0x08e4 000009c5: JUMPI 000009c6: PUSH1 0x07 000009c8: MUL 000009c9: DUP2 000009ca: PUSH1 0x07 000009cc: MUL 000009cd: DUP4 000009ce: PUSH1 0x00 000009d0: MSTORE 000009d1: PUSH1 0x20 000009d3: PUSH1 0x00 000009d5: KECCAK256 000009d6: SWAP2 000009d7: DUP3 000009d8: ADD 000009d9: SWAP2 000009da: ADD 000009db: PUSH2 0x08e4 000009de: SWAP2 000009df: SWAP1 000009e0: PUSH2 0x09ea 000009e3: JUMP 000009e4: JUMPDEST 000009e5: JUMPDEST 000009e6: POP 000009e7: POP 000009e8: POP 000009e9: JUMP 000009ea: JUMPDEST 000009eb: PUSH2 0x0938 000009ee: SWAP2 000009ef: SWAP1 000009f0: JUMPDEST 000009f1: DUP1 000009f2: DUP3 000009f3: GT 000009f4: ISZERO 000009f5: PUSH2 0x0a2b 000009f8: JUMPI 000009f9: PUSH1 0x00 000009fb: DUP1 000009fc: DUP3 000009fd: SSTORE 000009fe: PUSH1 0x01 00000a00: DUP3 00000a01: ADD 00000a02: DUP2 00000a03: SWAP1 00000a04: SSTORE 00000a05: PUSH1 0x02 00000a07: DUP3 00000a08: ADD 00000a09: DUP2 00000a0a: SWAP1 00000a0b: SSTORE 00000a0c: PUSH1 0x03 00000a0e: DUP3 00000a0f: ADD 00000a10: DUP2 00000a11: SWAP1 00000a12: SSTORE 00000a13: PUSH1 0x04 00000a15: DUP3 00000a16: ADD 00000a17: SSTORE 00000a18: PUSH1 0x05 00000a1a: DUP2 00000a1b: ADD 00000a1c: DUP1 00000a1d: SLOAD 00000a1e: PUSH1 0xff 00000a20: NOT 00000a21: AND 00000a22: SWAP1 00000a23: SSTORE 00000a24: PUSH1 0x07 00000a26: ADD 00000a27: PUSH2 0x09f0 00000a2a: JUMP 00000a2b: JUMPDEST 00000a2c: POP 00000a2d: SWAP1 00000a2e: JUMP 00000a2f: JUMPDEST 00000a30: SWAP1 00000a31: JUMP 00000a32: STOP 00000a33: LOG1 00000a34: PUSH6 0x627a7a723058 00000a3b: KECCAK256 00000a3c: UNKNOWN(0xA9) 00000a3d: MCOPY 00000a3e: EXTCODECOPY 00000a3f: SLOAD 00000a40: BLOBBASEFEE 00000a41: SWAP2 00000a42: DIV 00000a43: UNKNOWN(0xE6) 00000a44: UNKNOWN(0xBA) 00000a45: CODESIZE 00000a46: PUSH3 0xa084d8 00000a4a: ORIGIN 00000a4b: UNKNOWN(0xE7) 00000a4c: UNKNOWN(0xDF) 00000a4d: CREATE2 00000a4e: UNKNOWN(0x4D) 00000a4f: UNKNOWN(0xEF) 00000a50: UNKNOWN(0xDE) 00000a51: PUSH23
| Severity | Category | Tool | Title | Confidence | Validated | Confirmed | Details |
|---|---|---|---|---|---|---|---|
| high | auth | detector | Authorization based on tx.origin | 70 | no | — |
viewvalidation_json{
"reason": "missing sink mapping",
"status": "no_sink"
}
witness_json{
"notes": "heuristic witness; entrypoints are best-effort selectors with zeroed calldata",
"constraints": [],
"entrypoints": [
{
"calldata": "0x22c9427e",
"selector": "0x22c9427e",
"calldata_variants": [
"0x22c9427e",
"0x22c9427e0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x30e1f16f",
"selector": "0x30e1f16f",
"calldata_variants": [
"0x30e1f16f",
"0x30e1f16f0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x6423b5f0",
"selector": "0x6423b5f0",
"calldata_variants": [
"0x6423b5f0",
"0x6423b5f00000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x7c1a35d7",
"selector": "0x7c1a35d7",
"calldata_variants": [
"0x7c1a35d7",
"0x7c1a35d70000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x814b3fe0",
"selector": "0x814b3fe0",
"calldata_variants": [
"0x814b3fe0",
"0x814b3fe00000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x8da5cb5b",
"selector": "0x8da5cb5b",
"calldata_variants": [
"0x8da5cb5b",
"0x8da5cb5b0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x9abd3572",
"selector": "0x9abd3572",
"calldata_variants": [
"0x9abd3572",
"0x9abd35720000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xa289d187",
"selector": "0xa289d187",
"calldata_variants": [
"0xa289d187",
"0xa289d1870000000000000000000000000000000000000000000000000000000000000000"
]
}
]
}
evidence_json{
"guards_detected": [
{
"pc": 2634,
"type": "tx_origin_used"
}
]
}
|
| medium | other | detector | Untrusted CALL target/value reachable | 45 | no | no |
viewtrace_id: 0x7ece32c1b3decfd96deae9d410cddce1fc533a5cdb8df83fb4aadaa0bc1a377a
call_targets:
0x6822aaf4ab22e6cca8352a927b9ae0a8fdb58d9d
target_varies:
no
classification:
constant_target
validation_json{
"sink": "CALL",
"errors": 0,
"status": "sink_reached",
"attempts": 1,
"trace_id": "0x7ece32c1b3decfd96deae9d410cddce1fc533a5cdb8df83fb4aadaa0bc1a377a",
"confirmed": false,
"trace_mode": "callTracer",
"call_targets": [
"0x6822aaf4ab22e6cca8352a927b9ae0a8fdb58d9d"
],
"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": "0x22c9427e",
"selector": "0x22c9427e",
"calldata_variants": [
"0x22c9427e",
"0x22c9427e0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x30e1f16f",
"selector": "0x30e1f16f",
"calldata_variants": [
"0x30e1f16f",
"0x30e1f16f0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x6423b5f0",
"selector": "0x6423b5f0",
"calldata_variants": [
"0x6423b5f0",
"0x6423b5f00000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x7c1a35d7",
"selector": "0x7c1a35d7",
"calldata_variants": [
"0x7c1a35d7",
"0x7c1a35d70000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x814b3fe0",
"selector": "0x814b3fe0",
"calldata_variants": [
"0x814b3fe0",
"0x814b3fe00000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x8da5cb5b",
"selector": "0x8da5cb5b",
"calldata_variants": [
"0x8da5cb5b",
"0x8da5cb5b0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x9abd3572",
"selector": "0x9abd3572",
"calldata_variants": [
"0x9abd3572",
"0x9abd35720000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xa289d187",
"selector": "0xa289d187",
"calldata_variants": [
"0xa289d187",
"0xa289d1870000000000000000000000000000000000000000000000000000000000000000"
]
}
]
}
evidence_json{
"examples": [
{
"pc": 707,
"opcode": "CALL",
"returndata_checked": null,
"value_expression_category": "computed",
"target_expression_category": "computed"
},
{
"pc": 1613,
"opcode": "CALL",
"returndata_checked": null,
"value_expression_category": "computed",
"target_expression_category": "computed"
},
{
"pc": 1776,
"opcode": "CALL",
"returndata_checked": null,
"value_expression_category": "computed",
"target_expression_category": "computed"
}
],
"call_count": 4,
"guards_detected": [
{
"pc": 2634,
"type": "tx_origin_used"
}
],
"untrusted_call_count": 4
}
|
| medium | other | detector | ETH value transfer possible | 40 | no | no |
viewtrace_id: 0x7ece32c1b3decfd96deae9d410cddce1fc533a5cdb8df83fb4aadaa0bc1a377a
call_targets:
0x6822aaf4ab22e6cca8352a927b9ae0a8fdb58d9d
target_varies:
no
classification:
constant_target
validation_json{
"sink": "CALL",
"errors": 0,
"status": "sink_reached",
"attempts": 1,
"trace_id": "0x7ece32c1b3decfd96deae9d410cddce1fc533a5cdb8df83fb4aadaa0bc1a377a",
"confirmed": false,
"trace_mode": "callTracer",
"call_targets": [
"0x6822aaf4ab22e6cca8352a927b9ae0a8fdb58d9d"
],
"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": "0x22c9427e",
"selector": "0x22c9427e",
"calldata_variants": [
"0x22c9427e",
"0x22c9427e0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x30e1f16f",
"selector": "0x30e1f16f",
"calldata_variants": [
"0x30e1f16f",
"0x30e1f16f0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x6423b5f0",
"selector": "0x6423b5f0",
"calldata_variants": [
"0x6423b5f0",
"0x6423b5f00000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x7c1a35d7",
"selector": "0x7c1a35d7",
"calldata_variants": [
"0x7c1a35d7",
"0x7c1a35d70000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x814b3fe0",
"selector": "0x814b3fe0",
"calldata_variants": [
"0x814b3fe0",
"0x814b3fe00000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x8da5cb5b",
"selector": "0x8da5cb5b",
"calldata_variants": [
"0x8da5cb5b",
"0x8da5cb5b0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x9abd3572",
"selector": "0x9abd3572",
"calldata_variants": [
"0x9abd3572",
"0x9abd35720000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xa289d187",
"selector": "0xa289d187",
"calldata_variants": [
"0xa289d187",
"0xa289d1870000000000000000000000000000000000000000000000000000000000000000"
]
}
]
}
evidence_json{
"examples": [
{
"pc": 707,
"opcode": "CALL",
"returndata_checked": null,
"value_expression_category": "computed",
"target_expression_category": "computed"
},
{
"pc": 1613,
"opcode": "CALL",
"returndata_checked": null,
"value_expression_category": "computed",
"target_expression_category": "computed"
},
{
"pc": 1776,
"opcode": "CALL",
"returndata_checked": null,
"value_expression_category": "computed",
"target_expression_category": "computed"
}
],
"eth_value_calls": 4,
"guards_detected": [
{
"pc": 2634,
"type": "tx_origin_used"
}
]
}
|
| medium | other | detector | CREATE/CREATE2 reachable | 45 | no | no |
viewtrace_id: 0x62e54f98a02056e13b828e2f862903868189c2b6b8c2475cba8774d94e2522f0
validation_json{
"sink": "CREATE",
"errors": 0,
"status": "unknown",
"attempts": 18,
"trace_id": "0x62e54f98a02056e13b828e2f862903868189c2b6b8c2475cba8774d94e2522f0",
"confirmed": false,
"trace_mode": "structLogs",
"call_targets": null,
"matched_probe": null,
"target_varies": null,
"classification": "no_sink"
}
witness_json{
"notes": "heuristic witness; entrypoints are best-effort selectors with zeroed calldata",
"constraints": [],
"entrypoints": [
{
"calldata": "0x22c9427e",
"selector": "0x22c9427e",
"calldata_variants": [
"0x22c9427e",
"0x22c9427e0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x30e1f16f",
"selector": "0x30e1f16f",
"calldata_variants": [
"0x30e1f16f",
"0x30e1f16f0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x6423b5f0",
"selector": "0x6423b5f0",
"calldata_variants": [
"0x6423b5f0",
"0x6423b5f00000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x7c1a35d7",
"selector": "0x7c1a35d7",
"calldata_variants": [
"0x7c1a35d7",
"0x7c1a35d70000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x814b3fe0",
"selector": "0x814b3fe0",
"calldata_variants": [
"0x814b3fe0",
"0x814b3fe00000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x8da5cb5b",
"selector": "0x8da5cb5b",
"calldata_variants": [
"0x8da5cb5b",
"0x8da5cb5b0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x9abd3572",
"selector": "0x9abd3572",
"calldata_variants": [
"0x9abd3572",
"0x9abd35720000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xa289d187",
"selector": "0xa289d187",
"calldata_variants": [
"0xa289d187",
"0xa289d1870000000000000000000000000000000000000000000000000000000000000000"
]
}
]
}
evidence_json{
"create_count": 0,
"create2_count": 1
}
|
| low | other | cast | Contract creation opcode present | 60 | no | — |
viewevidence_json{
"notes": "runtime can deploy contracts dynamically via CREATE/CREATE2",
"create_count": 0,
"create2_count": 1
}
|