58513970-20d5-4afb-b5db-8bb56f94424a
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 |
|---|---|---|---|---|
| 30468 | report.consolidate | complete | 1 / 1 | 3 months ago |
| 103667 | artifact.fetch | failed | 1 / 3 | 1 week ago |
| 103668 | tool.cast_disasm | complete | 1 / 3 | 1 week ago |
| 103669 | analysis.bundle | complete | 1 / 3 | 1 week ago |
| 103670 | capability.graph | complete | 1 / 3 | 1 week ago |
| 103671 | detector.run | complete | 1 / 3 | 1 week ago |
| 103672 | validation.fork | complete | 1 / 3 | 1 week ago |
No slither job recorded yet.
[codex:1287140] OpenAI Codex v0.77.0 (research preview)
[codex:1287140] --------
[codex:1287140] workdir: /tmp/codex-multi-_m2ihdxb
[codex:1287140] model: gpt-5.2-codex
[codex:1287140] provider: openai
[codex:1287140] approval: never
[codex:1287140] sandbox: read-only
[codex:1287140] reasoning effort: xhigh
[codex:1287140] reasoning summaries: auto
[codex:1287140] session id: 019b691c-57f5-77c0-934b-f8677b84a306
[codex:1287140] --------
[codex:1287140] user
[codex:1287140] You are a security auditor. Audit this Solidity codebase for exploitable vulnerabilities.
[codex:1287140] Focus on: reentrancy, access control, upgradeability/proxy issues, signature validation, oracle manipulation,
[codex:1287140] accounting/invariant breaks, external call patterns, unchecked return values, and dangerous delegatecall.
[codex:1287140]
[codex:1287140] Scope rules:
[codex:1287140] - You MUST fully read `AUDIT_BUNDLE.txt` before concluding. It contains the complete contents of all first-party `contracts/**/*.sol` files.
[codex:1287140] - Treat `lib/` and `@openzeppelin/` as third-party dependencies; skip them unless there is a concrete misuse angle in first-party code.
[codex:1287140]
[codex:1287140] Output MUST be valid JSON matching the provided schema.
[codex:1287140] - If you find nothing meaningful: set no_findings=true and findings=[].
[codex:1287140] - Otherwise: set no_findings=false and include findings with severity/category/title and file/line locations when possible.
[codex:1287140]
[codex:1287140] Output constraints (IMPORTANT):
[codex:1287140] - severity MUST be exactly one of: info, low, medium, high, critical (lowercase).
[codex:1287140] - category MUST be exactly one of: access_control, reentrancy, math, oracle, upgradeability, auth, other.
[codex:1287140] mcp startup: no servers
[codex:1287140]
[codex:1287140] thinking
[codex:1287140] **Checking for invoked skills and reading AUDIT_BUNDLE.txt**
[codex:1287140] exec
[codex:1287140] /bin/bash -lc ls in /tmp/codex-multi-_m2ihdxb succeeded in 5ms:
[codex:1287140] AUDIT_BUNDLE.txt
[codex:1287140] codex-output-schema.json
[codex:1287140] contracts
[codex:1287140] exec
[codex:1287140] /bin/bash -lc 'cat AUDIT_BUNDLE.txt' in /tmp/codex-multi-_m2ihdxb succeeded in 5ms:
[codex:1287140] This file concatenates the full contents of first-party Solidity sources for auditing.
[codex:1287140]
[codex:1287140] ================================================================================
[codex:1287140] FILE: contracts/node_modules/@cosmos/solidity-ibc-eureka/contracts/errors/IEscrowErrors.sol
[codex:1287140] ================================================================================
[codex:1287140] // SPDX-License-Identifier: MIT
[codex:1287140] pragma solidity ^0.8.28;
[codex:1287140]
[codex:1287140] interface IEscrowErrors {
[codex:1287140] /// @notice Unauthorized function call
[codex:1287140] /// @param caller The caller of the function
[codex:1287140] error EscrowUnauthorized(address caller);
[codex:1287140] }
[codex:1287140]
[codex:1287140] ================================================================================
[codex:1287140] FILE: contracts/node_modules/@cosmos/solidity-ibc-eureka/contracts/errors/IRateLimitErrors.sol
[codex:1287140] ================================================================================
[codex:1287140] // SPDX-License-Identifier: MIT
[codex:1287140] pragma solidity ^0.8.28;
[codex:1287140]
[codex:1287140]
[codex:1287140] thinking
[codex:1287140] **Distinguishing first-party contracts from dependencies**
[codex:1287140] exec
[codex:1287140] /bin/bash -lc 'rg -n "''^FILE:" AUDIT_BUNDLE.txt' in /tmp/codex-multi-_m2ihdxb succeeded in 6ms:
[codex:1287140] 4:FILE: contracts/node_modules/@cosmos/solidity-ibc-eureka/contracts/errors/IEscrowErrors.sol
[codex:1287140] 16:FILE: contracts/node_modules/@cosmos/solidity-ibc-eureka/contracts/errors/IRateLimitErrors.sol
[codex:1287140] 29:FILE: contracts/node_modules/@cosmos/solidity-ibc-eureka/contracts/interfaces/IEscrow.sol
[codex:1287140] 64:FILE: contracts/node_modules/@cosmos/solidity-ibc-eureka/contracts/interfaces/IICS20Transfer.sol
[codex:1287140] 197:FILE: contracts/node_modules/@cosmos/solidity-ibc-eureka/contracts/interfaces/IRateLimit.sol
[codex:1287140] 235:FILE: contracts/node_modules/@cosmos/solidity-ibc-eureka/contracts/msgs/IICS20TransferMsgs.sol
[codex:1287140] 277:FILE: contracts/node_modules/@cosmos/solidity-ibc-eureka/contracts/utils/Escrow.sol
[codex:1287140] 364:FILE: contracts/node_modules/@cosmos/solidity-ibc-eureka/contracts/utils/RateLimitUpgradeable.sol
[codex:1287140] 490:FILE: contracts/node_modules/@openzeppelin/contracts/access/IAccessControl.sol
[codex:1287140] 592:FILE: contracts/node_modules/@openzeppelin/contracts/interfaces/IERC1363.sol
[codex:1287140] 682:FILE: contracts/node_modules/@openzeppelin/contracts/interfaces/IERC165.sol
[codex:1287140] 692:FILE: contracts/node_modules/@openzeppelin/contracts/interfaces/IERC20.sol
[codex:1287140] 702:FILE: contracts/node_modules/@openzeppelin/contracts/token/ERC20/IERC20.sol
[codex:1287140] 785:FILE: contracts/node_modules/@openzeppelin/contracts/token/ERC20/utils/SafeERC20.sol
[codex:1287140] 987:FILE: contracts/node_modules/@openzeppelin/contracts/utils/introspection/IERC165.sol
[codex:1287140] 1016:FILE: contracts/node_modules/@openzeppelin/contracts-upgradeable/access/AccessControlUpgradeable.sol
[codex:1287140] 1253:FILE: contracts/node_modules/@openzeppelin/contracts-upgradeable/proxy/utils/Initializable.sol
[codex:1287140] 1485:FILE: contracts/node_modules/@openzeppelin/contracts-upgradeable/utils/ContextUpgradeable.sol
[codex:1287140] 1523:FILE: contracts/node_modules/@openzeppelin/contracts-upgradeable/utils/introspection/ERC165Upgradeable.sol
[codex:1287140] 1560:FILE: contracts/node_modules/@uniswap/permit2/src/interfaces/IEIP712.sol
[codex:1287140]
[codex:1287140] thinking
[codex:1287140] **Assessing ownership of contract files**
[codex:1287140] exec
[codex:1287140] /bin/bash -lc "sed -n '360,520p' AUDIT_BUNDLE.txt" in /tmp/codex-multi-_m2ihdxb succeeded in 6ms:
[codex:1287140] }
[codex:1287140] }
[codex:1287140]
[codex:1287140] ================================================================================
[codex:1287140] FILE: contracts/node_modules/@cosmos/solidity-ibc-eureka/contracts/utils/RateLimitUpgradeable.sol
[codex:1287140] ================================================================================
[codex:1287140] // SPDX-License-Identifier: MIT
[codex:1287140] pragma solidity ^0.8.28;
[codex:1287140]
[codex:1287140] import { AccessControlUpgradeable } from "@openzeppelin-upgradeable/access/AccessControlUpgradeable.sol";
[codex:1287140] import { IRateLimitErrors } from "../errors/IRateLimitErrors.sol";
[codex:1287140] import { IRateLimit } from "../interfaces/IRateLimit.sol";
[codex:1287140]
[codex:1287140] /// @title Rate Limit Upgradeable contract
[codex:1287140] /// @notice This contract is an abstract contract for adding rate limiting to escrow contracts.
[codex:1287140] /// @dev Rate limits are set per token address by the rate limiter role and are enforced per day.
[codex:1287140] /// @dev Rate limits are applied to tokens leaving the escrow contract.
[codex:1287140] abstract contract RateLimitUpgradeable is IRateLimitErrors, IRateLimit, AccessControlUpgradeable {
[codex:1287140] /// @notice Storage of the RateLimit contract
[codex:1287140] /// @dev It's implemented on a custom ERC-7201 namespace to reduce the risk of storage collisions when using with
[codex:1287140]
[codex:1287140] thinking
[codex:1287140] **Analyzing Escrow contract security**
[codex:1287140] exec
[codex:1287140] /bin/bash -lc "sed -n '1016,1135p' AUDIT_BUNDLE.txt" in /tmp/codex-multi-_m2ihdxb succeeded in 5ms:
[codex:1287140] FILE: contracts/node_modules/@openzeppelin/contracts-upgradeable/access/AccessControlUpgradeable.sol
[codex:1287140] ================================================================================
[codex:1287140] // SPDX-License-Identifier: MIT
[codex:1287140] // OpenZeppelin Contracts (last updated v5.0.0) (access/AccessControl.sol)
[codex:1287140]
[codex:1287140] pragma solidity ^0.8.20;
[codex:1287140]
[codex:1287140] import {IAccessControl} from "@openzeppelin/contracts/access/IAccessControl.sol";
[codex:1287140] import {ContextUpgradeable} from "../utils/ContextUpgradeable.sol";
[codex:1287140] import {ERC165Upgradeable} from "../utils/introspection/ERC165Upgradeable.sol";
[codex:1287140] import {Initializable} from "../proxy/utils/Initializable.sol";
[codex:1287140]
[codex:1287140] /**
[codex:1287140] * @dev Contract module that allows children to implement role-based access
[codex:1287140] * control mechanisms. This is a lightweight version that doesn't allow enumerating role
[codex:1287140] * members except through off-chain means by accessing the contract event logs. Some
[codex:1287140] * applications may benefit from on-chain enumerability, for those cases see
[codex:1287140] * {AccessControlEnumerable}.
[codex:1287140] *
[codex:1287140] * Roles are referred to by their `bytes32` identifier. These should be exposed
[codex:1287140]
[codex:1287140] thinking
[codex:1287140] **Analyzing access control and potential risks**
[codex:1287140]
[codex:1287140] I’m examining how roles and permissions are managed between Escrow, RateLimitUpgradeable, and ICS20 contracts, focusing on role assignment, external calls for authorization, and the implications of trusting ICS20. There’s careful scrutiny of initialization logic, reentrancy risks from external calls, and subtle behaviors around Solidity’s custom errors and grantRole functions. It’s interesting to see potential issues mostly hinge on trusting ICS20, rather than outright bugs, and how design choices like timestamp-based rate limiting and external authorization checks shape security.
[codex:1287140] exec
[codex:1287140] /bin/bash -lc 'rg --files -g "*.sol"' in /tmp/codex-multi-_m2ihdxb succeeded in 11ms:
[codex:1287140] contracts/node_modules/@openzeppelin/contracts-upgradeable/proxy/utils/Initializable.sol
[codex:1287140] contracts/node_modules/@openzeppelin/contracts-upgradeable/utils/ContextUpgradeable.sol
[codex:1287140] contracts/node_modules/@openzeppelin/contracts-upgradeable/access/AccessControlUpgradeable.sol
[codex:1287140] contracts/node_modules/@openzeppelin/contracts-upgradeable/utils/introspection/ERC165Upgradeable.sol
[codex:1287140] contracts/node_modules/@uniswap/permit2/src/interfaces/ISignatureTransfer.sol
[codex:1287140] contracts/node_modules/@uniswap/permit2/src/interfaces/IEIP712.sol
[codex:1287140] contracts/node_modules/@openzeppelin/contracts/interfaces/IERC1363.sol
[codex:1287140] contracts/node_modules/@openzeppelin/contracts/interfaces/IERC20.sol
[codex:1287140] contracts/node_modules/@openzeppelin/contracts/interfaces/IERC165.sol
[codex:1287140] contracts/node_modules/@openzeppelin/contracts/access/IAccessControl.sol
[codex:1287140] contracts/node_modules/@openzeppelin/contracts/token/ERC20/IERC20.sol
[codex:1287140] contracts/node_modules/@cosmos/solidity-ibc-eureka/contracts/utils/Escrow.sol
[codex:1287140] contracts/node_modules/@cosmos/solidity-ibc-eureka/contracts/utils/RateLimitUpgradeable.sol
[codex:1287140] contracts/node_modules/@cosmos/solidity-ibc-eureka/contracts/interfaces/IRateLimit.sol
[codex:1287140] contracts/node_modules/@cosmos/solidity-ibc-eureka/contracts/interfaces/IEscrow.sol
[codex:1287140] contracts/node_modules/@cosmos/solidity-ibc-eureka/contracts/interfaces/IICS20Transfer.sol
[codex:1287140] contracts/node_modules/@cosmos/solidity-ibc-eureka/contracts/errors/IRateLimitErrors.sol
[codex:1287140] contracts/node_modules/@cosmos/solidity-ibc-eureka/contracts/errors/IEscrowErrors.sol
[codex:1287140] contracts/node_modules/@openzeppelin/contracts/utils/introspection/IERC165.sol
[codex:1287140] contracts/node_modules/@cosmos/solidity-ibc-eureka/contracts/msgs/IICS20TransferMsgs.sol
[codex:1287140]
[codex:1287140] thinking
[codex:1287140] **Evaluating escrow and rate limit contracts**
[codex:1287140] exec
[codex:1287140] /bin/bash -lc 'cat codex-output-schema.json' in /tmp/codex-multi-_m2ihdxb succeeded in 6ms:
[codex:1287140] {"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:1287140]
[codex:1287140]
[codex:1287140] thinking
[codex:1287140] **Assessing upgradeable contract risks**
[codex:1287140] thinking
[codex:1287140] **Finalizing audit report JSON**
[codex:1287140]
[codex:1287140] I'll summarize that the Escrow and RateLimitUpgradeable contracts show no exploitable issues, confirm third-party dependencies are excluded from findings, and produce a valid JSON output with no findings and a concise summary.
[codex:1287140] codex
[codex:1287140] {"no_findings":true,"summary":"Reviewed the scoped first-party contracts in AUDIT_BUNDLE.txt (notably `contracts/node_modules/@cosmos/solidity-ibc-eureka/contracts/utils/Escrow.sol` and `contracts/node_modules/@cosmos/solidity-ibc-eureka/contracts/utils/RateLimitUpgradeable.sol`) and found no exploitable reentrancy, access control, upgradeability, signature, oracle, or accounting issues in the provided code.","findings":[]}
[codex:1287140] tokens used
[codex:1287140] 30,957
[codex:1287140] {"no_findings":true,"summary":"Reviewed the scoped first-party contracts in AUDIT_BUNDLE.txt (notably `contracts/node_modules/@cosmos/solidity-ibc-eureka/contracts/utils/Escrow.sol` and `contracts/node_modules/@cosmos/solidity-ibc-eureka/contracts/utils/RateLimitUpgradeable.sol`) and found no exploitable reentrancy, access control, upgradeability, signature, oracle, or accounting issues in the provided code.","findings":[]}
{
"codex": {
"ran_at": "2025-12-29T08:01:12.459976+00:00",
"returncode": 0
},
"summary": "Reviewed the scoped first-party contracts in AUDIT_BUNDLE.txt (notably `contracts/node_modules/@cosmos/solidity-ibc-eureka/contracts/utils/Escrow.sol` and `contracts/node_modules/@cosmos/solidity-ibc-eureka/contracts/utils/RateLimitUpgradeable.sol`) and found no exploitable reentrancy, access control, upgradeability, signature, oracle, or accounting issues in the provided code.",
"raw_final": {
"summary": "Reviewed the scoped first-party contracts in AUDIT_BUNDLE.txt (notably `contracts/node_modules/@cosmos/solidity-ibc-eureka/contracts/utils/Escrow.sol` and `contracts/node_modules/@cosmos/solidity-ibc-eureka/contracts/utils/RateLimitUpgradeable.sol`) and found no exploitable reentrancy, access control, upgradeability, signature, oracle, or accounting issues in the provided code.",
"findings": [],
"no_findings": true
},
"no_findings": true,
"schema_version": 1
}
00000000: PUSH1 0x80 00000002: DUP1 00000003: PUSH1 0x40 00000005: MSTORE 00000006: PUSH1 0x04 00000008: CALLDATASIZE 00000009: LT 0000000a: ISZERO 0000000b: PUSH2 0x0012 0000000e: JUMPI 0000000f: PUSH0 00000010: DUP1 00000011: REVERT 00000012: JUMPDEST 00000013: PUSH0 00000014: CALLDATALOAD 00000015: PUSH1 0xe0 00000017: SHR 00000018: SWAP1 00000019: DUP2 0000001a: PUSH4 0x01ffc9a7 0000001f: EQ 00000020: PUSH2 0x0b1d 00000023: JUMPI 00000024: POP 00000025: DUP1 00000026: PUSH4 0x0779afe6 0000002b: EQ 0000002c: PUSH2 0x09e4 0000002f: JUMPI 00000030: DUP1 00000031: PUSH4 0x0b0aee69 00000036: EQ 00000037: PUSH2 0x0980 0000003a: JUMPI 0000003b: DUP1 0000003c: PUSH4 0x248a9ca3 00000041: EQ 00000042: PUSH2 0x092e 00000045: JUMPI 00000046: DUP1 00000047: PUSH4 0x2f2ff15d 0000004c: EQ 0000004d: PUSH2 0x08d1 00000050: JUMPI 00000051: DUP1 00000052: PUSH4 0x36568abe 00000057: EQ 00000058: PUSH2 0x0867 0000005b: JUMPI 0000005c: DUP1 0000005d: PUSH4 0x40f5d8e1 00000062: EQ 00000063: PUSH2 0x0780 00000066: JUMPI 00000067: DUP1 00000068: PUSH4 0x91d14854 0000006d: EQ 0000006e: PUSH2 0x070a 00000071: JUMPI 00000072: DUP1 00000073: PUSH4 0x9a61e8e1 00000078: EQ 00000079: PUSH2 0x06b8 0000007c: JUMPI 0000007d: DUP1 0000007e: PUSH4 0xa217fddf 00000083: EQ 00000084: PUSH2 0x069e 00000087: JUMPI 00000088: DUP1 00000089: PUSH4 0xb4f22eb7 0000008e: EQ 0000008f: PUSH2 0x062d 00000092: JUMPI 00000093: DUP1 00000094: PUSH4 0xc4d66de8 00000099: EQ 0000009a: PUSH2 0x03a8 0000009d: JUMPI 0000009e: DUP1 0000009f: PUSH4 0xc68f0c71 000000a4: EQ 000000a5: PUSH2 0x02b6 000000a8: JUMPI 000000a9: DUP1 000000aa: PUSH4 0xd34a3fd9 000000af: EQ 000000b0: PUSH2 0x01cf 000000b3: JUMPI 000000b4: DUP1 000000b5: PUSH4 0xd547741f 000000ba: EQ 000000bb: PUSH2 0x016b 000000be: JUMPI 000000bf: DUP1 000000c0: PUSH4 0xe60d6462 000000c5: EQ 000000c6: PUSH2 0x0131 000000c9: JUMPI 000000ca: PUSH4 0xf11d5ea9 000000cf: EQ 000000d0: PUSH2 0x00d7 000000d3: JUMPI 000000d4: PUSH0 000000d5: DUP1 000000d6: REVERT 000000d7: JUMPDEST 000000d8: CALLVALUE 000000d9: PUSH2 0x012d 000000dc: JUMPI 000000dd: PUSH1 0x20 000000df: PUSH1 0x03 000000e1: NOT 000000e2: CALLDATASIZE 000000e3: ADD 000000e4: SLT 000000e5: PUSH2 0x012d 000000e8: JUMPI 000000e9: PUSH2 0x00f8 000000ec: PUSH2 0x00f3 000000ef: PUSH2 0x0bde 000000f2: JUMP 000000f3: JUMPDEST 000000f4: PUSH2 0x1374 000000f7: JUMP 000000f8: JUMPDEST 000000f9: PUSH0 000000fa: MSTORE 000000fb: PUSH32 0xcb05b6cb8e6c87c443cb04d44193d7d46d51c1198725a0ee3478d5baa736c101 0000011c: PUSH1 0x20 0000011e: MSTORE 0000011f: PUSH1 0x20 00000121: PUSH1 0x40 00000123: PUSH0 00000124: KECCAK256 00000125: SLOAD 00000126: PUSH1 0x40 00000128: MLOAD 00000129: SWAP1 0000012a: DUP2 0000012b: MSTORE 0000012c: RETURN 0000012d: JUMPDEST 0000012e: PUSH0 0000012f: DUP1 00000130: REVERT 00000131: JUMPDEST 00000132: CALLVALUE 00000133: PUSH2 0x012d 00000136: JUMPI 00000137: PUSH0 00000138: PUSH1 0x03 0000013a: NOT 0000013b: CALLDATASIZE 0000013c: ADD 0000013d: SLT 0000013e: PUSH2 0x012d 00000141: JUMPI 00000142: PUSH1 0x20 00000144: PUSH1 0x40 00000146: MLOAD 00000147: PUSH32 0x15975e67e85433b86162c65eeaf7d19d2b619671751d1f6d4d320dc195d465db 00000168: DUP2 00000169: MSTORE 0000016a: RETURN 0000016b: JUMPDEST 0000016c: CALLVALUE 0000016d: PUSH2 0x012d 00000170: JUMPI 00000171: PUSH1 0x40 00000173: PUSH1 0x03 00000175: NOT 00000176: CALLDATASIZE 00000177: ADD 00000178: SLT 00000179: PUSH2 0x012d 0000017c: JUMPI 0000017d: PUSH2 0x01cd 00000180: PUSH1 0x04 00000182: CALLDATALOAD 00000183: PUSH2 0x018a 00000186: PUSH2 0x0bbb 00000189: JUMP 0000018a: JUMPDEST 0000018b: SWAP1 0000018c: PUSH2 0x01c8 0000018f: PUSH2 0x01c3 00000192: DUP3 00000193: PUSH0 00000194: MSTORE 00000195: PUSH32 0x02dd7bc7dec4dceedda775e58dd541e08a116c6c53815c0bd028192f7b626800 000001b6: PUSH1 0x20 000001b8: MSTORE 000001b9: PUSH1 0x01 000001bb: PUSH1 0x40 000001bd: PUSH0 000001be: KECCAK256 000001bf: ADD 000001c0: SLOAD 000001c1: SWAP1 000001c2: JUMP 000001c3: JUMPDEST 000001c4: PUSH2 0x0dd9 000001c7: JUMP 000001c8: JUMPDEST 000001c9: PUSH2 0x117c 000001cc: JUMP 000001cd: JUMPDEST 000001ce: STOP 000001cf: JUMPDEST 000001d0: CALLVALUE 000001d1: PUSH2 0x012d 000001d4: JUMPI 000001d5: PUSH1 0x40 000001d7: PUSH1 0x03 000001d9: NOT 000001da: CALLDATASIZE 000001db: ADD 000001dc: SLT 000001dd: PUSH2 0x012d 000001e0: JUMPI 000001e1: PUSH2 0x01e8 000001e4: PUSH2 0x0bde 000001e7: JUMP 000001e8: JUMPDEST 000001e9: CALLER 000001ea: PUSH0 000001eb: SWAP1 000001ec: DUP2 000001ed: MSTORE 000001ee: PUSH32 0x9cc214e773bfb12ee113956ef0921bc635e2f55453601bf5624331c946d7c8cb 0000020f: PUSH1 0x20 00000211: MSTORE 00000212: PUSH1 0x40 00000214: SWAP1 00000215: KECCAK256 00000216: SLOAD 00000217: PUSH1 0xff 00000219: AND 0000021a: ISZERO 0000021b: PUSH2 0x0266 0000021e: JUMPI 0000021f: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00000234: AND 00000235: PUSH0 00000236: MSTORE 00000237: PUSH32 0xcb05b6cb8e6c87c443cb04d44193d7d46d51c1198725a0ee3478d5baa736c100 00000258: PUSH1 0x20 0000025a: MSTORE 0000025b: PUSH1 0x24 0000025d: CALLDATALOAD 0000025e: PUSH1 0x40 00000260: PUSH0 00000261: KECCAK256 00000262: SSTORE 00000263: PUSH0 00000264: DUP1 00000265: RETURN 00000266: JUMPDEST 00000267: PUSH32 0xe2517d3f00000000000000000000000000000000000000000000000000000000 00000288: PUSH0 00000289: MSTORE 0000028a: CALLER 0000028b: PUSH1 0x04 0000028d: MSTORE 0000028e: PUSH32 0x15975e67e85433b86162c65eeaf7d19d2b619671751d1f6d4d320dc195d465db 000002af: PUSH1 0x24 000002b1: MSTORE 000002b2: PUSH1 0x44 000002b4: PUSH0 000002b5: REVERT 000002b6: JUMPDEST 000002b7: CALLVALUE 000002b8: PUSH2 0x012d 000002bb: JUMPI 000002bc: PUSH1 0x20 000002be: PUSH1 0x03 000002c0: NOT 000002c1: CALLDATASIZE 000002c2: ADD 000002c3: SLT 000002c4: PUSH2 0x012d 000002c7: JUMPI 000002c8: PUSH2 0x02cf 000002cb: PUSH2 0x0bde 000002ce: JUMP 000002cf: JUMPDEST 000002d0: PUSH1 0x24 000002d2: PUSH1 0x20 000002d4: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000002e9: PUSH32 0x537eb9d931756581e7ea6f7811162c646321946650ac0ac6bf83b24932e41600 0000030a: SLOAD 0000030b: AND 0000030c: PUSH1 0x40 0000030e: MLOAD 0000030f: SWAP3 00000310: DUP4 00000311: DUP1 00000312: SWAP3 00000313: PUSH32 0xf17a7e6600000000000000000000000000000000000000000000000000000000 00000334: DUP3 00000335: MSTORE 00000336: CALLER 00000337: PUSH1 0x04 00000339: DUP4 0000033a: ADD 0000033b: MSTORE 0000033c: GAS 0000033d: STATICCALL 0000033e: SWAP1 0000033f: DUP2 00000340: ISZERO 00000341: PUSH2 0x039d 00000344: JUMPI 00000345: PUSH0 00000346: SWAP2 00000347: PUSH2 0x035e 0000034a: JUMPI 0000034b: JUMPDEST 0000034c: PUSH2 0x01cd 0000034f: DUP4 00000350: PUSH2 0x0359 00000353: CALLER 00000354: DUP6 00000355: PUSH2 0x0c01 00000358: JUMP 00000359: JUMPDEST 0000035a: PUSH2 0x107a 0000035d: JUMP 0000035e: JUMPDEST 0000035f: SWAP1 00000360: POP 00000361: PUSH1 0x20 00000363: DUP2 00000364: RETURNDATASIZE 00000365: PUSH1 0x20 00000367: GT 00000368: PUSH2 0x0395 0000036b: JUMPI 0000036c: JUMPDEST 0000036d: DUP2 0000036e: PUSH2 0x0379 00000371: PUSH1 0x20 00000373: SWAP4 00000374: DUP4 00000375: PUSH2 0x0d6b 00000378: JUMP 00000379: JUMPDEST 0000037a: DUP2 0000037b: ADD 0000037c: SUB 0000037d: SLT 0000037e: PUSH2 0x012d 00000381: JUMPI 00000382: MLOAD 00000383: SWAP1 00000384: DUP2 00000385: ISZERO 00000386: ISZERO 00000387: DUP3 00000388: SUB 00000389: PUSH2 0x012d 0000038c: JUMPI 0000038d: SWAP1 0000038e: PUSH2 0x0359 00000391: PUSH2 0x034b 00000394: JUMP 00000395: JUMPDEST 00000396: RETURNDATASIZE 00000397: SWAP2 00000398: POP 00000399: PUSH2 0x036c 0000039c: JUMP 0000039d: JUMPDEST 0000039e: PUSH1 0x40 000003a0: MLOAD 000003a1: RETURNDATASIZE 000003a2: PUSH0 000003a3: DUP3 000003a4: RETURNDATACOPY 000003a5: RETURNDATASIZE 000003a6: SWAP1 000003a7: REVERT 000003a8: JUMPDEST 000003a9: CALLVALUE 000003aa: PUSH2 0x012d 000003ad: JUMPI 000003ae: PUSH1 0x20 000003b0: PUSH1 0x03 000003b2: NOT 000003b3: CALLDATASIZE 000003b4: ADD 000003b5: SLT 000003b6: PUSH2 0x012d 000003b9: JUMPI 000003ba: PUSH2 0x03c1 000003bd: PUSH2 0x0bde 000003c0: JUMP 000003c1: JUMPDEST 000003c2: PUSH32 0xf0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a00 000003e3: SLOAD 000003e4: PUSH1 0xff 000003e6: DUP2 000003e7: PUSH1 0x40 000003e9: SHR 000003ea: AND 000003eb: ISZERO 000003ec: SWAP2 000003ed: PUSH8 0xffffffffffffffff 000003f6: DUP3 000003f7: AND 000003f8: DUP1 000003f9: ISZERO 000003fa: SWAP1 000003fb: DUP2 000003fc: PUSH2 0x0625 000003ff: JUMPI 00000400: JUMPDEST 00000401: PUSH1 0x01 00000403: EQ 00000404: SWAP1 00000405: DUP2 00000406: PUSH2 0x061b 00000409: JUMPI 0000040a: JUMPDEST 0000040b: ISZERO 0000040c: SWAP1 0000040d: DUP2 0000040e: PUSH2 0x0612 00000411: JUMPI 00000412: JUMPDEST 00000413: POP 00000414: PUSH2 0x05ea 00000417: JUMPI 00000418: DUP2 00000419: DUP4 0000041a: PUSH1 0x01 0000041c: PUSH32 0xffffffffffffffffffffffffffffffffffffffffffffffff0000000000000000 0000043d: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00000452: SWAP6 00000453: AND 00000454: OR 00000455: PUSH32 0xf0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a00 00000476: SSTORE 00000477: PUSH2 0x0595 0000047a: JUMPI 0000047b: JUMPDEST 0000047c: POP 0000047d: PUSH2 0x0484 00000480: PUSH2 0x13c3 00000483: JUMP 00000484: JUMPDEST 00000485: PUSH2 0x048c 00000488: PUSH2 0x13c3 0000048b: JUMP 0000048c: JUMPDEST 0000048d: PUSH2 0x0494 00000490: PUSH2 0x13c3 00000493: JUMP 00000494: JUMPDEST 00000495: AND 00000496: PUSH32 0xffffffffffffffffffffffff0000000000000000000000000000000000000000 000004b7: PUSH32 0x537eb9d931756581e7ea6f7811162c646321946650ac0ac6bf83b24932e41600 000004d8: SLOAD 000004d9: AND 000004da: OR 000004db: PUSH32 0x537eb9d931756581e7ea6f7811162c646321946650ac0ac6bf83b24932e41600 000004fc: SSTORE 000004fd: PUSH2 0x0502 00000500: JUMPI 00000501: STOP 00000502: JUMPDEST 00000503: PUSH32 0xffffffffffffffffffffffffffffffffffffffffffffff00ffffffffffffffff 00000524: PUSH32 0xf0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a00 00000545: SLOAD 00000546: AND 00000547: PUSH32 0xf0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a00 00000568: SSTORE 00000569: PUSH32 0xc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d2 0000058a: PUSH1 0x20 0000058c: PUSH1 0x40 0000058e: MLOAD 0000058f: PUSH1 0x01 00000591: DUP2 00000592: MSTORE 00000593: LOG1 00000594: STOP 00000595: JUMPDEST 00000596: PUSH32 0xffffffffffffffffffffffffffffffffffffffffffffff000000000000000000 000005b7: AND 000005b8: PUSH9 0x010000000000000001 000005c2: OR 000005c3: PUSH32 0xf0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a00 000005e4: SSTORE 000005e5: DUP4 000005e6: PUSH2 0x047b 000005e9: JUMP 000005ea: JUMPDEST 000005eb: PUSH32 0xf92ee8a900000000000000000000000000000000000000000000000000000000 0000060c: PUSH0 0000060d: MSTORE 0000060e: PUSH1 0x04 00000610: PUSH0 00000611: REVERT 00000612: JUMPDEST 00000613: SWAP1 00000614: POP 00000615: ISZERO 00000616: DUP5 00000617: PUSH2 0x0412 0000061a: JUMP 0000061b: JUMPDEST 0000061c: ADDRESS 0000061d: EXTCODESIZE 0000061e: ISZERO 0000061f: SWAP2 00000620: POP 00000621: PUSH2 0x040a 00000624: JUMP 00000625: JUMPDEST 00000626: DUP5 00000627: SWAP2 00000628: POP 00000629: PUSH2 0x0400 0000062c: JUMP 0000062d: JUMPDEST 0000062e: CALLVALUE 0000062f: PUSH2 0x012d 00000632: JUMPI 00000633: PUSH1 0x60 00000635: PUSH1 0x03 00000637: NOT 00000638: CALLDATASIZE 00000639: ADD 0000063a: SLT 0000063b: PUSH2 0x012d 0000063e: JUMPI 0000063f: PUSH2 0x01cd 00000642: PUSH2 0x0649 00000645: PUSH2 0x0bde 00000648: JUMP 00000649: JUMPDEST 0000064a: PUSH2 0x0651 0000064d: PUSH2 0x0bbb 00000650: JUMP 00000651: JUMPDEST 00000652: POP 00000653: PUSH2 0x0695 00000656: CALLER 00000657: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 0000066c: PUSH32 0x537eb9d931756581e7ea6f7811162c646321946650ac0ac6bf83b24932e41600 0000068d: SLOAD 0000068e: AND 0000068f: CALLER 00000690: EQ 00000691: PUSH2 0x0c01 00000694: JUMP 00000695: JUMPDEST 00000696: PUSH1 0x44 00000698: CALLDATALOAD 00000699: SWAP1 0000069a: PUSH2 0x1284 0000069d: JUMP 0000069e: JUMPDEST 0000069f: CALLVALUE 000006a0: PUSH2 0x012d 000006a3: JUMPI 000006a4: PUSH0 000006a5: PUSH1 0x03 000006a7: NOT 000006a8: CALLDATASIZE 000006a9: ADD 000006aa: SLT 000006ab: PUSH2 0x012d 000006ae: JUMPI 000006af: PUSH1 0x20 000006b1: PUSH1 0x40 000006b3: MLOAD 000006b4: PUSH0 000006b5: DUP2 000006b6: MSTORE 000006b7: RETURN 000006b8: JUMPDEST 000006b9: CALLVALUE 000006ba: PUSH2 0x012d 000006bd: JUMPI 000006be: PUSH0 000006bf: PUSH1 0x03 000006c1: NOT 000006c2: CALLDATASIZE 000006c3: ADD 000006c4: SLT 000006c5: PUSH2 0x012d 000006c8: JUMPI 000006c9: PUSH1 0x20 000006cb: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000006e0: PUSH32 0x537eb9d931756581e7ea6f7811162c646321946650ac0ac6bf83b24932e41600 00000701: SLOAD 00000702: AND 00000703: PUSH1 0x40 00000705: MLOAD 00000706: SWAP1 00000707: DUP2 00000708: MSTORE 00000709: RETURN 0000070a: JUMPDEST 0000070b: CALLVALUE 0000070c: PUSH2 0x012d 0000070f: JUMPI 00000710: PUSH1 0x40 00000712: PUSH1 0x03 00000714: NOT 00000715: CALLDATASIZE 00000716: ADD 00000717: SLT 00000718: PUSH2 0x012d 0000071b: JUMPI 0000071c: PUSH2 0x0723 0000071f: PUSH2 0x0bbb 00000722: JUMP 00000723: JUMPDEST 00000724: PUSH1 0x04 00000726: CALLDATALOAD 00000727: PUSH0 00000728: MSTORE 00000729: PUSH32 0x02dd7bc7dec4dceedda775e58dd541e08a116c6c53815c0bd028192f7b626800 0000074a: PUSH1 0x20 0000074c: MSTORE 0000074d: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00000762: PUSH1 0x40 00000764: PUSH0 00000765: KECCAK256 00000766: SWAP2 00000767: AND 00000768: PUSH0 00000769: MSTORE 0000076a: PUSH1 0x20 0000076c: MSTORE 0000076d: PUSH1 0x20 0000076f: PUSH1 0xff 00000771: PUSH1 0x40 00000773: PUSH0 00000774: KECCAK256 00000775: SLOAD 00000776: AND 00000777: PUSH1 0x40 00000779: MLOAD 0000077a: SWAP1 0000077b: ISZERO 0000077c: ISZERO 0000077d: DUP2 0000077e: MSTORE 0000077f: RETURN 00000780: JUMPDEST 00000781: CALLVALUE 00000782: PUSH2 0x012d 00000785: JUMPI 00000786: PUSH1 0x20 00000788: PUSH1 0x03 0000078a: NOT 0000078b: CALLDATASIZE 0000078c: ADD 0000078d: SLT 0000078e: PUSH2 0x012d 00000791: JUMPI 00000792: PUSH2 0x0799 00000795: PUSH2 0x0bde 00000798: JUMP 00000799: JUMPDEST 0000079a: PUSH1 0x24 0000079c: PUSH1 0x20 0000079e: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000007b3: PUSH32 0x537eb9d931756581e7ea6f7811162c646321946650ac0ac6bf83b24932e41600 000007d4: SLOAD 000007d5: AND 000007d6: PUSH1 0x40 000007d8: MLOAD 000007d9: SWAP3 000007da: DUP4 000007db: DUP1 000007dc: SWAP3 000007dd: PUSH32 0xf17a7e6600000000000000000000000000000000000000000000000000000000 000007fe: DUP3 000007ff: MSTORE 00000800: CALLER 00000801: PUSH1 0x04 00000803: DUP4 00000804: ADD 00000805: MSTORE 00000806: GAS 00000807: STATICCALL 00000808: SWAP1 00000809: DUP2 0000080a: ISZERO 0000080b: PUSH2 0x039d 0000080e: JUMPI 0000080f: PUSH0 00000810: SWAP2 00000811: PUSH2 0x0828 00000814: JUMPI 00000815: JUMPDEST 00000816: PUSH2 0x01cd 00000819: DUP4 0000081a: PUSH2 0x0823 0000081d: CALLER 0000081e: DUP6 0000081f: PUSH2 0x0c01 00000822: JUMP 00000823: JUMPDEST 00000824: PUSH2 0x0e5f 00000827: JUMP 00000828: JUMPDEST 00000829: SWAP1 0000082a: POP 0000082b: PUSH1 0x20 0000082d: DUP2 0000082e: RETURNDATASIZE 0000082f: PUSH1 0x20 00000831: GT 00000832: PUSH2 0x085f 00000835: JUMPI 00000836: JUMPDEST 00000837: DUP2 00000838: PUSH2 0x0843 0000083b: PUSH1 0x20 0000083d: SWAP4 0000083e: DUP4 0000083f: PUSH2 0x0d6b 00000842: JUMP 00000843: JUMPDEST 00000844: DUP2 00000845: ADD 00000846: SUB 00000847: SLT 00000848: PUSH2 0x012d 0000084b: JUMPI 0000084c: MLOAD 0000084d: SWAP1 0000084e: DUP2 0000084f: ISZERO 00000850: ISZERO 00000851: DUP3 00000852: SUB 00000853: PUSH2 0x012d 00000856: JUMPI 00000857: SWAP1 00000858: PUSH2 0x0823 0000085b: PUSH2 0x0815 0000085e: JUMP 0000085f: JUMPDEST 00000860: RETURNDATASIZE 00000861: SWAP2 00000862: POP 00000863: PUSH2 0x0836 00000866: JUMP 00000867: JUMPDEST 00000868: CALLVALUE 00000869: PUSH2 0x012d 0000086c: JUMPI 0000086d: PUSH1 0x40 0000086f: PUSH1 0x03 00000871: NOT 00000872: CALLDATASIZE 00000873: ADD 00000874: SLT 00000875: PUSH2 0x012d 00000878: JUMPI 00000879: PUSH2 0x0880 0000087c: PUSH2 0x0bbb 0000087f: JUMP 00000880: JUMPDEST 00000881: CALLER 00000882: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00000897: DUP3 00000898: AND 00000899: SUB 0000089a: PUSH2 0x08a9 0000089d: JUMPI 0000089e: PUSH2 0x01cd 000008a1: SWAP1 000008a2: PUSH1 0x04 000008a4: CALLDATALOAD 000008a5: PUSH2 0x117c 000008a8: JUMP 000008a9: JUMPDEST 000008aa: PUSH32 0x6697b23200000000000000000000000000000000000000000000000000000000 000008cb: PUSH0 000008cc: MSTORE 000008cd: PUSH1 0x04 000008cf: PUSH0 000008d0: REVERT 000008d1: JUMPDEST 000008d2: CALLVALUE 000008d3: PUSH2 0x012d 000008d6: JUMPI 000008d7: PUSH1 0x40 000008d9: PUSH1 0x03 000008db: NOT 000008dc: CALLDATASIZE 000008dd: ADD 000008de: SLT 000008df: PUSH2 0x012d 000008e2: JUMPI 000008e3: PUSH2 0x01cd 000008e6: PUSH1 0x04 000008e8: CALLDATALOAD 000008e9: PUSH2 0x08f0 000008ec: PUSH2 0x0bbb 000008ef: JUMP 000008f0: JUMPDEST 000008f1: SWAP1 000008f2: PUSH2 0x0929 000008f5: PUSH2 0x01c3 000008f8: DUP3 000008f9: PUSH0 000008fa: MSTORE 000008fb: PUSH32 0x02dd7bc7dec4dceedda775e58dd541e08a116c6c53815c0bd028192f7b626800 0000091c: PUSH1 0x20 0000091e: MSTORE 0000091f: PUSH1 0x01 00000921: PUSH1 0x40 00000923: PUSH0 00000924: KECCAK256 00000925: ADD 00000926: SLOAD 00000927: SWAP1 00000928: JUMP 00000929: JUMPDEST 0000092a: PUSH2 0x0f68 0000092d: JUMP 0000092e: JUMPDEST 0000092f: CALLVALUE 00000930: PUSH2 0x012d 00000933: JUMPI 00000934: PUSH1 0x20 00000936: PUSH1 0x03 00000938: NOT 00000939: CALLDATASIZE 0000093a: ADD 0000093b: SLT 0000093c: PUSH2 0x012d 0000093f: JUMPI 00000940: PUSH1 0x20 00000942: PUSH2 0x0978 00000945: PUSH1 0x04 00000947: CALLDATALOAD 00000948: PUSH0 00000949: MSTORE 0000094a: PUSH32 0x02dd7bc7dec4dceedda775e58dd541e08a116c6c53815c0bd028192f7b626800 0000096b: PUSH1 0x20 0000096d: MSTORE 0000096e: PUSH1 0x01 00000970: PUSH1 0x40 00000972: PUSH0 00000973: KECCAK256 00000974: ADD 00000975: SLOAD 00000976: SWAP1 00000977: JUMP 00000978: JUMPDEST 00000979: PUSH1 0x40 0000097b: MLOAD 0000097c: SWAP1 0000097d: DUP2 0000097e: MSTORE 0000097f: RETURN 00000980: JUMPDEST 00000981: CALLVALUE 00000982: PUSH2 0x012d 00000985: JUMPI 00000986: PUSH1 0x20 00000988: PUSH1 0x03 0000098a: NOT 0000098b: CALLDATASIZE 0000098c: ADD 0000098d: SLT 0000098e: PUSH2 0x012d 00000991: JUMPI 00000992: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000009a7: PUSH2 0x09ae 000009aa: PUSH2 0x0bde 000009ad: JUMP 000009ae: JUMPDEST 000009af: AND 000009b0: PUSH0 000009b1: MSTORE 000009b2: PUSH32 0xcb05b6cb8e6c87c443cb04d44193d7d46d51c1198725a0ee3478d5baa736c100 000009d3: PUSH1 0x20 000009d5: MSTORE 000009d6: PUSH1 0x20 000009d8: PUSH1 0x40 000009da: PUSH0 000009db: KECCAK256 000009dc: SLOAD 000009dd: PUSH1 0x40 000009df: MLOAD 000009e0: SWAP1 000009e1: DUP2 000009e2: MSTORE 000009e3: RETURN 000009e4: JUMPDEST 000009e5: CALLVALUE 000009e6: PUSH2 0x012d 000009e9: JUMPI 000009ea: PUSH1 0x60 000009ec: PUSH1 0x03 000009ee: NOT 000009ef: CALLDATASIZE 000009f0: ADD 000009f1: SLT 000009f2: PUSH2 0x012d 000009f5: JUMPI 000009f6: PUSH1 0x04 000009f8: CALLDATALOAD 000009f9: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00000a0e: DUP2 00000a0f: AND 00000a10: SWAP1 00000a11: DUP2 00000a12: DUP2 00000a13: SUB 00000a14: PUSH2 0x012d 00000a17: JUMPI 00000a18: PUSH0 00000a19: PUSH1 0x20 00000a1b: SWAP2 00000a1c: PUSH2 0x0a23 00000a1f: PUSH2 0x0bbb 00000a22: JUMP 00000a23: JUMPDEST 00000a24: DUP3 00000a25: PUSH1 0x44 00000a27: CALLDATALOAD 00000a28: PUSH2 0x0a6a 00000a2b: CALLER 00000a2c: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00000a41: PUSH32 0x537eb9d931756581e7ea6f7811162c646321946650ac0ac6bf83b24932e41600 00000a62: SLOAD 00000a63: AND 00000a64: CALLER 00000a65: EQ 00000a66: PUSH2 0x0c01 00000a69: JUMP 00000a6a: JUMPDEST 00000a6b: PUSH2 0x0a74 00000a6e: DUP2 00000a6f: DUP9 00000a70: PUSH2 0x0c4b 00000a73: JUMP 00000a74: JUMPDEST 00000a75: PUSH1 0x40 00000a77: MLOAD 00000a78: SWAP1 00000a79: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00000a8e: DUP8 00000a8f: DUP4 00000a90: ADD 00000a91: SWAP5 00000a92: PUSH32 0xa9059cbb00000000000000000000000000000000000000000000000000000000 00000ab3: DUP7 00000ab4: MSTORE 00000ab5: AND 00000ab6: PUSH1 0x24 00000ab8: DUP4 00000ab9: ADD 00000aba: MSTORE 00000abb: PUSH1 0x44 00000abd: DUP3 00000abe: ADD 00000abf: MSTORE 00000ac0: PUSH1 0x44 00000ac2: DUP2 00000ac3: MSTORE 00000ac4: PUSH2 0x0ace 00000ac7: PUSH1 0x64 00000ac9: DUP3 00000aca: PUSH2 0x0d6b 00000acd: JUMP 00000ace: JUMPDEST 00000acf: MLOAD 00000ad0: SWAP3 00000ad1: GAS 00000ad2: CALL 00000ad3: ISZERO 00000ad4: PUSH2 0x039d 00000ad7: JUMPI 00000ad8: PUSH0 00000ad9: MLOAD 00000ada: RETURNDATASIZE 00000adb: PUSH2 0x0b14 00000ade: JUMPI 00000adf: POP 00000ae0: DUP1 00000ae1: EXTCODESIZE 00000ae2: ISZERO 00000ae3: JUMPDEST 00000ae4: PUSH2 0x0ae9 00000ae7: JUMPI 00000ae8: STOP 00000ae9: JUMPDEST 00000aea: PUSH32 0x5274afe700000000000000000000000000000000000000000000000000000000 00000b0b: PUSH0 00000b0c: MSTORE 00000b0d: PUSH1 0x04 00000b0f: MSTORE 00000b10: PUSH1 0x24 00000b12: PUSH0 00000b13: REVERT 00000b14: JUMPDEST 00000b15: PUSH1 0x01 00000b17: EQ 00000b18: ISZERO 00000b19: PUSH2 0x0ae3 00000b1c: JUMP 00000b1d: JUMPDEST 00000b1e: CALLVALUE 00000b1f: PUSH2 0x012d 00000b22: JUMPI 00000b23: PUSH1 0x20 00000b25: PUSH1 0x03 00000b27: NOT 00000b28: CALLDATASIZE 00000b29: ADD 00000b2a: SLT 00000b2b: PUSH2 0x012d 00000b2e: JUMPI 00000b2f: PUSH1 0x04 00000b31: CALLDATALOAD 00000b32: SWAP1 00000b33: PUSH32 0xffffffff00000000000000000000000000000000000000000000000000000000 00000b54: DUP3 00000b55: AND 00000b56: DUP1 00000b57: SWAP3 00000b58: SUB 00000b59: PUSH2 0x012d 00000b5c: JUMPI 00000b5d: DUP2 00000b5e: PUSH32 0x7965db0b00000000000000000000000000000000000000000000000000000000 00000b7f: PUSH1 0x20 00000b81: SWAP4 00000b82: EQ 00000b83: SWAP1 00000b84: DUP2 00000b85: ISZERO 00000b86: PUSH2 0x0b91 00000b89: JUMPI 00000b8a: JUMPDEST 00000b8b: POP 00000b8c: ISZERO 00000b8d: ISZERO 00000b8e: DUP2 00000b8f: MSTORE 00000b90: RETURN 00000b91: JUMPDEST 00000b92: PUSH32 0x01ffc9a700000000000000000000000000000000000000000000000000000000 00000bb3: SWAP2 00000bb4: POP 00000bb5: EQ 00000bb6: DUP4 00000bb7: PUSH2 0x0b8a 00000bba: JUMP 00000bbb: JUMPDEST 00000bbc: PUSH1 0x24 00000bbe: CALLDATALOAD 00000bbf: SWAP1 00000bc0: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00000bd5: DUP3 00000bd6: AND 00000bd7: DUP3 00000bd8: SUB 00000bd9: PUSH2 0x012d 00000bdc: JUMPI 00000bdd: JUMP 00000bde: JUMPDEST 00000bdf: PUSH1 0x04 00000be1: CALLDATALOAD 00000be2: SWAP1 00000be3: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00000bf8: DUP3 00000bf9: AND 00000bfa: DUP3 00000bfb: SUB 00000bfc: PUSH2 0x012d 00000bff: JUMPI 00000c00: JUMP 00000c01: JUMPDEST 00000c02: ISZERO 00000c03: PUSH2 0x0c09 00000c06: JUMPI 00000c07: POP 00000c08: JUMP 00000c09: JUMPDEST 00000c0a: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00000c1f: SWAP1 00000c20: PUSH32 0xacd411fe00000000000000000000000000000000000000000000000000000000 00000c41: PUSH0 00000c42: MSTORE 00000c43: AND 00000c44: PUSH1 0x04 00000c46: MSTORE 00000c47: PUSH1 0x24 00000c49: PUSH0 00000c4a: REVERT 00000c4b: JUMPDEST 00000c4c: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00000c61: DUP2 00000c62: AND 00000c63: PUSH0 00000c64: MSTORE 00000c65: PUSH32 0xcb05b6cb8e6c87c443cb04d44193d7d46d51c1198725a0ee3478d5baa736c100 00000c86: PUSH1 0x20 00000c88: MSTORE 00000c89: PUSH1 0x40 00000c8b: PUSH0 00000c8c: KECCAK256 00000c8d: SLOAD 00000c8e: SWAP1 00000c8f: DUP2 00000c90: ISZERO 00000c91: PUSH2 0x0d66 00000c94: JUMPI 00000c95: PUSH2 0x0c9d 00000c98: SWAP1 00000c99: PUSH2 0x1374 00000c9c: JUMP 00000c9d: JUMPDEST 00000c9e: SWAP1 00000c9f: DUP2 00000ca0: PUSH0 00000ca1: MSTORE 00000ca2: PUSH32 0xcb05b6cb8e6c87c443cb04d44193d7d46d51c1198725a0ee3478d5baa736c101 00000cc3: PUSH1 0x20 00000cc5: MSTORE 00000cc6: PUSH1 0x40 00000cc8: PUSH0 00000cc9: KECCAK256 00000cca: SLOAD 00000ccb: SWAP3 00000ccc: DUP4 00000ccd: ADD 00000cce: DUP1 00000ccf: SWAP4 00000cd0: GT 00000cd1: PUSH2 0x0d39 00000cd4: JUMPI 00000cd5: DUP1 00000cd6: DUP4 00000cd7: GT 00000cd8: PUSH2 0x0d09 00000cdb: JUMPI 00000cdc: POP 00000cdd: PUSH0 00000cde: MSTORE 00000cdf: PUSH32 0xcb05b6cb8e6c87c443cb04d44193d7d46d51c1198725a0ee3478d5baa736c101 00000d00: PUSH1 0x20 00000d02: MSTORE 00000d03: PUSH1 0x40 00000d05: PUSH0 00000d06: KECCAK256 00000d07: SSTORE 00000d08: JUMP 00000d09: JUMPDEST 00000d0a: SWAP1 00000d0b: POP 00000d0c: PUSH32 0x5f71358600000000000000000000000000000000000000000000000000000000 00000d2d: PUSH0 00000d2e: MSTORE 00000d2f: PUSH1 0x04 00000d31: MSTORE 00000d32: PUSH1 0x24 00000d34: MSTORE 00000d35: PUSH1 0x44 00000d37: PUSH0 00000d38: REVERT 00000d39: JUMPDEST 00000d3a: PUSH32 0x4e487b7100000000000000000000000000000000000000000000000000000000 00000d5b: PUSH0 00000d5c: MSTORE 00000d5d: PUSH1 0x11 00000d5f: PUSH1 0x04 00000d61: MSTORE 00000d62: PUSH1 0x24 00000d64: PUSH0 00000d65: REVERT 00000d66: JUMPDEST 00000d67: POP 00000d68: POP 00000d69: POP 00000d6a: JUMP 00000d6b: JUMPDEST 00000d6c: SWAP1 00000d6d: PUSH1 0x1f 00000d6f: PUSH32 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0 00000d90: SWAP2 00000d91: ADD 00000d92: AND 00000d93: DUP2 00000d94: ADD 00000d95: SWAP1 00000d96: DUP2 00000d97: LT 00000d98: PUSH8 0xffffffffffffffff 00000da1: DUP3 00000da2: GT 00000da3: OR 00000da4: PUSH2 0x0dac 00000da7: JUMPI 00000da8: PUSH1 0x40 00000daa: MSTORE 00000dab: JUMP 00000dac: JUMPDEST 00000dad: PUSH32 0x4e487b7100000000000000000000000000000000000000000000000000000000 00000dce: PUSH0 00000dcf: MSTORE 00000dd0: PUSH1 0x41 00000dd2: PUSH1 0x04 00000dd4: MSTORE 00000dd5: PUSH1 0x24 00000dd7: PUSH0 00000dd8: REVERT 00000dd9: JUMPDEST 00000dda: DUP1 00000ddb: PUSH0 00000ddc: MSTORE 00000ddd: PUSH32 0x02dd7bc7dec4dceedda775e58dd541e08a116c6c53815c0bd028192f7b626800 00000dfe: PUSH1 0x20 00000e00: MSTORE 00000e01: PUSH1 0x40 00000e03: PUSH0 00000e04: KECCAK256 00000e05: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00000e1a: CALLER 00000e1b: AND 00000e1c: PUSH0 00000e1d: MSTORE 00000e1e: PUSH1 0x20 00000e20: MSTORE 00000e21: PUSH1 0xff 00000e23: PUSH1 0x40 00000e25: PUSH0 00000e26: KECCAK256 00000e27: SLOAD 00000e28: AND 00000e29: ISZERO 00000e2a: PUSH2 0x0e30 00000e2d: JUMPI 00000e2e: POP 00000e2f: JUMP 00000e30: JUMPDEST 00000e31: PUSH32 0xe2517d3f00000000000000000000000000000000000000000000000000000000 00000e52: PUSH0 00000e53: MSTORE 00000e54: CALLER 00000e55: PUSH1 0x04 00000e57: MSTORE 00000e58: PUSH1 0x24 00000e5a: MSTORE 00000e5b: PUSH1 0x44 00000e5d: PUSH0 00000e5e: REVERT 00000e5f: JUMPDEST 00000e60: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00000e75: DUP2 00000e76: AND 00000e77: PUSH0 00000e78: SWAP1 00000e79: DUP2 00000e7a: MSTORE 00000e7b: PUSH32 0x9cc214e773bfb12ee113956ef0921bc635e2f55453601bf5624331c946d7c8cb 00000e9c: PUSH1 0x20 00000e9e: MSTORE 00000e9f: PUSH1 0x40 00000ea1: SWAP1 00000ea2: KECCAK256 00000ea3: SLOAD 00000ea4: PUSH1 0xff 00000ea6: AND 00000ea7: PUSH2 0x0f63 00000eaa: JUMPI 00000eab: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00000ec0: AND 00000ec1: PUSH0 00000ec2: DUP2 00000ec3: DUP2 00000ec4: MSTORE 00000ec5: PUSH32 0x9cc214e773bfb12ee113956ef0921bc635e2f55453601bf5624331c946d7c8cb 00000ee6: PUSH1 0x20 00000ee8: MSTORE 00000ee9: PUSH1 0x40 00000eeb: DUP2 00000eec: KECCAK256 00000eed: DUP1 00000eee: SLOAD 00000eef: PUSH32 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00 00000f10: AND 00000f11: PUSH1 0x01 00000f13: OR 00000f14: SWAP1 00000f15: SSTORE 00000f16: CALLER 00000f17: SWAP2 00000f18: SWAP1 00000f19: PUSH32 0x15975e67e85433b86162c65eeaf7d19d2b619671751d1f6d4d320dc195d465db 00000f3a: SWAP1 00000f3b: PUSH32 0x2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d 00000f5c: SWAP1 00000f5d: DUP1 00000f5e: LOG4 00000f5f: PUSH1 0x01 00000f61: SWAP1 00000f62: JUMP 00000f63: JUMPDEST 00000f64: POP 00000f65: PUSH0 00000f66: SWAP1 00000f67: JUMP 00000f68: JUMPDEST 00000f69: DUP1 00000f6a: PUSH0 00000f6b: MSTORE 00000f6c: PUSH32 0x02dd7bc7dec4dceedda775e58dd541e08a116c6c53815c0bd028192f7b626800 00000f8d: PUSH1 0x20 00000f8f: MSTORE 00000f90: PUSH1 0x40 00000f92: PUSH0 00000f93: KECCAK256 00000f94: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00000fa9: DUP4 00000faa: AND 00000fab: PUSH0 00000fac: MSTORE 00000fad: PUSH1 0x20 00000faf: MSTORE 00000fb0: PUSH1 0xff 00000fb2: PUSH1 0x40 00000fb4: PUSH0 00000fb5: KECCAK256 00000fb6: SLOAD 00000fb7: AND 00000fb8: ISZERO 00000fb9: PUSH0 00000fba: EQ 00000fbb: PUSH2 0x1074 00000fbe: JUMPI 00000fbf: DUP1 00000fc0: PUSH0 00000fc1: MSTORE 00000fc2: PUSH32 0x02dd7bc7dec4dceedda775e58dd541e08a116c6c53815c0bd028192f7b626800 00000fe3: PUSH1 0x20 00000fe5: MSTORE 00000fe6: PUSH1 0x40 00000fe8: PUSH0 00000fe9: KECCAK256 00000fea: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00000fff: DUP4 00001000: AND 00001001: PUSH0 00001002: MSTORE 00001003: PUSH1 0x20 00001005: MSTORE 00001006: PUSH1 0x40 00001008: PUSH0 00001009: KECCAK256 0000100a: PUSH1 0x01 0000100c: PUSH32 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00 0000102d: DUP3 0000102e: SLOAD 0000102f: AND 00001030: OR 00001031: SWAP1 00001032: SSTORE 00001033: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00001048: CALLER 00001049: SWAP3 0000104a: AND 0000104b: SWAP1 0000104c: PUSH32 0x2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d 0000106d: PUSH0 0000106e: DUP1 0000106f: LOG4 00001070: PUSH1 0x01 00001072: SWAP1 00001073: JUMP 00001074: JUMPDEST 00001075: POP 00001076: POP 00001077: PUSH0 00001078: SWAP1 00001079: JUMP 0000107a: JUMPDEST 0000107b: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00001090: DUP2 00001091: AND 00001092: PUSH0 00001093: SWAP1 00001094: DUP2 00001095: MSTORE 00001096: PUSH32 0x9cc214e773bfb12ee113956ef0921bc635e2f55453601bf5624331c946d7c8cb 000010b7: PUSH1 0x20 000010b9: MSTORE 000010ba: PUSH1 0x40 000010bc: SWAP1 000010bd: KECCAK256 000010be: SLOAD 000010bf: PUSH1 0xff 000010c1: AND 000010c2: ISZERO 000010c3: PUSH2 0x0f63 000010c6: JUMPI 000010c7: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000010dc: AND 000010dd: PUSH0 000010de: DUP2 000010df: DUP2 000010e0: MSTORE 000010e1: PUSH32 0x9cc214e773bfb12ee113956ef0921bc635e2f55453601bf5624331c946d7c8cb 00001102: PUSH1 0x20 00001104: MSTORE 00001105: PUSH1 0x40 00001107: DUP2 00001108: KECCAK256 00001109: DUP1 0000110a: SLOAD 0000110b: PUSH32 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00 0000112c: AND 0000112d: SWAP1 0000112e: SSTORE 0000112f: CALLER 00001130: SWAP2 00001131: SWAP1 00001132: PUSH32 0x15975e67e85433b86162c65eeaf7d19d2b619671751d1f6d4d320dc195d465db 00001153: SWAP1 00001154: PUSH32 0xf6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b 00001175: SWAP1 00001176: DUP1 00001177: LOG4 00001178: PUSH1 0x01 0000117a: SWAP1 0000117b: JUMP 0000117c: JUMPDEST 0000117d: DUP1 0000117e: PUSH0 0000117f: MSTORE 00001180: PUSH32 0x02dd7bc7dec4dceedda775e58dd541e08a116c6c53815c0bd028192f7b626800 000011a1: PUSH1 0x20 000011a3: MSTORE 000011a4: PUSH1 0x40 000011a6: PUSH0 000011a7: KECCAK256 000011a8: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000011bd: DUP4 000011be: AND 000011bf: PUSH0 000011c0: MSTORE 000011c1: PUSH1 0x20 000011c3: MSTORE 000011c4: PUSH1 0xff 000011c6: PUSH1 0x40 000011c8: PUSH0 000011c9: KECCAK256 000011ca: SLOAD 000011cb: AND 000011cc: PUSH0 000011cd: EQ 000011ce: PUSH2 0x1074 000011d1: JUMPI 000011d2: DUP1 000011d3: PUSH0 000011d4: MSTORE 000011d5: PUSH32 0x02dd7bc7dec4dceedda775e58dd541e08a116c6c53815c0bd028192f7b626800 000011f6: PUSH1 0x20 000011f8: MSTORE 000011f9: PUSH1 0x40 000011fb: PUSH0 000011fc: KECCAK256 000011fd: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00001212: DUP4 00001213: AND 00001214: PUSH0 00001215: MSTORE 00001216: PUSH1 0x20 00001218: MSTORE 00001219: PUSH1 0x40 0000121b: PUSH0 0000121c: KECCAK256 0000121d: PUSH32 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00 0000123e: DUP2 0000123f: SLOAD 00001240: AND 00001241: SWAP1 00001242: SSTORE 00001243: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00001258: CALLER 00001259: SWAP3 0000125a: AND 0000125b: SWAP1 0000125c: PUSH32 0xf6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b 0000127d: PUSH0 0000127e: DUP1 0000127f: LOG4 00001280: PUSH1 0x01 00001282: SWAP1 00001283: JUMP 00001284: JUMPDEST 00001285: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 0000129a: DUP2 0000129b: AND 0000129c: PUSH0 0000129d: MSTORE 0000129e: PUSH32 0xcb05b6cb8e6c87c443cb04d44193d7d46d51c1198725a0ee3478d5baa736c100 000012bf: PUSH1 0x20 000012c1: MSTORE 000012c2: PUSH1 0x40 000012c4: PUSH0 000012c5: KECCAK256 000012c6: SLOAD 000012c7: ISZERO 000012c8: PUSH2 0x1370 000012cb: JUMPI 000012cc: PUSH2 0x12d4 000012cf: SWAP1 000012d0: PUSH2 0x1374 000012d3: JUMP 000012d4: JUMPDEST 000012d5: PUSH0 000012d6: DUP2 000012d7: DUP2 000012d8: MSTORE 000012d9: PUSH32 0xcb05b6cb8e6c87c443cb04d44193d7d46d51c1198725a0ee3478d5baa736c101 000012fa: PUSH1 0x20 000012fc: MSTORE 000012fd: PUSH1 0x40 000012ff: SWAP1 00001300: KECCAK256 00001301: SLOAD 00001302: SWAP2 00001303: DUP1 00001304: DUP4 00001305: GT 00001306: PUSH2 0x133a 00001309: JUMPI 0000130a: POP 0000130b: SWAP1 0000130c: POP 0000130d: PUSH0 0000130e: MSTORE 0000130f: PUSH32 0xcb05b6cb8e6c87c443cb04d44193d7d46d51c1198725a0ee3478d5baa736c101 00001330: PUSH1 0x20 00001332: MSTORE 00001333: PUSH0 00001334: PUSH1 0x40 00001336: DUP2 00001337: KECCAK256 00001338: SSTORE 00001339: JUMP 0000133a: JUMPDEST 0000133b: DUP3 0000133c: SUB 0000133d: SWAP2 0000133e: DUP3 0000133f: GT 00001340: PUSH2 0x0d39 00001343: JUMPI 00001344: PUSH0 00001345: MSTORE 00001346: PUSH32 0xcb05b6cb8e6c87c443cb04d44193d7d46d51c1198725a0ee3478d5baa736c101 00001367: PUSH1 0x20 00001369: MSTORE 0000136a: PUSH1 0x40 0000136c: PUSH0 0000136d: KECCAK256 0000136e: SSTORE 0000136f: JUMP 00001370: JUMPDEST 00001371: POP 00001372: POP 00001373: JUMP 00001374: JUMPDEST 00001375: PUSH1 0x40 00001377: MLOAD 00001378: PUSH32 0xffffffffffffffffffffffffffffffffffffffff000000000000000000000000 00001399: PUSH1 0x20 0000139b: DUP3 0000139c: ADD 0000139d: SWAP3 0000139e: PUSH3 0x015180 000013a2: TIMESTAMP 000013a3: DIV 000013a4: DUP5 000013a5: MSTORE 000013a6: PUSH1 0x60 000013a8: SHL 000013a9: AND 000013aa: PUSH1 0x40 000013ac: DUP3 000013ad: ADD 000013ae: MSTORE 000013af: PUSH1 0x34 000013b1: DUP2 000013b2: MSTORE 000013b3: PUSH2 0x13bd 000013b6: PUSH1 0x54 000013b8: DUP3 000013b9: PUSH2 0x0d6b 000013bc: JUMP 000013bd: JUMPDEST 000013be: MLOAD 000013bf: SWAP1 000013c0: KECCAK256 000013c1: SWAP1 000013c2: JUMP 000013c3: JUMPDEST 000013c4: PUSH1 0xff 000013c6: PUSH32 0xf0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a00 000013e7: SLOAD 000013e8: PUSH1 0x40 000013ea: SHR 000013eb: AND 000013ec: ISZERO 000013ed: PUSH2 0x13f2 000013f0: JUMPI 000013f1: JUMP 000013f2: JUMPDEST 000013f3: PUSH32 0xd7e6bcf800000000000000000000000000000000000000000000000000000000 00001414: PUSH0 00001415: MSTORE 00001416: PUSH1 0x04 00001418: PUSH0 00001419: REVERT 0000141a: INVALID 0000141b: LOG1 0000141c: PUSH5 0x736f6c6343 00001422: STOP 00001423: ADDMOD 00001424: SHR 00001425: STOP 00001426: EXP
| Severity | Category | Tool | Title | Confidence | Validated | Confirmed | Details |
|---|---|---|---|---|---|---|---|
| high | other | detector | Untrusted CALL target/value reachable | 60 | no | no |
viewtrace_id: 0xad1961313e1337cc102b0f9ff6d214d56b3c63742da79b47c9d555346150fb6e
call_targets:
0xf24a818d2e276936a7abddfaad9c369a5b9dcde8
target_varies:
no
classification:
constant_target
validation_json{
"sink": "CALL",
"errors": 0,
"status": "sink_reached",
"attempts": 1,
"trace_id": "0xad1961313e1337cc102b0f9ff6d214d56b3c63742da79b47c9d555346150fb6e",
"confirmed": false,
"trace_mode": "callTracer",
"call_targets": [
"0xf24a818d2e276936a7abddfaad9c369a5b9dcde8"
],
"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": "0x01ffc9a7",
"selector": "0x01ffc9a7",
"calldata_variants": [
"0x01ffc9a7",
"0x01ffc9a70000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x0779afe6",
"selector": "0x0779afe6",
"calldata_variants": [
"0x0779afe6",
"0x0779afe60000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x0b0aee69",
"selector": "0x0b0aee69",
"calldata_variants": [
"0x0b0aee69",
"0x0b0aee690000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x248a9ca3",
"selector": "0x248a9ca3",
"calldata_variants": [
"0x248a9ca3",
"0x248a9ca30000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x2f2ff15d",
"selector": "0x2f2ff15d",
"calldata_variants": [
"0x2f2ff15d",
"0x2f2ff15d0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x36568abe",
"selector": "0x36568abe",
"calldata_variants": [
"0x36568abe",
"0x36568abe0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x40f5d8e1",
"selector": "0x40f5d8e1",
"calldata_variants": [
"0x40f5d8e1",
"0x40f5d8e10000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x91d14854",
"selector": "0x91d14854",
"calldata_variants": [
"0x91d14854",
"0x91d148540000000000000000000000000000000000000000000000000000000000000000"
]
}
]
}
evidence_json{
"examples": [
{
"pc": 2770,
"opcode": "CALL",
"returndata_checked": null,
"value_expression_category": "computed",
"target_expression_category": "computed"
}
],
"call_count": 1,
"guards_detected": [],
"untrusted_call_count": 1
}
|
| high | other | detector | ETH value transfer possible | 55 | no | no |
viewtrace_id: 0xad1961313e1337cc102b0f9ff6d214d56b3c63742da79b47c9d555346150fb6e
call_targets:
0xf24a818d2e276936a7abddfaad9c369a5b9dcde8
target_varies:
no
classification:
constant_target
validation_json{
"sink": "CALL",
"errors": 0,
"status": "sink_reached",
"attempts": 1,
"trace_id": "0xad1961313e1337cc102b0f9ff6d214d56b3c63742da79b47c9d555346150fb6e",
"confirmed": false,
"trace_mode": "callTracer",
"call_targets": [
"0xf24a818d2e276936a7abddfaad9c369a5b9dcde8"
],
"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": "0x01ffc9a7",
"selector": "0x01ffc9a7",
"calldata_variants": [
"0x01ffc9a7",
"0x01ffc9a70000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x0779afe6",
"selector": "0x0779afe6",
"calldata_variants": [
"0x0779afe6",
"0x0779afe60000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x0b0aee69",
"selector": "0x0b0aee69",
"calldata_variants": [
"0x0b0aee69",
"0x0b0aee690000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x248a9ca3",
"selector": "0x248a9ca3",
"calldata_variants": [
"0x248a9ca3",
"0x248a9ca30000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x2f2ff15d",
"selector": "0x2f2ff15d",
"calldata_variants": [
"0x2f2ff15d",
"0x2f2ff15d0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x36568abe",
"selector": "0x36568abe",
"calldata_variants": [
"0x36568abe",
"0x36568abe0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x40f5d8e1",
"selector": "0x40f5d8e1",
"calldata_variants": [
"0x40f5d8e1",
"0x40f5d8e10000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x91d14854",
"selector": "0x91d14854",
"calldata_variants": [
"0x91d14854",
"0x91d148540000000000000000000000000000000000000000000000000000000000000000"
]
}
]
}
evidence_json{
"examples": [
{
"pc": 2770,
"opcode": "CALL",
"returndata_checked": null,
"value_expression_category": "computed",
"target_expression_category": "computed"
}
],
"eth_value_calls": 1,
"guards_detected": []
}
|