4a5b9e37-fee9-477e-a941-1d02f433e503
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 |
|---|---|---|---|---|
| 31521 | report.consolidate | complete | 1 / 1 | 3 months ago |
| 77753 | artifact.fetch | failed | 1 / 3 | 1 week ago |
| 77754 | tool.cast_disasm | complete | 1 / 3 | 1 week ago |
| 77755 | analysis.bundle | complete | 1 / 3 | 1 week ago |
| 77756 | capability.graph | complete | 1 / 3 | 1 week ago |
| 77757 | detector.run | complete | 1 / 3 | 1 week ago |
| 77758 | validation.fork | complete | 1 / 3 | 1 week ago |
No slither job recorded yet.
[codex:1158698] OpenAI Codex v0.77.0 (research preview)
[codex:1158698] --------
[codex:1158698] workdir: /tmp/codex-multi-3voh2go0
[codex:1158698] model: gpt-5.2-codex
[codex:1158698] provider: openai
[codex:1158698] approval: never
[codex:1158698] sandbox: read-only
[codex:1158698] reasoning effort: xhigh
[codex:1158698] reasoning summaries: auto
[codex:1158698] session id: 019b86bf-56aa-7f41-bbec-fa5ce25b0a22
[codex:1158698] --------
[codex:1158698] user
[codex:1158698] You are a profit-focused exploit hunter. Your ONLY goal is finding ways to extract value (ETH, tokens, NFTs) from this contract.
[codex:1158698]
[codex:1158698] Read `AUDIT_BUNDLE.txt` completely before concluding. Treat `lib/` and `@openzeppelin/` as trusted unless misused.
[codex:1158698]
[codex:1158698] ONLY REPORT if you find a CONCRETE, EXPLOITABLE path to profit. We do NOT care about:
[codex:1158698] - Gas inefficiency, code quality, naming, or best practices
[codex:1158698] - Theoretical vulnerabilities without a clear extraction path
[codex:1158698] - Centralization risks (admin can rug) - assume admin keys are secure
[codex:1158698] - Front-running unless it enables theft beyond MEV
[codex:1158698] - DoS, griefing, or issues that don't result in attacker profit
[codex:1158698] - Missing events, view function issues, or informational findings
[codex:1158698]
[codex:1158698] HIGH-VALUE PATTERNS TO HUNT:
[codex:1158698] - Reentrancy: external calls before state updates that allow double-withdrawal
[codex:1158698] - Access control: missing/bypassable auth on withdraw, transfer, or mint functions
[codex:1158698] - Flash loan attacks: borrow -> manipulate -> profit in single tx
[codex:1158698] - Price oracle manipulation: TWAP with short window, spot price reads, stale prices
[codex:1158698] - Signature replay: missing nonce, chainId, or deadline in permit/meta-tx
[codex:1158698] - Proxy hijacking: unprotected initialize(), storage collision, UUPS without auth
[codex:1158698] - Accounting errors: rounding that favors attacker, share inflation, first depositor attacks
[codex:1158698] - Unchecked external calls: return value ignored on token transfers enabling fake tokens
[codex:1158698] - Cross-function reentrancy: state read in function A, modified via reentrant call, used stale in A
[codex:1158698]
[codex:1158698] For each finding, you MUST provide:
[codex:1158698] 1. Exact file and line numbers of vulnerable code
[codex:1158698] 2. Step-by-step exploit transaction sequence
[codex:1158698] 3. Estimated profit potential (order of magnitude: contract balance, LP reserves, etc.)
[codex:1158698]
[codex:1158698] If no concrete profit path exists: set no_findings=true. Do NOT pad with low-severity noise.
[codex:1158698]
[codex:1158698] Output MUST be valid JSON matching the provided schema.
[codex:1158698] - severity: info, low, medium, high, critical (use high/critical ONLY for clear extraction paths)
[codex:1158698] - category: access_control, reentrancy, math, oracle, upgradeability, auth, other
[codex:1158698] mcp startup: no servers
[codex:1158698]
[codex:1158698] thinking
[codex:1158698] **Preparing to read AUDIT_BUNDLE**
[codex:1158698] exec
[codex:1158698] /bin/bash -lc ls in /tmp/codex-multi-3voh2go0 succeeded in 5ms:
[codex:1158698] AUDIT_BUNDLE.txt
[codex:1158698] codex-output-schema.json
[codex:1158698] contracts
[codex:1158698] exec
[codex:1158698] /bin/bash -lc "sed -n '1,200p' AUDIT_BUNDLE.txt" in /tmp/codex-multi-3voh2go0 succeeded in 6ms:
[codex:1158698] This file concatenates first-party Solidity sources only (lib/@openzeppelin excluded).
[codex:1158698]
[codex:1158698] ================================================================================
[codex:1158698] FILE: contracts/src/ElixirCommitsAndWithdraw.sol
[codex:1158698] ================================================================================
[codex:1158698] // SPDX-License-Identifier: BUSL-1.1
[codex:1158698] pragma solidity 0.8.20;
[codex:1158698]
[codex:1158698] import {Ownable} from "openzeppelin/access/Ownable.sol";
[codex:1158698] import {ElixirDeUSDCommits} from "src/ElixirDeUSDCommits.sol";
[codex:1158698] import {IERC20} from "openzeppelin/token/ERC20/IERC20.sol";
[codex:1158698] import {SafeERC20} from "openzeppelin/token/ERC20/utils/SafeERC20.sol";
[codex:1158698] import {ElixirDeposit} from "src/ElixirDeposit.sol";
[codex:1158698]
[codex:1158698] /// @title Elixir withdraw contract
[codex:1158698] /// @author The Elixir Team
[codex:1158698] /// @notice This contract is used to withdraw funds
[codex:1158698] contract ElixirCommitsAndWithdraw is Ownable {
[codex:1158698] using SafeERC20 for IERC20;
[codex:1158698]
[codex:1158698] exec
[codex:1158698] /bin/bash -lc "sed -n '200,400p' AUDIT_BUNDLE.txt" in /tmp/codex-multi-3voh2go0 succeeded in 5ms:
[codex:1158698] IERC20 public token;
[codex:1158698]
[codex:1158698] /// @notice The pause status of commit
[codex:1158698] bool public pauseCommits;
[codex:1158698]
[codex:1158698] /// @notice The address of the ElixirDeposit contract
[codex:1158698] ElixirDeposit public elixirDepositContract;
[codex:1158698]
[codex:1158698] /// @notice Mapping of address to committed ETH from ElixirDeposit contract
[codex:1158698] mapping(address user => uint256 committed) public committed;
[codex:1158698]
[codex:1158698] /*//////////////////////////////////////////////////////////////
[codex:1158698] EVENTS
[codex:1158698] //////////////////////////////////////////////////////////////*/
[codex:1158698]
[codex:1158698] /// @notice Emitted when user commits an amount
[codex:1158698] /// @param caller The caller of the commit function.
[codex:1158698] /// @param amount The token amount committed and transferred.
[codex:1158698] event Commit(address indexed caller, uint256 indexed amount);
[codex:1158698]
[codex:1158698]
[codex:1158698] thinking
[codex:1158698] **Checking if full file is needed**
[codex:1158698] exec
[codex:1158698] /bin/bash -lc "sed -n '400,800p' AUDIT_BUNDLE.txt" in /tmp/codex-multi-3voh2go0 succeeded in 5ms:
[codex:1158698]
[codex:1158698]
[codex:1158698]
[codex:1158698] thinking
[codex:1158698] **Analyzing potential exploit and fund flow**
[codex:1158698]
[codex:1158698] I'm carefully tracing deposit, commit, and withdraw interactions across the three contracts to see if any combination allows unauthorized profit or fund extraction. The key challenge is how deposits and committed balances are tracked separately between contracts, with tokens and ETH moving through controller and commitsController addresses that attackers cannot control. I'm testing for reentrancy vulnerabilities and double-commit scenarios that might enable draining funds, but so far, all critical state updates precede external calls, and the controller’s multisig-controlled approval limits direct attacker profit. I'm also considering whether mismatches in accounting or mappings could be exploited, but no definitive exploit path to profit emerges just from these contracts.
[codex:1158698] thinking
[codex:1158698] **Evaluating withdrawal logic and deposit manipulation**
[codex:1158698]
[codex:1158698] I'm reviewing how withdrawn amounts and deposits interact, confirming that the deposit mapping only increases on deposits with actual ETH sent, preventing fake inflation. Withdrawals are constrained by per-user balances derived from deposits minus committed and withdrawn amounts. I'm also considering if committing in multiple contracts without adjusting deposits could lead to unbacked token minting, but that depends on contracts outside this bundle. I'm going to check the repo further to see if there are additional contracts influencing this logic.
[codex:1158698] exec
[codex:1158698] /bin/bash -lc 'rg --files contracts' in /tmp/codex-multi-3voh2go0 succeeded in 10ms:
[codex:1158698] contracts/src/ElixirDeposit.sol
[codex:1158698] contracts/src/ElixirCommitsAndWithdraw.sol
[codex:1158698] contracts/src/ElixirDeUSDCommits.sol
[codex:1158698] contracts/lib/openzeppelin-contracts/contracts/access/Ownable.sol
[codex:1158698] contracts/lib/openzeppelin-contracts/contracts/token/ERC20/extensions/IERC20Permit.sol
[codex:1158698] contracts/lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol
[codex:1158698] contracts/lib/openzeppelin-contracts/contracts/utils/Address.sol
[codex:1158698] contracts/lib/openzeppelin-contracts/contracts/utils/Context.sol
[codex:1158698] contracts/lib/openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol
[codex:1158698]
[codex:1158698]
[codex:1158698] thinking
[codex:1158698] **Analyzing potential reentrancy and balance manipulations**
[codex:1158698] thinking
[codex:1158698] **Evaluating commit and withdrawal interaction vulnerabilities**
[codex:1158698]
[codex:1158698] I'll carefully verify if commit mappings allow profit by double-dipping deposits and withdrawals, especially via reentrancy or token transfers across related contracts. After thorough analysis, the overlapping commit functions and balances don't yield exploitable profit beyond original deposits. I'll prepare a JSON report confirming no exploitable profit paths found.
[codex:1158698] codex
[codex:1158698] {"no_findings":true,"summary":"No concrete exploitable profit paths found in the provided contracts.","findings":[]}
[codex:1158698] tokens used
[codex:1158698] 15,254
[codex:1158698] {"no_findings":true,"summary":"No concrete exploitable profit paths found in the provided contracts.","findings":[]}
{
"codex": {
"ran_at": "2026-01-04T02:07:08.932977+00:00",
"returncode": 0
},
"summary": "No concrete exploitable profit paths found in the provided contracts.",
"raw_final": {
"summary": "No concrete exploitable profit paths found in the provided contracts.",
"findings": [],
"no_findings": true
},
"no_findings": true,
"schema_version": 1
}
00000000: PUSH1 0x80 00000002: PUSH1 0x40 00000004: MSTORE 00000005: PUSH1 0x04 00000007: CALLDATASIZE 00000008: LT 00000009: PUSH2 0x0102 0000000c: JUMPI 0000000d: PUSH1 0x00 0000000f: CALLDATALOAD 00000010: PUSH1 0xe0 00000012: SHR 00000013: DUP1 00000014: PUSH4 0xb3760d56 00000019: GT 0000001a: PUSH2 0x0095 0000001d: JUMPI 0000001e: DUP1 0000001f: PUSH4 0xd88d9b70 00000024: GT 00000025: PUSH2 0x0064 00000028: JUMPI 00000029: DUP1 0000002a: PUSH4 0xd88d9b70 0000002f: EQ 00000030: PUSH2 0x02d2 00000033: JUMPI 00000034: DUP1 00000035: PUSH4 0xe9f2838e 0000003a: EQ 0000003b: PUSH2 0x02f2 0000003e: JUMPI 0000003f: DUP1 00000040: PUSH4 0xf2fde38b 00000045: EQ 00000046: PUSH2 0x0311 00000049: JUMPI 0000004a: DUP1 0000004b: PUSH4 0xf5691ad4 00000050: EQ 00000051: PUSH2 0x0331 00000054: JUMPI 00000055: DUP1 00000056: PUSH4 0xfc0c546a 0000005b: EQ 0000005c: PUSH2 0x0351 0000005f: JUMPI 00000060: PUSH1 0x00 00000062: DUP1 00000063: REVERT 00000064: JUMPDEST 00000065: DUP1 00000066: PUSH4 0xb3760d56 0000006b: EQ 0000006c: PUSH2 0x023b 0000006f: JUMPI 00000070: DUP1 00000071: PUSH4 0xbe7c274e 00000076: EQ 00000077: PUSH2 0x0268 0000007a: JUMPI 0000007b: DUP1 0000007c: PUSH4 0xc311d049 00000081: EQ 00000082: PUSH2 0x0292 00000085: JUMPI 00000086: DUP1 00000087: PUSH4 0xd7a616ec 0000008c: EQ 0000008d: PUSH2 0x02b2 00000090: JUMPI 00000091: PUSH1 0x00 00000093: DUP1 00000094: REVERT 00000095: JUMPDEST 00000096: DUP1 00000097: PUSH4 0x715018a6 0000009c: GT 0000009d: PUSH2 0x00d1 000000a0: JUMPI 000000a1: DUP1 000000a2: PUSH4 0x715018a6 000000a7: EQ 000000a8: PUSH2 0x01c8 000000ab: JUMPI 000000ac: DUP1 000000ad: PUSH4 0x7af7e787 000000b2: EQ 000000b3: PUSH2 0x01dd 000000b6: JUMPI 000000b7: DUP1 000000b8: PUSH4 0x8da5cb5b 000000bd: EQ 000000be: PUSH2 0x01fd 000000c1: JUMPI 000000c2: DUP1 000000c3: PUSH4 0x9c700b70 000000c8: EQ 000000c9: PUSH2 0x021b 000000cc: JUMPI 000000cd: PUSH1 0x00 000000cf: DUP1 000000d0: REVERT 000000d1: JUMPDEST 000000d2: DUP1 000000d3: PUSH4 0x101437d8 000000d8: EQ 000000d9: PUSH2 0x010e 000000dc: JUMPI 000000dd: DUP1 000000de: PUSH4 0x4fa37d15 000000e3: EQ 000000e4: PUSH2 0x014b 000000e7: JUMPI 000000e8: DUP1 000000e9: PUSH4 0x5310d8f4 000000ee: EQ 000000ef: PUSH2 0x016d 000000f2: JUMPI 000000f3: DUP1 000000f4: PUSH4 0x6ef61092 000000f9: EQ 000000fa: PUSH2 0x018d 000000fd: JUMPI 000000fe: PUSH1 0x00 00000100: DUP1 00000101: REVERT 00000102: JUMPDEST 00000103: CALLDATASIZE 00000104: PUSH2 0x0109 00000107: JUMPI 00000108: STOP 00000109: JUMPDEST 0000010a: PUSH1 0x00 0000010c: DUP1 0000010d: REVERT 0000010e: JUMPDEST 0000010f: CALLVALUE 00000110: DUP1 00000111: ISZERO 00000112: PUSH2 0x011a 00000115: JUMPI 00000116: PUSH1 0x00 00000118: DUP1 00000119: REVERT 0000011a: JUMPDEST 0000011b: POP 0000011c: PUSH1 0x01 0000011e: SLOAD 0000011f: PUSH2 0x012e 00000122: SWAP1 00000123: PUSH1 0x01 00000125: PUSH1 0x01 00000127: PUSH1 0xa0 00000129: SHL 0000012a: SUB 0000012b: AND 0000012c: DUP2 0000012d: JUMP 0000012e: JUMPDEST 0000012f: PUSH1 0x40 00000131: MLOAD 00000132: PUSH1 0x01 00000134: PUSH1 0x01 00000136: PUSH1 0xa0 00000138: SHL 00000139: SUB 0000013a: SWAP1 0000013b: SWAP2 0000013c: AND 0000013d: DUP2 0000013e: MSTORE 0000013f: PUSH1 0x20 00000141: ADD 00000142: JUMPDEST 00000143: PUSH1 0x40 00000145: MLOAD 00000146: DUP1 00000147: SWAP2 00000148: SUB 00000149: SWAP1 0000014a: RETURN 0000014b: JUMPDEST 0000014c: CALLVALUE 0000014d: DUP1 0000014e: ISZERO 0000014f: PUSH2 0x0157 00000152: JUMPI 00000153: PUSH1 0x00 00000155: DUP1 00000156: REVERT 00000157: JUMPDEST 00000158: POP 00000159: PUSH2 0x016b 0000015c: PUSH2 0x0166 0000015f: CALLDATASIZE 00000160: PUSH1 0x04 00000162: PUSH2 0x0ae7 00000165: JUMP 00000166: JUMPDEST 00000167: PUSH2 0x0371 0000016a: JUMP 0000016b: JUMPDEST 0000016c: STOP 0000016d: JUMPDEST 0000016e: CALLVALUE 0000016f: DUP1 00000170: ISZERO 00000171: PUSH2 0x0179 00000174: JUMPI 00000175: PUSH1 0x00 00000177: DUP1 00000178: REVERT 00000179: JUMPDEST 0000017a: POP 0000017b: PUSH2 0x016b 0000017e: PUSH2 0x0188 00000181: CALLDATASIZE 00000182: PUSH1 0x04 00000184: PUSH2 0x0b04 00000187: JUMP 00000188: JUMPDEST 00000189: PUSH2 0x0393 0000018c: JUMP 0000018d: JUMPDEST 0000018e: CALLVALUE 0000018f: DUP1 00000190: ISZERO 00000191: PUSH2 0x0199 00000194: JUMPI 00000195: PUSH1 0x00 00000197: DUP1 00000198: REVERT 00000199: JUMPDEST 0000019a: POP 0000019b: PUSH2 0x01ba 0000019e: PUSH2 0x01a8 000001a1: CALLDATASIZE 000001a2: PUSH1 0x04 000001a4: PUSH2 0x0b32 000001a7: JUMP 000001a8: JUMPDEST 000001a9: PUSH1 0x05 000001ab: PUSH1 0x20 000001ad: MSTORE 000001ae: PUSH1 0x00 000001b0: SWAP1 000001b1: DUP2 000001b2: MSTORE 000001b3: PUSH1 0x40 000001b5: SWAP1 000001b6: KECCAK256 000001b7: SLOAD 000001b8: DUP2 000001b9: JUMP 000001ba: JUMPDEST 000001bb: PUSH1 0x40 000001bd: MLOAD 000001be: SWAP1 000001bf: DUP2 000001c0: MSTORE 000001c1: PUSH1 0x20 000001c3: ADD 000001c4: PUSH2 0x0142 000001c7: JUMP 000001c8: JUMPDEST 000001c9: CALLVALUE 000001ca: DUP1 000001cb: ISZERO 000001cc: PUSH2 0x01d4 000001cf: JUMPI 000001d0: PUSH1 0x00 000001d2: DUP1 000001d3: REVERT 000001d4: JUMPDEST 000001d5: POP 000001d6: PUSH2 0x016b 000001d9: PUSH2 0x052e 000001dc: JUMP 000001dd: JUMPDEST 000001de: CALLVALUE 000001df: DUP1 000001e0: ISZERO 000001e1: PUSH2 0x01e9 000001e4: JUMPI 000001e5: PUSH1 0x00 000001e7: DUP1 000001e8: REVERT 000001e9: JUMPDEST 000001ea: POP 000001eb: PUSH1 0x02 000001ed: SLOAD 000001ee: PUSH2 0x012e 000001f1: SWAP1 000001f2: PUSH1 0x01 000001f4: PUSH1 0x01 000001f6: PUSH1 0xa0 000001f8: SHL 000001f9: SUB 000001fa: AND 000001fb: DUP2 000001fc: JUMP 000001fd: JUMPDEST 000001fe: CALLVALUE 000001ff: DUP1 00000200: ISZERO 00000201: PUSH2 0x0209 00000204: JUMPI 00000205: PUSH1 0x00 00000207: DUP1 00000208: REVERT 00000209: JUMPDEST 0000020a: POP 0000020b: PUSH1 0x00 0000020d: SLOAD 0000020e: PUSH1 0x01 00000210: PUSH1 0x01 00000212: PUSH1 0xa0 00000214: SHL 00000215: SUB 00000216: AND 00000217: PUSH2 0x012e 0000021a: JUMP 0000021b: JUMPDEST 0000021c: CALLVALUE 0000021d: DUP1 0000021e: ISZERO 0000021f: PUSH2 0x0227 00000222: JUMPI 00000223: PUSH1 0x00 00000225: DUP1 00000226: REVERT 00000227: JUMPDEST 00000228: POP 00000229: PUSH2 0x016b 0000022c: PUSH2 0x0236 0000022f: CALLDATASIZE 00000230: PUSH1 0x04 00000232: PUSH2 0x0b04 00000235: JUMP 00000236: JUMPDEST 00000237: PUSH2 0x0542 0000023a: JUMP 0000023b: JUMPDEST 0000023c: CALLVALUE 0000023d: DUP1 0000023e: ISZERO 0000023f: PUSH2 0x0247 00000242: JUMPI 00000243: PUSH1 0x00 00000245: DUP1 00000246: REVERT 00000247: JUMPDEST 00000248: POP 00000249: PUSH2 0x01ba 0000024c: PUSH2 0x0256 0000024f: CALLDATASIZE 00000250: PUSH1 0x04 00000252: PUSH2 0x0b32 00000255: JUMP 00000256: JUMPDEST 00000257: PUSH1 0x04 00000259: PUSH1 0x20 0000025b: MSTORE 0000025c: PUSH1 0x00 0000025e: SWAP1 0000025f: DUP2 00000260: MSTORE 00000261: PUSH1 0x40 00000263: SWAP1 00000264: KECCAK256 00000265: SLOAD 00000266: DUP2 00000267: JUMP 00000268: JUMPDEST 00000269: CALLVALUE 0000026a: DUP1 0000026b: ISZERO 0000026c: PUSH2 0x0274 0000026f: JUMPI 00000270: PUSH1 0x00 00000272: DUP1 00000273: REVERT 00000274: JUMPDEST 00000275: POP 00000276: PUSH1 0x06 00000278: SLOAD 00000279: PUSH2 0x0282 0000027c: SWAP1 0000027d: PUSH1 0xff 0000027f: AND 00000280: DUP2 00000281: JUMP 00000282: JUMPDEST 00000283: PUSH1 0x40 00000285: MLOAD 00000286: SWAP1 00000287: ISZERO 00000288: ISZERO 00000289: DUP2 0000028a: MSTORE 0000028b: PUSH1 0x20 0000028d: ADD 0000028e: PUSH2 0x0142 00000291: JUMP 00000292: JUMPDEST 00000293: CALLVALUE 00000294: DUP1 00000295: ISZERO 00000296: PUSH2 0x029e 00000299: JUMPI 0000029a: PUSH1 0x00 0000029c: DUP1 0000029d: REVERT 0000029e: JUMPDEST 0000029f: POP 000002a0: PUSH2 0x016b 000002a3: PUSH2 0x02ad 000002a6: CALLDATASIZE 000002a7: PUSH1 0x04 000002a9: PUSH2 0x0b04 000002ac: JUMP 000002ad: JUMPDEST 000002ae: PUSH2 0x05b7 000002b1: JUMP 000002b2: JUMPDEST 000002b3: CALLVALUE 000002b4: DUP1 000002b5: ISZERO 000002b6: PUSH2 0x02be 000002b9: JUMPI 000002ba: PUSH1 0x00 000002bc: DUP1 000002bd: REVERT 000002be: JUMPDEST 000002bf: POP 000002c0: PUSH2 0x016b 000002c3: PUSH2 0x02cd 000002c6: CALLDATASIZE 000002c7: PUSH1 0x04 000002c9: PUSH2 0x0ae7 000002cc: JUMP 000002cd: JUMPDEST 000002ce: PUSH2 0x06c7 000002d1: JUMP 000002d2: JUMPDEST 000002d3: CALLVALUE 000002d4: DUP1 000002d5: ISZERO 000002d6: PUSH2 0x02de 000002d9: JUMPI 000002da: PUSH1 0x00 000002dc: DUP1 000002dd: REVERT 000002de: JUMPDEST 000002df: POP 000002e0: PUSH2 0x01ba 000002e3: PUSH2 0x02ed 000002e6: CALLDATASIZE 000002e7: PUSH1 0x04 000002e9: PUSH2 0x0b32 000002ec: JUMP 000002ed: JUMPDEST 000002ee: PUSH2 0x06e2 000002f1: JUMP 000002f2: JUMPDEST 000002f3: CALLVALUE 000002f4: DUP1 000002f5: ISZERO 000002f6: PUSH2 0x02fe 000002f9: JUMPI 000002fa: PUSH1 0x00 000002fc: DUP1 000002fd: REVERT 000002fe: JUMPDEST 000002ff: POP 00000300: PUSH1 0x06 00000302: SLOAD 00000303: PUSH2 0x0282 00000306: SWAP1 00000307: PUSH2 0x0100 0000030a: SWAP1 0000030b: DIV 0000030c: PUSH1 0xff 0000030e: AND 0000030f: DUP2 00000310: JUMP 00000311: JUMPDEST 00000312: CALLVALUE 00000313: DUP1 00000314: ISZERO 00000315: PUSH2 0x031d 00000318: JUMPI 00000319: PUSH1 0x00 0000031b: DUP1 0000031c: REVERT 0000031d: JUMPDEST 0000031e: POP 0000031f: PUSH2 0x016b 00000322: PUSH2 0x032c 00000325: CALLDATASIZE 00000326: PUSH1 0x04 00000328: PUSH2 0x0b32 0000032b: JUMP 0000032c: JUMPDEST 0000032d: PUSH2 0x0776 00000330: JUMP 00000331: JUMPDEST 00000332: CALLVALUE 00000333: DUP1 00000334: ISZERO 00000335: PUSH2 0x033d 00000338: JUMPI 00000339: PUSH1 0x00 0000033b: DUP1 0000033c: REVERT 0000033d: JUMPDEST 0000033e: POP 0000033f: PUSH2 0x01ba 00000342: PUSH2 0x034c 00000345: CALLDATASIZE 00000346: PUSH1 0x04 00000348: PUSH2 0x0b32 0000034b: JUMP 0000034c: JUMPDEST 0000034d: PUSH2 0x07b9 00000350: JUMP 00000351: JUMPDEST 00000352: CALLVALUE 00000353: DUP1 00000354: ISZERO 00000355: PUSH2 0x035d 00000358: JUMPI 00000359: PUSH1 0x00 0000035b: DUP1 0000035c: REVERT 0000035d: JUMPDEST 0000035e: POP 0000035f: PUSH1 0x03 00000361: SLOAD 00000362: PUSH2 0x012e 00000365: SWAP1 00000366: PUSH1 0x01 00000368: PUSH1 0x01 0000036a: PUSH1 0xa0 0000036c: SHL 0000036d: SUB 0000036e: AND 0000036f: DUP2 00000370: JUMP 00000371: JUMPDEST 00000372: PUSH2 0x0379 00000375: PUSH2 0x085d 00000378: JUMP 00000379: JUMPDEST 0000037a: PUSH1 0x06 0000037c: DUP1 0000037d: SLOAD 0000037e: SWAP2 0000037f: ISZERO 00000380: ISZERO 00000381: PUSH2 0x0100 00000384: MUL 00000385: PUSH2 0xff00 00000388: NOT 00000389: SWAP1 0000038a: SWAP3 0000038b: AND 0000038c: SWAP2 0000038d: SWAP1 0000038e: SWAP2 0000038f: OR 00000390: SWAP1 00000391: SSTORE 00000392: JUMP 00000393: JUMPDEST 00000394: PUSH1 0x06 00000396: SLOAD 00000397: PUSH1 0xff 00000399: AND 0000039a: ISZERO 0000039b: PUSH2 0x03b7 0000039e: JUMPI 0000039f: PUSH1 0x40 000003a1: MLOAD 000003a2: PUSH4 0x0171712b 000003a7: PUSH1 0xe4 000003a9: SHL 000003aa: DUP2 000003ab: MSTORE 000003ac: PUSH1 0x04 000003ae: ADD 000003af: PUSH1 0x40 000003b1: MLOAD 000003b2: DUP1 000003b3: SWAP2 000003b4: SUB 000003b5: SWAP1 000003b6: REVERT 000003b7: JUMPDEST 000003b8: PUSH2 0x03c0 000003bb: CALLER 000003bc: PUSH2 0x07b9 000003bf: JUMP 000003c0: JUMPDEST 000003c1: DUP2 000003c2: GT 000003c3: ISZERO 000003c4: PUSH2 0x03e0 000003c7: JUMPI 000003c8: PUSH1 0x40 000003ca: MLOAD 000003cb: PUSH4 0x1aaad593 000003d0: PUSH1 0xe0 000003d2: SHL 000003d3: DUP2 000003d4: MSTORE 000003d5: PUSH1 0x04 000003d7: ADD 000003d8: PUSH1 0x40 000003da: MLOAD 000003db: DUP1 000003dc: SWAP2 000003dd: SUB 000003de: SWAP1 000003df: REVERT 000003e0: JUMPDEST 000003e1: CALLER 000003e2: PUSH1 0x00 000003e4: SWAP1 000003e5: DUP2 000003e6: MSTORE 000003e7: PUSH1 0x04 000003e9: PUSH1 0x20 000003eb: MSTORE 000003ec: PUSH1 0x40 000003ee: DUP2 000003ef: KECCAK256 000003f0: DUP1 000003f1: SLOAD 000003f2: DUP4 000003f3: SWAP3 000003f4: SWAP1 000003f5: PUSH2 0x03ff 000003f8: SWAP1 000003f9: DUP5 000003fa: SWAP1 000003fb: PUSH2 0x0b65 000003fe: JUMP 000003ff: JUMPDEST 00000400: SWAP1 00000401: SWAP2 00000402: SSTORE 00000403: POP 00000404: POP 00000405: PUSH1 0x01 00000407: SLOAD 00000408: PUSH1 0x40 0000040a: DUP1 0000040b: MLOAD 0000040c: PUSH4 0xf77c4791 00000411: PUSH1 0xe0 00000413: SHL 00000414: DUP2 00000415: MSTORE 00000416: SWAP1 00000417: MLOAD 00000418: PUSH2 0x04fe 0000041b: SWAP3 0000041c: PUSH1 0x01 0000041e: PUSH1 0x01 00000420: PUSH1 0xa0 00000422: SHL 00000423: SUB 00000424: AND 00000425: SWAP2 00000426: PUSH4 0xf77c4791 0000042b: SWAP2 0000042c: PUSH1 0x04 0000042e: DUP1 0000042f: DUP4 00000430: ADD 00000431: SWAP3 00000432: PUSH1 0x20 00000434: SWAP3 00000435: SWAP2 00000436: SWAP1 00000437: DUP3 00000438: SWAP1 00000439: SUB 0000043a: ADD 0000043b: DUP2 0000043c: DUP7 0000043d: GAS 0000043e: STATICCALL 0000043f: ISZERO 00000440: DUP1 00000441: ISZERO 00000442: PUSH2 0x044f 00000445: JUMPI 00000446: RETURNDATASIZE 00000447: PUSH1 0x00 00000449: DUP1 0000044a: RETURNDATACOPY 0000044b: RETURNDATASIZE 0000044c: PUSH1 0x00 0000044e: REVERT 0000044f: JUMPDEST 00000450: POP 00000451: POP 00000452: POP 00000453: POP 00000454: PUSH1 0x40 00000456: MLOAD 00000457: RETURNDATASIZE 00000458: PUSH1 0x1f 0000045a: NOT 0000045b: PUSH1 0x1f 0000045d: DUP3 0000045e: ADD 0000045f: AND 00000460: DUP3 00000461: ADD 00000462: DUP1 00000463: PUSH1 0x40 00000465: MSTORE 00000466: POP 00000467: DUP2 00000468: ADD 00000469: SWAP1 0000046a: PUSH2 0x0473 0000046d: SWAP2 0000046e: SWAP1 0000046f: PUSH2 0x0b78 00000472: JUMP 00000473: JUMPDEST 00000474: PUSH1 0x02 00000476: PUSH1 0x00 00000478: SWAP1 00000479: SLOAD 0000047a: SWAP1 0000047b: PUSH2 0x0100 0000047e: EXP 0000047f: SWAP1 00000480: DIV 00000481: PUSH1 0x01 00000483: PUSH1 0x01 00000485: PUSH1 0xa0 00000487: SHL 00000488: SUB 00000489: AND 0000048a: PUSH1 0x01 0000048c: PUSH1 0x01 0000048e: PUSH1 0xa0 00000490: SHL 00000491: SUB 00000492: AND 00000493: PUSH4 0x67515592 00000498: PUSH1 0x40 0000049a: MLOAD 0000049b: DUP2 0000049c: PUSH4 0xffffffff 000004a1: AND 000004a2: PUSH1 0xe0 000004a4: SHL 000004a5: DUP2 000004a6: MSTORE 000004a7: PUSH1 0x04 000004a9: ADD 000004aa: PUSH1 0x20 000004ac: PUSH1 0x40 000004ae: MLOAD 000004af: DUP1 000004b0: DUP4 000004b1: SUB 000004b2: DUP2 000004b3: DUP7 000004b4: GAS 000004b5: STATICCALL 000004b6: ISZERO 000004b7: DUP1 000004b8: ISZERO 000004b9: PUSH2 0x04c6 000004bc: JUMPI 000004bd: RETURNDATASIZE 000004be: PUSH1 0x00 000004c0: DUP1 000004c1: RETURNDATACOPY 000004c2: RETURNDATASIZE 000004c3: PUSH1 0x00 000004c5: REVERT 000004c6: JUMPDEST 000004c7: POP 000004c8: POP 000004c9: POP 000004ca: POP 000004cb: PUSH1 0x40 000004cd: MLOAD 000004ce: RETURNDATASIZE 000004cf: PUSH1 0x1f 000004d1: NOT 000004d2: PUSH1 0x1f 000004d4: DUP3 000004d5: ADD 000004d6: AND 000004d7: DUP3 000004d8: ADD 000004d9: DUP1 000004da: PUSH1 0x40 000004dc: MSTORE 000004dd: POP 000004de: DUP2 000004df: ADD 000004e0: SWAP1 000004e1: PUSH2 0x04ea 000004e4: SWAP2 000004e5: SWAP1 000004e6: PUSH2 0x0b78 000004e9: JUMP 000004ea: JUMPDEST 000004eb: PUSH1 0x03 000004ed: SLOAD 000004ee: PUSH1 0x01 000004f0: PUSH1 0x01 000004f2: PUSH1 0xa0 000004f4: SHL 000004f5: SUB 000004f6: AND 000004f7: SWAP2 000004f8: SWAP1 000004f9: DUP5 000004fa: PUSH2 0x088a 000004fd: JUMP 000004fe: JUMPDEST 000004ff: PUSH1 0x40 00000501: MLOAD 00000502: DUP2 00000503: SWAP1 00000504: CALLER 00000505: SWAP1 00000506: PUSH32 0x5e1dd8c4451717d5ca4ffbefdada35e22e0871220b9ed9dd03a351f0938c5ed7 00000527: SWAP1 00000528: PUSH1 0x00 0000052a: SWAP1 0000052b: LOG3 0000052c: POP 0000052d: JUMP 0000052e: JUMPDEST 0000052f: PUSH2 0x0536 00000532: PUSH2 0x085d 00000535: JUMP 00000536: JUMPDEST 00000537: PUSH2 0x0540 0000053a: PUSH1 0x00 0000053c: PUSH2 0x08ea 0000053f: JUMP 00000540: JUMPDEST 00000541: JUMP 00000542: JUMPDEST 00000543: PUSH2 0x054a 00000546: PUSH2 0x085d 00000549: JUMP 0000054a: JUMPDEST 0000054b: PUSH1 0x40 0000054d: MLOAD 0000054e: PUSH1 0x00 00000550: SWAP1 00000551: CALLER 00000552: SWAP1 00000553: DUP4 00000554: SWAP1 00000555: DUP4 00000556: DUP2 00000557: DUP2 00000558: DUP2 00000559: DUP6 0000055a: DUP8 0000055b: GAS 0000055c: CALL 0000055d: SWAP3 0000055e: POP 0000055f: POP 00000560: POP 00000561: RETURNDATASIZE 00000562: DUP1 00000563: PUSH1 0x00 00000565: DUP2 00000566: EQ 00000567: PUSH2 0x058c 0000056a: JUMPI 0000056b: PUSH1 0x40 0000056d: MLOAD 0000056e: SWAP2 0000056f: POP 00000570: PUSH1 0x1f 00000572: NOT 00000573: PUSH1 0x3f 00000575: RETURNDATASIZE 00000576: ADD 00000577: AND 00000578: DUP3 00000579: ADD 0000057a: PUSH1 0x40 0000057c: MSTORE 0000057d: RETURNDATASIZE 0000057e: DUP3 0000057f: MSTORE 00000580: RETURNDATASIZE 00000581: PUSH1 0x00 00000583: PUSH1 0x20 00000585: DUP5 00000586: ADD 00000587: RETURNDATACOPY 00000588: PUSH2 0x0591 0000058b: JUMP 0000058c: JUMPDEST 0000058d: PUSH1 0x60 0000058f: SWAP2 00000590: POP 00000591: JUMPDEST 00000592: POP 00000593: POP 00000594: SWAP1 00000595: POP 00000596: DUP1 00000597: PUSH2 0x05b3 0000059a: JUMPI 0000059b: PUSH1 0x40 0000059d: MLOAD 0000059e: PUSH4 0x1d42c867 000005a3: PUSH1 0xe2 000005a5: SHL 000005a6: DUP2 000005a7: MSTORE 000005a8: PUSH1 0x04 000005aa: ADD 000005ab: PUSH1 0x40 000005ad: MLOAD 000005ae: DUP1 000005af: SWAP2 000005b0: SUB 000005b1: SWAP1 000005b2: REVERT 000005b3: JUMPDEST 000005b4: POP 000005b5: POP 000005b6: JUMP 000005b7: JUMPDEST 000005b8: PUSH1 0x06 000005ba: SLOAD 000005bb: PUSH2 0x0100 000005be: SWAP1 000005bf: DIV 000005c0: PUSH1 0xff 000005c2: AND 000005c3: ISZERO 000005c4: PUSH2 0x05e0 000005c7: JUMPI 000005c8: PUSH1 0x40 000005ca: MLOAD 000005cb: PUSH4 0x18863d4d 000005d0: PUSH1 0xe0 000005d2: SHL 000005d3: DUP2 000005d4: MSTORE 000005d5: PUSH1 0x04 000005d7: ADD 000005d8: PUSH1 0x40 000005da: MLOAD 000005db: DUP1 000005dc: SWAP2 000005dd: SUB 000005de: SWAP1 000005df: REVERT 000005e0: JUMPDEST 000005e1: PUSH2 0x05e9 000005e4: CALLER 000005e5: PUSH2 0x07b9 000005e8: JUMP 000005e9: JUMPDEST 000005ea: DUP2 000005eb: GT 000005ec: ISZERO 000005ed: PUSH2 0x0609 000005f0: JUMPI 000005f1: PUSH1 0x40 000005f3: MLOAD 000005f4: PUSH4 0x356680b7 000005f9: PUSH1 0xe0 000005fb: SHL 000005fc: DUP2 000005fd: MSTORE 000005fe: PUSH1 0x04 00000600: ADD 00000601: PUSH1 0x40 00000603: MLOAD 00000604: DUP1 00000605: SWAP2 00000606: SUB 00000607: SWAP1 00000608: REVERT 00000609: JUMPDEST 0000060a: CALLER 0000060b: PUSH1 0x00 0000060d: SWAP1 0000060e: DUP2 0000060f: MSTORE 00000610: PUSH1 0x05 00000612: PUSH1 0x20 00000614: MSTORE 00000615: PUSH1 0x40 00000617: DUP2 00000618: KECCAK256 00000619: DUP1 0000061a: SLOAD 0000061b: DUP4 0000061c: SWAP3 0000061d: SWAP1 0000061e: PUSH2 0x0628 00000621: SWAP1 00000622: DUP5 00000623: SWAP1 00000624: PUSH2 0x0b65 00000627: JUMP 00000628: JUMPDEST 00000629: SWAP1 0000062a: SWAP2 0000062b: SSTORE 0000062c: POP 0000062d: POP 0000062e: PUSH1 0x40 00000630: MLOAD 00000631: PUSH1 0x00 00000633: SWAP1 00000634: CALLER 00000635: SWAP1 00000636: DUP4 00000637: SWAP1 00000638: DUP4 00000639: DUP2 0000063a: DUP2 0000063b: DUP2 0000063c: DUP6 0000063d: DUP8 0000063e: GAS 0000063f: CALL 00000640: SWAP3 00000641: POP 00000642: POP 00000643: POP 00000644: RETURNDATASIZE 00000645: DUP1 00000646: PUSH1 0x00 00000648: DUP2 00000649: EQ 0000064a: PUSH2 0x066f 0000064d: JUMPI 0000064e: PUSH1 0x40 00000650: MLOAD 00000651: SWAP2 00000652: POP 00000653: PUSH1 0x1f 00000655: NOT 00000656: PUSH1 0x3f 00000658: RETURNDATASIZE 00000659: ADD 0000065a: AND 0000065b: DUP3 0000065c: ADD 0000065d: PUSH1 0x40 0000065f: MSTORE 00000660: RETURNDATASIZE 00000661: DUP3 00000662: MSTORE 00000663: RETURNDATASIZE 00000664: PUSH1 0x00 00000666: PUSH1 0x20 00000668: DUP5 00000669: ADD 0000066a: RETURNDATACOPY 0000066b: PUSH2 0x0674 0000066e: JUMP 0000066f: JUMPDEST 00000670: PUSH1 0x60 00000672: SWAP2 00000673: POP 00000674: JUMPDEST 00000675: POP 00000676: POP 00000677: SWAP1 00000678: POP 00000679: DUP1 0000067a: PUSH2 0x0696 0000067d: JUMPI 0000067e: PUSH1 0x40 00000680: MLOAD 00000681: PUSH4 0x1d42c867 00000686: PUSH1 0xe2 00000688: SHL 00000689: DUP2 0000068a: MSTORE 0000068b: PUSH1 0x04 0000068d: ADD 0000068e: PUSH1 0x40 00000690: MLOAD 00000691: DUP1 00000692: SWAP2 00000693: SUB 00000694: SWAP1 00000695: REVERT 00000696: JUMPDEST 00000697: PUSH1 0x40 00000699: MLOAD 0000069a: DUP3 0000069b: SWAP1 0000069c: CALLER 0000069d: SWAP1 0000069e: PUSH32 0x884edad9ce6fa2440d8a54cc123490eb96d2768479d49ff9c7366125a9424364 000006bf: SWAP1 000006c0: PUSH1 0x00 000006c2: SWAP1 000006c3: LOG3 000006c4: POP 000006c5: POP 000006c6: JUMP 000006c7: JUMPDEST 000006c8: PUSH2 0x06cf 000006cb: PUSH2 0x085d 000006ce: JUMP 000006cf: JUMPDEST 000006d0: PUSH1 0x06 000006d2: DUP1 000006d3: SLOAD 000006d4: PUSH1 0xff 000006d6: NOT 000006d7: AND 000006d8: SWAP2 000006d9: ISZERO 000006da: ISZERO 000006db: SWAP2 000006dc: SWAP1 000006dd: SWAP2 000006de: OR 000006df: SWAP1 000006e0: SSTORE 000006e1: JUMP 000006e2: JUMPDEST 000006e3: PUSH1 0x01 000006e5: PUSH1 0x01 000006e7: PUSH1 0xa0 000006e9: SHL 000006ea: SUB 000006eb: DUP2 000006ec: DUP2 000006ed: AND 000006ee: PUSH1 0x00 000006f0: DUP2 000006f1: DUP2 000006f2: MSTORE 000006f3: PUSH1 0x04 000006f5: PUSH1 0x20 000006f7: DUP2 000006f8: SWAP1 000006f9: MSTORE 000006fa: PUSH1 0x40 000006fc: DUP1 000006fd: DUP4 000006fe: KECCAK256 000006ff: SLOAD 00000700: PUSH1 0x02 00000702: SLOAD 00000703: SWAP2 00000704: MLOAD 00000705: PUSH4 0x0d88d9b7 0000070a: PUSH1 0xe4 0000070c: SHL 0000070d: DUP2 0000070e: MSTORE 0000070f: SWAP3 00000710: DUP4 00000711: ADD 00000712: SWAP5 00000713: SWAP1 00000714: SWAP5 00000715: MSTORE 00000716: SWAP2 00000717: SWAP4 00000718: SWAP2 00000719: SWAP1 0000071a: SWAP2 0000071b: AND 0000071c: SWAP1 0000071d: PUSH4 0xd88d9b70 00000722: SWAP1 00000723: PUSH1 0x24 00000725: ADD 00000726: PUSH1 0x20 00000728: PUSH1 0x40 0000072a: MLOAD 0000072b: DUP1 0000072c: DUP4 0000072d: SUB 0000072e: DUP2 0000072f: DUP7 00000730: GAS 00000731: STATICCALL 00000732: ISZERO 00000733: DUP1 00000734: ISZERO 00000735: PUSH2 0x0742 00000738: JUMPI 00000739: RETURNDATASIZE 0000073a: PUSH1 0x00 0000073c: DUP1 0000073d: RETURNDATACOPY 0000073e: RETURNDATASIZE 0000073f: PUSH1 0x00 00000741: REVERT 00000742: JUMPDEST 00000743: POP 00000744: POP 00000745: POP 00000746: POP 00000747: PUSH1 0x40 00000749: MLOAD 0000074a: RETURNDATASIZE 0000074b: PUSH1 0x1f 0000074d: NOT 0000074e: PUSH1 0x1f 00000750: DUP3 00000751: ADD 00000752: AND 00000753: DUP3 00000754: ADD 00000755: DUP1 00000756: PUSH1 0x40 00000758: MSTORE 00000759: POP 0000075a: DUP2 0000075b: ADD 0000075c: SWAP1 0000075d: PUSH2 0x0766 00000760: SWAP2 00000761: SWAP1 00000762: PUSH2 0x0b95 00000765: JUMP 00000766: JUMPDEST 00000767: PUSH2 0x0770 0000076a: SWAP2 0000076b: SWAP1 0000076c: PUSH2 0x0b65 0000076f: JUMP 00000770: JUMPDEST 00000771: SWAP3 00000772: SWAP2 00000773: POP 00000774: POP 00000775: JUMP 00000776: JUMPDEST 00000777: PUSH2 0x077e 0000077a: PUSH2 0x085d 0000077d: JUMP 0000077e: JUMPDEST 0000077f: PUSH1 0x01 00000781: PUSH1 0x01 00000783: PUSH1 0xa0 00000785: SHL 00000786: SUB 00000787: DUP2 00000788: AND 00000789: PUSH2 0x07ad 0000078c: JUMPI 0000078d: PUSH1 0x40 0000078f: MLOAD 00000790: PUSH4 0x1e4fbdf7 00000795: PUSH1 0xe0 00000797: SHL 00000798: DUP2 00000799: MSTORE 0000079a: PUSH1 0x00 0000079c: PUSH1 0x04 0000079e: DUP3 0000079f: ADD 000007a0: MSTORE 000007a1: PUSH1 0x24 000007a3: ADD 000007a4: JUMPDEST 000007a5: PUSH1 0x40 000007a7: MLOAD 000007a8: DUP1 000007a9: SWAP2 000007aa: SUB 000007ab: SWAP1 000007ac: REVERT 000007ad: JUMPDEST 000007ae: PUSH2 0x07b6 000007b1: DUP2 000007b2: PUSH2 0x08ea 000007b5: JUMP 000007b6: JUMPDEST 000007b7: POP 000007b8: JUMP 000007b9: JUMPDEST 000007ba: PUSH1 0x01 000007bc: PUSH1 0x01 000007be: PUSH1 0xa0 000007c0: SHL 000007c1: SUB 000007c2: DUP2 000007c3: AND 000007c4: PUSH1 0x00 000007c6: SWAP1 000007c7: DUP2 000007c8: MSTORE 000007c9: PUSH1 0x05 000007cb: PUSH1 0x20 000007cd: MSTORE 000007ce: PUSH1 0x40 000007d0: DUP2 000007d1: KECCAK256 000007d2: SLOAD 000007d3: PUSH2 0x07db 000007d6: DUP4 000007d7: PUSH2 0x06e2 000007da: JUMP 000007db: JUMPDEST 000007dc: PUSH1 0x01 000007de: SLOAD 000007df: PUSH1 0x40 000007e1: MLOAD 000007e2: PUSH4 0xfc7e286d 000007e7: PUSH1 0xe0 000007e9: SHL 000007ea: DUP2 000007eb: MSTORE 000007ec: PUSH1 0x01 000007ee: PUSH1 0x01 000007f0: PUSH1 0xa0 000007f2: SHL 000007f3: SUB 000007f4: DUP7 000007f5: DUP2 000007f6: AND 000007f7: PUSH1 0x04 000007f9: DUP4 000007fa: ADD 000007fb: MSTORE 000007fc: SWAP1 000007fd: SWAP2 000007fe: AND 000007ff: SWAP1 00000800: PUSH4 0xfc7e286d 00000805: SWAP1 00000806: PUSH1 0x24 00000808: ADD 00000809: PUSH1 0x20 0000080b: PUSH1 0x40 0000080d: MLOAD 0000080e: DUP1 0000080f: DUP4 00000810: SUB 00000811: DUP2 00000812: DUP7 00000813: GAS 00000814: STATICCALL 00000815: ISZERO 00000816: DUP1 00000817: ISZERO 00000818: PUSH2 0x0825 0000081b: JUMPI 0000081c: RETURNDATASIZE 0000081d: PUSH1 0x00 0000081f: DUP1 00000820: RETURNDATACOPY 00000821: RETURNDATASIZE 00000822: PUSH1 0x00 00000824: REVERT 00000825: JUMPDEST 00000826: POP 00000827: POP 00000828: POP 00000829: POP 0000082a: PUSH1 0x40 0000082c: MLOAD 0000082d: RETURNDATASIZE 0000082e: PUSH1 0x1f 00000830: NOT 00000831: PUSH1 0x1f 00000833: DUP3 00000834: ADD 00000835: AND 00000836: DUP3 00000837: ADD 00000838: DUP1 00000839: PUSH1 0x40 0000083b: MSTORE 0000083c: POP 0000083d: DUP2 0000083e: ADD 0000083f: SWAP1 00000840: PUSH2 0x0849 00000843: SWAP2 00000844: SWAP1 00000845: PUSH2 0x0b95 00000848: JUMP 00000849: JUMPDEST 0000084a: PUSH2 0x0853 0000084d: SWAP2 0000084e: SWAP1 0000084f: PUSH2 0x0bae 00000852: JUMP 00000853: JUMPDEST 00000854: PUSH2 0x0770 00000857: SWAP2 00000858: SWAP1 00000859: PUSH2 0x0bae 0000085c: JUMP 0000085d: JUMPDEST 0000085e: PUSH1 0x00 00000860: SLOAD 00000861: PUSH1 0x01 00000863: PUSH1 0x01 00000865: PUSH1 0xa0 00000867: SHL 00000868: SUB 00000869: AND 0000086a: CALLER 0000086b: EQ 0000086c: PUSH2 0x0540 0000086f: JUMPI 00000870: PUSH1 0x40 00000872: MLOAD 00000873: PUSH4 0x118cdaa7 00000878: PUSH1 0xe0 0000087a: SHL 0000087b: DUP2 0000087c: MSTORE 0000087d: CALLER 0000087e: PUSH1 0x04 00000880: DUP3 00000881: ADD 00000882: MSTORE 00000883: PUSH1 0x24 00000885: ADD 00000886: PUSH2 0x07a4 00000889: JUMP 0000088a: JUMPDEST 0000088b: PUSH1 0x40 0000088d: DUP1 0000088e: MLOAD 0000088f: PUSH1 0x01 00000891: PUSH1 0x01 00000893: PUSH1 0xa0 00000895: SHL 00000896: SUB 00000897: DUP6 00000898: DUP2 00000899: AND 0000089a: PUSH1 0x24 0000089c: DUP4 0000089d: ADD 0000089e: MSTORE 0000089f: DUP5 000008a0: AND 000008a1: PUSH1 0x44 000008a3: DUP3 000008a4: ADD 000008a5: MSTORE 000008a6: PUSH1 0x64 000008a8: DUP1 000008a9: DUP3 000008aa: ADD 000008ab: DUP5 000008ac: SWAP1 000008ad: MSTORE 000008ae: DUP3 000008af: MLOAD 000008b0: DUP1 000008b1: DUP4 000008b2: SUB 000008b3: SWAP1 000008b4: SWAP2 000008b5: ADD 000008b6: DUP2 000008b7: MSTORE 000008b8: PUSH1 0x84 000008ba: SWAP1 000008bb: SWAP2 000008bc: ADD 000008bd: SWAP1 000008be: SWAP2 000008bf: MSTORE 000008c0: PUSH1 0x20 000008c2: DUP2 000008c3: ADD 000008c4: DUP1 000008c5: MLOAD 000008c6: PUSH1 0x01 000008c8: PUSH1 0x01 000008ca: PUSH1 0xe0 000008cc: SHL 000008cd: SUB 000008ce: AND 000008cf: PUSH4 0x23b872dd 000008d4: PUSH1 0xe0 000008d6: SHL 000008d7: OR 000008d8: SWAP1 000008d9: MSTORE 000008da: PUSH2 0x08e4 000008dd: SWAP1 000008de: DUP6 000008df: SWAP1 000008e0: PUSH2 0x093a 000008e3: JUMP 000008e4: JUMPDEST 000008e5: POP 000008e6: POP 000008e7: POP 000008e8: POP 000008e9: JUMP 000008ea: JUMPDEST 000008eb: PUSH1 0x00 000008ed: DUP1 000008ee: SLOAD 000008ef: PUSH1 0x01 000008f1: PUSH1 0x01 000008f3: PUSH1 0xa0 000008f5: SHL 000008f6: SUB 000008f7: DUP4 000008f8: DUP2 000008f9: AND 000008fa: PUSH1 0x01 000008fc: PUSH1 0x01 000008fe: PUSH1 0xa0 00000900: SHL 00000901: SUB 00000902: NOT 00000903: DUP4 00000904: AND 00000905: DUP2 00000906: OR 00000907: DUP5 00000908: SSTORE 00000909: PUSH1 0x40 0000090b: MLOAD 0000090c: SWAP2 0000090d: SWAP1 0000090e: SWAP3 0000090f: AND 00000910: SWAP3 00000911: DUP4 00000912: SWAP2 00000913: PUSH32 0x8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0 00000934: SWAP2 00000935: SWAP1 00000936: LOG3 00000937: POP 00000938: POP 00000939: JUMP 0000093a: JUMPDEST 0000093b: PUSH1 0x00 0000093d: PUSH2 0x094f 00000940: PUSH1 0x01 00000942: PUSH1 0x01 00000944: PUSH1 0xa0 00000946: SHL 00000947: SUB 00000948: DUP5 00000949: AND 0000094a: DUP4 0000094b: PUSH2 0x09a2 0000094e: JUMP 0000094f: JUMPDEST 00000950: SWAP1 00000951: POP 00000952: DUP1 00000953: MLOAD 00000954: PUSH1 0x00 00000956: EQ 00000957: ISZERO 00000958: DUP1 00000959: ISZERO 0000095a: PUSH2 0x0974 0000095d: JUMPI 0000095e: POP 0000095f: DUP1 00000960: DUP1 00000961: PUSH1 0x20 00000963: ADD 00000964: SWAP1 00000965: MLOAD 00000966: DUP2 00000967: ADD 00000968: SWAP1 00000969: PUSH2 0x0972 0000096c: SWAP2 0000096d: SWAP1 0000096e: PUSH2 0x0bc1 00000971: JUMP 00000972: JUMPDEST 00000973: ISZERO 00000974: JUMPDEST 00000975: ISZERO 00000976: PUSH2 0x099d 00000979: JUMPI 0000097a: PUSH1 0x40 0000097c: MLOAD 0000097d: PUSH4 0x5274afe7 00000982: PUSH1 0xe0 00000984: SHL 00000985: DUP2 00000986: MSTORE 00000987: PUSH1 0x01 00000989: PUSH1 0x01 0000098b: PUSH1 0xa0 0000098d: SHL 0000098e: SUB 0000098f: DUP5 00000990: AND 00000991: PUSH1 0x04 00000993: DUP3 00000994: ADD 00000995: MSTORE 00000996: PUSH1 0x24 00000998: ADD 00000999: PUSH2 0x07a4 0000099c: JUMP 0000099d: JUMPDEST 0000099e: POP 0000099f: POP 000009a0: POP 000009a1: JUMP 000009a2: JUMPDEST 000009a3: PUSH1 0x60 000009a5: PUSH2 0x09b0 000009a8: DUP4 000009a9: DUP4 000009aa: PUSH1 0x00 000009ac: PUSH2 0x09b7 000009af: JUMP 000009b0: JUMPDEST 000009b1: SWAP4 000009b2: SWAP3 000009b3: POP 000009b4: POP 000009b5: POP 000009b6: JUMP 000009b7: JUMPDEST 000009b8: PUSH1 0x60 000009ba: DUP2 000009bb: SELFBALANCE 000009bc: LT 000009bd: ISZERO 000009be: PUSH2 0x09dc 000009c1: JUMPI 000009c2: PUSH1 0x40 000009c4: MLOAD 000009c5: PUSH4 0xcd786059 000009ca: PUSH1 0xe0 000009cc: SHL 000009cd: DUP2 000009ce: MSTORE 000009cf: ADDRESS 000009d0: PUSH1 0x04 000009d2: DUP3 000009d3: ADD 000009d4: MSTORE 000009d5: PUSH1 0x24 000009d7: ADD 000009d8: PUSH2 0x07a4 000009db: JUMP 000009dc: JUMPDEST 000009dd: PUSH1 0x00 000009df: DUP1 000009e0: DUP6 000009e1: PUSH1 0x01 000009e3: PUSH1 0x01 000009e5: PUSH1 0xa0 000009e7: SHL 000009e8: SUB 000009e9: AND 000009ea: DUP5 000009eb: DUP7 000009ec: PUSH1 0x40 000009ee: MLOAD 000009ef: PUSH2 0x09f8 000009f2: SWAP2 000009f3: SWAP1 000009f4: PUSH2 0x0bde 000009f7: JUMP 000009f8: JUMPDEST 000009f9: PUSH1 0x00 000009fb: PUSH1 0x40 000009fd: MLOAD 000009fe: DUP1 000009ff: DUP4 00000a00: SUB 00000a01: DUP2 00000a02: DUP6 00000a03: DUP8 00000a04: GAS 00000a05: CALL 00000a06: SWAP3 00000a07: POP 00000a08: POP 00000a09: POP 00000a0a: RETURNDATASIZE 00000a0b: DUP1 00000a0c: PUSH1 0x00 00000a0e: DUP2 00000a0f: EQ 00000a10: PUSH2 0x0a35 00000a13: JUMPI 00000a14: PUSH1 0x40 00000a16: MLOAD 00000a17: SWAP2 00000a18: POP 00000a19: PUSH1 0x1f 00000a1b: NOT 00000a1c: PUSH1 0x3f 00000a1e: RETURNDATASIZE 00000a1f: ADD 00000a20: AND 00000a21: DUP3 00000a22: ADD 00000a23: PUSH1 0x40 00000a25: MSTORE 00000a26: RETURNDATASIZE 00000a27: DUP3 00000a28: MSTORE 00000a29: RETURNDATASIZE 00000a2a: PUSH1 0x00 00000a2c: PUSH1 0x20 00000a2e: DUP5 00000a2f: ADD 00000a30: RETURNDATACOPY 00000a31: PUSH2 0x0a3a 00000a34: JUMP 00000a35: JUMPDEST 00000a36: PUSH1 0x60 00000a38: SWAP2 00000a39: POP 00000a3a: JUMPDEST 00000a3b: POP 00000a3c: SWAP2 00000a3d: POP 00000a3e: SWAP2 00000a3f: POP 00000a40: PUSH2 0x0a4a 00000a43: DUP7 00000a44: DUP4 00000a45: DUP4 00000a46: PUSH2 0x0a54 00000a49: JUMP 00000a4a: JUMPDEST 00000a4b: SWAP7 00000a4c: SWAP6 00000a4d: POP 00000a4e: POP 00000a4f: POP 00000a50: POP 00000a51: POP 00000a52: POP 00000a53: JUMP 00000a54: JUMPDEST 00000a55: PUSH1 0x60 00000a57: DUP3 00000a58: PUSH2 0x0a69 00000a5b: JUMPI 00000a5c: PUSH2 0x0a64 00000a5f: DUP3 00000a60: PUSH2 0x0ab0 00000a63: JUMP 00000a64: JUMPDEST 00000a65: PUSH2 0x09b0 00000a68: JUMP 00000a69: JUMPDEST 00000a6a: DUP2 00000a6b: MLOAD 00000a6c: ISZERO 00000a6d: DUP1 00000a6e: ISZERO 00000a6f: PUSH2 0x0a80 00000a72: JUMPI 00000a73: POP 00000a74: PUSH1 0x01 00000a76: PUSH1 0x01 00000a78: PUSH1 0xa0 00000a7a: SHL 00000a7b: SUB 00000a7c: DUP5 00000a7d: AND 00000a7e: EXTCODESIZE 00000a7f: ISZERO 00000a80: JUMPDEST 00000a81: ISZERO 00000a82: PUSH2 0x0aa9 00000a85: JUMPI 00000a86: PUSH1 0x40 00000a88: MLOAD 00000a89: PUSH4 0x9996b315 00000a8e: PUSH1 0xe0 00000a90: SHL 00000a91: DUP2 00000a92: MSTORE 00000a93: PUSH1 0x01 00000a95: PUSH1 0x01 00000a97: PUSH1 0xa0 00000a99: SHL 00000a9a: SUB 00000a9b: DUP6 00000a9c: AND 00000a9d: PUSH1 0x04 00000a9f: DUP3 00000aa0: ADD 00000aa1: MSTORE 00000aa2: PUSH1 0x24 00000aa4: ADD 00000aa5: PUSH2 0x07a4 00000aa8: JUMP 00000aa9: JUMPDEST 00000aaa: POP 00000aab: DUP1 00000aac: PUSH2 0x09b0 00000aaf: JUMP 00000ab0: JUMPDEST 00000ab1: DUP1 00000ab2: MLOAD 00000ab3: ISZERO 00000ab4: PUSH2 0x0ac0 00000ab7: JUMPI 00000ab8: DUP1 00000ab9: MLOAD 00000aba: DUP1 00000abb: DUP3 00000abc: PUSH1 0x20 00000abe: ADD 00000abf: REVERT 00000ac0: JUMPDEST 00000ac1: PUSH1 0x40 00000ac3: MLOAD 00000ac4: PUSH4 0x0a12f521 00000ac9: PUSH1 0xe1 00000acb: SHL 00000acc: DUP2 00000acd: MSTORE 00000ace: PUSH1 0x04 00000ad0: ADD 00000ad1: PUSH1 0x40 00000ad3: MLOAD 00000ad4: DUP1 00000ad5: SWAP2 00000ad6: SUB 00000ad7: SWAP1 00000ad8: REVERT 00000ad9: JUMPDEST 00000ada: DUP1 00000adb: ISZERO 00000adc: ISZERO 00000add: DUP2 00000ade: EQ 00000adf: PUSH2 0x07b6 00000ae2: JUMPI 00000ae3: PUSH1 0x00 00000ae5: DUP1 00000ae6: REVERT 00000ae7: JUMPDEST 00000ae8: PUSH1 0x00 00000aea: PUSH1 0x20 00000aec: DUP3 00000aed: DUP5 00000aee: SUB 00000aef: SLT 00000af0: ISZERO 00000af1: PUSH2 0x0af9 00000af4: JUMPI 00000af5: PUSH1 0x00 00000af7: DUP1 00000af8: REVERT 00000af9: JUMPDEST 00000afa: DUP2 00000afb: CALLDATALOAD 00000afc: PUSH2 0x09b0 00000aff: DUP2 00000b00: PUSH2 0x0ad9 00000b03: JUMP 00000b04: JUMPDEST 00000b05: PUSH1 0x00 00000b07: PUSH1 0x20 00000b09: DUP3 00000b0a: DUP5 00000b0b: SUB 00000b0c: SLT 00000b0d: ISZERO 00000b0e: PUSH2 0x0b16 00000b11: JUMPI 00000b12: PUSH1 0x00 00000b14: DUP1 00000b15: REVERT 00000b16: JUMPDEST 00000b17: POP 00000b18: CALLDATALOAD 00000b19: SWAP2 00000b1a: SWAP1 00000b1b: POP 00000b1c: JUMP 00000b1d: JUMPDEST 00000b1e: PUSH1 0x01 00000b20: PUSH1 0x01 00000b22: PUSH1 0xa0 00000b24: SHL 00000b25: SUB 00000b26: DUP2 00000b27: AND 00000b28: DUP2 00000b29: EQ 00000b2a: PUSH2 0x07b6 00000b2d: JUMPI 00000b2e: PUSH1 0x00 00000b30: DUP1 00000b31: REVERT 00000b32: JUMPDEST 00000b33: PUSH1 0x00 00000b35: PUSH1 0x20 00000b37: DUP3 00000b38: DUP5 00000b39: SUB 00000b3a: SLT 00000b3b: ISZERO 00000b3c: PUSH2 0x0b44 00000b3f: JUMPI 00000b40: PUSH1 0x00 00000b42: DUP1 00000b43: REVERT 00000b44: JUMPDEST 00000b45: DUP2 00000b46: CALLDATALOAD 00000b47: PUSH2 0x09b0 00000b4a: DUP2 00000b4b: PUSH2 0x0b1d 00000b4e: JUMP 00000b4f: JUMPDEST 00000b50: PUSH4 0x4e487b71 00000b55: PUSH1 0xe0 00000b57: SHL 00000b58: PUSH1 0x00 00000b5a: MSTORE 00000b5b: PUSH1 0x11 00000b5d: PUSH1 0x04 00000b5f: MSTORE 00000b60: PUSH1 0x24 00000b62: PUSH1 0x00 00000b64: REVERT 00000b65: JUMPDEST 00000b66: DUP1 00000b67: DUP3 00000b68: ADD 00000b69: DUP1 00000b6a: DUP3 00000b6b: GT 00000b6c: ISZERO 00000b6d: PUSH2 0x0770 00000b70: JUMPI 00000b71: PUSH2 0x0770 00000b74: PUSH2 0x0b4f 00000b77: JUMP 00000b78: JUMPDEST 00000b79: PUSH1 0x00 00000b7b: PUSH1 0x20 00000b7d: DUP3 00000b7e: DUP5 00000b7f: SUB 00000b80: SLT 00000b81: ISZERO 00000b82: PUSH2 0x0b8a 00000b85: JUMPI 00000b86: PUSH1 0x00 00000b88: DUP1 00000b89: REVERT 00000b8a: JUMPDEST 00000b8b: DUP2 00000b8c: MLOAD 00000b8d: PUSH2 0x09b0 00000b90: DUP2 00000b91: PUSH2 0x0b1d 00000b94: JUMP 00000b95: JUMPDEST 00000b96: PUSH1 0x00 00000b98: PUSH1 0x20 00000b9a: DUP3 00000b9b: DUP5 00000b9c: SUB 00000b9d: SLT 00000b9e: ISZERO 00000b9f: PUSH2 0x0ba7 00000ba2: JUMPI 00000ba3: PUSH1 0x00 00000ba5: DUP1 00000ba6: REVERT 00000ba7: JUMPDEST 00000ba8: POP 00000ba9: MLOAD 00000baa: SWAP2 00000bab: SWAP1 00000bac: POP 00000bad: JUMP 00000bae: JUMPDEST 00000baf: DUP2 00000bb0: DUP2 00000bb1: SUB 00000bb2: DUP2 00000bb3: DUP2 00000bb4: GT 00000bb5: ISZERO 00000bb6: PUSH2 0x0770 00000bb9: JUMPI 00000bba: PUSH2 0x0770 00000bbd: PUSH2 0x0b4f 00000bc0: JUMP 00000bc1: JUMPDEST 00000bc2: PUSH1 0x00 00000bc4: PUSH1 0x20 00000bc6: DUP3 00000bc7: DUP5 00000bc8: SUB 00000bc9: SLT 00000bca: ISZERO 00000bcb: PUSH2 0x0bd3 00000bce: JUMPI 00000bcf: PUSH1 0x00 00000bd1: DUP1 00000bd2: REVERT 00000bd3: JUMPDEST 00000bd4: DUP2 00000bd5: MLOAD 00000bd6: PUSH2 0x09b0 00000bd9: DUP2 00000bda: PUSH2 0x0ad9 00000bdd: JUMP 00000bde: JUMPDEST 00000bdf: PUSH1 0x00 00000be1: DUP3 00000be2: MLOAD 00000be3: PUSH1 0x00 00000be5: JUMPDEST 00000be6: DUP2 00000be7: DUP2 00000be8: LT 00000be9: ISZERO 00000bea: PUSH2 0x0bff 00000bed: JUMPI 00000bee: PUSH1 0x20 00000bf0: DUP2 00000bf1: DUP7 00000bf2: ADD 00000bf3: DUP2 00000bf4: ADD 00000bf5: MLOAD 00000bf6: DUP6 00000bf7: DUP4 00000bf8: ADD 00000bf9: MSTORE 00000bfa: ADD 00000bfb: PUSH2 0x0be5 00000bfe: JUMP 00000bff: JUMPDEST 00000c00: POP 00000c01: PUSH1 0x00 00000c03: SWAP3 00000c04: ADD 00000c05: SWAP2 00000c06: DUP3 00000c07: MSTORE 00000c08: POP 00000c09: SWAP2 00000c0a: SWAP1 00000c0b: POP 00000c0c: JUMP 00000c0d: INVALID 00000c0e: LOG2 00000c0f: PUSH5 0x6970667358 00000c15: UNKNOWN(0x22) 00000c16: SLT 00000c17: KECCAK256 00000c18: UNKNOWN(0x27) 00000c19: UNKNOWN(0xFC) 00000c1a: UNKNOWN(0xCA) 00000c1b: UNKNOWN(0xEF) 00000c1c: SELFBALANCE 00000c1d: UNKNOWN(0xB5) 00000c1e: AND 00000c1f: SWAP15 00000c20: PUSH10 0xb10ea0a12c42c3a8875e 00000c2b: UNKNOWN(0x4B) 00000c2c: SWAP5 00000c2d: UNKNOWN(0xB8) 00000c2e: PUSH1 0xfd 00000c30: UNKNOWN(0xF8) 00000c31: TIMESTAMP 00000c32: UNKNOWN(0xE4) 00000c33: UNKNOWN(0xC3) 00000c34: UNKNOWN(0xFB) 00000c35: PUSH5 0x0c2d64736f 00000c3b: PUSH13
| Severity | Category | Tool | Title | Confidence | Validated | Confirmed | Details |
|---|---|---|---|---|---|---|---|
| high | other | detector | Untrusted CALL target/value reachable | 60 | no | no |
viewtrace_id: 0x8706de6b3e9b66ee05ccbc0fdbe9b6ffcd8557334db88b00ae85995413416fbd
call_targets:
0x4265f5d6c0cf127d733eefa16d66d0df4b650d53
target_varies:
no
classification:
constant_target
validation_json{
"sink": "CALL",
"errors": 0,
"status": "sink_reached",
"attempts": 1,
"trace_id": "0x8706de6b3e9b66ee05ccbc0fdbe9b6ffcd8557334db88b00ae85995413416fbd",
"confirmed": false,
"trace_mode": "callTracer",
"call_targets": [
"0x4265f5d6c0cf127d733eefa16d66d0df4b650d53"
],
"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": "0xd88d9b70",
"selector": "0xd88d9b70",
"calldata_variants": [
"0xd88d9b70",
"0xd88d9b700000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xe9f2838e",
"selector": "0xe9f2838e",
"calldata_variants": [
"0xe9f2838e",
"0xe9f2838e0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xf2fde38b",
"selector": "0xf2fde38b",
"calldata_variants": [
"0xf2fde38b",
"0xf2fde38b0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xf5691ad4",
"selector": "0xf5691ad4",
"calldata_variants": [
"0xf5691ad4",
"0xf5691ad40000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xfc0c546a",
"selector": "0xfc0c546a",
"calldata_variants": [
"0xfc0c546a",
"0xfc0c546a0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xb3760d56",
"selector": "0xb3760d56",
"calldata_variants": [
"0xb3760d56",
"0xb3760d560000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xbe7c274e",
"selector": "0xbe7c274e",
"calldata_variants": [
"0xbe7c274e",
"0xbe7c274e0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xc311d049",
"selector": "0xc311d049",
"calldata_variants": [
"0xc311d049",
"0xc311d0490000000000000000000000000000000000000000000000000000000000000000"
]
}
]
}
evidence_json{
"examples": [
{
"pc": 1372,
"opcode": "CALL",
"returndata_checked": null,
"value_expression_category": "computed",
"target_expression_category": "computed"
},
{
"pc": 1599,
"opcode": "CALL",
"returndata_checked": null,
"value_expression_category": "computed",
"target_expression_category": "computed"
},
{
"pc": 2565,
"opcode": "CALL",
"returndata_checked": null,
"value_expression_category": "computed",
"target_expression_category": "computed"
}
],
"call_count": 3,
"guards_detected": [],
"untrusted_call_count": 3
}
|
| high | other | detector | ETH value transfer possible | 55 | no | no |
viewtrace_id: 0x8706de6b3e9b66ee05ccbc0fdbe9b6ffcd8557334db88b00ae85995413416fbd
call_targets:
0x4265f5d6c0cf127d733eefa16d66d0df4b650d53
target_varies:
no
classification:
constant_target
validation_json{
"sink": "CALL",
"errors": 0,
"status": "sink_reached",
"attempts": 1,
"trace_id": "0x8706de6b3e9b66ee05ccbc0fdbe9b6ffcd8557334db88b00ae85995413416fbd",
"confirmed": false,
"trace_mode": "callTracer",
"call_targets": [
"0x4265f5d6c0cf127d733eefa16d66d0df4b650d53"
],
"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": "0xd88d9b70",
"selector": "0xd88d9b70",
"calldata_variants": [
"0xd88d9b70",
"0xd88d9b700000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xe9f2838e",
"selector": "0xe9f2838e",
"calldata_variants": [
"0xe9f2838e",
"0xe9f2838e0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xf2fde38b",
"selector": "0xf2fde38b",
"calldata_variants": [
"0xf2fde38b",
"0xf2fde38b0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xf5691ad4",
"selector": "0xf5691ad4",
"calldata_variants": [
"0xf5691ad4",
"0xf5691ad40000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xfc0c546a",
"selector": "0xfc0c546a",
"calldata_variants": [
"0xfc0c546a",
"0xfc0c546a0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xb3760d56",
"selector": "0xb3760d56",
"calldata_variants": [
"0xb3760d56",
"0xb3760d560000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xbe7c274e",
"selector": "0xbe7c274e",
"calldata_variants": [
"0xbe7c274e",
"0xbe7c274e0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xc311d049",
"selector": "0xc311d049",
"calldata_variants": [
"0xc311d049",
"0xc311d0490000000000000000000000000000000000000000000000000000000000000000"
]
}
]
}
evidence_json{
"examples": [
{
"pc": 1372,
"opcode": "CALL",
"returndata_checked": null,
"value_expression_category": "computed",
"target_expression_category": "computed"
},
{
"pc": 1599,
"opcode": "CALL",
"returndata_checked": null,
"value_expression_category": "computed",
"target_expression_category": "computed"
},
{
"pc": 2565,
"opcode": "CALL",
"returndata_checked": null,
"value_expression_category": "computed",
"target_expression_category": "computed"
}
],
"eth_value_calls": 3,
"guards_detected": []
}
|