1a9e0ce9-35e3-4d02-9791-1568d4567ea0
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 |
|---|---|---|---|---|
| 31556 | report.consolidate | complete | 1 / 1 | 3 months ago |
| 77963 | artifact.fetch | failed | 1 / 3 | 1 week ago |
| 77964 | tool.cast_disasm | complete | 1 / 3 | 1 week ago |
| 77965 | analysis.bundle | complete | 1 / 3 | 1 week ago |
| 77966 | capability.graph | complete | 1 / 3 | 1 week ago |
| 77967 | detector.run | complete | 1 / 3 | 1 week ago |
| 77968 | validation.fork | complete | 1 / 3 | 1 week ago |
No slither job recorded yet.
[codex:737364] OpenAI Codex v0.77.0 (research preview)
[codex:737364] --------
[codex:737364] workdir: /tmp/codex-multi-uvjlvdl_
[codex:737364] model: gpt-5.2-codex
[codex:737364] provider: openai
[codex:737364] approval: never
[codex:737364] sandbox: read-only
[codex:737364] reasoning effort: xhigh
[codex:737364] reasoning summaries: auto
[codex:737364] session id: 019b873e-75b2-7372-bb97-204b6a8e888a
[codex:737364] --------
[codex:737364] user
[codex:737364] You are a profit-focused exploit hunter. Your ONLY goal is finding ways to extract value (ETH, tokens, NFTs) from this contract.
[codex:737364]
[codex:737364] Read `AUDIT_BUNDLE.txt` completely before concluding. Treat `lib/` and `@openzeppelin/` as trusted unless misused.
[codex:737364]
[codex:737364] ONLY REPORT if you find a CONCRETE, EXPLOITABLE path to profit. We do NOT care about:
[codex:737364] - Gas inefficiency, code quality, naming, or best practices
[codex:737364] - Theoretical vulnerabilities without a clear extraction path
[codex:737364] - Centralization risks (admin can rug) - assume admin keys are secure
[codex:737364] - Front-running unless it enables theft beyond MEV
[codex:737364] - DoS, griefing, or issues that don't result in attacker profit
[codex:737364] - Missing events, view function issues, or informational findings
[codex:737364]
[codex:737364] HIGH-VALUE PATTERNS TO HUNT:
[codex:737364] - Reentrancy: external calls before state updates that allow double-withdrawal
[codex:737364] - Access control: missing/bypassable auth on withdraw, transfer, or mint functions
[codex:737364] - Flash loan attacks: borrow -> manipulate -> profit in single tx
[codex:737364] - Price oracle manipulation: TWAP with short window, spot price reads, stale prices
[codex:737364] - Signature replay: missing nonce, chainId, or deadline in permit/meta-tx
[codex:737364] - Proxy hijacking: unprotected initialize(), storage collision, UUPS without auth
[codex:737364] - Accounting errors: rounding that favors attacker, share inflation, first depositor attacks
[codex:737364] - Unchecked external calls: return value ignored on token transfers enabling fake tokens
[codex:737364] - Cross-function reentrancy: state read in function A, modified via reentrant call, used stale in A
[codex:737364]
[codex:737364] For each finding, you MUST provide:
[codex:737364] 1. Exact file and line numbers of vulnerable code
[codex:737364] 2. Step-by-step exploit transaction sequence
[codex:737364] 3. Estimated profit potential (order of magnitude: contract balance, LP reserves, etc.)
[codex:737364]
[codex:737364] If no concrete profit path exists: set no_findings=true. Do NOT pad with low-severity noise.
[codex:737364]
[codex:737364] Output MUST be valid JSON matching the provided schema.
[codex:737364] - severity: info, low, medium, high, critical (use high/critical ONLY for clear extraction paths)
[codex:737364] - category: access_control, reentrancy, math, oracle, upgradeability, auth, other
[codex:737364] mcp startup: no servers
[codex:737364]
[codex:737364] thinking
[codex:737364] **Preparing to list files with ripgrep**
[codex:737364] exec
[codex:737364] /bin/bash -lc ls in /tmp/codex-multi-uvjlvdl_ succeeded in 5ms:
[codex:737364] AUDIT_BUNDLE.txt
[codex:737364] codex-output-schema.json
[codex:737364] contracts
[codex:737364]
[codex:737364] thinking
[codex:737364] **Reading AUDIT_BUNDLE.txt contents**
[codex:737364] exec
[codex:737364] /bin/bash -lc 'cat AUDIT_BUNDLE.txt' in /tmp/codex-multi-uvjlvdl_ succeeded in 6ms:
[codex:737364] This file concatenates first-party Solidity sources only (lib/@openzeppelin excluded).
[codex:737364]
[codex:737364] ================================================================================
[codex:737364] FILE: contracts/Contract.sol
[codex:737364] ================================================================================
[codex:737364] // SPDX-License-Identifier: UNLICENSED
[codex:737364] pragma solidity 0.8.15;
[codex:737364]
[codex:737364] // OpenZeppelin Contracts (last updated v4.7.0) (security/Pausable.sol)
[codex:737364]
[codex:737364] // OpenZeppelin Contracts v4.4.1 (utils/Context.sol)
[codex:737364]
[codex:737364] /**
[codex:737364] * @dev Provides information about the current execution context, including the
[codex:737364] * sender of the transaction and its data. While these are generally available
[codex:737364] * via msg.sender and msg.data, they should not be accessed in such a direct
[codex:737364] * manner, since when dealing with meta-transactions the account sending and
[codex:737364] * paying for execution may not be the actual sender (as far as an application
[codex:737364] * is concerned).
[codex:737364] *
[codex:737364]
[codex:737364]
[codex:737364] thinking
[codex:737364] **Analyzing redemption logic and potential exploits**
[codex:737364] thinking
[codex:737364] **Evaluating potential token-related vulnerabilities**
[codex:737364]
[codex:737364] I'll carefully consider if ignoring the return value of `transferFrom` could enable an exploit given the possible behaviors of the spice token, but without its code, it's unclear if that risk is concrete. I’m checking if any other factors like reentrancy, supply manipulation, or rounding might lead to exploitable profit paths, but so far none appear concrete. It looks like no definitive profit exploit emerges from the contract alone under typical assumptions.
[codex:737364] codex
[codex:737364] {"no_findings":true,"summary":"No concrete, exploitable profit paths found in the provided contract given its current access controls and redemption flow.","findings":[]}
[codex:737364] tokens used
[codex:737364] 19,038
[codex:737364] {"no_findings":true,"summary":"No concrete, exploitable profit paths found in the provided contract given its current access controls and redemption flow.","findings":[]}
{
"codex": {
"ran_at": "2026-01-04T04:24:39.410480+00:00",
"returncode": 0
},
"summary": "No concrete, exploitable profit paths found in the provided contract given its current access controls and redemption flow.",
"raw_final": {
"summary": "No concrete, exploitable profit paths found in the provided contract given its current access controls and redemption flow.",
"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 0x00d6 0000000c: JUMPI 0000000d: PUSH1 0x00 0000000f: CALLDATALOAD 00000010: PUSH1 0xe0 00000012: SHR 00000013: DUP1 00000014: PUSH4 0x715018a6 00000019: GT 0000001a: PUSH2 0x007f 0000001d: JUMPI 0000001e: DUP1 0000001f: PUSH4 0x9358928b 00000024: GT 00000025: PUSH2 0x0059 00000028: JUMPI 00000029: DUP1 0000002a: PUSH4 0x9358928b 0000002f: EQ 00000030: PUSH2 0x0262 00000033: JUMPI 00000034: DUP1 00000035: PUSH4 0xd39d3f42 0000003a: EQ 0000003b: PUSH2 0x0277 0000003e: JUMPI 0000003f: DUP1 00000040: PUSH4 0xdb006a75 00000045: EQ 00000046: PUSH2 0x0297 00000049: JUMPI 0000004a: DUP1 0000004b: PUSH4 0xf2fde38b 00000050: EQ 00000051: PUSH2 0x02b7 00000054: JUMPI 00000055: PUSH1 0x00 00000057: DUP1 00000058: REVERT 00000059: JUMPDEST 0000005a: DUP1 0000005b: PUSH4 0x715018a6 00000060: EQ 00000061: PUSH2 0x020d 00000064: JUMPI 00000065: DUP1 00000066: PUSH4 0x8456cb59 0000006b: EQ 0000006c: PUSH2 0x0222 0000006f: JUMPI 00000070: DUP1 00000071: PUSH4 0x8da5cb5b 00000076: EQ 00000077: PUSH2 0x0237 0000007a: JUMPI 0000007b: PUSH1 0x00 0000007d: DUP1 0000007e: REVERT 0000007f: JUMPDEST 00000080: DUP1 00000081: PUSH4 0x4b0c9a91 00000086: GT 00000087: PUSH2 0x00b0 0000008a: JUMPI 0000008b: DUP1 0000008c: PUSH4 0x4b0c9a91 00000091: EQ 00000092: PUSH2 0x0159 00000095: JUMPI 00000096: DUP1 00000097: PUSH4 0x5c975abb 0000009c: EQ 0000009d: PUSH2 0x01b2 000000a0: JUMPI 000000a1: DUP1 000000a2: PUSH4 0x6ea056a9 000000a7: EQ 000000a8: PUSH2 0x01ed 000000ab: JUMPI 000000ac: PUSH1 0x00 000000ae: DUP1 000000af: REVERT 000000b0: JUMPDEST 000000b1: DUP1 000000b2: PUSH4 0x2f940c70 000000b7: EQ 000000b8: PUSH2 0x00e2 000000bb: JUMPI 000000bc: DUP1 000000bd: PUSH4 0x349abcdb 000000c2: EQ 000000c3: PUSH2 0x0104 000000c6: JUMPI 000000c7: DUP1 000000c8: PUSH4 0x3f4ba83a 000000cd: EQ 000000ce: PUSH2 0x0144 000000d1: JUMPI 000000d2: PUSH1 0x00 000000d4: DUP1 000000d5: REVERT 000000d6: JUMPDEST 000000d7: CALLDATASIZE 000000d8: PUSH2 0x00dd 000000db: JUMPI 000000dc: STOP 000000dd: JUMPDEST 000000de: PUSH1 0x00 000000e0: DUP1 000000e1: REVERT 000000e2: JUMPDEST 000000e3: CALLVALUE 000000e4: DUP1 000000e5: ISZERO 000000e6: PUSH2 0x00ee 000000e9: JUMPI 000000ea: PUSH1 0x00 000000ec: DUP1 000000ed: REVERT 000000ee: JUMPDEST 000000ef: POP 000000f0: PUSH2 0x0102 000000f3: PUSH2 0x00fd 000000f6: CALLDATASIZE 000000f7: PUSH1 0x04 000000f9: PUSH2 0x0fff 000000fc: JUMP 000000fd: JUMPDEST 000000fe: PUSH2 0x02d7 00000101: JUMP 00000102: JUMPDEST 00000103: STOP 00000104: JUMPDEST 00000105: CALLVALUE 00000106: DUP1 00000107: ISZERO 00000108: PUSH2 0x0110 0000010b: JUMPI 0000010c: PUSH1 0x00 0000010e: DUP1 0000010f: REVERT 00000110: JUMPDEST 00000111: POP 00000112: PUSH2 0x0131 00000115: PUSH2 0x011f 00000118: CALLDATASIZE 00000119: PUSH1 0x04 0000011b: PUSH2 0x102b 0000011e: JUMP 0000011f: JUMPDEST 00000120: PUSH1 0x02 00000122: PUSH1 0x20 00000124: MSTORE 00000125: PUSH1 0x00 00000127: SWAP1 00000128: DUP2 00000129: MSTORE 0000012a: PUSH1 0x40 0000012c: SWAP1 0000012d: KECCAK256 0000012e: SLOAD 0000012f: DUP2 00000130: JUMP 00000131: JUMPDEST 00000132: PUSH1 0x40 00000134: MLOAD 00000135: SWAP1 00000136: DUP2 00000137: MSTORE 00000138: PUSH1 0x20 0000013a: ADD 0000013b: JUMPDEST 0000013c: PUSH1 0x40 0000013e: MLOAD 0000013f: DUP1 00000140: SWAP2 00000141: SUB 00000142: SWAP1 00000143: RETURN 00000144: JUMPDEST 00000145: CALLVALUE 00000146: DUP1 00000147: ISZERO 00000148: PUSH2 0x0150 0000014b: JUMPI 0000014c: PUSH1 0x00 0000014e: DUP1 0000014f: REVERT 00000150: JUMPDEST 00000151: POP 00000152: PUSH2 0x0102 00000155: PUSH2 0x0327 00000158: JUMP 00000159: JUMPDEST 0000015a: CALLVALUE 0000015b: DUP1 0000015c: ISZERO 0000015d: PUSH2 0x0165 00000160: JUMPI 00000161: PUSH1 0x00 00000163: DUP1 00000164: REVERT 00000165: JUMPDEST 00000166: POP 00000167: PUSH2 0x018d 0000016a: PUSH32 0x0000000000000000000000009b6db7597a74602a5a806e33408e7e2dafa58193 0000018b: DUP2 0000018c: JUMP 0000018d: JUMPDEST 0000018e: PUSH1 0x40 00000190: MLOAD 00000191: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000001a6: SWAP1 000001a7: SWAP2 000001a8: AND 000001a9: DUP2 000001aa: MSTORE 000001ab: PUSH1 0x20 000001ad: ADD 000001ae: PUSH2 0x013b 000001b1: JUMP 000001b2: JUMPDEST 000001b3: CALLVALUE 000001b4: DUP1 000001b5: ISZERO 000001b6: PUSH2 0x01be 000001b9: JUMPI 000001ba: PUSH1 0x00 000001bc: DUP1 000001bd: REVERT 000001be: JUMPDEST 000001bf: POP 000001c0: PUSH1 0x00 000001c2: SLOAD 000001c3: PUSH21 0x010000000000000000000000000000000000000000 000001d9: SWAP1 000001da: DIV 000001db: PUSH1 0xff 000001dd: AND 000001de: PUSH1 0x40 000001e0: MLOAD 000001e1: SWAP1 000001e2: ISZERO 000001e3: ISZERO 000001e4: DUP2 000001e5: MSTORE 000001e6: PUSH1 0x20 000001e8: ADD 000001e9: PUSH2 0x013b 000001ec: JUMP 000001ed: JUMPDEST 000001ee: CALLVALUE 000001ef: DUP1 000001f0: ISZERO 000001f1: PUSH2 0x01f9 000001f4: JUMPI 000001f5: PUSH1 0x00 000001f7: DUP1 000001f8: REVERT 000001f9: JUMPDEST 000001fa: POP 000001fb: PUSH2 0x0102 000001fe: PUSH2 0x0208 00000201: CALLDATASIZE 00000202: PUSH1 0x04 00000204: PUSH2 0x104d 00000207: JUMP 00000208: JUMPDEST 00000209: PUSH2 0x0341 0000020c: JUMP 0000020d: JUMPDEST 0000020e: CALLVALUE 0000020f: DUP1 00000210: ISZERO 00000211: PUSH2 0x0219 00000214: JUMPI 00000215: PUSH1 0x00 00000217: DUP1 00000218: REVERT 00000219: JUMPDEST 0000021a: POP 0000021b: PUSH2 0x0102 0000021e: PUSH2 0x0412 00000221: JUMP 00000222: JUMPDEST 00000223: CALLVALUE 00000224: DUP1 00000225: ISZERO 00000226: PUSH2 0x022e 00000229: JUMPI 0000022a: PUSH1 0x00 0000022c: DUP1 0000022d: REVERT 0000022e: JUMPDEST 0000022f: POP 00000230: PUSH2 0x0102 00000233: PUSH2 0x0424 00000236: JUMP 00000237: JUMPDEST 00000238: CALLVALUE 00000239: DUP1 0000023a: ISZERO 0000023b: PUSH2 0x0243 0000023e: JUMPI 0000023f: PUSH1 0x00 00000241: DUP1 00000242: REVERT 00000243: JUMPDEST 00000244: POP 00000245: PUSH1 0x00 00000247: SLOAD 00000248: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 0000025d: AND 0000025e: PUSH2 0x018d 00000261: JUMP 00000262: JUMPDEST 00000263: CALLVALUE 00000264: DUP1 00000265: ISZERO 00000266: PUSH2 0x026e 00000269: JUMPI 0000026a: PUSH1 0x00 0000026c: DUP1 0000026d: REVERT 0000026e: JUMPDEST 0000026f: POP 00000270: PUSH2 0x0131 00000273: PUSH2 0x043c 00000276: JUMP 00000277: JUMPDEST 00000278: CALLVALUE 00000279: DUP1 0000027a: ISZERO 0000027b: PUSH2 0x0283 0000027e: JUMPI 0000027f: PUSH1 0x00 00000281: DUP1 00000282: REVERT 00000283: JUMPDEST 00000284: POP 00000285: PUSH2 0x0131 00000288: PUSH2 0x0292 0000028b: CALLDATASIZE 0000028c: PUSH1 0x04 0000028e: PUSH2 0x1077 00000291: JUMP 00000292: JUMPDEST 00000293: PUSH2 0x058b 00000296: JUMP 00000297: JUMPDEST 00000298: CALLVALUE 00000299: DUP1 0000029a: ISZERO 0000029b: PUSH2 0x02a3 0000029e: JUMPI 0000029f: PUSH1 0x00 000002a1: DUP1 000002a2: REVERT 000002a3: JUMPDEST 000002a4: POP 000002a5: PUSH2 0x0102 000002a8: PUSH2 0x02b2 000002ab: CALLDATASIZE 000002ac: PUSH1 0x04 000002ae: PUSH2 0x1077 000002b1: JUMP 000002b2: JUMPDEST 000002b3: PUSH2 0x05c5 000002b6: JUMP 000002b7: JUMPDEST 000002b8: CALLVALUE 000002b9: DUP1 000002ba: ISZERO 000002bb: PUSH2 0x02c3 000002be: JUMPI 000002bf: PUSH1 0x00 000002c1: DUP1 000002c2: REVERT 000002c3: JUMPDEST 000002c4: POP 000002c5: PUSH2 0x0102 000002c8: PUSH2 0x02d2 000002cb: CALLDATASIZE 000002cc: PUSH1 0x04 000002ce: PUSH2 0x102b 000002d1: JUMP 000002d2: JUMPDEST 000002d3: PUSH2 0x081c 000002d6: JUMP 000002d7: JUMPDEST 000002d8: PUSH2 0x02df 000002db: PUSH2 0x08d0 000002de: JUMP 000002df: JUMPDEST 000002e0: PUSH1 0x40 000002e2: MLOAD 000002e3: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000002f8: DUP3 000002f9: AND 000002fa: SWAP1 000002fb: DUP4 000002fc: ISZERO 000002fd: PUSH2 0x08fc 00000300: MUL 00000301: SWAP1 00000302: DUP5 00000303: SWAP1 00000304: PUSH1 0x00 00000306: DUP2 00000307: DUP2 00000308: DUP2 00000309: DUP6 0000030a: DUP9 0000030b: DUP9 0000030c: CALL 0000030d: SWAP4 0000030e: POP 0000030f: POP 00000310: POP 00000311: POP 00000312: ISZERO 00000313: DUP1 00000314: ISZERO 00000315: PUSH2 0x0322 00000318: JUMPI 00000319: RETURNDATASIZE 0000031a: PUSH1 0x00 0000031c: DUP1 0000031d: RETURNDATACOPY 0000031e: RETURNDATASIZE 0000031f: PUSH1 0x00 00000321: REVERT 00000322: JUMPDEST 00000323: POP 00000324: POP 00000325: POP 00000326: JUMP 00000327: JUMPDEST 00000328: PUSH2 0x032f 0000032b: PUSH2 0x08d0 0000032e: JUMP 0000032f: JUMPDEST 00000330: PUSH2 0x0337 00000333: PUSH2 0x0951 00000336: JUMP 00000337: JUMPDEST 00000338: PUSH2 0x033f 0000033b: PUSH2 0x09d5 0000033e: JUMP 0000033f: JUMPDEST 00000340: JUMP 00000341: JUMPDEST 00000342: PUSH2 0x0349 00000345: PUSH2 0x08d0 00000348: JUMP 00000349: JUMPDEST 0000034a: PUSH32 0x0000000000000000000000009b6db7597a74602a5a806e33408e7e2dafa58193 0000036b: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00000380: AND 00000381: DUP3 00000382: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00000397: AND 00000398: SUB 00000399: PUSH2 0x0403 0000039c: JUMPI 0000039d: PUSH1 0x40 0000039f: MLOAD 000003a0: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 000003c1: DUP2 000003c2: MSTORE 000003c3: PUSH1 0x20 000003c5: PUSH1 0x04 000003c7: DUP3 000003c8: ADD 000003c9: MSTORE 000003ca: PUSH1 0x12 000003cc: PUSH1 0x24 000003ce: DUP3 000003cf: ADD 000003d0: MSTORE 000003d1: PUSH32 0x43616e6e6f742053776565702053504943450000000000000000000000000000 000003f2: PUSH1 0x44 000003f4: DUP3 000003f5: ADD 000003f6: MSTORE 000003f7: PUSH1 0x64 000003f9: ADD 000003fa: JUMPDEST 000003fb: PUSH1 0x40 000003fd: MLOAD 000003fe: DUP1 000003ff: SWAP2 00000400: SUB 00000401: SWAP1 00000402: REVERT 00000403: JUMPDEST 00000404: PUSH2 0x040e 00000407: DUP3 00000408: CALLER 00000409: DUP4 0000040a: PUSH2 0x0a52 0000040d: JUMP 0000040e: JUMPDEST 0000040f: POP 00000410: POP 00000411: JUMP 00000412: JUMPDEST 00000413: PUSH2 0x041a 00000416: PUSH2 0x08d0 00000419: JUMP 0000041a: JUMPDEST 0000041b: PUSH2 0x033f 0000041e: PUSH1 0x00 00000420: PUSH2 0x0adf 00000423: JUMP 00000424: JUMPDEST 00000425: PUSH2 0x042c 00000428: PUSH2 0x08d0 0000042b: JUMP 0000042c: JUMPDEST 0000042d: PUSH2 0x0434 00000430: PUSH2 0x0b54 00000433: JUMP 00000434: JUMPDEST 00000435: PUSH2 0x033f 00000438: PUSH2 0x0bd9 0000043b: JUMP 0000043c: JUMPDEST 0000043d: PUSH1 0x40 0000043f: MLOAD 00000440: PUSH32 0x70a0823100000000000000000000000000000000000000000000000000000000 00000461: DUP2 00000462: MSTORE 00000463: ADDRESS 00000464: PUSH1 0x04 00000466: DUP3 00000467: ADD 00000468: MSTORE 00000469: PUSH1 0x00 0000046b: SWAP1 0000046c: PUSH32 0x0000000000000000000000009b6db7597a74602a5a806e33408e7e2dafa58193 0000048d: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000004a2: AND 000004a3: SWAP1 000004a4: PUSH4 0x70a08231 000004a9: SWAP1 000004aa: PUSH1 0x24 000004ac: ADD 000004ad: PUSH1 0x20 000004af: PUSH1 0x40 000004b1: MLOAD 000004b2: DUP1 000004b3: DUP4 000004b4: SUB 000004b5: DUP2 000004b6: DUP7 000004b7: GAS 000004b8: STATICCALL 000004b9: ISZERO 000004ba: DUP1 000004bb: ISZERO 000004bc: PUSH2 0x04c9 000004bf: JUMPI 000004c0: RETURNDATASIZE 000004c1: PUSH1 0x00 000004c3: DUP1 000004c4: RETURNDATACOPY 000004c5: RETURNDATASIZE 000004c6: PUSH1 0x00 000004c8: REVERT 000004c9: JUMPDEST 000004ca: POP 000004cb: POP 000004cc: POP 000004cd: POP 000004ce: PUSH1 0x40 000004d0: MLOAD 000004d1: RETURNDATASIZE 000004d2: PUSH1 0x1f 000004d4: NOT 000004d5: PUSH1 0x1f 000004d7: DUP3 000004d8: ADD 000004d9: AND 000004da: DUP3 000004db: ADD 000004dc: DUP1 000004dd: PUSH1 0x40 000004df: MSTORE 000004e0: POP 000004e1: DUP2 000004e2: ADD 000004e3: SWAP1 000004e4: PUSH2 0x04ed 000004e7: SWAP2 000004e8: SWAP1 000004e9: PUSH2 0x1090 000004ec: JUMP 000004ed: JUMPDEST 000004ee: PUSH32 0x0000000000000000000000009b6db7597a74602a5a806e33408e7e2dafa58193 0000050f: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00000524: AND 00000525: PUSH4 0x18160ddd 0000052a: PUSH1 0x40 0000052c: MLOAD 0000052d: DUP2 0000052e: PUSH4 0xffffffff 00000533: AND 00000534: PUSH1 0xe0 00000536: SHL 00000537: DUP2 00000538: MSTORE 00000539: PUSH1 0x04 0000053b: ADD 0000053c: PUSH1 0x20 0000053e: PUSH1 0x40 00000540: MLOAD 00000541: DUP1 00000542: DUP4 00000543: SUB 00000544: DUP2 00000545: DUP7 00000546: GAS 00000547: STATICCALL 00000548: ISZERO 00000549: DUP1 0000054a: ISZERO 0000054b: PUSH2 0x0558 0000054e: JUMPI 0000054f: RETURNDATASIZE 00000550: PUSH1 0x00 00000552: DUP1 00000553: RETURNDATACOPY 00000554: RETURNDATASIZE 00000555: PUSH1 0x00 00000557: REVERT 00000558: JUMPDEST 00000559: POP 0000055a: POP 0000055b: POP 0000055c: POP 0000055d: PUSH1 0x40 0000055f: MLOAD 00000560: RETURNDATASIZE 00000561: PUSH1 0x1f 00000563: NOT 00000564: PUSH1 0x1f 00000566: DUP3 00000567: ADD 00000568: AND 00000569: DUP3 0000056a: ADD 0000056b: DUP1 0000056c: PUSH1 0x40 0000056e: MSTORE 0000056f: POP 00000570: DUP2 00000571: ADD 00000572: SWAP1 00000573: PUSH2 0x057c 00000576: SWAP2 00000577: SWAP1 00000578: PUSH2 0x1090 0000057b: JUMP 0000057c: JUMPDEST 0000057d: PUSH2 0x0586 00000580: SWAP2 00000581: SWAP1 00000582: PUSH2 0x10d8 00000585: JUMP 00000586: JUMPDEST 00000587: SWAP1 00000588: POP 00000589: SWAP1 0000058a: JUMP 0000058b: JUMPDEST 0000058c: PUSH1 0x00 0000058e: DUP1 0000058f: PUSH2 0x0596 00000592: PUSH2 0x043c 00000595: JUMP 00000596: JUMPDEST 00000597: SWAP1 00000598: POP 00000599: DUP1 0000059a: ISZERO 0000059b: PUSH2 0x05ba 0000059e: JUMPI 0000059f: DUP1 000005a0: PUSH2 0x05a9 000005a3: SELFBALANCE 000005a4: DUP6 000005a5: PUSH2 0x10ef 000005a8: JUMP 000005a9: JUMPDEST 000005aa: PUSH2 0x05b3 000005ad: SWAP2 000005ae: SWAP1 000005af: PUSH2 0x112c 000005b2: JUMP 000005b3: JUMPDEST 000005b4: SWAP2 000005b5: POP 000005b6: PUSH2 0x05bf 000005b9: JUMP 000005ba: JUMPDEST 000005bb: PUSH1 0x00 000005bd: SWAP2 000005be: POP 000005bf: JUMPDEST 000005c0: POP 000005c1: SWAP2 000005c2: SWAP1 000005c3: POP 000005c4: JUMP 000005c5: JUMPDEST 000005c6: PUSH2 0x05cd 000005c9: PUSH2 0x0c48 000005cc: JUMP 000005cd: JUMPDEST 000005ce: PUSH2 0x05d5 000005d1: PUSH2 0x0b54 000005d4: JUMP 000005d5: JUMPDEST 000005d6: PUSH1 0x00 000005d8: DUP2 000005d9: GT 000005da: PUSH2 0x063f 000005dd: JUMPI 000005de: PUSH1 0x40 000005e0: MLOAD 000005e1: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 00000602: DUP2 00000603: MSTORE 00000604: PUSH1 0x20 00000606: PUSH1 0x04 00000608: DUP3 00000609: ADD 0000060a: MSTORE 0000060b: PUSH1 0x0e 0000060d: PUSH1 0x24 0000060f: DUP3 00000610: ADD 00000611: MSTORE 00000612: PUSH32 0x696e76616c696420616d6f756e74000000000000000000000000000000000000 00000633: PUSH1 0x44 00000635: DUP3 00000636: ADD 00000637: MSTORE 00000638: PUSH1 0x64 0000063a: ADD 0000063b: PUSH2 0x03fa 0000063e: JUMP 0000063f: JUMPDEST 00000640: PUSH1 0x00 00000642: PUSH2 0x0649 00000645: PUSH2 0x043c 00000648: JUMP 00000649: JUMPDEST 0000064a: SWAP1 0000064b: POP 0000064c: PUSH1 0x00 0000064e: DUP2 0000064f: GT 00000650: PUSH2 0x06b5 00000653: JUMPI 00000654: PUSH1 0x40 00000656: MLOAD 00000657: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 00000678: DUP2 00000679: MSTORE 0000067a: PUSH1 0x20 0000067c: PUSH1 0x04 0000067e: DUP3 0000067f: ADD 00000680: MSTORE 00000681: PUSH1 0x16 00000683: PUSH1 0x24 00000685: DUP3 00000686: ADD 00000687: MSTORE 00000688: PUSH32 0x7370696365206e6f206c6f6e6765722065786973747300000000000000000000 000006a9: PUSH1 0x44 000006ab: DUP3 000006ac: ADD 000006ad: MSTORE 000006ae: PUSH1 0x64 000006b0: ADD 000006b1: PUSH2 0x03fa 000006b4: JUMP 000006b5: JUMPDEST 000006b6: PUSH1 0x00 000006b8: PUSH2 0x06c0 000006bb: DUP4 000006bc: PUSH2 0x058b 000006bf: JUMP 000006c0: JUMPDEST 000006c1: PUSH1 0x40 000006c3: MLOAD 000006c4: PUSH32 0x23b872dd00000000000000000000000000000000000000000000000000000000 000006e5: DUP2 000006e6: MSTORE 000006e7: CALLER 000006e8: PUSH1 0x04 000006ea: DUP3 000006eb: ADD 000006ec: MSTORE 000006ed: ADDRESS 000006ee: PUSH1 0x24 000006f0: DUP3 000006f1: ADD 000006f2: MSTORE 000006f3: PUSH1 0x44 000006f5: DUP2 000006f6: ADD 000006f7: DUP6 000006f8: SWAP1 000006f9: MSTORE 000006fa: SWAP1 000006fb: SWAP2 000006fc: POP 000006fd: PUSH32 0x0000000000000000000000009b6db7597a74602a5a806e33408e7e2dafa58193 0000071e: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00000733: AND 00000734: SWAP1 00000735: PUSH4 0x23b872dd 0000073a: SWAP1 0000073b: PUSH1 0x64 0000073d: ADD 0000073e: PUSH1 0x20 00000740: PUSH1 0x40 00000742: MLOAD 00000743: DUP1 00000744: DUP4 00000745: SUB 00000746: DUP2 00000747: PUSH1 0x00 00000749: DUP8 0000074a: GAS 0000074b: CALL 0000074c: ISZERO 0000074d: DUP1 0000074e: ISZERO 0000074f: PUSH2 0x075c 00000752: JUMPI 00000753: RETURNDATASIZE 00000754: PUSH1 0x00 00000756: DUP1 00000757: RETURNDATACOPY 00000758: RETURNDATASIZE 00000759: PUSH1 0x00 0000075b: REVERT 0000075c: JUMPDEST 0000075d: POP 0000075e: POP 0000075f: POP 00000760: POP 00000761: PUSH1 0x40 00000763: MLOAD 00000764: RETURNDATASIZE 00000765: PUSH1 0x1f 00000767: NOT 00000768: PUSH1 0x1f 0000076a: DUP3 0000076b: ADD 0000076c: AND 0000076d: DUP3 0000076e: ADD 0000076f: DUP1 00000770: PUSH1 0x40 00000772: MSTORE 00000773: POP 00000774: DUP2 00000775: ADD 00000776: SWAP1 00000777: PUSH2 0x0780 0000077a: SWAP2 0000077b: SWAP1 0000077c: PUSH2 0x1167 0000077f: JUMP 00000780: JUMPDEST 00000781: POP 00000782: CALLER 00000783: PUSH1 0x00 00000785: SWAP1 00000786: DUP2 00000787: MSTORE 00000788: PUSH1 0x02 0000078a: PUSH1 0x20 0000078c: MSTORE 0000078d: PUSH1 0x40 0000078f: DUP2 00000790: KECCAK256 00000791: DUP1 00000792: SLOAD 00000793: DUP6 00000794: SWAP3 00000795: SWAP1 00000796: PUSH2 0x07a0 00000799: SWAP1 0000079a: DUP5 0000079b: SWAP1 0000079c: PUSH2 0x1189 0000079f: JUMP 000007a0: JUMPDEST 000007a1: SWAP1 000007a2: SWAP2 000007a3: SSTORE 000007a4: POP 000007a5: POP 000007a6: PUSH1 0x40 000007a8: MLOAD 000007a9: CALLER 000007aa: SWAP1 000007ab: DUP3 000007ac: ISZERO 000007ad: PUSH2 0x08fc 000007b0: MUL 000007b1: SWAP1 000007b2: DUP4 000007b3: SWAP1 000007b4: PUSH1 0x00 000007b6: DUP2 000007b7: DUP2 000007b8: DUP2 000007b9: DUP6 000007ba: DUP9 000007bb: DUP9 000007bc: CALL 000007bd: SWAP4 000007be: POP 000007bf: POP 000007c0: POP 000007c1: POP 000007c2: ISZERO 000007c3: DUP1 000007c4: ISZERO 000007c5: PUSH2 0x07d2 000007c8: JUMPI 000007c9: RETURNDATASIZE 000007ca: PUSH1 0x00 000007cc: DUP1 000007cd: RETURNDATACOPY 000007ce: RETURNDATASIZE 000007cf: PUSH1 0x00 000007d1: REVERT 000007d2: JUMPDEST 000007d3: POP 000007d4: PUSH1 0x40 000007d6: DUP1 000007d7: MLOAD 000007d8: DUP5 000007d9: DUP2 000007da: MSTORE 000007db: PUSH1 0x20 000007dd: DUP2 000007de: ADD 000007df: DUP4 000007e0: SWAP1 000007e1: MSTORE 000007e2: CALLER 000007e3: SWAP2 000007e4: PUSH32 0xf3a670cd3af7d64b488926880889d08a8585a138ff455227af6737339a1ec262 00000805: SWAP2 00000806: ADD 00000807: PUSH1 0x40 00000809: MLOAD 0000080a: DUP1 0000080b: SWAP2 0000080c: SUB 0000080d: SWAP1 0000080e: LOG2 0000080f: POP 00000810: POP 00000811: PUSH2 0x0819 00000814: PUSH1 0x01 00000816: DUP1 00000817: SSTORE 00000818: JUMP 00000819: JUMPDEST 0000081a: POP 0000081b: JUMP 0000081c: JUMPDEST 0000081d: PUSH2 0x0824 00000820: PUSH2 0x08d0 00000823: JUMP 00000824: JUMPDEST 00000825: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 0000083a: DUP2 0000083b: AND 0000083c: PUSH2 0x08c7 0000083f: JUMPI 00000840: PUSH1 0x40 00000842: MLOAD 00000843: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 00000864: DUP2 00000865: MSTORE 00000866: PUSH1 0x20 00000868: PUSH1 0x04 0000086a: DUP3 0000086b: ADD 0000086c: MSTORE 0000086d: PUSH1 0x26 0000086f: PUSH1 0x24 00000871: DUP3 00000872: ADD 00000873: MSTORE 00000874: PUSH32 0x4f776e61626c653a206e6577206f776e657220697320746865207a65726f2061 00000895: PUSH1 0x44 00000897: DUP3 00000898: ADD 00000899: MSTORE 0000089a: PUSH32 0x6464726573730000000000000000000000000000000000000000000000000000 000008bb: PUSH1 0x64 000008bd: DUP3 000008be: ADD 000008bf: MSTORE 000008c0: PUSH1 0x84 000008c2: ADD 000008c3: PUSH2 0x03fa 000008c6: JUMP 000008c7: JUMPDEST 000008c8: PUSH2 0x0819 000008cb: DUP2 000008cc: PUSH2 0x0adf 000008cf: JUMP 000008d0: JUMPDEST 000008d1: PUSH1 0x00 000008d3: SLOAD 000008d4: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000008e9: AND 000008ea: CALLER 000008eb: EQ 000008ec: PUSH2 0x033f 000008ef: JUMPI 000008f0: PUSH1 0x40 000008f2: MLOAD 000008f3: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 00000914: DUP2 00000915: MSTORE 00000916: PUSH1 0x20 00000918: PUSH1 0x04 0000091a: DUP3 0000091b: ADD 0000091c: DUP2 0000091d: SWAP1 0000091e: MSTORE 0000091f: PUSH1 0x24 00000921: DUP3 00000922: ADD 00000923: MSTORE 00000924: PUSH32 0x4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572 00000945: PUSH1 0x44 00000947: DUP3 00000948: ADD 00000949: MSTORE 0000094a: PUSH1 0x64 0000094c: ADD 0000094d: PUSH2 0x03fa 00000950: JUMP 00000951: JUMPDEST 00000952: PUSH1 0x00 00000954: SLOAD 00000955: PUSH21 0x010000000000000000000000000000000000000000 0000096b: SWAP1 0000096c: DIV 0000096d: PUSH1 0xff 0000096f: AND 00000970: PUSH2 0x033f 00000973: JUMPI 00000974: PUSH1 0x40 00000976: MLOAD 00000977: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 00000998: DUP2 00000999: MSTORE 0000099a: PUSH1 0x20 0000099c: PUSH1 0x04 0000099e: DUP3 0000099f: ADD 000009a0: MSTORE 000009a1: PUSH1 0x14 000009a3: PUSH1 0x24 000009a5: DUP3 000009a6: ADD 000009a7: MSTORE 000009a8: PUSH32 0x5061757361626c653a206e6f7420706175736564000000000000000000000000 000009c9: PUSH1 0x44 000009cb: DUP3 000009cc: ADD 000009cd: MSTORE 000009ce: PUSH1 0x64 000009d0: ADD 000009d1: PUSH2 0x03fa 000009d4: JUMP 000009d5: JUMPDEST 000009d6: PUSH2 0x09dd 000009d9: PUSH2 0x0951 000009dc: JUMP 000009dd: JUMPDEST 000009de: PUSH1 0x00 000009e0: DUP1 000009e1: SLOAD 000009e2: PUSH32 0xffffffffffffffffffffff00ffffffffffffffffffffffffffffffffffffffff 00000a03: AND 00000a04: SWAP1 00000a05: SSTORE 00000a06: PUSH32 0x5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa 00000a27: CALLER 00000a28: JUMPDEST 00000a29: PUSH1 0x40 00000a2b: MLOAD 00000a2c: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00000a41: SWAP1 00000a42: SWAP2 00000a43: AND 00000a44: DUP2 00000a45: MSTORE 00000a46: PUSH1 0x20 00000a48: ADD 00000a49: PUSH1 0x40 00000a4b: MLOAD 00000a4c: DUP1 00000a4d: SWAP2 00000a4e: SUB 00000a4f: SWAP1 00000a50: LOG1 00000a51: JUMP 00000a52: JUMPDEST 00000a53: PUSH1 0x40 00000a55: DUP1 00000a56: MLOAD 00000a57: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00000a6c: DUP5 00000a6d: AND 00000a6e: PUSH1 0x24 00000a70: DUP3 00000a71: ADD 00000a72: MSTORE 00000a73: PUSH1 0x44 00000a75: DUP1 00000a76: DUP3 00000a77: ADD 00000a78: DUP5 00000a79: SWAP1 00000a7a: MSTORE 00000a7b: DUP3 00000a7c: MLOAD 00000a7d: DUP1 00000a7e: DUP4 00000a7f: SUB 00000a80: SWAP1 00000a81: SWAP2 00000a82: ADD 00000a83: DUP2 00000a84: MSTORE 00000a85: PUSH1 0x64 00000a87: SWAP1 00000a88: SWAP2 00000a89: ADD 00000a8a: SWAP1 00000a8b: SWAP2 00000a8c: MSTORE 00000a8d: PUSH1 0x20 00000a8f: DUP2 00000a90: ADD 00000a91: DUP1 00000a92: MLOAD 00000a93: PUSH28 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffff 00000ab0: AND 00000ab1: PUSH32 0xa9059cbb00000000000000000000000000000000000000000000000000000000 00000ad2: OR 00000ad3: SWAP1 00000ad4: MSTORE 00000ad5: PUSH2 0x0322 00000ad8: SWAP1 00000ad9: DUP5 00000ada: SWAP1 00000adb: PUSH2 0x0cbb 00000ade: JUMP 00000adf: JUMPDEST 00000ae0: PUSH1 0x00 00000ae2: DUP1 00000ae3: SLOAD 00000ae4: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00000af9: DUP4 00000afa: DUP2 00000afb: AND 00000afc: PUSH32 0xffffffffffffffffffffffff0000000000000000000000000000000000000000 00000b1d: DUP4 00000b1e: AND 00000b1f: DUP2 00000b20: OR 00000b21: DUP5 00000b22: SSTORE 00000b23: PUSH1 0x40 00000b25: MLOAD 00000b26: SWAP2 00000b27: SWAP1 00000b28: SWAP3 00000b29: AND 00000b2a: SWAP3 00000b2b: DUP4 00000b2c: SWAP2 00000b2d: PUSH32 0x8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0 00000b4e: SWAP2 00000b4f: SWAP1 00000b50: LOG3 00000b51: POP 00000b52: POP 00000b53: JUMP 00000b54: JUMPDEST 00000b55: PUSH1 0x00 00000b57: SLOAD 00000b58: PUSH21 0x010000000000000000000000000000000000000000 00000b6e: SWAP1 00000b6f: DIV 00000b70: PUSH1 0xff 00000b72: AND 00000b73: ISZERO 00000b74: PUSH2 0x033f 00000b77: JUMPI 00000b78: PUSH1 0x40 00000b7a: MLOAD 00000b7b: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 00000b9c: DUP2 00000b9d: MSTORE 00000b9e: PUSH1 0x20 00000ba0: PUSH1 0x04 00000ba2: DUP3 00000ba3: ADD 00000ba4: MSTORE 00000ba5: PUSH1 0x10 00000ba7: PUSH1 0x24 00000ba9: DUP3 00000baa: ADD 00000bab: MSTORE 00000bac: PUSH32 0x5061757361626c653a2070617573656400000000000000000000000000000000 00000bcd: PUSH1 0x44 00000bcf: DUP3 00000bd0: ADD 00000bd1: MSTORE 00000bd2: PUSH1 0x64 00000bd4: ADD 00000bd5: PUSH2 0x03fa 00000bd8: JUMP 00000bd9: JUMPDEST 00000bda: PUSH2 0x0be1 00000bdd: PUSH2 0x0b54 00000be0: JUMP 00000be1: JUMPDEST 00000be2: PUSH1 0x00 00000be4: DUP1 00000be5: SLOAD 00000be6: PUSH32 0xffffffffffffffffffffff00ffffffffffffffffffffffffffffffffffffffff 00000c07: AND 00000c08: PUSH21 0x010000000000000000000000000000000000000000 00000c1e: OR 00000c1f: SWAP1 00000c20: SSTORE 00000c21: PUSH32 0x62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a258 00000c42: PUSH2 0x0a28 00000c45: CALLER 00000c46: SWAP1 00000c47: JUMP 00000c48: JUMPDEST 00000c49: PUSH1 0x02 00000c4b: PUSH1 0x01 00000c4d: SLOAD 00000c4e: SUB 00000c4f: PUSH2 0x0cb4 00000c52: JUMPI 00000c53: PUSH1 0x40 00000c55: MLOAD 00000c56: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 00000c77: DUP2 00000c78: MSTORE 00000c79: PUSH1 0x20 00000c7b: PUSH1 0x04 00000c7d: DUP3 00000c7e: ADD 00000c7f: MSTORE 00000c80: PUSH1 0x1f 00000c82: PUSH1 0x24 00000c84: DUP3 00000c85: ADD 00000c86: MSTORE 00000c87: PUSH32 0x5265656e7472616e637947756172643a207265656e7472616e742063616c6c00 00000ca8: PUSH1 0x44 00000caa: DUP3 00000cab: ADD 00000cac: MSTORE 00000cad: PUSH1 0x64 00000caf: ADD 00000cb0: PUSH2 0x03fa 00000cb3: JUMP 00000cb4: JUMPDEST 00000cb5: PUSH1 0x02 00000cb7: PUSH1 0x01 00000cb9: SSTORE 00000cba: JUMP 00000cbb: JUMPDEST 00000cbc: PUSH1 0x00 00000cbe: PUSH2 0x0d1d 00000cc1: DUP3 00000cc2: PUSH1 0x40 00000cc4: MLOAD 00000cc5: DUP1 00000cc6: PUSH1 0x40 00000cc8: ADD 00000cc9: PUSH1 0x40 00000ccb: MSTORE 00000ccc: DUP1 00000ccd: PUSH1 0x20 00000ccf: DUP2 00000cd0: MSTORE 00000cd1: PUSH1 0x20 00000cd3: ADD 00000cd4: PUSH32 0x5361666545524332303a206c6f772d6c6576656c2063616c6c206661696c6564 00000cf5: DUP2 00000cf6: MSTORE 00000cf7: POP 00000cf8: DUP6 00000cf9: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00000d0e: AND 00000d0f: PUSH2 0x0dc7 00000d12: SWAP1 00000d13: SWAP3 00000d14: SWAP2 00000d15: SWAP1 00000d16: PUSH4 0xffffffff 00000d1b: AND 00000d1c: JUMP 00000d1d: JUMPDEST 00000d1e: DUP1 00000d1f: MLOAD 00000d20: SWAP1 00000d21: SWAP2 00000d22: POP 00000d23: ISZERO 00000d24: PUSH2 0x0322 00000d27: JUMPI 00000d28: DUP1 00000d29: DUP1 00000d2a: PUSH1 0x20 00000d2c: ADD 00000d2d: SWAP1 00000d2e: MLOAD 00000d2f: DUP2 00000d30: ADD 00000d31: SWAP1 00000d32: PUSH2 0x0d3b 00000d35: SWAP2 00000d36: SWAP1 00000d37: PUSH2 0x1167 00000d3a: JUMP 00000d3b: JUMPDEST 00000d3c: PUSH2 0x0322 00000d3f: JUMPI 00000d40: PUSH1 0x40 00000d42: MLOAD 00000d43: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 00000d64: DUP2 00000d65: MSTORE 00000d66: PUSH1 0x20 00000d68: PUSH1 0x04 00000d6a: DUP3 00000d6b: ADD 00000d6c: MSTORE 00000d6d: PUSH1 0x2a 00000d6f: PUSH1 0x24 00000d71: DUP3 00000d72: ADD 00000d73: MSTORE 00000d74: PUSH32 0x5361666545524332303a204552433230206f7065726174696f6e20646964206e 00000d95: PUSH1 0x44 00000d97: DUP3 00000d98: ADD 00000d99: MSTORE 00000d9a: PUSH32 0x6f74207375636365656400000000000000000000000000000000000000000000 00000dbb: PUSH1 0x64 00000dbd: DUP3 00000dbe: ADD 00000dbf: MSTORE 00000dc0: PUSH1 0x84 00000dc2: ADD 00000dc3: PUSH2 0x03fa 00000dc6: JUMP 00000dc7: JUMPDEST 00000dc8: PUSH1 0x60 00000dca: PUSH2 0x0dd6 00000dcd: DUP5 00000dce: DUP5 00000dcf: PUSH1 0x00 00000dd1: DUP6 00000dd2: PUSH2 0x0dde 00000dd5: JUMP 00000dd6: JUMPDEST 00000dd7: SWAP5 00000dd8: SWAP4 00000dd9: POP 00000dda: POP 00000ddb: POP 00000ddc: POP 00000ddd: JUMP 00000dde: JUMPDEST 00000ddf: PUSH1 0x60 00000de1: DUP3 00000de2: SELFBALANCE 00000de3: LT 00000de4: ISZERO 00000de5: PUSH2 0x0e70 00000de8: JUMPI 00000de9: PUSH1 0x40 00000deb: MLOAD 00000dec: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 00000e0d: DUP2 00000e0e: MSTORE 00000e0f: PUSH1 0x20 00000e11: PUSH1 0x04 00000e13: DUP3 00000e14: ADD 00000e15: MSTORE 00000e16: PUSH1 0x26 00000e18: PUSH1 0x24 00000e1a: DUP3 00000e1b: ADD 00000e1c: MSTORE 00000e1d: PUSH32 0x416464726573733a20696e73756666696369656e742062616c616e636520666f 00000e3e: PUSH1 0x44 00000e40: DUP3 00000e41: ADD 00000e42: MSTORE 00000e43: PUSH32 0x722063616c6c0000000000000000000000000000000000000000000000000000 00000e64: PUSH1 0x64 00000e66: DUP3 00000e67: ADD 00000e68: MSTORE 00000e69: PUSH1 0x84 00000e6b: ADD 00000e6c: PUSH2 0x03fa 00000e6f: JUMP 00000e70: JUMPDEST 00000e71: PUSH1 0x00 00000e73: DUP1 00000e74: DUP7 00000e75: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00000e8a: AND 00000e8b: DUP6 00000e8c: DUP8 00000e8d: PUSH1 0x40 00000e8f: MLOAD 00000e90: PUSH2 0x0e99 00000e93: SWAP2 00000e94: SWAP1 00000e95: PUSH2 0x11d1 00000e98: JUMP 00000e99: JUMPDEST 00000e9a: PUSH1 0x00 00000e9c: PUSH1 0x40 00000e9e: MLOAD 00000e9f: DUP1 00000ea0: DUP4 00000ea1: SUB 00000ea2: DUP2 00000ea3: DUP6 00000ea4: DUP8 00000ea5: GAS 00000ea6: CALL 00000ea7: SWAP3 00000ea8: POP 00000ea9: POP 00000eaa: POP 00000eab: RETURNDATASIZE 00000eac: DUP1 00000ead: PUSH1 0x00 00000eaf: DUP2 00000eb0: EQ 00000eb1: PUSH2 0x0ed6 00000eb4: JUMPI 00000eb5: PUSH1 0x40 00000eb7: MLOAD 00000eb8: SWAP2 00000eb9: POP 00000eba: PUSH1 0x1f 00000ebc: NOT 00000ebd: PUSH1 0x3f 00000ebf: RETURNDATASIZE 00000ec0: ADD 00000ec1: AND 00000ec2: DUP3 00000ec3: ADD 00000ec4: PUSH1 0x40 00000ec6: MSTORE 00000ec7: RETURNDATASIZE 00000ec8: DUP3 00000ec9: MSTORE 00000eca: RETURNDATASIZE 00000ecb: PUSH1 0x00 00000ecd: PUSH1 0x20 00000ecf: DUP5 00000ed0: ADD 00000ed1: RETURNDATACOPY 00000ed2: PUSH2 0x0edb 00000ed5: JUMP 00000ed6: JUMPDEST 00000ed7: PUSH1 0x60 00000ed9: SWAP2 00000eda: POP 00000edb: JUMPDEST 00000edc: POP 00000edd: SWAP2 00000ede: POP 00000edf: SWAP2 00000ee0: POP 00000ee1: PUSH2 0x0eec 00000ee4: DUP8 00000ee5: DUP4 00000ee6: DUP4 00000ee7: DUP8 00000ee8: PUSH2 0x0ef7 00000eeb: JUMP 00000eec: JUMPDEST 00000eed: SWAP8 00000eee: SWAP7 00000eef: POP 00000ef0: POP 00000ef1: POP 00000ef2: POP 00000ef3: POP 00000ef4: POP 00000ef5: POP 00000ef6: JUMP 00000ef7: JUMPDEST 00000ef8: PUSH1 0x60 00000efa: DUP4 00000efb: ISZERO 00000efc: PUSH2 0x0f8d 00000eff: JUMPI 00000f00: DUP3 00000f01: MLOAD 00000f02: PUSH1 0x00 00000f04: SUB 00000f05: PUSH2 0x0f86 00000f08: JUMPI 00000f09: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00000f1e: DUP6 00000f1f: AND 00000f20: EXTCODESIZE 00000f21: PUSH2 0x0f86 00000f24: JUMPI 00000f25: PUSH1 0x40 00000f27: MLOAD 00000f28: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 00000f49: DUP2 00000f4a: MSTORE 00000f4b: PUSH1 0x20 00000f4d: PUSH1 0x04 00000f4f: DUP3 00000f50: ADD 00000f51: MSTORE 00000f52: PUSH1 0x1d 00000f54: PUSH1 0x24 00000f56: DUP3 00000f57: ADD 00000f58: MSTORE 00000f59: PUSH32 0x416464726573733a2063616c6c20746f206e6f6e2d636f6e7472616374000000 00000f7a: PUSH1 0x44 00000f7c: DUP3 00000f7d: ADD 00000f7e: MSTORE 00000f7f: PUSH1 0x64 00000f81: ADD 00000f82: PUSH2 0x03fa 00000f85: JUMP 00000f86: JUMPDEST 00000f87: POP 00000f88: DUP2 00000f89: PUSH2 0x0dd6 00000f8c: JUMP 00000f8d: JUMPDEST 00000f8e: PUSH2 0x0dd6 00000f91: DUP4 00000f92: DUP4 00000f93: DUP2 00000f94: MLOAD 00000f95: ISZERO 00000f96: PUSH2 0x0fa2 00000f99: JUMPI 00000f9a: DUP2 00000f9b: MLOAD 00000f9c: DUP1 00000f9d: DUP4 00000f9e: PUSH1 0x20 00000fa0: ADD 00000fa1: REVERT 00000fa2: JUMPDEST 00000fa3: DUP1 00000fa4: PUSH1 0x40 00000fa6: MLOAD 00000fa7: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000 00000fc8: DUP2 00000fc9: MSTORE 00000fca: PUSH1 0x04 00000fcc: ADD 00000fcd: PUSH2 0x03fa 00000fd0: SWAP2 00000fd1: SWAP1 00000fd2: PUSH2 0x11ed 00000fd5: JUMP 00000fd6: JUMPDEST 00000fd7: DUP1 00000fd8: CALLDATALOAD 00000fd9: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00000fee: DUP2 00000fef: AND 00000ff0: DUP2 00000ff1: EQ 00000ff2: PUSH2 0x0ffa 00000ff5: JUMPI 00000ff6: PUSH1 0x00 00000ff8: DUP1 00000ff9: REVERT 00000ffa: JUMPDEST 00000ffb: SWAP2 00000ffc: SWAP1 00000ffd: POP 00000ffe: JUMP 00000fff: JUMPDEST 00001000: PUSH1 0x00 00001002: DUP1 00001003: PUSH1 0x40 00001005: DUP4 00001006: DUP6 00001007: SUB 00001008: SLT 00001009: ISZERO 0000100a: PUSH2 0x1012 0000100d: JUMPI 0000100e: PUSH1 0x00 00001010: DUP1 00001011: REVERT 00001012: JUMPDEST 00001013: DUP3 00001014: CALLDATALOAD 00001015: SWAP2 00001016: POP 00001017: PUSH2 0x1022 0000101a: PUSH1 0x20 0000101c: DUP5 0000101d: ADD 0000101e: PUSH2 0x0fd6 00001021: JUMP 00001022: JUMPDEST 00001023: SWAP1 00001024: POP 00001025: SWAP3 00001026: POP 00001027: SWAP3 00001028: SWAP1 00001029: POP 0000102a: JUMP 0000102b: JUMPDEST 0000102c: PUSH1 0x00 0000102e: PUSH1 0x20 00001030: DUP3 00001031: DUP5 00001032: SUB 00001033: SLT 00001034: ISZERO 00001035: PUSH2 0x103d 00001038: JUMPI 00001039: PUSH1 0x00 0000103b: DUP1 0000103c: REVERT 0000103d: JUMPDEST 0000103e: PUSH2 0x1046 00001041: DUP3 00001042: PUSH2 0x0fd6 00001045: JUMP 00001046: JUMPDEST 00001047: SWAP4 00001048: SWAP3 00001049: POP 0000104a: POP 0000104b: POP 0000104c: JUMP 0000104d: JUMPDEST 0000104e: PUSH1 0x00 00001050: DUP1 00001051: PUSH1 0x40 00001053: DUP4 00001054: DUP6 00001055: SUB 00001056: SLT 00001057: ISZERO 00001058: PUSH2 0x1060 0000105b: JUMPI 0000105c: PUSH1 0x00 0000105e: DUP1 0000105f: REVERT 00001060: JUMPDEST 00001061: PUSH2 0x1069 00001064: DUP4 00001065: PUSH2 0x0fd6 00001068: JUMP 00001069: JUMPDEST 0000106a: SWAP5 0000106b: PUSH1 0x20 0000106d: SWAP4 0000106e: SWAP1 0000106f: SWAP4 00001070: ADD 00001071: CALLDATALOAD 00001072: SWAP4 00001073: POP 00001074: POP 00001075: POP 00001076: JUMP 00001077: JUMPDEST 00001078: PUSH1 0x00 0000107a: PUSH1 0x20 0000107c: DUP3 0000107d: DUP5 0000107e: SUB 0000107f: SLT 00001080: ISZERO 00001081: PUSH2 0x1089 00001084: JUMPI 00001085: PUSH1 0x00 00001087: DUP1 00001088: REVERT 00001089: JUMPDEST 0000108a: POP 0000108b: CALLDATALOAD 0000108c: SWAP2 0000108d: SWAP1 0000108e: POP 0000108f: JUMP 00001090: JUMPDEST 00001091: PUSH1 0x00 00001093: PUSH1 0x20 00001095: DUP3 00001096: DUP5 00001097: SUB 00001098: SLT 00001099: ISZERO 0000109a: PUSH2 0x10a2 0000109d: JUMPI 0000109e: PUSH1 0x00 000010a0: DUP1 000010a1: REVERT 000010a2: JUMPDEST 000010a3: POP 000010a4: MLOAD 000010a5: SWAP2 000010a6: SWAP1 000010a7: POP 000010a8: JUMP 000010a9: JUMPDEST 000010aa: PUSH32 0x4e487b7100000000000000000000000000000000000000000000000000000000 000010cb: PUSH1 0x00 000010cd: MSTORE 000010ce: PUSH1 0x11 000010d0: PUSH1 0x04 000010d2: MSTORE 000010d3: PUSH1 0x24 000010d5: PUSH1 0x00 000010d7: REVERT 000010d8: JUMPDEST 000010d9: PUSH1 0x00 000010db: DUP3 000010dc: DUP3 000010dd: LT 000010de: ISZERO 000010df: PUSH2 0x10ea 000010e2: JUMPI 000010e3: PUSH2 0x10ea 000010e6: PUSH2 0x10a9 000010e9: JUMP 000010ea: JUMPDEST 000010eb: POP 000010ec: SUB 000010ed: SWAP1 000010ee: JUMP 000010ef: JUMPDEST 000010f0: PUSH1 0x00 000010f2: DUP2 000010f3: PUSH32 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff 00001114: DIV 00001115: DUP4 00001116: GT 00001117: DUP3 00001118: ISZERO 00001119: ISZERO 0000111a: AND 0000111b: ISZERO 0000111c: PUSH2 0x1127 0000111f: JUMPI 00001120: PUSH2 0x1127 00001123: PUSH2 0x10a9 00001126: JUMP 00001127: JUMPDEST 00001128: POP 00001129: MUL 0000112a: SWAP1 0000112b: JUMP 0000112c: JUMPDEST 0000112d: PUSH1 0x00 0000112f: DUP3 00001130: PUSH2 0x1162 00001133: JUMPI 00001134: PUSH32 0x4e487b7100000000000000000000000000000000000000000000000000000000 00001155: PUSH1 0x00 00001157: MSTORE 00001158: PUSH1 0x12 0000115a: PUSH1 0x04 0000115c: MSTORE 0000115d: PUSH1 0x24 0000115f: PUSH1 0x00 00001161: REVERT 00001162: JUMPDEST 00001163: POP 00001164: DIV 00001165: SWAP1 00001166: JUMP 00001167: JUMPDEST 00001168: PUSH1 0x00 0000116a: PUSH1 0x20 0000116c: DUP3 0000116d: DUP5 0000116e: SUB 0000116f: SLT 00001170: ISZERO 00001171: PUSH2 0x1179 00001174: JUMPI 00001175: PUSH1 0x00 00001177: DUP1 00001178: REVERT 00001179: JUMPDEST 0000117a: DUP2 0000117b: MLOAD 0000117c: DUP1 0000117d: ISZERO 0000117e: ISZERO 0000117f: DUP2 00001180: EQ 00001181: PUSH2 0x1046 00001184: JUMPI 00001185: PUSH1 0x00 00001187: DUP1 00001188: REVERT 00001189: JUMPDEST 0000118a: PUSH1 0x00 0000118c: DUP3 0000118d: NOT 0000118e: DUP3 0000118f: GT 00001190: ISZERO 00001191: PUSH2 0x119c 00001194: JUMPI 00001195: PUSH2 0x119c 00001198: PUSH2 0x10a9 0000119b: JUMP 0000119c: JUMPDEST 0000119d: POP 0000119e: ADD 0000119f: SWAP1 000011a0: JUMP 000011a1: JUMPDEST 000011a2: PUSH1 0x00 000011a4: JUMPDEST 000011a5: DUP4 000011a6: DUP2 000011a7: LT 000011a8: ISZERO 000011a9: PUSH2 0x11bc 000011ac: JUMPI 000011ad: DUP2 000011ae: DUP2 000011af: ADD 000011b0: MLOAD 000011b1: DUP4 000011b2: DUP3 000011b3: ADD 000011b4: MSTORE 000011b5: PUSH1 0x20 000011b7: ADD 000011b8: PUSH2 0x11a4 000011bb: JUMP 000011bc: JUMPDEST 000011bd: DUP4 000011be: DUP2 000011bf: GT 000011c0: ISZERO 000011c1: PUSH2 0x11cb 000011c4: JUMPI 000011c5: PUSH1 0x00 000011c7: DUP5 000011c8: DUP5 000011c9: ADD 000011ca: MSTORE 000011cb: JUMPDEST 000011cc: POP 000011cd: POP 000011ce: POP 000011cf: POP 000011d0: JUMP 000011d1: JUMPDEST 000011d2: PUSH1 0x00 000011d4: DUP3 000011d5: MLOAD 000011d6: PUSH2 0x11e3 000011d9: DUP2 000011da: DUP5 000011db: PUSH1 0x20 000011dd: DUP8 000011de: ADD 000011df: PUSH2 0x11a1 000011e2: JUMP 000011e3: JUMPDEST 000011e4: SWAP2 000011e5: SWAP1 000011e6: SWAP2 000011e7: ADD 000011e8: SWAP3 000011e9: SWAP2 000011ea: POP 000011eb: POP 000011ec: JUMP 000011ed: JUMPDEST 000011ee: PUSH1 0x20 000011f0: DUP2 000011f1: MSTORE 000011f2: PUSH1 0x00 000011f4: DUP3 000011f5: MLOAD 000011f6: DUP1 000011f7: PUSH1 0x20 000011f9: DUP5 000011fa: ADD 000011fb: MSTORE 000011fc: PUSH2 0x120c 000011ff: DUP2 00001200: PUSH1 0x40 00001202: DUP6 00001203: ADD 00001204: PUSH1 0x20 00001206: DUP8 00001207: ADD 00001208: PUSH2 0x11a1 0000120b: JUMP 0000120c: JUMPDEST 0000120d: PUSH1 0x1f 0000120f: ADD 00001210: PUSH32 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0 00001231: AND 00001232: SWAP2 00001233: SWAP1 00001234: SWAP2 00001235: ADD 00001236: PUSH1 0x40 00001238: ADD 00001239: SWAP3 0000123a: SWAP2 0000123b: POP 0000123c: POP 0000123d: JUMP 0000123e: INVALID 0000123f: LOG2 00001240: PUSH5 0x6970667358 00001246: UNKNOWN(0x22) 00001247: SLT 00001248: KECCAK256 00001249: DUP8 0000124a: KECCAK256 0000124b: UNKNOWN(0xB0) 0000124c: DELEGATECALL 0000124d: UNKNOWN(0xDE) 0000124e: PUSH18 0xcc4f92154f6932cd9003cc49f37746c9ca00 00001261: MUL 00001262: UNKNOWN(0x0E) 00001263: UNKNOWN(0xEB) 00001264: LOG1 00001265: JUMP 00001266: COINBASE 00001267: DUP4 00001268: UNKNOWN(0xA5) 00001269: PUSH5 0x736f6c6343 0000126f: STOP 00001270: ADDMOD 00001271: UNKNOWN(0x0F) 00001272: STOP 00001273: CALLER
| Severity | Category | Tool | Title | Confidence | Validated | Confirmed | Details |
|---|---|---|---|---|---|---|---|
| critical | upgradeability | detector | Untrusted DELEGATECALL target reachable | 70 | no | no |
viewtrace_id: 0xd53ce2c7333c69a55c8cc6c79b4e0723a162238d4d304a78a12037a80836700e
validation_json{
"sink": "DELEGATECALL",
"errors": 0,
"status": "unknown",
"attempts": 156,
"trace_id": "0xd53ce2c7333c69a55c8cc6c79b4e0723a162238d4d304a78a12037a80836700e",
"confirmed": false,
"trace_mode": "callTracer",
"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": "0x9358928b",
"selector": "0x9358928b",
"calldata_variants": [
"0x9358928b",
"0x9358928b0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xd39d3f42",
"selector": "0xd39d3f42",
"calldata_variants": [
"0xd39d3f42",
"0xd39d3f420000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xdb006a75",
"selector": "0xdb006a75",
"calldata_variants": [
"0xdb006a75",
"0xdb006a750000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xf2fde38b",
"selector": "0xf2fde38b",
"calldata_variants": [
"0xf2fde38b",
"0xf2fde38b0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x715018a6",
"selector": "0x715018a6",
"calldata_variants": [
"0x715018a6",
"0x715018a60000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x8456cb59",
"selector": "0x8456cb59",
"calldata_variants": [
"0x8456cb59",
"0x8456cb590000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x8da5cb5b",
"selector": "0x8da5cb5b",
"calldata_variants": [
"0x8da5cb5b",
"0x8da5cb5b0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x4b0c9a91",
"selector": "0x4b0c9a91",
"calldata_variants": [
"0x4b0c9a91",
"0x4b0c9a910000000000000000000000000000000000000000000000000000000000000000"
]
}
]
}
evidence_json{
"examples": [
{
"pc": 4684,
"opcode": "DELEGATECALL",
"returndata_checked": null,
"value_expression_category": "n/a",
"target_expression_category": "computed"
}
],
"guards_detected": [],
"delegatecall_count": 1,
"untrusted_delegatecall_count": 1
}
|
| high | other | detector | Untrusted CALL target/value reachable | 60 | no | no |
viewtrace_id: 0xf314504fa41dc629da6902bbf4b1a201492a3e948552dbacbddf10dd296278f0
call_targets:
0x33b6a1294894d66656c2bf77307b5fe1e55c71c7
target_varies:
no
classification:
constant_target
validation_json{
"sink": "CALL",
"errors": 0,
"status": "sink_reached",
"attempts": 1,
"trace_id": "0xf314504fa41dc629da6902bbf4b1a201492a3e948552dbacbddf10dd296278f0",
"confirmed": false,
"trace_mode": "callTracer",
"call_targets": [
"0x33b6a1294894d66656c2bf77307b5fe1e55c71c7"
],
"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": "0x9358928b",
"selector": "0x9358928b",
"calldata_variants": [
"0x9358928b",
"0x9358928b0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xd39d3f42",
"selector": "0xd39d3f42",
"calldata_variants": [
"0xd39d3f42",
"0xd39d3f420000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xdb006a75",
"selector": "0xdb006a75",
"calldata_variants": [
"0xdb006a75",
"0xdb006a750000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xf2fde38b",
"selector": "0xf2fde38b",
"calldata_variants": [
"0xf2fde38b",
"0xf2fde38b0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x715018a6",
"selector": "0x715018a6",
"calldata_variants": [
"0x715018a6",
"0x715018a60000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x8456cb59",
"selector": "0x8456cb59",
"calldata_variants": [
"0x8456cb59",
"0x8456cb590000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x8da5cb5b",
"selector": "0x8da5cb5b",
"calldata_variants": [
"0x8da5cb5b",
"0x8da5cb5b0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x4b0c9a91",
"selector": "0x4b0c9a91",
"calldata_variants": [
"0x4b0c9a91",
"0x4b0c9a910000000000000000000000000000000000000000000000000000000000000000"
]
}
]
}
evidence_json{
"examples": [
{
"pc": 780,
"opcode": "CALL",
"returndata_checked": null,
"value_expression_category": "computed",
"target_expression_category": "computed"
},
{
"pc": 1867,
"opcode": "CALL",
"returndata_checked": null,
"value_expression_category": "computed",
"target_expression_category": "computed"
},
{
"pc": 1980,
"opcode": "CALL",
"returndata_checked": null,
"value_expression_category": "computed",
"target_expression_category": "computed"
}
],
"call_count": 4,
"guards_detected": [],
"untrusted_call_count": 4
}
|
| high | other | detector | ETH value transfer possible | 55 | no | no |
viewtrace_id: 0xf314504fa41dc629da6902bbf4b1a201492a3e948552dbacbddf10dd296278f0
call_targets:
0x33b6a1294894d66656c2bf77307b5fe1e55c71c7
target_varies:
no
classification:
constant_target
validation_json{
"sink": "CALL",
"errors": 0,
"status": "sink_reached",
"attempts": 1,
"trace_id": "0xf314504fa41dc629da6902bbf4b1a201492a3e948552dbacbddf10dd296278f0",
"confirmed": false,
"trace_mode": "callTracer",
"call_targets": [
"0x33b6a1294894d66656c2bf77307b5fe1e55c71c7"
],
"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": "0x9358928b",
"selector": "0x9358928b",
"calldata_variants": [
"0x9358928b",
"0x9358928b0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xd39d3f42",
"selector": "0xd39d3f42",
"calldata_variants": [
"0xd39d3f42",
"0xd39d3f420000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xdb006a75",
"selector": "0xdb006a75",
"calldata_variants": [
"0xdb006a75",
"0xdb006a750000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xf2fde38b",
"selector": "0xf2fde38b",
"calldata_variants": [
"0xf2fde38b",
"0xf2fde38b0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x715018a6",
"selector": "0x715018a6",
"calldata_variants": [
"0x715018a6",
"0x715018a60000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x8456cb59",
"selector": "0x8456cb59",
"calldata_variants": [
"0x8456cb59",
"0x8456cb590000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x8da5cb5b",
"selector": "0x8da5cb5b",
"calldata_variants": [
"0x8da5cb5b",
"0x8da5cb5b0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x4b0c9a91",
"selector": "0x4b0c9a91",
"calldata_variants": [
"0x4b0c9a91",
"0x4b0c9a910000000000000000000000000000000000000000000000000000000000000000"
]
}
]
}
evidence_json{
"examples": [
{
"pc": 780,
"opcode": "CALL",
"returndata_checked": null,
"value_expression_category": "computed",
"target_expression_category": "computed"
},
{
"pc": 1867,
"opcode": "CALL",
"returndata_checked": null,
"value_expression_category": "computed",
"target_expression_category": "computed"
},
{
"pc": 1980,
"opcode": "CALL",
"returndata_checked": null,
"value_expression_category": "computed",
"target_expression_category": "computed"
}
],
"eth_value_calls": 4,
"guards_detected": []
}
|
| medium | upgradeability | cast | DELEGATECALL present | 80 | no | — |
viewevidence_json{
"notes": "delegatecall enables execution in caller context; common in proxies/upgradeable patterns",
"delegatecall_count": 1
}
|