019b3836-401c-7174-a301-f7e6710e1b3b
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 |
|---|---|---|---|---|
| 5161 | artifact.fetch | complete | 1 / 3 | 3 months ago |
| 5162 | tool.cast_disasm | complete | 1 / 3 | 3 months ago |
| 48784 | analysis.bundle | complete | 1 / 3 | 1 week ago |
| 48785 | capability.graph | complete | 1 / 3 | 1 week ago |
| 48786 | detector.run | complete | 1 / 3 | 1 week ago |
| 48787 | validation.fork | complete | 1 / 3 | 1 week ago |
| 113304 | report.consolidate | complete | 1 / 6 | 1 week ago |
No slither job recorded yet.
{"no_findings":false,"summary":"Bytecode appears to implement an owner-controlled ERC20-like token with buy/sell mechanics and one callback-style external call path. The strongest issues are an unchecked inventory subtraction in the buy path, an ignored ETH payout result in the sell path, and miner-manipulable randomness used in an economic flow.","findings":[{"severity":"high","category":"math","title":"Buy path can underflow the contract inventory balance and mint unbacked tokens","exploit_scenario":"In the payable buy function, the contract credits the buyer and a secondary recipient, then subtracts `amount + bonus` from the contract's own token balance. If the contract inventory is lower than that sum, the subtraction wraps under uint256 arithmetic instead of reverting. An attacker can keep buying after inventory is exhausted, obtain balances not backed by reserve inventory, and then redeem or transfer those tokens against other users.","recommendation":"Before subtracting from the contract-held balance, explicitly require `balance[address(this)] >= amount + bonus`, or use checked arithmetic throughout the accounting path.","evidence":"Selector `0xa6f2ae3a` is the payable entry. In its execution path, buyer balance is increased at `pc:0x0903`-`pc:0x0908`, a second address is credited at `pc:0x0913`-`pc:0x0918`, and the contract-held balance keyed by `ADDRESS` is reduced at `pc:0x0923`-`pc:0x092c`. I do not see a prior comparison against `balance[address(this)]` anywhere on this path; the surrounding bytecode is Solidity 0.4-era style without automatic overflow/underflow checks.","locations":["selector:0xa6f2ae3a","pc:0x0903","pc:0x0913","pc:0x0923"]},{"severity":"medium","category":"other","title":"Redeem/sell path burns balance before an unchecked ETH payout","exploit_scenario":"A user selling/redeeming tokens has their internal balance reduced and the contract balance increased before ETH is sent out. If the recipient is a contract with a reverting fallback or otherwise causes the low-level call to fail, the function still continues. The user can lose tokens while receiving no ETH.","recommendation":"Require the payout call to succeed and revert otherwise, or switch to a pull-withdrawal pattern where failed payouts do not mutate balances.","evidence":"Selector `0xe4849b32` refreshes pricing, checks the caller balance, then enters the payout path at `pc:0x0989`. State is updated first: contract balance is incremented at `pc:0x09a6`-`pc:0x09ab` and caller balance is decremented at `pc:0x09b5`-`pc:0x09bc`. The ETH transfer happens via `CALL` at `pc:0x09d0`, and the success value is immediately discarded with `POP` at `pc:0x09d1`-`pc:0x09d2`; there is no revert branch after this call.","locations":["selector:0xe4849b32","pc:0x0989","pc:0x09a6","pc:0x09b5","pc:0x09d0"]},{"severity":"medium","category":"oracle","title":"Economic logic depends on miner-manipulable block data for randomness","exploit_scenario":"If the computed random value affects token amount, bonus, or winner selection, block producers and sophisticated users can bias outcomes by choosing when to submit transactions, exploiting private orderflow, or slightly manipulating timestamp/ordering. That can skew payouts in their favor.","recommendation":"Do not use `BLOCKHASH`, `NUMBER`, or `TIMESTAMP` directly for value-bearing randomness. Use a commit-reveal scheme or an external/verifiable randomness source.","evidence":"The helper at selector `0x41fa4876` uses `BLOCKHASH` and `SHA3` then `MOD 2` at `pc:0x01f9`-`pc:0x0219`. The payable flow `0xa6f2ae3a` seeds that helper with current `NUMBER`, `TIMESTAMP`, and calldata-derived input at `pc:0x087e`-`pc:0x08a1`. Because this is bytecode-only analysis, I cannot prove the exact user-facing feature name, but the randomness is clearly derived from manipulable block variables inside an economic path.","locations":["selector:0x41fa4876","selector:0xa6f2ae3a","pc:0x01f9","pc:0x0215","pc:0x087e","pc:0x0898"]}]}
OpenAI Codex v0.118.0 (research preview)
--------
workdir: /tmp/codex-k49mbjia
model: gpt-5.4
provider: openai
approval: never
sandbox: read-only
reasoning effort: high
reasoning summaries: none
session id: 019d5c67-33f8-78e1-958a-db51dcfd8b9c
--------
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-k49mbjia
exec
/bin/bash -lc "rg --files -g 'BYTECODE_BUNDLE.json' -g 'AGENTS.md'" in /tmp/codex-k49mbjia
succeeded in 0ms:
/tmp/codex-k49mbjia
succeeded in 0ms:
BYTECODE_BUNDLE.json
exec
/bin/bash -lc "sed -n '1,260p' BYTECODE_BUNDLE.json" in /tmp/codex-k49mbjia
succeeded in 0ms:
{
"analysis_artifact": {
"address": "0x9325f6e7767d61d934d118433666d1120863bdcd",
"artifact_hash": "0xdfea6531274384f9e38191f3b51978e2a4186ec1f8b7166ff5ea04cbad17eefd",
"artifact_json": {
"auth": {
"guards": []
},
"basic_blocks": [
{
"end_pc": 10,
"hash": "0xf11444caaf4db510565a598ec5db1095f6815c9db671a85c90dde30dacbe11e2",
"opcodes": [
"PUSH1",
"PUSH1",
"MSTORE",
"CALLDATASIZE",
"ISZERO",
"PUSH2",
"JUMPI"
],
"start_pc": 0
},
{
"end_pc": 30,
"hash": "0x81ba1990cb6d08ec7e9f5cef473cf689c892f720fb932454a377fa40a7b6acb2",
"opcodes": [
"PUSH1",
"PUSH1",
"EXP",
"PUSH1",
"CALLDATALOAD",
"DIV",
"PUSH4",
"OP_81",
"EQ",
"PUSH2",
"JUMPI"
],
"start_pc": 11
},
{
"end_pc": 41,
"hash": "0xbb4adb6b0343b466b21e5c872124ae1246c15937f907412dff7a45be4b89e23a",
"opcodes": [
"OP_80",
"PUSH4",
"EQ",
"PUSH2",
"JUMPI"
],
"start_pc": 31
},
{
"end_pc": 52,
"hash": "0xea19454bfe01c00dbab35612f8aa52f8f8f0fb5376f0c092cc366ffb9e4c6857",
"opcodes": [
"OP_80",
"PUSH4",
"EQ",
"PUSH2",
"JUMPI"
],
"start_pc": 42
},
{
"end_pc": 63,
"hash": "0xd69d368fec6c14dd7b3dc3a73b7ce17524cd586475c440422e4028feda4fe985",
"opcodes": [
"OP_80",
"PUSH4",
"EQ",
"PUSH2",
"JUMPI"
],
"start_pc": 53
},
{
"end_pc": 74,
"hash": "0x22ac288b26f96d1f2be88284216b7a65d533ac2cbf794a41853e29d9f15cb49f",
"opcodes": [
"OP_80",
"PUSH4",
"EQ",
"PUSH2",
"JUMPI"
],
"start_pc": 64
},
{
"end_pc": 85,
"hash": "0x4a871c50e75c9501bcbed914881e4008e1796505737385677e4df8f3d54ca784",
"opcodes": [
"OP_80",
"PUSH4",
"EQ",
"PUSH2",
"JUMPI"
],
"start_pc": 75
},
{
"end_pc": 96,
"hash": "0xd514a7eacaee8fb4ebdcbdcb38800c29184eab38b16861dd8b97b17c70aaa2ff",
"opcodes": [
"OP_80",
"PUSH4",
"EQ",
"PUSH2",
"JUMPI"
],
"start_pc": 86
},
{
"end_pc": 107,
"hash": "0x57d0236ed3c086498b49e1b50433804bdf79e7109c7b83755797f666e9fc8f6c",
"opcodes": [
"OP_80",
"PUSH4",
"EQ",
"PUSH2",
"JUMPI"
],
"start_pc": 97
},
{
"end_pc": 118,
"hash": "0x93f7d5d4e7efa89e76f8f86896757b0bc1282a0b1c617a39aa1a86408e7ae1ee",
"opcodes": [
"OP_80",
"PUSH4",
"EQ",
"PUSH2",
"JUMPI"
],
"start_pc": 108
},
{
"end_pc": 129,
"hash": "0xcc3c70fb9af60426f8e26d7e1f9ec383d88776d6512a9954f6bb6e8aff45b879",
"opcodes": [
"OP_80",
"PUSH4",
"EQ",
"PUSH2",
"JUMPI"
],
"start_pc": 119
},
{
"end_pc": 140,
"hash": "0x86e3595e017f2af8a502c2e68c7814eb5c9f0907f0afa551477a81f71d8834b2",
"opcodes": [
"OP_80",
"PUSH4",
"EQ",
"PUSH2",
"JUMPI"
],
"start_pc": 130
},
{
"end_pc": 151,
"hash": "0x48179b41f3610338adb51b04894be3a884a3d97e0d492a8aae6c114b635c31a3",
"opcodes": [
"OP_80",
"PUSH4",
"EQ",
"PUSH2",
"JUMPI"
],
"start_pc": 141
},
{
"end_pc": 162,
"hash": "0x00f2e521531902fffd26347661a176ca2eda1a0744be870cff160418e21f3b2e",
"opcodes": [
"OP_80",
"PUSH4",
"EQ",
"PUSH2",
"JUMPI"
],
"start_pc": 152
},
{
"end_pc": 173,
"hash": "0xdb6f001418c531caf78313cae502f5f6289e688d09acec1f8dc3970f238367c3",
"opcodes": [
"OP_80",
"PUSH4",
"EQ",
"PUSH2",
"JUMPI"
],
"start_pc": 163
},
{
"end_pc": 184,
"hash": "0x4d86ffa9c19fdc81e9e81d77c7c811e836ae5ff72a61881ab0f873a1c0d3f0be",
"opcodes": [
"OP_80",
"PUSH4",
"EQ",
"PUSH2",
"JUMPI"
],
"start_pc": 174
},
{
"end_pc": 195,
"hash": "0xa91d7fb99828f9689dc6ccda4a2a36fe23e57cd79450cabcd6123e9f6e7d764c",
"opcodes": [
"OP_80",
"PUSH4",
"EQ",
"PUSH2",
"JUMPI"
],
"start_pc": 185
},
{
"end_pc": 206,
"hash": "0x1997e43099f71cafa68597bcff4a83984a35254f78f24a47a1305635b012542c",
"opcodes": [
"OP_80",
"PUSH4",
"EQ",
"PUSH2",
"JUMPI"
],
"start_pc": 196
},
{
"end_pc": 217,
"hash": "0x2ac83c9fbd12121cfe837b579d467c8796a299f150c24a3d76eecf07a39b419f",
"opcodes": [
"OP_80",
"PUSH4",
"EQ",
"PUSH2",
"JUMPI"
],
"start_pc": 207
},
{
"end_pc": 228,
"hash": "0x0b9c7a41d23b43c8eb6b6cb37b34be1c160c87c1c13630c81ff211022224aa87",
"opcodes": [
"OP_80",
"PUSH4",
"EQ",
"PUSH2",
"JUMPI"
],
"start_pc": 218
},
{
"end_pc": 239,
"hash": "0x3101111f07321a4cb5fae2cfc264ca9ed59c8fa33a986357bc8acbc0e8c143f4",
exec
/bin/bash -lc "sed -n '261,520p' BYTECODE_BUNDLE.json" in /tmp/codex-k49mbjia
succeeded in 0ms:
"opcodes": [
"OP_80",
"PUSH4",
"EQ",
"PUSH2",
"JUMPI"
],
"start_pc": 229
},
{
"end_pc": 250,
"hash": "0x0e1def92e54c7a4ce22aa3348da60178a046ff2e307c113ceffc9ca5ed845441",
"opcodes": [
"OP_80",
"PUSH4",
"EQ",
"PUSH2",
"JUMPI"
],
"start_pc": 240
},
{
"end_pc": 261,
"hash": "0xdaa0fd6765ae4a8e51e10a1d1d6b0fa5a127beeb36cb51d0d84f1bd284919bed",
"opcodes": [
"OP_80",
"PUSH4",
"EQ",
"PUSH2",
"JUMPI"
],
"start_pc": 251
},
{
"end_pc": 263,
"hash": "0xfa58d4586ba563afea8a6209e1c275e39f7a607bbb2afbfa6b1803387a47055c",
"opcodes": [
"JUMPDEST",
"STOP"
],
"start_pc": 262
},
{
"end_pc": 329,
"hash": "0x3252eb6f8c35bb65c9a5b18ad5d29d3cbb254acd1973281fee63098658a94e9e",
"opcodes": [
"JUMPDEST",
"PUSH1",
"OP_80",
"MLOAD",
"PUSH1",
"OP_80",
"SLOAD",
"PUSH1",
"PUSH1",
"OP_82",
"OP_84",
"AND",
"ISZERO",
"PUSH2",
"MUL",
"PUSH1",
"NOT",
"ADD",
"OP_90",
"OP_92",
"AND",
"OP_91",
"OP_90",
"OP_91",
"DIV",
"PUSH1",
"OP_81",
"ADD",
"OP_82",
"OP_90",
"DIV",
"OP_82",
"MUL",
"OP_84",
"ADD",
"OP_82",
"ADD",
"OP_90",
"OP_94",
"MSTORE",
"OP_83",
"OP_83",
"MSTORE",
"PUSH2",
"OP_93",
"OP_90",
"OP_83",
"ADD",
"OP_82",
"OP_82",
"OP_80",
"ISZERO",
"PUSH2",
"JUMPI"
],
"start_pc": 264
},
{
"end_pc": 337,
"hash": "0x2d53d93e1ca567c148fd0cb3a76728c2167e72a3dd3cce6235d94da4a1f28b6f",
"opcodes": [
"OP_80",
"PUSH1",
"LT",
"PUSH2",
"JUMPI"
],
"start_pc": 330
},
{
"end_pc": 356,
"hash": "0xfe4f9bb40fa7e685fce2ede2268e73ecb9ece52cabe7a384888fc55caf65ca47",
"opcodes": [
"PUSH2",
"OP_80",
"OP_83",
"SLOAD",
"DIV",
"MUL",
"OP_83",
"MSTORE",
"OP_91",
"PUSH1",
"ADD",
"OP_91",
"PUSH2",
"JUMP"
],
"start_pc": 338
},
{
"end_pc": 365,
"hash": "0x5c1a9f1bc9745871386054e92cf662ce346921512fae7dfe46ed541c1edce67b",
"opcodes": [
"JUMPDEST",
"PUSH2",
"PUSH1",
"SLOAD",
"OP_81",
"JUMP"
],
"start_pc": 357
},
{
"end_pc": 395,
"hash": "0xa15cece67302aa0fd06eac33e779183af77f9e44680eeb7e28687c3863fc77df",
"opcodes": [
"JUMPDEST",
"PUSH2",
"PUSH1",
"CALLDATALOAD",
"PUSH1",
"SLOAD",
"PUSH1",
"PUSH1",
"PUSH1",
"EXP",
"SUB",
"OP_90",
"OP_81",
"AND",
"CALLER",
"OP_90",
"OP_91",
"AND",
"EQ",
"PUSH2",
"JUMPI"
],
"start_pc": 366
},
{
"end_pc": 399,
"hash": "0x308901a1166184fe53071bea39dd107613c9a5d3e90924c678f29754c5b948ac",
"opcodes": [
"PUSH2",
"JUMP"
],
"start_pc": 396
},
{
"end_pc": 414,
"hash": "0x90fe3d525c6c8d3cc65c30f30d4f4de7f5dcded001833d58a6bc6e852773660d",
"opcodes": [
"JUMPDEST",
"PUSH2",
"PUSH1",
"SLOAD",
"PUSH4",
"AND",
"OP_81",
"JUMP"
],
"start_pc": 400
},
{
"end_pc": 460,
"hash": "0x0b26ca438f492d986e2f9a954d171525ff954d2eb99c6e7dd44882934564fcc3",
"opcodes": [
"JUMPDEST",
"PUSH2",
"PUSH1",
"CALLDATALOAD",
"PUSH1",
"CALLDATALOAD",
"PUSH1",
"CALLDATALOAD",
"PUSH1",
"PUSH1",
"PUSH1",
"EXP",
"SUB",
"OP_83",
"AND",
"PUSH1",
"OP_90",
"OP_81",
"MSTORE",
"PUSH1",
"PUSH1",
"MSTORE",
"PUSH1",
"OP_81",
"SHA3",
"SLOAD",
"OP_82",
"OP_90",
"LT",
"ISZERO",
"PUSH2",
"JUMPI"
],
"start_pc": 415
},
{
"end_pc": 464,
"hash": "0x06f1bd585a2974e4edd144946dc5578111a51c3918f67134544c236bc997f9cf",
"opcodes": [
"PUSH2",
"JUMP"
],
"start_pc": 461
},
{
"end_pc": 476,
"hash": "0x97b6c90bcba75e6f65361515ac71dc23e5d8d66c06e288c033fa38e2edde9127",
"opcodes": [
"JUMPDEST",
"PUSH2",
"PUSH1",
"SLOAD",
"PUSH1",
"AND",
"OP_81",
exec
/bin/bash -lc "sed -n '521,780p' BYTECODE_BUNDLE.json" in /tmp/codex-k49mbjia
succeeded in 0ms:
"JUMP"
],
"start_pc": 465
},
{
"end_pc": 486,
"hash": "0x9b345e4c3f70b3f3eeabb8a7cef032e618ac242ab8fddbd140015c670ba1958d",
"opcodes": [
"JUMPDEST",
"PUSH2",
"PUSH1",
"CALLDATALOAD",
"PUSH1",
"CALLDATALOAD"
],
"start_pc": 477
},
{
"end_pc": 491,
"hash": "0x8c860dd4a744b83f5d603fa28aafd9adea96022d0bd3350c095efd519d9f1ba2",
"opcodes": [
"JUMPDEST",
"PUSH1",
"OP_80",
"OP_80"
],
"start_pc": 487
},
{
"end_pc": 500,
"hash": "0x72357e4ebefe8bba7a99b85eae6b7ea4b87e5d742a8252dd087dfe9380e1a3bf",
"opcodes": [
"JUMPDEST",
"OP_83",
"OP_81",
"LT",
"ISZERO",
"PUSH2",
"JUMPI"
],
"start_pc": 492
},
{
"end_pc": 545,
"hash": "0xa84ecf89edecaea2c2c693b3c3e3382bbdc5be64392e6cb22186a097a77eff53",
"opcodes": [
"PUSH1",
"OP_80",
"MLOAD",
"NUMBER",
"OP_83",
"OP_90",
"SUB",
"PUSH1",
"NOT",
"ADD",
"BLOCKHASH",
"OP_81",
"MSTORE",
"PUSH1",
"OP_81",
"ADD",
"OP_87",
"OP_90",
"MSTORE",
"OP_81",
"MLOAD",
"OP_90",
"OP_81",
"OP_90",
"SUB",
"OP_90",
"OP_91",
"ADD",
"OP_90",
"SHA3",
"PUSH1",
"OP_90",
"MOD",
"PUSH1",
"EQ",
"ISZERO",
"PUSH2",
"JUMPI"
],
"start_pc": 501
},
{
"end_pc": 554,
"hash": "0x5047fd980427293bdee6abf6d16154594952dae9e8c7ae5d7c2e53264c01e351",
"opcodes": [
"PUSH1",
"OP_81",
"OP_90",
"EXP",
"OP_90",
"OP_91",
"ADD",
"OP_90"
],
"start_pc": 546
},
{
"end_pc": 562,
"hash": "0xef1bcd80882e3a871e0b502e2c245a7a5fa790dce085da21a6c4688774f49951",
"opcodes": [
"JUMPDEST",
"PUSH1",
"ADD",
"PUSH2",
"JUMP"
],
"start_pc": 555
},
{
"end_pc": 586,
"hash": "0xe665c55603794d9910d65001a248c5fb215d1c6bde5c8985b6cbb52b2a5b3efc",
"opcodes": [
"JUMPDEST",
"PUSH2",
"PUSH1",
"CALLDATALOAD",
"PUSH1",
"PUSH1",
"MSTORE",
"PUSH1",
"OP_90",
"OP_81",
"MSTORE",
"PUSH1",
"OP_90",
"SHA3",
"SLOAD",
"OP_81",
"JUMP"
],
"start_pc": 563
},
{
"end_pc": 615,
"hash": "0x6d58608cb2cffe81d5d3d0f78336ea6f4c2f3aacd6a5356a5f1ba9f03147c424",
"opcodes": [
"JUMPDEST",
"PUSH2",
"PUSH1",
"CALLDATALOAD",
"PUSH1",
"SLOAD",
"CALLER",
"PUSH1",
"PUSH1",
"PUSH1",
"EXP",
"SUB",
"OP_90",
"OP_81",
"AND",
"OP_91",
"AND",
"EQ",
"PUSH2",
"JUMPI"
],
"start_pc": 587
},
{
"end_pc": 619,
"hash": "0x295b9db996f0dcab10c486ecbc69c2f450ae381d4ebb9c6578781be79c94223d",
"opcodes": [
"PUSH2",
"JUMP"
],
"start_pc": 616
},
{
"end_pc": 637,
"hash": "0xc650fd60a5edd955cf829d0aa7255939c1d4459367cfa371f535c6d0c2e505bf",
"opcodes": [
"JUMPDEST",
"PUSH2",
"PUSH1",
"SLOAD",
"PUSH1",
"PUSH1",
"PUSH1",
"EXP",
"SUB",
"AND",
"OP_81",
"JUMP"
],
"start_pc": 620
},
{
"end_pc": 701,
"hash": "0xf48a460ad04b4994c4f96ff04f6a9c5413886a937e7cebed0677bee8b34b83e9",
"opcodes": [
"JUMPDEST",
"PUSH2",
"PUSH1",
"OP_80",
"SLOAD",
"PUSH1",
"OP_80",
"MLOAD",
"PUSH1",
"PUSH1",
"OP_84",
"AND",
"ISZERO",
"PUSH2",
"MUL",
"PUSH1",
"NOT",
"ADD",
"OP_90",
"OP_93",
"AND",
"OP_84",
"OP_90",
"DIV",
"PUSH1",
"OP_81",
"ADD",
"OP_84",
"OP_90",
"DIV",
"OP_84",
"MUL",
"OP_82",
"ADD",
"OP_84",
"ADD",
"OP_90",
"OP_92",
"MSTORE",
"OP_81",
"OP_81",
"MSTORE",
"OP_92",
"OP_91",
"OP_83",
"ADD",
"OP_82",
"OP_82",
"OP_80",
"ISZERO",
"PUSH2",
"JUMPI"
],
"start_pc": 638
},
{
"end_pc": 709,
"hash": "0xdc8dcfd554a37ab6c89fce3680e9354399d5e76895d9a159dd82f90b455444fd",
"opcodes": [
"OP_80",
"PUSH1",
"LT",
"PUSH2",
exec
/bin/bash -lc "sed -n '781,1040p' BYTECODE_BUNDLE.json" in /tmp/codex-k49mbjia
succeeded in 0ms:
"JUMPI"
],
"start_pc": 702
},
{
"end_pc": 728,
"hash": "0x36ff07755adefbf7af7c6fb0adfb0775b58b6dc48b7a4c53b65f8479b0b5a97a",
"opcodes": [
"PUSH2",
"OP_80",
"OP_83",
"SLOAD",
"DIV",
"MUL",
"OP_83",
"MSTORE",
"OP_91",
"PUSH1",
"ADD",
"OP_91",
"PUSH2",
"JUMP"
],
"start_pc": 710
},
{
"end_pc": 751,
"hash": "0xacc0a6d1462891d208e1e647a47e5182b7cb20095b18a427f781935356da138a",
"opcodes": [
"JUMPDEST",
"PUSH2",
"PUSH1",
"SLOAD",
"CALLVALUE",
"OP_90",
"PUSH1",
"OP_90",
"OP_81",
"OP_90",
"OP_81",
"OP_90",
"OP_84",
"GT",
"ISZERO",
"PUSH2",
"JUMPI"
],
"start_pc": 729
},
{
"end_pc": 755,
"hash": "0x01a7be615724532b6d9f92d06b8b10086f1a57e436301fad0dd825cb1c48eb9a",
"opcodes": [
"PUSH2",
"JUMP"
],
"start_pc": 752
},
{
"end_pc": 798,
"hash": "0x062352531fa2d39ef9b09c0546ecb925a0b8d33a47cff3c59471ac0aab8a192b",
"opcodes": [
"JUMPDEST",
"PUSH2",
"PUSH1",
"CALLDATALOAD",
"PUSH1",
"CALLDATALOAD",
"CALLER",
"PUSH1",
"PUSH1",
"PUSH1",
"EXP",
"SUB",
"AND",
"PUSH1",
"OP_90",
"OP_81",
"MSTORE",
"PUSH1",
"PUSH1",
"MSTORE",
"PUSH1",
"OP_90",
"SHA3",
"SLOAD",
"OP_81",
"OP_90",
"LT",
"ISZERO",
"PUSH2",
"JUMPI"
],
"start_pc": 756
},
{
"end_pc": 802,
"hash": "0xa55a7d63de5ca9453cea1c30ca713ed1de5b9f17ba62cbdde2826bfd65700ac1",
"opcodes": [
"PUSH2",
"JUMP"
],
"start_pc": 799
},
{
"end_pc": 811,
"hash": "0x5e15372bdec6248028b40569964df1f7272281b8dc9b1d627384f96b288e6fa8",
"opcodes": [
"JUMPDEST",
"PUSH2",
"PUSH1",
"SLOAD",
"OP_81",
"JUMP"
],
"start_pc": 803
},
{
"end_pc": 820,
"hash": "0x7ed4d23c6a1aba16edefb0d59ffdc8c1e2f1d80a2caf27cec533b8257ad6d675",
"opcodes": [
"JUMPDEST",
"PUSH2",
"PUSH1",
"SLOAD",
"OP_81",
"JUMP"
],
"start_pc": 812
},
{
"end_pc": 849,
"hash": "0x95e89b0eb4811ae05aea952c3660be6001c00f24912ce05c99c4b115b5fa8d8a",
"opcodes": [
"JUMPDEST",
"PUSH2",
"PUSH1",
"CALLDATALOAD",
"PUSH1",
"SLOAD",
"CALLER",
"PUSH1",
"PUSH1",
"PUSH1",
"EXP",
"SUB",
"OP_90",
"OP_81",
"AND",
"OP_91",
"AND",
"EQ",
"PUSH2",
"JUMPI"
],
"start_pc": 821
},
{
"end_pc": 853,
"hash": "0xc37cc290da199743849279a7f5cd7d484b4e57a402a0dfbc60648de3326d8a42",
"opcodes": [
"PUSH2",
"JUMP"
],
"start_pc": 850
},
{
"end_pc": 1142,
"hash": "0xf84ece7517df66789e6f006f2a7d8d6963fdc6adcb413a1ad26add1ed0b4f74f",
"opcodes": [
"JUMPDEST",
"PUSH1",
"OP_80",
"MLOAD",
"PUSH1",
"PUSH1",
"CALLDATALOAD",
"PUSH1",
"OP_81",
"OP_81",
"ADD",
"CALLDATALOAD",
"PUSH1",
"OP_81",
"ADD",
"OP_84",
"OP_90",
"DIV",
"OP_84",
"MUL",
"OP_85",
"ADD",
"OP_84",
"ADD",
"OP_90",
"OP_95",
"MSTORE",
"OP_84",
"OP_84",
"MSTORE",
"PUSH2",
"OP_94",
"OP_81",
"CALLDATALOAD",
"OP_94",
"PUSH1",
"OP_80",
"CALLDATALOAD",
"OP_95",
"OP_93",
"OP_94",
"PUSH1",
"OP_94",
"OP_92",
"OP_93",
"OP_91",
"ADD",
"OP_91",
"OP_81",
"OP_90",
"OP_84",
"ADD",
"OP_83",
"OP_82",
"OP_80",
"OP_82",
"OP_84",
"CALLDATACOPY",
"POP",
"OP_94",
"OP_96",
"POP",
"POP",
"POP",
"POP",
"POP",
"POP",
"POP",
"PUSH1",
"PUSH1",
"OP_83",
"PUSH1",
"PUSH1",
"POP",
"PUSH1",
"CALLER",
"PUSH1",
"PUSH1",
"PUSH1",
"EXP",
"SUB",
"AND",
"OP_81",
"MSTORE",
"PUSH1",
"ADD",
"OP_90",
"OP_81",
"MSTORE",
"PUSH1",
exec
/bin/bash -lc "sed -n '1041,1300p' BYTECODE_BUNDLE.json" in /tmp/codex-k49mbjia
succeeded in 0ms:
"ADD",
"PUSH1",
"SHA3",
"PUSH1",
"POP",
"PUSH1",
"OP_87",
"PUSH1",
"PUSH1",
"PUSH1",
"EXP",
"SUB",
"AND",
"OP_81",
"MSTORE",
"PUSH1",
"ADD",
"OP_90",
"OP_81",
"MSTORE",
"PUSH1",
"ADD",
"PUSH1",
"SHA3",
"PUSH1",
"POP",
"OP_81",
"OP_90",
"SSTORE",
"POP",
"OP_84",
"OP_90",
"POP",
"OP_80",
"PUSH1",
"PUSH1",
"PUSH1",
"EXP",
"SUB",
"AND",
"PUSH4",
"CALLER",
"OP_86",
"ADDRESS",
"OP_87",
"PUSH1",
"MLOAD",
"OP_85",
"PUSH1",
"PUSH1",
"EXP",
"MUL",
"OP_81",
"MSTORE",
"PUSH1",
"ADD",
"OP_80",
"OP_85",
"PUSH1",
"PUSH1",
"PUSH1",
"EXP",
"SUB",
"AND",
"OP_81",
"MSTORE",
"PUSH1",
"ADD",
"OP_84",
"OP_81",
"MSTORE",
"PUSH1",
"ADD",
"OP_83",
"PUSH1",
"PUSH1",
"PUSH1",
"EXP",
"SUB",
"AND",
"OP_81",
"MSTORE",
"PUSH1",
"ADD",
"OP_80",
"PUSH1",
"ADD",
"OP_82",
"OP_81",
"SUB",
"OP_82",
"MSTORE",
"OP_83",
"OP_81",
"OP_81",
"MLOAD",
"OP_81",
"MSTORE",
"PUSH1",
"ADD",
"OP_91",
"POP",
"OP_80",
"MLOAD",
"OP_90",
"PUSH1",
"ADD",
"OP_90",
"OP_80",
"OP_83",
"OP_83",
"OP_82",
"OP_90",
"PUSH1",
"PUSH1",
"PUSH1",
"OP_84",
"PUSH1",
"ADD",
"DIV",
"PUSH1",
"MUL",
"PUSH1",
"ADD",
"CALL",
"POP",
"OP_90",
"POP",
"OP_90",
"OP_81",
"ADD",
"OP_90",
"PUSH1",
"AND",
"OP_80",
"ISZERO",
"PUSH2",
"JUMPI"
],
"start_pc": 854
},
{
"end_pc": 1167,
"hash": "0xb5d50d3e73296dfb1ef27af6c131ccf6951d16e423282d9784276c6565299717",
"opcodes": [
"OP_80",
"OP_82",
"SUB",
"OP_80",
"MLOAD",
"PUSH1",
"OP_83",
"PUSH1",
"SUB",
"PUSH2",
"EXP",
"SUB",
"NOT",
"AND",
"OP_81",
"MSTORE",
"PUSH1",
"ADD",
"OP_91",
"POP"
],
"start_pc": 1143
},
{
"end_pc": 1199,
"hash": "0xdf9ff470b26ab5507926e44fb36b152325bbc0b2365977dd939346ff30e6b321",
"opcodes": [
"JUMPDEST",
"POP",
"OP_95",
"POP",
"POP",
"POP",
"POP",
"POP",
"POP",
"PUSH1",
"PUSH1",
"MLOAD",
"OP_80",
"OP_83",
"SUB",
"OP_81",
"PUSH1",
"OP_87",
"PUSH2",
"GAS",
"SUB",
"CALL",
"ISZERO",
"PUSH2",
"JUMPI"
],
"start_pc": 1168
},
{
"end_pc": 1212,
"hash": "0x070be6b669cf1cc8276ff5e32b64edc7347897fcac13cf12083d44d636be038c",
"opcodes": [
"POP",
"PUSH1",
"OP_97",
"OP_96",
"POP",
"POP",
"POP",
"POP",
"POP",
"POP",
"POP",
"JUMP"
],
"start_pc": 1200
},
{
"end_pc": 1249,
"hash": "0xe666b352b53411ecaa58093caa2fb8036fd9dbd188a268e914da4d49c86d7b41",
"opcodes": [
"JUMPDEST",
"PUSH1",
"PUSH1",
"OP_90",
"OP_81",
"MSTORE",
"PUSH1",
"CALLDATALOAD",
"PUSH1",
"OP_90",
"OP_81",
"MSTORE",
"PUSH1",
"OP_80",
"OP_82",
"SHA3",
"OP_90",
"OP_92",
"MSTORE",
"PUSH1",
"CALLDATALOAD",
"OP_81",
"MSTORE",
"SHA3",
"SLOAD",
"PUSH2",
"OP_90",
"OP_81",
"JUMP"
],
"start_pc": 1213
},
{
"end_pc": 1286,
"hash": "0x71daa243020b05b1a5929e568066e82e301c732ada86735a502ca08a4c517913",
"opcodes": [
"JUMPDEST",
exec
/bin/bash -lc "sed -n '1301,1560p' BYTECODE_BUNDLE.json" in /tmp/codex-k49mbjia
succeeded in 0ms:
"PUSH1",
"PUSH1",
"OP_90",
"OP_81",
"MSTORE",
"PUSH1",
"CALLDATALOAD",
"PUSH1",
"OP_90",
"OP_81",
"MSTORE",
"PUSH1",
"OP_80",
"OP_82",
"SHA3",
"OP_90",
"OP_92",
"MSTORE",
"PUSH1",
"CALLDATALOAD",
"OP_81",
"MSTORE",
"SHA3",
"SLOAD",
"PUSH2",
"OP_90",
"OP_81",
"JUMP"
],
"start_pc": 1250
},
{
"end_pc": 1348,
"hash": "0x9fee14d48fbcaea3a3034ddbea842ff978ac92d59fbff8893fcaa22b6ffd27f7",
"opcodes": [
"JUMPDEST",
"PUSH2",
"PUSH1",
"CALLDATALOAD",
"PUSH1",
"SLOAD",
"ADDRESS",
"PUSH1",
"PUSH1",
"PUSH1",
"EXP",
"SUB",
"OP_90",
"OP_81",
"AND",
"BALANCE",
"PUSH5",
"MUL",
"OP_91",
"OP_90",
"OP_91",
"DIV",
"PUSH1",
"SSTORE",
"CALLER",
"AND",
"PUSH1",
"OP_90",
"OP_81",
"MSTORE",
"PUSH1",
"PUSH1",
"MSTORE",
"PUSH1",
"OP_81",
"SHA3",
"SLOAD",
"OP_82",
"OP_90",
"LT",
"ISZERO",
"PUSH2",
"JUMPI"
],
"start_pc": 1287
},
{
"end_pc": 1352,
"hash": "0x143348bc57141ca5c4c5006b62466a40a1ca586819594c34740862a55969119d",
"opcodes": [
"PUSH2",
"JUMP"
],
"start_pc": 1349
},
{
"end_pc": 1381,
"hash": "0xa04a9ba9699627e0385c7124b2a4219904ad82bc7977897fc523b07e2a376e24",
"opcodes": [
"JUMPDEST",
"PUSH2",
"PUSH1",
"CALLDATALOAD",
"PUSH1",
"SLOAD",
"CALLER",
"PUSH1",
"PUSH1",
"PUSH1",
"EXP",
"SUB",
"OP_90",
"OP_81",
"AND",
"OP_91",
"AND",
"EQ",
"PUSH2",
"JUMPI"
],
"start_pc": 1353
},
{
"end_pc": 1385,
"hash": "0x6707060bad8e15d35b843bc8cb62c4cfe366b05fab3191903683f050181b17cd",
"opcodes": [
"PUSH2",
"JUMP"
],
"start_pc": 1382
},
{
"end_pc": 1403,
"hash": "0xe78a4b92df9f5184b93ae0e0bbe22359f8dd0dc0d11d3eca81fb93321a7844d4",
"opcodes": [
"JUMPDEST",
"PUSH2",
"PUSH1",
"SLOAD",
"PUSH1",
"PUSH1",
"PUSH1",
"EXP",
"SUB",
"AND",
"OP_81",
"JUMP"
],
"start_pc": 1386
},
{
"end_pc": 1474,
"hash": "0x7279b5f9c9695daf0c2761b0f0522db13bcd1579d8c9a79de26bce623eef3744",
"opcodes": [
"JUMPDEST",
"PUSH1",
"MLOAD",
"OP_80",
"OP_80",
"PUSH1",
"ADD",
"OP_82",
"OP_81",
"SUB",
"OP_82",
"MSTORE",
"OP_83",
"OP_81",
"OP_81",
"MLOAD",
"OP_81",
"MSTORE",
"PUSH1",
"ADD",
"OP_91",
"POP",
"OP_80",
"MLOAD",
"OP_90",
"PUSH1",
"ADD",
"OP_90",
"OP_80",
"OP_83",
"OP_83",
"OP_82",
"OP_90",
"PUSH1",
"PUSH1",
"PUSH1",
"OP_84",
"PUSH1",
"ADD",
"DIV",
"PUSH1",
"MUL",
"PUSH1",
"ADD",
"CALL",
"POP",
"OP_90",
"POP",
"OP_90",
"OP_81",
"ADD",
"OP_90",
"PUSH1",
"AND",
"OP_80",
"ISZERO",
"PUSH2",
"JUMPI"
],
"start_pc": 1404
},
{
"end_pc": 1499,
"hash": "0x603dac73618873dacbbe13d465356de83ceb84bf851a128551ee3002addc6a95",
"opcodes": [
"OP_80",
"OP_82",
"SUB",
"OP_80",
"MLOAD",
"PUSH1",
"OP_83",
"PUSH1",
"SUB",
"PUSH2",
"EXP",
"SUB",
"NOT",
"AND",
"OP_81",
"MSTORE",
"PUSH1",
"ADD",
"OP_91",
"POP"
],
"start_pc": 1475
},
{
"end_pc": 1513,
"hash": "0x97bcd7542d54f54451e79c6b7ca47cfb4bc92f95fb934edfee06c120a7784cad",
"opcodes": [
"JUMPDEST",
"POP",
"OP_92",
"POP",
"POP",
"POP",
"PUSH1",
"MLOAD",
"OP_80",
"OP_91",
"SUB",
"OP_90",
"RETURN"
],
"start_pc": 1500
},
{
"end_pc": 1531,
"hash": "0xd3b0615185ff626b8603584a35d8b8554af600ef6c37a48cea8a2030954631ad",
exec
/bin/bash -lc "sed -n '1561,1820p' BYTECODE_BUNDLE.json" in /tmp/codex-k49mbjia
succeeded in 0ms:
"opcodes": [
"JUMPDEST",
"PUSH1",
"OP_80",
"MLOAD",
"OP_91",
"OP_82",
"MSTORE",
"MLOAD",
"OP_90",
"OP_81",
"OP_90",
"SUB",
"PUSH1",
"ADD",
"OP_90",
"RETURN"
],
"start_pc": 1514
},
{
"end_pc": 1557,
"hash": "0x51b926b263726c630bfb6c99413c464d2cae30cbe28a8ad2e5fcc260347fde62",
"opcodes": [
"JUMPDEST",
"PUSH1",
"OP_80",
"MLOAD",
"PUSH4",
"OP_92",
"OP_90",
"OP_92",
"AND",
"OP_82",
"MSTORE",
"MLOAD",
"OP_90",
"OP_81",
"OP_90",
"SUB",
"PUSH1",
"ADD",
"OP_90",
"RETURN"
],
"start_pc": 1532
},
{
"end_pc": 1579,
"hash": "0xb7814347c07f79ed9111dbe11398b895b9f19a7b903abf823a9fb85652e8dc56",
"opcodes": [
"JUMPDEST",
"PUSH1",
"OP_80",
"MLOAD",
"PUSH1",
"OP_90",
"OP_92",
"AND",
"OP_82",
"MSTORE",
"MLOAD",
"OP_90",
"OP_81",
"OP_90",
"SUB",
"PUSH1",
"ADD",
"OP_90",
"RETURN"
],
"start_pc": 1558
},
{
"end_pc": 1608,
"hash": "0x669f94037d5a0d0946dea62a2beac94c6f352959f96adcbfa69f5a9cec122234",
"opcodes": [
"JUMPDEST",
"PUSH1",
"OP_80",
"MLOAD",
"PUSH1",
"PUSH1",
"PUSH1",
"EXP",
"SUB",
"OP_92",
"OP_90",
"OP_92",
"AND",
"OP_82",
"MSTORE",
"MLOAD",
"OP_90",
"OP_81",
"OP_90",
"SUB",
"PUSH1",
"ADD",
"OP_90",
"RETURN"
],
"start_pc": 1580
},
{
"end_pc": 1643,
"hash": "0x1eedb53c0319d908d1becb07581181c5ce6ecf1caf4bfa10373c090766a1b37f",
"opcodes": [
"JUMPDEST",
"PUSH1",
"PUSH1",
"PUSH1",
"EXP",
"SUB",
"OP_83",
"AND",
"PUSH1",
"OP_90",
"OP_81",
"MSTORE",
"PUSH1",
"PUSH1",
"MSTORE",
"PUSH1",
"OP_90",
"SHA3",
"SLOAD",
"OP_80",
"OP_83",
"ADD",
"LT",
"ISZERO",
"PUSH2",
"JUMPI"
],
"start_pc": 1609
},
{
"end_pc": 1647,
"hash": "0x1cd39cd3332b48d38db8ae117f6f0c1db006b9f65a06b62541df662ffe845335",
"opcodes": [
"PUSH2",
"JUMP"
],
"start_pc": 1644
},
{
"end_pc": 1719,
"hash": "0xf5c1a4e1207488418dc5b77db9d6125b1f4159a5417bf7cbce917eeb433b6f89",
"opcodes": [
"JUMPDEST",
"PUSH1",
"PUSH1",
"PUSH1",
"EXP",
"SUB",
"OP_84",
"OP_81",
"AND",
"PUSH1",
"OP_81",
"OP_81",
"MSTORE",
"PUSH1",
"PUSH1",
"OP_90",
"OP_81",
"MSTORE",
"PUSH1",
"OP_80",
"OP_83",
"SHA3",
"CALLER",
"OP_90",
"OP_95",
"AND",
"OP_80",
"OP_84",
"MSTORE",
"OP_94",
"OP_82",
"MSTORE",
"OP_80",
"OP_83",
"SHA3",
"SLOAD",
"OP_93",
"OP_83",
"MSTORE",
"PUSH1",
"OP_82",
"MSTORE",
"OP_80",
"OP_83",
"SHA3",
"OP_94",
"OP_83",
"MSTORE",
"OP_93",
"OP_90",
"MSTORE",
"OP_91",
"OP_90",
"OP_91",
"SHA3",
"SLOAD",
"OP_83",
"ADD",
"GT",
"ISZERO",
"PUSH2",
"JUMPI"
],
"start_pc": 1648
},
{
"end_pc": 1723,
"hash": "0xc664288fbb382452904587d5a40756917717d96b0a29728c77e441c0bce29d0c",
"opcodes": [
"PUSH2",
"JUMP"
],
"start_pc": 1720
},
{
"end_pc": 1843,
"hash": "0xd9c5115daff2abebfe219ef7054678ac64d33eb844597912d274dee41bfdeced",
"opcodes": [
"JUMPDEST",
"PUSH1",
"PUSH1",
"PUSH1",
"EXP",
"SUB",
"OP_84",
"OP_81",
"AND",
"PUSH1",
"OP_81",
"OP_81",
"MSTORE",
"PUSH1",
"PUSH1",
"OP_90",
"OP_81",
"MSTORE",
"PUSH1",
"OP_80",
"OP_83",
"SHA3",
"OP_80",
"SLOAD",
"OP_88",
"OP_90",
"SUB",
"OP_90",
"SSTORE",
"OP_87",
"OP_85",
"AND",
exec
/bin/bash -lc "sed -n '1821,2080p' BYTECODE_BUNDLE.json" in /tmp/codex-k49mbjia
succeeded in 0ms:
"OP_80",
"OP_84",
"MSTORE",
"OP_81",
"OP_84",
"SHA3",
"OP_80",
"SLOAD",
"OP_89",
"ADD",
"OP_90",
"SSTORE",
"OP_84",
"OP_84",
"MSTORE",
"PUSH1",
"OP_83",
"MSTORE",
"OP_81",
"OP_84",
"SHA3",
"CALLER",
"OP_90",
"OP_96",
"AND",
"OP_84",
"MSTORE",
"OP_94",
"OP_82",
"MSTORE",
"OP_91",
"OP_82",
"OP_90",
"SHA3",
"OP_80",
"SLOAD",
"OP_87",
"ADD",
"OP_90",
"SSTORE",
"OP_81",
"MLOAD",
"OP_86",
"OP_81",
"MSTORE",
"OP_91",
"MLOAD",
"PUSH1",
"OP_80",
"MLOAD",
"PUSH1",
"PUSH2",
"OP_83",
"CODECOPY",
"OP_81",
"MLOAD",
"OP_91",
"MSTORE",
"OP_92",
"OP_81",
"OP_90",
"SUB",
"OP_90",
"OP_91",
"ADD",
"OP_90",
"OP_A3",
"POP",
"PUSH1",
"OP_93",
"OP_92",
"POP",
"POP",
"POP",
"JUMP"
],
"start_pc": 1724
},
{
"end_pc": 1877,
"hash": "0xb602e73358584ce3549e056be5853579eef45d1bdd8d40e242d8415f902655ce",
"opcodes": [
"JUMPDEST",
"PUSH1",
"OP_80",
"SLOAD",
"PUSH20",
"NOT",
"AND",
"OP_82",
"OR",
"OP_90",
"SSTORE",
"POP",
"JUMP"
],
"start_pc": 1844
},
{
"end_pc": 1891,
"hash": "0x62f6fbc21842280475a9ecc962c03f1d8180aa52c7ada1219e511026a683e606",
"opcodes": [
"JUMPDEST",
"OP_82",
"ADD",
"OP_91",
"OP_90",
"PUSH1",
"MSTORE",
"PUSH1",
"PUSH1",
"SHA3",
"OP_90"
],
"start_pc": 1878
},
{
"end_pc": 1911,
"hash": "0x40be60a239975570fbeecd18f6a08ed333a5f60c22b744c65f7db612f56542a0",
"opcodes": [
"JUMPDEST",
"OP_81",
"SLOAD",
"OP_81",
"MSTORE",
"OP_90",
"PUSH1",
"ADD",
"OP_90",
"PUSH1",
"ADD",
"OP_80",
"OP_83",
"GT",
"PUSH2",
"JUMPI"
],
"start_pc": 1892
},
{
"end_pc": 1920,
"hash": "0xa716e2e9770e136bb9e10793cd3f24af1b72b9a0845d7de9ed0e0c1bce21f9c9",
"opcodes": [
"OP_82",
"OP_90",
"SUB",
"PUSH1",
"AND",
"OP_82",
"ADD",
"OP_91"
],
"start_pc": 1912
},
{
"end_pc": 1928,
"hash": "0xc00e4177838cf3b59ea2c59c147a9c6f252999335fb656a8ac0432b15649b875",
"opcodes": [
"JUMPDEST",
"POP",
"POP",
"POP",
"POP",
"POP",
"OP_81",
"JUMP"
],
"start_pc": 1921
},
{
"end_pc": 1936,
"hash": "0x20cb33d93425bac3ab7f324d933c28b682832f8cbf0b44d17c7595b744682f9f",
"opcodes": [
"JUMPDEST",
"POP",
"OP_93",
"OP_92",
"POP",
"POP",
"POP",
"JUMP"
],
"start_pc": 1929
},
{
"end_pc": 1971,
"hash": "0x2d3e95d62fe3a8c00a33feddbfc6302b81624a06e8e30ce22c883da3d85331be",
"opcodes": [
"JUMPDEST",
"PUSH1",
"PUSH1",
"PUSH1",
"EXP",
"SUB",
"OP_82",
"AND",
"PUSH1",
"OP_90",
"OP_81",
"MSTORE",
"PUSH1",
"PUSH1",
"MSTORE",
"PUSH1",
"OP_90",
"SHA3",
"SLOAD",
"OP_81",
"OP_81",
"ADD",
"LT",
"ISZERO",
"PUSH2",
"JUMPI"
],
"start_pc": 1937
},
{
"end_pc": 1975,
"hash": "0x60066b85e23eb33dac21f019c3f7a92e0a1890583c5c965e9449b98a149e0b16",
"opcodes": [
"PUSH2",
"JUMP"
],
"start_pc": 1972
},
{
"end_pc": 2065,
"hash": "0xbc4ff2a08cd069ed107ea0ad1df827d097b3cfa2750ff0c2f2a85d15af37651f",
"opcodes": [
"JUMPDEST",
"CALLER",
"PUSH1",
"PUSH1",
"PUSH1",
"EXP",
"SUB",
"OP_90",
"OP_81",
"AND",
"PUSH1",
"OP_81",
"OP_81",
"MSTORE",
"PUSH1",
"PUSH1",
"OP_90",
"OP_81",
"MSTORE",
"PUSH1",
"OP_80",
"OP_83",
"SHA3",
"OP_80",
"SLOAD",
"OP_87",
"OP_90",
"SUB",
"OP_90",
"SSTORE",
exec
/bin/bash -lc "sed -n '2081,2340p' BYTECODE_BUNDLE.json" in /tmp/codex-k49mbjia
succeeded in 0ms:
"OP_93",
"OP_86",
"AND",
"OP_80",
"OP_83",
"MSTORE",
"OP_91",
"OP_84",
"OP_90",
"SHA3",
"OP_80",
"SLOAD",
"OP_86",
"ADD",
"OP_90",
"SSTORE",
"OP_83",
"MLOAD",
"OP_85",
"OP_81",
"MSTORE",
"OP_93",
"MLOAD",
"OP_91",
"OP_93",
"PUSH1",
"OP_80",
"MLOAD",
"PUSH1",
"PUSH2",
"OP_83",
"CODECOPY",
"OP_81",
"MLOAD",
"OP_91",
"MSTORE",
"OP_92",
"OP_90",
"OP_81",
"OP_90",
"SUB",
"OP_90",
"OP_91",
"ADD",
"OP_90",
"OP_A3",
"POP",
"POP",
"JUMP"
],
"start_pc": 1976
},
{
"end_pc": 2070,
"hash": "0xc0176cee6048c3f20926f13a48426823f1c5c1b83f0c4a625a7fea2b592083dc",
"opcodes": [
"JUMPDEST",
"PUSH1",
"SSTORE",
"JUMP"
],
"start_pc": 2066
},
{
"end_pc": 2104,
"hash": "0x30fa4cf44feb8d674f68176fccfd9b33e03bab0e8173b661b9bc47c198bf92e7",
"opcodes": [
"JUMPDEST",
"PUSH1",
"OP_80",
"SLOAD",
"PUSH20",
"NOT",
"AND",
"OP_82",
"OR",
"OP_90",
"SSTORE",
"POP",
"JUMP"
],
"start_pc": 2071
},
{
"end_pc": 2121,
"hash": "0xd164beccd80499513d79333026a2c33fd1419c9a9f5301519f28e91db6608e0a",
"opcodes": [
"JUMPDEST",
"PUSH2",
"OP_81",
"PUSH4",
"AND",
"LT",
"ISZERO",
"PUSH2",
"JUMPI"
],
"start_pc": 2105
},
{
"end_pc": 2125,
"hash": "0xb71252368399a4353bc937f514317e336f1ce985d9cbed98c92c079aeaf8a731",
"opcodes": [
"PUSH2",
"JUMP"
],
"start_pc": 2122
},
{
"end_pc": 2143,
"hash": "0x58c66df3c68a2921e5f6ab05fd5532ecc1c621525600198f801e9382ca96d41d",
"opcodes": [
"JUMPDEST",
"PUSH1",
"OP_80",
"SLOAD",
"PUSH4",
"NOT",
"AND",
"OP_82",
"OR",
"OP_90",
"SSTORE",
"POP",
"JUMP"
],
"start_pc": 2126
},
{
"end_pc": 2209,
"hash": "0xb30e7a611c05d0eab0b4a4508a3e76ecb7e966a82b859b6ffaa2b54d325f2c40",
"opcodes": [
"JUMPDEST",
"PUSH1",
"SLOAD",
"ADDRESS",
"PUSH1",
"PUSH1",
"PUSH1",
"EXP",
"SUB",
"AND",
"BALANCE",
"PUSH5",
"MUL",
"DIV",
"PUSH1",
"SSTORE",
"PUSH1",
"OP_80",
"MLOAD",
"NUMBER",
"OP_81",
"MSTORE",
"TIMESTAMP",
"PUSH1",
"OP_82",
"ADD",
"MSTORE",
"OP_80",
"OP_82",
"ADD",
"OP_86",
"OP_90",
"MSTORE",
"OP_90",
"MLOAD",
"OP_90",
"OP_81",
"OP_90",
"SUB",
"PUSH1",
"ADD",
"OP_90",
"SHA3",
"PUSH2",
"OP_90",
"PUSH1",
"PUSH2",
"JUMP"
],
"start_pc": 2144
},
{
"end_pc": 2228,
"hash": "0x2f0fef80baac7f9c489289ab61e6314496c533cb624253ffbeec44ade595a80f",
"opcodes": [
"JUMPDEST",
"PUSH1",
"SLOAD",
"OP_90",
"OP_91",
"POP",
"PUSH4",
"AND",
"OP_81",
"LT",
"PUSH2",
"JUMPI"
],
"start_pc": 2210
},
{
"end_pc": 2246,
"hash": "0xf65a7fafabb52aeaa735b88ab4392006406b9a1c6ad1c76ed92a2958de14f7e9",
"opcodes": [
"PUSH1",
"OP_92",
"POP",
"PUSH2",
"PUSH5",
"OP_85",
"DIV",
"DIV",
"OP_91",
"POP"
],
"start_pc": 2229
},
{
"end_pc": 2263,
"hash": "0x61d27c6cd8154b989ca85ce1dbb7207bb69da9e58b3994d0e16a53a8f7012354",
"opcodes": [
"JUMPDEST",
"PUSH1",
"SLOAD",
"PUSH4",
"AND",
"OP_81",
"LT",
"ISZERO",
"PUSH2",
"JUMPI"
],
"start_pc": 2247
},
{
"end_pc": 2276,
"hash": "0x1998626999425d00e90025f41ae6b63ced5ea38c83ecf2d8b40a57f73e0f9cbe",
"opcodes": [
"PUSH5",
"PUSH1",
"OP_85",
"MUL",
"DIV",
"OP_92",
"POP"
],
"start_pc": 2264
},
{
"end_pc": 2440,
"hash": "0x7fdee35cf578500ca72af2b6ab5c6e8ae975bc88d15b0ce471cb8032b3d4bae9",
"opcodes": [
"JUMPDEST",
"CALLER",
"PUSH1",
"PUSH1",
"PUSH1",
"EXP",
exec
/bin/bash -lc "sed -n '2341,2600p' BYTECODE_BUNDLE.json" in /tmp/codex-k49mbjia
succeeded in 0ms:
"SUB",
"OP_90",
"OP_81",
"AND",
"PUSH1",
"OP_81",
"OP_81",
"MSTORE",
"PUSH1",
"PUSH1",
"OP_90",
"OP_81",
"MSTORE",
"PUSH1",
"OP_80",
"OP_83",
"SHA3",
"OP_80",
"SLOAD",
"OP_89",
"ADD",
"OP_90",
"SSTORE",
"PUSH1",
"SLOAD",
"OP_85",
"AND",
"OP_83",
"MSTORE",
"OP_80",
"OP_83",
"SHA3",
"OP_80",
"SLOAD",
"OP_88",
"ADD",
"OP_90",
"SSTORE",
"ADDRESS",
"OP_90",
"OP_94",
"AND",
"OP_80",
"OP_83",
"MSTORE",
"OP_91",
"OP_84",
"OP_90",
"SHA3",
"OP_80",
"SLOAD",
"OP_87",
"OP_89",
"ADD",
"OP_90",
"SUB",
"OP_90",
"SSTORE",
"OP_83",
"MLOAD",
"OP_87",
"OP_81",
"MSTORE",
"OP_93",
"MLOAD",
"OP_92",
"OP_93",
"OP_91",
"OP_92",
"PUSH1",
"OP_80",
"MLOAD",
"PUSH1",
"PUSH2",
"OP_83",
"CODECOPY",
"OP_81",
"MLOAD",
"OP_91",
"MSTORE",
"OP_92",
"OP_81",
"OP_90",
"SUB",
"OP_90",
"OP_91",
"ADD",
"OP_90",
"OP_A3",
"PUSH1",
"SLOAD",
"PUSH1",
"OP_80",
"MLOAD",
"OP_84",
"OP_81",
"MSTORE",
"OP_90",
"MLOAD",
"PUSH1",
"PUSH1",
"PUSH1",
"EXP",
"SUB",
"OP_92",
"OP_83",
"AND",
"OP_92",
"ADDRESS",
"AND",
"OP_91",
"PUSH1",
"OP_80",
"MLOAD",
"PUSH1",
"PUSH2",
"OP_83",
"CODECOPY",
"OP_81",
"MLOAD",
"OP_91",
"MSTORE",
"OP_91",
"OP_90",
"OP_81",
"OP_90",
"SUB",
"PUSH1",
"ADD",
"OP_90",
"OP_A3",
"POP",
"POP",
"POP",
"OP_90",
"JUMP"
],
"start_pc": 2277
},
{
"end_pc": 2566,
"hash": "0xfb67ff2988fcd1ff57ab12e542f5ddb8f672d84eb3abb47c648df7c029c2114b",
"opcodes": [
"JUMPDEST",
"POP",
"ADDRESS",
"PUSH1",
"PUSH1",
"PUSH1",
"EXP",
"SUB",
"OP_90",
"OP_81",
"AND",
"PUSH1",
"OP_90",
"OP_81",
"MSTORE",
"PUSH1",
"PUSH1",
"MSTORE",
"PUSH1",
"OP_80",
"OP_82",
"SHA3",
"OP_80",
"SLOAD",
"OP_85",
"ADD",
"OP_90",
"SSTORE",
"CALLER",
"OP_90",
"OP_92",
"AND",
"OP_80",
"OP_82",
"MSTORE",
"OP_82",
"OP_82",
"SHA3",
"OP_80",
"SLOAD",
"OP_85",
"OP_90",
"SUB",
"OP_90",
"SSTORE",
"OP_91",
"MLOAD",
"PUSH1",
"SLOAD",
"OP_84",
"MUL",
"OP_92",
"OP_91",
"OP_90",
"OP_83",
"OP_90",
"OP_82",
"OP_81",
"OP_81",
"OP_81",
"OP_85",
"OP_88",
"OP_83",
"CALL",
"POP",
"POP",
"PUSH1",
"OP_80",
"MLOAD",
"OP_86",
"OP_81",
"MSTORE",
"OP_90",
"MLOAD",
"ADDRESS",
"PUSH1",
"PUSH1",
"PUSH1",
"EXP",
"SUB",
"AND",
"OP_94",
"OP_93",
"POP",
"PUSH1",
"OP_80",
"MLOAD",
"PUSH1",
"PUSH2",
"OP_83",
"CODECOPY",
"OP_81",
"MLOAD",
"OP_91",
"MSTORE",
"OP_92",
"POP",
"OP_90",
"OP_81",
"OP_90",
"SUB",
"PUSH1",
"ADD",
"OP_90",
"OP_A3",
"OP_91",
"OP_90",
"POP",
"JUMP"
],
"start_pc": 2441
},
{
"end_pc": 2598,
"hash": "0x18e035468542a2e12d80993ef26ec265f10215a2a3d8caa004cc39121f410543",
"opcodes": [
"OP_DD",
exec
/bin/bash -lc "sed -n '2601,2860p' BYTECODE_BUNDLE.json" in /tmp/codex-k49mbjia
succeeded in 0ms:
"CALLCODE",
"MSTORE",
"OP_AD",
"SHL",
"OP_E2",
"OP_C8",
"OP_9B",
"PUSH10",
"CALL",
"PUSH4",
"CREATE2",
"GAS",
"OP_4D",
"CREATE2",
"OP_23",
"OP_B3",
"OP_EF"
],
"start_pc": 2567
}
],
"callsites": [
{
"opcode": "CALL",
"pc": 1126,
"returndata_checked": null,
"target_expression_category": "computed",
"value_expression_category": "computed"
},
{
"opcode": "CALL",
"pc": 1194,
"returndata_checked": null,
"target_expression_category": "computed",
"value_expression_category": "computed"
},
{
"opcode": "CALL",
"pc": 1458,
"returndata_checked": null,
"target_expression_category": "computed",
"value_expression_category": "computed"
},
{
"opcode": "CALL",
"pc": 2512,
"returndata_checked": null,
"target_expression_category": "computed",
"value_expression_category": "computed"
},
{
"opcode": "CALLCODE",
"pc": 2568,
"returndata_checked": null,
"target_expression_category": "computed",
"value_expression_category": "computed"
},
{
"opcode": "CALL",
"pc": 2586,
"returndata_checked": null,
"target_expression_category": "computed",
"value_expression_category": "computed"
}
],
"cfg_edges": [
{
"from": "bb:0",
"to": "bb:262",
"type": "control_flow"
},
{
"from": "bb:0",
"to": "bb:11",
"type": "control_flow_fallthrough"
},
{
"from": "bb:11",
"to": "bb:264",
"type": "control_flow"
},
{
"from": "bb:11",
"to": "bb:31",
"type": "control_flow_fallthrough"
},
{
"from": "bb:31",
"to": "bb:357",
"type": "control_flow"
},
{
"from": "bb:31",
"to": "bb:42",
"type": "control_flow_fallthrough"
},
{
"from": "bb:42",
"to": "bb:366",
"type": "control_flow"
},
{
"from": "bb:42",
"to": "bb:53",
"type": "control_flow_fallthrough"
},
{
"from": "bb:53",
"to": "bb:400",
"type": "control_flow"
},
{
"from": "bb:53",
"to": "bb:64",
"type": "control_flow_fallthrough"
},
{
"from": "bb:64",
"to": "bb:415",
"type": "control_flow"
},
{
"from": "bb:64",
"to": "bb:75",
"type": "control_flow_fallthrough"
},
{
"from": "bb:75",
"to": "bb:465",
"type": "control_flow"
},
{
"from": "bb:75",
"to": "bb:86",
"type": "control_flow_fallthrough"
},
{
"from": "bb:86",
"to": "bb:477",
"type": "control_flow"
},
{
"from": "bb:86",
"to": "bb:97",
"type": "control_flow_fallthrough"
},
{
"from": "bb:97",
"to": "bb:563",
"type": "control_flow"
},
{
"from": "bb:97",
"to": "bb:108",
"type": "control_flow_fallthrough"
},
{
"from": "bb:108",
"to": "bb:587",
"type": "control_flow"
},
{
"from": "bb:108",
"to": "bb:119",
"type": "control_flow_fallthrough"
},
{
"from": "bb:119",
"to": "bb:620",
"type": "control_flow"
},
{
"from": "bb:119",
"to": "bb:130",
"type": "control_flow_fallthrough"
},
{
"from": "bb:130",
"to": "bb:638",
"type": "control_flow"
},
{
"from": "bb:130",
"to": "bb:141",
"type": "control_flow_fallthrough"
},
{
"from": "bb:141",
"to": "bb:729",
"type": "control_flow"
},
{
"from": "bb:141",
"to": "bb:152",
"type": "control_flow_fallthrough"
},
{
"from": "bb:152",
"to": "bb:756",
"type": "control_flow"
},
{
"from": "bb:152",
"to": "bb:163",
"type": "control_flow_fallthrough"
},
{
"from": "bb:163",
"to": "bb:803",
"type": "control_flow"
},
{
"from": "bb:163",
"to": "bb:174",
"type": "control_flow_fallthrough"
},
{
"from": "bb:174",
"to": "bb:812",
"type": "control_flow"
},
{
"from": "bb:174",
"to": "bb:185",
"type": "control_flow_fallthrough"
},
{
"from": "bb:185",
"to": "bb:821",
"type": "control_flow"
},
{
"from": "bb:185",
"to": "bb:196",
"type": "control_flow_fallthrough"
},
{
"from": "bb:196",
"to": "bb:854",
"type": "control_flow"
},
{
"from": "bb:196",
"to": "bb:207",
"type": "control_flow_fallthrough"
},
{
"from": "bb:207",
"to": "bb:1213",
"type": "control_flow"
},
{
"from": "bb:207",
"to": "bb:218",
"type": "control_flow_fallthrough"
},
{
"from": "bb:218",
"to": "bb:1250",
"type": "control_flow"
exec
/bin/bash -lc "rg -n 'selectors|storage|detector|evidence|slot|proxy|selector' BYTECODE_BUNDLE.json" in /tmp/codex-k49mbjia
succeeded in 0ms:
3199: "dispatcher_type": "selector_jump_table",
3203: "selector": "0x06fdde03"
3207: "selector": "0x18160ddd"
3211: "selector": "0x1fe9eabc"
3215: "selector": "0x233de126"
3219: "selector": "0x23b872dd"
3223: "selector": "0x313ce567"
3227: "selector": "0x41fa4876"
3231: "selector": "0x70a08231"
3235: "selector": "0x7f2a8a80"
3239: "selector": "0x8da5cb5b"
3243: "selector": "0x95d89b41"
3247: "selector": "0xa6f2ae3a"
3251: "selector": "0xa9059cbb"
3255: "selector": "0xaa295de9"
3259: "selector": "0xbc094049"
3263: "selector": "0xc4839e8b"
3267: "selector": "0xcae9ca51"
3271: "selector": "0xdc3080f2"
3275: "selector": "0xdd62ed3e"
3279: "selector": "0xe4849b32"
3283: "selector": "0xf2fde38b"
3287: "selector": "0xff9b3acf"
3296: "selector": "0x06fdde03",
3303: "storage": {
3305: "slots": [
3309: "slot": "0x0000000000000000000000000000000000000000000000000000000000000001"
3314: "slot": "0x0000000000000000000000000000000000000000000000000000000000000100"
3319: "slot": "0x0000000000000000000000000000000000000000000000000000000000000004"
3324: "slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
3329: "slot": "0x0000000000000000000000000000000000000000000000000000000000000007"
3334: "slot": "0x0000000000000000000000000000000000000000000000000000000000000003"
3339: "slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
3344: "slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
3349: "slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
3354: "slot": "0x0000000000000000000000000000000000000000000000000000000000000100"
3359: "slot": "0x0000000000000000000000000000000000000000000000000000000000000006"
3364: "slot": "0x0000000000000000000000000000000000000000000000000000000000000006"
3369: "slot": "0x0000000000000000000000000000000000000000000000000000000000000008"
3374: "slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
3379: "slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
3384: "slot": "0x0000000000000000000000000000000000000000000000000000000000000004"
3389: "slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
3394: "slot": "0x0000000000000000000000000000000000000000000000000000000000000005"
3399: "slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
3404: "slot": "0x0000000000000000000000000000000000000000000000000000000000000005"
3409: "slot": "0x0000000000000000000000000000000000000000000000000000000000000007"
3414: "slot": "0x0000000000000000000000000000000000000000000000000000000000000004"
3419: "slot": "0x0000000000000000000000000000000000000000000000000000000000000007"
3424: "slot": "0x0000000000000000000000000000000000000000000000000000000000000007"
3429: "slot": "0x0000000000000000000000000000000000000000000000000000000000000005"
3434: "slot": "0x0000000000000000000000000000000000000000000000000000000000000005"
3439: "slot": "0x0000000000000000000000000000000000000000000000000000000000000008"
3450: "selector": "0x18160ddd",
3457: "storage": {
3459: "slots": [
3463: "slot": "0x0000000000000000000000000000000000000000000000000000000000000001"
3468: "slot": "0x0000000000000000000000000000000000000000000000000000000000000100"
3473: "slot": "0x0000000000000000000000000000000000000000000000000000000000000004"
3478: "slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
3483: "slot": "0x0000000000000000000000000000000000000000000000000000000000000007"
3488: "slot": "0x0000000000000000000000000000000000000000000000000000000000000003"
3493: "slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
3498: "slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
3503: "slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
3508: "slot": "0x0000000000000000000000000000000000000000000000000000000000000100"
3513: "slot": "0x0000000000000000000000000000000000000000000000000000000000000006"
3518: "slot": "0x0000000000000000000000000000000000000000000000000000000000000006"
3523: "slot": "0x0000000000000000000000000000000000000000000000000000000000000008"
3528: "slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
3533: "slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
3538: "slot": "0x0000000000000000000000000000000000000000000000000000000000000004"
3543: "slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
3548: "slot": "0x0000000000000000000000000000000000000000000000000000000000000005"
3553: "slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
3558: "slot": "0x0000000000000000000000000000000000000000000000000000000000000005"
3563: "slot": "0x0000000000000000000000000000000000000000000000000000000000000007"
3568: "slot": "0x0000000000000000000000000000000000000000000000000000000000000004"
3573: "slot": "0x0000000000000000000000000000000000000000000000000000000000000007"
3578: "slot": "0x0000000000000000000000000000000000000000000000000000000000000007"
3583: "slot": "0x0000000000000000000000000000000000000000000000000000000000000005"
3588: "slot": "0x0000000000000000000000000000000000000000000000000000000000000005"
3593: "slot": "0x0000000000000000000000000000000000000000000000000000000000000008"
3604: "selector": "0x1fe9eabc",
3611: "storage": {
3613: "slots": [
3617: "slot": "0x0000000000000000000000000000000000000000000000000000000000000001"
3622: "slot": "0x0000000000000000000000000000000000000000000000000000000000000100"
3627: "slot": "0x0000000000000000000000000000000000000000000000000000000000000004"
3632: "slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
3637: "slot": "0x0000000000000000000000000000000000000000000000000000000000000007"
3642: "slot": "0x0000000000000000000000000000000000000000000000000000000000000003"
3647: "slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
3652: "slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
3657: "slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
3662: "slot": "0x0000000000000000000000000000000000000000000000000000000000000100"
3667: "slot": "0x0000000000000000000000000000000000000000000000000000000000000006"
3672: "slot": "0x0000000000000000000000000000000000000000000000000000000000000006"
3677: "slot": "0x0000000000000000000000000000000000000000000000000000000000000008"
3682: "slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
3687: "slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
3692: "slot": "0x0000000000000000000000000000000000000000000000000000000000000004"
3697: "slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
3702: "slot": "0x0000000000000000000000000000000000000000000000000000000000000005"
3707: "slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
3712: "slot": "0x0000000000000000000000000000000000000000000000000000000000000005"
3717: "slot": "0x0000000000000000000000000000000000000000000000000000000000000007"
3722: "slot": "0x0000000000000000000000000000000000000000000000000000000000000004"
3727: "slot": "0x0000000000000000000000000000000000000000000000000000000000000007"
3732: "slot": "0x0000000000000000000000000000000000000000000000000000000000000007"
3737: "slot": "0x0000000000000000000000000000000000000000000000000000000000000005"
3742: "slot": "0x0000000000000000000000000000000000000000000000000000000000000005"
3747: "slot": "0x0000000000000000000000000000000000000000000000000000000000000008"
3758: "selector": "0x233de126",
3765: "storage": {
3767: "slots": [
3771: "slot": "0x0000000000000000000000000000000000000000000000000000000000000001"
3776: "slot": "0x0000000000000000000000000000000000000000000000000000000000000100"
3781: "slot": "0x0000000000000000000000000000000000000000000000000000000000000004"
3786: "slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
3791: "slot": "0x0000000000000000000000000000000000000000000000000000000000000007"
3796: "slot": "0x0000000000000000000000000000000000000000000000000000000000000003"
3801: "slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
3806: "slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
3811: "slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
3816: "slot": "0x0000000000000000000000000000000000000000000000000000000000000100"
3821: "slot": "0x0000000000000000000000000000000000000000000000000000000000000006"
3826: "slot": "0x0000000000000000000000000000000000000000000000000000000000000006"
3831: "slot": "0x0000000000000000000000000000000000000000000000000000000000000008"
3836: "slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
3841: "slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
3846: "slot": "0x0000000000000000000000000000000000000000000000000000000000000004"
3851: "slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
3856: "slot": "0x0000000000000000000000000000000000000000000000000000000000000005"
3861: "slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
3866: "slot": "0x0000000000000000000000000000000000000000000000000000000000000005"
3871: "slot": "0x0000000000000000000000000000000000000000000000000000000000000007"
3876: "slot": "0x0000000000000000000000000000000000000000000000000000000000000004"
3881: "slot": "0x0000000000000000000000000000000000000000000000000000000000000007"
3886: "slot": "0x0000000000000000000000000000000000000000000000000000000000000007"
3891: "slot": "0x0000000000000000000000000000000000000000000000000000000000000005"
3896: "slot": "0x0000000000000000000000000000000000000000000000000000000000000005"
3901: "slot": "0x0000000000000000000000000000000000000000000000000000000000000008"
3912: "selector": "0x23b872dd",
3919: "storage": {
3921: "slots": [
3925: "slot": "0x0000000000000000000000000000000000000000000000000000000000000001"
3930: "slot": "0x0000000000000000000000000000000000000000000000000000000000000100"
3935: "slot": "0x0000000000000000000000000000000000000000000000000000000000000004"
3940: "slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
3945: "slot": "0x0000000000000000000000000000000000000000000000000000000000000007"
3950: "slot": "0x0000000000000000000000000000000000000000000000000000000000000003"
3955: "slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
3960: "slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
3965: "slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
3970: "slot": "0x0000000000000000000000000000000000000000000000000000000000000100"
3975: "slot": "0x0000000000000000000000000000000000000000000000000000000000000006"
3980: "slot": "0x0000000000000000000000000000000000000000000000000000000000000006"
3985: "slot": "0x0000000000000000000000000000000000000000000000000000000000000008"
3990: "slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
3995: "slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
4000: "slot": "0x0000000000000000000000000000000000000000000000000000000000000004"
4005: "slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
4010: "slot": "0x0000000000000000000000000000000000000000000000000000000000000005"
4015: "slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
4020: "slot": "0x0000000000000000000000000000000000000000000000000000000000000005"
4025: "slot": "0x0000000000000000000000000000000000000000000000000000000000000007"
4030: "slot": "0x0000000000000000000000000000000000000000000000000000000000000004"
4035: "slot": "0x0000000000000000000000000000000000000000000000000000000000000007"
4040: "slot": "0x0000000000000000000000000000000000000000000000000000000000000007"
4045: "slot": "0x0000000000000000000000000000000000000000000000000000000000000005"
4050: "slot": "0x0000000000000000000000000000000000000000000000000000000000000005"
4055: "slot": "0x0000000000000000000000000000000000000000000000000000000000000008"
4066: "selector": "0x313ce567",
4073: "storage": {
4075: "slots": [
4079: "slot": "0x0000000000000000000000000000000000000000000000000000000000000001"
4084: "slot": "0x0000000000000000000000000000000000000000000000000000000000000100"
4089: "slot": "0x0000000000000000000000000000000000000000000000000000000000000004"
4094: "slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
4099: "slot": "0x0000000000000000000000000000000000000000000000000000000000000007"
4104: "slot": "0x0000000000000000000000000000000000000000000000000000000000000003"
4109: "slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
4114: "slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
4119: "slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
4124: "slot": "0x0000000000000000000000000000000000000000000000000000000000000100"
4129: "slot": "0x0000000000000000000000000000000000000000000000000000000000000006"
4134: "slot": "0x0000000000000000000000000000000000000000000000000000000000000006"
4139: "slot": "0x0000000000000000000000000000000000000000000000000000000000000008"
4144: "slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
4149: "slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
4154: "slot": "0x0000000000000000000000000000000000000000000000000000000000000004"
4159: "slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
4164: "slot": "0x0000000000000000000000000000000000000000000000000000000000000005"
4169: "slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
4174: "slot": "0x0000000000000000000000000000000000000000000000000000000000000005"
4179: "slot": "0x0000000000000000000000000000000000000000000000000000000000000007"
4184: "slot": "0x0000000000000000000000000000000000000000000000000000000000000004"
4189: "slot": "0x0000000000000000000000000000000000000000000000000000000000000007"
4194: "slot": "0x0000000000000000000000000000000000000000000000000000000000000007"
4199: "slot": "0x0000000000000000000000000000000000000000000000000000000000000005"
4204: "slot": "0x0000000000000000000000000000000000000000000000000000000000000005"
4209: "slot": "0x0000000000000000000000000000000000000000000000000000000000000008"
4220: "selector": "0x41fa4876",
4227: "storage": {
4229: "slots": [
4233: "slot": "0x0000000000000000000000000000000000000000000000000000000000000001"
4238: "slot": "0x0000000000000000000000000000000000000000000000000000000000000100"
4243: "slot": "0x0000000000000000000000000000000000000000000000000000000000000004"
4248: "slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
4253: "slot": "0x0000000000000000000000000000000000000000000000000000000000000007"
4258: "slot": "0x0000000000000000000000000000000000000000000000000000000000000003"
4263: "slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
4268: "slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
4273: "slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
4278: "slot": "0x0000000000000000000000000000000000000000000000000000000000000100"
4283: "slot": "0x0000000000000000000000000000000000000000000000000000000000000006"
4288: "slot": "0x0000000000000000000000000000000000000000000000000000000000000006"
4293: "slot": "0x0000000000000000000000000000000000000000000000000000000000000008"
4298: "slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
4303: "slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
4308: "slot": "0x0000000000000000000000000000000000000000000000000000000000000004"
4313: "slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
4318: "slot": "0x0000000000000000000000000000000000000000000000000000000000000005"
4323: "slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
4328: "slot": "0x0000000000000000000000000000000000000000000000000000000000000005"
4333: "slot": "0x0000000000000000000000000000000000000000000000000000000000000007"
4338: "slot": "0x0000000000000000000000000000000000000000000000000000000000000004"
4343: "slot": "0x0000000000000000000000000000000000000000000000000000000000000007"
4348: "slot": "0x0000000000000000000000000000000000000000000000000000000000000007"
4353: "slot": "0x0000000000000000000000000000000000000000000000000000000000000005"
4358: "slot": "0x0000000000000000000000000000000000000000000000000000000000000005"
4363: "slot": "0x0000000000000000000000000000000000000000000000000000000000000008"
4374: "selector": "0x70a08231",
4381: "storage": {
4383: "slots": [
4387: "slot": "0x0000000000000000000000000000000000000000000000000000000000000001"
4392: "slot": "0x0000000000000000000000000000000000000000000000000000000000000100"
4397: "slot": "0x0000000000000000000000000000000000000000000000000000000000000004"
4402: "slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
4407: "slot": "0x0000000000000000000000000000000000000000000000000000000000000007"
4412: "slot": "0x0000000000000000000000000000000000000000000000000000000000000003"
4417: "slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
4422: "slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
4427: "slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
4432: "slot": "0x0000000000000000000000000000000000000000000000000000000000000100"
4437: "slot": "0x0000000000000000000000000000000000000000000000000000000000000006"
4442: "slot": "0x0000000000000000000000000000000000000000000000000000000000000006"
4447: "slot": "0x0000000000000000000000000000000000000000000000000000000000000008"
4452: "slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
4457: "slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
4462: "slot": "0x0000000000000000000000000000000000000000000000000000000000000004"
4467: "slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
4472: "slot": "0x0000000000000000000000000000000000000000000000000000000000000005"
4477: "slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
4482: "slot": "0x0000000000000000000000000000000000000000000000000000000000000005"
4487: "slot": "0x0000000000000000000000000000000000000000000000000000000000000007"
4492: "slot": "0x0000000000000000000000000000000000000000000000000000000000000004"
4497: "slot": "0x0000000000000000000000000000000000000000000000000000000000000007"
4502: "slot": "0x0000000000000000000000000000000000000000000000000000000000000007"
4507: "slot": "0x0000000000000000000000000000000000000000000000000000000000000005"
4512: "slot": "0x0000000000000000000000000000000000000000000000000000000000000005"
4517: "slot": "0x0000000000000000000000000000000000000000000000000000000000000008"
4528: "selector": "0x7f2a8a80",
4535: "storage": {
4537: "slots": [
4541: "slot": "0x0000000000000000000000000000000000000000000000000000000000000001"
4546: "slot": "0x0000000000000000000000000000000000000000000000000000000000000100"
4551: "slot": "0x0000000000000000000000000000000000000000000000000000000000000004"
4556: "slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
4561: "slot": "0x0000000000000000000000000000000000000000000000000000000000000007"
4566: "slot": "0x0000000000000000000000000000000000000000000000000000000000000003"
4571: "slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
4576: "slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
4581: "slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
4586: "slot": "0x0000000000000000000000000000000000000000000000000000000000000100"
4591: "slot": "0x0000000000000000000000000000000000000000000000000000000000000006"
4596: "slot": "0x0000000000000000000000000000000000000000000000000000000000000006"
4601: "slot": "0x0000000000000000000000000000000000000000000000000000000000000008"
4606: "slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
4611: "slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
4616: "slot": "0x0000000000000000000000000000000000000000000000000000000000000004"
4621: "slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
4626: "slot": "0x0000000000000000000000000000000000000000000000000000000000000005"
4631: "slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
4636: "slot": "0x0000000000000000000000000000000000000000000000000000000000000005"
4641: "slot": "0x0000000000000000000000000000000000000000000000000000000000000007"
4646: "slot": "0x0000000000000000000000000000000000000000000000000000000000000004"
4651: "slot": "0x0000000000000000000000000000000000000000000000000000000000000007"
4656: "slot": "0x0000000000000000000000000000000000000000000000000000000000000007"
4661: "slot": "0x0000000000000000000000000000000000000000000000000000000000000005"
4666: "slot": "0x0000000000000000000000000000000000000000000000000000000000000005"
4671: "slot": "0x0000000000000000000000000000000000000000000000000000000000000008"
4682: "selector": "0x8da5cb5b",
4689: "storage": {
4691: "slots": [
4695: "slot": "0x0000000000000000000000000000000000000000000000000000000000000001"
4700: "slot": "0x0000000000000000000000000000000000000000000000000000000000000100"
4705: "slot": "0x0000000000000000000000000000000000000000000000000000000000000004"
4710: "slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
4715: "slot": "0x0000000000000000000000000000000000000000000000000000000000000007"
4720: "slot": "0x0000000000000000000000000000000000000000000000000000000000000003"
4725: "slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
4730: "slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
4735: "slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
4740: "slot": "0x0000000000000000000000000000000000000000000000000000000000000100"
4745: "slot": "0x0000000000000000000000000000000000000000000000000000000000000006"
4750: "slot": "0x0000000000000000000000000000000000000000000000000000000000000006"
4755: "slot": "0x0000000000000000000000000000000000000000000000000000000000000008"
4760: "slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
4765: "slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
4770: "slot": "0x0000000000000000000000000000000000000000000000000000000000000004"
4775: "slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
4780: "slot": "0x0000000000000000000000000000000000000000000000000000000000000005"
4785: "slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
4790: "slot": "0x0000000000000000000000000000000000000000000000000000000000000005"
4795: "slot": "0x0000000000000000000000000000000000000000000000000000000000000007"
4800: "slot": "0x0000000000000000000000000000000000000000000000000000000000000004"
4805: "slot": "0x0000000000000000000000000000000000000000000000000000000000000007"
4810: "slot": "0x0000000000000000000000000000000000000000000000000000000000000007"
4815: "slot": "0x0000000000000000000000000000000000000000000000000000000000000005"
4820: "slot": "0x0000000000000000000000000000000000000000000000000000000000000005"
4825: "slot": "0x0000000000000000000000000000000000000000000000000000000000000008"
4836: "selector": "0x95d89b41",
4843: "storage": {
4845: "slots": [
4849: "slot": "0x0000000000000000000000000000000000000000000000000000000000000001"
4854: "slot": "0x0000000000000000000000000000000000000000000000000000000000000100"
4859: "slot": "0x0000000000000000000000000000000000000000000000000000000000000004"
4864: "slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
4869: "slot": "0x0000000000000000000000000000000000000000000000000000000000000007"
4874: "slot": "0x0000000000000000000000000000000000000000000000000000000000000003"
4879: "slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
4884: "slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
4889: "slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
4894: "slot": "0x0000000000000000000000000000000000000000000000000000000000000100"
4899: "slot": "0x0000000000000000000000000000000000000000000000000000000000000006"
4904: "slot": "0x0000000000000000000000000000000000000000000000000000000000000006"
4909: "slot": "0x0000000000000000000000000000000000000000000000000000000000000008"
4914: "slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
4919: "slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
4924: "slot": "0x0000000000000000000000000000000000000000000000000000000000000004"
4929: "slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
4934: "slot": "0x0000000000000000000000000000000000000000000000000000000000000005"
4939: "slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
4944: "slot": "0x0000000000000000000000000000000000000000000000000000000000000005"
4949: "slot": "0x0000000000000000000000000000000000000000000000000000000000000007"
4954: "slot": "0x0000000000000000000000000000000000000000000000000000000000000004"
4959: "slot": "0x0000000000000000000000000000000000000000000000000000000000000007"
4964: "slot": "0x0000000000000000000000000000000000000000000000000000000000000007"
4969: "slot": "0x0000000000000000000000000000000000000000000000000000000000000005"
4974: "slot": "0x0000000000000000000000000000000000000000000000000000000000000005"
4979: "slot": "0x0000000000000000000000000000000000000000000000000000000000000008"
4990: "selector": "0xa6f2ae3a",
4997: "storage": {
4999: "slots": [
5003: "slot": "0x0000000000000000000000000000000000000000000000000000000000000001"
5008: "slot": "0x0000000000000000000000000000000000000000000000000000000000000100"
5013: "slot": "0x0000000000000000000000000000000000000000000000000000000000000004"
5018: "slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
5023: "slot": "0x0000000000000000000000000000000000000000000000000000000000000007"
5028: "slot": "0x0000000000000000000000000000000000000000000000000000000000000003"
5033: "slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
5038: "slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
5043: "slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
5048: "slot": "0x0000000000000000000000000000000000000000000000000000000000000100"
5053: "slot": "0x0000000000000000000000000000000000000000000000000000000000000006"
5058: "slot": "0x0000000000000000000000000000000000000000000000000000000000000006"
5063: "slot": "0x0000000000000000000000000000000000000000000000000000000000000008"
5068: "slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
5073: "slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
5078: "slot": "0x0000000000000000000000000000000000000000000000000000000000000004"
5083: "slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
5088: "slot": "0x0000000000000000000000000000000000000000000000000000000000000005"
5093: "slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
5098: "slot": "0x0000000000000000000000000000000000000000000000000000000000000005"
5103: "slot": "0x0000000000000000000000000000000000000000000000000000000000000007"
5108: "slot": "0x0000000000000000000000000000000000000000000000000000000000000004"
5113: "slot": "0x0000000000000000000000000000000000000000000000000000000000000007"
5118: "slot": "0x0000000000000000000000000000000000000000000000000000000000000007"
5123: "slot": "0x0000000000000000000000000000000000000000000000000000000000000005"
5128: "slot": "0x0000000000000000000000000000000000000000000000000000000000000005"
5133: "slot": "0x0000000000000000000000000000000000000000000000000000000000000008"
5144: "selector": "0xa9059cbb",
5151: "storage": {
5153: "slots": [
5157: "slot": "0x0000000000000000000000000000000000000000000000000000000000000001"
5162: "slot": "0x0000000000000000000000000000000000000000000000000000000000000100"
5167: "slot": "0x0000000000000000000000000000000000000000000000000000000000000004"
5172: "slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
5177: "slot": "0x0000000000000000000000000000000000000000000000000000000000000007"
5182: "slot": "0x0000000000000000000000000000000000000000000000000000000000000003"
5187: "slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
5192: "slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
5197: "slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
5202: "slot": "0x0000000000000000000000000000000000000000000000000000000000000100"
5207: "slot": "0x0000000000000000000000000000000000000000000000000000000000000006"
5212: "slot": "0x0000000000000000000000000000000000000000000000000000000000000006"
5217: "slot": "0x0000000000000000000000000000000000000000000000000000000000000008"
5222: "slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
5227: "slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
5232: "slot": "0x0000000000000000000000000000000000000000000000000000000000000004"
5237: "slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
5242: "slot": "0x0000000000000000000000000000000000000000000000000000000000000005"
5247: "slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
5252: "slot": "0x0000000000000000000000000000000000000000000000000000000000000005"
5257: "slot": "0x0000000000000000000000000000000000000000000000000000000000000007"
5262: "slot": "0x0000000000000000000000000000000000000000000000000000000000000004"
5267: "slot": "0x0000000000000000000000000000000000000000000000000000000000000007"
5272: "slot": "0x0000000000000000000000000000000000000000000000000000000000000007"
5277: "slot": "0x0000000000000000000000000000000000000000000000000000000000000005"
5282: "slot": "0x0000000000000000000000000000000000000000000000000000000000000005"
5287: "slot": "0x0000000000000000000000000000000000000000000000000000000000000008"
5298: "selector": "0xaa295de9",
5305: "storage": {
5307: "slots": [
5311: "slot": "0x0000000000000000000000000000000000000000000000000000000000000001"
5316: "slot": "0x0000000000000000000000000000000000000000000000000000000000000100"
5321: "slot": "0x0000000000000000000000000000000000000000000000000000000000000004"
5326: "slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
5331: "slot": "0x0000000000000000000000000000000000000000000000000000000000000007"
5336: "slot": "0x0000000000000000000000000000000000000000000000000000000000000003"
5341: "slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
5346: "slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
5351: "slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
5356: "slot": "0x0000000000000000000000000000000000000000000000000000000000000100"
5361: "slot": "0x0000000000000000000000000000000000000000000000000000000000000006"
5366: "slot": "0x0000000000000000000000000000000000000000000000000000000000000006"
5371: "slot": "0x0000000000000000000000000000000000000000000000000000000000000008"
5376: "slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
5381: "slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
5386: "slot": "0x0000000000000000000000000000000000000000000000000000000000000004"
5391: "slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
5396: "slot": "0x0000000000000000000000000000000000000000000000000000000000000005"
5401: "slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
5406: "slot": "0x0000000000000000000000000000000000000000000000000000000000000005"
5411: "slot": "0x0000000000000000000000000000000000000000000000000000000000000007"
5416: "slot": "0x0000000000000000000000000000000000000000000000000000000000000004"
5421: "slot": "0x0000000000000000000000000000000000000000000000000000000000000007"
5426: "slot": "0x0000000000000000000000000000000000000000000000000000000000000007"
5431: "slot": "0x0000000000000000000000000000000000000000000000000000000000000005"
5436: "slot": "0x0000000000000000000000000000000000000000000000000000000000000005"
5441: "slot": "0x0000000000000000000000000000000000000000000000000000000000000008"
5452: "selector": "0xbc094049",
5459: "storage": {
5461: "slots": [
5465: "slot": "0x0000000000000000000000000000000000000000000000000000000000000001"
5470: "slot": "0x0000000000000000000000000000000000000000000000000000000000000100"
5475: "slot": "0x0000000000000000000000000000000000000000000000000000000000000004"
5480: "slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
5485: "slot": "0x0000000000000000000000000000000000000000000000000000000000000007"
5490: "slot": "0x0000000000000000000000000000000000000000000000000000000000000003"
5495: "slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
5500: "slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
5505: "slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
5510: "slot": "0x0000000000000000000000000000000000000000000000000000000000000100"
5515: "slot": "0x0000000000000000000000000000000000000000000000000000000000000006"
5520: "slot": "0x0000000000000000000000000000000000000000000000000000000000000006"
5525: "slot": "0x0000000000000000000000000000000000000000000000000000000000000008"
5530: "slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
5535: "slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
5540: "slot": "0x0000000000000000000000000000000000000000000000000000000000000004"
5545: "slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
5550: "slot": "0x0000000000000000000000000000000000000000000000000000000000000005"
5555: "slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
5560: "slot": "0x0000000000000000000000000000000000000000000000000000000000000005"
5565: "slot": "0x0000000000000000000000000000000000000000000000000000000000000007"
5570: "slot": "0x0000000000000000000000000000000000000000000000000000000000000004"
5575: "slot": "0x0000000000000000000000000000000000000000000000000000000000000007"
5580: "slot": "0x0000000000000000000000000000000000000000000000000000000000000007"
5585: "slot": "0x0000000000000000000000000000000000000000000000000000000000000005"
5590: "slot": "0x0000000000000000000000000000000000000000000000000000000000000005"
5595: "slot": "0x0000000000000000000000000000000000000000000000000000000000000008"
5606: "selector": "0xc4839e8b",
5613: "storage": {
5615: "slots": [
5619: "slot": "0x0000000000000000000000000000000000000000000000000000000000000001"
5624: "slot": "0x0000000000000000000000000000000000000000000000000000000000000100"
5629: "slot": "0x0000000000000000000000000000000000000000000000000000000000000004"
5634: "slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
5639: "slot": "0x0000000000000000000000000000000000000000000000000000000000000007"
5644: "slot": "0x0000000000000000000000000000000000000000000000000000000000000003"
5649: "slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
5654: "slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
5659: "slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
5664: "slot": "0x0000000000000000000000000000000000000000000000000000000000000100"
5669: "slot": "0x0000000000000000000000000000000000000000000000000000000000000006"
5674: "slot": "0x0000000000000000000000000000000000000000000000000000000000000006"
5679: "slot": "0x0000000000000000000000000000000000000000000000000000000000000008"
5684: "slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
5689: "slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
5694: "slot": "0x0000000000000000000000000000000000000000000000000000000000000004"
5699: "slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
5704: "slot": "0x0000000000000000000000000000000000000000000000000000000000000005"
5709: "slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
5714: "slot": "0x0000000000000000000000000000000000000000000000000000000000000005"
5719: "slot": "0x0000000000000000000000000000000000000000000000000000000000000007"
5724: "slot": "0x0000000000000000000000000000000000000000000000000000000000000004"
5729: "slot": "0x0000000000000000000000000000000000000000000000000000000000000007"
5734: "slot": "0x0000000000000000000000000000000000000000000000000000000000000007"
5739: "slot": "0x0000000000000000000000000000000000000000000000000000000000000005"
5744: "slot": "0x0000000000000000000000000000000000000000000000000000000000000005"
5749: "slot": "0x0000000000000000000000000000000000000000000000000000000000000008"
5760: "selector": "0xcae9ca51",
5767: "storage": {
5769: "slots": [
5773: "slot": "0x0000000000000000000000000000000000000000000000000000000000000001"
5778: "slot": "0x0000000000000000000000000000000000000000000000000000000000000100"
5783: "slot": "0x0000000000000000000000000000000000000000000000000000000000000004"
5788: "slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
5793: "slot": "0x0000000000000000000000000000000000000000000000000000000000000007"
5798: "slot": "0x0000000000000000000000000000000000000000000000000000000000000003"
5803: "slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
5808: "slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
5813: "slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
5818: "slot": "0x0000000000000000000000000000000000000000000000000000000000000100"
5823: "slot": "0x0000000000000000000000000000000000000000000000000000000000000006"
5828: "slot": "0x0000000000000000000000000000000000000000000000000000000000000006"
5833: "slot": "0x0000000000000000000000000000000000000000000000000000000000000008"
5838: "slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
5843: "slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
5848: "slot": "0x0000000000000000000000000000000000000000000000000000000000000004"
5853: "slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
5858: "slot": "0x0000000000000000000000000000000000000000000000000000000000000005"
5863: "slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
5868: "slot": "0x0000000000000000000000000000000000000000000000000000000000000005"
5873: "slot": "0x0000000000000000000000000000000000000000000000000000000000000007"
5878: "slot": "0x0000000000000000000000000000000000000000000000000000000000000004"
5883: "slot": "0x0000000000000000000000000000000000000000000000000000000000000007"
5888: "slot": "0x0000000000000000000000000000000000000000000000000000000000000007"
5893: "slot": "0x0000000000000000000000000000000000000000000000000000000000000005"
5898: "slot": "0x0000000000000000000000000000000000000000000000000000000000000005"
5903: "slot": "0x0000000000000000000000000000000000000000000000000000000000000008"
5914: "selector": "0xdc3080f2",
5921: "storage": {
5923: "slots": [
5927: "slot": "0x0000000000000000000000000000000000000000000000000000000000000001"
5932: "slot": "0x0000000000000000000000000000000000000000000000000000000000000100"
5937: "slot": "0x0000000000000000000000000000000000000000000000000000000000000004"
5942: "slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
5947: "slot": "0x0000000000000000000000000000000000000000000000000000000000000007"
5952: "slot": "0x0000000000000000000000000000000000000000000000000000000000000003"
5957: "slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
5962: "slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
5967: "slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
5972: "slot": "0x0000000000000000000000000000000000000000000000000000000000000100"
5977: "slot": "0x0000000000000000000000000000000000000000000000000000000000000006"
5982: "slot": "0x0000000000000000000000000000000000000000000000000000000000000006"
5987: "slot": "0x0000000000000000000000000000000000000000000000000000000000000008"
5992: "slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
5997: "slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
6002: "slot": "0x0000000000000000000000000000000000000000000000000000000000000004"
6007: "slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
6012: "slot": "0x0000000000000000000000000000000000000000000000000000000000000005"
6017: "slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
6022: "slot": "0x0000000000000000000000000000000000000000000000000000000000000005"
6027: "slot": "0x0000000000000000000000000000000000000000000000000000000000000007"
6032: "slot": "0x0000000000000000000000000000000000000000000000000000000000000004"
6037: "slot": "0x0000000000000000000000000000000000000000000000000000000000000007"
6042: "slot": "0x0000000000000000000000000000000000000000000000000000000000000007"
6047: "slot": "0x0000000000000000000000000000000000000000000000000000000000000005"
6052: "slot": "0x0000000000000000000000000000000000000000000000000000000000000005"
6057: "slot": "0x0000000000000000000000000000000000000000000000000000000000000008"
6068: "selector": "0xdd62ed3e",
6075: "storage": {
6077: "slots": [
6081: "slot": "0x0000000000000000000000000000000000000000000000000000000000000001"
6086: "slot": "0x0000000000000000000000000000000000000000000000000000000000000100"
6091: "slot": "0x0000000000000000000000000000000000000000000000000000000000000004"
6096: "slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
6101: "slot": "0x0000000000000000000000000000000000000000000000000000000000000007"
6106: "slot": "0x0000000000000000000000000000000000000000000000000000000000000003"
6111: "slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
6116: "slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
6121: "slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
6126: "slot": "0x0000000000000000000000000000000000000000000000000000000000000100"
6131: "slot": "0x0000000000000000000000000000000000000000000000000000000000000006"
6136: "slot": "0x0000000000000000000000000000000000000000000000000000000000000006"
6141: "slot": "0x0000000000000000000000000000000000000000000000000000000000000008"
6146: "slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
6151: "slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
6156: "slot": "0x0000000000000000000000000000000000000000000000000000000000000004"
6161: "slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
6166: "slot": "0x0000000000000000000000000000000000000000000000000000000000000005"
6171: "slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
6176: "slot": "0x0000000000000000000000000000000000000000000000000000000000000005"
6181: "slot": "0x0000000000000000000000000000000000000000000000000000000000000007"
6186: "slot": "0x0000000000000000000000000000000000000000000000000000000000000004"
6191: "slot": "0x0000000000000000000000000000000000000000000000000000000000000007"
6196: "slot": "0x0000000000000000000000000000000000000000000000000000000000000007"
6201: "slot": "0x0000000000000000000000000000000000000000000000000000000000000005"
6206: "slot": "0x0000000000000000000000000000000000000000000000000000000000000005"
6211: "slot": "0x0000000000000000000000000000000000000000000000000000000000000008"
6222: "selector": "0xe4849b32",
6229: "storage": {
6231: "slots": [
6235: "slot": "0x0000000000000000000000000000000000000000000000000000000000000001"
6240: "slot": "0x0000000000000000000000000000000000000000000000000000000000000100"
6245: "slot": "0x0000000000000000000000000000000000000000000000000000000000000004"
6250: "slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
6255: "slot": "0x0000000000000000000000000000000000000000000000000000000000000007"
6260: "slot": "0x0000000000000000000000000000000000000000000000000000000000000003"
6265: "slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
6270: "slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
6275: "slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
6280: "slot": "0x0000000000000000000000000000000000000000000000000000000000000100"
6285: "slot": "0x0000000000000000000000000000000000000000000000000000000000000006"
6290: "slot": "0x0000000000000000000000000000000000000000000000000000000000000006"
6295: "slot": "0x0000000000000000000000000000000000000000000000000000000000000008"
6300: "slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
6305: "slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
6310: "slot": "0x0000000000000000000000000000000000000000000000000000000000000004"
6315: "slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
6320: "slot": "0x0000000000000000000000000000000000000000000000000000000000000005"
6325: "slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
6330: "slot": "0x0000000000000000000000000000000000000000000000000000000000000005"
6335: "slot": "0x0000000000000000000000000000000000000000000000000000000000000007"
6340: "slot": "0x0000000000000000000000000000000000000000000000000000000000000004"
6345: "slot": "0x0000000000000000000000000000000000000000000000000000000000000007"
6350: "slot": "0x0000000000000000000000000000000000000000000000000000000000000007"
6355: "slot": "0x0000000000000000000000000000000000000000000000000000000000000005"
6360: "slot": "0x0000000000000000000000000000000000000000000000000000000000000005"
6365: "slot": "0x0000000000000000000000000000000000000000000000000000000000000008"
6376: "selector": "0xf2fde38b",
6383: "storage": {
6385: "slots": [
6389: "slot": "0x0000000000000000000000000000000000000000000000000000000000000001"
6394: "slot": "0x0000000000000000000000000000000000000000000000000000000000000100"
6399: "slot": "0x0000000000000000000000000000000000000000000000000000000000000004"
6404: "slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
6409: "slot": "0x0000000000000000000000000000000000000000000000000000000000000007"
6414: "slot": "0x0000000000000000000000000000000000000000000000000000000000000003"
6419: "slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
6424: "slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
6429: "slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
6434: "slot": "0x0000000000000000000000000000000000000000000000000000000000000100"
6439: "slot": "0x0000000000000000000000000000000000000000000000000000000000000006"
6444: "slot": "0x0000000000000000000000000000000000000000000000000000000000000006"
6449: "slot": "0x0000000000000000000000000000000000000000000000000000000000000008"
6454: "slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
6459: "slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
6464: "slot": "0x0000000000000000000000000000000000000000000000000000000000000004"
6469: "slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
6474: "slot": "0x0000000000000000000000000000000000000000000000000000000000000005"
6479: "slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
6484: "slot": "0x0000000000000000000000000000000000000000000000000000000000000005"
6489: "slot": "0x0000000000000000000000000000000000000000000000000000000000000007"
6494: "slot": "0x0000000000000000000000000000000000000000000000000000000000000004"
6499: "slot": "0x0000000000000000000000000000000000000000000000000000000000000007"
6504: "slot": "0x0000000000000000000000000000000000000000000000000000000000000007"
6509: "slot": "0x0000000000000000000000000000000000000000000000000000000000000005"
6514: "slot": "0x0000000000000000000000000000000000000000000000000000000000000005"
6519: "slot": "0x0000000000000000000000000000000000000000000000000000000000000008"
6530: "selector": "0xff9b3acf",
6537: "storage": {
6539: "slots": [
6543: "slot": "0x0000000000000000000000000000000000000000000000000000000000000001"
6548: "slot": "0x0000000000000000000000000000000000000000000000000000000000000100"
6553: "slot": "0x0000000000000000000000000000000000000000000000000000000000000004"
6558: "slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
6563: "slot": "0x0000000000000000000000000000000000000000000000000000000000000007"
6568: "slot": "0x0000000000000000000000000000000000000000000000000000000000000003"
6573: "slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
6578: "slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
6583: "slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
6588: "slot": "0x0000000000000000000000000000000000000000000000000000000000000100"
6593: "slot": "0x0000000000000000000000000000000000000000000000000000000000000006"
6598: "slot": "0x0000000000000000000000000000000000000000000000000000000000000006"
6603: "slot": "0x0000000000000000000000000000000000000000000000000000000000000008"
6608: "slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
6613: "slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
6618: "slot": "0x0000000000000000000000000000000000000000000000000000000000000004"
6623: "slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
6628: "slot": "0x0000000000000000000000000000000000000000000000000000000000000005"
6633: "slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
6638: "slot": "0x0000000000000000000000000000000000000000000000000000000000000005"
6643: "slot": "0x0000000000000000000000000000000000000000000000000000000000000007"
6648: "slot": "0x0000000000000000000000000000000000000000000000000000000000000004"
6653: "slot": "0x0000000000000000000000000000000000000000000000000000000000000007"
6658: "slot": "0x0000000000000000000000000000000000000000000000000000000000000007"
6663: "slot": "0x0000000000000000000000000000000000000000000000000000000000000005"
6668: "slot": "0x0000000000000000000000000000000000000000000000000000000000000005"
6673: "slot": "0x0000000000000000000000000000000000000000000000000000000000000008"
6680: "selectors": [
6711: "upgrade_slot_write_suspected": false
6713: "storage": {
6716: "slots": [
6720: "slot": "0x0000000000000000000000000000000000000000000000000000000000000001"
6725: "slot": "0x0000000000000000000000000000000000000000000000000000000000000100"
6730: "slot": "0x0000000000000000000000000000000000000000000000000000000000000004"
6735: "slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
6740: "slot": "0x0000000000000000000000000000000000000000000000000000000000000007"
6745: "slot": "0x0000000000000000000000000000000000000000000000000000000000000003"
6750: "slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
6755: "slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
6760: "slot": "0x0000000000000000000000000000000000000000000000000000000000000002"
6765: "slot": "0x0000000000000000000000000000000000000000000000000000000000000100"
6770: "slot": "0x0000000000000000000000000000000000000000000000000000000000000006"
6775: "slot": "0x0000000000000000000000000000000000000000000000000000000000000006"
6780: "slot": "0x0000000000000000000000000000000000000000000000000000000000000008"
6785: "slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
6790: "slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
6795: "slot": "0x0000000000000000000000000000000000000000000000000000000000000004"
6800: "slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
6805: "slot": "0x0000000000000000000000000000000000000000000000000000000000000005"
6810: "slot": "0x0000000000000000000000000000000000000000000000000000000000000000"
6815: "slot": "0x0000000000000000000000000000000000000000000000000000000000000005"
6820: "slot": "0x0000000000000000000000000000000000000000000000000000000000000007"
6825: "slot": "0x0000000000000000000000000000000000000000000000000000000000000004"
6830: "slot": "0x0000000000000000000000000000000000000000000000000000000000000007"
6835: "slot": "0x0000000000000000000000000000000000000000000000000000000000000007"
6840: "slot": "0x0000000000000000000000000000000000000000000000000000000000000005"
6845: "slot": "0x0000000000000000000000000000000000000000000000000000000000000005"
6850: "slot": "0x0000000000000000000000000000000000000000000000000000000000000008"
6884: "is_proxy": false,
8342: "selector": "0x06fdde03",
8348: "selector": "0x18160ddd",
8354: "selector": "0x1fe9eabc",
8360: "selector": "0x233de126",
8366: "selector": "0x23b872dd",
8372: "selector": "0x313ce567",
8378: "selector": "0x41fa4876",
8384: "selector": "0x70a08231",
8390: "selector": "0x7f2a8a80",
8396: "selector": "0x8da5cb5b",
8402: "selector": "0x95d89b41",
8408: "selector": "0xa6f2ae3a",
8414: "selector": "0xa9059cbb",
8420: "selector": "0xaa295de9",
8426: "selector": "0xbc094049",
8432: "selector": "0xc4839e8b",
8438: "selector": "0xcae9ca51",
8444: "selector": "0xdc3080f2",
8450: "selector": "0xdd62ed3e",
8456: "selector": "0xe4849b32",
8462: "selector": "0xf2fde38b",
8468: "selector": "0xff9b3acf",
8478: "detector_findings": [
8481: "evidence_json": {
8534: "evidence_json": {
8587: "evidence_json": {
exec
/bin/bash -lc 'tail -n 260 BYTECODE_BUNDLE.json' in /tmp/codex-k49mbjia
succeeded in 0ms:
"type": "function"
},
{
"entry_pc": 826074471,
"id": "fn:0x23b872dd",
"selector": "0x23b872dd",
"type": "function"
},
{
"entry_pc": 1106921590,
"id": "fn:0x313ce567",
"selector": "0x313ce567",
"type": "function"
},
{
"entry_pc": 1889567281,
"id": "fn:0x41fa4876",
"selector": "0x41fa4876",
"type": "function"
},
{
"entry_pc": 2133494400,
"id": "fn:0x70a08231",
"selector": "0x70a08231",
"type": "function"
},
{
"entry_pc": 2376452955,
"id": "fn:0x7f2a8a80",
"selector": "0x7f2a8a80",
"type": "function"
},
{
"entry_pc": 2514000705,
"id": "fn:0x8da5cb5b",
"selector": "0x8da5cb5b",
"type": "function"
},
{
"entry_pc": 2800922170,
"id": "fn:0x95d89b41",
"selector": "0x95d89b41",
"type": "function"
},
{
"entry_pc": 2835717307,
"id": "fn:0xa6f2ae3a",
"selector": "0xa6f2ae3a",
"type": "function"
},
{
"entry_pc": 2854837737,
"id": "fn:0xa9059cbb",
"selector": "0xa9059cbb",
"type": "function"
},
{
"entry_pc": 3154722889,
"id": "fn:0xaa295de9",
"selector": "0xaa295de9",
"type": "function"
},
{
"entry_pc": 3296960139,
"id": "fn:0xbc094049",
"selector": "0xbc094049",
"type": "function"
},
{
"entry_pc": 3404319313,
"id": "fn:0xc4839e8b",
"selector": "0xc4839e8b",
"type": "function"
},
{
"entry_pc": 3694166258,
"id": "fn:0xcae9ca51",
"selector": "0xcae9ca51",
"type": "function"
},
{
"entry_pc": 3714247998,
"id": "fn:0xdc3080f2",
"selector": "0xdc3080f2",
"type": "function"
},
{
"entry_pc": 3833895730,
"id": "fn:0xdd62ed3e",
"selector": "0xdd62ed3e",
"type": "function"
},
{
"entry_pc": 4076725131,
"id": "fn:0xe4849b32",
"selector": "0xe4849b32",
"type": "function"
},
{
"entry_pc": 4288363215,
"id": "fn:0xf2fde38b",
"selector": "0xf2fde38b",
"type": "function"
},
{
"entry_pc": null,
"id": "fn:0xff9b3acf",
"selector": "0xff9b3acf",
"type": "function"
}
],
"version": "capability_graph_v1"
},
"id": 2695,
"updated_at": "2026-04-04T19:59:24.000000Z",
"version": "capability_graph_v1"
},
"detector_findings": [
{
"confidence": 60,
"evidence_json": {
"call_count": 6,
"examples": [
{
"opcode": "CALL",
"pc": 1126,
"returndata_checked": null,
"target_expression_category": "computed",
"value_expression_category": "computed"
},
{
"opcode": "CALL",
"pc": 1194,
"returndata_checked": null,
"target_expression_category": "computed",
"value_expression_category": "computed"
},
{
"opcode": "CALL",
"pc": 1458,
"returndata_checked": null,
"target_expression_category": "computed",
"value_expression_category": "computed"
}
],
"guards_detected": [],
"untrusted_call_count": 6
},
"normalized_json": {
"sink": "CALL"
},
"severity": "high",
"title": "Untrusted CALL target/value reachable",
"validated": true,
"validation_json": {
"attempts": 1,
"call_targets": [
"0x0000000000000000000000000000000000000004",
"0x9325f6e7767d61d934d118433666d1120863bdcd"
],
"classification": "target_varies",
"confirmed": true,
"errors": 0,
"matched_probe": null,
"sink": "CALL",
"status": "confirmed",
"target_varies": true,
"trace_id": "0x454a4bc781d4a87033b3766193e8612f4b35f4b75d7693e3d1f3b9131365acdb",
"trace_mode": "callTracer"
}
},
{
"confidence": 55,
"evidence_json": {
"eth_value_calls": 6,
"examples": [
{
"opcode": "CALL",
"pc": 1126,
"returndata_checked": null,
"target_expression_category": "computed",
"value_expression_category": "computed"
},
{
"opcode": "CALL",
"pc": 1194,
"returndata_checked": null,
"target_expression_category": "computed",
"value_expression_category": "computed"
},
{
"opcode": "CALL",
"pc": 1458,
"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": true,
"validation_json": {
"attempts": 1,
"call_targets": [
"0x0000000000000000000000000000000000000004",
"0x9325f6e7767d61d934d118433666d1120863bdcd"
],
"classification": "target_varies",
"confirmed": true,
"errors": 0,
"matched_probe": null,
"sink": "CALL",
"status": "confirmed",
"target_varies": true,
"trace_id": "0x454a4bc781d4a87033b3766193e8612f4b35f4b75d7693e3d1f3b9131365acdb",
"trace_mode": "callTracer"
}
},
{
"confidence": 45,
"evidence_json": {
"create2_count": 2,
"create_count": 0
},
"normalized_json": {
"sink": "CREATE"
},
"severity": "medium",
"title": "CREATE/CREATE2 reachable",
"validated": false,
"validation_json": {
"attempts": 32,
"call_targets": null,
"classification": "no_sink",
"confirmed": false,
"errors": 0,
"matched_probe": null,
"sink": "CREATE",
"status": "unknown",
"target_varies": null,
"trace_id": "0x97bdeea5dd8a4cb4f1880843051e7056d89490c0a7bb4caf3456555bdabd62bd",
"trace_mode": "structLogs"
}
}
],
"heuristics_summary": {
"create2_count": 2,
"delegatecall_count": 0,
"flags": [
"create_opcodes_present"
],
"selfdestruct_count": 0
}
}
exec
/bin/bash -lc "sed -n '3190,3308p' BYTECODE_BUNDLE.json" in /tmp/codex-k49mbjia
succeeded in 0ms:
"type": "control_flow_fallthrough"
},
{
"from": "bb:2264",
"to": "bb:2277",
"type": "control_flow_fallthrough"
}
],
"cfg_hash": "0x981ffbb7d0579129d362a7b4e5407123118f2e710f76ed7c55f7e3860221409c",
"dispatcher_type": "selector_jump_table",
"function_entries": [
{
"entry_pc": null,
"selector": "0x06fdde03"
},
{
"entry_pc": 535423676,
"selector": "0x18160ddd"
},
{
"entry_pc": 591257894,
"selector": "0x1fe9eabc"
},
{
"entry_pc": 599290589,
"selector": "0x233de126"
},
{
"entry_pc": 826074471,
"selector": "0x23b872dd"
},
{
"entry_pc": 1106921590,
"selector": "0x313ce567"
},
{
"entry_pc": 1889567281,
"selector": "0x41fa4876"
},
{
"entry_pc": 2133494400,
"selector": "0x70a08231"
},
{
"entry_pc": 2376452955,
"selector": "0x7f2a8a80"
},
{
"entry_pc": 2514000705,
"selector": "0x8da5cb5b"
},
{
"entry_pc": 2800922170,
"selector": "0x95d89b41"
},
{
"entry_pc": 2835717307,
"selector": "0xa6f2ae3a"
},
{
"entry_pc": 2854837737,
"selector": "0xa9059cbb"
},
{
"entry_pc": 3154722889,
"selector": "0xaa295de9"
},
{
"entry_pc": 3296960139,
"selector": "0xbc094049"
},
{
"entry_pc": 3404319313,
"selector": "0xc4839e8b"
},
{
"entry_pc": 3694166258,
"selector": "0xcae9ca51"
},
{
"entry_pc": 3714247998,
"selector": "0xdc3080f2"
},
{
"entry_pc": 3833895730,
"selector": "0xdd62ed3e"
},
{
"entry_pc": 4076725131,
"selector": "0xe4849b32"
},
{
"entry_pc": 4288363215,
"selector": "0xf2fde38b"
},
{
"entry_pc": null,
"selector": "0xff9b3acf"
}
],
"functions": [
{
"auth": {
"guards": []
},
"entry_pc": null,
"selector": "0x06fdde03",
"sinks": {
"call": 6,
"delegatecall": 0,
"selfdestruct": 0,
"staticcall": 0
},
"storage": {
"reads": 47,
"slots": [
{
"op": "SLOAD",
"pc": 272,
exec
/bin/bash -lc "sed -n '2860,3220p' BYTECODE_BUNDLE.json" in /tmp/codex-k49mbjia
succeeded in 0ms:
"type": "control_flow"
},
{
"from": "bb:218",
"to": "bb:229",
"type": "control_flow_fallthrough"
},
{
"from": "bb:229",
"to": "bb:1287",
"type": "control_flow"
},
{
"from": "bb:229",
"to": "bb:240",
"type": "control_flow_fallthrough"
},
{
"from": "bb:240",
"to": "bb:1353",
"type": "control_flow"
},
{
"from": "bb:240",
"to": "bb:251",
"type": "control_flow_fallthrough"
},
{
"from": "bb:251",
"to": "bb:1386",
"type": "control_flow"
},
{
"from": "bb:251",
"to": "bb:262",
"type": "control_flow_fallthrough"
},
{
"from": "bb:264",
"to": "bb:1921",
"type": "control_flow"
},
{
"from": "bb:264",
"to": "bb:330",
"type": "control_flow_fallthrough"
},
{
"from": "bb:330",
"to": "bb:1878",
"type": "control_flow"
},
{
"from": "bb:330",
"to": "bb:338",
"type": "control_flow_fallthrough"
},
{
"from": "bb:338",
"to": "bb:1921",
"type": "control_flow"
},
{
"from": "bb:366",
"to": "bb:2066",
"type": "control_flow"
},
{
"from": "bb:366",
"to": "bb:396",
"type": "control_flow_fallthrough"
},
{
"from": "bb:415",
"to": "bb:1609",
"type": "control_flow"
},
{
"from": "bb:415",
"to": "bb:461",
"type": "control_flow_fallthrough"
},
{
"from": "bb:477",
"to": "bb:487",
"type": "control_flow_fallthrough"
},
{
"from": "bb:487",
"to": "bb:492",
"type": "control_flow_fallthrough"
},
{
"from": "bb:492",
"to": "bb:1929",
"type": "control_flow"
},
{
"from": "bb:492",
"to": "bb:501",
"type": "control_flow_fallthrough"
},
{
"from": "bb:501",
"to": "bb:555",
"type": "control_flow"
},
{
"from": "bb:501",
"to": "bb:546",
"type": "control_flow_fallthrough"
},
{
"from": "bb:546",
"to": "bb:555",
"type": "control_flow_fallthrough"
},
{
"from": "bb:555",
"to": "bb:492",
"type": "control_flow"
},
{
"from": "bb:587",
"to": "bb:2071",
"type": "control_flow"
},
{
"from": "bb:587",
"to": "bb:616",
"type": "control_flow_fallthrough"
},
{
"from": "bb:638",
"to": "bb:1921",
"type": "control_flow"
},
{
"from": "bb:638",
"to": "bb:702",
"type": "control_flow_fallthrough"
},
{
"from": "bb:702",
"to": "bb:1878",
"type": "control_flow"
},
{
"from": "bb:702",
"to": "bb:710",
"type": "control_flow_fallthrough"
},
{
"from": "bb:710",
"to": "bb:1921",
"type": "control_flow"
},
{
"from": "bb:729",
"to": "bb:2144",
"type": "control_flow"
},
{
"from": "bb:729",
"to": "bb:752",
"type": "control_flow_fallthrough"
},
{
"from": "bb:756",
"to": "bb:1937",
"type": "control_flow"
},
{
"from": "bb:756",
"to": "bb:799",
"type": "control_flow_fallthrough"
},
{
"from": "bb:821",
"to": "bb:2105",
"type": "control_flow"
},
{
"from": "bb:821",
"to": "bb:850",
"type": "control_flow_fallthrough"
},
{
"from": "bb:854",
"to": "bb:1168",
"type": "control_flow"
},
{
"from": "bb:854",
"to": "bb:1143",
"type": "control_flow_fallthrough"
},
{
"from": "bb:1143",
"to": "bb:1168",
"type": "control_flow_fallthrough"
},
{
"from": "bb:1168",
"to": "bb:1200",
"type": "control_flow_fallthrough"
},
{
"from": "bb:1287",
"to": "bb:2441",
"type": "control_flow"
},
{
"from": "bb:1287",
"to": "bb:1349",
"type": "control_flow_fallthrough"
},
{
"from": "bb:1353",
"to": "bb:1844",
"type": "control_flow"
},
{
"from": "bb:1353",
"to": "bb:1382",
"type": "control_flow_fallthrough"
},
{
"from": "bb:1404",
"to": "bb:1500",
"type": "control_flow"
},
{
"from": "bb:1404",
"to": "bb:1475",
"type": "control_flow_fallthrough"
},
{
"from": "bb:1475",
"to": "bb:1500",
"type": "control_flow_fallthrough"
},
{
"from": "bb:1609",
"to": "bb:1648",
"type": "control_flow"
},
{
"from": "bb:1609",
"to": "bb:1644",
"type": "control_flow_fallthrough"
},
{
"from": "bb:1648",
"to": "bb:1724",
"type": "control_flow"
},
{
"from": "bb:1648",
"to": "bb:1720",
"type": "control_flow_fallthrough"
},
{
"from": "bb:1878",
"to": "bb:1892",
"type": "control_flow_fallthrough"
},
{
"from": "bb:1892",
"to": "bb:1892",
"type": "control_flow"
},
{
"from": "bb:1892",
"to": "bb:1912",
"type": "control_flow_fallthrough"
},
{
"from": "bb:1912",
"to": "bb:1921",
"type": "control_flow_fallthrough"
},
{
"from": "bb:1937",
"to": "bb:1976",
"type": "control_flow"
},
{
"from": "bb:1937",
"to": "bb:1972",
"type": "control_flow_fallthrough"
},
{
"from": "bb:2105",
"to": "bb:2126",
"type": "control_flow"
},
{
"from": "bb:2105",
"to": "bb:2122",
"type": "control_flow_fallthrough"
},
{
"from": "bb:2144",
"to": "bb:487",
"type": "control_flow"
},
{
"from": "bb:2210",
"to": "bb:2247",
"type": "control_flow"
},
{
"from": "bb:2210",
"to": "bb:2229",
"type": "control_flow_fallthrough"
},
{
"from": "bb:2229",
"to": "bb:2247",
"type": "control_flow_fallthrough"
},
{
"from": "bb:2247",
"to": "bb:2277",
"type": "control_flow"
},
{
"from": "bb:2247",
"to": "bb:2264",
"type": "control_flow_fallthrough"
},
{
"from": "bb:2264",
"to": "bb:2277",
"type": "control_flow_fallthrough"
}
],
"cfg_hash": "0x981ffbb7d0579129d362a7b4e5407123118f2e710f76ed7c55f7e3860221409c",
"dispatcher_type": "selector_jump_table",
"function_entries": [
{
"entry_pc": null,
"selector": "0x06fdde03"
},
{
"entry_pc": 535423676,
"selector": "0x18160ddd"
},
{
"entry_pc": 591257894,
"selector": "0x1fe9eabc"
},
{
"entry_pc": 599290589,
"selector": "0x233de126"
},
{
"entry_pc": 826074471,
"selector": "0x23b872dd"
},
exec
/bin/bash -lc "rg -n '1126|1194|1458|2512|2568|2586|2144|1724|1976|2441|2277' BYTECODE_BUNDLE.json" in /tmp/codex-k49mbjia
succeeded in 0ms:
1897: "start_pc": 1724
2131: "start_pc": 1976
2262: "start_pc": 2144
2478: "start_pc": 2277
2594: "start_pc": 2441
2625: "pc": 1126,
2632: "pc": 1194,
2639: "pc": 1458,
2646: "pc": 2512,
2653: "pc": 2568,
2660: "pc": 2586,
3019: "to": "bb:2144",
3069: "to": "bb:2441",
3114: "to": "bb:1724",
3144: "to": "bb:1976",
3163: "from": "bb:2144",
3184: "to": "bb:2277",
3194: "to": "bb:2277",
7255: "to": "bb:2144",
7305: "to": "bb:2441",
7350: "to": "bb:1724",
7380: "to": "bb:1976",
7399: "from": "bb:2144",
7420: "to": "bb:2277",
7430: "to": "bb:2277",
7535: "to": "call:1126",
7539: "from": "call:1126",
7545: "to": "call:1194",
7549: "from": "call:1194",
7555: "to": "call:1458",
7559: "from": "call:1458",
7564: "from": "bb:2441",
7565: "to": "call:2512",
7569: "from": "call:2512",
7575: "to": "call:2568",
7579: "from": "call:2568",
7585: "to": "call:2586",
7589: "from": "call:2586",
8137: "id": "bb:1724",
8138: "start_pc": 1724,
8200: "id": "bb:1976",
8201: "start_pc": 1976,
8242: "id": "bb:2144",
8243: "start_pc": 2144,
8277: "id": "bb:2277",
8278: "start_pc": 2277,
8284: "id": "bb:2441",
8285: "start_pc": 2441,
8296: "id": "call:1126",
8298: "pc": 1126,
8302: "id": "call:1194",
8304: "pc": 1194,
8308: "id": "call:1458",
8310: "pc": 1458,
8314: "id": "call:2512",
8316: "pc": 2512,
8320: "id": "call:2568",
8322: "pc": 2568,
8326: "id": "call:2586",
8328: "pc": 2586,
8486: "pc": 1126,
8493: "pc": 1194,
8500: "pc": 1458,
8539: "pc": 1126,
8546: "pc": 1194,
8553: "pc": 1458,
exec
/bin/bash -lc "jq '.analysis_artifact.artifact_json.selectors // .selectors' BYTECODE_BUNDLE.json" in /tmp/codex-k49mbjia
succeeded in 0ms:
[
"0x06fdde03",
"0x18160ddd",
"0x1fe9eabc",
"0x233de126",
"0x23b872dd",
"0x313ce567",
"0x41fa4876",
"0x70a08231",
"0x7f2a8a80",
"0x8da5cb5b",
"0x95d89b41",
"0xa6f2ae3a",
"0xa9059cbb",
"0xaa295de9",
"0xbc094049",
"0xc4839e8b",
"0xcae9ca51",
"0xdc3080f2",
"0xdd62ed3e",
"0xe4849b32",
"0xf2fde38b",
"0xff9b3acf"
]
exec
/bin/bash -lc "sed -n '7480,7605p' BYTECODE_BUNDLE.json" in /tmp/codex-k49mbjia
succeeded in 0ms:
"to": "bb:2800922170",
"type": "entry"
},
{
"from": "fn:0xa6f2ae3a",
"to": "bb:2835717307",
"type": "entry"
},
{
"from": "fn:0xa9059cbb",
"to": "bb:2854837737",
"type": "entry"
},
{
"from": "fn:0xaa295de9",
"to": "bb:3154722889",
"type": "entry"
},
{
"from": "fn:0xbc094049",
"to": "bb:3296960139",
"type": "entry"
},
{
"from": "fn:0xc4839e8b",
"to": "bb:3404319313",
"type": "entry"
},
{
"from": "fn:0xcae9ca51",
"to": "bb:3694166258",
"type": "entry"
},
{
"from": "fn:0xdc3080f2",
"to": "bb:3714247998",
"type": "entry"
},
{
"from": "fn:0xdd62ed3e",
"to": "bb:3833895730",
"type": "entry"
},
{
"from": "fn:0xe4849b32",
"to": "bb:4076725131",
"type": "entry"
},
{
"from": "fn:0xf2fde38b",
"to": "bb:4288363215",
"type": "entry"
},
{
"from": "bb:854",
"to": "call:1126",
"type": "contains"
},
{
"from": "call:1126",
"to": "sink:call",
"type": "capability"
},
{
"from": "bb:1168",
"to": "call:1194",
"type": "contains"
},
{
"from": "call:1194",
"to": "sink:call",
"type": "capability"
},
{
"from": "bb:1404",
"to": "call:1458",
"type": "contains"
},
{
"from": "call:1458",
"to": "sink:call",
"type": "capability"
},
{
"from": "bb:2441",
"to": "call:2512",
"type": "contains"
},
{
"from": "call:2512",
"to": "sink:call",
"type": "capability"
},
{
"from": "bb:2567",
"to": "call:2568",
"type": "contains"
},
{
"from": "call:2568",
"to": "sink:callcode",
"type": "capability"
},
{
"from": "bb:2567",
"to": "call:2586",
"type": "contains"
},
{
"from": "call:2586",
"to": "sink:call",
"type": "capability"
}
],
"nodes": [
{
"end_pc": 10,
"hash": "0xf11444caaf4db510565a598ec5db1095f6815c9db671a85c90dde30dacbe11e2",
"id": "bb:0",
"start_pc": 0,
"type": "basic_block"
},
{
"end_pc": 30,
"hash": "0x81ba1990cb6d08ec7e9f5cef473cf689c892f720fb932454a377fa40a7b6acb2",
"id": "bb:11",
exec
/bin/bash -lc "jq -r 'paths(scalars) as "'$p | select(getpath($p)|type=="string") | select((getpath($p)|startswith("0x")) and (getpath($p)|length>100)) | [$p|join(".") , getpath($p)[0:80]] | @tsv'"' BYTECODE_BUNDLE.json" in /tmp/codex-k49mbjia
exited 5 in 0ms:
jq: error (at BYTECODE_BUNDLE.json:8619): Cannot index array with string "artifact"
exec
/bin/bash -lc "rg -n '0x[0-9a-fA-F]{120,}' BYTECODE_BUNDLE.json" in /tmp/codex-k49mbjia
succeeded in 0ms:
6886: "full": "0x606060405236156101065760e060020a600035046306fdde03811461010857806318160ddd146101655780631fe9eabc1461016e578063233de1261461019057806323b872dd1461019f578063313ce567146101d157806341fa4876146101dd57806370a08231146102335780637f2a8a801461024b5780638da5cb5b1461026c57806395d89b411461027e578063a6f2ae3a146102d9578063a9059cbb146102f4578063aa295de914610323578063bc0940491461032c578063c4839e8b14610335578063cae9ca5114610356578063dc3080f2146104bd578063dd62ed3e146104e2578063e4849b3214610507578063f2fde38b14610549578063ff9b3acf1461056a575b005b60408051600180546020600282841615610100026000190190921691909104601f810182900482028401820190945283835261057c93908301828280156107815780601f1061075657610100808354040283529160200191610781565b6105ea60045481565b610106600435600054600160a060020a03908116339091161461081257610002565b6105fc60075463ffffffff1681565b6105ea600435602435604435600160a060020a0383166000908152600960205260408120548290101561064957610002565b61061660035460ff1681565b6105ea6004356024355b600080805b8381101561078957604080514383900360001901408152602081018790528151908190039091019020600290066000141561022b57600281900a909101905b6001016101ec565b6105ea60043560096020526000908152604090205481565b61010660043560005433600160a060020a0390811691161461081757610002565b61062c600054600160a060020a031681565b61057c6002805460408051602060018416156101000260001901909316849004601f810184900484028201840190925281815292918301828280156107815780601f1061075657610100808354040283529160200191610781565b6105ea60065434906000908190819084111561086057610002565b61010660043560243533600160a060020a03166000908152600960205260409020548190101561079157610002565b6105ea60065481565b6105ea60085481565b61010660043560005433600160a060020a0390811691161461083957610002565b604080516020604435600481810135601f81018490048402850184019095528484526105ea9481359460248035959394606494929391019181908401838280828437509496505050505050506000600083600a600050600033600160a060020a03168152602001908152602001600020600050600087600160a060020a031681526020019081526020016000206000508190555084905080600160a060020a0316638f4ffcb1338630876040518560e060020a0281526004018085600160a060020a0316815260200184815260200183600160a060020a03168152602001806020018281038252838181518152602001915080519060200190808383829060006004602084601f0104600f02600301f150905090810190601f1680156104905780820380516001836020036101000a031916815260200191505b50955050505050506000604051808303816000876161da5a03f11561000257506001979650505050505050565b600b602090815260043560009081526040808220909252602435815220546105ea9081565b600a602090815260043560009081526040808220909252602435815220546105ea9081565b6105ea60043560045430600160a060020a039081163164174876e800029190910460085533166000908152600960205260408120548290101561098957610002565b61010660043560005433600160a060020a0390811691161461073457610002565b61062c600554600160a060020a031681565b60405180806020018281038252838181518152602001915080519060200190808383829060006004602084601f0104600f02600301f150905090810190601f1680156105dc5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b60408051918252519081900360200190f35b6040805163ffffffff929092168252519081900360200190f35b6040805160ff9092168252519081900360200190f35b60408051600160a060020a03929092168252519081900360200190f35b600160a060020a038316600090815260096020526040902054808301101561067057610002565b600160a060020a038481166000818152600a602090815260408083203390951680845294825280832054938352600b82528083209483529390529190912054830111156106bc57610002565b600160a060020a03848116600081815260096020908152604080832080548890039055878516808452818420805489019055848452600b83528184203390961684529482529182902080548701905581518681529151600080516020610a078339815191529281900390910190a35060019392505050565b6000805473ffffffffffffffffffffffffffffffffffffffff19168217905550565b820191906000526020600020905b81548152906001019060200180831161076457829003601f168201915b505050505081565b509392505050565b600160a060020a03821660009081526009602052604090205481810110156107b857610002565b33600160a060020a0390811660008181526009602090815260408083208054879003905593861680835291849020805486019055835185815293519193600080516020610a07833981519152929081900390910190a35050565b600655565b6005805473ffffffffffffffffffffffffffffffffffffffff19168217905550565b6102008163ffffffff16101561084e57610002565b6007805463ffffffff19168217905550565b60045430600160a060020a03163164174876e80002046008556040805143815242602082015280820186905290519081900360600190206108a290600a6101e7565b60075490915063ffffffff1681106108c757600092506103e764174876e80085040491505b60075463ffffffff168110156108e55764174876e800600285020492505b33600160a060020a0390811660008181526009602090815260408083208054890190556005548516835280832080548801905530909416808352918490208054878901900390558351878152935192939192600080516020610a078339815191529281900390910190a3600554604080518481529051600160a060020a0392831692301691600080516020610a07833981519152919081900360200190a350505090565b5030600160a060020a03908116600090815260096020526040808220805485019055339092168082528282208054859003905591516008548402929190839082818181858883f1505060408051868152905130600160a060020a0316949350600080516020610a0783398151915292509081900360200190a391905056ddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef",
exec
/bin/bash -lc "python - <<'PY'
from textwrap import wrap
import json,re
s=open('BYTECODE_BUNDLE.json').read()
m=re.search(r'\"full\":\\s*\"(0x[0-9a-fA-F]+)\"',s)
code=bytes.fromhex(m.group(1)[2:])
ops={i:f'PUSH{i-0x5f}' for i in range(0x60,0x80)}
ops.update({i:f'DUP{i-0x7f}' for i in range(0x80,0x90)})
ops.update({i:f'SWAP{i-0x8f}' for i in range(0x90,0xa0)})
ops.update({i:f'LOG{i-0xa0}' for i in range(0xa0,0xa5)})
base={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',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'}
ops.update(base)
# disassemble all jumpdests and requested ranges
ranges=[(0,120),(350,430),(470,570),(580,660),(720,830),(840,1220),(1270,1515),(1600,1860),(1930,2075),(2140,2570)]
for start,end in ranges:
print(f'--- {start:#x}-{end:#x} ---')
pc=start
while pc < min(end,len(code)):
op=code[pc]
name=ops.get(op,f'OP_{op:02x}')
if name.startswith('PUSH'):
n=op-0x5f
data=code[pc+1:pc+1+n]
print(f'{pc:04x}: {name} 0x{data.hex()}')
pc+=1+n
else:
print(f'{pc:04x}: {name}')
pc+=1
print()
PY" in /tmp/codex-k49mbjia
succeeded in 0ms:
--- 0x0-0x78 ---
0000: PUSH1 0x60
0002: PUSH1 0x40
0004: MSTORE
0005: CALLDATASIZE
0006: ISZERO
0007: PUSH2 0x0106
000a: JUMPI
000b: PUSH1 0xe0
000d: PUSH1 0x02
000f: EXP
0010: PUSH1 0x00
0012: CALLDATALOAD
0013: DIV
0014: PUSH4 0x06fdde03
0019: DUP2
001a: EQ
001b: PUSH2 0x0108
001e: JUMPI
001f: DUP1
0020: PUSH4 0x18160ddd
0025: EQ
0026: PUSH2 0x0165
0029: JUMPI
002a: DUP1
002b: PUSH4 0x1fe9eabc
0030: EQ
0031: PUSH2 0x016e
0034: JUMPI
0035: DUP1
0036: PUSH4 0x233de126
003b: EQ
003c: PUSH2 0x0190
003f: JUMPI
0040: DUP1
0041: PUSH4 0x23b872dd
0046: EQ
0047: PUSH2 0x019f
004a: JUMPI
004b: DUP1
004c: PUSH4 0x313ce567
0051: EQ
0052: PUSH2 0x01d1
0055: JUMPI
0056: DUP1
0057: PUSH4 0x41fa4876
005c: EQ
005d: PUSH2 0x01dd
0060: JUMPI
0061: DUP1
0062: PUSH4 0x70a08231
0067: EQ
0068: PUSH2 0x0233
006b: JUMPI
006c: DUP1
006d: PUSH4 0x7f2a8a80
0072: EQ
0073: PUSH2 0x024b
0076: JUMPI
0077: DUP1
--- 0x15e-0x1ae ---
015e: SHA3
015f: ADD
0160: SWAP2
0161: PUSH2 0x0781
0164: JUMP
0165: JUMPDEST
0166: PUSH2 0x05ea
0169: PUSH1 0x04
016b: SLOAD
016c: DUP2
016d: JUMP
016e: JUMPDEST
016f: PUSH2 0x0106
0172: PUSH1 0x04
0174: CALLDATALOAD
0175: PUSH1 0x00
0177: SLOAD
0178: PUSH1 0x01
017a: PUSH1 0xa0
017c: PUSH1 0x02
017e: EXP
017f: SUB
0180: SWAP1
0181: DUP2
0182: AND
0183: CALLER
0184: SWAP1
0185: SWAP2
0186: AND
0187: EQ
0188: PUSH2 0x0812
018b: JUMPI
018c: PUSH2 0x0002
018f: JUMP
0190: JUMPDEST
0191: PUSH2 0x05fc
0194: PUSH1 0x07
0196: SLOAD
0197: PUSH4 0xffffffff
019c: AND
019d: DUP2
019e: JUMP
019f: JUMPDEST
01a0: PUSH2 0x05ea
01a3: PUSH1 0x04
01a5: CALLDATALOAD
01a6: PUSH1 0x24
01a8: CALLDATALOAD
01a9: PUSH1 0x44
01ab: CALLDATALOAD
01ac: PUSH1 0x01
--- 0x1d6-0x23a ---
01d6: SUB
01d7: SLOAD
01d8: PUSH1 0xff
01da: AND
01db: DUP2
01dc: JUMP
01dd: JUMPDEST
01de: PUSH2 0x05ea
01e1: PUSH1 0x04
01e3: CALLDATALOAD
01e4: PUSH1 0x24
01e6: CALLDATALOAD
01e7: JUMPDEST
01e8: PUSH1 0x00
01ea: DUP1
01eb: DUP1
01ec: JUMPDEST
01ed: DUP4
01ee: DUP2
01ef: LT
01f0: ISZERO
01f1: PUSH2 0x0789
01f4: JUMPI
01f5: PUSH1 0x40
01f7: DUP1
01f8: MLOAD
01f9: NUMBER
01fa: DUP4
01fb: SWAP1
01fc: SUB
01fd: PUSH1 0x00
01ff: NOT
0200: ADD
0201: BLOCKHASH
0202: DUP2
0203: MSTORE
0204: PUSH1 0x20
0206: DUP2
0207: ADD
0208: DUP8
0209: SWAP1
020a: MSTORE
020b: DUP2
020c: MLOAD
020d: SWAP1
020e: DUP2
020f: SWAP1
0210: SUB
0211: SWAP1
0212: SWAP2
0213: ADD
0214: SWAP1
0215: SHA3
0216: PUSH1 0x02
0218: SWAP1
0219: MOD
021a: PUSH1 0x00
021c: EQ
021d: ISZERO
021e: PUSH2 0x022b
0221: JUMPI
0222: PUSH1 0x02
0224: DUP2
0225: SWAP1
0226: EXP
0227: SWAP1
0228: SWAP2
0229: ADD
022a: SWAP1
022b: JUMPDEST
022c: PUSH1 0x01
022e: ADD
022f: PUSH2 0x01ec
0232: JUMP
0233: JUMPDEST
0234: PUSH2 0x05ea
0237: PUSH1 0x04
0239: CALLDATALOAD
--- 0x244-0x294 ---
0244: PUSH1 0x40
0246: SWAP1
0247: SHA3
0248: SLOAD
0249: DUP2
024a: JUMP
024b: JUMPDEST
024c: PUSH2 0x0106
024f: PUSH1 0x04
0251: CALLDATALOAD
0252: PUSH1 0x00
0254: SLOAD
0255: CALLER
0256: PUSH1 0x01
0258: PUSH1 0xa0
025a: PUSH1 0x02
025c: EXP
025d: SUB
025e: SWAP1
025f: DUP2
0260: AND
0261: SWAP2
0262: AND
0263: EQ
0264: PUSH2 0x0817
0267: JUMPI
0268: PUSH2 0x0002
026b: JUMP
026c: JUMPDEST
026d: PUSH2 0x062c
0270: PUSH1 0x00
0272: SLOAD
0273: PUSH1 0x01
0275: PUSH1 0xa0
0277: PUSH1 0x02
0279: EXP
027a: SUB
027b: AND
027c: DUP2
027d: JUMP
027e: JUMPDEST
027f: PUSH2 0x057c
0282: PUSH1 0x02
0284: DUP1
0285: SLOAD
0286: PUSH1 0x40
0288: DUP1
0289: MLOAD
028a: PUSH1 0x20
028c: PUSH1 0x01
028e: DUP5
028f: AND
0290: ISZERO
0291: PUSH2 0x0100
--- 0x2d0-0x33e ---
02d0: SWAP2
02d1: PUSH1 0x20
02d3: ADD
02d4: SWAP2
02d5: PUSH2 0x0781
02d8: JUMP
02d9: JUMPDEST
02da: PUSH2 0x05ea
02dd: PUSH1 0x06
02df: SLOAD
02e0: CALLVALUE
02e1: SWAP1
02e2: PUSH1 0x00
02e4: SWAP1
02e5: DUP2
02e6: SWAP1
02e7: DUP2
02e8: SWAP1
02e9: DUP5
02ea: GT
02eb: ISZERO
02ec: PUSH2 0x0860
02ef: JUMPI
02f0: PUSH2 0x0002
02f3: JUMP
02f4: JUMPDEST
02f5: PUSH2 0x0106
02f8: PUSH1 0x04
02fa: CALLDATALOAD
02fb: PUSH1 0x24
02fd: CALLDATALOAD
02fe: CALLER
02ff: PUSH1 0x01
0301: PUSH1 0xa0
0303: PUSH1 0x02
0305: EXP
0306: SUB
0307: AND
0308: PUSH1 0x00
030a: SWAP1
030b: DUP2
030c: MSTORE
030d: PUSH1 0x09
030f: PUSH1 0x20
0311: MSTORE
0312: PUSH1 0x40
0314: SWAP1
0315: SHA3
0316: SLOAD
0317: DUP2
0318: SWAP1
0319: LT
031a: ISZERO
031b: PUSH2 0x0791
031e: JUMPI
031f: PUSH2 0x0002
0322: JUMP
0323: JUMPDEST
0324: PUSH2 0x05ea
0327: PUSH1 0x06
0329: SLOAD
032a: DUP2
032b: JUMP
032c: JUMPDEST
032d: PUSH2 0x05ea
0330: PUSH1 0x08
0332: SLOAD
0333: DUP2
0334: JUMP
0335: JUMPDEST
0336: PUSH2 0x0106
0339: PUSH1 0x04
033b: CALLDATALOAD
033c: PUSH1 0x00
--- 0x348-0x4c4 ---
0348: SWAP1
0349: DUP2
034a: AND
034b: SWAP2
034c: AND
034d: EQ
034e: PUSH2 0x0839
0351: JUMPI
0352: PUSH2 0x0002
0355: JUMP
0356: JUMPDEST
0357: PUSH1 0x40
0359: DUP1
035a: MLOAD
035b: PUSH1 0x20
035d: PUSH1 0x44
035f: CALLDATALOAD
0360: PUSH1 0x04
0362: DUP2
0363: DUP2
0364: ADD
0365: CALLDATALOAD
0366: PUSH1 0x1f
0368: DUP2
0369: ADD
036a: DUP5
036b: SWAP1
036c: DIV
036d: DUP5
036e: MUL
036f: DUP6
0370: ADD
0371: DUP5
0372: ADD
0373: SWAP1
0374: SWAP6
0375: MSTORE
0376: DUP5
0377: DUP5
0378: MSTORE
0379: PUSH2 0x05ea
037c: SWAP5
037d: DUP2
037e: CALLDATALOAD
037f: SWAP5
0380: PUSH1 0x24
0382: DUP1
0383: CALLDATALOAD
0384: SWAP6
0385: SWAP4
0386: SWAP5
0387: PUSH1 0x64
0389: SWAP5
038a: SWAP3
038b: SWAP4
038c: SWAP2
038d: ADD
038e: SWAP2
038f: DUP2
0390: SWAP1
0391: DUP5
0392: ADD
0393: DUP4
0394: DUP3
0395: DUP1
0396: DUP3
0397: DUP5
0398: CALLDATACOPY
0399: POP
039a: SWAP5
039b: SWAP7
039c: POP
039d: POP
039e: POP
039f: POP
03a0: POP
03a1: POP
03a2: POP
03a3: PUSH1 0x00
03a5: PUSH1 0x00
03a7: DUP4
03a8: PUSH1 0x0a
03aa: PUSH1 0x00
03ac: POP
03ad: PUSH1 0x00
03af: CALLER
03b0: PUSH1 0x01
03b2: PUSH1 0xa0
03b4: PUSH1 0x02
03b6: EXP
03b7: SUB
03b8: AND
03b9: DUP2
03ba: MSTORE
03bb: PUSH1 0x20
03bd: ADD
03be: SWAP1
03bf: DUP2
03c0: MSTORE
03c1: PUSH1 0x20
03c3: ADD
03c4: PUSH1 0x00
03c6: SHA3
03c7: PUSH1 0x00
03c9: POP
03ca: PUSH1 0x00
03cc: DUP8
03cd: PUSH1 0x01
03cf: PUSH1 0xa0
03d1: PUSH1 0x02
03d3: EXP
03d4: SUB
03d5: AND
03d6: DUP2
03d7: MSTORE
03d8: PUSH1 0x20
03da: ADD
03db: SWAP1
03dc: DUP2
03dd: MSTORE
03de: PUSH1 0x20
03e0: ADD
03e1: PUSH1 0x00
03e3: SHA3
03e4: PUSH1 0x00
03e6: POP
03e7: DUP2
03e8: SWAP1
03e9: SSTORE
03ea: POP
03eb: DUP5
03ec: SWAP1
03ed: POP
03ee: DUP1
03ef: PUSH1 0x01
03f1: PUSH1 0xa0
03f3: PUSH1 0x02
03f5: EXP
03f6: SUB
03f7: AND
03f8: PUSH4 0x8f4ffcb1
03fd: CALLER
03fe: DUP7
03ff: ADDRESS
0400: DUP8
0401: PUSH1 0x40
0403: MLOAD
0404: DUP6
0405: PUSH1 0xe0
0407: PUSH1 0x02
0409: EXP
040a: MUL
040b: DUP2
040c: MSTORE
040d: PUSH1 0x04
040f: ADD
0410: DUP1
0411: DUP6
0412: PUSH1 0x01
0414: PUSH1 0xa0
0416: PUSH1 0x02
0418: EXP
0419: SUB
041a: AND
041b: DUP2
041c: MSTORE
041d: PUSH1 0x20
041f: ADD
0420: DUP5
0421: DUP2
0422: MSTORE
0423: PUSH1 0x20
0425: ADD
0426: DUP4
0427: PUSH1 0x01
0429: PUSH1 0xa0
042b: PUSH1 0x02
042d: EXP
042e: SUB
042f: AND
0430: DUP2
0431: MSTORE
0432: PUSH1 0x20
0434: ADD
0435: DUP1
0436: PUSH1 0x20
0438: ADD
0439: DUP3
043a: DUP2
043b: SUB
043c: DUP3
043d: MSTORE
043e: DUP4
043f: DUP2
0440: DUP2
0441: MLOAD
0442: DUP2
0443: MSTORE
0444: PUSH1 0x20
0446: ADD
0447: SWAP2
0448: POP
0449: DUP1
044a: MLOAD
044b: SWAP1
044c: PUSH1 0x20
044e: ADD
044f: SWAP1
0450: DUP1
0451: DUP4
0452: DUP4
0453: DUP3
0454: SWAP1
0455: PUSH1 0x00
0457: PUSH1 0x04
0459: PUSH1 0x20
045b: DUP5
045c: PUSH1 0x1f
045e: ADD
045f: DIV
0460: PUSH1 0x0f
0462: MUL
0463: PUSH1 0x03
0465: ADD
0466: CALL
0467: POP
0468: SWAP1
0469: POP
046a: SWAP1
046b: DUP2
046c: ADD
046d: SWAP1
046e: PUSH1 0x1f
0470: AND
0471: DUP1
0472: ISZERO
0473: PUSH2 0x0490
0476: JUMPI
0477: DUP1
0478: DUP3
0479: SUB
047a: DUP1
047b: MLOAD
047c: PUSH1 0x01
047e: DUP4
047f: PUSH1 0x20
0481: SUB
0482: PUSH2 0x0100
0485: EXP
0486: SUB
0487: NOT
0488: AND
0489: DUP2
048a: MSTORE
048b: PUSH1 0x20
048d: ADD
048e: SWAP2
048f: POP
0490: JUMPDEST
0491: POP
0492: SWAP6
0493: POP
0494: POP
0495: POP
0496: POP
0497: POP
0498: POP
0499: PUSH1 0x00
049b: PUSH1 0x40
049d: MLOAD
049e: DUP1
049f: DUP4
04a0: SUB
04a1: DUP2
04a2: PUSH1 0x00
04a4: DUP8
04a5: PUSH2 0x61da
04a8: GAS
04a9: SUB
04aa: CALL
04ab: ISZERO
04ac: PUSH2 0x0002
04af: JUMPI
04b0: POP
04b1: PUSH1 0x01
04b3: SWAP8
04b4: SWAP7
04b5: POP
04b6: POP
04b7: POP
04b8: POP
04b9: POP
04ba: POP
04bb: POP
04bc: JUMP
04bd: JUMPDEST
04be: PUSH1 0x0b
04c0: PUSH1 0x20
04c2: SWAP1
04c3: DUP2
--- 0x4f6-0x5eb ---
04f6: SHA3
04f7: SWAP1
04f8: SWAP3
04f9: MSTORE
04fa: PUSH1 0x24
04fc: CALLDATALOAD
04fd: DUP2
04fe: MSTORE
04ff: SHA3
0500: SLOAD
0501: PUSH2 0x05ea
0504: SWAP1
0505: DUP2
0506: JUMP
0507: JUMPDEST
0508: PUSH2 0x05ea
050b: PUSH1 0x04
050d: CALLDATALOAD
050e: PUSH1 0x04
0510: SLOAD
0511: ADDRESS
0512: PUSH1 0x01
0514: PUSH1 0xa0
0516: PUSH1 0x02
0518: EXP
0519: SUB
051a: SWAP1
051b: DUP2
051c: AND
051d: BALANCE
051e: PUSH5 0x174876e800
0524: MUL
0525: SWAP2
0526: SWAP1
0527: SWAP2
0528: DIV
0529: PUSH1 0x08
052b: SSTORE
052c: CALLER
052d: AND
052e: PUSH1 0x00
0530: SWAP1
0531: DUP2
0532: MSTORE
0533: PUSH1 0x09
0535: PUSH1 0x20
0537: MSTORE
0538: PUSH1 0x40
053a: DUP2
053b: SHA3
053c: SLOAD
053d: DUP3
053e: SWAP1
053f: LT
0540: ISZERO
0541: PUSH2 0x0989
0544: JUMPI
0545: PUSH2 0x0002
0548: JUMP
0549: JUMPDEST
054a: PUSH2 0x0106
054d: PUSH1 0x04
054f: CALLDATALOAD
0550: PUSH1 0x00
0552: SLOAD
0553: CALLER
0554: PUSH1 0x01
0556: PUSH1 0xa0
0558: PUSH1 0x02
055a: EXP
055b: SUB
055c: SWAP1
055d: DUP2
055e: AND
055f: SWAP2
0560: AND
0561: EQ
0562: PUSH2 0x0734
0565: JUMPI
0566: PUSH2 0x0002
0569: JUMP
056a: JUMPDEST
056b: PUSH2 0x062c
056e: PUSH1 0x05
0570: SLOAD
0571: PUSH1 0x01
0573: PUSH1 0xa0
0575: PUSH1 0x02
0577: EXP
0578: SUB
0579: AND
057a: DUP2
057b: JUMP
057c: JUMPDEST
057d: PUSH1 0x40
057f: MLOAD
0580: DUP1
0581: DUP1
0582: PUSH1 0x20
0584: ADD
0585: DUP3
0586: DUP2
0587: SUB
0588: DUP3
0589: MSTORE
058a: DUP4
058b: DUP2
058c: DUP2
058d: MLOAD
058e: DUP2
058f: MSTORE
0590: PUSH1 0x20
0592: ADD
0593: SWAP2
0594: POP
0595: DUP1
0596: MLOAD
0597: SWAP1
0598: PUSH1 0x20
059a: ADD
059b: SWAP1
059c: DUP1
059d: DUP4
059e: DUP4
059f: DUP3
05a0: SWAP1
05a1: PUSH1 0x00
05a3: PUSH1 0x04
05a5: PUSH1 0x20
05a7: DUP5
05a8: PUSH1 0x1f
05aa: ADD
05ab: DIV
05ac: PUSH1 0x0f
05ae: MUL
05af: PUSH1 0x03
05b1: ADD
05b2: CALL
05b3: POP
05b4: SWAP1
05b5: POP
05b6: SWAP1
05b7: DUP2
05b8: ADD
05b9: SWAP1
05ba: PUSH1 0x1f
05bc: AND
05bd: DUP1
05be: ISZERO
05bf: PUSH2 0x05dc
05c2: JUMPI
05c3: DUP1
05c4: DUP3
05c5: SUB
05c6: DUP1
05c7: MLOAD
05c8: PUSH1 0x01
05ca: DUP4
05cb: PUSH1 0x20
05cd: SUB
05ce: PUSH2 0x0100
05d1: EXP
05d2: SUB
05d3: NOT
05d4: AND
05d5: DUP2
05d6: MSTORE
05d7: PUSH1 0x20
05d9: ADD
05da: SWAP2
05db: POP
05dc: JUMPDEST
05dd: POP
05de: SWAP3
05df: POP
05e0: POP
05e1: POP
05e2: PUSH1 0x40
05e4: MLOAD
05e5: DUP1
05e6: SWAP2
05e7: SUB
05e8: SWAP1
05e9: RETURN
05ea: JUMPDEST
--- 0x640-0x744 ---
0640: SWAP1
0641: DUP2
0642: SWAP1
0643: SUB
0644: PUSH1 0x20
0646: ADD
0647: SWAP1
0648: RETURN
0649: JUMPDEST
064a: PUSH1 0x01
064c: PUSH1 0xa0
064e: PUSH1 0x02
0650: EXP
0651: SUB
0652: DUP4
0653: AND
0654: PUSH1 0x00
0656: SWAP1
0657: DUP2
0658: MSTORE
0659: PUSH1 0x09
065b: PUSH1 0x20
065d: MSTORE
065e: PUSH1 0x40
0660: SWAP1
0661: SHA3
0662: SLOAD
0663: DUP1
0664: DUP4
0665: ADD
0666: LT
0667: ISZERO
0668: PUSH2 0x0670
066b: JUMPI
066c: PUSH2 0x0002
066f: JUMP
0670: JUMPDEST
0671: PUSH1 0x01
0673: PUSH1 0xa0
0675: PUSH1 0x02
0677: EXP
0678: SUB
0679: DUP5
067a: DUP2
067b: AND
067c: PUSH1 0x00
067e: DUP2
067f: DUP2
0680: MSTORE
0681: PUSH1 0x0a
0683: PUSH1 0x20
0685: SWAP1
0686: DUP2
0687: MSTORE
0688: PUSH1 0x40
068a: DUP1
068b: DUP4
068c: SHA3
068d: CALLER
068e: SWAP1
068f: SWAP6
0690: AND
0691: DUP1
0692: DUP5
0693: MSTORE
0694: SWAP5
0695: DUP3
0696: MSTORE
0697: DUP1
0698: DUP4
0699: SHA3
069a: SLOAD
069b: SWAP4
069c: DUP4
069d: MSTORE
069e: PUSH1 0x0b
06a0: DUP3
06a1: MSTORE
06a2: DUP1
06a3: DUP4
06a4: SHA3
06a5: SWAP5
06a6: DUP4
06a7: MSTORE
06a8: SWAP4
06a9: SWAP1
06aa: MSTORE
06ab: SWAP2
06ac: SWAP1
06ad: SWAP2
06ae: SHA3
06af: SLOAD
06b0: DUP4
06b1: ADD
06b2: GT
06b3: ISZERO
06b4: PUSH2 0x06bc
06b7: JUMPI
06b8: PUSH2 0x0002
06bb: JUMP
06bc: JUMPDEST
06bd: PUSH1 0x01
06bf: PUSH1 0xa0
06c1: PUSH1 0x02
06c3: EXP
06c4: SUB
06c5: DUP5
06c6: DUP2
06c7: AND
06c8: PUSH1 0x00
06ca: DUP2
06cb: DUP2
06cc: MSTORE
06cd: PUSH1 0x09
06cf: PUSH1 0x20
06d1: SWAP1
06d2: DUP2
06d3: MSTORE
06d4: PUSH1 0x40
06d6: DUP1
06d7: DUP4
06d8: SHA3
06d9: DUP1
06da: SLOAD
06db: DUP9
06dc: SWAP1
06dd: SUB
06de: SWAP1
06df: SSTORE
06e0: DUP8
06e1: DUP6
06e2: AND
06e3: DUP1
06e4: DUP5
06e5: MSTORE
06e6: DUP2
06e7: DUP5
06e8: SHA3
06e9: DUP1
06ea: SLOAD
06eb: DUP10
06ec: ADD
06ed: SWAP1
06ee: SSTORE
06ef: DUP5
06f0: DUP5
06f1: MSTORE
06f2: PUSH1 0x0b
06f4: DUP4
06f5: MSTORE
06f6: DUP2
06f7: DUP5
06f8: SHA3
06f9: CALLER
06fa: SWAP1
06fb: SWAP7
06fc: AND
06fd: DUP5
06fe: MSTORE
06ff: SWAP5
0700: DUP3
0701: MSTORE
0702: SWAP2
0703: DUP3
0704: SWAP1
0705: SHA3
0706: DUP1
0707: SLOAD
0708: DUP8
0709: ADD
070a: SWAP1
070b: SSTORE
070c: DUP2
070d: MLOAD
070e: DUP7
070f: DUP2
0710: MSTORE
0711: SWAP2
0712: MLOAD
0713: PUSH1 0x00
0715: DUP1
0716: MLOAD
0717: PUSH1 0x20
0719: PUSH2 0x0a07
071c: DUP4
071d: CODECOPY
071e: DUP2
071f: MLOAD
0720: SWAP2
0721: MSTORE
0722: SWAP3
0723: DUP2
0724: SWAP1
0725: SUB
0726: SWAP1
0727: SWAP2
0728: ADD
0729: SWAP1
072a: LOG3
072b: POP
072c: PUSH1 0x01
072e: SWAP4
072f: SWAP3
0730: POP
0731: POP
0732: POP
0733: JUMP
0734: JUMPDEST
0735: PUSH1 0x00
0737: DUP1
0738: SLOAD
0739: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
--- 0x78a-0x81b ---
078a: POP
078b: SWAP4
078c: SWAP3
078d: POP
078e: POP
078f: POP
0790: JUMP
0791: JUMPDEST
0792: PUSH1 0x01
0794: PUSH1 0xa0
0796: PUSH1 0x02
0798: EXP
0799: SUB
079a: DUP3
079b: AND
079c: PUSH1 0x00
079e: SWAP1
079f: DUP2
07a0: MSTORE
07a1: PUSH1 0x09
07a3: PUSH1 0x20
07a5: MSTORE
07a6: PUSH1 0x40
07a8: SWAP1
07a9: SHA3
07aa: SLOAD
07ab: DUP2
07ac: DUP2
07ad: ADD
07ae: LT
07af: ISZERO
07b0: PUSH2 0x07b8
07b3: JUMPI
07b4: PUSH2 0x0002
07b7: JUMP
07b8: JUMPDEST
07b9: CALLER
07ba: PUSH1 0x01
07bc: PUSH1 0xa0
07be: PUSH1 0x02
07c0: EXP
07c1: SUB
07c2: SWAP1
07c3: DUP2
07c4: AND
07c5: PUSH1 0x00
07c7: DUP2
07c8: DUP2
07c9: MSTORE
07ca: PUSH1 0x09
07cc: PUSH1 0x20
07ce: SWAP1
07cf: DUP2
07d0: MSTORE
07d1: PUSH1 0x40
07d3: DUP1
07d4: DUP4
07d5: SHA3
07d6: DUP1
07d7: SLOAD
07d8: DUP8
07d9: SWAP1
07da: SUB
07db: SWAP1
07dc: SSTORE
07dd: SWAP4
07de: DUP7
07df: AND
07e0: DUP1
07e1: DUP4
07e2: MSTORE
07e3: SWAP2
07e4: DUP5
07e5: SWAP1
07e6: SHA3
07e7: DUP1
07e8: SLOAD
07e9: DUP7
07ea: ADD
07eb: SWAP1
07ec: SSTORE
07ed: DUP4
07ee: MLOAD
07ef: DUP6
07f0: DUP2
07f1: MSTORE
07f2: SWAP4
07f3: MLOAD
07f4: SWAP2
07f5: SWAP4
07f6: PUSH1 0x00
07f8: DUP1
07f9: MLOAD
07fa: PUSH1 0x20
07fc: PUSH2 0x0a07
07ff: DUP4
0800: CODECOPY
0801: DUP2
0802: MLOAD
0803: SWAP2
0804: MSTORE
0805: SWAP3
0806: SWAP1
0807: DUP2
0808: SWAP1
0809: SUB
080a: SWAP1
080b: SWAP2
080c: ADD
080d: SWAP1
080e: LOG3
080f: POP
0810: POP
0811: JUMP
0812: JUMPDEST
0813: PUSH1 0x06
0815: SSTORE
0816: JUMP
0817: JUMPDEST
0818: PUSH1 0x05
081a: DUP1
--- 0x85c-0xa0a ---
085c: SWAP1
085d: SSTORE
085e: POP
085f: JUMP
0860: JUMPDEST
0861: PUSH1 0x04
0863: SLOAD
0864: ADDRESS
0865: PUSH1 0x01
0867: PUSH1 0xa0
0869: PUSH1 0x02
086b: EXP
086c: SUB
086d: AND
086e: BALANCE
086f: PUSH5 0x174876e800
0875: MUL
0876: DIV
0877: PUSH1 0x08
0879: SSTORE
087a: PUSH1 0x40
087c: DUP1
087d: MLOAD
087e: NUMBER
087f: DUP2
0880: MSTORE
0881: TIMESTAMP
0882: PUSH1 0x20
0884: DUP3
0885: ADD
0886: MSTORE
0887: DUP1
0888: DUP3
0889: ADD
088a: DUP7
088b: SWAP1
088c: MSTORE
088d: SWAP1
088e: MLOAD
088f: SWAP1
0890: DUP2
0891: SWAP1
0892: SUB
0893: PUSH1 0x60
0895: ADD
0896: SWAP1
0897: SHA3
0898: PUSH2 0x08a2
089b: SWAP1
089c: PUSH1 0x0a
089e: PUSH2 0x01e7
08a1: JUMP
08a2: JUMPDEST
08a3: PUSH1 0x07
08a5: SLOAD
08a6: SWAP1
08a7: SWAP2
08a8: POP
08a9: PUSH4 0xffffffff
08ae: AND
08af: DUP2
08b0: LT
08b1: PUSH2 0x08c7
08b4: JUMPI
08b5: PUSH1 0x00
08b7: SWAP3
08b8: POP
08b9: PUSH2 0x03e7
08bc: PUSH5 0x174876e800
08c2: DUP6
08c3: DIV
08c4: DIV
08c5: SWAP2
08c6: POP
08c7: JUMPDEST
08c8: PUSH1 0x07
08ca: SLOAD
08cb: PUSH4 0xffffffff
08d0: AND
08d1: DUP2
08d2: LT
08d3: ISZERO
08d4: PUSH2 0x08e5
08d7: JUMPI
08d8: PUSH5 0x174876e800
08de: PUSH1 0x02
08e0: DUP6
08e1: MUL
08e2: DIV
08e3: SWAP3
08e4: POP
08e5: JUMPDEST
08e6: CALLER
08e7: PUSH1 0x01
08e9: PUSH1 0xa0
08eb: PUSH1 0x02
08ed: EXP
08ee: SUB
08ef: SWAP1
08f0: DUP2
08f1: AND
08f2: PUSH1 0x00
08f4: DUP2
08f5: DUP2
08f6: MSTORE
08f7: PUSH1 0x09
08f9: PUSH1 0x20
08fb: SWAP1
08fc: DUP2
08fd: MSTORE
08fe: PUSH1 0x40
0900: DUP1
0901: DUP4
0902: SHA3
0903: DUP1
0904: SLOAD
0905: DUP10
0906: ADD
0907: SWAP1
0908: SSTORE
0909: PUSH1 0x05
090b: SLOAD
090c: DUP6
090d: AND
090e: DUP4
090f: MSTORE
0910: DUP1
0911: DUP4
0912: SHA3
0913: DUP1
0914: SLOAD
0915: DUP9
0916: ADD
0917: SWAP1
0918: SSTORE
0919: ADDRESS
091a: SWAP1
091b: SWAP5
091c: AND
091d: DUP1
091e: DUP4
091f: MSTORE
0920: SWAP2
0921: DUP5
0922: SWAP1
0923: SHA3
0924: DUP1
0925: SLOAD
0926: DUP8
0927: DUP10
0928: ADD
0929: SWAP1
092a: SUB
092b: SWAP1
092c: SSTORE
092d: DUP4
092e: MLOAD
092f: DUP8
0930: DUP2
0931: MSTORE
0932: SWAP4
0933: MLOAD
0934: SWAP3
0935: SWAP4
0936: SWAP2
0937: SWAP3
0938: PUSH1 0x00
093a: DUP1
093b: MLOAD
093c: PUSH1 0x20
093e: PUSH2 0x0a07
0941: DUP4
0942: CODECOPY
0943: DUP2
0944: MLOAD
0945: SWAP2
0946: MSTORE
0947: SWAP3
0948: DUP2
0949: SWAP1
094a: SUB
094b: SWAP1
094c: SWAP2
094d: ADD
094e: SWAP1
094f: LOG3
0950: PUSH1 0x05
0952: SLOAD
0953: PUSH1 0x40
0955: DUP1
0956: MLOAD
0957: DUP5
0958: DUP2
0959: MSTORE
095a: SWAP1
095b: MLOAD
095c: PUSH1 0x01
095e: PUSH1 0xa0
0960: PUSH1 0x02
0962: EXP
0963: SUB
0964: SWAP3
0965: DUP4
0966: AND
0967: SWAP3
0968: ADDRESS
0969: AND
096a: SWAP2
096b: PUSH1 0x00
096d: DUP1
096e: MLOAD
096f: PUSH1 0x20
0971: PUSH2 0x0a07
0974: DUP4
0975: CODECOPY
0976: DUP2
0977: MLOAD
0978: SWAP2
0979: MSTORE
097a: SWAP2
097b: SWAP1
097c: DUP2
097d: SWAP1
097e: SUB
097f: PUSH1 0x20
0981: ADD
0982: SWAP1
0983: LOG3
0984: POP
0985: POP
0986: POP
0987: SWAP1
0988: JUMP
0989: JUMPDEST
098a: POP
098b: ADDRESS
098c: PUSH1 0x01
098e: PUSH1 0xa0
0990: PUSH1 0x02
0992: EXP
0993: SUB
0994: SWAP1
0995: DUP2
0996: AND
0997: PUSH1 0x00
0999: SWAP1
099a: DUP2
099b: MSTORE
099c: PUSH1 0x09
099e: PUSH1 0x20
09a0: MSTORE
09a1: PUSH1 0x40
09a3: DUP1
09a4: DUP3
09a5: SHA3
09a6: DUP1
09a7: SLOAD
09a8: DUP6
09a9: ADD
09aa: SWAP1
09ab: SSTORE
09ac: CALLER
09ad: SWAP1
09ae: SWAP3
09af: AND
09b0: DUP1
09b1: DUP3
09b2: MSTORE
09b3: DUP3
09b4: DUP3
09b5: SHA3
09b6: DUP1
09b7: SLOAD
09b8: DUP6
09b9: SWAP1
09ba: SUB
09bb: SWAP1
09bc: SSTORE
09bd: SWAP2
09be: MLOAD
09bf: PUSH1 0x08
09c1: SLOAD
09c2: DUP5
09c3: MUL
09c4: SWAP3
09c5: SWAP2
09c6: SWAP1
09c7: DUP4
09c8: SWAP1
09c9: DUP3
09ca: DUP2
09cb: DUP2
09cc: DUP2
09cd: DUP6
09ce: DUP9
09cf: DUP4
09d0: CALL
09d1: POP
09d2: POP
09d3: PUSH1 0x40
09d5: DUP1
09d6: MLOAD
09d7: DUP7
09d8: DUP2
09d9: MSTORE
09da: SWAP1
09db: MLOAD
09dc: ADDRESS
09dd: PUSH1 0x01
09df: PUSH1 0xa0
09e1: PUSH1 0x02
09e3: EXP
09e4: SUB
09e5: AND
09e6: SWAP5
09e7: SWAP4
09e8: POP
09e9: PUSH1 0x00
09eb: DUP1
09ec: MLOAD
09ed: PUSH1 0x20
09ef: PUSH2 0x0a07
09f2: DUP4
09f3: CODECOPY
09f4: DUP2
09f5: MLOAD
09f6: SWAP2
09f7: MSTORE
09f8: SWAP3
09f9: POP
09fa: SWAP1
09fb: DUP2
09fc: SWAP1
09fd: SUB
09fe: PUSH1 0x20
0a00: ADD
0a01: SWAP1
0a02: LOG3
0a03: SWAP2
0a04: SWAP1
0a05: POP
0a06: JUMP
0a07: OP_dd
0a08: CALLCODE
0a09: MSTORE
codex
{"no_findings":false,"summary":"Bytecode appears to implement an owner-controlled ERC20-like token with buy/sell mechanics and one callback-style external call path. The strongest issues are an unchecked inventory subtraction in the buy path, an ignored ETH payout result in the sell path, and miner-manipulable randomness used in an economic flow.","findings":[{"severity":"high","category":"math","title":"Buy path can underflow the contract inventory balance and mint unbacked tokens","exploit_scenario":"In the payable buy function, the contract credits the buyer and a secondary recipient, then subtracts `amount + bonus` from the contract's own token balance. If the contract inventory is lower than that sum, the subtraction wraps under uint256 arithmetic instead of reverting. An attacker can keep buying after inventory is exhausted, obtain balances not backed by reserve inventory, and then redeem or transfer those tokens against other users.","recommendation":"Before subtracting from the contract-held balance, explicitly require `balance[address(this)] >= amount + bonus`, or use checked arithmetic throughout the accounting path.","evidence":"Selector `0xa6f2ae3a` is the payable entry. In its execution path, buyer balance is increased at `pc:0x0903`-`pc:0x0908`, a second address is credited at `pc:0x0913`-`pc:0x0918`, and the contract-held balance keyed by `ADDRESS` is reduced at `pc:0x0923`-`pc:0x092c`. I do not see a prior comparison against `balance[address(this)]` anywhere on this path; the surrounding bytecode is Solidity 0.4-era style without automatic overflow/underflow checks.","locations":["selector:0xa6f2ae3a","pc:0x0903","pc:0x0913","pc:0x0923"]},{"severity":"medium","category":"other","title":"Redeem/sell path burns balance before an unchecked ETH payout","exploit_scenario":"A user selling/redeeming tokens has their internal balance reduced and the contract balance increased before ETH is sent out. If the recipient is a contract with a reverting fallback or otherwise causes the low-level call to fail, the function still continues. The user can lose tokens while receiving no ETH.","recommendation":"Require the payout call to succeed and revert otherwise, or switch to a pull-withdrawal pattern where failed payouts do not mutate balances.","evidence":"Selector `0xe4849b32` refreshes pricing, checks the caller balance, then enters the payout path at `pc:0x0989`. State is updated first: contract balance is incremented at `pc:0x09a6`-`pc:0x09ab` and caller balance is decremented at `pc:0x09b5`-`pc:0x09bc`. The ETH transfer happens via `CALL` at `pc:0x09d0`, and the success value is immediately discarded with `POP` at `pc:0x09d1`-`pc:0x09d2`; there is no revert branch after this call.","locations":["selector:0xe4849b32","pc:0x0989","pc:0x09a6","pc:0x09b5","pc:0x09d0"]},{"severity":"medium","category":"oracle","title":"Economic logic depends on miner-manipulable block data for randomness","exploit_scenario":"If the computed random value affects token amount, bonus, or winner selection, block producers and sophisticated users can bias outcomes by choosing when to submit transactions, exploiting private orderflow, or slightly manipulating timestamp/ordering. That can skew payouts in their favor.","recommendation":"Do not use `BLOCKHASH`, `NUMBER`, or `TIMESTAMP` directly for value-bearing randomness. Use a commit-reveal scheme or an external/verifiable randomness source.","evidence":"The helper at selector `0x41fa4876` uses `BLOCKHASH` and `SHA3` then `MOD 2` at `pc:0x01f9`-`pc:0x0219`. The payable flow `0xa6f2ae3a` seeds that helper with current `NUMBER`, `TIMESTAMP`, and calldata-derived input at `pc:0x087e`-`pc:0x08a1`. Because this is bytecode-only analysis, I cannot prove the exact user-facing feature name, but the randomness is clearly derived from manipulable block variables inside an economic path.","locations":["selector:0x41fa4876","selector:0xa6f2ae3a","pc:0x01f9","pc:0x0215","pc:0x087e","pc:0x0898"]}]}
tokens used
91,141
{
"codex": {
"ran_at": "2026-04-05T06:54:33.612367+00:00",
"returncode": 0
},
"project": {
"mode": "bytecode",
"bytecode_length": 5200,
"bytecode_truncated": false,
"capability_graph_present": true,
"analysis_artifact_present": true
},
"summary": "Bytecode appears to implement an owner-controlled ERC20-like token with buy/sell mechanics and one callback-style external call path. The strongest issues are an unchecked inventory subtraction in the buy path, an ignored ETH payout result in the sell path, and miner-manipulable randomness used in an economic flow.",
"raw_final": {
"summary": "Bytecode appears to implement an owner-controlled ERC20-like token with buy/sell mechanics and one callback-style external call path. The strongest issues are an unchecked inventory subtraction in the buy path, an ignored ETH payout result in the sell path, and miner-manipulable randomness used in an economic flow.",
"findings": [
{
"title": "Buy path can underflow the contract inventory balance and mint unbacked tokens",
"category": "math",
"evidence": "Selector `0xa6f2ae3a` is the payable entry. In its execution path, buyer balance is increased at `pc:0x0903`-`pc:0x0908`, a second address is credited at `pc:0x0913`-`pc:0x0918`, and the contract-held balance keyed by `ADDRESS` is reduced at `pc:0x0923`-`pc:0x092c`. I do not see a prior comparison against `balance[address(this)]` anywhere on this path; the surrounding bytecode is Solidity 0.4-era style without automatic overflow/underflow checks.",
"severity": "high",
"locations": [
"selector:0xa6f2ae3a",
"pc:0x0903",
"pc:0x0913",
"pc:0x0923"
],
"recommendation": "Before subtracting from the contract-held balance, explicitly require `balance[address(this)] >= amount + bonus`, or use checked arithmetic throughout the accounting path.",
"exploit_scenario": "In the payable buy function, the contract credits the buyer and a secondary recipient, then subtracts `amount + bonus` from the contract's own token balance. If the contract inventory is lower than that sum, the subtraction wraps under uint256 arithmetic instead of reverting. An attacker can keep buying after inventory is exhausted, obtain balances not backed by reserve inventory, and then redeem or transfer those tokens against other users."
},
{
"title": "Redeem/sell path burns balance before an unchecked ETH payout",
"category": "other",
"evidence": "Selector `0xe4849b32` refreshes pricing, checks the caller balance, then enters the payout path at `pc:0x0989`. State is updated first: contract balance is incremented at `pc:0x09a6`-`pc:0x09ab` and caller balance is decremented at `pc:0x09b5`-`pc:0x09bc`. The ETH transfer happens via `CALL` at `pc:0x09d0`, and the success value is immediately discarded with `POP` at `pc:0x09d1`-`pc:0x09d2`; there is no revert branch after this call.",
"severity": "medium",
"locations": [
"selector:0xe4849b32",
"pc:0x0989",
"pc:0x09a6",
"pc:0x09b5",
"pc:0x09d0"
],
"recommendation": "Require the payout call to succeed and revert otherwise, or switch to a pull-withdrawal pattern where failed payouts do not mutate balances.",
"exploit_scenario": "A user selling/redeeming tokens has their internal balance reduced and the contract balance increased before ETH is sent out. If the recipient is a contract with a reverting fallback or otherwise causes the low-level call to fail, the function still continues. The user can lose tokens while receiving no ETH."
},
{
"title": "Economic logic depends on miner-manipulable block data for randomness",
"category": "oracle",
"evidence": "The helper at selector `0x41fa4876` uses `BLOCKHASH` and `SHA3` then `MOD 2` at `pc:0x01f9`-`pc:0x0219`. The payable flow `0xa6f2ae3a` seeds that helper with current `NUMBER`, `TIMESTAMP`, and calldata-derived input at `pc:0x087e`-`pc:0x08a1`. Because this is bytecode-only analysis, I cannot prove the exact user-facing feature name, but the randomness is clearly derived from manipulable block variables inside an economic path.",
"severity": "medium",
"locations": [
"selector:0x41fa4876",
"selector:0xa6f2ae3a",
"pc:0x01f9",
"pc:0x0215",
"pc:0x087e",
"pc:0x0898"
],
"recommendation": "Do not use `BLOCKHASH`, `NUMBER`, or `TIMESTAMP` directly for value-bearing randomness. Use a commit-reveal scheme or an external/verifiable randomness source.",
"exploit_scenario": "If the computed random value affects token amount, bonus, or winner selection, block producers and sophisticated users can bias outcomes by choosing when to submit transactions, exploiting private orderflow, or slightly manipulating timestamp/ordering. That can skew payouts in their favor."
}
],
"no_findings": false
},
"no_findings": false,
"schema_version": 1
}
00000000: PUSH1 0x60 00000002: PUSH1 0x40 00000004: MSTORE 00000005: CALLDATASIZE 00000006: ISZERO 00000007: PUSH2 0x0106 0000000a: JUMPI 0000000b: PUSH1 0xe0 0000000d: PUSH1 0x02 0000000f: EXP 00000010: PUSH1 0x00 00000012: CALLDATALOAD 00000013: DIV 00000014: PUSH4 0x06fdde03 00000019: DUP2 0000001a: EQ 0000001b: PUSH2 0x0108 0000001e: JUMPI 0000001f: DUP1 00000020: PUSH4 0x18160ddd 00000025: EQ 00000026: PUSH2 0x0165 00000029: JUMPI 0000002a: DUP1 0000002b: PUSH4 0x1fe9eabc 00000030: EQ 00000031: PUSH2 0x016e 00000034: JUMPI 00000035: DUP1 00000036: PUSH4 0x233de126 0000003b: EQ 0000003c: PUSH2 0x0190 0000003f: JUMPI 00000040: DUP1 00000041: PUSH4 0x23b872dd 00000046: EQ 00000047: PUSH2 0x019f 0000004a: JUMPI 0000004b: DUP1 0000004c: PUSH4 0x313ce567 00000051: EQ 00000052: PUSH2 0x01d1 00000055: JUMPI 00000056: DUP1 00000057: PUSH4 0x41fa4876 0000005c: EQ 0000005d: PUSH2 0x01dd 00000060: JUMPI 00000061: DUP1 00000062: PUSH4 0x70a08231 00000067: EQ 00000068: PUSH2 0x0233 0000006b: JUMPI 0000006c: DUP1 0000006d: PUSH4 0x7f2a8a80 00000072: EQ 00000073: PUSH2 0x024b 00000076: JUMPI 00000077: DUP1 00000078: PUSH4 0x8da5cb5b 0000007d: EQ 0000007e: PUSH2 0x026c 00000081: JUMPI 00000082: DUP1 00000083: PUSH4 0x95d89b41 00000088: EQ 00000089: PUSH2 0x027e 0000008c: JUMPI 0000008d: DUP1 0000008e: PUSH4 0xa6f2ae3a 00000093: EQ 00000094: PUSH2 0x02d9 00000097: JUMPI 00000098: DUP1 00000099: PUSH4 0xa9059cbb 0000009e: EQ 0000009f: PUSH2 0x02f4 000000a2: JUMPI 000000a3: DUP1 000000a4: PUSH4 0xaa295de9 000000a9: EQ 000000aa: PUSH2 0x0323 000000ad: JUMPI 000000ae: DUP1 000000af: PUSH4 0xbc094049 000000b4: EQ 000000b5: PUSH2 0x032c 000000b8: JUMPI 000000b9: DUP1 000000ba: PUSH4 0xc4839e8b 000000bf: EQ 000000c0: PUSH2 0x0335 000000c3: JUMPI 000000c4: DUP1 000000c5: PUSH4 0xcae9ca51 000000ca: EQ 000000cb: PUSH2 0x0356 000000ce: JUMPI 000000cf: DUP1 000000d0: PUSH4 0xdc3080f2 000000d5: EQ 000000d6: PUSH2 0x04bd 000000d9: JUMPI 000000da: DUP1 000000db: PUSH4 0xdd62ed3e 000000e0: EQ 000000e1: PUSH2 0x04e2 000000e4: JUMPI 000000e5: DUP1 000000e6: PUSH4 0xe4849b32 000000eb: EQ 000000ec: PUSH2 0x0507 000000ef: JUMPI 000000f0: DUP1 000000f1: PUSH4 0xf2fde38b 000000f6: EQ 000000f7: PUSH2 0x0549 000000fa: JUMPI 000000fb: DUP1 000000fc: PUSH4 0xff9b3acf 00000101: EQ 00000102: PUSH2 0x056a 00000105: JUMPI 00000106: JUMPDEST 00000107: STOP 00000108: JUMPDEST 00000109: PUSH1 0x40 0000010b: DUP1 0000010c: MLOAD 0000010d: PUSH1 0x01 0000010f: DUP1 00000110: SLOAD 00000111: PUSH1 0x20 00000113: PUSH1 0x02 00000115: DUP3 00000116: DUP5 00000117: AND 00000118: ISZERO 00000119: PUSH2 0x0100 0000011c: MUL 0000011d: PUSH1 0x00 0000011f: NOT 00000120: ADD 00000121: SWAP1 00000122: SWAP3 00000123: AND 00000124: SWAP2 00000125: SWAP1 00000126: SWAP2 00000127: DIV 00000128: PUSH1 0x1f 0000012a: DUP2 0000012b: ADD 0000012c: DUP3 0000012d: SWAP1 0000012e: DIV 0000012f: DUP3 00000130: MUL 00000131: DUP5 00000132: ADD 00000133: DUP3 00000134: ADD 00000135: SWAP1 00000136: SWAP5 00000137: MSTORE 00000138: DUP4 00000139: DUP4 0000013a: MSTORE 0000013b: PUSH2 0x057c 0000013e: SWAP4 0000013f: SWAP1 00000140: DUP4 00000141: ADD 00000142: DUP3 00000143: DUP3 00000144: DUP1 00000145: ISZERO 00000146: PUSH2 0x0781 00000149: JUMPI 0000014a: DUP1 0000014b: PUSH1 0x1f 0000014d: LT 0000014e: PUSH2 0x0756 00000151: JUMPI 00000152: PUSH2 0x0100 00000155: DUP1 00000156: DUP4 00000157: SLOAD 00000158: DIV 00000159: MUL 0000015a: DUP4 0000015b: MSTORE 0000015c: SWAP2 0000015d: PUSH1 0x20 0000015f: ADD 00000160: SWAP2 00000161: PUSH2 0x0781 00000164: JUMP 00000165: JUMPDEST 00000166: PUSH2 0x05ea 00000169: PUSH1 0x04 0000016b: SLOAD 0000016c: DUP2 0000016d: JUMP 0000016e: JUMPDEST 0000016f: PUSH2 0x0106 00000172: PUSH1 0x04 00000174: CALLDATALOAD 00000175: PUSH1 0x00 00000177: SLOAD 00000178: PUSH1 0x01 0000017a: PUSH1 0xa0 0000017c: PUSH1 0x02 0000017e: EXP 0000017f: SUB 00000180: SWAP1 00000181: DUP2 00000182: AND 00000183: CALLER 00000184: SWAP1 00000185: SWAP2 00000186: AND 00000187: EQ 00000188: PUSH2 0x0812 0000018b: JUMPI 0000018c: PUSH2 0x0002 0000018f: JUMP 00000190: JUMPDEST 00000191: PUSH2 0x05fc 00000194: PUSH1 0x07 00000196: SLOAD 00000197: PUSH4 0xffffffff 0000019c: AND 0000019d: DUP2 0000019e: JUMP 0000019f: JUMPDEST 000001a0: PUSH2 0x05ea 000001a3: PUSH1 0x04 000001a5: CALLDATALOAD 000001a6: PUSH1 0x24 000001a8: CALLDATALOAD 000001a9: PUSH1 0x44 000001ab: CALLDATALOAD 000001ac: PUSH1 0x01 000001ae: PUSH1 0xa0 000001b0: PUSH1 0x02 000001b2: EXP 000001b3: SUB 000001b4: DUP4 000001b5: AND 000001b6: PUSH1 0x00 000001b8: SWAP1 000001b9: DUP2 000001ba: MSTORE 000001bb: PUSH1 0x09 000001bd: PUSH1 0x20 000001bf: MSTORE 000001c0: PUSH1 0x40 000001c2: DUP2 000001c3: KECCAK256 000001c4: SLOAD 000001c5: DUP3 000001c6: SWAP1 000001c7: LT 000001c8: ISZERO 000001c9: PUSH2 0x0649 000001cc: JUMPI 000001cd: PUSH2 0x0002 000001d0: JUMP 000001d1: JUMPDEST 000001d2: PUSH2 0x0616 000001d5: PUSH1 0x03 000001d7: SLOAD 000001d8: PUSH1 0xff 000001da: AND 000001db: DUP2 000001dc: JUMP 000001dd: JUMPDEST 000001de: PUSH2 0x05ea 000001e1: PUSH1 0x04 000001e3: CALLDATALOAD 000001e4: PUSH1 0x24 000001e6: CALLDATALOAD 000001e7: JUMPDEST 000001e8: PUSH1 0x00 000001ea: DUP1 000001eb: DUP1 000001ec: JUMPDEST 000001ed: DUP4 000001ee: DUP2 000001ef: LT 000001f0: ISZERO 000001f1: PUSH2 0x0789 000001f4: JUMPI 000001f5: PUSH1 0x40 000001f7: DUP1 000001f8: MLOAD 000001f9: NUMBER 000001fa: DUP4 000001fb: SWAP1 000001fc: SUB 000001fd: PUSH1 0x00 000001ff: NOT 00000200: ADD 00000201: BLOCKHASH 00000202: DUP2 00000203: MSTORE 00000204: PUSH1 0x20 00000206: DUP2 00000207: ADD 00000208: DUP8 00000209: SWAP1 0000020a: MSTORE 0000020b: DUP2 0000020c: MLOAD 0000020d: SWAP1 0000020e: DUP2 0000020f: SWAP1 00000210: SUB 00000211: SWAP1 00000212: SWAP2 00000213: ADD 00000214: SWAP1 00000215: KECCAK256 00000216: PUSH1 0x02 00000218: SWAP1 00000219: MOD 0000021a: PUSH1 0x00 0000021c: EQ 0000021d: ISZERO 0000021e: PUSH2 0x022b 00000221: JUMPI 00000222: PUSH1 0x02 00000224: DUP2 00000225: SWAP1 00000226: EXP 00000227: SWAP1 00000228: SWAP2 00000229: ADD 0000022a: SWAP1 0000022b: JUMPDEST 0000022c: PUSH1 0x01 0000022e: ADD 0000022f: PUSH2 0x01ec 00000232: JUMP 00000233: JUMPDEST 00000234: PUSH2 0x05ea 00000237: PUSH1 0x04 00000239: CALLDATALOAD 0000023a: PUSH1 0x09 0000023c: PUSH1 0x20 0000023e: MSTORE 0000023f: PUSH1 0x00 00000241: SWAP1 00000242: DUP2 00000243: MSTORE 00000244: PUSH1 0x40 00000246: SWAP1 00000247: KECCAK256 00000248: SLOAD 00000249: DUP2 0000024a: JUMP 0000024b: JUMPDEST 0000024c: PUSH2 0x0106 0000024f: PUSH1 0x04 00000251: CALLDATALOAD 00000252: PUSH1 0x00 00000254: SLOAD 00000255: CALLER 00000256: PUSH1 0x01 00000258: PUSH1 0xa0 0000025a: PUSH1 0x02 0000025c: EXP 0000025d: SUB 0000025e: SWAP1 0000025f: DUP2 00000260: AND 00000261: SWAP2 00000262: AND 00000263: EQ 00000264: PUSH2 0x0817 00000267: JUMPI 00000268: PUSH2 0x0002 0000026b: JUMP 0000026c: JUMPDEST 0000026d: PUSH2 0x062c 00000270: PUSH1 0x00 00000272: SLOAD 00000273: PUSH1 0x01 00000275: PUSH1 0xa0 00000277: PUSH1 0x02 00000279: EXP 0000027a: SUB 0000027b: AND 0000027c: DUP2 0000027d: JUMP 0000027e: JUMPDEST 0000027f: PUSH2 0x057c 00000282: PUSH1 0x02 00000284: DUP1 00000285: SLOAD 00000286: PUSH1 0x40 00000288: DUP1 00000289: MLOAD 0000028a: PUSH1 0x20 0000028c: PUSH1 0x01 0000028e: DUP5 0000028f: AND 00000290: ISZERO 00000291: PUSH2 0x0100 00000294: MUL 00000295: PUSH1 0x00 00000297: NOT 00000298: ADD 00000299: SWAP1 0000029a: SWAP4 0000029b: AND 0000029c: DUP5 0000029d: SWAP1 0000029e: DIV 0000029f: PUSH1 0x1f 000002a1: DUP2 000002a2: ADD 000002a3: DUP5 000002a4: SWAP1 000002a5: DIV 000002a6: DUP5 000002a7: MUL 000002a8: DUP3 000002a9: ADD 000002aa: DUP5 000002ab: ADD 000002ac: SWAP1 000002ad: SWAP3 000002ae: MSTORE 000002af: DUP2 000002b0: DUP2 000002b1: MSTORE 000002b2: SWAP3 000002b3: SWAP2 000002b4: DUP4 000002b5: ADD 000002b6: DUP3 000002b7: DUP3 000002b8: DUP1 000002b9: ISZERO 000002ba: PUSH2 0x0781 000002bd: JUMPI 000002be: DUP1 000002bf: PUSH1 0x1f 000002c1: LT 000002c2: PUSH2 0x0756 000002c5: JUMPI 000002c6: PUSH2 0x0100 000002c9: DUP1 000002ca: DUP4 000002cb: SLOAD 000002cc: DIV 000002cd: MUL 000002ce: DUP4 000002cf: MSTORE 000002d0: SWAP2 000002d1: PUSH1 0x20 000002d3: ADD 000002d4: SWAP2 000002d5: PUSH2 0x0781 000002d8: JUMP 000002d9: JUMPDEST 000002da: PUSH2 0x05ea 000002dd: PUSH1 0x06 000002df: SLOAD 000002e0: CALLVALUE 000002e1: SWAP1 000002e2: PUSH1 0x00 000002e4: SWAP1 000002e5: DUP2 000002e6: SWAP1 000002e7: DUP2 000002e8: SWAP1 000002e9: DUP5 000002ea: GT 000002eb: ISZERO 000002ec: PUSH2 0x0860 000002ef: JUMPI 000002f0: PUSH2 0x0002 000002f3: JUMP 000002f4: JUMPDEST 000002f5: PUSH2 0x0106 000002f8: PUSH1 0x04 000002fa: CALLDATALOAD 000002fb: PUSH1 0x24 000002fd: CALLDATALOAD 000002fe: CALLER 000002ff: PUSH1 0x01 00000301: PUSH1 0xa0 00000303: PUSH1 0x02 00000305: EXP 00000306: SUB 00000307: AND 00000308: PUSH1 0x00 0000030a: SWAP1 0000030b: DUP2 0000030c: MSTORE 0000030d: PUSH1 0x09 0000030f: PUSH1 0x20 00000311: MSTORE 00000312: PUSH1 0x40 00000314: SWAP1 00000315: KECCAK256 00000316: SLOAD 00000317: DUP2 00000318: SWAP1 00000319: LT 0000031a: ISZERO 0000031b: PUSH2 0x0791 0000031e: JUMPI 0000031f: PUSH2 0x0002 00000322: JUMP 00000323: JUMPDEST 00000324: PUSH2 0x05ea 00000327: PUSH1 0x06 00000329: SLOAD 0000032a: DUP2 0000032b: JUMP 0000032c: JUMPDEST 0000032d: PUSH2 0x05ea 00000330: PUSH1 0x08 00000332: SLOAD 00000333: DUP2 00000334: JUMP 00000335: JUMPDEST 00000336: PUSH2 0x0106 00000339: PUSH1 0x04 0000033b: CALLDATALOAD 0000033c: PUSH1 0x00 0000033e: SLOAD 0000033f: CALLER 00000340: PUSH1 0x01 00000342: PUSH1 0xa0 00000344: PUSH1 0x02 00000346: EXP 00000347: SUB 00000348: SWAP1 00000349: DUP2 0000034a: AND 0000034b: SWAP2 0000034c: AND 0000034d: EQ 0000034e: PUSH2 0x0839 00000351: JUMPI 00000352: PUSH2 0x0002 00000355: JUMP 00000356: JUMPDEST 00000357: PUSH1 0x40 00000359: DUP1 0000035a: MLOAD 0000035b: PUSH1 0x20 0000035d: PUSH1 0x44 0000035f: CALLDATALOAD 00000360: PUSH1 0x04 00000362: DUP2 00000363: DUP2 00000364: ADD 00000365: CALLDATALOAD 00000366: PUSH1 0x1f 00000368: DUP2 00000369: ADD 0000036a: DUP5 0000036b: SWAP1 0000036c: DIV 0000036d: DUP5 0000036e: MUL 0000036f: DUP6 00000370: ADD 00000371: DUP5 00000372: ADD 00000373: SWAP1 00000374: SWAP6 00000375: MSTORE 00000376: DUP5 00000377: DUP5 00000378: MSTORE 00000379: PUSH2 0x05ea 0000037c: SWAP5 0000037d: DUP2 0000037e: CALLDATALOAD 0000037f: SWAP5 00000380: PUSH1 0x24 00000382: DUP1 00000383: CALLDATALOAD 00000384: SWAP6 00000385: SWAP4 00000386: SWAP5 00000387: PUSH1 0x64 00000389: SWAP5 0000038a: SWAP3 0000038b: SWAP4 0000038c: SWAP2 0000038d: ADD 0000038e: SWAP2 0000038f: DUP2 00000390: SWAP1 00000391: DUP5 00000392: ADD 00000393: DUP4 00000394: DUP3 00000395: DUP1 00000396: DUP3 00000397: DUP5 00000398: CALLDATACOPY 00000399: POP 0000039a: SWAP5 0000039b: SWAP7 0000039c: POP 0000039d: POP 0000039e: POP 0000039f: POP 000003a0: POP 000003a1: POP 000003a2: POP 000003a3: PUSH1 0x00 000003a5: PUSH1 0x00 000003a7: DUP4 000003a8: PUSH1 0x0a 000003aa: PUSH1 0x00 000003ac: POP 000003ad: PUSH1 0x00 000003af: CALLER 000003b0: PUSH1 0x01 000003b2: PUSH1 0xa0 000003b4: PUSH1 0x02 000003b6: EXP 000003b7: SUB 000003b8: AND 000003b9: DUP2 000003ba: MSTORE 000003bb: PUSH1 0x20 000003bd: ADD 000003be: SWAP1 000003bf: DUP2 000003c0: MSTORE 000003c1: PUSH1 0x20 000003c3: ADD 000003c4: PUSH1 0x00 000003c6: KECCAK256 000003c7: PUSH1 0x00 000003c9: POP 000003ca: PUSH1 0x00 000003cc: DUP8 000003cd: PUSH1 0x01 000003cf: PUSH1 0xa0 000003d1: PUSH1 0x02 000003d3: EXP 000003d4: SUB 000003d5: AND 000003d6: DUP2 000003d7: MSTORE 000003d8: PUSH1 0x20 000003da: ADD 000003db: SWAP1 000003dc: DUP2 000003dd: MSTORE 000003de: PUSH1 0x20 000003e0: ADD 000003e1: PUSH1 0x00 000003e3: KECCAK256 000003e4: PUSH1 0x00 000003e6: POP 000003e7: DUP2 000003e8: SWAP1 000003e9: SSTORE 000003ea: POP 000003eb: DUP5 000003ec: SWAP1 000003ed: POP 000003ee: DUP1 000003ef: PUSH1 0x01 000003f1: PUSH1 0xa0 000003f3: PUSH1 0x02 000003f5: EXP 000003f6: SUB 000003f7: AND 000003f8: PUSH4 0x8f4ffcb1 000003fd: CALLER 000003fe: DUP7 000003ff: ADDRESS 00000400: DUP8 00000401: PUSH1 0x40 00000403: MLOAD 00000404: DUP6 00000405: PUSH1 0xe0 00000407: PUSH1 0x02 00000409: EXP 0000040a: MUL 0000040b: DUP2 0000040c: MSTORE 0000040d: PUSH1 0x04 0000040f: ADD 00000410: DUP1 00000411: DUP6 00000412: PUSH1 0x01 00000414: PUSH1 0xa0 00000416: PUSH1 0x02 00000418: EXP 00000419: SUB 0000041a: AND 0000041b: DUP2 0000041c: MSTORE 0000041d: PUSH1 0x20 0000041f: ADD 00000420: DUP5 00000421: DUP2 00000422: MSTORE 00000423: PUSH1 0x20 00000425: ADD 00000426: DUP4 00000427: PUSH1 0x01 00000429: PUSH1 0xa0 0000042b: PUSH1 0x02 0000042d: EXP 0000042e: SUB 0000042f: AND 00000430: DUP2 00000431: MSTORE 00000432: PUSH1 0x20 00000434: ADD 00000435: DUP1 00000436: PUSH1 0x20 00000438: ADD 00000439: DUP3 0000043a: DUP2 0000043b: SUB 0000043c: DUP3 0000043d: MSTORE 0000043e: DUP4 0000043f: DUP2 00000440: DUP2 00000441: MLOAD 00000442: DUP2 00000443: MSTORE 00000444: PUSH1 0x20 00000446: ADD 00000447: SWAP2 00000448: POP 00000449: DUP1 0000044a: MLOAD 0000044b: SWAP1 0000044c: PUSH1 0x20 0000044e: ADD 0000044f: SWAP1 00000450: DUP1 00000451: DUP4 00000452: DUP4 00000453: DUP3 00000454: SWAP1 00000455: PUSH1 0x00 00000457: PUSH1 0x04 00000459: PUSH1 0x20 0000045b: DUP5 0000045c: PUSH1 0x1f 0000045e: ADD 0000045f: DIV 00000460: PUSH1 0x0f 00000462: MUL 00000463: PUSH1 0x03 00000465: ADD 00000466: CALL 00000467: POP 00000468: SWAP1 00000469: POP 0000046a: SWAP1 0000046b: DUP2 0000046c: ADD 0000046d: SWAP1 0000046e: PUSH1 0x1f 00000470: AND 00000471: DUP1 00000472: ISZERO 00000473: PUSH2 0x0490 00000476: JUMPI 00000477: DUP1 00000478: DUP3 00000479: SUB 0000047a: DUP1 0000047b: MLOAD 0000047c: PUSH1 0x01 0000047e: DUP4 0000047f: PUSH1 0x20 00000481: SUB 00000482: PUSH2 0x0100 00000485: EXP 00000486: SUB 00000487: NOT 00000488: AND 00000489: DUP2 0000048a: MSTORE 0000048b: PUSH1 0x20 0000048d: ADD 0000048e: SWAP2 0000048f: POP 00000490: JUMPDEST 00000491: POP 00000492: SWAP6 00000493: POP 00000494: POP 00000495: POP 00000496: POP 00000497: POP 00000498: POP 00000499: PUSH1 0x00 0000049b: PUSH1 0x40 0000049d: MLOAD 0000049e: DUP1 0000049f: DUP4 000004a0: SUB 000004a1: DUP2 000004a2: PUSH1 0x00 000004a4: DUP8 000004a5: PUSH2 0x61da 000004a8: GAS 000004a9: SUB 000004aa: CALL 000004ab: ISZERO 000004ac: PUSH2 0x0002 000004af: JUMPI 000004b0: POP 000004b1: PUSH1 0x01 000004b3: SWAP8 000004b4: SWAP7 000004b5: POP 000004b6: POP 000004b7: POP 000004b8: POP 000004b9: POP 000004ba: POP 000004bb: POP 000004bc: JUMP 000004bd: JUMPDEST 000004be: PUSH1 0x0b 000004c0: PUSH1 0x20 000004c2: SWAP1 000004c3: DUP2 000004c4: MSTORE 000004c5: PUSH1 0x04 000004c7: CALLDATALOAD 000004c8: PUSH1 0x00 000004ca: SWAP1 000004cb: DUP2 000004cc: MSTORE 000004cd: PUSH1 0x40 000004cf: DUP1 000004d0: DUP3 000004d1: KECCAK256 000004d2: SWAP1 000004d3: SWAP3 000004d4: MSTORE 000004d5: PUSH1 0x24 000004d7: CALLDATALOAD 000004d8: DUP2 000004d9: MSTORE 000004da: KECCAK256 000004db: SLOAD 000004dc: PUSH2 0x05ea 000004df: SWAP1 000004e0: DUP2 000004e1: JUMP 000004e2: JUMPDEST 000004e3: PUSH1 0x0a 000004e5: PUSH1 0x20 000004e7: SWAP1 000004e8: DUP2 000004e9: MSTORE 000004ea: PUSH1 0x04 000004ec: CALLDATALOAD 000004ed: PUSH1 0x00 000004ef: SWAP1 000004f0: DUP2 000004f1: MSTORE 000004f2: PUSH1 0x40 000004f4: DUP1 000004f5: DUP3 000004f6: KECCAK256 000004f7: SWAP1 000004f8: SWAP3 000004f9: MSTORE 000004fa: PUSH1 0x24 000004fc: CALLDATALOAD 000004fd: DUP2 000004fe: MSTORE 000004ff: KECCAK256 00000500: SLOAD 00000501: PUSH2 0x05ea 00000504: SWAP1 00000505: DUP2 00000506: JUMP 00000507: JUMPDEST 00000508: PUSH2 0x05ea 0000050b: PUSH1 0x04 0000050d: CALLDATALOAD 0000050e: PUSH1 0x04 00000510: SLOAD 00000511: ADDRESS 00000512: PUSH1 0x01 00000514: PUSH1 0xa0 00000516: PUSH1 0x02 00000518: EXP 00000519: SUB 0000051a: SWAP1 0000051b: DUP2 0000051c: AND 0000051d: BALANCE 0000051e: PUSH5 0x174876e800 00000524: MUL 00000525: SWAP2 00000526: SWAP1 00000527: SWAP2 00000528: DIV 00000529: PUSH1 0x08 0000052b: SSTORE 0000052c: CALLER 0000052d: AND 0000052e: PUSH1 0x00 00000530: SWAP1 00000531: DUP2 00000532: MSTORE 00000533: PUSH1 0x09 00000535: PUSH1 0x20 00000537: MSTORE 00000538: PUSH1 0x40 0000053a: DUP2 0000053b: KECCAK256 0000053c: SLOAD 0000053d: DUP3 0000053e: SWAP1 0000053f: LT 00000540: ISZERO 00000541: PUSH2 0x0989 00000544: JUMPI 00000545: PUSH2 0x0002 00000548: JUMP 00000549: JUMPDEST 0000054a: PUSH2 0x0106 0000054d: PUSH1 0x04 0000054f: CALLDATALOAD 00000550: PUSH1 0x00 00000552: SLOAD 00000553: CALLER 00000554: PUSH1 0x01 00000556: PUSH1 0xa0 00000558: PUSH1 0x02 0000055a: EXP 0000055b: SUB 0000055c: SWAP1 0000055d: DUP2 0000055e: AND 0000055f: SWAP2 00000560: AND 00000561: EQ 00000562: PUSH2 0x0734 00000565: JUMPI 00000566: PUSH2 0x0002 00000569: JUMP 0000056a: JUMPDEST 0000056b: PUSH2 0x062c 0000056e: PUSH1 0x05 00000570: SLOAD 00000571: PUSH1 0x01 00000573: PUSH1 0xa0 00000575: PUSH1 0x02 00000577: EXP 00000578: SUB 00000579: AND 0000057a: DUP2 0000057b: JUMP 0000057c: JUMPDEST 0000057d: PUSH1 0x40 0000057f: MLOAD 00000580: DUP1 00000581: DUP1 00000582: PUSH1 0x20 00000584: ADD 00000585: DUP3 00000586: DUP2 00000587: SUB 00000588: DUP3 00000589: MSTORE 0000058a: DUP4 0000058b: DUP2 0000058c: DUP2 0000058d: MLOAD 0000058e: DUP2 0000058f: MSTORE 00000590: PUSH1 0x20 00000592: ADD 00000593: SWAP2 00000594: POP 00000595: DUP1 00000596: MLOAD 00000597: SWAP1 00000598: PUSH1 0x20 0000059a: ADD 0000059b: SWAP1 0000059c: DUP1 0000059d: DUP4 0000059e: DUP4 0000059f: DUP3 000005a0: SWAP1 000005a1: PUSH1 0x00 000005a3: PUSH1 0x04 000005a5: PUSH1 0x20 000005a7: DUP5 000005a8: PUSH1 0x1f 000005aa: ADD 000005ab: DIV 000005ac: PUSH1 0x0f 000005ae: MUL 000005af: PUSH1 0x03 000005b1: ADD 000005b2: CALL 000005b3: POP 000005b4: SWAP1 000005b5: POP 000005b6: SWAP1 000005b7: DUP2 000005b8: ADD 000005b9: SWAP1 000005ba: PUSH1 0x1f 000005bc: AND 000005bd: DUP1 000005be: ISZERO 000005bf: PUSH2 0x05dc 000005c2: JUMPI 000005c3: DUP1 000005c4: DUP3 000005c5: SUB 000005c6: DUP1 000005c7: MLOAD 000005c8: PUSH1 0x01 000005ca: DUP4 000005cb: PUSH1 0x20 000005cd: SUB 000005ce: PUSH2 0x0100 000005d1: EXP 000005d2: SUB 000005d3: NOT 000005d4: AND 000005d5: DUP2 000005d6: MSTORE 000005d7: PUSH1 0x20 000005d9: ADD 000005da: SWAP2 000005db: POP 000005dc: JUMPDEST 000005dd: POP 000005de: SWAP3 000005df: POP 000005e0: POP 000005e1: POP 000005e2: PUSH1 0x40 000005e4: MLOAD 000005e5: DUP1 000005e6: SWAP2 000005e7: SUB 000005e8: SWAP1 000005e9: RETURN 000005ea: JUMPDEST 000005eb: PUSH1 0x40 000005ed: DUP1 000005ee: MLOAD 000005ef: SWAP2 000005f0: DUP3 000005f1: MSTORE 000005f2: MLOAD 000005f3: SWAP1 000005f4: DUP2 000005f5: SWAP1 000005f6: SUB 000005f7: PUSH1 0x20 000005f9: ADD 000005fa: SWAP1 000005fb: RETURN 000005fc: JUMPDEST 000005fd: PUSH1 0x40 000005ff: DUP1 00000600: MLOAD 00000601: PUSH4 0xffffffff 00000606: SWAP3 00000607: SWAP1 00000608: SWAP3 00000609: AND 0000060a: DUP3 0000060b: MSTORE 0000060c: MLOAD 0000060d: SWAP1 0000060e: DUP2 0000060f: SWAP1 00000610: SUB 00000611: PUSH1 0x20 00000613: ADD 00000614: SWAP1 00000615: RETURN 00000616: JUMPDEST 00000617: PUSH1 0x40 00000619: DUP1 0000061a: MLOAD 0000061b: PUSH1 0xff 0000061d: SWAP1 0000061e: SWAP3 0000061f: AND 00000620: DUP3 00000621: MSTORE 00000622: MLOAD 00000623: SWAP1 00000624: DUP2 00000625: SWAP1 00000626: SUB 00000627: PUSH1 0x20 00000629: ADD 0000062a: SWAP1 0000062b: RETURN 0000062c: JUMPDEST 0000062d: PUSH1 0x40 0000062f: DUP1 00000630: MLOAD 00000631: PUSH1 0x01 00000633: PUSH1 0xa0 00000635: PUSH1 0x02 00000637: EXP 00000638: SUB 00000639: SWAP3 0000063a: SWAP1 0000063b: SWAP3 0000063c: AND 0000063d: DUP3 0000063e: MSTORE 0000063f: MLOAD 00000640: SWAP1 00000641: DUP2 00000642: SWAP1 00000643: SUB 00000644: PUSH1 0x20 00000646: ADD 00000647: SWAP1 00000648: RETURN 00000649: JUMPDEST 0000064a: PUSH1 0x01 0000064c: PUSH1 0xa0 0000064e: PUSH1 0x02 00000650: EXP 00000651: SUB 00000652: DUP4 00000653: AND 00000654: PUSH1 0x00 00000656: SWAP1 00000657: DUP2 00000658: MSTORE 00000659: PUSH1 0x09 0000065b: PUSH1 0x20 0000065d: MSTORE 0000065e: PUSH1 0x40 00000660: SWAP1 00000661: KECCAK256 00000662: SLOAD 00000663: DUP1 00000664: DUP4 00000665: ADD 00000666: LT 00000667: ISZERO 00000668: PUSH2 0x0670 0000066b: JUMPI 0000066c: PUSH2 0x0002 0000066f: JUMP 00000670: JUMPDEST 00000671: PUSH1 0x01 00000673: PUSH1 0xa0 00000675: PUSH1 0x02 00000677: EXP 00000678: SUB 00000679: DUP5 0000067a: DUP2 0000067b: AND 0000067c: PUSH1 0x00 0000067e: DUP2 0000067f: DUP2 00000680: MSTORE 00000681: PUSH1 0x0a 00000683: PUSH1 0x20 00000685: SWAP1 00000686: DUP2 00000687: MSTORE 00000688: PUSH1 0x40 0000068a: DUP1 0000068b: DUP4 0000068c: KECCAK256 0000068d: CALLER 0000068e: SWAP1 0000068f: SWAP6 00000690: AND 00000691: DUP1 00000692: DUP5 00000693: MSTORE 00000694: SWAP5 00000695: DUP3 00000696: MSTORE 00000697: DUP1 00000698: DUP4 00000699: KECCAK256 0000069a: SLOAD 0000069b: SWAP4 0000069c: DUP4 0000069d: MSTORE 0000069e: PUSH1 0x0b 000006a0: DUP3 000006a1: MSTORE 000006a2: DUP1 000006a3: DUP4 000006a4: KECCAK256 000006a5: SWAP5 000006a6: DUP4 000006a7: MSTORE 000006a8: SWAP4 000006a9: SWAP1 000006aa: MSTORE 000006ab: SWAP2 000006ac: SWAP1 000006ad: SWAP2 000006ae: KECCAK256 000006af: SLOAD 000006b0: DUP4 000006b1: ADD 000006b2: GT 000006b3: ISZERO 000006b4: PUSH2 0x06bc 000006b7: JUMPI 000006b8: PUSH2 0x0002 000006bb: JUMP 000006bc: JUMPDEST 000006bd: PUSH1 0x01 000006bf: PUSH1 0xa0 000006c1: PUSH1 0x02 000006c3: EXP 000006c4: SUB 000006c5: DUP5 000006c6: DUP2 000006c7: AND 000006c8: PUSH1 0x00 000006ca: DUP2 000006cb: DUP2 000006cc: MSTORE 000006cd: PUSH1 0x09 000006cf: PUSH1 0x20 000006d1: SWAP1 000006d2: DUP2 000006d3: MSTORE 000006d4: PUSH1 0x40 000006d6: DUP1 000006d7: DUP4 000006d8: KECCAK256 000006d9: DUP1 000006da: SLOAD 000006db: DUP9 000006dc: SWAP1 000006dd: SUB 000006de: SWAP1 000006df: SSTORE 000006e0: DUP8 000006e1: DUP6 000006e2: AND 000006e3: DUP1 000006e4: DUP5 000006e5: MSTORE 000006e6: DUP2 000006e7: DUP5 000006e8: KECCAK256 000006e9: DUP1 000006ea: SLOAD 000006eb: DUP10 000006ec: ADD 000006ed: SWAP1 000006ee: SSTORE 000006ef: DUP5 000006f0: DUP5 000006f1: MSTORE 000006f2: PUSH1 0x0b 000006f4: DUP4 000006f5: MSTORE 000006f6: DUP2 000006f7: DUP5 000006f8: KECCAK256 000006f9: CALLER 000006fa: SWAP1 000006fb: SWAP7 000006fc: AND 000006fd: DUP5 000006fe: MSTORE 000006ff: SWAP5 00000700: DUP3 00000701: MSTORE 00000702: SWAP2 00000703: DUP3 00000704: SWAP1 00000705: KECCAK256 00000706: DUP1 00000707: SLOAD 00000708: DUP8 00000709: ADD 0000070a: SWAP1 0000070b: SSTORE 0000070c: DUP2 0000070d: MLOAD 0000070e: DUP7 0000070f: DUP2 00000710: MSTORE 00000711: SWAP2 00000712: MLOAD 00000713: PUSH1 0x00 00000715: DUP1 00000716: MLOAD 00000717: PUSH1 0x20 00000719: PUSH2 0x0a07 0000071c: DUP4 0000071d: CODECOPY 0000071e: DUP2 0000071f: MLOAD 00000720: SWAP2 00000721: MSTORE 00000722: SWAP3 00000723: DUP2 00000724: SWAP1 00000725: SUB 00000726: SWAP1 00000727: SWAP2 00000728: ADD 00000729: SWAP1 0000072a: LOG3 0000072b: POP 0000072c: PUSH1 0x01 0000072e: SWAP4 0000072f: SWAP3 00000730: POP 00000731: POP 00000732: POP 00000733: JUMP 00000734: JUMPDEST 00000735: PUSH1 0x00 00000737: DUP1 00000738: SLOAD 00000739: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 0000074e: NOT 0000074f: AND 00000750: DUP3 00000751: OR 00000752: SWAP1 00000753: SSTORE 00000754: POP 00000755: JUMP 00000756: JUMPDEST 00000757: DUP3 00000758: ADD 00000759: SWAP2 0000075a: SWAP1 0000075b: PUSH1 0x00 0000075d: MSTORE 0000075e: PUSH1 0x20 00000760: PUSH1 0x00 00000762: KECCAK256 00000763: SWAP1 00000764: JUMPDEST 00000765: DUP2 00000766: SLOAD 00000767: DUP2 00000768: MSTORE 00000769: SWAP1 0000076a: PUSH1 0x01 0000076c: ADD 0000076d: SWAP1 0000076e: PUSH1 0x20 00000770: ADD 00000771: DUP1 00000772: DUP4 00000773: GT 00000774: PUSH2 0x0764 00000777: JUMPI 00000778: DUP3 00000779: SWAP1 0000077a: SUB 0000077b: PUSH1 0x1f 0000077d: AND 0000077e: DUP3 0000077f: ADD 00000780: SWAP2 00000781: JUMPDEST 00000782: POP 00000783: POP 00000784: POP 00000785: POP 00000786: POP 00000787: DUP2 00000788: JUMP 00000789: JUMPDEST 0000078a: POP 0000078b: SWAP4 0000078c: SWAP3 0000078d: POP 0000078e: POP 0000078f: POP 00000790: JUMP 00000791: JUMPDEST 00000792: PUSH1 0x01 00000794: PUSH1 0xa0 00000796: PUSH1 0x02 00000798: EXP 00000799: SUB 0000079a: DUP3 0000079b: AND 0000079c: PUSH1 0x00 0000079e: SWAP1 0000079f: DUP2 000007a0: MSTORE 000007a1: PUSH1 0x09 000007a3: PUSH1 0x20 000007a5: MSTORE 000007a6: PUSH1 0x40 000007a8: SWAP1 000007a9: KECCAK256 000007aa: SLOAD 000007ab: DUP2 000007ac: DUP2 000007ad: ADD 000007ae: LT 000007af: ISZERO 000007b0: PUSH2 0x07b8 000007b3: JUMPI 000007b4: PUSH2 0x0002 000007b7: JUMP 000007b8: JUMPDEST 000007b9: CALLER 000007ba: PUSH1 0x01 000007bc: PUSH1 0xa0 000007be: PUSH1 0x02 000007c0: EXP 000007c1: SUB 000007c2: SWAP1 000007c3: DUP2 000007c4: AND 000007c5: PUSH1 0x00 000007c7: DUP2 000007c8: DUP2 000007c9: MSTORE 000007ca: PUSH1 0x09 000007cc: PUSH1 0x20 000007ce: SWAP1 000007cf: DUP2 000007d0: MSTORE 000007d1: PUSH1 0x40 000007d3: DUP1 000007d4: DUP4 000007d5: KECCAK256 000007d6: DUP1 000007d7: SLOAD 000007d8: DUP8 000007d9: SWAP1 000007da: SUB 000007db: SWAP1 000007dc: SSTORE 000007dd: SWAP4 000007de: DUP7 000007df: AND 000007e0: DUP1 000007e1: DUP4 000007e2: MSTORE 000007e3: SWAP2 000007e4: DUP5 000007e5: SWAP1 000007e6: KECCAK256 000007e7: DUP1 000007e8: SLOAD 000007e9: DUP7 000007ea: ADD 000007eb: SWAP1 000007ec: SSTORE 000007ed: DUP4 000007ee: MLOAD 000007ef: DUP6 000007f0: DUP2 000007f1: MSTORE 000007f2: SWAP4 000007f3: MLOAD 000007f4: SWAP2 000007f5: SWAP4 000007f6: PUSH1 0x00 000007f8: DUP1 000007f9: MLOAD 000007fa: PUSH1 0x20 000007fc: PUSH2 0x0a07 000007ff: DUP4 00000800: CODECOPY 00000801: DUP2 00000802: MLOAD 00000803: SWAP2 00000804: MSTORE 00000805: SWAP3 00000806: SWAP1 00000807: DUP2 00000808: SWAP1 00000809: SUB 0000080a: SWAP1 0000080b: SWAP2 0000080c: ADD 0000080d: SWAP1 0000080e: LOG3 0000080f: POP 00000810: POP 00000811: JUMP 00000812: JUMPDEST 00000813: PUSH1 0x06 00000815: SSTORE 00000816: JUMP 00000817: JUMPDEST 00000818: PUSH1 0x05 0000081a: DUP1 0000081b: SLOAD 0000081c: PUSH20 0xffffffffffffffffffffffffffffffffffffffff 00000831: NOT 00000832: AND 00000833: DUP3 00000834: OR 00000835: SWAP1 00000836: SSTORE 00000837: POP 00000838: JUMP 00000839: JUMPDEST 0000083a: PUSH2 0x0200 0000083d: DUP2 0000083e: PUSH4 0xffffffff 00000843: AND 00000844: LT 00000845: ISZERO 00000846: PUSH2 0x084e 00000849: JUMPI 0000084a: PUSH2 0x0002 0000084d: JUMP 0000084e: JUMPDEST 0000084f: PUSH1 0x07 00000851: DUP1 00000852: SLOAD 00000853: PUSH4 0xffffffff 00000858: NOT 00000859: AND 0000085a: DUP3 0000085b: OR 0000085c: SWAP1 0000085d: SSTORE 0000085e: POP 0000085f: JUMP 00000860: JUMPDEST 00000861: PUSH1 0x04 00000863: SLOAD 00000864: ADDRESS 00000865: PUSH1 0x01 00000867: PUSH1 0xa0 00000869: PUSH1 0x02 0000086b: EXP 0000086c: SUB 0000086d: AND 0000086e: BALANCE 0000086f: PUSH5 0x174876e800 00000875: MUL 00000876: DIV 00000877: PUSH1 0x08 00000879: SSTORE 0000087a: PUSH1 0x40 0000087c: DUP1 0000087d: MLOAD 0000087e: NUMBER 0000087f: DUP2 00000880: MSTORE 00000881: TIMESTAMP 00000882: PUSH1 0x20 00000884: DUP3 00000885: ADD 00000886: MSTORE 00000887: DUP1 00000888: DUP3 00000889: ADD 0000088a: DUP7 0000088b: SWAP1 0000088c: MSTORE 0000088d: SWAP1 0000088e: MLOAD 0000088f: SWAP1 00000890: DUP2 00000891: SWAP1 00000892: SUB 00000893: PUSH1 0x60 00000895: ADD 00000896: SWAP1 00000897: KECCAK256 00000898: PUSH2 0x08a2 0000089b: SWAP1 0000089c: PUSH1 0x0a 0000089e: PUSH2 0x01e7 000008a1: JUMP 000008a2: JUMPDEST 000008a3: PUSH1 0x07 000008a5: SLOAD 000008a6: SWAP1 000008a7: SWAP2 000008a8: POP 000008a9: PUSH4 0xffffffff 000008ae: AND 000008af: DUP2 000008b0: LT 000008b1: PUSH2 0x08c7 000008b4: JUMPI 000008b5: PUSH1 0x00 000008b7: SWAP3 000008b8: POP 000008b9: PUSH2 0x03e7 000008bc: PUSH5 0x174876e800 000008c2: DUP6 000008c3: DIV 000008c4: DIV 000008c5: SWAP2 000008c6: POP 000008c7: JUMPDEST 000008c8: PUSH1 0x07 000008ca: SLOAD 000008cb: PUSH4 0xffffffff 000008d0: AND 000008d1: DUP2 000008d2: LT 000008d3: ISZERO 000008d4: PUSH2 0x08e5 000008d7: JUMPI 000008d8: PUSH5 0x174876e800 000008de: PUSH1 0x02 000008e0: DUP6 000008e1: MUL 000008e2: DIV 000008e3: SWAP3 000008e4: POP 000008e5: JUMPDEST 000008e6: CALLER 000008e7: PUSH1 0x01 000008e9: PUSH1 0xa0 000008eb: PUSH1 0x02 000008ed: EXP 000008ee: SUB 000008ef: SWAP1 000008f0: DUP2 000008f1: AND 000008f2: PUSH1 0x00 000008f4: DUP2 000008f5: DUP2 000008f6: MSTORE 000008f7: PUSH1 0x09 000008f9: PUSH1 0x20 000008fb: SWAP1 000008fc: DUP2 000008fd: MSTORE 000008fe: PUSH1 0x40 00000900: DUP1 00000901: DUP4 00000902: KECCAK256 00000903: DUP1 00000904: SLOAD 00000905: DUP10 00000906: ADD 00000907: SWAP1 00000908: SSTORE 00000909: PUSH1 0x05 0000090b: SLOAD 0000090c: DUP6 0000090d: AND 0000090e: DUP4 0000090f: MSTORE 00000910: DUP1 00000911: DUP4 00000912: KECCAK256 00000913: DUP1 00000914: SLOAD 00000915: DUP9 00000916: ADD 00000917: SWAP1 00000918: SSTORE 00000919: ADDRESS 0000091a: SWAP1 0000091b: SWAP5 0000091c: AND 0000091d: DUP1 0000091e: DUP4 0000091f: MSTORE 00000920: SWAP2 00000921: DUP5 00000922: SWAP1 00000923: KECCAK256 00000924: DUP1 00000925: SLOAD 00000926: DUP8 00000927: DUP10 00000928: ADD 00000929: SWAP1 0000092a: SUB 0000092b: SWAP1 0000092c: SSTORE 0000092d: DUP4 0000092e: MLOAD 0000092f: DUP8 00000930: DUP2 00000931: MSTORE 00000932: SWAP4 00000933: MLOAD 00000934: SWAP3 00000935: SWAP4 00000936: SWAP2 00000937: SWAP3 00000938: PUSH1 0x00 0000093a: DUP1 0000093b: MLOAD 0000093c: PUSH1 0x20 0000093e: PUSH2 0x0a07 00000941: DUP4 00000942: CODECOPY 00000943: DUP2 00000944: MLOAD 00000945: SWAP2 00000946: MSTORE 00000947: SWAP3 00000948: DUP2 00000949: SWAP1 0000094a: SUB 0000094b: SWAP1 0000094c: SWAP2 0000094d: ADD 0000094e: SWAP1 0000094f: LOG3 00000950: PUSH1 0x05 00000952: SLOAD 00000953: PUSH1 0x40 00000955: DUP1 00000956: MLOAD 00000957: DUP5 00000958: DUP2 00000959: MSTORE 0000095a: SWAP1 0000095b: MLOAD 0000095c: PUSH1 0x01 0000095e: PUSH1 0xa0 00000960: PUSH1 0x02 00000962: EXP 00000963: SUB 00000964: SWAP3 00000965: DUP4 00000966: AND 00000967: SWAP3 00000968: ADDRESS 00000969: AND 0000096a: SWAP2 0000096b: PUSH1 0x00 0000096d: DUP1 0000096e: MLOAD 0000096f: PUSH1 0x20 00000971: PUSH2 0x0a07 00000974: DUP4 00000975: CODECOPY 00000976: DUP2 00000977: MLOAD 00000978: SWAP2 00000979: MSTORE 0000097a: SWAP2 0000097b: SWAP1 0000097c: DUP2 0000097d: SWAP1 0000097e: SUB 0000097f: PUSH1 0x20 00000981: ADD 00000982: SWAP1 00000983: LOG3 00000984: POP 00000985: POP 00000986: POP 00000987: SWAP1 00000988: JUMP 00000989: JUMPDEST 0000098a: POP 0000098b: ADDRESS 0000098c: PUSH1 0x01 0000098e: PUSH1 0xa0 00000990: PUSH1 0x02 00000992: EXP 00000993: SUB 00000994: SWAP1 00000995: DUP2 00000996: AND 00000997: PUSH1 0x00 00000999: SWAP1 0000099a: DUP2 0000099b: MSTORE 0000099c: PUSH1 0x09 0000099e: PUSH1 0x20 000009a0: MSTORE 000009a1: PUSH1 0x40 000009a3: DUP1 000009a4: DUP3 000009a5: KECCAK256 000009a6: DUP1 000009a7: SLOAD 000009a8: DUP6 000009a9: ADD 000009aa: SWAP1 000009ab: SSTORE 000009ac: CALLER 000009ad: SWAP1 000009ae: SWAP3 000009af: AND 000009b0: DUP1 000009b1: DUP3 000009b2: MSTORE 000009b3: DUP3 000009b4: DUP3 000009b5: KECCAK256 000009b6: DUP1 000009b7: SLOAD 000009b8: DUP6 000009b9: SWAP1 000009ba: SUB 000009bb: SWAP1 000009bc: SSTORE 000009bd: SWAP2 000009be: MLOAD 000009bf: PUSH1 0x08 000009c1: SLOAD 000009c2: DUP5 000009c3: MUL 000009c4: SWAP3 000009c5: SWAP2 000009c6: SWAP1 000009c7: DUP4 000009c8: SWAP1 000009c9: DUP3 000009ca: DUP2 000009cb: DUP2 000009cc: DUP2 000009cd: DUP6 000009ce: DUP9 000009cf: DUP4 000009d0: CALL 000009d1: POP 000009d2: POP 000009d3: PUSH1 0x40 000009d5: DUP1 000009d6: MLOAD 000009d7: DUP7 000009d8: DUP2 000009d9: MSTORE 000009da: SWAP1 000009db: MLOAD 000009dc: ADDRESS 000009dd: PUSH1 0x01 000009df: PUSH1 0xa0 000009e1: PUSH1 0x02 000009e3: EXP 000009e4: SUB 000009e5: AND 000009e6: SWAP5 000009e7: SWAP4 000009e8: POP 000009e9: PUSH1 0x00 000009eb: DUP1 000009ec: MLOAD 000009ed: PUSH1 0x20 000009ef: PUSH2 0x0a07 000009f2: DUP4 000009f3: CODECOPY 000009f4: DUP2 000009f5: MLOAD 000009f6: SWAP2 000009f7: MSTORE 000009f8: SWAP3 000009f9: POP 000009fa: SWAP1 000009fb: DUP2 000009fc: SWAP1 000009fd: SUB 000009fe: PUSH1 0x20 00000a00: ADD 00000a01: SWAP1 00000a02: LOG3 00000a03: SWAP2 00000a04: SWAP1 00000a05: POP 00000a06: JUMP 00000a07: UNKNOWN(0xDD) 00000a08: CALLCODE 00000a09: MSTORE 00000a0a: UNKNOWN(0xAD) 00000a0b: SHL 00000a0c: UNKNOWN(0xE2) 00000a0d: UNKNOWN(0xC8) 00000a0e: SWAP12 00000a0f: PUSH10 0xc2b068fc378daa952ba7 00000a1a: CALL 00000a1b: PUSH4 0xc4a11628 00000a20: CREATE2 00000a21: GAS 00000a22: UNKNOWN(0x4D) 00000a23: CREATE2 00000a24: UNKNOWN(0x23) 00000a25: UNKNOWN(0xB3) 00000a26: UNKNOWN(0xEF)
Warning: This is a nightly build of Foundry. It is recommended to use the latest stable version. To mute this warning set `FOUNDRY_DISABLE_NIGHTLY_WARNING` in your environment.
| Severity | Category | Tool | Title | Confidence | Validated | Confirmed | Details |
|---|---|---|---|---|---|---|---|
| high | other | detector | Untrusted CALL target/value reachable | 60 | yes | yes |
viewtrace_id: 0x454a4bc781d4a87033b3766193e8612f4b35f4b75d7693e3d1f3b9131365acdb
call_targets:
0x0000000000000000000000000000000000000004, 0x9325f6e7767d61d934d118433666d1120863bdcd
target_varies:
yes
classification:
target_varies
validation_json{
"sink": "CALL",
"errors": 0,
"status": "confirmed",
"attempts": 1,
"trace_id": "0x454a4bc781d4a87033b3766193e8612f4b35f4b75d7693e3d1f3b9131365acdb",
"confirmed": true,
"trace_mode": "callTracer",
"call_targets": [
"0x0000000000000000000000000000000000000004",
"0x9325f6e7767d61d934d118433666d1120863bdcd"
],
"matched_probe": null,
"target_varies": true,
"classification": "target_varies"
}
witness_json{
"notes": "heuristic witness; entrypoints are best-effort selectors with zeroed calldata",
"constraints": [],
"entrypoints": [
{
"calldata": "0x06fdde03",
"selector": "0x06fdde03",
"calldata_variants": [
"0x06fdde03",
"0x06fdde030000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x18160ddd",
"selector": "0x18160ddd",
"calldata_variants": [
"0x18160ddd",
"0x18160ddd0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x1fe9eabc",
"selector": "0x1fe9eabc",
"calldata_variants": [
"0x1fe9eabc",
"0x1fe9eabc0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x233de126",
"selector": "0x233de126",
"calldata_variants": [
"0x233de126",
"0x233de1260000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x23b872dd",
"selector": "0x23b872dd",
"calldata_variants": [
"0x23b872dd",
"0x23b872dd0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x313ce567",
"selector": "0x313ce567",
"calldata_variants": [
"0x313ce567",
"0x313ce5670000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x41fa4876",
"selector": "0x41fa4876",
"calldata_variants": [
"0x41fa4876",
"0x41fa48760000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x70a08231",
"selector": "0x70a08231",
"calldata_variants": [
"0x70a08231",
"0x70a082310000000000000000000000000000000000000000000000000000000000000000"
]
}
]
}
evidence_json{
"examples": [
{
"pc": 1126,
"opcode": "CALL",
"returndata_checked": null,
"value_expression_category": "computed",
"target_expression_category": "computed"
},
{
"pc": 1194,
"opcode": "CALL",
"returndata_checked": null,
"value_expression_category": "computed",
"target_expression_category": "computed"
},
{
"pc": 1458,
"opcode": "CALL",
"returndata_checked": null,
"value_expression_category": "computed",
"target_expression_category": "computed"
}
],
"call_count": 6,
"guards_detected": [],
"untrusted_call_count": 6
}
|
| high | other | detector | ETH value transfer possible | 55 | yes | yes |
viewtrace_id: 0x454a4bc781d4a87033b3766193e8612f4b35f4b75d7693e3d1f3b9131365acdb
call_targets:
0x0000000000000000000000000000000000000004, 0x9325f6e7767d61d934d118433666d1120863bdcd
target_varies:
yes
classification:
target_varies
validation_json{
"sink": "CALL",
"errors": 0,
"status": "confirmed",
"attempts": 1,
"trace_id": "0x454a4bc781d4a87033b3766193e8612f4b35f4b75d7693e3d1f3b9131365acdb",
"confirmed": true,
"trace_mode": "callTracer",
"call_targets": [
"0x0000000000000000000000000000000000000004",
"0x9325f6e7767d61d934d118433666d1120863bdcd"
],
"matched_probe": null,
"target_varies": true,
"classification": "target_varies"
}
witness_json{
"notes": "heuristic witness; entrypoints are best-effort selectors with zeroed calldata",
"constraints": [],
"entrypoints": [
{
"calldata": "0x06fdde03",
"selector": "0x06fdde03",
"calldata_variants": [
"0x06fdde03",
"0x06fdde030000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x18160ddd",
"selector": "0x18160ddd",
"calldata_variants": [
"0x18160ddd",
"0x18160ddd0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x1fe9eabc",
"selector": "0x1fe9eabc",
"calldata_variants": [
"0x1fe9eabc",
"0x1fe9eabc0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x233de126",
"selector": "0x233de126",
"calldata_variants": [
"0x233de126",
"0x233de1260000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x23b872dd",
"selector": "0x23b872dd",
"calldata_variants": [
"0x23b872dd",
"0x23b872dd0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x313ce567",
"selector": "0x313ce567",
"calldata_variants": [
"0x313ce567",
"0x313ce5670000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x41fa4876",
"selector": "0x41fa4876",
"calldata_variants": [
"0x41fa4876",
"0x41fa48760000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x70a08231",
"selector": "0x70a08231",
"calldata_variants": [
"0x70a08231",
"0x70a082310000000000000000000000000000000000000000000000000000000000000000"
]
}
]
}
evidence_json{
"examples": [
{
"pc": 1126,
"opcode": "CALL",
"returndata_checked": null,
"value_expression_category": "computed",
"target_expression_category": "computed"
},
{
"pc": 1194,
"opcode": "CALL",
"returndata_checked": null,
"value_expression_category": "computed",
"target_expression_category": "computed"
},
{
"pc": 1458,
"opcode": "CALL",
"returndata_checked": null,
"value_expression_category": "computed",
"target_expression_category": "computed"
}
],
"eth_value_calls": 6,
"guards_detected": []
}
|
| high | math | codex | Buy path can underflow the contract inventory balance and mint unbacked tokens | 85 | no | — |
viewevidence_json{
"evidence": "Selector `0xa6f2ae3a` is the payable entry. In its execution path, buyer balance is increased at `pc:0x0903`-`pc:0x0908`, a second address is credited at `pc:0x0913`-`pc:0x0918`, and the contract-held balance keyed by `ADDRESS` is reduced at `pc:0x0923`-`pc:0x092c`. I do not see a prior comparison against `balance[address(this)]` anywhere on this path; the surrounding bytecode is Solidity 0.4-era style without automatic overflow/underflow checks.",
"locations": [
"selector:0xa6f2ae3a",
"pc:0x0903",
"pc:0x0913",
"pc:0x0923"
],
"recommendation": "Before subtracting from the contract-held balance, explicitly require `balance[address(this)] >= amount + bonus`, or use checked arithmetic throughout the accounting path.",
"exploit_scenario": "In the payable buy function, the contract credits the buyer and a secondary recipient, then subtracts `amount + bonus` from the contract's own token balance. If the contract inventory is lower than that sum, the subtraction wraps under uint256 arithmetic instead of reverting. An attacker can keep buying after inventory is exhausted, obtain balances not backed by reserve inventory, and then redeem or transfer those tokens against other users."
}
|
| medium | other | detector | CREATE/CREATE2 reachable | 45 | no | no |
viewtrace_id: 0x97bdeea5dd8a4cb4f1880843051e7056d89490c0a7bb4caf3456555bdabd62bd
validation_json{
"sink": "CREATE",
"errors": 0,
"status": "unknown",
"attempts": 32,
"trace_id": "0x97bdeea5dd8a4cb4f1880843051e7056d89490c0a7bb4caf3456555bdabd62bd",
"confirmed": false,
"trace_mode": "structLogs",
"call_targets": null,
"matched_probe": null,
"target_varies": null,
"classification": "no_sink"
}
witness_json{
"notes": "heuristic witness; entrypoints are best-effort selectors with zeroed calldata",
"constraints": [],
"entrypoints": [
{
"calldata": "0x06fdde03",
"selector": "0x06fdde03",
"calldata_variants": [
"0x06fdde03",
"0x06fdde030000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x18160ddd",
"selector": "0x18160ddd",
"calldata_variants": [
"0x18160ddd",
"0x18160ddd0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x1fe9eabc",
"selector": "0x1fe9eabc",
"calldata_variants": [
"0x1fe9eabc",
"0x1fe9eabc0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x233de126",
"selector": "0x233de126",
"calldata_variants": [
"0x233de126",
"0x233de1260000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x23b872dd",
"selector": "0x23b872dd",
"calldata_variants": [
"0x23b872dd",
"0x23b872dd0000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x313ce567",
"selector": "0x313ce567",
"calldata_variants": [
"0x313ce567",
"0x313ce5670000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x41fa4876",
"selector": "0x41fa4876",
"calldata_variants": [
"0x41fa4876",
"0x41fa48760000000000000000000000000000000000000000000000000000000000000000"
]
},
{
"calldata": "0x70a08231",
"selector": "0x70a08231",
"calldata_variants": [
"0x70a08231",
"0x70a082310000000000000000000000000000000000000000000000000000000000000000"
]
}
]
}
evidence_json{
"create_count": 0,
"create2_count": 2
}
|
| medium | other | codex | Redeem/sell path burns balance before an unchecked ETH payout | 75 | no | — |
viewevidence_json{
"evidence": "Selector `0xe4849b32` refreshes pricing, checks the caller balance, then enters the payout path at `pc:0x0989`. State is updated first: contract balance is incremented at `pc:0x09a6`-`pc:0x09ab` and caller balance is decremented at `pc:0x09b5`-`pc:0x09bc`. The ETH transfer happens via `CALL` at `pc:0x09d0`, and the success value is immediately discarded with `POP` at `pc:0x09d1`-`pc:0x09d2`; there is no revert branch after this call.",
"locations": [
"selector:0xe4849b32",
"pc:0x0989",
"pc:0x09a6",
"pc:0x09b5",
"pc:0x09d0"
],
"recommendation": "Require the payout call to succeed and revert otherwise, or switch to a pull-withdrawal pattern where failed payouts do not mutate balances.",
"exploit_scenario": "A user selling/redeeming tokens has their internal balance reduced and the contract balance increased before ETH is sent out. If the recipient is a contract with a reverting fallback or otherwise causes the low-level call to fail, the function still continues. The user can lose tokens while receiving no ETH."
}
|
| medium | oracle | codex | Economic logic depends on miner-manipulable block data for randomness | 75 | no | — |
viewevidence_json{
"evidence": "The helper at selector `0x41fa4876` uses `BLOCKHASH` and `SHA3` then `MOD 2` at `pc:0x01f9`-`pc:0x0219`. The payable flow `0xa6f2ae3a` seeds that helper with current `NUMBER`, `TIMESTAMP`, and calldata-derived input at `pc:0x087e`-`pc:0x08a1`. Because this is bytecode-only analysis, I cannot prove the exact user-facing feature name, but the randomness is clearly derived from manipulable block variables inside an economic path.",
"locations": [
"selector:0x41fa4876",
"selector:0xa6f2ae3a",
"pc:0x01f9",
"pc:0x0215",
"pc:0x087e",
"pc:0x0898"
],
"recommendation": "Do not use `BLOCKHASH`, `NUMBER`, or `TIMESTAMP` directly for value-bearing randomness. Use a commit-reveal scheme or an external/verifiable randomness source.",
"exploit_scenario": "If the computed random value affects token amount, bonus, or winner selection, block producers and sophisticated users can bias outcomes by choosing when to submit transactions, exploiting private orderflow, or slightly manipulating timestamp/ordering. That can skew payouts in their favor."
}
|