019d5666-720b-73fb-be2d-e65507781793
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 |
|---|---|---|---|---|
| 42848 | artifact.fetch | complete | 1 / 3 | 1 week ago |
| 42849 | proxy.resolve | complete | 1 / 3 | 1 week ago |
| 42850 | tool.cast_disasm | complete | 1 / 3 | 1 week ago |
| 42851 | analysis.bundle | complete | 1 / 3 | 1 week ago |
| 42852 | capability.graph | complete | 1 / 3 | 1 week ago |
| 42853 | detector.run | complete | 1 / 3 | 1 week ago |
| 42854 | validation.fork | complete | 1 / 3 | 1 week ago |
| 42959 | report.consolidate | complete | 1 / 6 | 1 week ago |
{
"status": "not_proxy"
}
No slither job recorded yet.
{"no_findings":false,"summary":"Bytecode shows an owner-controlled escrow/disbursement state machine with no proxy/delegatecall logic. The meaningful risks are accounting/liveness issues around an irreversible state byte in slot 2 and three ETH-sending CALL sites that use a hardcoded 2300-gas stipend. Selector names beyond standard ones are inferred from behavior and may be inaccurate.","findings":[{"severity":"medium","category":"other","title":"Irreversible state transitions can strand credited balances while backing ETH is still sweepable","exploit_scenario":"A credited recipient appears to be tracked in a keccak-derived mapping. The owner can add credit for an address through selector 0xf340fa01 while the state byte is less than 2, but the only visible path that pays that mapping out is selector 0xfa89401a, which is gated on state == 0. The contract also has irreversible owner-only transitions from state 0 to 1/2 and from state < 2 to 3. If the owner moves out of state 0 before clearing all credits, those balances become unpayable on-chain, while ETH can still be withdrawn or swept to the beneficiary path. Because the payout path is owner-only, credited users have no self-help withdrawal route.","recommendation":"Enforce that all outstanding mapped liabilities are zero before any transition out of the payout state, or add a user-claim path that is not owner-gated. If sweeping is intended, track and settle liabilities explicitly before allowing beneficiary withdrawals.","evidence":"Selector 0xf340fa01 reaches pc 1578-1649, where a keccak-derived slot is read and then increased by CALLVALUE. Selector 0xfa89401a reaches pc 1741-1808/1834, where the same style of keccak-derived slot is read, zeroed, and then paid out, but the function first checks the state byte extracted from slot 2 and compares it against 0 at pc 1732. Owner-only selectors 0x04b5802c and 0x8c52dc41 write new state values 1 and 2 at pcs 617-698 and 1213-1311, and selector 0x43d726d6 writes state 3 and sweeps balance at pcs 979-1134. No bytecode path back to state 0 is visible.","locations":["selector:0xf340fa01","selector:0xfa89401a","selector:0x04b5802c","selector:0x8c52dc41","selector:0x43d726d6"]},{"severity":"low","category":"other","title":"ETH payouts use a hardcoded 2300-gas CALL, which can brick payouts to contract recipients","exploit_scenario":"If the beneficiary or a credited recipient is a smart contract wallet, proxy, or multisig whose receive/fallback needs more than 2300 gas, the ETH transfer reverts. That can block owner withdrawals/sweeps and, more importantly, can leave a credited address unable to receive its mapped payout through the only visible disbursement path.","recommendation":"Replace the transfer-like CALL pattern with a regular call that forwards enough gas and checks success, or provide an alternate pull-based withdrawal mechanism. If only EOAs are intended, enforce that assumption explicitly before crediting or setting payout recipients.","evidence":"All three ETH-sending paths build a gas stipend from PUSH2 0x08fc before CALL: pc 827-847, pc 1097-1117, and pc 1814-1834. Each call site reverts on failure at pc 859, pc 1129, and pc 1846 respectively. Because returndata checking is not explicit in the artifact, the key observable fact is the 2300-gas stipend plus revert-on-failure behavior.","locations":["pc:0x34f","pc:0x45d","pc:0x72a","selector:0x2e1a7d4d","selector:0x43d726d6","selector:0xfa89401a"]}]}
OpenAI Codex v0.118.0 (research preview)
--------
workdir: /tmp/codex-fhdl2wda
model: gpt-5.4
provider: openai
approval: never
sandbox: read-only
reasoning effort: high
reasoning summaries: none
session id: 019d568d-e508-7072-82b1-e0af14221635
--------
user
You are a security auditor. You ONLY have runtime bytecode + analysis artifacts.
You MUST read `BYTECODE_BUNDLE.json` before concluding; it contains the bytecode summary,
evidence bundle, callsites, storage slots, and detector findings.
Special cases when reasoning from bytecode (be explicit about uncertainty):
- Selector inference is best-effort; missing selectors are common.
- Fallback/receive paths may be the only entrypoints.
- CALL vs DELEGATECALL semantics differ; DELEGATECALL executes in caller storage.
- Proxy patterns (EIP-1967, minimal proxies, beacon) change which storage is authoritative.
- Storage slots are raw; mappings/arrays appear via keccak patterns, names are unknown.
- Guard detection is heuristic; absence of guards does NOT mean unguarded.
- Returndata checking is unknown unless explicitly shown in evidence.
- Precompiles (0x1..0x9) and common ERC20 transfer selectors may appear; do not over-claim.
Output MUST be valid JSON matching the provided schema.
- If you find nothing meaningful: set no_findings=true and findings=[].
- Otherwise: set no_findings=false and include findings with severity/category/title.
- Locations can be pc references like "pc:0x123" or selectors like "selector:0xa9059cbb".
Focus on: reentrancy, access control, upgradeability/proxy issues, signature validation,
accounting/invariant breaks, dangerous delegatecall, and untrusted external calls.
Be conservative: if evidence is weak, mark severity low/medium and explain why.
warning: Codex could not find system bubblewrap on PATH. Please install bubblewrap with your package manager. Codex will use the vendored bubblewrap in the meantime.
exec
/bin/bash -lc pwd in /tmp/codex-fhdl2wda
succeeded in 0ms:
/tmp/codex-fhdl2wda
exec
/bin/bash -lc 'rg --files' in /tmp/codex-fhdl2wda
succeeded in 0ms:
BYTECODE_BUNDLE.json
codex-output-schema.json
exec
/bin/bash -lc "sed -n '1,260p' BYTECODE_BUNDLE.json" in /tmp/codex-fhdl2wda
succeeded in 0ms:
{
"analysis_artifact": {
"address": "0x6ee4bc4cbc09346e718fad1933f9ca32543ddc93",
"artifact_hash": "0xceb37632b07b904bac0cabb07100f950683e7992e84baa6b035d51f611ff3698",
"artifact_json": {
"auth": {
"guards": []
},
"basic_blocks": [
{
"end_pc": 12,
"hash": "0x24a2cc539b6cfdaf93ab73ee86e63c48a2846034e822b859389a08e3e2b2394c",
"opcodes": [
"PUSH1",
"PUSH1",
"MSTORE",
"PUSH1",
"CALLDATASIZE",
"LT",
"PUSH2",
"JUMPI"
],
"start_pc": 0
},
{
"end_pc": 63,
"hash": "0x62019e16e7d267177bca00e639c10b80ddaf87cd3d1971c04bc6a5050422a1b5",
"opcodes": [
"PUSH4",
"PUSH29",
"PUSH1",
"CALLDATALOAD",
"DIV",
"AND",
"PUSH4",
"OP_81",
"EQ",
"PUSH2",
"JUMPI"
],
"start_pc": 13
},
{
"end_pc": 74,
"hash": "0xed6d49890b18b833a3adb51bc55552f473625fad2996bdb7e570ca8ae6d4b7cd",
"opcodes": [
"OP_80",
"PUSH4",
"EQ",
"PUSH2",
"JUMPI"
],
"start_pc": 64
},
{
"end_pc": 85,
"hash": "0xfa84ba6b30e915f2a2dcaa1d617936b8c6ba199bd2ac07bd72185239dbd721c5",
"opcodes": [
"OP_80",
"PUSH4",
"EQ",
"PUSH2",
"JUMPI"
],
"start_pc": 75
},
{
"end_pc": 96,
"hash": "0x66b8cc566faf494a573eb4f8bce28417b97972222806b9c1c1716d66768fdbb0",
"opcodes": [
"OP_80",
"PUSH4",
"EQ",
"PUSH2",
"JUMPI"
],
"start_pc": 86
},
{
"end_pc": 107,
"hash": "0xdd4f43966da04392f4263acb5497a6bb0612efb7824b0e29d28682d91fab4c1a",
"opcodes": [
"OP_80",
"PUSH4",
"EQ",
"PUSH2",
"JUMPI"
],
"start_pc": 97
},
{
"end_pc": 118,
"hash": "0x05f18fdb12311322385abc73b50bd9eeb61f272eb6a783ba0b83e40a167177ad",
"opcodes": [
"OP_80",
"PUSH4",
"EQ",
"PUSH2",
"JUMPI"
],
"start_pc": 108
},
{
"end_pc": 129,
"hash": "0xdf325df6e42a8739dc782f7eea9115d12a382bd1daa70b7f826c9a9b4e552e92",
"opcodes": [
"OP_80",
"PUSH4",
"EQ",
"PUSH2",
"JUMPI"
],
"start_pc": 119
},
{
"end_pc": 140,
"hash": "0x419ff3ca063af669c4dc09cb96530e6a67765075e90353c20285b0c12b932cf6",
"opcodes": [
"OP_80",
"PUSH4",
"EQ",
"PUSH2",
"JUMPI"
],
"start_pc": 130
},
{
"end_pc": 151,
"hash": "0x42a61e3a6fb1deadffa36ab7940e46e7d4cb20122b60b8231b4e151857a1cc98",
"opcodes": [
"OP_80",
"PUSH4",
"EQ",
"PUSH2",
"JUMPI"
],
"start_pc": 141
},
{
"end_pc": 162,
"hash": "0xc21f20e72a15775bb2fe1aa9bfdcaed0a270615e43fd762afb67a5c7e6e10917",
"opcodes": [
"OP_80",
"PUSH4",
"EQ",
"PUSH2",
"JUMPI"
],
"start_pc": 152
},
{
"end_pc": 173,
"hash": "0xcbe3a62c15047fe2e877877d63bbc74aa1b5168d9109ee66bd4e72ae0a3898df",
"opcodes": [
"OP_80",
"PUSH4",
"EQ",
"PUSH2",
"JUMPI"
],
"start_pc": 163
},
{
"end_pc": 184,
"hash": "0x773f42607dfeb7e253449150c2f16fc9afeb56347e5f5d053355987d4c705fee",
"opcodes": [
"OP_80",
"PUSH4",
"EQ",
"PUSH2",
"JUMPI"
],
"start_pc": 174
},
{
"end_pc": 189,
"hash": "0xa54916e0dd055eee1d5784fd552d58dcf9cd3ca986f1ae8f9d13188c2629d8ac",
"opcodes": [
"JUMPDEST",
"PUSH1",
"OP_80",
"REVERT"
],
"start_pc": 185
},
{
"end_pc": 196,
"hash": "0x79c01cce0db39b17fdba0bea8d4966cbc3d5c341ba4750452c9a478bc95255df",
"opcodes": [
"JUMPDEST",
"CALLVALUE",
"ISZERO",
"PUSH2",
"JUMPI"
],
"start_pc": 190
},
{
"end_pc": 200,
"hash": "0x8173f20a20b8a114158030e252312decd909dc67f8d83154aa05b6586003d8bf",
"opcodes": [
"PUSH1",
"OP_80",
"REVERT"
],
"start_pc": 197
},
{
"end_pc": 208,
"hash": "0x92610245f0ff3d78a6d302213b3f97377e707c6a6440e73cf6b56c8fd0867092",
"opcodes": [
"JUMPDEST",
"PUSH2",
"PUSH2",
"JUMP"
],
"start_pc": 201
},
{
"end_pc": 210,
"hash": "0xc1c70dbea275f16cc66358bc7819f572c406a76073a2b4c7f92233ea1bf1bb06",
"opcodes": [
"JUMPDEST",
"STOP"
],
"start_pc": 209
},
{
"end_pc": 217,
"hash": "0x57d5057835f38f7f44aff6276459d25aad7db697bc1087d2942d440f4aed90e9",
"opcodes": [
"JUMPDEST",
"CALLVALUE",
"ISZERO",
"PUSH2",
"JUMPI"
],
"start_pc": 211
},
{
"end_pc": 221,
"hash": "0x0f057297c2baa06ba0361affc5c2427a2903aaddcf6070f72bcf812bbfdaf70f",
"opcodes": [
"PUSH1",
"OP_80",
"REVERT"
],
"start_pc": 218
},
{
"end_pc": 241,
"hash": "0x36184a35d626688dbd7ea06197237f75421e3a81aa620960ec4f076bb4696606",
"opcodes": [
"JUMPDEST",
"PUSH2",
"PUSH1",
"PUSH1",
"PUSH1",
"EXP",
"SUB",
exec
/bin/bash -lc "sed -n '261,520p' BYTECODE_BUNDLE.json" in /tmp/codex-fhdl2wda
succeeded in 0ms:
"PUSH1",
"CALLDATALOAD",
"AND",
"PUSH2",
"JUMP"
],
"start_pc": 222
},
{
"end_pc": 259,
"hash": "0xd8f41ce995503ebb76c68f7c7cb21ceed10582c96415c06b42d304aadd49f113",
"opcodes": [
"JUMPDEST",
"PUSH1",
"MLOAD",
"OP_90",
"OP_81",
"MSTORE",
"PUSH1",
"ADD",
"PUSH1",
"MLOAD",
"OP_80",
"OP_91",
"SUB",
"OP_90",
"RETURN"
],
"start_pc": 242
},
{
"end_pc": 266,
"hash": "0xb80a255e696a5bacc5308768ea06b1d25b215826f5c4c1a2b3bdcc3870d2b1fe",
"opcodes": [
"JUMPDEST",
"CALLVALUE",
"ISZERO",
"PUSH2",
"JUMPI"
],
"start_pc": 260
},
{
"end_pc": 270,
"hash": "0xea11a8eb1edd34eee716c25396b99f707c47213085ad31cedd737a711e409d42",
"opcodes": [
"PUSH1",
"OP_80",
"REVERT"
],
"start_pc": 267
},
{
"end_pc": 281,
"hash": "0x436041ad61b644dbcb540f0efeca7c23ff172b4e3374cd3fc43489bc9df47b2a",
"opcodes": [
"JUMPDEST",
"PUSH2",
"PUSH1",
"CALLDATALOAD",
"PUSH2",
"JUMP"
],
"start_pc": 271
},
{
"end_pc": 288,
"hash": "0x2dfb888dab5076e7b5da0588d2557557ec6396ed2de56f92d68086d0fc288df9",
"opcodes": [
"JUMPDEST",
"CALLVALUE",
"ISZERO",
"PUSH2",
"JUMPI"
],
"start_pc": 282
},
{
"end_pc": 292,
"hash": "0xa496c2623d8f4094418f035876b76cf1e847e63924003e6365931b9ea8a2ed43",
"opcodes": [
"PUSH1",
"OP_80",
"REVERT"
],
"start_pc": 289
},
{
"end_pc": 300,
"hash": "0xddc8ea7a0a24dc98f7ca1ffa3a6734fb36b6df236c19cb2f8f25b8abe78b30dc",
"opcodes": [
"JUMPDEST",
"PUSH2",
"PUSH2",
"JUMP"
],
"start_pc": 293
},
{
"end_pc": 307,
"hash": "0x23f020104764735b5f9953bc08619d0b691b2f5a574cfa09c43f282a2870b39f",
"opcodes": [
"JUMPDEST",
"CALLVALUE",
"ISZERO",
"PUSH2",
"JUMPI"
],
"start_pc": 301
},
{
"end_pc": 311,
"hash": "0x985ef788a1653766b921620f5a9be599a775c00858a31eb55fc5517907fe570b",
"opcodes": [
"PUSH1",
"OP_80",
"REVERT"
],
"start_pc": 308
},
{
"end_pc": 319,
"hash": "0xd16115a08c0c226f24dadce3afb39c2c95a0020c91c5c7a328e0a286b9856b0a",
"opcodes": [
"JUMPDEST",
"PUSH2",
"PUSH2",
"JUMP"
],
"start_pc": 312
},
{
"end_pc": 347,
"hash": "0xe1352bfecce2a4ba9a164ad44e50a13741adee4a8c5a3d00afe6c96d6acb58b3",
"opcodes": [
"JUMPDEST",
"PUSH1",
"MLOAD",
"PUSH1",
"PUSH1",
"PUSH1",
"EXP",
"SUB",
"OP_90",
"OP_91",
"AND",
"OP_81",
"MSTORE",
"PUSH1",
"ADD",
"PUSH1",
"MLOAD",
"OP_80",
"OP_91",
"SUB",
"OP_90",
"RETURN"
],
"start_pc": 320
},
{
"end_pc": 354,
"hash": "0x0f25047b850fa669eb5ca125c258a55056821c7c7b8aaf817c5dff53c066807e",
"opcodes": [
"JUMPDEST",
"CALLVALUE",
"ISZERO",
"PUSH2",
"JUMPI"
],
"start_pc": 348
},
{
"end_pc": 358,
"hash": "0x9bc5c2db54a9526191aa722326bbef71a4d34e0d32134ff540b47e543824542e",
"opcodes": [
"PUSH1",
"OP_80",
"REVERT"
],
"start_pc": 355
},
{
"end_pc": 366,
"hash": "0x2b9f13d55566660453c96a6201d6df46e85854e1f2a12e5aa4952520cbfae1e7",
"opcodes": [
"JUMPDEST",
"PUSH2",
"PUSH2",
"JUMP"
],
"start_pc": 359
},
{
"end_pc": 373,
"hash": "0x7fde15b534d91f4240eb65138d98d03d5094ab91c472af0714fc3f415c448198",
"opcodes": [
"JUMPDEST",
"CALLVALUE",
"ISZERO",
"PUSH2",
"JUMPI"
],
"start_pc": 367
},
{
"end_pc": 377,
"hash": "0x3fddf5979114ac04af5874a23c4c7dda47d5a9f5fa049bcf3e67a9f8341933bc",
"opcodes": [
"PUSH1",
"OP_80",
"REVERT"
],
"start_pc": 374
},
{
"end_pc": 385,
"hash": "0xdded551babdf7b1449d76afbeca74849d20246f9e8b2766cbc0a09b8ad977bb1",
"opcodes": [
"JUMPDEST",
"PUSH2",
"PUSH2",
"JUMP"
],
"start_pc": 378
},
{
"end_pc": 392,
"hash": "0xc34ad6deb908335066a65f8ddf4f56e04b175cf7299447280e57c8d766eba54d",
"opcodes": [
"JUMPDEST",
"CALLVALUE",
"ISZERO",
"PUSH2",
"JUMPI"
],
"start_pc": 386
},
{
"end_pc": 396,
"hash": "0x182bc0f8547ab44054c9ce167833b6f803dc28149792d52aaa681de47b36561e",
"opcodes": [
"PUSH1",
"OP_80",
"REVERT"
],
"start_pc": 393
},
{
"end_pc": 404,
"hash": "0x34b4f0dd884fdf4a196c154e92a6154937eb667789e8947d01c52c23d4c82245",
"opcodes": [
"JUMPDEST",
"PUSH2",
"PUSH2",
"JUMP"
],
"start_pc": 397
},
{
exec
/bin/bash -lc "sed -n '521,780p' BYTECODE_BUNDLE.json" in /tmp/codex-fhdl2wda
succeeded in 0ms:
"end_pc": 419,
"hash": "0x62b03f20d954f3d9f93d4ed268934e6f9cfb827df48d12934f244d8a30f99e78",
"opcodes": [
"JUMPDEST",
"PUSH1",
"MLOAD",
"OP_80",
"OP_82",
"PUSH1",
"OP_81",
"GT",
"ISZERO",
"PUSH2",
"JUMPI"
],
"start_pc": 405
},
{
"end_pc": 420,
"hash": "0xe07dc287ad356454fa17b8a139ed7300992f97b488efddd26a401fd27397fefb",
"opcodes": [
"INVALID"
],
"start_pc": 420
},
{
"end_pc": 440,
"hash": "0x08982c67e3c977dc725d6fca9386f1a19fe40e794b26fdd5cecb26b5c8dd2913",
"opcodes": [
"JUMPDEST",
"PUSH1",
"AND",
"OP_81",
"MSTORE",
"PUSH1",
"ADD",
"OP_91",
"POP",
"POP",
"PUSH1",
"MLOAD",
"OP_80",
"OP_91",
"SUB",
"OP_90",
"RETURN"
],
"start_pc": 421
},
{
"end_pc": 447,
"hash": "0xd3c76616ddf31fc5cf566c982c1b3f884f198066fe97621540e8c85c0c80594d",
"opcodes": [
"JUMPDEST",
"CALLVALUE",
"ISZERO",
"PUSH2",
"JUMPI"
],
"start_pc": 441
},
{
"end_pc": 451,
"hash": "0x73b0e15d132a8a15706c59bfd63d005cb4aa37dc7484a2266bb5dd83c182a77a",
"opcodes": [
"PUSH1",
"OP_80",
"REVERT"
],
"start_pc": 448
},
{
"end_pc": 471,
"hash": "0xd21dc64f11e692169f07436911aae75882d9fa7886b6a7213c74bc3433cfc385",
"opcodes": [
"JUMPDEST",
"PUSH2",
"PUSH1",
"PUSH1",
"PUSH1",
"EXP",
"SUB",
"PUSH1",
"CALLDATALOAD",
"AND",
"PUSH2",
"JUMP"
],
"start_pc": 452
},
{
"end_pc": 478,
"hash": "0x9cd43893a207a652e8f5b7da5139daa566eefaccf78d8a6bff91e9126344be49",
"opcodes": [
"JUMPDEST",
"CALLVALUE",
"ISZERO",
"PUSH2",
"JUMPI"
],
"start_pc": 472
},
{
"end_pc": 482,
"hash": "0x04b0b2c466d6b33948ffe9273aa8bc41da3c76c13fda254e44cb354759fd2b98",
"opcodes": [
"PUSH1",
"OP_80",
"REVERT"
],
"start_pc": 479
},
{
"end_pc": 502,
"hash": "0x504f3bc5cade7a1d7775a66d60b0283729e435ef6f8116dced3885160a1fe7c2",
"opcodes": [
"JUMPDEST",
"PUSH2",
"PUSH1",
"PUSH1",
"PUSH1",
"EXP",
"SUB",
"PUSH1",
"CALLDATALOAD",
"AND",
"PUSH2",
"JUMP"
],
"start_pc": 483
},
{
"end_pc": 522,
"hash": "0x35487bc29a3389e494c6cbb8840ac8a3a5b290dd871352cf7423ff753fa13962",
"opcodes": [
"JUMPDEST",
"PUSH2",
"PUSH1",
"PUSH1",
"PUSH1",
"EXP",
"SUB",
"PUSH1",
"CALLDATALOAD",
"AND",
"PUSH2",
"JUMP"
],
"start_pc": 503
},
{
"end_pc": 529,
"hash": "0x1a4b68d852ab702e84b47729cb6b0d241aa5384d619083e062a349dcf9f47b40",
"opcodes": [
"JUMPDEST",
"CALLVALUE",
"ISZERO",
"PUSH2",
"JUMPI"
],
"start_pc": 523
},
{
"end_pc": 533,
"hash": "0x3e82887d7aa84cffccf5e91fe91fba6573585c7ddc68fcd6bf8204e17a61f3c3",
"opcodes": [
"PUSH1",
"OP_80",
"REVERT"
],
"start_pc": 530
},
{
"end_pc": 553,
"hash": "0x1a6a1ff6ae8f2f6f5c13e44cbbc1427010a2810a05afd9604912370958ed51d0",
"opcodes": [
"JUMPDEST",
"PUSH2",
"PUSH1",
"PUSH1",
"PUSH1",
"EXP",
"SUB",
"PUSH1",
"CALLDATALOAD",
"AND",
"PUSH2",
"JUMP"
],
"start_pc": 534
},
{
"end_pc": 576,
"hash": "0xe4118d5df0cef6e5ed43ba4d42e3507dc8c9690a8a063f15c0c71ba4062e21cf",
"opcodes": [
"JUMPDEST",
"PUSH1",
"SLOAD",
"CALLER",
"PUSH1",
"PUSH1",
"PUSH1",
"EXP",
"SUB",
"OP_90",
"OP_81",
"AND",
"OP_91",
"AND",
"EQ",
"PUSH2",
"JUMPI"
],
"start_pc": 554
},
{
"end_pc": 580,
"hash": "0x49987cc463fef23a00ae13a6373edf544b6f2cfbef4ec53d8ad2e70c5d7cc839",
"opcodes": [
"PUSH1",
"OP_80",
"REVERT"
],
"start_pc": 577
},
{
"end_pc": 605,
"hash": "0xc4ef837e49a38c003de2a68bdb7d35ce0f95df6e0630d584429e7312c6934af8",
"opcodes": [
"JUMPDEST",
"PUSH1",
"PUSH1",
"SLOAD",
"PUSH1",
"PUSH1",
"EXP",
"OP_90",
"DIV",
"PUSH1",
"AND",
"PUSH1",
"OP_81",
"GT",
"ISZERO",
"PUSH2",
"JUMPI"
],
"start_pc": 581
},
{
"end_pc": 606,
"hash": "0x24efcb412f870c8293852f2cd674f89de3ceaf397077c27889947714feca4fe2",
"opcodes": [
"INVALID"
],
"start_pc": 606
},
{
"end_pc": 612,
"hash": "0xefddba2600b3038be475bb06d82ed5d72f0f7c2da61266aa70983313ed935e8d",
exec
/bin/bash -lc "sed -n '781,1040p' BYTECODE_BUNDLE.json" in /tmp/codex-fhdl2wda
succeeded in 0ms:
"opcodes": [
"JUMPDEST",
"EQ",
"PUSH2",
"JUMPI"
],
"start_pc": 607
},
{
"end_pc": 616,
"hash": "0x54bdb062129ebe2230d09d0b58b6dc3a62937fb7b85ec8530c7f85129991be81",
"opcodes": [
"PUSH1",
"OP_80",
"REVERT"
],
"start_pc": 613
},
{
"end_pc": 698,
"hash": "0xa832fc6f6c6cd416e324bba434dbc84bd52a19900081e89308edc3095c38fdc5",
"opcodes": [
"JUMPDEST",
"PUSH1",
"OP_80",
"SLOAD",
"PUSH21",
"NOT",
"AND",
"PUSH1",
"PUSH1",
"EXP",
"OR",
"OP_90",
"SSTORE",
"PUSH32",
"PUSH1",
"MLOAD",
"PUSH1",
"MLOAD",
"OP_80",
"OP_91",
"SUB",
"OP_90",
"OP_A1",
"JUMP"
],
"start_pc": 617
},
{
"end_pc": 725,
"hash": "0xf474e479977e08d764c2c6b2976852183a2439ff5f4d02f8a2932b6ff8624794",
"opcodes": [
"JUMPDEST",
"PUSH1",
"PUSH1",
"PUSH1",
"EXP",
"SUB",
"AND",
"PUSH1",
"OP_90",
"OP_81",
"MSTORE",
"PUSH1",
"PUSH1",
"MSTORE",
"PUSH1",
"OP_90",
"SHA3",
"SLOAD",
"OP_90",
"JUMP"
],
"start_pc": 699
},
{
"end_pc": 748,
"hash": "0xe49740a75934b91ee3e4903d157a888074e05b2df304c3fcb50462f4d6181bb3",
"opcodes": [
"JUMPDEST",
"PUSH1",
"SLOAD",
"CALLER",
"PUSH1",
"PUSH1",
"PUSH1",
"EXP",
"SUB",
"OP_90",
"OP_81",
"AND",
"OP_91",
"AND",
"EQ",
"PUSH2",
"JUMPI"
],
"start_pc": 726
},
{
"end_pc": 752,
"hash": "0x30fdd10ceb882c740ab48799a751592858549dbdf0109f8a1d371506fca59ade",
"opcodes": [
"PUSH1",
"OP_80",
"REVERT"
],
"start_pc": 749
},
{
"end_pc": 777,
"hash": "0xb2bd551d4bb0ddee178b45aca8f1c6b010f62762c5abdb726f6a7310638b790a",
"opcodes": [
"JUMPDEST",
"PUSH1",
"PUSH1",
"SLOAD",
"PUSH1",
"PUSH1",
"EXP",
"OP_90",
"DIV",
"PUSH1",
"AND",
"PUSH1",
"OP_81",
"GT",
"ISZERO",
"PUSH2",
"JUMPI"
],
"start_pc": 753
},
{
"end_pc": 778,
"hash": "0x7c0ffca6edb60927b3c74be36d0cb5cdc6fa7872bf44fb9a22f27628d1cfa61a",
"opcodes": [
"INVALID"
],
"start_pc": 778
},
{
"end_pc": 784,
"hash": "0x99890b9080257fe82fdd7e78c0f15393a146b232e803dbe5101be0ffce184c24",
"opcodes": [
"JUMPDEST",
"EQ",
"PUSH2",
"JUMPI"
],
"start_pc": 779
},
{
"end_pc": 788,
"hash": "0x4241ab2d16c8a9044340e9dff2e7fa441fac074a4b79c1372446a47ae8bebd34",
"opcodes": [
"PUSH1",
"OP_80",
"REVERT"
],
"start_pc": 785
},
{
"end_pc": 807,
"hash": "0x5e0e584925a37466a244f431640084b1582de528a2f63d58b6c5036e625a3f3e",
"opcodes": [
"JUMPDEST",
"PUSH1",
"PUSH1",
"PUSH1",
"EXP",
"SUB",
"ADDRESS",
"AND",
"BALANCE",
"OP_81",
"GT",
"ISZERO",
"PUSH2",
"JUMPI"
],
"start_pc": 789
},
{
"end_pc": 811,
"hash": "0xa33cc55dc71b24530badf635d756ee5ea3395155987f4d885992a3046dac9054",
"opcodes": [
"PUSH1",
"OP_80",
"REVERT"
],
"start_pc": 808
},
{
"end_pc": 858,
"hash": "0x074ce4df24e8d935c37b13a7b94f89cec78904f10e698b7471fbb41406397319",
"opcodes": [
"JUMPDEST",
"PUSH1",
"SLOAD",
"PUSH1",
"PUSH1",
"PUSH1",
"EXP",
"SUB",
"AND",
"OP_81",
"ISZERO",
"PUSH2",
"MUL",
"OP_82",
"PUSH1",
"MLOAD",
"PUSH1",
"PUSH1",
"MLOAD",
"OP_80",
"OP_83",
"SUB",
"OP_81",
"OP_85",
"OP_88",
"OP_88",
"CALL",
"OP_93",
"POP",
"POP",
"POP",
"POP",
"ISZERO",
"ISZERO",
"PUSH2",
"JUMPI"
],
"start_pc": 812
},
{
"end_pc": 862,
"hash": "0xb20542a9a7d6e9ab11b828dce840f450d273ede3b50b030b0513190aa72d5d24",
"opcodes": [
"PUSH1",
"OP_80",
"REVERT"
],
"start_pc": 859
},
{
"end_pc": 916,
"hash": "0xa5c819f653ad0067f547a1bbf218eb3e93673901d28f281f29cfbf83aaa0633c",
"opcodes": [
"JUMPDEST",
"PUSH32",
"OP_81",
"PUSH1",
"MLOAD",
"OP_90",
"OP_81",
"MSTORE",
"PUSH1",
exec
/bin/bash -lc "sed -n '1041,1300p' BYTECODE_BUNDLE.json" in /tmp/codex-fhdl2wda
succeeded in 0ms:
"ADD",
"PUSH1",
"MLOAD",
"OP_80",
"OP_91",
"SUB",
"OP_90",
"OP_A1",
"POP",
"JUMP"
],
"start_pc": 863
},
{
"end_pc": 939,
"hash": "0x680299efd6af787e5356a0c6478ec202f2d0ec5350f6cbf9ee4f4c45cf2de893",
"opcodes": [
"JUMPDEST",
"PUSH1",
"SLOAD",
"CALLER",
"PUSH1",
"PUSH1",
"PUSH1",
"EXP",
"SUB",
"OP_90",
"OP_81",
"AND",
"OP_91",
"AND",
"EQ",
"PUSH2",
"JUMPI"
],
"start_pc": 917
},
{
"end_pc": 943,
"hash": "0xca49b8ade656bdea9428103d1b1d131d2f7c72b0c035a1f75a9a8113dd207337",
"opcodes": [
"PUSH1",
"OP_80",
"REVERT"
],
"start_pc": 940
},
{
"end_pc": 967,
"hash": "0x96b6d02965ade1d30594472d73c06b4a61fedec5bfb0e192592ca4fdb47d2405",
"opcodes": [
"JUMPDEST",
"PUSH1",
"OP_80",
"SLOAD",
"PUSH1",
"PUSH1",
"EXP",
"OP_90",
"DIV",
"PUSH1",
"AND",
"PUSH1",
"OP_81",
"GT",
"ISZERO",
"PUSH2",
"JUMPI"
],
"start_pc": 944
},
{
"end_pc": 968,
"hash": "0xafe67d5a87210d417dd88b37d545062d3366ab83f45f9be5ef7653fc24d36533",
"opcodes": [
"INVALID"
],
"start_pc": 968
},
{
"end_pc": 974,
"hash": "0xadcc7e3c405044f2744b5ba6834e27e063a8370bb715089b986e776be76bd903",
"opcodes": [
"JUMPDEST",
"LT",
"PUSH2",
"JUMPI"
],
"start_pc": 969
},
{
"end_pc": 978,
"hash": "0x9c6c851f34b0862161d48ee277ee21f399c9b246f963f5e8f986dbf179c2c7c9",
"opcodes": [
"PUSH1",
"OP_80",
"REVERT"
],
"start_pc": 975
},
{
"end_pc": 1128,
"hash": "0x8b647402d54827801ccee0d4cd64c998e39731d3b5ffff2c38331ee4574e8eb5",
"opcodes": [
"JUMPDEST",
"PUSH1",
"OP_80",
"SLOAD",
"PUSH21",
"NOT",
"AND",
"PUSH21",
"OR",
"OP_90",
"SSTORE",
"PUSH32",
"PUSH1",
"MLOAD",
"PUSH1",
"MLOAD",
"OP_80",
"OP_91",
"SUB",
"OP_90",
"OP_A1",
"PUSH1",
"SLOAD",
"PUSH1",
"PUSH1",
"PUSH1",
"EXP",
"SUB",
"OP_90",
"OP_81",
"AND",
"OP_90",
"ADDRESS",
"AND",
"BALANCE",
"OP_80",
"ISZERO",
"PUSH2",
"MUL",
"OP_90",
"PUSH1",
"MLOAD",
"PUSH1",
"PUSH1",
"MLOAD",
"OP_80",
"OP_83",
"SUB",
"OP_81",
"OP_85",
"OP_88",
"OP_88",
"CALL",
"OP_93",
"POP",
"POP",
"POP",
"POP",
"ISZERO",
"ISZERO",
"PUSH2",
"JUMPI"
],
"start_pc": 979
},
{
"end_pc": 1132,
"hash": "0x8de84ab2358be69131fb7decbebba8dd1c46d0cb9d0d5e3ce674fead74710e4a",
"opcodes": [
"PUSH1",
"OP_80",
"REVERT"
],
"start_pc": 1129
},
{
"end_pc": 1134,
"hash": "0x8661c489dbe8640bccd9938b312298284509142cb9cf211687d389014a4a426a",
"opcodes": [
"JUMPDEST",
"JUMP"
],
"start_pc": 1133
},
{
"end_pc": 1149,
"hash": "0x53c851f6506e01ec90fbdd1d45f092965fc2b949adc5beef6923424513900d9b",
"opcodes": [
"JUMPDEST",
"PUSH1",
"SLOAD",
"PUSH1",
"PUSH1",
"PUSH1",
"EXP",
"SUB",
"AND",
"OP_81",
"JUMP"
],
"start_pc": 1135
},
{
"end_pc": 1172,
"hash": "0xb878cfe8a34da0398d0a10c96dde2ec8afb70cf3e4da16b74aca3d7814119727",
"opcodes": [
"JUMPDEST",
"PUSH1",
"SLOAD",
"CALLER",
"PUSH1",
"PUSH1",
"PUSH1",
"EXP",
"SUB",
"OP_90",
"OP_81",
"AND",
"OP_91",
"AND",
"EQ",
"PUSH2",
"JUMPI"
],
"start_pc": 1150
},
{
"end_pc": 1176,
"hash": "0x3e02d9ff80da26c00846f34acd8ea47d31f38ec98e7b902227fc1898a66a7530",
"opcodes": [
"PUSH1",
"OP_80",
"REVERT"
],
"start_pc": 1173
},
{
"end_pc": 1201,
"hash": "0x32d22d82d2f0c66f05dc6def8bd56403ec4ddd6bc2624f5a5dbacfabcd1f1651",
"opcodes": [
"JUMPDEST",
"PUSH1",
"PUSH1",
"SLOAD",
"PUSH1",
"PUSH1",
"EXP",
"OP_90",
"DIV",
"PUSH1",
"AND",
"PUSH1",
"OP_81",
"GT",
"ISZERO",
"PUSH2",
exec
/bin/bash -lc "sed -n '1301,1560p' BYTECODE_BUNDLE.json" in /tmp/codex-fhdl2wda
succeeded in 0ms:
"JUMPI"
],
"start_pc": 1177
},
{
"end_pc": 1202,
"hash": "0xb8ef4bd8c0aaba828b5334096001adcfef8e829691985f5a4912bc5910bca4f1",
"opcodes": [
"INVALID"
],
"start_pc": 1202
},
{
"end_pc": 1208,
"hash": "0x8ea2a4c52766a3b2e15ca07cf0a4e477de118643ef2ec9225783bc72ea08cb5e",
"opcodes": [
"JUMPDEST",
"EQ",
"PUSH2",
"JUMPI"
],
"start_pc": 1203
},
{
"end_pc": 1212,
"hash": "0x23e3f09fedf04221b89de778ae0113704395d288f8cb78cc456e2aced9460b4b",
"opcodes": [
"PUSH1",
"OP_80",
"REVERT"
],
"start_pc": 1209
},
{
"end_pc": 1311,
"hash": "0xaf04294cec16ecf71a67e34c1f169db2dbfeb3b28d20bae492e159103898f83e",
"opcodes": [
"JUMPDEST",
"PUSH1",
"OP_80",
"SLOAD",
"PUSH21",
"NOT",
"AND",
"PUSH21",
"OR",
"OP_90",
"SSTORE",
"PUSH32",
"PUSH1",
"MLOAD",
"PUSH1",
"MLOAD",
"OP_80",
"OP_91",
"SUB",
"OP_90",
"OP_A1",
"JUMP"
],
"start_pc": 1213
},
{
"end_pc": 1326,
"hash": "0x21da02f00b40abe7b2eac33411f871ccfeff4923b3c4678841581b87635ff77c",
"opcodes": [
"JUMPDEST",
"PUSH1",
"SLOAD",
"PUSH1",
"PUSH1",
"PUSH1",
"EXP",
"SUB",
"AND",
"OP_81",
"JUMP"
],
"start_pc": 1312
},
{
"end_pc": 1342,
"hash": "0xeb1df1cacaad944b857e71ede9cf13a48aedf50be41d994331f47983323dede0",
"opcodes": [
"JUMPDEST",
"PUSH1",
"SLOAD",
"PUSH1",
"PUSH1",
"EXP",
"OP_90",
"DIV",
"PUSH1",
"AND",
"OP_81",
"JUMP"
],
"start_pc": 1327
},
{
"end_pc": 1360,
"hash": "0x879ae4d4d6298393a2fdb6149f11b1665524a12960a361a29895a984e758422f",
"opcodes": [
"JUMPDEST",
"PUSH1",
"PUSH1",
"MSTORE",
"PUSH1",
"OP_90",
"OP_81",
"MSTORE",
"PUSH1",
"OP_90",
"SHA3",
"SLOAD",
"OP_81",
"JUMP"
],
"start_pc": 1343
},
{
"end_pc": 1383,
"hash": "0x15ab37bd61f96a87aea4f5be632bad0fc1e4f061f8534163537bdef6fba526dc",
"opcodes": [
"JUMPDEST",
"PUSH1",
"SLOAD",
"CALLER",
"PUSH1",
"PUSH1",
"PUSH1",
"EXP",
"SUB",
"OP_90",
"OP_81",
"AND",
"OP_91",
"AND",
"EQ",
"PUSH2",
"JUMPI"
],
"start_pc": 1361
},
{
"end_pc": 1387,
"hash": "0x2dfbaa62775cc19e3b352670fb536a6088acb532dd51e2680901c8df3adcab1e",
"opcodes": [
"PUSH1",
"OP_80",
"REVERT"
],
"start_pc": 1384
},
{
"end_pc": 1404,
"hash": "0xe92a07817ce197aefe66bef9b1cb9e4bb3973c0335de065cce6920955a784756",
"opcodes": [
"JUMPDEST",
"PUSH1",
"PUSH1",
"PUSH1",
"EXP",
"SUB",
"OP_81",
"AND",
"ISZERO",
"ISZERO",
"PUSH2",
"JUMPI"
],
"start_pc": 1388
},
{
"end_pc": 1408,
"hash": "0xe1c3152bf69d43b16992b742a8575250b69ed390895fa10c33f87bb6e4067b28",
"opcodes": [
"PUSH1",
"OP_80",
"REVERT"
],
"start_pc": 1405
},
{
"end_pc": 1515,
"hash": "0x71ab99d4a77cd689bada8447f0fd7459818878c4d92c62a60689b81b01ac6215",
"opcodes": [
"JUMPDEST",
"PUSH1",
"SLOAD",
"PUSH1",
"PUSH1",
"PUSH1",
"EXP",
"SUB",
"OP_80",
"OP_83",
"AND",
"OP_91",
"AND",
"PUSH32",
"PUSH1",
"MLOAD",
"PUSH1",
"MLOAD",
"OP_80",
"OP_91",
"SUB",
"OP_90",
"OP_A3",
"PUSH1",
"OP_80",
"SLOAD",
"PUSH20",
"NOT",
"AND",
"PUSH1",
"PUSH1",
"PUSH1",
"EXP",
"SUB",
"OP_92",
"OP_90",
"OP_92",
"AND",
"OP_91",
"OP_90",
"OP_91",
"OR",
"OP_90",
"SSTORE",
"JUMP"
],
"start_pc": 1409
},
{
"end_pc": 1538,
"hash": "0xafd73e52e10b25f3f12a3d0d40cbfb3721401a12d33d08ea53b508310fda5bd2",
"opcodes": [
"JUMPDEST",
"PUSH1",
"SLOAD",
"CALLER",
"PUSH1",
"PUSH1",
"PUSH1",
"EXP",
"SUB",
"OP_90",
"OP_81",
"AND",
"OP_91",
"AND",
"EQ",
"PUSH2",
"JUMPI"
],
"start_pc": 1516
},
{
exec
/bin/bash -lc "sed -n '1561,1820p' BYTECODE_BUNDLE.json" in /tmp/codex-fhdl2wda
succeeded in 0ms:
"end_pc": 1542,
"hash": "0xde5ed8d960dbb7f94daafdedfa680bf0e5a874a92b20c545590244197c5cd381",
"opcodes": [
"PUSH1",
"OP_80",
"REVERT"
],
"start_pc": 1539
},
{
"end_pc": 1566,
"hash": "0xe83d1261890ab112686da6c4b848ea890bcf8162ffb662ad85a6b7ed9cdd7338",
"opcodes": [
"JUMPDEST",
"PUSH1",
"OP_80",
"SLOAD",
"PUSH1",
"PUSH1",
"EXP",
"OP_90",
"DIV",
"PUSH1",
"AND",
"PUSH1",
"OP_81",
"GT",
"ISZERO",
"PUSH2",
"JUMPI"
],
"start_pc": 1543
},
{
"end_pc": 1567,
"hash": "0xbeaeee7a18abd04a01608a06e48147d16807efeb8cdf167449165f6f3ef57acc",
"opcodes": [
"INVALID"
],
"start_pc": 1567
},
{
"end_pc": 1573,
"hash": "0x20122bc8cc77a87c7dd99235fd192e7cf3545d019c6d5a16017d2f4844d0534c",
"opcodes": [
"JUMPDEST",
"LT",
"PUSH2",
"JUMPI"
],
"start_pc": 1568
},
{
"end_pc": 1577,
"hash": "0x89791ec97ecf1d22b57201353b0eaacf0fd248b663299b8a414a4f6c4f717e9c",
"opcodes": [
"PUSH1",
"OP_80",
"REVERT"
],
"start_pc": 1574
},
{
"end_pc": 1618,
"hash": "0x18304a4995ae09270a3a4bc97bff46b2647f9e90bc8dcea98527d66f65088f5a",
"opcodes": [
"JUMPDEST",
"PUSH1",
"PUSH1",
"PUSH1",
"EXP",
"SUB",
"OP_81",
"AND",
"PUSH1",
"OP_90",
"OP_81",
"MSTORE",
"PUSH1",
"PUSH1",
"MSTORE",
"PUSH1",
"OP_90",
"SHA3",
"SLOAD",
"PUSH2",
"OP_90",
"CALLVALUE",
"PUSH4",
"PUSH2",
"AND",
"JUMP"
],
"start_pc": 1578
},
{
"end_pc": 1703,
"hash": "0xa8cb8c015d28e6a516abed0bddbe3a7fce2e7afe7397fffd8a86d96f58da4727",
"opcodes": [
"JUMPDEST",
"PUSH1",
"PUSH1",
"PUSH1",
"EXP",
"SUB",
"OP_82",
"AND",
"PUSH1",
"OP_81",
"OP_81",
"MSTORE",
"PUSH1",
"PUSH1",
"MSTORE",
"PUSH1",
"OP_90",
"OP_81",
"OP_90",
"SHA3",
"OP_92",
"OP_90",
"OP_92",
"SSTORE",
"OP_90",
"PUSH32",
"OP_90",
"CALLVALUE",
"OP_90",
"MLOAD",
"OP_90",
"OP_81",
"MSTORE",
"PUSH1",
"ADD",
"PUSH1",
"MLOAD",
"OP_80",
"OP_91",
"SUB",
"OP_90",
"OP_A2",
"POP",
"JUMP"
],
"start_pc": 1619
},
{
"end_pc": 1729,
"hash": "0xaf41a8c5f4e87243521d418c8898489e97848e9976f611b0996cbd0d18af1470",
"opcodes": [
"JUMPDEST",
"PUSH1",
"PUSH1",
"OP_80",
"SLOAD",
"PUSH1",
"PUSH1",
"EXP",
"OP_90",
"DIV",
"PUSH1",
"AND",
"PUSH1",
"OP_81",
"GT",
"ISZERO",
"PUSH2",
"JUMPI"
],
"start_pc": 1704
},
{
"end_pc": 1730,
"hash": "0x75c1f95d6d57c92ad3feec0a3f0c1a890bac71f380112d3f45cf8cda31a69c81",
"opcodes": [
"INVALID"
],
"start_pc": 1730
},
{
"end_pc": 1736,
"hash": "0x802d13b13a7edc6a67a78c07d52a141bcd23f076be5623aa82dfad64b2709492",
"opcodes": [
"JUMPDEST",
"EQ",
"PUSH2",
"JUMPI"
],
"start_pc": 1731
},
{
"end_pc": 1740,
"hash": "0x3ef93b41855d9e47d23874000f82f8272272ac592bb759e37fa5a9f775216288",
"opcodes": [
"PUSH1",
"OP_80",
"REVERT"
],
"start_pc": 1737
},
{
"end_pc": 1772,
"hash": "0x056a340983cb7c9678fe98cdfa6b0d132c993f81a98fc008042d6f000f0ab6f5",
"opcodes": [
"JUMPDEST",
"PUSH1",
"PUSH1",
"PUSH1",
"EXP",
"SUB",
"OP_82",
"AND",
"PUSH1",
"OP_90",
"OP_81",
"MSTORE",
"PUSH1",
"PUSH1",
"MSTORE",
"PUSH1",
"OP_81",
"SHA3",
"SLOAD",
"OP_90",
"LT",
"PUSH2",
"JUMPI"
],
"start_pc": 1741
},
{
"end_pc": 1776,
"hash": "0xb169a13985bdc5f169caed492c36fd998c82c90d962fb4e8d7baa080bbf43f87",
"opcodes": [
"PUSH1",
"OP_80",
"REVERT"
],
"start_pc": 1773
},
{
"end_pc": 1845,
"hash": "0x05b70a01896641d958debb4578918ffb6f54df3edcaca24af29168e1bdf8e6c8",
"opcodes": [
"JUMPDEST",
"POP",
"PUSH1",
"PUSH1",
"PUSH1",
"EXP",
"SUB",
"OP_81",
"AND",
"PUSH1",
"OP_81",
"OP_81",
"MSTORE",
"PUSH1",
"PUSH1",
"MSTORE",
exec
/bin/bash -lc "sed -n '1821,2080p' BYTECODE_BUNDLE.json" in /tmp/codex-fhdl2wda
succeeded in 0ms:
"PUSH1",
"OP_80",
"OP_82",
"SHA3",
"OP_80",
"SLOAD",
"OP_92",
"OP_90",
"SSTORE",
"OP_90",
"OP_91",
"OP_90",
"OP_82",
"ISZERO",
"PUSH2",
"MUL",
"OP_90",
"OP_83",
"OP_90",
"MLOAD",
"PUSH1",
"PUSH1",
"MLOAD",
"OP_80",
"OP_83",
"SUB",
"OP_81",
"OP_85",
"OP_88",
"OP_88",
"CALL",
"OP_93",
"POP",
"POP",
"POP",
"POP",
"ISZERO",
"ISZERO",
"PUSH2",
"JUMPI"
],
"start_pc": 1777
},
{
"end_pc": 1849,
"hash": "0xc56524cc17ce3beaa1c993a34ed67554087e341c2dc618bb5e76e763c8af78e8",
"opcodes": [
"PUSH1",
"OP_80",
"REVERT"
],
"start_pc": 1846
},
{
"end_pc": 1914,
"hash": "0xab6e8d6bdf3184bc220ab19296cfeffc5441ea9a2a344323f3de4a13885c735a",
"opcodes": [
"JUMPDEST",
"OP_81",
"PUSH1",
"PUSH1",
"PUSH1",
"EXP",
"SUB",
"AND",
"PUSH32",
"OP_82",
"PUSH1",
"MLOAD",
"OP_90",
"OP_81",
"MSTORE",
"PUSH1",
"ADD",
"PUSH1",
"MLOAD",
"OP_80",
"OP_91",
"SUB",
"OP_90",
"OP_A2",
"POP",
"POP",
"JUMP"
],
"start_pc": 1850
},
{
"end_pc": 1928,
"hash": "0x0941787e85b6a9c1902c1cebec34eaf5c3497cf9d19250c2a0ee62a8a2ecc6fc",
"opcodes": [
"JUMPDEST",
"PUSH1",
"OP_82",
"OP_82",
"ADD",
"OP_83",
"OP_81",
"LT",
"ISZERO",
"PUSH2",
"JUMPI"
],
"start_pc": 1915
},
{
"end_pc": 1929,
"hash": "0xd71ac6899c78fd9fd5e6baf14fd2705ce7cb8808abf2b90d81c61393c9e74664",
"opcodes": [
"INVALID"
],
"start_pc": 1929
},
{
"end_pc": 1936,
"hash": "0xfa07a738ce99f7569a24f24129a881f6da4a9aec27fc8733fa1a826f1b81f1d5",
"opcodes": [
"JUMPDEST",
"OP_93",
"OP_92",
"POP",
"POP",
"POP",
"JUMP"
],
"start_pc": 1930
},
{
"end_pc": 1937,
"hash": "0xf8828aeb53cfa3bf75ebc4c3ce3581cd4abe7282e656c14bb5c26449c3f08b28",
"opcodes": [
"STOP"
],
"start_pc": 1937
},
{
"end_pc": 1975,
"hash": "0x16f6536684ee5e9d86f20a07b23a54fb843fc52ef10d4ff61355b0e046c9d42a",
"opcodes": [
"OP_A1",
"PUSH6",
"SHA3",
"OP_C1",
"OP_E4",
"OP_2F",
"EXTCODEHASH",
"OP_B7",
"OP_B6",
"PUSH20",
"OP_F6",
"PUSH10"
],
"start_pc": 1938
}
],
"callsites": [
{
"opcode": "CALL",
"pc": 847,
"returndata_checked": null,
"target_expression_category": "computed",
"value_expression_category": "computed"
},
{
"opcode": "CALL",
"pc": 1117,
"returndata_checked": null,
"target_expression_category": "computed",
"value_expression_category": "computed"
},
{
"opcode": "CALL",
"pc": 1834,
"returndata_checked": null,
"target_expression_category": "computed",
"value_expression_category": "computed"
}
],
"cfg_edges": [
{
"from": "bb:0",
"to": "bb:185",
"type": "control_flow"
},
{
"from": "bb:0",
"to": "bb:13",
"type": "control_flow_fallthrough"
},
{
"from": "bb:13",
"to": "bb:190",
"type": "control_flow"
},
{
"from": "bb:13",
"to": "bb:64",
"type": "control_flow_fallthrough"
},
{
"from": "bb:64",
"to": "bb:211",
"type": "control_flow"
},
{
"from": "bb:64",
"to": "bb:75",
"type": "control_flow_fallthrough"
},
{
"from": "bb:75",
"to": "bb:260",
"type": "control_flow"
},
{
"from": "bb:75",
"to": "bb:86",
"type": "control_flow_fallthrough"
},
{
"from": "bb:86",
"to": "bb:282",
"type": "control_flow"
},
{
"from": "bb:86",
"to": "bb:97",
"type": "control_flow_fallthrough"
},
{
"from": "bb:97",
"to": "bb:301",
"type": "control_flow"
},
{
"from": "bb:97",
"to": "bb:108",
"type": "control_flow_fallthrough"
},
{
"from": "bb:108",
"to": "bb:348",
"type": "control_flow"
},
{
"from": "bb:108",
"to": "bb:119",
"type": "control_flow_fallthrough"
},
{
"from": "bb:119",
"to": "bb:367",
"type": "control_flow"
},
{
"from": "bb:119",
"to": "bb:130",
"type": "control_flow_fallthrough"
},
{
exec
/bin/bash -lc "rg -n 'selectors|storage|findings|evidence|proxy|delegatecall|1967|beacon|slot' BYTECODE_BUNDLE.json" in /tmp/codex-fhdl2wda
succeeded in 0ms:
2622: "delegatecall": 0,
2626: "storage": {
2628: "slots": [
2632: "slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
2637: "slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
2642: "slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
2647: "slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
2652: "slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
2657: "slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
2662: "slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
2667: "slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
2672: "slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
2677: "slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
2682: "slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
2687: "slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
2692: "slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
2697: "slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
2702: "slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
2707: "slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
2712: "slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
2717: "slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
2722: "slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
2727: "slot": "0x8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0"
2732: "slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
2737: "slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
2742: "slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
2756: "delegatecall": 0,
2760: "storage": {
2762: "slots": [
2766: "slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
2771: "slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
2776: "slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
2781: "slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
2786: "slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
2791: "slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
2796: "slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
2801: "slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
2806: "slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
2811: "slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
2816: "slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
2821: "slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
2826: "slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
2831: "slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
2836: "slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
2841: "slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
2846: "slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
2851: "slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
2856: "slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
2861: "slot": "0x8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0"
2866: "slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
2871: "slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
2876: "slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
2890: "delegatecall": 0,
2894: "storage": {
2896: "slots": [
2900: "slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
2905: "slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
2910: "slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
2915: "slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
2920: "slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
2925: "slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
2930: "slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
2935: "slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
2940: "slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
2945: "slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
2950: "slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
2955: "slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
2960: "slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
2965: "slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
2970: "slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
2975: "slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
2980: "slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
2985: "slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
2990: "slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
2995: "slot": "0x8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0"
3000: "slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
3005: "slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
3010: "slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
3024: "delegatecall": 0,
3028: "storage": {
3030: "slots": [
3034: "slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
3039: "slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
3044: "slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
3049: "slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
3054: "slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
3059: "slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
3064: "slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
3069: "slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
3074: "slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
3079: "slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
3084: "slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
3089: "slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
3094: "slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
3099: "slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
3104: "slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
3109: "slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
3114: "slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
3119: "slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
3124: "slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
3129: "slot": "0x8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0"
3134: "slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
3139: "slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
3144: "slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
3158: "delegatecall": 0,
3162: "storage": {
3164: "slots": [
3168: "slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
3173: "slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
3178: "slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
3183: "slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
3188: "slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
3193: "slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
3198: "slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
3203: "slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
3208: "slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
3213: "slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
3218: "slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
3223: "slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
3228: "slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
3233: "slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
3238: "slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
3243: "slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
3248: "slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
3253: "slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
3258: "slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
3263: "slot": "0x8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0"
3268: "slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
3273: "slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
3278: "slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
3292: "delegatecall": 0,
3296: "storage": {
3298: "slots": [
3302: "slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
3307: "slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
3312: "slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
3317: "slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
3322: "slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
3327: "slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
3332: "slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
3337: "slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
3342: "slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
3347: "slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
3352: "slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
3357: "slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
3362: "slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
3367: "slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
3372: "slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
3377: "slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
3382: "slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
3387: "slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
3392: "slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
3397: "slot": "0x8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0"
3402: "slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
3407: "slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
3412: "slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
3426: "delegatecall": 0,
3430: "storage": {
3432: "slots": [
3436: "slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
3441: "slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
3446: "slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
3451: "slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
3456: "slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
3461: "slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
3466: "slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
3471: "slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
3476: "slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
3481: "slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
3486: "slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
3491: "slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
3496: "slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
3501: "slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
3506: "slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
3511: "slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
3516: "slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
3521: "slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
3526: "slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
3531: "slot": "0x8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0"
3536: "slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
3541: "slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
3546: "slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
3560: "delegatecall": 0,
3564: "storage": {
3566: "slots": [
3570: "slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
3575: "slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
3580: "slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
3585: "slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
3590: "slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
3595: "slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
3600: "slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
3605: "slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
3610: "slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
3615: "slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
3620: "slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
3625: "slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
3630: "slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
3635: "slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
3640: "slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
3645: "slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
3650: "slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
3655: "slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
3660: "slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
3665: "slot": "0x8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0"
3670: "slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
3675: "slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
3680: "slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
3694: "delegatecall": 0,
3698: "storage": {
3700: "slots": [
3704: "slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
3709: "slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
3714: "slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
3719: "slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
3724: "slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
3729: "slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
3734: "slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
3739: "slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
3744: "slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
3749: "slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
3754: "slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
3759: "slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
3764: "slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
3769: "slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
3774: "slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
3779: "slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
3784: "slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
3789: "slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
3794: "slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
3799: "slot": "0x8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0"
3804: "slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
3809: "slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
3814: "slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
3828: "delegatecall": 0,
3832: "storage": {
3834: "slots": [
3838: "slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
3843: "slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
3848: "slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
3853: "slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
3858: "slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
3863: "slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
3868: "slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
3873: "slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
3878: "slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
3883: "slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
3888: "slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
3893: "slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
3898: "slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
3903: "slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
3908: "slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
3913: "slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
3918: "slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
3923: "slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
3928: "slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
3933: "slot": "0x8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0"
3938: "slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
3943: "slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
3948: "slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
3962: "delegatecall": 0,
3966: "storage": {
3968: "slots": [
3972: "slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
3977: "slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
3982: "slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
3987: "slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
3992: "slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
3997: "slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
4002: "slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
4007: "slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
4012: "slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
4017: "slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
4022: "slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
4027: "slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
4032: "slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
4037: "slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
4042: "slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
4047: "slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
4052: "slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
4057: "slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
4062: "slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
4067: "slot": "0x8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0"
4072: "slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
4077: "slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
4082: "slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
4096: "delegatecall": 0,
4100: "storage": {
4102: "slots": [
4106: "slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
4111: "slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
4116: "slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
4121: "slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
4126: "slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
4131: "slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
4136: "slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
4141: "slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
4146: "slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
4151: "slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
4156: "slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
4161: "slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
4166: "slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
4171: "slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
4176: "slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
4181: "slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
4186: "slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
4191: "slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
4196: "slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
4201: "slot": "0x8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0"
4206: "slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
4211: "slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
4216: "slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
4223: "selectors": [
4241: "delegatecall": 0,
4244: "upgrade_slot_write_suspected": false
4246: "storage": {
4249: "slots": [
4253: "slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
4258: "slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
4263: "slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
4268: "slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
4273: "slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
4278: "slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
4283: "slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
4288: "slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
4293: "slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
4298: "slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
4303: "slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
4308: "slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
4313: "slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
4318: "slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
4323: "slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
4328: "slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
4333: "slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
4338: "slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
4343: "slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
4348: "slot": "0x8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0"
4353: "slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
4358: "slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
4363: "slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
4397: "proxy": "0",
4402: "proxy_evidence": {
4403: "status": "not_proxy"
4407: "is_proxy": false,
6014: "detector_findings": [
6017: "evidence_json": {
6069: "evidence_json": {
6122: "delegatecall_count": 0,
exec
/bin/bash -lc "sed -n '2081,2600p' BYTECODE_BUNDLE.json" in /tmp/codex-fhdl2wda
succeeded in 0ms:
"from": "bb:130",
"to": "bb:386",
"type": "control_flow"
},
{
"from": "bb:130",
"to": "bb:141",
"type": "control_flow_fallthrough"
},
{
"from": "bb:141",
"to": "bb:441",
"type": "control_flow"
},
{
"from": "bb:141",
"to": "bb:152",
"type": "control_flow_fallthrough"
},
{
"from": "bb:152",
"to": "bb:472",
"type": "control_flow"
},
{
"from": "bb:152",
"to": "bb:163",
"type": "control_flow_fallthrough"
},
{
"from": "bb:163",
"to": "bb:503",
"type": "control_flow"
},
{
"from": "bb:163",
"to": "bb:174",
"type": "control_flow_fallthrough"
},
{
"from": "bb:174",
"to": "bb:523",
"type": "control_flow"
},
{
"from": "bb:174",
"to": "bb:185",
"type": "control_flow_fallthrough"
},
{
"from": "bb:190",
"to": "bb:201",
"type": "control_flow"
},
{
"from": "bb:190",
"to": "bb:197",
"type": "control_flow_fallthrough"
},
{
"from": "bb:201",
"to": "bb:554",
"type": "control_flow"
},
{
"from": "bb:211",
"to": "bb:222",
"type": "control_flow"
},
{
"from": "bb:211",
"to": "bb:218",
"type": "control_flow_fallthrough"
},
{
"from": "bb:222",
"to": "bb:699",
"type": "control_flow"
},
{
"from": "bb:260",
"to": "bb:271",
"type": "control_flow"
},
{
"from": "bb:260",
"to": "bb:267",
"type": "control_flow_fallthrough"
},
{
"from": "bb:271",
"to": "bb:726",
"type": "control_flow"
},
{
"from": "bb:282",
"to": "bb:293",
"type": "control_flow"
},
{
"from": "bb:282",
"to": "bb:289",
"type": "control_flow_fallthrough"
},
{
"from": "bb:293",
"to": "bb:917",
"type": "control_flow"
},
{
"from": "bb:301",
"to": "bb:312",
"type": "control_flow"
},
{
"from": "bb:301",
"to": "bb:308",
"type": "control_flow_fallthrough"
},
{
"from": "bb:312",
"to": "bb:1135",
"type": "control_flow"
},
{
"from": "bb:348",
"to": "bb:359",
"type": "control_flow"
},
{
"from": "bb:348",
"to": "bb:355",
"type": "control_flow_fallthrough"
},
{
"from": "bb:359",
"to": "bb:1150",
"type": "control_flow"
},
{
"from": "bb:367",
"to": "bb:378",
"type": "control_flow"
},
{
"from": "bb:367",
"to": "bb:374",
"type": "control_flow_fallthrough"
},
{
"from": "bb:378",
"to": "bb:1312",
"type": "control_flow"
},
{
"from": "bb:386",
"to": "bb:397",
"type": "control_flow"
},
{
"from": "bb:386",
"to": "bb:393",
"type": "control_flow_fallthrough"
},
{
"from": "bb:397",
"to": "bb:1327",
"type": "control_flow"
},
{
"from": "bb:405",
"to": "bb:421",
"type": "control_flow"
},
{
"from": "bb:405",
"to": "bb:420",
"type": "control_flow_fallthrough"
},
{
"from": "bb:441",
"to": "bb:452",
"type": "control_flow"
},
{
"from": "bb:441",
"to": "bb:448",
"type": "control_flow_fallthrough"
},
{
"from": "bb:452",
"to": "bb:1343",
"type": "control_flow"
},
{
"from": "bb:472",
"to": "bb:483",
"type": "control_flow"
},
{
"from": "bb:472",
"to": "bb:479",
"type": "control_flow_fallthrough"
},
{
"from": "bb:483",
"to": "bb:1361",
"type": "control_flow"
},
{
"from": "bb:503",
"to": "bb:1516",
"type": "control_flow"
},
{
"from": "bb:523",
"to": "bb:534",
"type": "control_flow"
},
{
"from": "bb:523",
"to": "bb:530",
"type": "control_flow_fallthrough"
},
{
"from": "bb:534",
"to": "bb:1704",
"type": "control_flow"
},
{
"from": "bb:554",
"to": "bb:581",
"type": "control_flow"
},
{
"from": "bb:554",
"to": "bb:577",
"type": "control_flow_fallthrough"
},
{
"from": "bb:581",
"to": "bb:607",
"type": "control_flow"
},
{
"from": "bb:581",
"to": "bb:606",
"type": "control_flow_fallthrough"
},
{
"from": "bb:607",
"to": "bb:617",
"type": "control_flow"
},
{
"from": "bb:607",
"to": "bb:613",
"type": "control_flow_fallthrough"
},
{
"from": "bb:726",
"to": "bb:753",
"type": "control_flow"
},
{
"from": "bb:726",
"to": "bb:749",
"type": "control_flow_fallthrough"
},
{
"from": "bb:753",
"to": "bb:779",
"type": "control_flow"
},
{
"from": "bb:753",
"to": "bb:778",
"type": "control_flow_fallthrough"
},
{
"from": "bb:779",
"to": "bb:789",
"type": "control_flow"
},
{
"from": "bb:779",
"to": "bb:785",
"type": "control_flow_fallthrough"
},
{
"from": "bb:789",
"to": "bb:812",
"type": "control_flow"
},
{
"from": "bb:789",
"to": "bb:808",
"type": "control_flow_fallthrough"
},
{
"from": "bb:812",
"to": "bb:863",
"type": "control_flow"
},
{
"from": "bb:812",
"to": "bb:859",
"type": "control_flow_fallthrough"
},
{
"from": "bb:917",
"to": "bb:944",
"type": "control_flow"
},
{
"from": "bb:917",
"to": "bb:940",
"type": "control_flow_fallthrough"
},
{
"from": "bb:944",
"to": "bb:969",
"type": "control_flow"
},
{
"from": "bb:944",
"to": "bb:968",
"type": "control_flow_fallthrough"
},
{
"from": "bb:969",
"to": "bb:979",
"type": "control_flow"
},
{
"from": "bb:969",
"to": "bb:975",
"type": "control_flow_fallthrough"
},
{
"from": "bb:979",
"to": "bb:1133",
"type": "control_flow"
},
{
"from": "bb:979",
"to": "bb:1129",
"type": "control_flow_fallthrough"
},
{
"from": "bb:1150",
"to": "bb:1177",
"type": "control_flow"
},
{
"from": "bb:1150",
"to": "bb:1173",
"type": "control_flow_fallthrough"
},
{
"from": "bb:1177",
"to": "bb:1203",
"type": "control_flow"
},
{
"from": "bb:1177",
"to": "bb:1202",
"type": "control_flow_fallthrough"
},
{
"from": "bb:1203",
"to": "bb:1213",
"type": "control_flow"
},
{
"from": "bb:1203",
"to": "bb:1209",
"type": "control_flow_fallthrough"
},
{
"from": "bb:1361",
"to": "bb:1388",
"type": "control_flow"
},
{
"from": "bb:1361",
"to": "bb:1384",
"type": "control_flow_fallthrough"
},
{
"from": "bb:1388",
"to": "bb:1409",
"type": "control_flow"
},
{
"from": "bb:1388",
"to": "bb:1405",
"type": "control_flow_fallthrough"
},
{
"from": "bb:1516",
"to": "bb:1543",
"type": "control_flow"
},
{
"from": "bb:1516",
"to": "bb:1539",
"type": "control_flow_fallthrough"
},
{
"from": "bb:1543",
"to": "bb:1568",
"type": "control_flow"
},
{
"from": "bb:1543",
"to": "bb:1567",
"type": "control_flow_fallthrough"
},
{
"from": "bb:1568",
"to": "bb:1578",
"type": "control_flow"
},
{
"from": "bb:1568",
"to": "bb:1574",
"type": "control_flow_fallthrough"
},
{
"from": "bb:1704",
"to": "bb:1731",
"type": "control_flow"
},
{
"from": "bb:1704",
"to": "bb:1730",
"type": "control_flow_fallthrough"
},
{
"from": "bb:1731",
"to": "bb:1741",
"type": "control_flow"
},
{
"from": "bb:1731",
"to": "bb:1737",
"type": "control_flow_fallthrough"
},
{
"from": "bb:1741",
"to": "bb:1777",
"type": "control_flow"
},
{
"from": "bb:1741",
"to": "bb:1773",
"type": "control_flow_fallthrough"
},
{
"from": "bb:1777",
"to": "bb:1850",
"type": "control_flow"
},
{
"from": "bb:1777",
"to": "bb:1846",
"type": "control_flow_fallthrough"
},
{
"from": "bb:1915",
"to": "bb:1930",
"type": "control_flow"
},
{
"from": "bb:1915",
"to": "bb:1929",
"type": "control_flow_fallthrough"
}
],
"cfg_hash": "0x3f3ec1bf1d70c5f6a0a3ad11bfdc5caf4a6afda66a12a4ab729f7dcabc7f3043",
"dispatcher_type": "selector_jump_table",
"function_entries": [
{
"entry_pc": null,
"selector": "0x04b5802c"
},
{
"entry_pc": 773487949,
"selector": "0x23e3fbd5"
},
{
"entry_pc": 1138173654,
"selector": "0x2e1a7d4d"
},
{
"entry_pc": 1377743475,
"selector": "0x43d726d6"
},
{
"entry_pc": 2354240577,
"selector": "0x521eb273"
},
{
"entry_pc": 2376452955,
"selector": "0x8c52dc41"
},
{
"entry_pc": 3248329723,
"selector": "0x8da5cb5b"
},
{
"entry_pc": 3862636925,
"selector": "0xc19d93fb"
},
{
"entry_pc": 4076725131,
"selector": "0xe63b297d"
},
{
exec
/bin/bash -lc "sed -n '2601,4465p' BYTECODE_BUNDLE.json" in /tmp/codex-fhdl2wda
succeeded in 0ms:
"entry_pc": 4081121793,
"selector": "0xf2fde38b"
},
{
"entry_pc": 4203298842,
"selector": "0xf340fa01"
},
{
"entry_pc": 0,
"selector": "0xfa89401a"
}
],
"functions": [
{
"auth": {
"guards": []
},
"entry_pc": null,
"selector": "0x04b5802c",
"sinks": {
"call": 3,
"delegatecall": 0,
"selfdestruct": 0,
"staticcall": 0
},
"storage": {
"reads": 27,
"slots": [
{
"op": "SLOAD",
"pc": 557,
"slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
},
{
"op": "SLOAD",
"pc": 586,
"slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
},
{
"op": "SLOAD",
"pc": 621,
"slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
},
{
"op": "SLOAD",
"pc": 729,
"slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
},
{
"op": "SLOAD",
"pc": 758,
"slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
},
{
"op": "SLOAD",
"pc": 815,
"slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
},
{
"op": "SLOAD",
"pc": 920,
"slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
},
{
"op": "SLOAD",
"pc": 948,
"slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
},
{
"op": "SLOAD",
"pc": 983,
"slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
},
{
"op": "SLOAD",
"pc": 1079,
"slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
},
{
"op": "SLOAD",
"pc": 1138,
"slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
},
{
"op": "SLOAD",
"pc": 1153,
"slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
},
{
"op": "SLOAD",
"pc": 1182,
"slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
},
{
"op": "SLOAD",
"pc": 1217,
"slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
},
{
"op": "SLOAD",
"pc": 1315,
"slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
},
{
"op": "SLOAD",
"pc": 1330,
"slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
},
{
"op": "SLOAD",
"pc": 1364,
"slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
},
{
"op": "SLOAD",
"pc": 1412,
"slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
},
{
"op": "SLOAD",
"pc": 1473,
"slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
},
{
"op": "SSTORE",
"pc": 1514,
"slot": "0x8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0"
},
{
"op": "SLOAD",
"pc": 1519,
"slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
},
{
"op": "SLOAD",
"pc": 1547,
"slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
},
{
"op": "SLOAD",
"pc": 1710,
"slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
}
],
"writes": 6
}
},
{
"auth": {
"guards": []
},
"entry_pc": 773487949,
"selector": "0x23e3fbd5",
"sinks": {
"call": 3,
"delegatecall": 0,
"selfdestruct": 0,
"staticcall": 0
},
"storage": {
"reads": 27,
"slots": [
{
"op": "SLOAD",
"pc": 557,
"slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
},
{
"op": "SLOAD",
"pc": 586,
"slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
},
{
"op": "SLOAD",
"pc": 621,
"slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
},
{
"op": "SLOAD",
"pc": 729,
"slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
},
{
"op": "SLOAD",
"pc": 758,
"slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
},
{
"op": "SLOAD",
"pc": 815,
"slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
},
{
"op": "SLOAD",
"pc": 920,
"slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
},
{
"op": "SLOAD",
"pc": 948,
"slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
},
{
"op": "SLOAD",
"pc": 983,
"slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
},
{
"op": "SLOAD",
"pc": 1079,
"slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
},
{
"op": "SLOAD",
"pc": 1138,
"slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
},
{
"op": "SLOAD",
"pc": 1153,
"slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
},
{
"op": "SLOAD",
"pc": 1182,
"slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
},
{
"op": "SLOAD",
"pc": 1217,
"slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
},
{
"op": "SLOAD",
"pc": 1315,
"slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
},
{
"op": "SLOAD",
"pc": 1330,
"slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
},
{
"op": "SLOAD",
"pc": 1364,
"slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
},
{
"op": "SLOAD",
"pc": 1412,
"slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
},
{
"op": "SLOAD",
"pc": 1473,
"slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
},
{
"op": "SSTORE",
"pc": 1514,
"slot": "0x8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0"
},
{
"op": "SLOAD",
"pc": 1519,
"slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
},
{
"op": "SLOAD",
"pc": 1547,
"slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
},
{
"op": "SLOAD",
"pc": 1710,
"slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
}
],
"writes": 6
}
},
{
"auth": {
"guards": []
},
"entry_pc": 1138173654,
"selector": "0x2e1a7d4d",
"sinks": {
"call": 3,
"delegatecall": 0,
"selfdestruct": 0,
"staticcall": 0
},
"storage": {
"reads": 27,
"slots": [
{
"op": "SLOAD",
"pc": 557,
"slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
},
{
"op": "SLOAD",
"pc": 586,
"slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
},
{
"op": "SLOAD",
"pc": 621,
"slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
},
{
"op": "SLOAD",
"pc": 729,
"slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
},
{
"op": "SLOAD",
"pc": 758,
"slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
},
{
"op": "SLOAD",
"pc": 815,
"slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
},
{
"op": "SLOAD",
"pc": 920,
"slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
},
{
"op": "SLOAD",
"pc": 948,
"slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
},
{
"op": "SLOAD",
"pc": 983,
"slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
},
{
"op": "SLOAD",
"pc": 1079,
"slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
},
{
"op": "SLOAD",
"pc": 1138,
"slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
},
{
"op": "SLOAD",
"pc": 1153,
"slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
},
{
"op": "SLOAD",
"pc": 1182,
"slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
},
{
"op": "SLOAD",
"pc": 1217,
"slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
},
{
"op": "SLOAD",
"pc": 1315,
"slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
},
{
"op": "SLOAD",
"pc": 1330,
"slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
},
{
"op": "SLOAD",
"pc": 1364,
"slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
},
{
"op": "SLOAD",
"pc": 1412,
"slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
},
{
"op": "SLOAD",
"pc": 1473,
"slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
},
{
"op": "SSTORE",
"pc": 1514,
"slot": "0x8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0"
},
{
"op": "SLOAD",
"pc": 1519,
"slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
},
{
"op": "SLOAD",
"pc": 1547,
"slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
},
{
"op": "SLOAD",
"pc": 1710,
"slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
}
],
"writes": 6
}
},
{
"auth": {
"guards": []
},
"entry_pc": 1377743475,
"selector": "0x43d726d6",
"sinks": {
"call": 3,
"delegatecall": 0,
"selfdestruct": 0,
"staticcall": 0
},
"storage": {
"reads": 27,
"slots": [
{
"op": "SLOAD",
"pc": 557,
"slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
},
{
"op": "SLOAD",
"pc": 586,
"slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
},
{
"op": "SLOAD",
"pc": 621,
"slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
},
{
"op": "SLOAD",
"pc": 729,
"slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
},
{
"op": "SLOAD",
"pc": 758,
"slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
},
{
"op": "SLOAD",
"pc": 815,
"slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
},
{
"op": "SLOAD",
"pc": 920,
"slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
},
{
"op": "SLOAD",
"pc": 948,
"slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
},
{
"op": "SLOAD",
"pc": 983,
"slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
},
{
"op": "SLOAD",
"pc": 1079,
"slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
},
{
"op": "SLOAD",
"pc": 1138,
"slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
},
{
"op": "SLOAD",
"pc": 1153,
"slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
},
{
"op": "SLOAD",
"pc": 1182,
"slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
},
{
"op": "SLOAD",
"pc": 1217,
"slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
},
{
"op": "SLOAD",
"pc": 1315,
"slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
},
{
"op": "SLOAD",
"pc": 1330,
"slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
},
{
"op": "SLOAD",
"pc": 1364,
"slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
},
{
"op": "SLOAD",
"pc": 1412,
"slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
},
{
"op": "SLOAD",
"pc": 1473,
"slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
},
{
"op": "SSTORE",
"pc": 1514,
"slot": "0x8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0"
},
{
"op": "SLOAD",
"pc": 1519,
"slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
},
{
"op": "SLOAD",
"pc": 1547,
"slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
},
{
"op": "SLOAD",
"pc": 1710,
"slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
}
],
"writes": 6
}
},
{
"auth": {
"guards": []
},
"entry_pc": 2354240577,
"selector": "0x521eb273",
"sinks": {
"call": 3,
"delegatecall": 0,
"selfdestruct": 0,
"staticcall": 0
},
"storage": {
"reads": 27,
"slots": [
{
"op": "SLOAD",
"pc": 557,
"slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
},
{
"op": "SLOAD",
"pc": 586,
"slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
},
{
"op": "SLOAD",
"pc": 621,
"slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
},
{
"op": "SLOAD",
"pc": 729,
"slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
},
{
"op": "SLOAD",
"pc": 758,
"slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
},
{
"op": "SLOAD",
"pc": 815,
"slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
},
{
"op": "SLOAD",
"pc": 920,
"slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
},
{
"op": "SLOAD",
"pc": 948,
"slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
},
{
"op": "SLOAD",
"pc": 983,
"slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
},
{
"op": "SLOAD",
"pc": 1079,
"slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
},
{
"op": "SLOAD",
"pc": 1138,
"slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
},
{
"op": "SLOAD",
"pc": 1153,
"slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
},
{
"op": "SLOAD",
"pc": 1182,
"slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
},
{
"op": "SLOAD",
"pc": 1217,
"slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
},
{
"op": "SLOAD",
"pc": 1315,
"slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
},
{
"op": "SLOAD",
"pc": 1330,
"slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
},
{
"op": "SLOAD",
"pc": 1364,
"slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
},
{
"op": "SLOAD",
"pc": 1412,
"slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
},
{
"op": "SLOAD",
"pc": 1473,
"slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
},
{
"op": "SSTORE",
"pc": 1514,
"slot": "0x8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0"
},
{
"op": "SLOAD",
"pc": 1519,
"slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
},
{
"op": "SLOAD",
"pc": 1547,
"slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
},
{
"op": "SLOAD",
"pc": 1710,
"slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
}
],
"writes": 6
}
},
{
"auth": {
"guards": []
},
"entry_pc": 2376452955,
"selector": "0x8c52dc41",
"sinks": {
"call": 3,
"delegatecall": 0,
"selfdestruct": 0,
"staticcall": 0
},
"storage": {
"reads": 27,
"slots": [
{
"op": "SLOAD",
"pc": 557,
"slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
},
{
"op": "SLOAD",
"pc": 586,
"slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
},
{
"op": "SLOAD",
"pc": 621,
"slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
},
{
"op": "SLOAD",
"pc": 729,
"slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
},
{
"op": "SLOAD",
"pc": 758,
"slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
},
{
"op": "SLOAD",
"pc": 815,
"slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
},
{
"op": "SLOAD",
"pc": 920,
"slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
},
{
"op": "SLOAD",
"pc": 948,
"slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
},
{
"op": "SLOAD",
"pc": 983,
"slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
},
{
"op": "SLOAD",
"pc": 1079,
"slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
},
{
"op": "SLOAD",
"pc": 1138,
"slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
},
{
"op": "SLOAD",
"pc": 1153,
"slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
},
{
"op": "SLOAD",
"pc": 1182,
"slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
},
{
"op": "SLOAD",
"pc": 1217,
"slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
},
{
"op": "SLOAD",
"pc": 1315,
"slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
},
{
"op": "SLOAD",
"pc": 1330,
"slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
},
{
"op": "SLOAD",
"pc": 1364,
"slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
},
{
"op": "SLOAD",
"pc": 1412,
"slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
},
{
"op": "SLOAD",
"pc": 1473,
"slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
},
{
"op": "SSTORE",
"pc": 1514,
"slot": "0x8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0"
},
{
"op": "SLOAD",
"pc": 1519,
"slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
},
{
"op": "SLOAD",
"pc": 1547,
"slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
},
{
"op": "SLOAD",
"pc": 1710,
"slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
}
],
"writes": 6
}
},
{
"auth": {
"guards": []
},
"entry_pc": 3248329723,
"selector": "0x8da5cb5b",
"sinks": {
"call": 3,
"delegatecall": 0,
"selfdestruct": 0,
"staticcall": 0
},
"storage": {
"reads": 27,
"slots": [
{
"op": "SLOAD",
"pc": 557,
"slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
},
{
"op": "SLOAD",
"pc": 586,
"slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
},
{
"op": "SLOAD",
"pc": 621,
"slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
},
{
"op": "SLOAD",
"pc": 729,
"slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
},
{
"op": "SLOAD",
"pc": 758,
"slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
},
{
"op": "SLOAD",
"pc": 815,
"slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
},
{
"op": "SLOAD",
"pc": 920,
"slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
},
{
"op": "SLOAD",
"pc": 948,
"slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
},
{
"op": "SLOAD",
"pc": 983,
"slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
},
{
"op": "SLOAD",
"pc": 1079,
"slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
},
{
"op": "SLOAD",
"pc": 1138,
"slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
},
{
"op": "SLOAD",
"pc": 1153,
"slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
},
{
"op": "SLOAD",
"pc": 1182,
"slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
},
{
"op": "SLOAD",
"pc": 1217,
"slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
},
{
"op": "SLOAD",
"pc": 1315,
"slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
},
{
"op": "SLOAD",
"pc": 1330,
"slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
},
{
"op": "SLOAD",
"pc": 1364,
"slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
},
{
"op": "SLOAD",
"pc": 1412,
"slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
},
{
"op": "SLOAD",
"pc": 1473,
"slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
},
{
"op": "SSTORE",
"pc": 1514,
"slot": "0x8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0"
},
{
"op": "SLOAD",
"pc": 1519,
"slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
},
{
"op": "SLOAD",
"pc": 1547,
"slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
},
{
"op": "SLOAD",
"pc": 1710,
"slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
}
],
"writes": 6
}
},
{
"auth": {
"guards": []
},
"entry_pc": 3862636925,
"selector": "0xc19d93fb",
"sinks": {
"call": 3,
"delegatecall": 0,
"selfdestruct": 0,
"staticcall": 0
},
"storage": {
"reads": 27,
"slots": [
{
"op": "SLOAD",
"pc": 557,
"slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
},
{
"op": "SLOAD",
"pc": 586,
"slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
},
{
"op": "SLOAD",
"pc": 621,
"slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
},
{
"op": "SLOAD",
"pc": 729,
"slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
},
{
"op": "SLOAD",
"pc": 758,
"slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
},
{
"op": "SLOAD",
"pc": 815,
"slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
},
{
"op": "SLOAD",
"pc": 920,
"slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
},
{
"op": "SLOAD",
"pc": 948,
"slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
},
{
"op": "SLOAD",
"pc": 983,
"slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
},
{
"op": "SLOAD",
"pc": 1079,
"slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
},
{
"op": "SLOAD",
"pc": 1138,
"slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
},
{
"op": "SLOAD",
"pc": 1153,
"slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
},
{
"op": "SLOAD",
"pc": 1182,
"slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
},
{
"op": "SLOAD",
"pc": 1217,
"slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
},
{
"op": "SLOAD",
"pc": 1315,
"slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
},
{
"op": "SLOAD",
"pc": 1330,
"slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
},
{
"op": "SLOAD",
"pc": 1364,
"slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
},
{
"op": "SLOAD",
"pc": 1412,
"slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
},
{
"op": "SLOAD",
"pc": 1473,
"slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
},
{
"op": "SSTORE",
"pc": 1514,
"slot": "0x8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0"
},
{
"op": "SLOAD",
"pc": 1519,
"slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
},
{
"op": "SLOAD",
"pc": 1547,
"slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
},
{
"op": "SLOAD",
"pc": 1710,
"slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
}
],
"writes": 6
}
},
{
"auth": {
"guards": []
},
"entry_pc": 4076725131,
"selector": "0xe63b297d",
"sinks": {
"call": 3,
"delegatecall": 0,
"selfdestruct": 0,
"staticcall": 0
},
"storage": {
"reads": 27,
"slots": [
{
"op": "SLOAD",
"pc": 557,
"slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
},
{
"op": "SLOAD",
"pc": 586,
"slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
},
{
"op": "SLOAD",
"pc": 621,
"slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
},
{
"op": "SLOAD",
"pc": 729,
"slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
},
{
"op": "SLOAD",
"pc": 758,
"slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
},
{
"op": "SLOAD",
"pc": 815,
"slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
},
{
"op": "SLOAD",
"pc": 920,
"slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
},
{
"op": "SLOAD",
"pc": 948,
"slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
},
{
"op": "SLOAD",
"pc": 983,
"slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
},
{
"op": "SLOAD",
"pc": 1079,
"slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
},
{
"op": "SLOAD",
"pc": 1138,
"slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
},
{
"op": "SLOAD",
"pc": 1153,
"slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
},
{
"op": "SLOAD",
"pc": 1182,
"slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
},
{
"op": "SLOAD",
"pc": 1217,
"slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
},
{
"op": "SLOAD",
"pc": 1315,
"slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
},
{
"op": "SLOAD",
"pc": 1330,
"slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
},
{
"op": "SLOAD",
"pc": 1364,
"slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
},
{
"op": "SLOAD",
"pc": 1412,
"slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
},
{
"op": "SLOAD",
"pc": 1473,
"slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
},
{
"op": "SSTORE",
"pc": 1514,
"slot": "0x8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0"
},
{
"op": "SLOAD",
"pc": 1519,
"slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
},
{
"op": "SLOAD",
"pc": 1547,
"slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
},
{
"op": "SLOAD",
"pc": 1710,
"slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
}
],
"writes": 6
}
},
{
"auth": {
"guards": []
},
"entry_pc": 4081121793,
"selector": "0xf2fde38b",
"sinks": {
"call": 3,
"delegatecall": 0,
"selfdestruct": 0,
"staticcall": 0
},
"storage": {
"reads": 27,
"slots": [
{
"op": "SLOAD",
"pc": 557,
"slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
},
{
"op": "SLOAD",
"pc": 586,
"slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
},
{
"op": "SLOAD",
"pc": 621,
"slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
},
{
"op": "SLOAD",
"pc": 729,
"slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
},
{
"op": "SLOAD",
"pc": 758,
"slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
},
{
"op": "SLOAD",
"pc": 815,
"slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
},
{
"op": "SLOAD",
"pc": 920,
"slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
},
{
"op": "SLOAD",
"pc": 948,
"slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
},
{
"op": "SLOAD",
"pc": 983,
"slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
},
{
"op": "SLOAD",
"pc": 1079,
"slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
},
{
"op": "SLOAD",
"pc": 1138,
"slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
},
{
"op": "SLOAD",
"pc": 1153,
"slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
},
{
"op": "SLOAD",
"pc": 1182,
"slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
},
{
"op": "SLOAD",
"pc": 1217,
"slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
},
{
"op": "SLOAD",
"pc": 1315,
"slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
},
{
"op": "SLOAD",
"pc": 1330,
"slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
},
{
"op": "SLOAD",
"pc": 1364,
"slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
},
{
"op": "SLOAD",
"pc": 1412,
"slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
},
{
"op": "SLOAD",
"pc": 1473,
"slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
},
{
"op": "SSTORE",
"pc": 1514,
"slot": "0x8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0"
},
{
"op": "SLOAD",
"pc": 1519,
"slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
},
{
"op": "SLOAD",
"pc": 1547,
"slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
},
{
"op": "SLOAD",
"pc": 1710,
"slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
}
],
"writes": 6
}
},
{
"auth": {
"guards": []
},
"entry_pc": 4203298842,
"selector": "0xf340fa01",
"sinks": {
"call": 3,
"delegatecall": 0,
"selfdestruct": 0,
"staticcall": 0
},
"storage": {
"reads": 27,
"slots": [
{
"op": "SLOAD",
"pc": 557,
"slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
},
{
"op": "SLOAD",
"pc": 586,
"slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
},
{
"op": "SLOAD",
"pc": 621,
"slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
},
{
"op": "SLOAD",
"pc": 729,
"slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
},
{
"op": "SLOAD",
"pc": 758,
"slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
},
{
"op": "SLOAD",
"pc": 815,
"slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
},
{
"op": "SLOAD",
"pc": 920,
"slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
},
{
"op": "SLOAD",
"pc": 948,
"slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
},
{
"op": "SLOAD",
"pc": 983,
"slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
},
{
"op": "SLOAD",
"pc": 1079,
"slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
},
{
"op": "SLOAD",
"pc": 1138,
"slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
},
{
"op": "SLOAD",
"pc": 1153,
"slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
},
{
"op": "SLOAD",
"pc": 1182,
"slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
},
{
"op": "SLOAD",
"pc": 1217,
"slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
},
{
"op": "SLOAD",
"pc": 1315,
"slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
},
{
"op": "SLOAD",
"pc": 1330,
"slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
},
{
"op": "SLOAD",
"pc": 1364,
"slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
},
{
"op": "SLOAD",
"pc": 1412,
"slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
},
{
"op": "SLOAD",
"pc": 1473,
"slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
},
{
"op": "SSTORE",
"pc": 1514,
"slot": "0x8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0"
},
{
"op": "SLOAD",
"pc": 1519,
"slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
},
{
"op": "SLOAD",
"pc": 1547,
"slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
},
{
"op": "SLOAD",
"pc": 1710,
"slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
}
],
"writes": 6
}
},
{
"auth": {
"guards": []
},
"entry_pc": 0,
"selector": "0xfa89401a",
"sinks": {
"call": 3,
"delegatecall": 0,
"selfdestruct": 0,
"staticcall": 0
},
"storage": {
"reads": 27,
"slots": [
{
"op": "SLOAD",
"pc": 557,
"slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
},
{
"op": "SLOAD",
"pc": 586,
"slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
},
{
"op": "SLOAD",
"pc": 621,
"slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
},
{
"op": "SLOAD",
"pc": 729,
"slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
},
{
"op": "SLOAD",
"pc": 758,
"slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
},
{
"op": "SLOAD",
"pc": 815,
"slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
},
{
"op": "SLOAD",
"pc": 920,
"slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
},
{
"op": "SLOAD",
"pc": 948,
"slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
},
{
"op": "SLOAD",
"pc": 983,
"slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
},
{
"op": "SLOAD",
"pc": 1079,
"slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
},
{
"op": "SLOAD",
"pc": 1138,
"slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
},
{
"op": "SLOAD",
"pc": 1153,
"slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
},
{
"op": "SLOAD",
"pc": 1182,
"slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
},
{
"op": "SLOAD",
"pc": 1217,
"slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
},
{
"op": "SLOAD",
"pc": 1315,
"slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
},
{
"op": "SLOAD",
"pc": 1330,
"slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
},
{
"op": "SLOAD",
"pc": 1364,
"slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
},
{
"op": "SLOAD",
"pc": 1412,
"slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
},
{
"op": "SLOAD",
"pc": 1473,
"slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
},
{
"op": "SSTORE",
"pc": 1514,
"slot": "0x8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0"
},
{
"op": "SLOAD",
"pc": 1519,
"slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
},
{
"op": "SLOAD",
"pc": 1547,
"slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
},
{
"op": "SLOAD",
"pc": 1710,
"slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
}
],
"writes": 6
}
}
],
"selectors": [
"0x04b5802c",
"0x23e3fbd5",
"0x2e1a7d4d",
"0x43d726d6",
"0x521eb273",
"0x8c52dc41",
"0x8da5cb5b",
"0xc19d93fb",
"0xe63b297d",
"0xf2fde38b",
"0xf340fa01",
"0xfa89401a"
],
"sinks": {
"call": 3,
"create": 0,
"create2": 0,
"delegatecall": 0,
"selfdestruct": 0,
"staticcall": 0,
"upgrade_slot_write_suspected": false
},
"storage": {
"keccak_count": 7,
"reads": 27,
"slots": [
{
"op": "SLOAD",
"pc": 557,
"slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
},
{
"op": "SLOAD",
"pc": 586,
"slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
},
{
"op": "SLOAD",
"pc": 621,
"slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
},
{
"op": "SLOAD",
"pc": 729,
"slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
},
{
"op": "SLOAD",
"pc": 758,
"slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
},
{
"op": "SLOAD",
"pc": 815,
"slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
},
{
"op": "SLOAD",
"pc": 920,
"slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
},
{
"op": "SLOAD",
"pc": 948,
"slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
},
{
"op": "SLOAD",
"pc": 983,
"slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
},
{
"op": "SLOAD",
"pc": 1079,
"slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
},
{
"op": "SLOAD",
"pc": 1138,
"slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
},
{
"op": "SLOAD",
"pc": 1153,
"slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
},
{
"op": "SLOAD",
"pc": 1182,
"slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
},
{
"op": "SLOAD",
"pc": 1217,
"slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
},
{
"op": "SLOAD",
"pc": 1315,
"slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
},
{
"op": "SLOAD",
"pc": 1330,
"slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
},
{
"op": "SLOAD",
"pc": 1364,
"slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
},
{
"op": "SLOAD",
"pc": 1412,
"slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
},
{
"op": "SLOAD",
"pc": 1473,
"slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
},
{
"op": "SSTORE",
"pc": 1514,
"slot": "0x8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0"
},
{
"op": "SLOAD",
"pc": 1519,
"slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
},
{
"op": "SLOAD",
"pc": 1547,
"slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
},
{
"op": "SLOAD",
"pc": 1710,
"slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
}
],
"writes": 6
},
"version": "analysis_artifact_v1"
},
"block_number": null,
"chain_id": 1,
"codehash": "0x252c84b41f31abed9d42e794ba0ff4d728aca64f2c2deea9bd146fb7b195cba5",
"created_at": "2026-04-04T02:51:17.000000Z",
"id": 1399,
"updated_at": "2026-04-04T02:51:17.000000Z",
"version": "analysis_artifact_v1"
},
"analysis_run": {
"address": "0x6ee4bc4cbc09346e718fad1933f9ca32543ddc93",
"block_number": null,
"chain_id": 1,
"child_links": [],
"created_at": "2026-04-04T02:50:47.000000Z",
"id": "019d5666-720b-73fb-be2d-e65507781793",
"parent_links": [],
"status": "running",
"updated_at": "2026-04-04T02:51:15.000000Z"
},
"artifact": {
"codehash": "0x252c84b41f31abed9d42e794ba0ff4d728aca64f2c2deea9bd146fb7b195cba5",
"compiler_json": {
"compiler_version": null,
"etherscan": {
"contract_name": null,
"implementation": null,
"license": "Unknown",
"proxy": "0",
"swarm_source": null
},
"optimizer_enabled": false,
"optimizer_runs": 0,
"proxy_evidence": {
"status": "not_proxy"
}
},
"implementation_address": null,
"is_proxy": false,
"runtime_bytecode": {
"full": "0x6060604052600436106100b95763ffffffff7c010000000000000000000000000000000000000000000000000000000060003504166304b5802c81146100be57806323e3fbd5146100d35780632e1a7d4d1461010457806343d726d61461011a578063521eb2731461012d5780638c52dc411461015c5780638da5cb5b1461016f578063c19d93fb14610182578063e63b297d146101b9578063f2fde38b146101d8578063f340fa01146101f7578063fa89401a1461020b575b600080fd5b34156100c957600080fd5b6100d161022a565b005b34156100de57600080fd5b6100f2600160a060020a03600435166102bb565b60405190815260200160405180910390f35b341561010f57600080fd5b6100d16004356102d6565b341561012557600080fd5b6100d1610395565b341561013857600080fd5b61014061046f565b604051600160a060020a03909116815260200160405180910390f35b341561016757600080fd5b6100d161047e565b341561017a57600080fd5b610140610520565b341561018d57600080fd5b61019561052f565b604051808260038111156101a557fe5b60ff16815260200191505060405180910390f35b34156101c457600080fd5b6100f2600160a060020a036004351661053f565b34156101e357600080fd5b6100d1600160a060020a0360043516610551565b6100d1600160a060020a03600435166105ec565b341561021657600080fd5b6100d1600160a060020a03600435166106a8565b60005433600160a060020a0390811691161461024557600080fd5b600060025460a060020a900460ff16600381111561025f57fe5b1461026957600080fd5b6002805474ff0000000000000000000000000000000000000000191660a060020a1790557f1c0b311fb23e509198d3f069f85c72b08139f11dad18ebbc1a9d4d2791072d1260405160405180910390a1565b600160a060020a031660009081526001602052604090205490565b60005433600160a060020a039081169116146102f157600080fd5b600160025460a060020a900460ff16600381111561030b57fe5b1461031557600080fd5b600160a060020a0330163181111561032c57600080fd5b600254600160a060020a031681156108fc0282604051600060405180830381858888f19350505050151561035f57600080fd5b7f11e9d9f7a772129e26cb0560945658c96b41c42ac6712d233e20c894bfcd00fd8160405190815260200160405180910390a150565b60005433600160a060020a039081169116146103b057600080fd5b6002805460a060020a900460ff1660038111156103c957fe5b106103d357600080fd5b6002805474ff00000000000000000000000000000000000000001916740300000000000000000000000000000000000000001790557f1cdde67b72a90f19919ac732a437ac2f7a10fc128d28c2a6e525d89ce5cd9d3a60405160405180910390a1600254600160a060020a039081169030163180156108fc0290604051600060405180830381858888f19350505050151561046d57600080fd5b565b600254600160a060020a031681565b60005433600160a060020a0390811691161461049957600080fd5b600060025460a060020a900460ff1660038111156104b357fe5b146104bd57600080fd5b6002805474ff00000000000000000000000000000000000000001916740200000000000000000000000000000000000000001790557f599d8e5a83cffb867d051598c4d70e805d59802d8081c1c7d6dffc5b6aca2b8960405160405180910390a1565b600054600160a060020a031681565b60025460a060020a900460ff1681565b60016020526000908152604090205481565b60005433600160a060020a0390811691161461056c57600080fd5b600160a060020a038116151561058157600080fd5b600054600160a060020a0380831691167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a36000805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0392909216919091179055565b60005433600160a060020a0390811691161461060757600080fd5b6002805460a060020a900460ff16600381111561062057fe5b1061062a57600080fd5b600160a060020a038116600090815260016020526040902054610653903463ffffffff61077b16565b600160a060020a0382166000818152600160205260409081902092909255907f2da466a7b24304f47e87fa2e1e5a81b9831ce54fec19055ce277ca2f39ba42c49034905190815260200160405180910390a250565b60006002805460a060020a900460ff1660038111156106c357fe5b146106cd57600080fd5b600160a060020a03821660009081526001602052604081205490106106f157600080fd5b50600160a060020a038116600081815260016020526040808220805492905590919082156108fc0290839051600060405180830381858888f19350505050151561073a57600080fd5b81600160a060020a03167fd7dee2702d63ad89917b6a4da9981c90c4d24f8c2bdfd64c604ecae57d8d06518260405190815260200160405180910390a25050565b60008282018381101561078a57fe5b93925050505600a165627a7a72305820c1e42f3fb7b6739289cb02f1f2a3934a45cab1cee9c81d72a0851ef6695849040029",
"head": null,
"length": 3964,
"tail": null,
"truncated": false
},
"verified_source": false
},
"capability_graph": {
"address": "0x6ee4bc4cbc09346e718fad1933f9ca32543ddc93",
"block_number": null,
"chain_id": 1,
"codehash": "0x252c84b41f31abed9d42e794ba0ff4d728aca64f2c2deea9bd146fb7b195cba5",
"created_at": "2026-04-04T02:51:17.000000Z",
"graph_hash": "0x6c7f37b4da141d0892e125ca6ab314844777d5efcc64694d01cd15b0484051ff",
"graph_json": {
"edges": [
{
"from": "bb:0",
"to": "bb:185",
"type": "control_flow"
},
{
"from": "bb:0",
"to": "bb:13",
"type": "control_flow_fallthrough"
},
{
"from": "bb:13",
"to": "bb:190",
"type": "control_flow"
},
{
"from": "bb:13",
"to": "bb:64",
"type": "control_flow_fallthrough"
},
{
"from": "bb:64",
"to": "bb:211",
"type": "control_flow"
},
{
"from": "bb:64",
"to": "bb:75",
"type": "control_flow_fallthrough"
},
{
"from": "bb:75",
"to": "bb:260",
"type": "control_flow"
},
{
"from": "bb:75",
"to": "bb:86",
"type": "control_flow_fallthrough"
},
exec
/bin/bash -lc "sed -n '6000,6165p' BYTECODE_BUNDLE.json" in /tmp/codex-fhdl2wda
succeeded in 0ms:
},
{
"entry_pc": 0,
"id": "fn:0xfa89401a",
"selector": "0xfa89401a",
"type": "function"
}
],
"version": "capability_graph_v1"
},
"id": 1399,
"updated_at": "2026-04-04T02:51:17.000000Z",
"version": "capability_graph_v1"
},
"detector_findings": [
{
"confidence": 60,
"evidence_json": {
"call_count": 3,
"examples": [
{
"opcode": "CALL",
"pc": 847,
"returndata_checked": null,
"target_expression_category": "computed",
"value_expression_category": "computed"
},
{
"opcode": "CALL",
"pc": 1117,
"returndata_checked": null,
"target_expression_category": "computed",
"value_expression_category": "computed"
},
{
"opcode": "CALL",
"pc": 1834,
"returndata_checked": null,
"target_expression_category": "computed",
"value_expression_category": "computed"
}
],
"guards_detected": [],
"untrusted_call_count": 3
},
"normalized_json": {
"sink": "CALL"
},
"severity": "high",
"title": "Untrusted CALL target/value reachable",
"validated": false,
"validation_json": {
"attempts": 1,
"call_targets": [
"0x6ee4bc4cbc09346e718fad1933f9ca32543ddc93"
],
"classification": "constant_target",
"confirmed": false,
"errors": 0,
"matched_probe": null,
"sink": "CALL",
"status": "sink_reached",
"target_varies": false,
"trace_id": "0xc5454359ab62c10498bc12038ea1556366273f354866c2128f67aff0360248fc",
"trace_mode": "callTracer"
}
},
{
"confidence": 55,
"evidence_json": {
"eth_value_calls": 3,
"examples": [
{
"opcode": "CALL",
"pc": 847,
"returndata_checked": null,
"target_expression_category": "computed",
"value_expression_category": "computed"
},
{
"opcode": "CALL",
"pc": 1117,
"returndata_checked": null,
"target_expression_category": "computed",
"value_expression_category": "computed"
},
{
"opcode": "CALL",
"pc": 1834,
"returndata_checked": null,
"target_expression_category": "computed",
"value_expression_category": "computed"
}
],
"guards_detected": []
},
"normalized_json": {
"sink": "CALL",
"value": "nonzero"
},
"severity": "high",
"title": "ETH value transfer possible",
"validated": false,
"validation_json": {
"attempts": 1,
"call_targets": [
"0x6ee4bc4cbc09346e718fad1933f9ca32543ddc93"
],
"classification": "constant_target",
"confirmed": false,
"errors": 0,
"matched_probe": null,
"sink": "CALL",
"status": "sink_reached",
"target_varies": false,
"trace_id": "0xc5454359ab62c10498bc12038ea1556366273f354866c2128f67aff0360248fc",
"trace_mode": "callTracer"
}
}
],
"heuristics_summary": {
"create2_count": 0,
"delegatecall_count": 0,
"flags": [],
"selfdestruct_count": 0
}
}
exec
/bin/bash -lc "node -e 'const fs=require(\"fs\");const j=JSON.parse(fs.readFileSync(\"BYTECODE_BUNDLE.json\",\"utf8\")); console.log(JSON.stringify(j.detector_findings,null,2));'" in /tmp/codex-fhdl2wda
succeeded in 0ms:
[
{
"confidence": 60,
"evidence_json": {
"call_count": 3,
"examples": [
{
"opcode": "CALL",
"pc": 847,
"returndata_checked": null,
"target_expression_category": "computed",
"value_expression_category": "computed"
},
{
"opcode": "CALL",
"pc": 1117,
"returndata_checked": null,
"target_expression_category": "computed",
"value_expression_category": "computed"
},
{
"opcode": "CALL",
"pc": 1834,
"returndata_checked": null,
"target_expression_category": "computed",
"value_expression_category": "computed"
}
],
"guards_detected": [],
"untrusted_call_count": 3
},
"normalized_json": {
"sink": "CALL"
},
"severity": "high",
"title": "Untrusted CALL target/value reachable",
"validated": false,
"validation_json": {
"attempts": 1,
"call_targets": [
"0x6ee4bc4cbc09346e718fad1933f9ca32543ddc93"
],
"classification": "constant_target",
"confirmed": false,
"errors": 0,
"matched_probe": null,
"sink": "CALL",
"status": "sink_reached",
"target_varies": false,
"trace_id": "0xc5454359ab62c10498bc12038ea1556366273f354866c2128f67aff0360248fc",
"trace_mode": "callTracer"
}
},
{
"confidence": 55,
"evidence_json": {
"eth_value_calls": 3,
"examples": [
{
"opcode": "CALL",
"pc": 847,
"returndata_checked": null,
"target_expression_category": "computed",
"value_expression_category": "computed"
},
{
"opcode": "CALL",
"pc": 1117,
"returndata_checked": null,
"target_expression_category": "computed",
"value_expression_category": "computed"
},
{
"opcode": "CALL",
"pc": 1834,
"returndata_checked": null,
"target_expression_category": "computed",
"value_expression_category": "computed"
}
],
"guards_detected": []
},
"normalized_json": {
"sink": "CALL",
"value": "nonzero"
},
"severity": "high",
"title": "ETH value transfer possible",
"validated": false,
"validation_json": {
"attempts": 1,
"call_targets": [
"0x6ee4bc4cbc09346e718fad1933f9ca32543ddc93"
],
"classification": "constant_target",
"confirmed": false,
"errors": 0,
"matched_probe": null,
"sink": "CALL",
"status": "sink_reached",
"target_varies": false,
"trace_id": "0xc5454359ab62c10498bc12038ea1556366273f354866c2128f67aff0360248fc",
"trace_mode": "callTracer"
}
}
]
exec
/bin/bash -lc "node - <<'NODE'
const fs=require('fs');
const j=JSON.parse(fs.readFileSync('BYTECODE_BUNDLE.json','utf8'));
const hex=j.artifact.runtime_bytecode.full.slice(2);
const OPCODES={0x00:'STOP',0x01:'ADD',0x02:'MUL',0x03:'SUB',0x04:'DIV',0x05:'SDIV',0x06:'MOD',0x07:'SMOD',0x08:'ADDMOD',0x09:'MULMOD',0x0a:'EXP',0x0b:'SIGNEXTEND',0x10:'LT',0x11:'GT',0x12:'SLT',0x13:'SGT',0x14:'EQ',0x15:'ISZERO',0x16:'AND',0x17:'OR',0x18:'XOR',0x19:'NOT',0x1a:'BYTE',0x20:'SHA3',0x30:'ADDRESS',0x31:'BALANCE',0x32:'ORIGIN',0x33:'CALLER',0x34:'CALLVALUE',0x35:'CALLDATALOAD',0x36:'CALLDATASIZE',0x37:'CALLDATACOPY',0x38:'CODESIZE',0x39:'CODECOPY',0x3a:'GASPRICE',0x3b:'EXTCODESIZE',0x3c:'EXTCODECOPY',0x3d:'RETURNDATASIZE',0x3e:'RETURNDATACOPY',0x40:'BLOCKHASH',0x41:'COINBASE',0x42:'TIMESTAMP',0x43:'NUMBER',0x44:'DIFFICULTY',0x45:'GASLIMIT',0x46:'CHAINID',0x47:'SELFBALANCE',0x48:'BASEFEE',0x50:'POP',0x51:'MLOAD',0x52:'MSTORE',0x53:'MSTORE8',0x54:'SLOAD',0x55:'SSTORE',0x56:'JUMP',0x57:'JUMPI',0x58:'PC',0x59:'MSIZE',0x5a:'GAS',0x5b:'JUMPDEST',0xf0:'CREATE',0xf1:'CALL',0xf2:'CALLCODE',0xf3:'RETURN',0xf4:'DELEGATECALL',0xf5:'CREATE2',0xfa:'STATICCALL',0xfd:'REVERT',0xfe:'INVALID',0xff:'SELFDESTRUCT'};
for(let i=0;i<32;i++){OPCODES[0x60+i]='PUSH'+(i+1)}
for(let i=0;i<16;i++){OPCODES[0x80+i]='DUP'+(i+1)}
for(let i=0;i<16;i++){OPCODES[0x90+i]='SWAP'+(i+1)}
for(let i=0;i<5;i++){OPCODES[0xa0+i]='LOG'+i}
let pc=0; let out='';
while(pc<hex.length/2){ let op=parseInt(hex.slice(pc*2,pc*2+2),16); let name=OPCODES[op]||('OP_'+op.toString(16)); out += pc.toString().padStart(4)+' '+name; if(name.startsWith('PUSH')){let n=op-0x5f; let data=hex.slice(pc*2+2, pc*2+2+n*2); out+=' 0x'+data; pc+=1+n;} else {pc+=1;} out+='\\n'; }
console.log(out.split('\\n').slice(540,760).join('\\n'));
NODE" in /tmp/codex-fhdl2wda
succeeded in 0ms:
928 EXP
929 SUB
930 SWAP1
931 DUP2
932 AND
933 SWAP2
934 AND
935 EQ
936 PUSH2 0x03b0
939 JUMPI
940 PUSH1 0x00
942 DUP1
943 REVERT
944 JUMPDEST
945 PUSH1 0x02
947 DUP1
948 SLOAD
949 PUSH1 0xa0
951 PUSH1 0x02
953 EXP
954 SWAP1
955 DIV
956 PUSH1 0xff
958 AND
959 PUSH1 0x03
961 DUP2
962 GT
963 ISZERO
964 PUSH2 0x03c9
967 JUMPI
968 INVALID
969 JUMPDEST
970 LT
971 PUSH2 0x03d3
974 JUMPI
975 PUSH1 0x00
977 DUP1
978 REVERT
979 JUMPDEST
980 PUSH1 0x02
982 DUP1
983 SLOAD
984 PUSH21 0xff0000000000000000000000000000000000000000
1006 NOT
1007 AND
1008 PUSH21 0x030000000000000000000000000000000000000000
1030 OR
1031 SWAP1
1032 SSTORE
1033 PUSH32 0x1cdde67b72a90f19919ac732a437ac2f7a10fc128d28c2a6e525d89ce5cd9d3a
1066 PUSH1 0x40
1068 MLOAD
1069 PUSH1 0x40
1071 MLOAD
1072 DUP1
1073 SWAP2
1074 SUB
1075 SWAP1
1076 LOG1
1077 PUSH1 0x02
1079 SLOAD
1080 PUSH1 0x01
1082 PUSH1 0xa0
1084 PUSH1 0x02
1086 EXP
1087 SUB
1088 SWAP1
1089 DUP2
1090 AND
1091 SWAP1
1092 ADDRESS
1093 AND
1094 BALANCE
1095 DUP1
1096 ISZERO
1097 PUSH2 0x08fc
1100 MUL
1101 SWAP1
1102 PUSH1 0x40
1104 MLOAD
1105 PUSH1 0x00
1107 PUSH1 0x40
1109 MLOAD
1110 DUP1
1111 DUP4
1112 SUB
1113 DUP2
1114 DUP6
1115 DUP9
1116 DUP9
1117 CALL
1118 SWAP4
1119 POP
1120 POP
1121 POP
1122 POP
1123 ISZERO
1124 ISZERO
1125 PUSH2 0x046d
1128 JUMPI
1129 PUSH1 0x00
1131 DUP1
1132 REVERT
1133 JUMPDEST
1134 JUMP
1135 JUMPDEST
1136 PUSH1 0x02
1138 SLOAD
1139 PUSH1 0x01
1141 PUSH1 0xa0
1143 PUSH1 0x02
1145 EXP
1146 SUB
1147 AND
1148 DUP2
1149 JUMP
1150 JUMPDEST
1151 PUSH1 0x00
1153 SLOAD
1154 CALLER
1155 PUSH1 0x01
1157 PUSH1 0xa0
1159 PUSH1 0x02
1161 EXP
1162 SUB
1163 SWAP1
1164 DUP2
1165 AND
1166 SWAP2
1167 AND
1168 EQ
1169 PUSH2 0x0499
1172 JUMPI
1173 PUSH1 0x00
1175 DUP1
1176 REVERT
1177 JUMPDEST
1178 PUSH1 0x00
1180 PUSH1 0x02
1182 SLOAD
1183 PUSH1 0xa0
1185 PUSH1 0x02
1187 EXP
1188 SWAP1
1189 DIV
1190 PUSH1 0xff
1192 AND
1193 PUSH1 0x03
1195 DUP2
1196 GT
1197 ISZERO
1198 PUSH2 0x04b3
1201 JUMPI
1202 INVALID
1203 JUMPDEST
1204 EQ
1205 PUSH2 0x04bd
1208 JUMPI
1209 PUSH1 0x00
1211 DUP1
1212 REVERT
1213 JUMPDEST
1214 PUSH1 0x02
1216 DUP1
1217 SLOAD
1218 PUSH21 0xff0000000000000000000000000000000000000000
1240 NOT
1241 AND
1242 PUSH21 0x020000000000000000000000000000000000000000
1264 OR
1265 SWAP1
1266 SSTORE
1267 PUSH32 0x599d8e5a83cffb867d051598c4d70e805d59802d8081c1c7d6dffc5b6aca2b89
1300 PUSH1 0x40
1302 MLOAD
1303 PUSH1 0x40
1305 MLOAD
1306 DUP1
1307 SWAP2
1308 SUB
1309 SWAP1
1310 LOG1
1311 JUMP
1312 JUMPDEST
1313 PUSH1 0x00
1315 SLOAD
1316 PUSH1 0x01
1318 PUSH1 0xa0
1320 PUSH1 0x02
1322 EXP
1323 SUB
1324 AND
1325 DUP2
1326 JUMP
1327 JUMPDEST
1328 PUSH1 0x02
1330 SLOAD
1331 PUSH1 0xa0
1333 PUSH1 0x02
1335 EXP
1336 SWAP1
1337 DIV
1338 PUSH1 0xff
1340 AND
1341 DUP2
1342 JUMP
1343 JUMPDEST
1344 PUSH1 0x01
1346 PUSH1 0x20
1348 MSTORE
1349 PUSH1 0x00
1351 SWAP1
1352 DUP2
1353 MSTORE
1354 PUSH1 0x40
1356 SWAP1
1357 SHA3
1358 SLOAD
1359 DUP2
1360 JUMP
exec
/bin/bash -lc "node - <<'NODE'
const fs=require('fs');
const j=JSON.parse(fs.readFileSync('BYTECODE_BUNDLE.json','utf8'));
const hex=j.artifact.runtime_bytecode.full.slice(2);
const OPCODES={0x00:'STOP',0x01:'ADD',0x02:'MUL',0x03:'SUB',0x04:'DIV',0x05:'SDIV',0x06:'MOD',0x07:'SMOD',0x08:'ADDMOD',0x09:'MULMOD',0x0a:'EXP',0x0b:'SIGNEXTEND',0x10:'LT',0x11:'GT',0x12:'SLT',0x13:'SGT',0x14:'EQ',0x15:'ISZERO',0x16:'AND',0x17:'OR',0x18:'XOR',0x19:'NOT',0x1a:'BYTE',0x20:'SHA3',0x30:'ADDRESS',0x31:'BALANCE',0x32:'ORIGIN',0x33:'CALLER',0x34:'CALLVALUE',0x35:'CALLDATALOAD',0x36:'CALLDATASIZE',0x37:'CALLDATACOPY',0x38:'CODESIZE',0x39:'CODECOPY',0x3a:'GASPRICE',0x3b:'EXTCODESIZE',0x3c:'EXTCODECOPY',0x3d:'RETURNDATASIZE',0x3e:'RETURNDATACOPY',0x40:'BLOCKHASH',0x41:'COINBASE',0x42:'TIMESTAMP',0x43:'NUMBER',0x44:'DIFFICULTY',0x45:'GASLIMIT',0x46:'CHAINID',0x47:'SELFBALANCE',0x48:'BASEFEE',0x50:'POP',0x51:'MLOAD',0x52:'MSTORE',0x53:'MSTORE8',0x54:'SLOAD',0x55:'SSTORE',0x56:'JUMP',0x57:'JUMPI',0x58:'PC',0x59:'MSIZE',0x5a:'GAS',0x5b:'JUMPDEST',0xf0:'CREATE',0xf1:'CALL',0xf2:'CALLCODE',0xf3:'RETURN',0xf4:'DELEGATECALL',0xf5:'CREATE2',0xfa:'STATICCALL',0xfd:'REVERT',0xfe:'INVALID',0xff:'SELFDESTRUCT'};
for(let i=0;i<32;i++){OPCODES[0x60+i]='PUSH'+(i+1)}
for(let i=0;i<16;i++){OPCODES[0x80+i]='DUP'+(i+1)}
for(let i=0;i<16;i++){OPCODES[0x90+i]='SWAP'+(i+1)}
for(let i=0;i<5;i++){OPCODES[0xa0+i]='LOG'+i}
let pc=0; let lines=[];
while(pc<hex.length/2){ let start=pc; let op=parseInt(hex.slice(pc*2,pc*2+2),16); let name=OPCODES[op]||('OP_'+op.toString(16)); let line=start.toString().padStart(4)+' '+name; if(name.startsWith('PUSH')){let n=op-0x5f; let data=hex.slice(pc*2+2, pc*2+2+n*2); line+=' 0x'+data; pc+=1+n;} else {pc+=1;} lines.push(line); }
const start=1360,end=1860; console.log(lines.filter(l=>{const pc=parseInt(l); return pc>=start && pc<=end;}).join('\\n'));
NODE" in /tmp/codex-fhdl2wda
succeeded in 0ms:
1360 JUMP
1361 JUMPDEST
1362 PUSH1 0x00
1364 SLOAD
1365 CALLER
1366 PUSH1 0x01
1368 PUSH1 0xa0
1370 PUSH1 0x02
1372 EXP
1373 SUB
1374 SWAP1
1375 DUP2
1376 AND
1377 SWAP2
1378 AND
1379 EQ
1380 PUSH2 0x056c
1383 JUMPI
1384 PUSH1 0x00
1386 DUP1
1387 REVERT
1388 JUMPDEST
1389 PUSH1 0x01
1391 PUSH1 0xa0
1393 PUSH1 0x02
1395 EXP
1396 SUB
1397 DUP2
1398 AND
1399 ISZERO
1400 ISZERO
1401 PUSH2 0x0581
1404 JUMPI
1405 PUSH1 0x00
1407 DUP1
1408 REVERT
1409 JUMPDEST
1410 PUSH1 0x00
1412 SLOAD
1413 PUSH1 0x01
1415 PUSH1 0xa0
1417 PUSH1 0x02
1419 EXP
1420 SUB
1421 DUP1
1422 DUP4
1423 AND
1424 SWAP2
1425 AND
1426 PUSH32 0x8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0
1459 PUSH1 0x40
1461 MLOAD
1462 PUSH1 0x40
1464 MLOAD
1465 DUP1
1466 SWAP2
1467 SUB
1468 SWAP1
1469 LOG3
1470 PUSH1 0x00
1472 DUP1
1473 SLOAD
1474 PUSH20 0xffffffffffffffffffffffffffffffffffffffff
1495 NOT
1496 AND
1497 PUSH1 0x01
1499 PUSH1 0xa0
1501 PUSH1 0x02
1503 EXP
1504 SUB
1505 SWAP3
1506 SWAP1
1507 SWAP3
1508 AND
1509 SWAP2
1510 SWAP1
1511 SWAP2
1512 OR
1513 SWAP1
1514 SSTORE
1515 JUMP
1516 JUMPDEST
1517 PUSH1 0x00
1519 SLOAD
1520 CALLER
1521 PUSH1 0x01
1523 PUSH1 0xa0
1525 PUSH1 0x02
1527 EXP
1528 SUB
1529 SWAP1
1530 DUP2
1531 AND
1532 SWAP2
1533 AND
1534 EQ
1535 PUSH2 0x0607
1538 JUMPI
1539 PUSH1 0x00
1541 DUP1
1542 REVERT
1543 JUMPDEST
1544 PUSH1 0x02
1546 DUP1
1547 SLOAD
1548 PUSH1 0xa0
1550 PUSH1 0x02
1552 EXP
1553 SWAP1
1554 DIV
1555 PUSH1 0xff
1557 AND
1558 PUSH1 0x03
1560 DUP2
1561 GT
1562 ISZERO
1563 PUSH2 0x0620
1566 JUMPI
1567 INVALID
1568 JUMPDEST
1569 LT
1570 PUSH2 0x062a
1573 JUMPI
1574 PUSH1 0x00
1576 DUP1
1577 REVERT
1578 JUMPDEST
1579 PUSH1 0x01
1581 PUSH1 0xa0
1583 PUSH1 0x02
1585 EXP
1586 SUB
1587 DUP2
1588 AND
1589 PUSH1 0x00
1591 SWAP1
1592 DUP2
1593 MSTORE
1594 PUSH1 0x01
1596 PUSH1 0x20
1598 MSTORE
1599 PUSH1 0x40
1601 SWAP1
1602 SHA3
1603 SLOAD
1604 PUSH2 0x0653
1607 SWAP1
1608 CALLVALUE
1609 PUSH4 0xffffffff
1614 PUSH2 0x077b
1617 AND
1618 JUMP
1619 JUMPDEST
1620 PUSH1 0x01
1622 PUSH1 0xa0
1624 PUSH1 0x02
1626 EXP
1627 SUB
1628 DUP3
1629 AND
1630 PUSH1 0x00
1632 DUP2
1633 DUP2
1634 MSTORE
1635 PUSH1 0x01
1637 PUSH1 0x20
1639 MSTORE
1640 PUSH1 0x40
1642 SWAP1
1643 DUP2
1644 SWAP1
1645 SHA3
1646 SWAP3
1647 SWAP1
1648 SWAP3
1649 SSTORE
1650 SWAP1
1651 PUSH32 0x2da466a7b24304f47e87fa2e1e5a81b9831ce54fec19055ce277ca2f39ba42c4
1684 SWAP1
1685 CALLVALUE
1686 SWAP1
1687 MLOAD
1688 SWAP1
1689 DUP2
1690 MSTORE
1691 PUSH1 0x20
1693 ADD
1694 PUSH1 0x40
1696 MLOAD
1697 DUP1
1698 SWAP2
1699 SUB
1700 SWAP1
1701 LOG2
1702 POP
1703 JUMP
1704 JUMPDEST
1705 PUSH1 0x00
1707 PUSH1 0x02
1709 DUP1
1710 SLOAD
1711 PUSH1 0xa0
1713 PUSH1 0x02
1715 EXP
1716 SWAP1
1717 DIV
1718 PUSH1 0xff
1720 AND
1721 PUSH1 0x03
1723 DUP2
1724 GT
1725 ISZERO
1726 PUSH2 0x06c3
1729 JUMPI
1730 INVALID
1731 JUMPDEST
1732 EQ
1733 PUSH2 0x06cd
1736 JUMPI
1737 PUSH1 0x00
1739 DUP1
1740 REVERT
1741 JUMPDEST
1742 PUSH1 0x01
1744 PUSH1 0xa0
1746 PUSH1 0x02
1748 EXP
1749 SUB
1750 DUP3
1751 AND
1752 PUSH1 0x00
1754 SWAP1
1755 DUP2
1756 MSTORE
1757 PUSH1 0x01
1759 PUSH1 0x20
1761 MSTORE
1762 PUSH1 0x40
1764 DUP2
1765 SHA3
1766 SLOAD
1767 SWAP1
1768 LT
1769 PUSH2 0x06f1
1772 JUMPI
1773 PUSH1 0x00
1775 DUP1
1776 REVERT
1777 JUMPDEST
1778 POP
1779 PUSH1 0x01
1781 PUSH1 0xa0
1783 PUSH1 0x02
1785 EXP
1786 SUB
1787 DUP2
1788 AND
1789 PUSH1 0x00
1791 DUP2
1792 DUP2
1793 MSTORE
1794 PUSH1 0x01
1796 PUSH1 0x20
1798 MSTORE
1799 PUSH1 0x40
1801 DUP1
1802 DUP3
1803 SHA3
1804 DUP1
1805 SLOAD
1806 SWAP3
1807 SWAP1
1808 SSTORE
1809 SWAP1
1810 SWAP2
1811 SWAP1
1812 DUP3
1813 ISZERO
1814 PUSH2 0x08fc
1817 MUL
1818 SWAP1
1819 DUP4
1820 SWAP1
1821 MLOAD
1822 PUSH1 0x00
1824 PUSH1 0x40
1826 MLOAD
1827 DUP1
1828 DUP4
1829 SUB
1830 DUP2
1831 DUP6
1832 DUP9
1833 DUP9
1834 CALL
1835 SWAP4
1836 POP
1837 POP
1838 POP
1839 POP
1840 ISZERO
1841 ISZERO
1842 PUSH2 0x073a
1845 JUMPI
1846 PUSH1 0x00
1848 DUP1
1849 REVERT
1850 JUMPDEST
1851 DUP2
1852 PUSH1 0x01
1854 PUSH1 0xa0
1856 PUSH1 0x02
1858 EXP
1859 SUB
1860 AND
exec
/bin/bash -lc "node - <<'NODE'
const fs=require('fs');
const j=JSON.parse(fs.readFileSync('BYTECODE_BUNDLE.json','utf8'));
const hex=j.artifact.runtime_bytecode.full.slice(2);
const OPCODES={0x00:'STOP',0x01:'ADD',0x02:'MUL',0x03:'SUB',0x04:'DIV',0x05:'SDIV',0x06:'MOD',0x07:'SMOD',0x08:'ADDMOD',0x09:'MULMOD',0x0a:'EXP',0x0b:'SIGNEXTEND',0x10:'LT',0x11:'GT',0x12:'SLT',0x13:'SGT',0x14:'EQ',0x15:'ISZERO',0x16:'AND',0x17:'OR',0x18:'XOR',0x19:'NOT',0x1a:'BYTE',0x20:'SHA3',0x30:'ADDRESS',0x31:'BALANCE',0x32:'ORIGIN',0x33:'CALLER',0x34:'CALLVALUE',0x35:'CALLDATALOAD',0x36:'CALLDATASIZE',0x37:'CALLDATACOPY',0x38:'CODESIZE',0x39:'CODECOPY',0x3a:'GASPRICE',0x3b:'EXTCODESIZE',0x3c:'EXTCODECOPY',0x3d:'RETURNDATASIZE',0x3e:'RETURNDATACOPY',0x40:'BLOCKHASH',0x41:'COINBASE',0x42:'TIMESTAMP',0x43:'NUMBER',0x44:'DIFFICULTY',0x45:'GASLIMIT',0x46:'CHAINID',0x47:'SELFBALANCE',0x48:'BASEFEE',0x50:'POP',0x51:'MLOAD',0x52:'MSTORE',0x53:'MSTORE8',0x54:'SLOAD',0x55:'SSTORE',0x56:'JUMP',0x57:'JUMPI',0x58:'PC',0x59:'MSIZE',0x5a:'GAS',0x5b:'JUMPDEST',0xf0:'CREATE',0xf1:'CALL',0xf2:'CALLCODE',0xf3:'RETURN',0xf4:'DELEGATECALL',0xf5:'CREATE2',0xfa:'STATICCALL',0xfd:'REVERT',0xfe:'INVALID',0xff:'SELFDESTRUCT'};
for(let i=0;i<32;i++){OPCODES[0x60+i]='PUSH'+(i+1)}
for(let i=0;i<16;i++){OPCODES[0x80+i]='DUP'+(i+1)}
for(let i=0;i<16;i++){OPCODES[0x90+i]='SWAP'+(i+1)}
for(let i=0;i<5;i++){OPCODES[0xa0+i]='LOG'+i}
let pc=0; let lines=[];
while(pc<hex.length/2){ let start=pc; let op=parseInt(hex.slice(pc*2,pc*2+2),16); let name=OPCODES[op]||('OP_'+op.toString(16)); let line=start.toString().padStart(4)+' '+name; if(name.startsWith('PUSH')){let n=op-0x5f; let data=hex.slice(pc*2+2, pc*2+2+n*2); line+=' 0x'+data; pc+=1+n;} else {pc+=1;} lines.push(line); }
const start=1850,end=1940; console.log(lines.filter(l=>{const pc=parseInt(l); return pc>=start && pc<=end;}).join('\\n'));
NODE" in /tmp/codex-fhdl2wda
succeeded in 0ms:
1850 JUMPDEST
1851 DUP2
1852 PUSH1 0x01
1854 PUSH1 0xa0
1856 PUSH1 0x02
1858 EXP
1859 SUB
1860 AND
1861 PUSH32 0xd7dee2702d63ad89917b6a4da9981c90c4d24f8c2bdfd64c604ecae57d8d0651
1894 DUP3
1895 PUSH1 0x40
1897 MLOAD
1898 SWAP1
1899 DUP2
1900 MSTORE
1901 PUSH1 0x20
1903 ADD
1904 PUSH1 0x40
1906 MLOAD
1907 DUP1
1908 SWAP2
1909 SUB
1910 SWAP1
1911 LOG2
1912 POP
1913 POP
1914 JUMP
1915 JUMPDEST
1916 PUSH1 0x00
1918 DUP3
1919 DUP3
1920 ADD
1921 DUP4
1922 DUP2
1923 LT
1924 ISZERO
1925 PUSH2 0x078a
1928 JUMPI
1929 INVALID
1930 JUMPDEST
1931 SWAP4
1932 SWAP3
1933 POP
1934 POP
1935 POP
1936 JUMP
1937 STOP
1938 LOG1
1939 PUSH6 0x627a7a723058
exec
/bin/bash -lc "node - <<'NODE'
const fs=require('fs');
const j=JSON.parse(fs.readFileSync('BYTECODE_BUNDLE.json','utf8'));
const hex=j.artifact.runtime_bytecode.full.slice(2);
const OPCODES={0x00:'STOP',0x01:'ADD',0x02:'MUL',0x03:'SUB',0x04:'DIV',0x05:'SDIV',0x06:'MOD',0x07:'SMOD',0x08:'ADDMOD',0x09:'MULMOD',0x0a:'EXP',0x0b:'SIGNEXTEND',0x10:'LT',0x11:'GT',0x12:'SLT',0x13:'SGT',0x14:'EQ',0x15:'ISZERO',0x16:'AND',0x17:'OR',0x18:'XOR',0x19:'NOT',0x1a:'BYTE',0x20:'SHA3',0x30:'ADDRESS',0x31:'BALANCE',0x32:'ORIGIN',0x33:'CALLER',0x34:'CALLVALUE',0x35:'CALLDATALOAD',0x36:'CALLDATASIZE',0x37:'CALLDATACOPY',0x38:'CODESIZE',0x39:'CODECOPY',0x3a:'GASPRICE',0x3b:'EXTCODESIZE',0x3c:'EXTCODECOPY',0x3d:'RETURNDATASIZE',0x3e:'RETURNDATACOPY',0x40:'BLOCKHASH',0x41:'COINBASE',0x42:'TIMESTAMP',0x43:'NUMBER',0x44:'DIFFICULTY',0x45:'GASLIMIT',0x46:'CHAINID',0x47:'SELFBALANCE',0x48:'BASEFEE',0x50:'POP',0x51:'MLOAD',0x52:'MSTORE',0x53:'MSTORE8',0x54:'SLOAD',0x55:'SSTORE',0x56:'JUMP',0x57:'JUMPI',0x58:'PC',0x59:'MSIZE',0x5a:'GAS',0x5b:'JUMPDEST',0xf0:'CREATE',0xf1:'CALL',0xf2:'CALLCODE',0xf3:'RETURN',0xf4:'DELEGATECALL',0xf5:'CREATE2',0xfa:'STATICCALL',0xfd:'REVERT',0xfe:'INVALID',0xff:'SELFDESTRUCT'};
for(let i=0;i<32;i++){OPCODES[0x60+i]='PUSH'+(i+1)}
for(let i=0;i<16;i++){OPCODES[0x80+i]='DUP'+(i+1)}
for(let i=0;i<16;i++){OPCODES[0x90+i]='SWAP'+(i+1)}
for(let i=0;i<5;i++){OPCODES[0xa0+i]='LOG'+i}
let pc=0; let lines=[];
while(pc<hex.length/2){ let start=pc; let op=parseInt(hex.slice(pc*2,pc*2+2),16); let name=OPCODES[op]||('OP_'+op.toString(16)); let line=start.toString().padStart(4)+' '+name; if(name.startsWith('PUSH')){let n=op-0x5f; let data=hex.slice(pc*2+2, pc*2+2+n*2); line+=' 0x'+data; pc+=1+n;} else {pc+=1;} lines.push(line); }
const start=185,end=240; console.log(lines.filter(l=>{const pc=parseInt(l); return pc>=start && pc<=end;}).join('\\n'));
NODE" in /tmp/codex-fhdl2wda
succeeded in 0ms:
185 JUMPDEST
186 PUSH1 0x00
188 DUP1
189 REVERT
190 JUMPDEST
191 CALLVALUE
192 ISZERO
193 PUSH2 0x00c9
196 JUMPI
197 PUSH1 0x00
199 DUP1
200 REVERT
201 JUMPDEST
202 PUSH2 0x00d1
205 PUSH2 0x022a
208 JUMP
209 JUMPDEST
210 STOP
211 JUMPDEST
212 CALLVALUE
213 ISZERO
214 PUSH2 0x00de
217 JUMPI
218 PUSH1 0x00
220 DUP1
221 REVERT
222 JUMPDEST
223 PUSH2 0x00f2
226 PUSH1 0x01
228 PUSH1 0xa0
230 PUSH1 0x02
232 EXP
233 SUB
234 PUSH1 0x04
236 CALLDATALOAD
237 AND
238 PUSH2 0x02bb
exec
/bin/bash -lc "node - <<'NODE'
const fs=require('fs');
const j=JSON.parse(fs.readFileSync('BYTECODE_BUNDLE.json','utf8'));
const hex=j.artifact.runtime_bytecode.full.slice(2);
const OPCODES={0x00:'STOP',0x01:'ADD',0x02:'MUL',0x03:'SUB',0x04:'DIV',0x05:'SDIV',0x06:'MOD',0x07:'SMOD',0x08:'ADDMOD',0x09:'MULMOD',0x0a:'EXP',0x0b:'SIGNEXTEND',0x10:'LT',0x11:'GT',0x12:'SLT',0x13:'SGT',0x14:'EQ',0x15:'ISZERO',0x16:'AND',0x17:'OR',0x18:'XOR',0x19:'NOT',0x1a:'BYTE',0x20:'SHA3',0x30:'ADDRESS',0x31:'BALANCE',0x32:'ORIGIN',0x33:'CALLER',0x34:'CALLVALUE',0x35:'CALLDATALOAD',0x36:'CALLDATASIZE',0x37:'CALLDATACOPY',0x38:'CODESIZE',0x39:'CODECOPY',0x3a:'GASPRICE',0x3b:'EXTCODESIZE',0x3c:'EXTCODECOPY',0x3d:'RETURNDATASIZE',0x3e:'RETURNDATACOPY',0x40:'BLOCKHASH',0x41:'COINBASE',0x42:'TIMESTAMP',0x43:'NUMBER',0x44:'DIFFICULTY',0x45:'GASLIMIT',0x46:'CHAINID',0x47:'SELFBALANCE',0x48:'BASEFEE',0x50:'POP',0x51:'MLOAD',0x52:'MSTORE',0x53:'MSTORE8',0x54:'SLOAD',0x55:'SSTORE',0x56:'JUMP',0x57:'JUMPI',0x58:'PC',0x59:'MSIZE',0x5a:'GAS',0x5b:'JUMPDEST',0xf0:'CREATE',0xf1:'CALL',0xf2:'CALLCODE',0xf3:'RETURN',0xf4:'DELEGATECALL',0xf5:'CREATE2',0xfa:'STATICCALL',0xfd:'REVERT',0xfe:'INVALID',0xff:'SELFDESTRUCT'};
for(let i=0;i<32;i++){OPCODES[0x60+i]='PUSH'+(i+1)}
for(let i=0;i<16;i++){OPCODES[0x80+i]='DUP'+(i+1)}
for(let i=0;i<16;i++){OPCODES[0x90+i]='SWAP'+(i+1)}
for(let i=0;i<5;i++){OPCODES[0xa0+i]='LOG'+i}
let pc=0; let lines=[];
while(pc<hex.length/2){ let start=pc; let op=parseInt(hex.slice(pc*2,pc*2+2),16); let name=OPCODES[op]||('OP_'+op.toString(16)); let line=start.toString().padStart(4)+' '+name; if(name.startsWith('PUSH')){let n=op-0x5f; let data=hex.slice(pc*2+2, pc*2+2+n*2); line+=' 0x'+data; pc+=1+n;} else {pc+=1;} lines.push(line); }
const start=554,end=620; console.log(lines.filter(l=>{const pc=parseInt(l); return pc>=start && pc<=end;}).join('\\n'));
NODE" in /tmp/codex-fhdl2wda
succeeded in 0ms:
554 JUMPDEST
555 PUSH1 0x00
557 SLOAD
558 CALLER
559 PUSH1 0x01
561 PUSH1 0xa0
563 PUSH1 0x02
565 EXP
566 SUB
567 SWAP1
568 DUP2
569 AND
570 SWAP2
571 AND
572 EQ
573 PUSH2 0x0245
576 JUMPI
577 PUSH1 0x00
579 DUP1
580 REVERT
581 JUMPDEST
582 PUSH1 0x00
584 PUSH1 0x02
586 SLOAD
587 PUSH1 0xa0
589 PUSH1 0x02
591 EXP
592 SWAP1
593 DIV
594 PUSH1 0xff
596 AND
597 PUSH1 0x03
599 DUP2
600 GT
601 ISZERO
602 PUSH2 0x025f
605 JUMPI
606 INVALID
607 JUMPDEST
608 EQ
609 PUSH2 0x0269
612 JUMPI
613 PUSH1 0x00
615 DUP1
616 REVERT
617 JUMPDEST
618 PUSH1 0x02
620 DUP1
exec
/bin/bash -lc "node - <<'NODE'
const fs=require('fs');
const j=JSON.parse(fs.readFileSync('BYTECODE_BUNDLE.json','utf8'));
const hex=j.artifact.runtime_bytecode.full.slice(2);
const OPCODES={0x00:'STOP',0x01:'ADD',0x02:'MUL',0x03:'SUB',0x04:'DIV',0x05:'SDIV',0x06:'MOD',0x07:'SMOD',0x08:'ADDMOD',0x09:'MULMOD',0x0a:'EXP',0x0b:'SIGNEXTEND',0x10:'LT',0x11:'GT',0x12:'SLT',0x13:'SGT',0x14:'EQ',0x15:'ISZERO',0x16:'AND',0x17:'OR',0x18:'XOR',0x19:'NOT',0x1a:'BYTE',0x20:'SHA3',0x30:'ADDRESS',0x31:'BALANCE',0x32:'ORIGIN',0x33:'CALLER',0x34:'CALLVALUE',0x35:'CALLDATALOAD',0x36:'CALLDATASIZE',0x37:'CALLDATACOPY',0x38:'CODESIZE',0x39:'CODECOPY',0x3a:'GASPRICE',0x3b:'EXTCODESIZE',0x3c:'EXTCODECOPY',0x3d:'RETURNDATASIZE',0x3e:'RETURNDATACOPY',0x40:'BLOCKHASH',0x41:'COINBASE',0x42:'TIMESTAMP',0x43:'NUMBER',0x44:'DIFFICULTY',0x45:'GASLIMIT',0x46:'CHAINID',0x47:'SELFBALANCE',0x48:'BASEFEE',0x50:'POP',0x51:'MLOAD',0x52:'MSTORE',0x53:'MSTORE8',0x54:'SLOAD',0x55:'SSTORE',0x56:'JUMP',0x57:'JUMPI',0x58:'PC',0x59:'MSIZE',0x5a:'GAS',0x5b:'JUMPDEST',0xf0:'CREATE',0xf1:'CALL',0xf2:'CALLCODE',0xf3:'RETURN',0xf4:'DELEGATECALL',0xf5:'CREATE2',0xfa:'STATICCALL',0xfd:'REVERT',0xfe:'INVALID',0xff:'SELFDESTRUCT'};
for(let i=0;i<32;i++){OPCODES[0x60+i]='PUSH'+(i+1)}
for(let i=0;i<16;i++){OPCODES[0x80+i]='DUP'+(i+1)}
for(let i=0;i<16;i++){OPCODES[0x90+i]='SWAP'+(i+1)}
for(let i=0;i<5;i++){OPCODES[0xa0+i]='LOG'+i}
let pc=0; let lines=[];
while(pc<hex.length/2){ let start=pc; let op=parseInt(hex.slice(pc*2,pc*2+2),16); let name=OPCODES[op]||('OP_'+op.toString(16)); let line=start.toString().padStart(4)+' '+name; if(name.startsWith('PUSH')){let n=op-0x5f; let data=hex.slice(pc*2+2, pc*2+2+n*2); line+=' 0x'+data; pc+=1+n;} else {pc+=1;} lines.push(line); }
for (const [s,e] of [[260,281],[282,300],[301,319],[441,471],[472,522],[523,553],[726,863],[917,1134]]) {
console.log('---'+s+'-'+e+'---');
console.log(lines.filter(l=>{const pc=parseInt(l); return pc>=s && pc<=e;}).join('\\n'));
}
NODE" in /tmp/codex-fhdl2wda
succeeded in 0ms:
---260-281---
260 JUMPDEST
261 CALLVALUE
262 ISZERO
263 PUSH2 0x010f
266 JUMPI
267 PUSH1 0x00
269 DUP1
270 REVERT
271 JUMPDEST
272 PUSH2 0x00d1
275 PUSH1 0x04
277 CALLDATALOAD
278 PUSH2 0x02d6
281 JUMP
---282-300---
282 JUMPDEST
283 CALLVALUE
284 ISZERO
285 PUSH2 0x0125
288 JUMPI
289 PUSH1 0x00
291 DUP1
292 REVERT
293 JUMPDEST
294 PUSH2 0x00d1
297 PUSH2 0x0395
300 JUMP
---301-319---
301 JUMPDEST
302 CALLVALUE
303 ISZERO
304 PUSH2 0x0138
307 JUMPI
308 PUSH1 0x00
310 DUP1
311 REVERT
312 JUMPDEST
313 PUSH2 0x0140
316 PUSH2 0x046f
319 JUMP
---441-471---
441 JUMPDEST
442 CALLVALUE
443 ISZERO
444 PUSH2 0x01c4
447 JUMPI
448 PUSH1 0x00
450 DUP1
451 REVERT
452 JUMPDEST
453 PUSH2 0x00f2
456 PUSH1 0x01
458 PUSH1 0xa0
460 PUSH1 0x02
462 EXP
463 SUB
464 PUSH1 0x04
466 CALLDATALOAD
467 AND
468 PUSH2 0x053f
471 JUMP
---472-522---
472 JUMPDEST
473 CALLVALUE
474 ISZERO
475 PUSH2 0x01e3
478 JUMPI
479 PUSH1 0x00
481 DUP1
482 REVERT
483 JUMPDEST
484 PUSH2 0x00d1
487 PUSH1 0x01
489 PUSH1 0xa0
491 PUSH1 0x02
493 EXP
494 SUB
495 PUSH1 0x04
497 CALLDATALOAD
498 AND
499 PUSH2 0x0551
502 JUMP
503 JUMPDEST
504 PUSH2 0x00d1
507 PUSH1 0x01
509 PUSH1 0xa0
511 PUSH1 0x02
513 EXP
514 SUB
515 PUSH1 0x04
517 CALLDATALOAD
518 AND
519 PUSH2 0x05ec
522 JUMP
---523-553---
523 JUMPDEST
524 CALLVALUE
525 ISZERO
526 PUSH2 0x0216
529 JUMPI
530 PUSH1 0x00
532 DUP1
533 REVERT
534 JUMPDEST
535 PUSH2 0x00d1
538 PUSH1 0x01
540 PUSH1 0xa0
542 PUSH1 0x02
544 EXP
545 SUB
546 PUSH1 0x04
548 CALLDATALOAD
549 AND
550 PUSH2 0x06a8
553 JUMP
---726-863---
726 JUMPDEST
727 PUSH1 0x00
729 SLOAD
730 CALLER
731 PUSH1 0x01
733 PUSH1 0xa0
735 PUSH1 0x02
737 EXP
738 SUB
739 SWAP1
740 DUP2
741 AND
742 SWAP2
743 AND
744 EQ
745 PUSH2 0x02f1
748 JUMPI
749 PUSH1 0x00
751 DUP1
752 REVERT
753 JUMPDEST
754 PUSH1 0x01
756 PUSH1 0x02
758 SLOAD
759 PUSH1 0xa0
761 PUSH1 0x02
763 EXP
764 SWAP1
765 DIV
766 PUSH1 0xff
768 AND
769 PUSH1 0x03
771 DUP2
772 GT
773 ISZERO
774 PUSH2 0x030b
777 JUMPI
778 INVALID
779 JUMPDEST
780 EQ
781 PUSH2 0x0315
784 JUMPI
785 PUSH1 0x00
787 DUP1
788 REVERT
789 JUMPDEST
790 PUSH1 0x01
792 PUSH1 0xa0
794 PUSH1 0x02
796 EXP
797 SUB
798 ADDRESS
799 AND
800 BALANCE
801 DUP2
802 GT
803 ISZERO
804 PUSH2 0x032c
807 JUMPI
808 PUSH1 0x00
810 DUP1
811 REVERT
812 JUMPDEST
813 PUSH1 0x02
815 SLOAD
816 PUSH1 0x01
818 PUSH1 0xa0
820 PUSH1 0x02
822 EXP
823 SUB
824 AND
825 DUP2
826 ISZERO
827 PUSH2 0x08fc
830 MUL
831 DUP3
832 PUSH1 0x40
834 MLOAD
835 PUSH1 0x00
837 PUSH1 0x40
839 MLOAD
840 DUP1
841 DUP4
842 SUB
843 DUP2
844 DUP6
845 DUP9
846 DUP9
847 CALL
848 SWAP4
849 POP
850 POP
851 POP
852 POP
853 ISZERO
854 ISZERO
855 PUSH2 0x035f
858 JUMPI
859 PUSH1 0x00
861 DUP1
862 REVERT
863 JUMPDEST
---917-1134---
917 JUMPDEST
918 PUSH1 0x00
920 SLOAD
921 CALLER
922 PUSH1 0x01
924 PUSH1 0xa0
926 PUSH1 0x02
928 EXP
929 SUB
930 SWAP1
931 DUP2
932 AND
933 SWAP2
934 AND
935 EQ
936 PUSH2 0x03b0
939 JUMPI
940 PUSH1 0x00
942 DUP1
943 REVERT
944 JUMPDEST
945 PUSH1 0x02
947 DUP1
948 SLOAD
949 PUSH1 0xa0
951 PUSH1 0x02
953 EXP
954 SWAP1
955 DIV
956 PUSH1 0xff
958 AND
959 PUSH1 0x03
961 DUP2
962 GT
963 ISZERO
964 PUSH2 0x03c9
967 JUMPI
968 INVALID
969 JUMPDEST
970 LT
971 PUSH2 0x03d3
974 JUMPI
975 PUSH1 0x00
977 DUP1
978 REVERT
979 JUMPDEST
980 PUSH1 0x02
982 DUP1
983 SLOAD
984 PUSH21 0xff0000000000000000000000000000000000000000
1006 NOT
1007 AND
1008 PUSH21 0x030000000000000000000000000000000000000000
1030 OR
1031 SWAP1
1032 SSTORE
1033 PUSH32 0x1cdde67b72a90f19919ac732a437ac2f7a10fc128d28c2a6e525d89ce5cd9d3a
1066 PUSH1 0x40
1068 MLOAD
1069 PUSH1 0x40
1071 MLOAD
1072 DUP1
1073 SWAP2
1074 SUB
1075 SWAP1
1076 LOG1
1077 PUSH1 0x02
1079 SLOAD
1080 PUSH1 0x01
1082 PUSH1 0xa0
1084 PUSH1 0x02
1086 EXP
1087 SUB
1088 SWAP1
1089 DUP2
1090 AND
1091 SWAP1
1092 ADDRESS
1093 AND
1094 BALANCE
1095 DUP1
1096 ISZERO
1097 PUSH2 0x08fc
1100 MUL
1101 SWAP1
1102 PUSH1 0x40
1104 MLOAD
1105 PUSH1 0x00
1107 PUSH1 0x40
1109 MLOAD
1110 DUP1
1111 DUP4
1112 SUB
1113 DUP2
1114 DUP6
1115 DUP9
1116 DUP9
1117 CALL
1118 SWAP4
1119 POP
1120 POP
1121 POP
1122 POP
1123 ISZERO
1124 ISZERO
1125 PUSH2 0x046d
1128 JUMPI
1129 PUSH1 0x00
1131 DUP1
1132 REVERT
1133 JUMPDEST
1134 JUMP
codex
{"no_findings":false,"summary":"Bytecode shows an owner-controlled escrow/disbursement state machine with no proxy/delegatecall logic. The meaningful risks are accounting/liveness issues around an irreversible state byte in slot 2 and three ETH-sending CALL sites that use a hardcoded 2300-gas stipend. Selector names beyond standard ones are inferred from behavior and may be inaccurate.","findings":[{"severity":"medium","category":"other","title":"Irreversible state transitions can strand credited balances while backing ETH is still sweepable","exploit_scenario":"A credited recipient appears to be tracked in a keccak-derived mapping. The owner can add credit for an address through selector 0xf340fa01 while the state byte is less than 2, but the only visible path that pays that mapping out is selector 0xfa89401a, which is gated on state == 0. The contract also has irreversible owner-only transitions from state 0 to 1/2 and from state < 2 to 3. If the owner moves out of state 0 before clearing all credits, those balances become unpayable on-chain, while ETH can still be withdrawn or swept to the beneficiary path. Because the payout path is owner-only, credited users have no self-help withdrawal route.","recommendation":"Enforce that all outstanding mapped liabilities are zero before any transition out of the payout state, or add a user-claim path that is not owner-gated. If sweeping is intended, track and settle liabilities explicitly before allowing beneficiary withdrawals.","evidence":"Selector 0xf340fa01 reaches pc 1578-1649, where a keccak-derived slot is read and then increased by CALLVALUE. Selector 0xfa89401a reaches pc 1741-1808/1834, where the same style of keccak-derived slot is read, zeroed, and then paid out, but the function first checks the state byte extracted from slot 2 and compares it against 0 at pc 1732. Owner-only selectors 0x04b5802c and 0x8c52dc41 write new state values 1 and 2 at pcs 617-698 and 1213-1311, and selector 0x43d726d6 writes state 3 and sweeps balance at pcs 979-1134. No bytecode path back to state 0 is visible.","locations":["selector:0xf340fa01","selector:0xfa89401a","selector:0x04b5802c","selector:0x8c52dc41","selector:0x43d726d6"]},{"severity":"low","category":"other","title":"ETH payouts use a hardcoded 2300-gas CALL, which can brick payouts to contract recipients","exploit_scenario":"If the beneficiary or a credited recipient is a smart contract wallet, proxy, or multisig whose receive/fallback needs more than 2300 gas, the ETH transfer reverts. That can block owner withdrawals/sweeps and, more importantly, can leave a credited address unable to receive its mapped payout through the only visible disbursement path.","recommendation":"Replace the transfer-like CALL pattern with a regular call that forwards enough gas and checks success, or provide an alternate pull-based withdrawal mechanism. If only EOAs are intended, enforce that assumption explicitly before crediting or setting payout recipients.","evidence":"All three ETH-sending paths build a gas stipend from PUSH2 0x08fc before CALL: pc 827-847, pc 1097-1117, and pc 1814-1834. Each call site reverts on failure at pc 859, pc 1129, and pc 1846 respectively. Because returndata checking is not explicit in the artifact, the key observable fact is the 2300-gas stipend plus revert-on-failure behavior.","locations":["pc:0x34f","pc:0x45d","pc:0x72a","selector:0x2e1a7d4d","selector:0x43d726d6","selector:0xfa89401a"]}]}
tokens used
171,857
{
"codex": {
"ran_at": "2026-04-04T03:37:52.777603+00:00",
"returncode": 0
},
"project": {
"mode": "bytecode",
"bytecode_length": 3964,
"bytecode_truncated": false,
"capability_graph_present": true,
"analysis_artifact_present": true
},
"summary": "Bytecode shows an owner-controlled escrow/disbursement state machine with no proxy/delegatecall logic. The meaningful risks are accounting/liveness issues around an irreversible state byte in slot 2 and three ETH-sending CALL sites that use a hardcoded 2300-gas stipend. Selector names beyond standard ones are inferred from behavior and may be inaccurate.",
"raw_final": {
"summary": "Bytecode shows an owner-controlled escrow/disbursement state machine with no proxy/delegatecall logic. The meaningful risks are accounting/liveness issues around an irreversible state byte in slot 2 and three ETH-sending CALL sites that use a hardcoded 2300-gas stipend. Selector names beyond standard ones are inferred from behavior and may be inaccurate.",
"findings": [
{
"title": "Irreversible state transitions can strand credited balances while backing ETH is still sweepable",
"category": "other",
"evidence": "Selector 0xf340fa01 reaches pc 1578-1649, where a keccak-derived slot is read and then increased by CALLVALUE. Selector 0xfa89401a reaches pc 1741-1808/1834, where the same style of keccak-derived slot is read, zeroed, and then paid out, but the function first checks the state byte extracted from slot 2 and compares it against 0 at pc 1732. Owner-only selectors 0x04b5802c and 0x8c52dc41 write new state values 1 and 2 at pcs 617-698 and 1213-1311, and selector 0x43d726d6 writes state 3 and sweeps balance at pcs 979-1134. No bytecode path back to state 0 is visible.",
"severity": "medium",
"locations": [
"selector:0xf340fa01",
"selector:0xfa89401a",
"selector:0x04b5802c",
"selector:0x8c52dc41",
"selector:0x43d726d6"
],
"recommendation": "Enforce that all outstanding mapped liabilities are zero before any transition out of the payout state, or add a user-claim path that is not owner-gated. If sweeping is intended, track and settle liabilities explicitly before allowing beneficiary withdrawals.",
"exploit_scenario": "A credited recipient appears to be tracked in a keccak-derived mapping. The owner can add credit for an address through selector 0xf340fa01 while the state byte is less than 2, but the only visible path that pays that mapping out is selector 0xfa89401a, which is gated on state == 0. The contract also has irreversible owner-only transitions from state 0 to 1/2 and from state < 2 to 3. If the owner moves out of state 0 before clearing all credits, those balances become unpayable on-chain, while ETH can still be withdrawn or swept to the beneficiary path. Because the payout path is owner-only, credited users have no self-help withdrawal route."
},
{
"title": "ETH payouts use a hardcoded 2300-gas CALL, which can brick payouts to contract recipients",
"category": "other",
"evidence": "All three ETH-sending paths build a gas stipend from PUSH2 0x08fc before CALL: pc 827-847, pc 1097-1117, and pc 1814-1834. Each call site reverts on failure at pc 859, pc 1129, and pc 1846 respectively. Because returndata checking is not explicit in the artifact, the key observable fact is the 2300-gas stipend plus revert-on-failure behavior.",
"severity": "low",
"locations": [
"pc:0x34f",
"pc:0x45d",
"pc:0x72a",
"selector:0x2e1a7d4d",
"selector:0x43d726d6",
"selector:0xfa89401a"
],
"recommendation": "Replace the transfer-like CALL pattern with a regular call that forwards enough gas and checks success, or provide an alternate pull-based withdrawal mechanism. If only EOAs are intended, enforce that assumption explicitly before crediting or setting payout recipients.",
"exploit_scenario": "If the beneficiary or a credited recipient is a smart contract wallet, proxy, or multisig whose receive/fallback needs more than 2300 gas, the ETH transfer reverts. That can block owner withdrawals/sweeps and, more importantly, can leave a credited address unable to receive its mapped payout through the only visible disbursement path."
}
],
"no_findings": false
},
"no_findings": false,
"schema_version": 1
}
00000000: PUSH1 0x60 00000002: PUSH1 0x40 00000004: MSTORE 00000005: PUSH1 0x04 00000007: CALLDATASIZE 00000008: LT 00000009: PUSH2 0x00b9 0000000c: JUMPI 0000000d: PUSH4 0xffffffff 00000012: PUSH29 0x0100000000000000000000000000000000000000000000000000000000 00000030: PUSH1 0x00 00000032: CALLDATALOAD 00000033: DIV 00000034: AND 00000035: PUSH4 0x04b5802c 0000003a: DUP2 0000003b: EQ 0000003c: PUSH2 0x00be 0000003f: JUMPI 00000040: DUP1 00000041: PUSH4 0x23e3fbd5 00000046: EQ 00000047: PUSH2 0x00d3 0000004a: JUMPI 0000004b: DUP1 0000004c: PUSH4 0x2e1a7d4d 00000051: EQ 00000052: PUSH2 0x0104 00000055: JUMPI 00000056: DUP1 00000057: PUSH4 0x43d726d6 0000005c: EQ 0000005d: PUSH2 0x011a 00000060: JUMPI 00000061: DUP1 00000062: PUSH4 0x521eb273 00000067: EQ 00000068: PUSH2 0x012d 0000006b: JUMPI 0000006c: DUP1 0000006d: PUSH4 0x8c52dc41 00000072: EQ 00000073: PUSH2 0x015c 00000076: JUMPI 00000077: DUP1 00000078: PUSH4 0x8da5cb5b 0000007d: EQ 0000007e: PUSH2 0x016f 00000081: JUMPI 00000082: DUP1 00000083: PUSH4 0xc19d93fb 00000088: EQ 00000089: PUSH2 0x0182 0000008c: JUMPI 0000008d: DUP1 0000008e: PUSH4 0xe63b297d 00000093: EQ 00000094: PUSH2 0x01b9 00000097: JUMPI 00000098: DUP1 00000099: PUSH4 0xf2fde38b 0000009e: EQ 0000009f: PUSH2 0x01d8 000000a2: JUMPI 000000a3: DUP1 000000a4: PUSH4 0xf340fa01 000000a9: EQ 000000aa: PUSH2 0x01f7 000000ad: JUMPI 000000ae: DUP1 000000af: PUSH4 0xfa89401a 000000b4: EQ 000000b5: PUSH2 0x020b 000000b8: JUMPI 000000b9: JUMPDEST 000000ba: PUSH1 0x00 000000bc: DUP1 000000bd: REVERT 000000be: JUMPDEST 000000bf: CALLVALUE 000000c0: ISZERO 000000c1: PUSH2 0x00c9 000000c4: JUMPI 000000c5: PUSH1 0x00 000000c7: DUP1 000000c8: REVERT 000000c9: JUMPDEST 000000ca: PUSH2 0x00d1 000000cd: PUSH2 0x022a 000000d0: JUMP 000000d1: JUMPDEST 000000d2: STOP 000000d3: JUMPDEST 000000d4: CALLVALUE 000000d5: ISZERO 000000d6: PUSH2 0x00de 000000d9: JUMPI 000000da: PUSH1 0x00 000000dc: DUP1 000000dd: REVERT 000000de: JUMPDEST 000000df: PUSH2 0x00f2 000000e2: PUSH1 0x01 000000e4: PUSH1 0xa0 000000e6: PUSH1 0x02 000000e8: EXP 000000e9: SUB 000000ea: PUSH1 0x04 000000ec: CALLDATALOAD 000000ed: AND 000000ee: PUSH2 0x02bb 000000f1: JUMP 000000f2: JUMPDEST 000000f3: PUSH1 0x40 000000f5: MLOAD 000000f6: SWAP1 000000f7: DUP2 000000f8: MSTORE 000000f9: PUSH1 0x20 000000fb: ADD 000000fc: PUSH1 0x40 000000fe: MLOAD 000000ff: DUP1 00000100: SWAP2 00000101: SUB 00000102: SWAP1 00000103: RETURN 00000104: JUMPDEST 00000105: CALLVALUE 00000106: ISZERO 00000107: PUSH2 0x010f 0000010a: JUMPI 0000010b: PUSH1 0x00 0000010d: DUP1 0000010e: REVERT 0000010f: JUMPDEST 00000110: PUSH2 0x00d1 00000113: PUSH1 0x04 00000115: CALLDATALOAD 00000116: PUSH2 0x02d6 00000119: JUMP 0000011a: JUMPDEST 0000011b: CALLVALUE 0000011c: ISZERO 0000011d: PUSH2 0x0125 00000120: JUMPI 00000121: PUSH1 0x00 00000123: DUP1 00000124: REVERT 00000125: JUMPDEST 00000126: PUSH2 0x00d1 00000129: PUSH2 0x0395 0000012c: JUMP 0000012d: JUMPDEST 0000012e: CALLVALUE 0000012f: ISZERO 00000130: PUSH2 0x0138 00000133: JUMPI 00000134: PUSH1 0x00 00000136: DUP1 00000137: REVERT 00000138: JUMPDEST 00000139: PUSH2 0x0140 0000013c: PUSH2 0x046f 0000013f: JUMP 00000140: JUMPDEST 00000141: PUSH1 0x40 00000143: MLOAD 00000144: PUSH1 0x01 00000146: PUSH1 0xa0 00000148: PUSH1 0x02 0000014a: EXP 0000014b: SUB 0000014c: SWAP1 0000014d: SWAP2 0000014e: AND 0000014f: DUP2 00000150: MSTORE 00000151: PUSH1 0x20 00000153: ADD 00000154: PUSH1 0x40 00000156: MLOAD 00000157: DUP1 00000158: SWAP2 00000159: SUB 0000015a: SWAP1 0000015b: RETURN 0000015c: JUMPDEST 0000015d: CALLVALUE 0000015e: ISZERO 0000015f: PUSH2 0x0167 00000162: JUMPI 00000163: PUSH1 0x00 00000165: DUP1 00000166: REVERT 00000167: JUMPDEST 00000168: PUSH2 0x00d1 0000016b: PUSH2 0x047e 0000016e: JUMP 0000016f: JUMPDEST 00000170: CALLVALUE 00000171: ISZERO 00000172: PUSH2 0x017a 00000175: JUMPI 00000176: PUSH1 0x00 00000178: DUP1 00000179: REVERT 0000017a: JUMPDEST 0000017b: PUSH2 0x0140 0000017e: PUSH2 0x0520 00000181: JUMP 00000182: JUMPDEST 00000183: CALLVALUE 00000184: ISZERO 00000185: PUSH2 0x018d 00000188: JUMPI 00000189: PUSH1 0x00 0000018b: DUP1 0000018c: REVERT 0000018d: JUMPDEST 0000018e: PUSH2 0x0195 00000191: PUSH2 0x052f 00000194: JUMP 00000195: JUMPDEST 00000196: PUSH1 0x40 00000198: MLOAD 00000199: DUP1 0000019a: DUP3 0000019b: PUSH1 0x03 0000019d: DUP2 0000019e: GT 0000019f: ISZERO 000001a0: PUSH2 0x01a5 000001a3: JUMPI 000001a4: INVALID 000001a5: JUMPDEST 000001a6: PUSH1 0xff 000001a8: AND 000001a9: DUP2 000001aa: MSTORE 000001ab: PUSH1 0x20 000001ad: ADD 000001ae: SWAP2 000001af: POP 000001b0: POP 000001b1: PUSH1 0x40 000001b3: MLOAD 000001b4: DUP1 000001b5: SWAP2 000001b6: SUB 000001b7: SWAP1 000001b8: RETURN 000001b9: JUMPDEST 000001ba: CALLVALUE 000001bb: ISZERO 000001bc: PUSH2 0x01c4 000001bf: JUMPI 000001c0: PUSH1 0x00 000001c2: DUP1 000001c3: REVERT 000001c4: JUMPDEST 000001c5: PUSH2 0x00f2 000001c8: PUSH1 0x01 000001ca: PUSH1 0xa0 000001cc: PUSH1 0x02 000001ce: EXP 000001cf: SUB 000001d0: PUSH1 0x04 000001d2: CALLDATALOAD 000001d3: AND 000001d4: PUSH2 0x053f 000001d7: JUMP 000001d8: JUMPDEST 000001d9: CALLVALUE 000001da: ISZERO 000001db: PUSH2 0x01e3 000001de: JUMPI 000001df: PUSH1 0x00 000001e1: DUP1 000001e2: REVERT 000001e3: JUMPDEST 000001e4: PUSH2 0x00d1 000001e7: PUSH1 0x01 000001e9: PUSH1 0xa0 000001eb: PUSH1 0x02 000001ed: EXP 000001ee: SUB 000001ef: PUSH1 0x04 000001f1: CALLDATALOAD 000001f2: AND 000001f3: PUSH2 0x0551 000001f6: JUMP 000001f7: JUMPDEST 000001f8: PUSH2 0x00d1 000001fb: PUSH1 0x01 000001fd: PUSH1 0xa0 000001ff: PUSH1 0x02 00000201: EXP 00000202: SUB 00000203: PUSH1 0x04 00000205: CALLDATALOAD 00000206: AND 00000207: PUSH2 0x05ec 0000020a: JUMP 0000020b: JUMPDEST 0000020c: CALLVALUE 0000020d: ISZERO 0000020e: PUSH2 0x0216 00000211: JUMPI 00000212: PUSH1 0x00 00000214: DUP1 00000215: REVERT 00000216: JUMPDEST 00000217: PUSH2 0x00d1 0000021a: PUSH1 0x01 0000021c: PUSH1 0xa0 0000021e: PUSH1 0x02 00000220: EXP 00000221: SUB 00000222: PUSH1 0x04 00000224: CALLDATALOAD 00000225: AND 00000226: PUSH2 0x06a8 00000229: JUMP 0000022a: JUMPDEST 0000022b: PUSH1 0x00 0000022d: SLOAD 0000022e: CALLER 0000022f: PUSH1 0x01 00000231: PUSH1 0xa0 00000233: PUSH1 0x02 00000235: EXP 00000236: SUB 00000237: SWAP1 00000238: DUP2 00000239: AND 0000023a: SWAP2 0000023b: AND 0000023c: EQ 0000023d: PUSH2 0x0245 00000240: JUMPI 00000241: PUSH1 0x00 00000243: DUP1 00000244: REVERT 00000245: JUMPDEST 00000246: PUSH1 0x00 00000248: PUSH1 0x02 0000024a: SLOAD 0000024b: PUSH1 0xa0 0000024d: PUSH1 0x02 0000024f: EXP 00000250: SWAP1 00000251: DIV 00000252: PUSH1 0xff 00000254: AND 00000255: PUSH1 0x03 00000257: DUP2 00000258: GT 00000259: ISZERO 0000025a: PUSH2 0x025f 0000025d: JUMPI 0000025e: INVALID 0000025f: JUMPDEST 00000260: EQ 00000261: PUSH2 0x0269 00000264: JUMPI 00000265: PUSH1 0x00 00000267: DUP1 00000268: REVERT 00000269: JUMPDEST 0000026a: PUSH1 0x02 0000026c: DUP1 0000026d: SLOAD 0000026e: PUSH21 0xff0000000000000000000000000000000000000000 00000284: NOT 00000285: AND 00000286: PUSH1 0xa0 00000288: PUSH1 0x02 0000028a: EXP 0000028b: OR 0000028c: SWAP1 0000028d: SSTORE 0000028e: PUSH32 0x1c0b311fb23e509198d3f069f85c72b08139f11dad18ebbc1a9d4d2791072d12 000002af: PUSH1 0x40 000002b1: MLOAD 000002b2: PUSH1 0x40 000002b4: MLOAD 000002b5: DUP1 000002b6: SWAP2 000002b7: SUB 000002b8: SWAP1 000002b9: LOG1 000002ba: JUMP 000002bb: JUMPDEST 000002bc: PUSH1 0x01 000002be: PUSH1 0xa0 000002c0: PUSH1 0x02 000002c2: EXP 000002c3: SUB 000002c4: AND 000002c5: PUSH1 0x00 000002c7: SWAP1 000002c8: DUP2 000002c9: MSTORE 000002ca: PUSH1 0x01 000002cc: PUSH1 0x20 000002ce: MSTORE 000002cf: PUSH1 0x40 000002d1: SWAP1 000002d2: KECCAK256 000002d3: SLOAD 000002d4: SWAP1 000002d5: JUMP 000002d6: JUMPDEST 000002d7: PUSH1 0x00 000002d9: SLOAD 000002da: CALLER 000002db: PUSH1 0x01 000002dd: PUSH1 0xa0 000002df: PUSH1 0x02 000002e1: EXP 000002e2: SUB 000002e3: SWAP1 000002e4: DUP2 000002e5: AND 000002e6: SWAP2 000002e7: AND 000002e8: EQ 000002e9: PUSH2 0x02f1 000002ec: JUMPI 000002ed: PUSH1 0x00 000002ef: DUP1 000002f0: REVERT 000002f1: JUMPDEST 000002f2: PUSH1 0x01 000002f4: PUSH1 0x02 000002f6: SLOAD 000002f7: PUSH1 0xa0 000002f9: PUSH1 0x02 000002fb: EXP 000002fc: SWAP1 000002fd: DIV 000002fe: PUSH1 0xff 00000300: AND 00000301: PUSH1 0x03 00000303: DUP2 00000304: GT 00000305: ISZERO 00000306: PUSH2 0x030b 00000309: JUMPI 0000030a: INVALID 0000030b: JUMPDEST 0000030c: EQ 0000030d: PUSH2 0x0315 00000310: JUMPI 00000311: PUSH1 0x00 00000313: DUP1 00000314: REVERT 00000315: JUMPDEST 00000316: PUSH1 0x01 00000318: PUSH1 0xa0 0000031a: PUSH1 0x02 0000031c: EXP 0000031d: SUB 0000031e: ADDRESS 0000031f: AND 00000320: BALANCE 00000321: DUP2 00000322: GT 00000323: ISZERO 00000324: PUSH2 0x032c 00000327: JUMPI 00000328: PUSH1 0x00 0000032a: DUP1 0000032b: REVERT 0000032c: JUMPDEST 0000032d: PUSH1 0x02 0000032f: SLOAD 00000330: PUSH1 0x01 00000332: PUSH1 0xa0 00000334: PUSH1 0x02 00000336: EXP 00000337: SUB 00000338: AND 00000339: DUP2 0000033a: ISZERO 0000033b: PUSH2 0x08fc 0000033e: MUL 0000033f: DUP3 00000340: PUSH1 0x40 00000342: MLOAD 00000343: PUSH1 0x00 00000345: PUSH1 0x40 00000347: MLOAD 00000348: DUP1 00000349: DUP4 0000034a: SUB 0000034b: DUP2 0000034c: DUP6 0000034d: DUP9 0000034e: DUP9 0000034f: CALL 00000350: SWAP4 00000351: POP 00000352: POP 00000353: POP 00000354: POP 00000355: ISZERO 00000356: ISZERO 00000357: PUSH2 0x035f 0000035a: JUMPI 0000035b: PUSH1 0x00 0000035d: DUP1 0000035e: REVERT 0000035f: JUMPDEST 00000360: PUSH32 0x11e9d9f7a772129e26cb0560945658c96b41c42ac6712d233e20c894bfcd00fd 00000381: DUP2 00000382: PUSH1 0x40 00000384: MLOAD 00000385: SWAP1 00000386: DUP2 00000387: MSTORE 00000388: PUSH1 0x20 0000038a: ADD 0000038b: PUSH1 0x40 0000038d: MLOAD 0000038e: DUP1 0000038f: SWAP2 00000390: SUB 00000391: SWAP1 00000392: LOG1 00000393: POP 00000394: JUMP 00000395: JUMPDEST 00000396: PUSH1 0x00 00000398: SLOAD 00000399: CALLER 0000039a: PUSH1 0x01 0000039c: PUSH1 0xa0 0000039e: PUSH1 0x02 000003a0: EXP 000003a1: SUB 000003a2: SWAP1 000003a3: DUP2 000003a4: AND 000003a5: SWAP2 000003a6: AND 000003a7: EQ 000003a8: PUSH2 0x03b0 000003ab: JUMPI 000003ac: PUSH1 0x00 000003ae: DUP1 000003af: REVERT 000003b0: JUMPDEST 000003b1: PUSH1 0x02 000003b3: DUP1 000003b4: SLOAD 000003b5: PUSH1 0xa0 000003b7: PUSH1 0x02 000003b9: EXP 000003ba: SWAP1 000003bb: DIV 000003bc: PUSH1 0xff 000003be: AND 000003bf: PUSH1 0x03 000003c1: DUP2 000003c2: GT 000003c3: ISZERO 000003c4: PUSH2 0x03c9 000003c7: JUMPI 000003c8: INVALID 000003c9: JUMPDEST 000003ca: LT 000003cb: PUSH2 0x03d3 000003ce: JUMPI 000003cf: PUSH1 0x00 000003d1: DUP1 000003d2: REVERT 000003d3: JUMPDEST 000003d4: PUSH1 0x02 000003d6: DUP1 000003d7: SLOAD 000003d8: PUSH21 0xff0000000000000000000000000000000000000000 000003ee: NOT 000003ef: AND 000003f0: PUSH21 0x030000000000000000000000000000000000000000 00000406: OR 00000407: SWAP1 00000408: SSTORE 00000409: PUSH32 0x1cdde67b72a90f19919ac732a437ac2f7a10fc128d28c2a6e525d89ce5cd9d3a 0000042a: PUSH1 0x40 0000042c: MLOAD 0000042d: PUSH1 0x40 0000042f: MLOAD 00000430: DUP1 00000431: SWAP2 00000432: SUB 00000433: SWAP1 00000434: LOG1 00000435: PUSH1 0x02 00000437: SLOAD 00000438: PUSH1 0x01 0000043a: PUSH1 0xa0 0000043c: PUSH1 0x02 0000043e: EXP 0000043f: SUB 00000440: SWAP1 00000441: DUP2 00000442: AND 00000443: SWAP1 00000444: ADDRESS 00000445: AND 00000446: BALANCE 00000447: DUP1 00000448: ISZERO 00000449: PUSH2 0x08fc 0000044c: MUL 0000044d: SWAP1 0000044e: PUSH1 0x40 00000450: MLOAD 00000451: PUSH1 0x00 00000453: PUSH1 0x40 00000455: MLOAD 00000456: DUP1 00000457: DUP4 00000458: SUB 00000459: DUP2 0000045a: DUP6 0000045b: DUP9 0000045c: DUP9 0000045d: CALL 0000045e: SWAP4 0000045f: POP 00000460: POP 00000461: POP 00000462: POP 00000463: ISZERO 00000464: ISZERO 00000465: PUSH2 0x046d 00000468: JUMPI 00000469: PUSH1 0x00 0000046b: DUP1 0000046c: REVERT 0000046d: JUMPDEST 0000046e: JUMP 0000046f: JUMPDEST 00000470: PUSH1 0x02 00000472: SLOAD 00000473: PUSH1 0x01 00000475: PUSH1 0xa0 00000477: PUSH1 0x02 00000479: EXP 0000047a: SUB 0000047b: AND 0000047c: DUP2 0000047d: JUMP 0000047e: JUMPDEST 0000047f: PUSH1 0x00 00000481: SLOAD 00000482: CALLER 00000483: PUSH1 0x01 00000485: PUSH1 0xa0 00000487: PUSH1 0x02 00000489: EXP 0000048a: SUB 0000048b: SWAP1 0000048c: DUP2 0000048d: AND 0000048e: SWAP2 0000048f: AND 00000490: EQ 00000491: PUSH2 0x0499 00000494: JUMPI 00000495: PUSH1 0x00 00000497: DUP1 00000498: REVERT 00000499: JUMPDEST 0000049a: PUSH1 0x00 0000049c: PUSH1 0x02 0000049e: SLOAD 0000049f: PUSH1 0xa0 000004a1: PUSH1 0x02 000004a3: EXP 000004a4: SWAP1 000004a5: DIV 000004a6: PUSH1 0xff 000004a8: AND 000004a9: PUSH1 0x03 000004ab: DUP2 000004ac: GT 000004ad: ISZERO 000004ae: PUSH2 0x04b3 000004b1: JUMPI 000004b2: INVALID 000004b3: JUMPDEST 000004b4: EQ 000004b5: PUSH2 0x04bd 000004b8: JUMPI 000004b9: PUSH1 0x00 000004bb: DUP1 000004bc: REVERT 000004bd: JUMPDEST 000004be: PUSH1 0x02 000004c0: DUP1 000004c1: SLOAD 000004c2: PUSH21 0xff0000000000000000000000000000000000000000 000004d8: NOT 000004d9: AND 000004da: PUSH21 0x020000000000000000000000000000000000000000 000004f0: OR 000004f1: SWAP1 000004f2: SSTORE 000004f3: PUSH32 0x599d8e5a83cffb867d051598c4d70e805d59802d8081c1c7d6dffc5b6aca2b89 00000514: PUSH1 0x40 00000516: MLOAD 00000517: PUSH1 0x40 00000519: MLOAD 0000051a: DUP1 0000051b: SWAP2 0000051c: SUB 0000051d: SWAP1 0000051e: LOG1 0000051f: JUMP 00000520: JUMPDEST 00000521: PUSH1 0x00 00000523: SLOAD 00000524: PUSH1 0x01 00000526: PUSH1 0xa0 00000528: PUSH1 0x02 0000052a: EXP 0000052b: SUB 0000052c: AND 0000052d: DUP2 0000052e: JUMP 0000052f: JUMPDEST 00000530: PUSH1 0x02 00000532: SLOAD 00000533: PUSH1 0xa0 00000535: PUSH1 0x02 00000537: EXP 00000538: SWAP1 00000539: DIV 0000053a: PUSH1 0xff 0000053c: AND 0000053d: DUP2 0000053e: JUMP 0000053f: JUMPDEST 00000540: PUSH1 0x01 00000542: PUSH1 0x20 00000544: MSTORE 00000545: PUSH1 0x00 00000547: SWAP1 00000548: DUP2 00000549: MSTORE 0000054a: PUSH1 0x40 0000054c: SWAP1 0000054d: KECCAK256 0000054e: SLOAD 0000054f: DUP2 00000550: JUMP 00000551: JUMPDEST 00000552: PUSH1 0x00 00000554: SLOAD 00000555: CALLER 00000556: PUSH1 0x01 00000558: PUSH1 0xa0 0000055a: PUSH1 0x02 0000055c: EXP 0000055d: SUB 0000055e: SWAP1 0000055f: DUP2 00000560: AND 00000561: SWAP2 00000562: AND 00000563: EQ 00000564: PUSH2 0x056c 00000567: JUMPI 00000568: PUSH1 0x00 0000056a: DUP1 0000056b: REVERT 0000056c: JUMPDEST 0000056d: PUSH1 0x01 0000056f: PUSH1 0xa0 00000571: PUSH1 0x02 00000573: EXP 00000574: SUB 00000575: DUP2 00000576: AND 00000577: ISZERO 00000578: ISZERO 00000579: PUSH2 0x0581 0000057c: JUMPI 0000057d: PUSH1 0x00 0000057f: DUP1 00000580: REVERT 00000581: JUMPDEST 00000582: PUSH1 0x00 00000584: SLOAD 00000585: PUSH1 0x01 00000587: PUSH1 0xa0 00000589: PUSH1 0x02 0000058b: EXP 0000058c: SUB 0000058d: DUP1 0000058e: DUP4 0000058f: AND 00000590: SWAP2 00000591: AND 00000592: PUSH32 0x8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0 000005b3: PUSH1 0x40 000005b5: MLOAD 000005b6: PUSH1 0x40 000005b8: MLOAD 000005b9: DUP1 000005ba: SWAP2 000005bb: SUB 000005bc: SWAP1 000005bd: LOG3 000005be: PUSH1 0x00 000005c0: DUP1 000005c1: SLOAD 000005c2: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 000005d7: NOT 000005d8: AND 000005d9: PUSH1 0x01 000005db: PUSH1 0xa0 000005dd: PUSH1 0x02 000005df: EXP 000005e0: SUB 000005e1: SWAP3 000005e2: SWAP1 000005e3: SWAP3 000005e4: AND 000005e5: SWAP2 000005e6: SWAP1 000005e7: SWAP2 000005e8: OR 000005e9: SWAP1 000005ea: SSTORE 000005eb: JUMP 000005ec: JUMPDEST 000005ed: PUSH1 0x00 000005ef: SLOAD 000005f0: CALLER 000005f1: PUSH1 0x01 000005f3: PUSH1 0xa0 000005f5: PUSH1 0x02 000005f7: EXP 000005f8: SUB 000005f9: SWAP1 000005fa: DUP2 000005fb: AND 000005fc: SWAP2 000005fd: AND 000005fe: EQ 000005ff: PUSH2 0x0607 00000602: JUMPI 00000603: PUSH1 0x00 00000605: DUP1 00000606: REVERT 00000607: JUMPDEST 00000608: PUSH1 0x02 0000060a: DUP1 0000060b: SLOAD 0000060c: PUSH1 0xa0 0000060e: PUSH1 0x02 00000610: EXP 00000611: SWAP1 00000612: DIV 00000613: PUSH1 0xff 00000615: AND 00000616: PUSH1 0x03 00000618: DUP2 00000619: GT 0000061a: ISZERO 0000061b: PUSH2 0x0620 0000061e: JUMPI 0000061f: INVALID 00000620: JUMPDEST 00000621: LT 00000622: PUSH2 0x062a 00000625: JUMPI 00000626: PUSH1 0x00 00000628: DUP1 00000629: REVERT 0000062a: JUMPDEST 0000062b: PUSH1 0x01 0000062d: PUSH1 0xa0 0000062f: PUSH1 0x02 00000631: EXP 00000632: SUB 00000633: DUP2 00000634: AND 00000635: PUSH1 0x00 00000637: SWAP1 00000638: DUP2 00000639: MSTORE 0000063a: PUSH1 0x01 0000063c: PUSH1 0x20 0000063e: MSTORE 0000063f: PUSH1 0x40 00000641: SWAP1 00000642: KECCAK256 00000643: SLOAD 00000644: PUSH2 0x0653 00000647: SWAP1 00000648: CALLVALUE 00000649: PUSH4 0xffffffff 0000064e: PUSH2 0x077b 00000651: AND 00000652: JUMP 00000653: JUMPDEST 00000654: PUSH1 0x01 00000656: PUSH1 0xa0 00000658: PUSH1 0x02 0000065a: EXP 0000065b: SUB 0000065c: DUP3 0000065d: AND 0000065e: PUSH1 0x00 00000660: DUP2 00000661: DUP2 00000662: MSTORE 00000663: PUSH1 0x01 00000665: PUSH1 0x20 00000667: MSTORE 00000668: PUSH1 0x40 0000066a: SWAP1 0000066b: DUP2 0000066c: SWAP1 0000066d: KECCAK256 0000066e: SWAP3 0000066f: SWAP1 00000670: SWAP3 00000671: SSTORE 00000672: SWAP1 00000673: PUSH32 0x2da466a7b24304f47e87fa2e1e5a81b9831ce54fec19055ce277ca2f39ba42c4 00000694: SWAP1 00000695: CALLVALUE 00000696: SWAP1 00000697: MLOAD 00000698: SWAP1 00000699: DUP2 0000069a: MSTORE 0000069b: PUSH1 0x20 0000069d: ADD 0000069e: PUSH1 0x40 000006a0: MLOAD 000006a1: DUP1 000006a2: SWAP2 000006a3: SUB 000006a4: SWAP1 000006a5: LOG2 000006a6: POP 000006a7: JUMP 000006a8: JUMPDEST 000006a9: PUSH1 0x00 000006ab: PUSH1 0x02 000006ad: DUP1 000006ae: SLOAD 000006af: PUSH1 0xa0 000006b1: PUSH1 0x02 000006b3: EXP 000006b4: SWAP1 000006b5: DIV 000006b6: PUSH1 0xff 000006b8: AND 000006b9: PUSH1 0x03 000006bb: DUP2 000006bc: GT 000006bd: ISZERO 000006be: PUSH2 0x06c3 000006c1: JUMPI 000006c2: INVALID 000006c3: JUMPDEST 000006c4: EQ 000006c5: PUSH2 0x06cd 000006c8: JUMPI 000006c9: PUSH1 0x00 000006cb: DUP1 000006cc: REVERT 000006cd: JUMPDEST 000006ce: PUSH1 0x01 000006d0: PUSH1 0xa0 000006d2: PUSH1 0x02 000006d4: EXP 000006d5: SUB 000006d6: DUP3 000006d7: AND 000006d8: PUSH1 0x00 000006da: SWAP1 000006db: DUP2 000006dc: MSTORE 000006dd: PUSH1 0x01 000006df: PUSH1 0x20 000006e1: MSTORE 000006e2: PUSH1 0x40 000006e4: DUP2 000006e5: KECCAK256 000006e6: SLOAD 000006e7: SWAP1 000006e8: LT 000006e9: PUSH2 0x06f1 000006ec: JUMPI 000006ed: PUSH1 0x00 000006ef: DUP1 000006f0: REVERT 000006f1: JUMPDEST 000006f2: POP 000006f3: PUSH1 0x01 000006f5: PUSH1 0xa0 000006f7: PUSH1 0x02 000006f9: EXP 000006fa: SUB 000006fb: DUP2 000006fc: AND 000006fd: PUSH1 0x00 000006ff: DUP2 00000700: DUP2 00000701: MSTORE 00000702: PUSH1 0x01 00000704: PUSH1 0x20 00000706: MSTORE 00000707: PUSH1 0x40 00000709: DUP1 0000070a: DUP3 0000070b: KECCAK256 0000070c: DUP1 0000070d: SLOAD 0000070e: SWAP3 0000070f: SWAP1 00000710: SSTORE 00000711: SWAP1 00000712: SWAP2 00000713: SWAP1 00000714: DUP3 00000715: ISZERO 00000716: PUSH2 0x08fc 00000719: MUL 0000071a: SWAP1 0000071b: DUP4 0000071c: SWAP1 0000071d: MLOAD 0000071e: PUSH1 0x00 00000720: PUSH1 0x40 00000722: MLOAD 00000723: DUP1 00000724: DUP4 00000725: SUB 00000726: DUP2 00000727: DUP6 00000728: DUP9 00000729: DUP9 0000072a: CALL 0000072b: SWAP4 0000072c: POP 0000072d: POP 0000072e: POP 0000072f: POP 00000730: ISZERO 00000731: ISZERO 00000732: PUSH2 0x073a 00000735: JUMPI 00000736: PUSH1 0x00 00000738: DUP1 00000739: REVERT 0000073a: JUMPDEST 0000073b: DUP2 0000073c: PUSH1 0x01 0000073e: PUSH1 0xa0 00000740: PUSH1 0x02 00000742: EXP 00000743: SUB 00000744: AND 00000745: PUSH32 0xd7dee2702d63ad89917b6a4da9981c90c4d24f8c2bdfd64c604ecae57d8d0651 00000766: DUP3 00000767: PUSH1 0x40 00000769: MLOAD 0000076a: SWAP1 0000076b: DUP2 0000076c: MSTORE 0000076d: PUSH1 0x20 0000076f: ADD 00000770: PUSH1 0x40 00000772: MLOAD 00000773: DUP1 00000774: SWAP2 00000775: SUB 00000776: SWAP1 00000777: LOG2 00000778: POP 00000779: POP 0000077a: JUMP 0000077b: JUMPDEST 0000077c: PUSH1 0x00 0000077e: DUP3 0000077f: DUP3 00000780: ADD 00000781: DUP4 00000782: DUP2 00000783: LT 00000784: ISZERO 00000785: PUSH2 0x078a 00000788: JUMPI 00000789: INVALID 0000078a: JUMPDEST 0000078b: SWAP4 0000078c: SWAP3 0000078d: POP 0000078e: POP 0000078f: POP 00000790: JUMP 00000791: STOP 00000792: LOG1 00000793: PUSH6 0x627a7a723058 0000079a: KECCAK256 0000079b: UNKNOWN(0xC1) 0000079c: UNKNOWN(0xE4) 0000079d: UNKNOWN(0x2F) 0000079e: EXTCODEHASH 0000079f: UNKNOWN(0xB7) 000007a0: UNKNOWN(0xB6) 000007a1: PUSH20 0x9289cb02f1f2a3934a45cab1cee9c81d72a0851e 000007b6: UNKNOWN(0xF6) 000007b7: PUSH10
| Severity | Category | Tool | Title | Confidence | Validated | Confirmed | Details |
|---|---|---|---|---|---|---|---|
| high | other | detector | Untrusted CALL target/value reachable | 60 | no | no |
viewtrace_id: 0xc5454359ab62c10498bc12038ea1556366273f354866c2128f67aff0360248fc
call_targets:
0x6ee4bc4cbc09346e718fad1933f9ca32543ddc93
target_varies:
no
classification:
constant_target
validation_json{
"sink": "CALL",
"errors": 0,
"status": "sink_reached",
"attempts": 1,
"trace_id": "0xc5454359ab62c10498bc12038ea1556366273f354866c2128f67aff0360248fc",
"confirmed": false,
"trace_mode": "callTracer",
"call_targets": [
"0x6ee4bc4cbc09346e718fad1933f9ca32543ddc93"
],
"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": "0x04b5802c",
"selector": "0x04b5802c",
"calldata_variants": [
"0x04b5802c",
"0x04b5802c0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x23e3fbd5",
"selector": "0x23e3fbd5",
"calldata_variants": [
"0x23e3fbd5",
"0x23e3fbd50000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x2e1a7d4d",
"selector": "0x2e1a7d4d",
"calldata_variants": [
"0x2e1a7d4d",
"0x2e1a7d4d0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x43d726d6",
"selector": "0x43d726d6",
"calldata_variants": [
"0x43d726d6",
"0x43d726d60000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x521eb273",
"selector": "0x521eb273",
"calldata_variants": [
"0x521eb273",
"0x521eb2730000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x8c52dc41",
"selector": "0x8c52dc41",
"calldata_variants": [
"0x8c52dc41",
"0x8c52dc410000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x8da5cb5b",
"selector": "0x8da5cb5b",
"calldata_variants": [
"0x8da5cb5b",
"0x8da5cb5b0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xc19d93fb",
"selector": "0xc19d93fb",
"calldata_variants": [
"0xc19d93fb",
"0xc19d93fb0000000000000000000000000000000000000000000000000000000000000000"
]
}
]
}
evidence_json{
"examples": [
{
"pc": 847,
"opcode": "CALL",
"returndata_checked": null,
"value_expression_category": "computed",
"target_expression_category": "computed"
},
{
"pc": 1117,
"opcode": "CALL",
"returndata_checked": null,
"value_expression_category": "computed",
"target_expression_category": "computed"
},
{
"pc": 1834,
"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: 0xc5454359ab62c10498bc12038ea1556366273f354866c2128f67aff0360248fc
call_targets:
0x6ee4bc4cbc09346e718fad1933f9ca32543ddc93
target_varies:
no
classification:
constant_target
validation_json{
"sink": "CALL",
"errors": 0,
"status": "sink_reached",
"attempts": 1,
"trace_id": "0xc5454359ab62c10498bc12038ea1556366273f354866c2128f67aff0360248fc",
"confirmed": false,
"trace_mode": "callTracer",
"call_targets": [
"0x6ee4bc4cbc09346e718fad1933f9ca32543ddc93"
],
"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": "0x04b5802c",
"selector": "0x04b5802c",
"calldata_variants": [
"0x04b5802c",
"0x04b5802c0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x23e3fbd5",
"selector": "0x23e3fbd5",
"calldata_variants": [
"0x23e3fbd5",
"0x23e3fbd50000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x2e1a7d4d",
"selector": "0x2e1a7d4d",
"calldata_variants": [
"0x2e1a7d4d",
"0x2e1a7d4d0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x43d726d6",
"selector": "0x43d726d6",
"calldata_variants": [
"0x43d726d6",
"0x43d726d60000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x521eb273",
"selector": "0x521eb273",
"calldata_variants": [
"0x521eb273",
"0x521eb2730000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x8c52dc41",
"selector": "0x8c52dc41",
"calldata_variants": [
"0x8c52dc41",
"0x8c52dc410000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x8da5cb5b",
"selector": "0x8da5cb5b",
"calldata_variants": [
"0x8da5cb5b",
"0x8da5cb5b0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0xc19d93fb",
"selector": "0xc19d93fb",
"calldata_variants": [
"0xc19d93fb",
"0xc19d93fb0000000000000000000000000000000000000000000000000000000000000000"
]
}
]
}
evidence_json{
"examples": [
{
"pc": 847,
"opcode": "CALL",
"returndata_checked": null,
"value_expression_category": "computed",
"target_expression_category": "computed"
},
{
"pc": 1117,
"opcode": "CALL",
"returndata_checked": null,
"value_expression_category": "computed",
"target_expression_category": "computed"
},
{
"pc": 1834,
"opcode": "CALL",
"returndata_checked": null,
"value_expression_category": "computed",
"target_expression_category": "computed"
}
],
"eth_value_calls": 3,
"guards_detected": []
}
|
| medium | other | codex | Irreversible state transitions can strand credited balances while backing ETH is still sweepable | 75 | no | — |
viewevidence_json{
"evidence": "Selector 0xf340fa01 reaches pc 1578-1649, where a keccak-derived slot is read and then increased by CALLVALUE. Selector 0xfa89401a reaches pc 1741-1808/1834, where the same style of keccak-derived slot is read, zeroed, and then paid out, but the function first checks the state byte extracted from slot 2 and compares it against 0 at pc 1732. Owner-only selectors 0x04b5802c and 0x8c52dc41 write new state values 1 and 2 at pcs 617-698 and 1213-1311, and selector 0x43d726d6 writes state 3 and sweeps balance at pcs 979-1134. No bytecode path back to state 0 is visible.",
"locations": [
"selector:0xf340fa01",
"selector:0xfa89401a",
"selector:0x04b5802c",
"selector:0x8c52dc41",
"selector:0x43d726d6"
],
"recommendation": "Enforce that all outstanding mapped liabilities are zero before any transition out of the payout state, or add a user-claim path that is not owner-gated. If sweeping is intended, track and settle liabilities explicitly before allowing beneficiary withdrawals.",
"exploit_scenario": "A credited recipient appears to be tracked in a keccak-derived mapping. The owner can add credit for an address through selector 0xf340fa01 while the state byte is less than 2, but the only visible path that pays that mapping out is selector 0xfa89401a, which is gated on state == 0. The contract also has irreversible owner-only transitions from state 0 to 1/2 and from state < 2 to 3. If the owner moves out of state 0 before clearing all credits, those balances become unpayable on-chain, while ETH can still be withdrawn or swept to the beneficiary path. Because the payout path is owner-only, credited users have no self-help withdrawal route."
}
|
| low | other | codex | ETH payouts use a hardcoded 2300-gas CALL, which can brick payouts to contract recipients | 65 | no | — |
viewevidence_json{
"evidence": "All three ETH-sending paths build a gas stipend from PUSH2 0x08fc before CALL: pc 827-847, pc 1097-1117, and pc 1814-1834. Each call site reverts on failure at pc 859, pc 1129, and pc 1846 respectively. Because returndata checking is not explicit in the artifact, the key observable fact is the 2300-gas stipend plus revert-on-failure behavior.",
"locations": [
"pc:0x34f",
"pc:0x45d",
"pc:0x72a",
"selector:0x2e1a7d4d",
"selector:0x43d726d6",
"selector:0xfa89401a"
],
"recommendation": "Replace the transfer-like CALL pattern with a regular call that forwards enough gas and checks success, or provide an alternate pull-based withdrawal mechanism. If only EOAs are intended, enforce that assumption explicitly before crediting or setting payout recipients.",
"exploit_scenario": "If the beneficiary or a credited recipient is a smart contract wallet, proxy, or multisig whose receive/fallback needs more than 2300 gas, the ETH transfer reverts. That can block owner withdrawals/sweeps and, more importantly, can leave a credited address unable to receive its mapped payout through the only visible disbursement path."
}
|