TW
Tripwire
Find contracts. Test them. Review real vulns.

Analysis Run

019b3836-2ede-725c-b04e-659c73fa3550

complete
Chain ID
1
Address
Block Number
Created
Fri, Dec 19, 2025 8:03 PM
Review Summary

What survived the funnel

Open this run to answer one question: is this real attacker-relevant behavior with real impact, or just normal contract plumbing?

Confirmed
1
Validated
1
Source
Bytecode only
Review Backing
Not yet
Best current signal
SELFDESTRUCT reachable
crit 0 high 0 direct contract
Review Checklist
1. Read the findings table first. Ignore raw jobs until the result looks real.
2. Confirm attacker control, not just the existence of a sink.
3. Confirm money or privilege impact.
4. Keep it if the behavior is real. Kill it if this is normal proxy, admin, or upgrade plumbing.

Processing Jobs

Status & attempts
ID Type Status Attempts Heartbeat
2345 artifact.fetch complete 1 / 3 3 months ago
2346 tool.cast_disasm complete 1 / 3 3 months ago
97122 analysis.bundle complete 1 / 3 1 week ago
97123 capability.graph complete 1 / 3 1 week ago
97124 detector.run complete 1 / 3 1 week ago
97125 validation.fork complete 1 / 3 1 week ago
113822 report.consolidate complete 1 / 6 1 week ago

Artifact

Runtime bytecode: available
Creation TX:
Deployer:
Proxy: no
Implementation:
Verified Source: no

Slither

tool.slither

No slither job recorded yet.

Codex

report.consolidate
Job Status
complete
Attempts
1 / 6
Findings
0
No findings?
View stderr
OpenAI Codex v0.118.0 (research preview)
--------
workdir: /tmp/codex-96l_7k7a
model: gpt-5.4
provider: openai
approval: never
sandbox: read-only
reasoning effort: high
reasoning summaries: none
session id: 019d5c9f-b807-7f22-a37a-7360b45bff8c
--------
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.
ERROR: You've hit your usage limit. Visit https://chatgpt.com/codex/settings/usage to purchase more credits or try again at Apr 8th, 2026 9:11 AM.
ERROR: You've hit your usage limit. Visit https://chatgpt.com/codex/settings/usage to purchase more credits or try again at Apr 8th, 2026 9:11 AM.
Metadata
{
    "codex": {
        "ran_at": "2026-04-05T07:51:06.004139+00:00",
        "returncode": 1
    },
    "project": {
        "mode": "bytecode",
        "bytecode_length": 6026,
        "bytecode_truncated": false,
        "capability_graph_present": true,
        "analysis_artifact_present": true
    },
    "summary": null,
    "no_findings": null,
    "schema_version": 1
}

Opcode Heuristics

tool.cast_disasm
Delegatecall
0
Selfdestruct
1
CREATE2
0
CALL-family (heavy)
1
EXT*/BALANCE
3
Total opcodes
1878
Flags
selfdestruct_present
View cast disassembly output
00000000: PUSH1 0x60
00000002: PUSH1 0x40
00000004: MSTORE
00000005: CALLDATASIZE
00000006: ISZERO
00000007: PUSH2 0x00d7
0000000a: JUMPI
0000000b: PUSH1 0x00
0000000d: CALLDATALOAD
0000000e: PUSH29 0x0100000000000000000000000000000000000000000000000000000000
0000002c: SWAP1
0000002d: DIV
0000002e: DUP1
0000002f: PUSH4 0x12065fe0
00000034: EQ
00000035: PUSH2 0x013e
00000038: JUMPI
00000039: DUP1
0000003a: PUSH4 0x35f46994
0000003f: EQ
00000040: PUSH2 0x0161
00000043: JUMPI
00000044: DUP1
00000045: PUSH4 0x5dea5e47
0000004a: EQ
0000004b: PUSH2 0x0170
0000004e: JUMPI
0000004f: DUP1
00000050: PUSH4 0x690b90a9
00000055: EQ
00000056: PUSH2 0x0188
00000059: JUMPI
0000005a: DUP1
0000005b: PUSH4 0x6adcef6b
00000060: EQ
00000061: PUSH2 0x01ab
00000064: JUMPI
00000065: DUP1
00000066: PUSH4 0x6ccb5d02
0000006b: EQ
0000006c: PUSH2 0x01c3
0000006f: JUMPI
00000070: DUP1
00000071: PUSH4 0x75724990
00000076: EQ
00000077: PUSH2 0x0205
0000007a: JUMPI
0000007b: DUP1
0000007c: PUSH4 0x7f616488
00000081: EQ
00000082: PUSH2 0x0226
00000085: JUMPI
00000086: DUP1
00000087: PUSH4 0x9e1a00aa
0000008c: EQ
0000008d: PUSH2 0x0249
00000090: JUMPI
00000091: DUP1
00000092: PUSH4 0xa3934658
00000097: EQ
00000098: PUSH2 0x026a
0000009b: JUMPI
0000009c: DUP1
0000009d: PUSH4 0xb27920bc
000000a2: EQ
000000a3: PUSH2 0x0279
000000a6: JUMPI
000000a7: DUP1
000000a8: PUSH4 0xbd0e8b2d
000000ad: EQ
000000ae: PUSH2 0x02cc
000000b1: JUMPI
000000b2: DUP1
000000b3: PUSH4 0xbf76c0ef
000000b8: EQ
000000b9: PUSH2 0x02ef
000000bc: JUMPI
000000bd: DUP1
000000be: PUSH4 0xc8224bc2
000000c3: EQ
000000c4: PUSH2 0x0307
000000c7: JUMPI
000000c8: DUP1
000000c9: PUSH4 0xdda1a1e6
000000ce: EQ
000000cf: PUSH2 0x0328
000000d2: JUMPI
000000d3: PUSH2 0x00d7
000000d6: JUMP
000000d7: JUMPDEST
000000d8: PUSH2 0x013c
000000db: JUMPDEST
000000dc: NUMBER
000000dd: PUSH32 0x5d6ac9b7defd8fbb29ef2ab0f08c3744192b3777466dd98d1fd7daed5064b6db
000000fe: CALLER
000000ff: CALLVALUE
00000100: TIMESTAMP
00000101: PUSH1 0x40
00000103: MLOAD
00000104: DUP1
00000105: DUP5
00000106: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
0000011b: AND
0000011c: DUP2
0000011d: MSTORE
0000011e: PUSH1 0x20
00000120: ADD
00000121: DUP4
00000122: DUP2
00000123: MSTORE
00000124: PUSH1 0x20
00000126: ADD
00000127: DUP3
00000128: DUP2
00000129: MSTORE
0000012a: PUSH1 0x20
0000012c: ADD
0000012d: SWAP4
0000012e: POP
0000012f: POP
00000130: POP
00000131: POP
00000132: PUSH1 0x40
00000134: MLOAD
00000135: DUP1
00000136: SWAP2
00000137: SUB
00000138: SWAP1
00000139: LOG2
0000013a: JUMPDEST
0000013b: JUMP
0000013c: JUMPDEST
0000013d: STOP
0000013e: JUMPDEST
0000013f: PUSH2 0x014b
00000142: PUSH1 0x04
00000144: DUP1
00000145: POP
00000146: POP
00000147: PUSH2 0x079b
0000014a: JUMP
0000014b: JUMPDEST
0000014c: PUSH1 0x40
0000014e: MLOAD
0000014f: DUP1
00000150: DUP3
00000151: DUP2
00000152: MSTORE
00000153: PUSH1 0x20
00000155: ADD
00000156: SWAP2
00000157: POP
00000158: POP
00000159: PUSH1 0x40
0000015b: MLOAD
0000015c: DUP1
0000015d: SWAP2
0000015e: SUB
0000015f: SWAP1
00000160: RETURN
00000161: JUMPDEST
00000162: PUSH2 0x016e
00000165: PUSH1 0x04
00000167: DUP1
00000168: POP
00000169: POP
0000016a: PUSH2 0x0b66
0000016d: JUMP
0000016e: JUMPDEST
0000016f: STOP
00000170: JUMPDEST
00000171: PUSH2 0x0186
00000174: PUSH1 0x04
00000176: DUP1
00000177: DUP1
00000178: CALLDATALOAD
00000179: SWAP1
0000017a: PUSH1 0x20
0000017c: ADD
0000017d: SWAP1
0000017e: SWAP2
0000017f: SWAP1
00000180: POP
00000181: POP
00000182: PUSH2 0x0633
00000185: JUMP
00000186: JUMPDEST
00000187: STOP
00000188: JUMPDEST
00000189: PUSH2 0x0195
0000018c: PUSH1 0x04
0000018e: DUP1
0000018f: POP
00000190: POP
00000191: PUSH2 0x07f2
00000194: JUMP
00000195: JUMPDEST
00000196: PUSH1 0x40
00000198: MLOAD
00000199: DUP1
0000019a: DUP3
0000019b: DUP2
0000019c: MSTORE
0000019d: PUSH1 0x20
0000019f: ADD
000001a0: SWAP2
000001a1: POP
000001a2: POP
000001a3: PUSH1 0x40
000001a5: MLOAD
000001a6: DUP1
000001a7: SWAP2
000001a8: SUB
000001a9: SWAP1
000001aa: RETURN
000001ab: JUMPDEST
000001ac: PUSH2 0x01c1
000001af: PUSH1 0x04
000001b1: DUP1
000001b2: DUP1
000001b3: CALLDATALOAD
000001b4: SWAP1
000001b5: PUSH1 0x20
000001b7: ADD
000001b8: SWAP1
000001b9: SWAP2
000001ba: SWAP1
000001bb: POP
000001bc: POP
000001bd: PUSH2 0x08ca
000001c0: JUMP
000001c1: JUMPDEST
000001c2: STOP
000001c3: JUMPDEST
000001c4: PUSH2 0x01d9
000001c7: PUSH1 0x04
000001c9: DUP1
000001ca: DUP1
000001cb: CALLDATALOAD
000001cc: SWAP1
000001cd: PUSH1 0x20
000001cf: ADD
000001d0: SWAP1
000001d1: SWAP2
000001d2: SWAP1
000001d3: POP
000001d4: POP
000001d5: PUSH2 0x0858
000001d8: JUMP
000001d9: JUMPDEST
000001da: PUSH1 0x40
000001dc: MLOAD
000001dd: DUP1
000001de: DUP3
000001df: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000001f4: AND
000001f5: DUP2
000001f6: MSTORE
000001f7: PUSH1 0x20
000001f9: ADD
000001fa: SWAP2
000001fb: POP
000001fc: POP
000001fd: PUSH1 0x40
000001ff: MLOAD
00000200: DUP1
00000201: SWAP2
00000202: SUB
00000203: SWAP1
00000204: RETURN
00000205: JUMPDEST
00000206: PUSH2 0x0224
00000209: PUSH1 0x04
0000020b: DUP1
0000020c: DUP1
0000020d: CALLDATALOAD
0000020e: SWAP1
0000020f: PUSH1 0x20
00000211: ADD
00000212: SWAP1
00000213: SWAP2
00000214: SWAP1
00000215: DUP1
00000216: CALLDATALOAD
00000217: SWAP1
00000218: PUSH1 0x20
0000021a: ADD
0000021b: SWAP1
0000021c: SWAP2
0000021d: SWAP1
0000021e: POP
0000021f: POP
00000220: PUSH2 0x03f5
00000223: JUMP
00000224: JUMPDEST
00000225: STOP
00000226: JUMPDEST
00000227: PUSH2 0x0233
0000022a: PUSH1 0x04
0000022c: DUP1
0000022d: POP
0000022e: POP
0000022f: PUSH2 0x0825
00000232: JUMP
00000233: JUMPDEST
00000234: PUSH1 0x40
00000236: MLOAD
00000237: DUP1
00000238: DUP3
00000239: DUP2
0000023a: MSTORE
0000023b: PUSH1 0x20
0000023d: ADD
0000023e: SWAP2
0000023f: POP
00000240: POP
00000241: PUSH1 0x40
00000243: MLOAD
00000244: DUP1
00000245: SWAP2
00000246: SUB
00000247: SWAP1
00000248: RETURN
00000249: JUMPDEST
0000024a: PUSH2 0x0268
0000024d: PUSH1 0x04
0000024f: DUP1
00000250: DUP1
00000251: CALLDATALOAD
00000252: SWAP1
00000253: PUSH1 0x20
00000255: ADD
00000256: SWAP1
00000257: SWAP2
00000258: SWAP1
00000259: DUP1
0000025a: CALLDATALOAD
0000025b: SWAP1
0000025c: PUSH1 0x20
0000025e: ADD
0000025f: SWAP1
00000260: SWAP2
00000261: SWAP1
00000262: POP
00000263: POP
00000264: PUSH2 0x0340
00000267: JUMP
00000268: JUMPDEST
00000269: STOP
0000026a: JUMPDEST
0000026b: PUSH2 0x0277
0000026e: PUSH1 0x04
00000270: DUP1
00000271: POP
00000272: POP
00000273: PUSH2 0x0a16
00000276: JUMP
00000277: JUMPDEST
00000278: STOP
00000279: JUMPDEST
0000027a: PUSH2 0x02ca
0000027d: PUSH1 0x04
0000027f: DUP1
00000280: DUP1
00000281: CALLDATALOAD
00000282: SWAP1
00000283: PUSH1 0x20
00000285: ADD
00000286: SWAP1
00000287: DUP3
00000288: ADD
00000289: DUP1
0000028a: CALLDATALOAD
0000028b: SWAP1
0000028c: PUSH1 0x20
0000028e: ADD
0000028f: SWAP2
00000290: SWAP2
00000291: SWAP1
00000292: DUP1
00000293: DUP1
00000294: PUSH1 0x20
00000296: MUL
00000297: PUSH1 0x20
00000299: ADD
0000029a: PUSH1 0x40
0000029c: MLOAD
0000029d: SWAP1
0000029e: DUP2
0000029f: ADD
000002a0: PUSH1 0x40
000002a2: MSTORE
000002a3: DUP1
000002a4: SWAP4
000002a5: SWAP3
000002a6: SWAP2
000002a7: SWAP1
000002a8: DUP2
000002a9: DUP2
000002aa: MSTORE
000002ab: PUSH1 0x20
000002ad: ADD
000002ae: DUP4
000002af: DUP4
000002b0: PUSH1 0x20
000002b2: MUL
000002b3: DUP1
000002b4: DUP3
000002b5: DUP5
000002b6: CALLDATACOPY
000002b7: DUP3
000002b8: ADD
000002b9: SWAP2
000002ba: POP
000002bb: POP
000002bc: POP
000002bd: POP
000002be: POP
000002bf: POP
000002c0: SWAP1
000002c1: SWAP1
000002c2: SWAP2
000002c3: SWAP1
000002c4: POP
000002c5: POP
000002c6: PUSH2 0x073b
000002c9: JUMP
000002ca: JUMPDEST
000002cb: STOP
000002cc: JUMPDEST
000002cd: PUSH2 0x02d9
000002d0: PUSH1 0x04
000002d2: DUP1
000002d3: POP
000002d4: POP
000002d5: PUSH2 0x07bf
000002d8: JUMP
000002d9: JUMPDEST
000002da: PUSH1 0x40
000002dc: MLOAD
000002dd: DUP1
000002de: DUP3
000002df: DUP2
000002e0: MSTORE
000002e1: PUSH1 0x20
000002e3: ADD
000002e4: SWAP2
000002e5: POP
000002e6: POP
000002e7: PUSH1 0x40
000002e9: MLOAD
000002ea: DUP1
000002eb: SWAP2
000002ec: SUB
000002ed: SWAP1
000002ee: RETURN
000002ef: JUMPDEST
000002f0: PUSH2 0x0305
000002f3: PUSH1 0x04
000002f5: DUP1
000002f6: DUP1
000002f7: CALLDATALOAD
000002f8: SWAP1
000002f9: PUSH1 0x20
000002fb: ADD
000002fc: SWAP1
000002fd: SWAP2
000002fe: SWAP1
000002ff: POP
00000300: POP
00000301: PUSH2 0x055a
00000304: JUMP
00000305: JUMPDEST
00000306: STOP
00000307: JUMPDEST
00000308: PUSH2 0x0326
0000030b: PUSH1 0x04
0000030d: DUP1
0000030e: DUP1
0000030f: CALLDATALOAD
00000310: SWAP1
00000311: PUSH1 0x20
00000313: ADD
00000314: SWAP1
00000315: SWAP2
00000316: SWAP1
00000317: DUP1
00000318: CALLDATALOAD
00000319: SWAP1
0000031a: PUSH1 0x20
0000031c: ADD
0000031d: SWAP1
0000031e: SWAP2
0000031f: SWAP1
00000320: POP
00000321: POP
00000322: PUSH2 0x0691
00000325: JUMP
00000326: JUMPDEST
00000327: STOP
00000328: JUMPDEST
00000329: PUSH2 0x033e
0000032c: PUSH1 0x04
0000032e: DUP1
0000032f: DUP1
00000330: CALLDATALOAD
00000331: SWAP1
00000332: PUSH1 0x20
00000334: ADD
00000335: SWAP1
00000336: SWAP2
00000337: SWAP1
00000338: POP
00000339: POP
0000033a: PUSH2 0x04fc
0000033d: JUMP
0000033e: JUMPDEST
0000033f: STOP
00000340: JUMPDEST
00000341: PUSH1 0x00
00000343: NUMBER
00000344: PUSH32 0x5ab8dc610f1c5d672561a1c397fb11717ad7b220565f7916904984963a1f43ef
00000365: DUP5
00000366: DUP5
00000367: TIMESTAMP
00000368: PUSH1 0x40
0000036a: MLOAD
0000036b: DUP1
0000036c: DUP5
0000036d: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000382: AND
00000383: DUP2
00000384: MSTORE
00000385: PUSH1 0x20
00000387: ADD
00000388: DUP4
00000389: DUP2
0000038a: MSTORE
0000038b: PUSH1 0x20
0000038d: ADD
0000038e: DUP3
0000038f: DUP2
00000390: MSTORE
00000391: PUSH1 0x20
00000393: ADD
00000394: SWAP4
00000395: POP
00000396: POP
00000397: POP
00000398: POP
00000399: PUSH1 0x40
0000039b: MLOAD
0000039c: DUP1
0000039d: SWAP2
0000039e: SUB
0000039f: SWAP1
000003a0: LOG2
000003a1: PUSH1 0x00
000003a3: PUSH1 0x00
000003a5: POP
000003a6: PUSH1 0x00
000003a8: PUSH1 0x00
000003aa: DUP2
000003ab: MSTORE
000003ac: PUSH1 0x20
000003ae: ADD
000003af: SWAP1
000003b0: DUP2
000003b1: MSTORE
000003b2: PUSH1 0x20
000003b4: ADD
000003b5: PUSH1 0x00
000003b7: KECCAK256
000003b8: PUSH1 0x00
000003ba: POP
000003bb: SWAP1
000003bc: POP
000003bd: DUP3
000003be: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000003d3: AND
000003d4: PUSH1 0x00
000003d6: DUP4
000003d7: PUSH1 0x40
000003d9: MLOAD
000003da: DUP1
000003db: SWAP1
000003dc: POP
000003dd: PUSH1 0x00
000003df: PUSH1 0x40
000003e1: MLOAD
000003e2: DUP1
000003e3: DUP4
000003e4: SUB
000003e5: DUP2
000003e6: DUP6
000003e7: DUP9
000003e8: DUP9
000003e9: CALL
000003ea: SWAP4
000003eb: POP
000003ec: POP
000003ed: POP
000003ee: POP
000003ef: POP
000003f0: JUMPDEST
000003f1: POP
000003f2: POP
000003f3: POP
000003f4: JUMP
000003f5: JUMPDEST
000003f6: PUSH1 0x00
000003f8: PUSH1 0x00
000003fa: PUSH1 0x00
000003fc: POP
000003fd: PUSH1 0x00
000003ff: PUSH1 0x00
00000401: DUP2
00000402: MSTORE
00000403: PUSH1 0x20
00000405: ADD
00000406: SWAP1
00000407: DUP2
00000408: MSTORE
00000409: PUSH1 0x20
0000040b: ADD
0000040c: PUSH1 0x00
0000040e: KECCAK256
0000040f: PUSH1 0x00
00000411: POP
00000412: SWAP1
00000413: POP
00000414: DUP1
00000415: PUSH1 0x06
00000417: ADD
00000418: PUSH1 0x00
0000041a: POP
0000041b: SLOAD
0000041c: DUP3
0000041d: GT
0000041e: ISZERO
0000041f: ISZERO
00000420: PUSH2 0x04f1
00000423: JUMPI
00000424: PUSH1 0x60
00000426: PUSH1 0x40
00000428: MLOAD
00000429: SWAP1
0000042a: DUP2
0000042b: ADD
0000042c: PUSH1 0x40
0000042e: MSTORE
0000042f: DUP1
00000430: DUP5
00000431: DUP2
00000432: MSTORE
00000433: PUSH1 0x20
00000435: ADD
00000436: DUP4
00000437: DUP2
00000438: MSTORE
00000439: PUSH1 0x20
0000043b: ADD
0000043c: PUSH1 0x01
0000043e: DUP2
0000043f: MSTORE
00000440: PUSH1 0x20
00000442: ADD
00000443: POP
00000444: DUP2
00000445: PUSH1 0x00
00000447: ADD
00000448: PUSH1 0x00
0000044a: POP
0000044b: PUSH1 0x00
0000044d: DUP4
0000044e: PUSH1 0x05
00000450: ADD
00000451: PUSH1 0x00
00000453: POP
00000454: SLOAD
00000455: DUP2
00000456: MSTORE
00000457: PUSH1 0x20
00000459: ADD
0000045a: SWAP1
0000045b: DUP2
0000045c: MSTORE
0000045d: PUSH1 0x20
0000045f: ADD
00000460: PUSH1 0x00
00000462: KECCAK256
00000463: PUSH1 0x00
00000465: POP
00000466: PUSH1 0x00
00000468: DUP3
00000469: ADD
0000046a: MLOAD
0000046b: DUP2
0000046c: PUSH1 0x00
0000046e: ADD
0000046f: PUSH1 0x00
00000471: PUSH2 0x0100
00000474: EXP
00000475: DUP2
00000476: SLOAD
00000477: DUP2
00000478: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
0000048d: MUL
0000048e: NOT
0000048f: AND
00000490: SWAP1
00000491: DUP4
00000492: MUL
00000493: OR
00000494: SWAP1
00000495: SSTORE
00000496: POP
00000497: PUSH1 0x20
00000499: DUP3
0000049a: ADD
0000049b: MLOAD
0000049c: DUP2
0000049d: PUSH1 0x01
0000049f: ADD
000004a0: PUSH1 0x00
000004a2: POP
000004a3: SSTORE
000004a4: PUSH1 0x40
000004a6: DUP3
000004a7: ADD
000004a8: MLOAD
000004a9: DUP2
000004aa: PUSH1 0x02
000004ac: ADD
000004ad: PUSH1 0x00
000004af: PUSH2 0x0100
000004b2: EXP
000004b3: DUP2
000004b4: SLOAD
000004b5: DUP2
000004b6: PUSH1 0xff
000004b8: MUL
000004b9: NOT
000004ba: AND
000004bb: SWAP1
000004bc: DUP4
000004bd: MUL
000004be: OR
000004bf: SWAP1
000004c0: SSTORE
000004c1: POP
000004c2: SWAP1
000004c3: POP
000004c4: POP
000004c5: DUP2
000004c6: DUP2
000004c7: PUSH1 0x06
000004c9: ADD
000004ca: PUSH1 0x00
000004cc: DUP3
000004cd: DUP3
000004ce: DUP3
000004cf: POP
000004d0: SLOAD
000004d1: SUB
000004d2: SWAP3
000004d3: POP
000004d4: POP
000004d5: DUP2
000004d6: SWAP1
000004d7: SSTORE
000004d8: POP
000004d9: DUP1
000004da: PUSH1 0x05
000004dc: ADD
000004dd: PUSH1 0x00
000004df: DUP2
000004e0: DUP2
000004e1: POP
000004e2: SLOAD
000004e3: PUSH1 0x01
000004e5: ADD
000004e6: SWAP2
000004e7: SWAP1
000004e8: POP
000004e9: DUP2
000004ea: SWAP1
000004eb: SSTORE
000004ec: POP
000004ed: PUSH2 0x04f6
000004f0: JUMP
000004f1: JUMPDEST
000004f2: PUSH2 0x0002
000004f5: JUMP
000004f6: JUMPDEST
000004f7: JUMPDEST
000004f8: POP
000004f9: POP
000004fa: POP
000004fb: JUMP
000004fc: JUMPDEST
000004fd: PUSH1 0x00
000004ff: PUSH1 0x00
00000501: PUSH1 0x00
00000503: PUSH1 0x00
00000505: POP
00000506: PUSH1 0x00
00000508: PUSH1 0x00
0000050a: DUP2
0000050b: MSTORE
0000050c: PUSH1 0x20
0000050e: ADD
0000050f: SWAP1
00000510: DUP2
00000511: MSTORE
00000512: PUSH1 0x20
00000514: ADD
00000515: PUSH1 0x00
00000517: KECCAK256
00000518: PUSH1 0x00
0000051a: POP
0000051b: SWAP2
0000051c: POP
0000051d: DUP2
0000051e: PUSH1 0x00
00000520: ADD
00000521: PUSH1 0x00
00000523: POP
00000524: PUSH1 0x00
00000526: DUP5
00000527: DUP2
00000528: MSTORE
00000529: PUSH1 0x20
0000052b: ADD
0000052c: SWAP1
0000052d: DUP2
0000052e: MSTORE
0000052f: PUSH1 0x20
00000531: ADD
00000532: PUSH1 0x00
00000534: KECCAK256
00000535: PUSH1 0x00
00000537: POP
00000538: SWAP1
00000539: POP
0000053a: PUSH1 0x00
0000053c: DUP2
0000053d: PUSH1 0x02
0000053f: ADD
00000540: PUSH1 0x00
00000542: PUSH2 0x0100
00000545: EXP
00000546: DUP2
00000547: SLOAD
00000548: DUP2
00000549: PUSH1 0xff
0000054b: MUL
0000054c: NOT
0000054d: AND
0000054e: SWAP1
0000054f: DUP4
00000550: MUL
00000551: OR
00000552: SWAP1
00000553: SSTORE
00000554: POP
00000555: JUMPDEST
00000556: POP
00000557: POP
00000558: POP
00000559: JUMP
0000055a: JUMPDEST
0000055b: PUSH1 0x00
0000055d: PUSH1 0x00
0000055f: PUSH1 0x00
00000561: POP
00000562: PUSH1 0x00
00000564: PUSH1 0x00
00000566: DUP2
00000567: MSTORE
00000568: PUSH1 0x20
0000056a: ADD
0000056b: SWAP1
0000056c: DUP2
0000056d: MSTORE
0000056e: PUSH1 0x20
00000570: ADD
00000571: PUSH1 0x00
00000573: KECCAK256
00000574: PUSH1 0x00
00000576: POP
00000577: SWAP1
00000578: POP
00000579: PUSH1 0x60
0000057b: PUSH1 0x40
0000057d: MLOAD
0000057e: SWAP1
0000057f: DUP2
00000580: ADD
00000581: PUSH1 0x40
00000583: MSTORE
00000584: DUP1
00000585: DUP4
00000586: DUP2
00000587: MSTORE
00000588: PUSH1 0x20
0000058a: ADD
0000058b: PUSH1 0x00
0000058d: DUP2
0000058e: MSTORE
0000058f: PUSH1 0x20
00000591: ADD
00000592: PUSH1 0x01
00000594: DUP2
00000595: MSTORE
00000596: PUSH1 0x20
00000598: ADD
00000599: POP
0000059a: DUP2
0000059b: PUSH1 0x01
0000059d: ADD
0000059e: PUSH1 0x00
000005a0: POP
000005a1: PUSH1 0x00
000005a3: DUP4
000005a4: PUSH1 0x07
000005a6: ADD
000005a7: PUSH1 0x00
000005a9: POP
000005aa: SLOAD
000005ab: DUP2
000005ac: MSTORE
000005ad: PUSH1 0x20
000005af: ADD
000005b0: SWAP1
000005b1: DUP2
000005b2: MSTORE
000005b3: PUSH1 0x20
000005b5: ADD
000005b6: PUSH1 0x00
000005b8: KECCAK256
000005b9: PUSH1 0x00
000005bb: POP
000005bc: PUSH1 0x00
000005be: DUP3
000005bf: ADD
000005c0: MLOAD
000005c1: DUP2
000005c2: PUSH1 0x01
000005c4: ADD
000005c5: PUSH1 0x00
000005c7: PUSH2 0x0100
000005ca: EXP
000005cb: DUP2
000005cc: SLOAD
000005cd: DUP2
000005ce: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000005e3: MUL
000005e4: NOT
000005e5: AND
000005e6: SWAP1
000005e7: DUP4
000005e8: MUL
000005e9: OR
000005ea: SWAP1
000005eb: SSTORE
000005ec: POP
000005ed: PUSH1 0x20
000005ef: DUP3
000005f0: ADD
000005f1: MLOAD
000005f2: DUP2
000005f3: PUSH1 0x02
000005f5: ADD
000005f6: PUSH1 0x00
000005f8: POP
000005f9: SSTORE
000005fa: PUSH1 0x40
000005fc: DUP3
000005fd: ADD
000005fe: MLOAD
000005ff: DUP2
00000600: PUSH1 0x03
00000602: ADD
00000603: PUSH1 0x00
00000605: PUSH2 0x0100
00000608: EXP
00000609: DUP2
0000060a: SLOAD
0000060b: DUP2
0000060c: PUSH1 0xff
0000060e: MUL
0000060f: NOT
00000610: AND
00000611: SWAP1
00000612: DUP4
00000613: MUL
00000614: OR
00000615: SWAP1
00000616: SSTORE
00000617: POP
00000618: SWAP1
00000619: POP
0000061a: POP
0000061b: DUP1
0000061c: PUSH1 0x07
0000061e: ADD
0000061f: PUSH1 0x00
00000621: DUP2
00000622: DUP2
00000623: POP
00000624: SLOAD
00000625: PUSH1 0x01
00000627: ADD
00000628: SWAP2
00000629: SWAP1
0000062a: POP
0000062b: DUP2
0000062c: SWAP1
0000062d: SSTORE
0000062e: POP
0000062f: JUMPDEST
00000630: POP
00000631: POP
00000632: JUMP
00000633: JUMPDEST
00000634: PUSH1 0x00
00000636: PUSH1 0x00
00000638: PUSH1 0x00
0000063a: PUSH1 0x00
0000063c: POP
0000063d: PUSH1 0x00
0000063f: PUSH1 0x00
00000641: DUP2
00000642: MSTORE
00000643: PUSH1 0x20
00000645: ADD
00000646: SWAP1
00000647: DUP2
00000648: MSTORE
00000649: PUSH1 0x20
0000064b: ADD
0000064c: PUSH1 0x00
0000064e: KECCAK256
0000064f: PUSH1 0x00
00000651: POP
00000652: SWAP2
00000653: POP
00000654: DUP2
00000655: PUSH1 0x01
00000657: ADD
00000658: PUSH1 0x00
0000065a: POP
0000065b: PUSH1 0x00
0000065d: DUP5
0000065e: DUP2
0000065f: MSTORE
00000660: PUSH1 0x20
00000662: ADD
00000663: SWAP1
00000664: DUP2
00000665: MSTORE
00000666: PUSH1 0x20
00000668: ADD
00000669: PUSH1 0x00
0000066b: KECCAK256
0000066c: PUSH1 0x00
0000066e: POP
0000066f: SWAP1
00000670: POP
00000671: PUSH1 0x00
00000673: DUP2
00000674: PUSH1 0x03
00000676: ADD
00000677: PUSH1 0x00
00000679: PUSH2 0x0100
0000067c: EXP
0000067d: DUP2
0000067e: SLOAD
0000067f: DUP2
00000680: PUSH1 0xff
00000682: MUL
00000683: NOT
00000684: AND
00000685: SWAP1
00000686: DUP4
00000687: MUL
00000688: OR
00000689: SWAP1
0000068a: SSTORE
0000068b: POP
0000068c: JUMPDEST
0000068d: POP
0000068e: POP
0000068f: POP
00000690: JUMP
00000691: JUMPDEST
00000692: PUSH1 0x00
00000694: PUSH1 0x00
00000696: PUSH1 0x00
00000698: PUSH1 0x00
0000069a: POP
0000069b: PUSH1 0x00
0000069d: PUSH1 0x00
0000069f: DUP2
000006a0: MSTORE
000006a1: PUSH1 0x20
000006a3: ADD
000006a4: SWAP1
000006a5: DUP2
000006a6: MSTORE
000006a7: PUSH1 0x20
000006a9: ADD
000006aa: PUSH1 0x00
000006ac: KECCAK256
000006ad: PUSH1 0x00
000006af: POP
000006b0: SWAP2
000006b1: POP
000006b2: DUP2
000006b3: PUSH1 0x01
000006b5: ADD
000006b6: PUSH1 0x00
000006b8: POP
000006b9: PUSH1 0x00
000006bb: DUP6
000006bc: DUP2
000006bd: MSTORE
000006be: PUSH1 0x20
000006c0: ADD
000006c1: SWAP1
000006c2: DUP2
000006c3: MSTORE
000006c4: PUSH1 0x20
000006c6: ADD
000006c7: PUSH1 0x00
000006c9: KECCAK256
000006ca: PUSH1 0x00
000006cc: POP
000006cd: SWAP1
000006ce: POP
000006cf: PUSH1 0x40
000006d1: PUSH1 0x40
000006d3: MLOAD
000006d4: SWAP1
000006d5: DUP2
000006d6: ADD
000006d7: PUSH1 0x40
000006d9: MSTORE
000006da: DUP1
000006db: DUP5
000006dc: DUP2
000006dd: MSTORE
000006de: PUSH1 0x20
000006e0: ADD
000006e1: TIMESTAMP
000006e2: DUP2
000006e3: MSTORE
000006e4: PUSH1 0x20
000006e6: ADD
000006e7: POP
000006e8: DUP2
000006e9: PUSH1 0x00
000006eb: ADD
000006ec: PUSH1 0x00
000006ee: POP
000006ef: PUSH1 0x00
000006f1: PUSH1 0x00
000006f3: DUP2
000006f4: MSTORE
000006f5: PUSH1 0x20
000006f7: ADD
000006f8: SWAP1
000006f9: DUP2
000006fa: MSTORE
000006fb: PUSH1 0x20
000006fd: ADD
000006fe: PUSH1 0x00
00000700: KECCAK256
00000701: PUSH1 0x00
00000703: POP
00000704: PUSH1 0x00
00000706: DUP3
00000707: ADD
00000708: MLOAD
00000709: DUP2
0000070a: PUSH1 0x00
0000070c: ADD
0000070d: PUSH1 0x00
0000070f: POP
00000710: SSTORE
00000711: PUSH1 0x20
00000713: DUP3
00000714: ADD
00000715: MLOAD
00000716: DUP2
00000717: PUSH1 0x01
00000719: ADD
0000071a: PUSH1 0x00
0000071c: POP
0000071d: SSTORE
0000071e: SWAP1
0000071f: POP
00000720: POP
00000721: DUP1
00000722: PUSH1 0x02
00000724: ADD
00000725: PUSH1 0x00
00000727: DUP2
00000728: DUP2
00000729: POP
0000072a: SLOAD
0000072b: PUSH1 0x01
0000072d: ADD
0000072e: SWAP2
0000072f: SWAP1
00000730: POP
00000731: DUP2
00000732: SWAP1
00000733: SSTORE
00000734: POP
00000735: JUMPDEST
00000736: POP
00000737: POP
00000738: POP
00000739: POP
0000073a: JUMP
0000073b: JUMPDEST
0000073c: PUSH1 0x00
0000073e: PUSH1 0x00
00000740: PUSH1 0x00
00000742: PUSH1 0x00
00000744: POP
00000745: PUSH1 0x00
00000747: PUSH1 0x00
00000749: DUP2
0000074a: MSTORE
0000074b: PUSH1 0x20
0000074d: ADD
0000074e: SWAP1
0000074f: DUP2
00000750: MSTORE
00000751: PUSH1 0x20
00000753: ADD
00000754: PUSH1 0x00
00000756: KECCAK256
00000757: PUSH1 0x00
00000759: POP
0000075a: SWAP2
0000075b: POP
0000075c: PUSH1 0x00
0000075e: SWAP1
0000075f: POP
00000760: JUMPDEST
00000761: DUP3
00000762: MLOAD
00000763: DUP2
00000764: LT
00000765: ISZERO
00000766: PUSH2 0x0795
00000769: JUMPI
0000076a: PUSH2 0x0787
0000076d: DUP2
0000076e: DUP5
0000076f: DUP4
00000770: DUP2
00000771: MLOAD
00000772: DUP2
00000773: LT
00000774: ISZERO
00000775: PUSH2 0x0002
00000778: JUMPI
00000779: SWAP1
0000077a: PUSH1 0x20
0000077c: ADD
0000077d: SWAP1
0000077e: PUSH1 0x20
00000780: MUL
00000781: ADD
00000782: MLOAD
00000783: PUSH2 0x0691
00000786: JUMP
00000787: JUMPDEST
00000788: JUMPDEST
00000789: DUP1
0000078a: DUP1
0000078b: PUSH1 0x01
0000078d: ADD
0000078e: SWAP2
0000078f: POP
00000790: POP
00000791: PUSH2 0x0760
00000794: JUMP
00000795: JUMPDEST
00000796: JUMPDEST
00000797: POP
00000798: POP
00000799: POP
0000079a: JUMP
0000079b: JUMPDEST
0000079c: PUSH1 0x00
0000079e: ADDRESS
0000079f: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000007b4: AND
000007b5: BALANCE
000007b6: SWAP1
000007b7: POP
000007b8: PUSH2 0x07bc
000007bb: JUMP
000007bc: JUMPDEST
000007bd: SWAP1
000007be: JUMP
000007bf: JUMPDEST
000007c0: PUSH1 0x00
000007c2: PUSH1 0x00
000007c4: PUSH1 0x00
000007c6: PUSH1 0x00
000007c8: POP
000007c9: PUSH1 0x00
000007cb: PUSH1 0x00
000007cd: DUP2
000007ce: MSTORE
000007cf: PUSH1 0x20
000007d1: ADD
000007d2: SWAP1
000007d3: DUP2
000007d4: MSTORE
000007d5: PUSH1 0x20
000007d7: ADD
000007d8: PUSH1 0x00
000007da: KECCAK256
000007db: PUSH1 0x00
000007dd: POP
000007de: SWAP1
000007df: POP
000007e0: DUP1
000007e1: PUSH1 0x06
000007e3: ADD
000007e4: PUSH1 0x00
000007e6: POP
000007e7: SLOAD
000007e8: SWAP2
000007e9: POP
000007ea: PUSH2 0x07ee
000007ed: JUMP
000007ee: JUMPDEST
000007ef: POP
000007f0: SWAP1
000007f1: JUMP
000007f2: JUMPDEST
000007f3: PUSH1 0x00
000007f5: PUSH1 0x00
000007f7: PUSH1 0x00
000007f9: PUSH1 0x00
000007fb: POP
000007fc: PUSH1 0x00
000007fe: PUSH1 0x00
00000800: DUP2
00000801: MSTORE
00000802: PUSH1 0x20
00000804: ADD
00000805: SWAP1
00000806: DUP2
00000807: MSTORE
00000808: PUSH1 0x20
0000080a: ADD
0000080b: PUSH1 0x00
0000080d: KECCAK256
0000080e: PUSH1 0x00
00000810: POP
00000811: SWAP1
00000812: POP
00000813: DUP1
00000814: PUSH1 0x05
00000816: ADD
00000817: PUSH1 0x00
00000819: POP
0000081a: SLOAD
0000081b: SWAP2
0000081c: POP
0000081d: PUSH2 0x0821
00000820: JUMP
00000821: JUMPDEST
00000822: POP
00000823: SWAP1
00000824: JUMP
00000825: JUMPDEST
00000826: PUSH1 0x00
00000828: PUSH1 0x00
0000082a: PUSH1 0x00
0000082c: PUSH1 0x00
0000082e: POP
0000082f: PUSH1 0x00
00000831: PUSH1 0x00
00000833: DUP2
00000834: MSTORE
00000835: PUSH1 0x20
00000837: ADD
00000838: SWAP1
00000839: DUP2
0000083a: MSTORE
0000083b: PUSH1 0x20
0000083d: ADD
0000083e: PUSH1 0x00
00000840: KECCAK256
00000841: PUSH1 0x00
00000843: POP
00000844: SWAP1
00000845: POP
00000846: DUP1
00000847: PUSH1 0x07
00000849: ADD
0000084a: PUSH1 0x00
0000084c: POP
0000084d: SLOAD
0000084e: SWAP2
0000084f: POP
00000850: PUSH2 0x0854
00000853: JUMP
00000854: JUMPDEST
00000855: POP
00000856: SWAP1
00000857: JUMP
00000858: JUMPDEST
00000859: PUSH1 0x00
0000085b: PUSH1 0x00
0000085d: PUSH1 0x00
0000085f: PUSH1 0x00
00000861: PUSH1 0x00
00000863: POP
00000864: PUSH1 0x00
00000866: PUSH1 0x00
00000868: DUP2
00000869: MSTORE
0000086a: PUSH1 0x20
0000086c: ADD
0000086d: SWAP1
0000086e: DUP2
0000086f: MSTORE
00000870: PUSH1 0x20
00000872: ADD
00000873: PUSH1 0x00
00000875: KECCAK256
00000876: PUSH1 0x00
00000878: POP
00000879: SWAP2
0000087a: POP
0000087b: DUP2
0000087c: PUSH1 0x00
0000087e: ADD
0000087f: PUSH1 0x00
00000881: POP
00000882: PUSH1 0x00
00000884: DUP6
00000885: DUP2
00000886: MSTORE
00000887: PUSH1 0x20
00000889: ADD
0000088a: SWAP1
0000088b: DUP2
0000088c: MSTORE
0000088d: PUSH1 0x20
0000088f: ADD
00000890: PUSH1 0x00
00000892: KECCAK256
00000893: PUSH1 0x00
00000895: POP
00000896: SWAP1
00000897: POP
00000898: DUP1
00000899: PUSH1 0x00
0000089b: ADD
0000089c: PUSH1 0x00
0000089e: SWAP1
0000089f: SLOAD
000008a0: SWAP1
000008a1: PUSH2 0x0100
000008a4: EXP
000008a5: SWAP1
000008a6: DIV
000008a7: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000008bc: AND
000008bd: SWAP3
000008be: POP
000008bf: PUSH2 0x08c3
000008c2: JUMP
000008c3: JUMPDEST
000008c4: POP
000008c5: POP
000008c6: SWAP2
000008c7: SWAP1
000008c8: POP
000008c9: JUMP
000008ca: JUMPDEST
000008cb: PUSH1 0x00
000008cd: PUSH1 0x00
000008cf: PUSH1 0x00
000008d1: PUSH1 0x00
000008d3: PUSH1 0x00
000008d5: PUSH1 0x00
000008d7: POP
000008d8: PUSH1 0x00
000008da: PUSH1 0x00
000008dc: DUP2
000008dd: MSTORE
000008de: PUSH1 0x20
000008e0: ADD
000008e1: SWAP1
000008e2: DUP2
000008e3: MSTORE
000008e4: PUSH1 0x20
000008e6: ADD
000008e7: PUSH1 0x00
000008e9: KECCAK256
000008ea: PUSH1 0x00
000008ec: POP
000008ed: SWAP4
000008ee: POP
000008ef: DUP4
000008f0: PUSH1 0x02
000008f2: ADD
000008f3: PUSH1 0x00
000008f5: SWAP1
000008f6: SLOAD
000008f7: SWAP1
000008f8: PUSH2 0x0100
000008fb: EXP
000008fc: SWAP1
000008fd: DIV
000008fe: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000913: AND
00000914: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000929: AND
0000092a: CALLER
0000092b: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000940: AND
00000941: EQ
00000942: ISZERO
00000943: PUSH2 0x0a09
00000946: JUMPI
00000947: PUSH1 0x00
00000949: SWAP3
0000094a: POP
0000094b: JUMPDEST
0000094c: DUP4
0000094d: PUSH1 0x05
0000094f: ADD
00000950: PUSH1 0x00
00000952: POP
00000953: SLOAD
00000954: DUP4
00000955: LT
00000956: ISZERO
00000957: PUSH2 0x0a04
0000095a: JUMPI
0000095b: DUP4
0000095c: PUSH1 0x00
0000095e: ADD
0000095f: PUSH1 0x00
00000961: POP
00000962: PUSH1 0x00
00000964: DUP5
00000965: DUP2
00000966: MSTORE
00000967: PUSH1 0x20
00000969: ADD
0000096a: SWAP1
0000096b: DUP2
0000096c: MSTORE
0000096d: PUSH1 0x20
0000096f: ADD
00000970: PUSH1 0x00
00000972: KECCAK256
00000973: PUSH1 0x00
00000975: POP
00000976: SWAP2
00000977: POP
00000978: DUP2
00000979: PUSH1 0x01
0000097b: ADD
0000097c: PUSH1 0x00
0000097e: POP
0000097f: SLOAD
00000980: DUP6
00000981: MUL
00000982: SWAP1
00000983: POP
00000984: DUP1
00000985: ADDRESS
00000986: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
0000099b: AND
0000099c: BALANCE
0000099d: LT
0000099e: ISZERO
0000099f: ISZERO
000009a0: PUSH2 0x09f1
000009a3: JUMPI
000009a4: PUSH1 0x01
000009a6: DUP3
000009a7: PUSH1 0x02
000009a9: ADD
000009aa: PUSH1 0x00
000009ac: SWAP1
000009ad: SLOAD
000009ae: SWAP1
000009af: PUSH2 0x0100
000009b2: EXP
000009b3: SWAP1
000009b4: DIV
000009b5: PUSH1 0xff
000009b7: AND
000009b8: EQ
000009b9: ISZERO
000009ba: PUSH2 0x09ec
000009bd: JUMPI
000009be: PUSH2 0x09eb
000009c1: DUP3
000009c2: PUSH1 0x00
000009c4: ADD
000009c5: PUSH1 0x00
000009c7: SWAP1
000009c8: SLOAD
000009c9: SWAP1
000009ca: PUSH2 0x0100
000009cd: EXP
000009ce: SWAP1
000009cf: DIV
000009d0: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000009e5: AND
000009e6: DUP3
000009e7: PUSH2 0x0340
000009ea: JUMP
000009eb: JUMPDEST
000009ec: JUMPDEST
000009ed: PUSH2 0x09f6
000009f0: JUMP
000009f1: JUMPDEST
000009f2: PUSH2 0x0002
000009f5: JUMP
000009f6: JUMPDEST
000009f7: JUMPDEST
000009f8: DUP3
000009f9: DUP1
000009fa: PUSH1 0x01
000009fc: ADD
000009fd: SWAP4
000009fe: POP
000009ff: POP
00000a00: PUSH2 0x094b
00000a03: JUMP
00000a04: JUMPDEST
00000a05: PUSH2 0x0a0e
00000a08: JUMP
00000a09: JUMPDEST
00000a0a: PUSH2 0x0002
00000a0d: JUMP
00000a0e: JUMPDEST
00000a0f: JUMPDEST
00000a10: POP
00000a11: POP
00000a12: POP
00000a13: POP
00000a14: POP
00000a15: JUMP
00000a16: JUMPDEST
00000a17: PUSH1 0x00
00000a19: PUSH1 0x00
00000a1b: PUSH1 0x00
00000a1d: PUSH1 0x00
00000a1f: PUSH1 0x00
00000a21: PUSH1 0x00
00000a23: POP
00000a24: PUSH1 0x00
00000a26: PUSH1 0x00
00000a28: DUP2
00000a29: MSTORE
00000a2a: PUSH1 0x20
00000a2c: ADD
00000a2d: SWAP1
00000a2e: DUP2
00000a2f: MSTORE
00000a30: PUSH1 0x20
00000a32: ADD
00000a33: PUSH1 0x00
00000a35: KECCAK256
00000a36: PUSH1 0x00
00000a38: POP
00000a39: SWAP4
00000a3a: POP
00000a3b: DUP4
00000a3c: PUSH1 0x02
00000a3e: ADD
00000a3f: PUSH1 0x00
00000a41: SWAP1
00000a42: SLOAD
00000a43: SWAP1
00000a44: PUSH2 0x0100
00000a47: EXP
00000a48: SWAP1
00000a49: DIV
00000a4a: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000a5f: AND
00000a60: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000a75: AND
00000a76: CALLER
00000a77: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000a8c: AND
00000a8d: EQ
00000a8e: ISZERO
00000a8f: PUSH2 0x0b5a
00000a92: JUMPI
00000a93: PUSH1 0x00
00000a95: SWAP3
00000a96: POP
00000a97: JUMPDEST
00000a98: DUP4
00000a99: PUSH1 0x07
00000a9b: ADD
00000a9c: PUSH1 0x00
00000a9e: POP
00000a9f: SLOAD
00000aa0: DUP4
00000aa1: LT
00000aa2: ISZERO
00000aa3: PUSH2 0x0b55
00000aa6: JUMPI
00000aa7: DUP4
00000aa8: PUSH1 0x01
00000aaa: ADD
00000aab: PUSH1 0x00
00000aad: POP
00000aae: PUSH1 0x00
00000ab0: DUP5
00000ab1: DUP2
00000ab2: MSTORE
00000ab3: PUSH1 0x20
00000ab5: ADD
00000ab6: SWAP1
00000ab7: DUP2
00000ab8: MSTORE
00000ab9: PUSH1 0x20
00000abb: ADD
00000abc: PUSH1 0x00
00000abe: KECCAK256
00000abf: PUSH1 0x00
00000ac1: POP
00000ac2: SWAP2
00000ac3: POP
00000ac4: DUP2
00000ac5: PUSH1 0x00
00000ac7: ADD
00000ac8: PUSH1 0x00
00000aca: POP
00000acb: PUSH1 0x00
00000acd: PUSH1 0x00
00000acf: DUP2
00000ad0: MSTORE
00000ad1: PUSH1 0x20
00000ad3: ADD
00000ad4: SWAP1
00000ad5: DUP2
00000ad6: MSTORE
00000ad7: PUSH1 0x20
00000ad9: ADD
00000ada: PUSH1 0x00
00000adc: KECCAK256
00000add: PUSH1 0x00
00000adf: POP
00000ae0: SWAP1
00000ae1: POP
00000ae2: DUP1
00000ae3: PUSH1 0x00
00000ae5: ADD
00000ae6: PUSH1 0x00
00000ae8: POP
00000ae9: SLOAD
00000aea: ADDRESS
00000aeb: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000b00: AND
00000b01: BALANCE
00000b02: LT
00000b03: ISZERO
00000b04: ISZERO
00000b05: PUSH2 0x0b42
00000b08: JUMPI
00000b09: PUSH2 0x0b3d
00000b0c: DUP3
00000b0d: PUSH1 0x01
00000b0f: ADD
00000b10: PUSH1 0x00
00000b12: SWAP1
00000b13: SLOAD
00000b14: SWAP1
00000b15: PUSH2 0x0100
00000b18: EXP
00000b19: SWAP1
00000b1a: DIV
00000b1b: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000b30: AND
00000b31: DUP3
00000b32: PUSH1 0x00
00000b34: ADD
00000b35: PUSH1 0x00
00000b37: POP
00000b38: SLOAD
00000b39: PUSH2 0x0340
00000b3c: JUMP
00000b3d: JUMPDEST
00000b3e: PUSH2 0x0b47
00000b41: JUMP
00000b42: JUMPDEST
00000b43: PUSH2 0x0002
00000b46: JUMP
00000b47: JUMPDEST
00000b48: JUMPDEST
00000b49: DUP3
00000b4a: DUP1
00000b4b: PUSH1 0x01
00000b4d: ADD
00000b4e: SWAP4
00000b4f: POP
00000b50: POP
00000b51: PUSH2 0x0a97
00000b54: JUMP
00000b55: JUMPDEST
00000b56: PUSH2 0x0b5f
00000b59: JUMP
00000b5a: JUMPDEST
00000b5b: PUSH2 0x0002
00000b5e: JUMP
00000b5f: JUMPDEST
00000b60: JUMPDEST
00000b61: POP
00000b62: POP
00000b63: POP
00000b64: POP
00000b65: JUMP
00000b66: JUMPDEST
00000b67: PUSH1 0x00
00000b69: PUSH1 0x00
00000b6b: PUSH1 0x00
00000b6d: POP
00000b6e: PUSH1 0x00
00000b70: PUSH1 0x00
00000b72: DUP2
00000b73: MSTORE
00000b74: PUSH1 0x20
00000b76: ADD
00000b77: SWAP1
00000b78: DUP2
00000b79: MSTORE
00000b7a: PUSH1 0x20
00000b7c: ADD
00000b7d: PUSH1 0x00
00000b7f: KECCAK256
00000b80: PUSH1 0x00
00000b82: POP
00000b83: SWAP1
00000b84: POP
00000b85: DUP1
00000b86: PUSH1 0x02
00000b88: ADD
00000b89: PUSH1 0x00
00000b8b: SWAP1
00000b8c: SLOAD
00000b8d: SWAP1
00000b8e: PUSH2 0x0100
00000b91: EXP
00000b92: SWAP1
00000b93: DIV
00000b94: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000ba9: AND
00000baa: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000bbf: AND
00000bc0: SELFDESTRUCT
00000bc1: JUMPDEST
00000bc2: POP
00000bc3: JUMP
View stderr
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.

Findings

validated = confirmed for call sinks; sink observed for others
Severity Category Tool Title Confidence Validated Confirmed Details
medium other detector Untrusted CALL target/value reachable 45 no no
view
trace_id: 0xf98ea12e3039d652abd9f889e7d14bcff2597b6567e38b051cb573dd80108ea3
call_targets: 0x909aa7010f67a1b2522daffb2a9b30519c4f6aa1
target_varies: no
classification: constant_target
validation_json
{
    "sink": "CALL",
    "errors": 0,
    "status": "sink_reached",
    "attempts": 1,
    "trace_id": "0xf98ea12e3039d652abd9f889e7d14bcff2597b6567e38b051cb573dd80108ea3",
    "confirmed": false,
    "trace_mode": "callTracer",
    "call_targets": [
        "0x909aa7010f67a1b2522daffb2a9b30519c4f6aa1"
    ],
    "matched_probe": null,
    "target_varies": false,
    "classification": "constant_target"
}
witness_json
{
    "notes": "heuristic witness; entrypoints are best-effort selectors with zeroed calldata",
    "constraints": [],
    "entrypoints": [
        {
            "calldata": "0x12065fe0",
            "selector": "0x12065fe0",
            "calldata_variants": [
                "0x12065fe0",
                "0x12065fe00000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x35f46994",
            "selector": "0x35f46994",
            "calldata_variants": [
                "0x35f46994",
                "0x35f469940000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x5dea5e47",
            "selector": "0x5dea5e47",
            "calldata_variants": [
                "0x5dea5e47",
                "0x5dea5e470000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x690b90a9",
            "selector": "0x690b90a9",
            "calldata_variants": [
                "0x690b90a9",
                "0x690b90a90000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x6adcef6b",
            "selector": "0x6adcef6b",
            "calldata_variants": [
                "0x6adcef6b",
                "0x6adcef6b0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x6ccb5d02",
            "selector": "0x6ccb5d02",
            "calldata_variants": [
                "0x6ccb5d02",
                "0x6ccb5d020000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x75724990",
            "selector": "0x75724990",
            "calldata_variants": [
                "0x75724990",
                "0x757249900000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x7f616488",
            "selector": "0x7f616488",
            "calldata_variants": [
                "0x7f616488",
                "0x7f6164880000000000000000000000000000000000000000000000000000000000000000"
            ]
        }
    ]
}
evidence_json
{
    "examples": [
        {
            "pc": 1001,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        }
    ],
    "call_count": 1,
    "guards_detected": [
        {
            "pc": 2346,
            "type": "msg_sender_eq_const",
            "value": "0xffffffffffffffffffffffffffffffffffffffff"
        },
        {
            "pc": 2678,
            "type": "msg_sender_eq_const",
            "value": "0xffffffffffffffffffffffffffffffffffffffff"
        }
    ],
    "untrusted_call_count": 1
}
medium other detector ETH value transfer possible 40 no no
view
trace_id: 0xf98ea12e3039d652abd9f889e7d14bcff2597b6567e38b051cb573dd80108ea3
call_targets: 0x909aa7010f67a1b2522daffb2a9b30519c4f6aa1
target_varies: no
classification: constant_target
validation_json
{
    "sink": "CALL",
    "errors": 0,
    "status": "sink_reached",
    "attempts": 1,
    "trace_id": "0xf98ea12e3039d652abd9f889e7d14bcff2597b6567e38b051cb573dd80108ea3",
    "confirmed": false,
    "trace_mode": "callTracer",
    "call_targets": [
        "0x909aa7010f67a1b2522daffb2a9b30519c4f6aa1"
    ],
    "matched_probe": null,
    "target_varies": false,
    "classification": "constant_target"
}
witness_json
{
    "notes": "heuristic witness; entrypoints are best-effort selectors with zeroed calldata",
    "constraints": [],
    "entrypoints": [
        {
            "calldata": "0x12065fe0",
            "selector": "0x12065fe0",
            "calldata_variants": [
                "0x12065fe0",
                "0x12065fe00000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x35f46994",
            "selector": "0x35f46994",
            "calldata_variants": [
                "0x35f46994",
                "0x35f469940000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x5dea5e47",
            "selector": "0x5dea5e47",
            "calldata_variants": [
                "0x5dea5e47",
                "0x5dea5e470000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x690b90a9",
            "selector": "0x690b90a9",
            "calldata_variants": [
                "0x690b90a9",
                "0x690b90a90000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x6adcef6b",
            "selector": "0x6adcef6b",
            "calldata_variants": [
                "0x6adcef6b",
                "0x6adcef6b0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x6ccb5d02",
            "selector": "0x6ccb5d02",
            "calldata_variants": [
                "0x6ccb5d02",
                "0x6ccb5d020000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x75724990",
            "selector": "0x75724990",
            "calldata_variants": [
                "0x75724990",
                "0x757249900000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x7f616488",
            "selector": "0x7f616488",
            "calldata_variants": [
                "0x7f616488",
                "0x7f6164880000000000000000000000000000000000000000000000000000000000000000"
            ]
        }
    ]
}
evidence_json
{
    "examples": [
        {
            "pc": 1001,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        }
    ],
    "eth_value_calls": 1,
    "guards_detected": [
        {
            "pc": 2346,
            "type": "msg_sender_eq_const",
            "value": "0xffffffffffffffffffffffffffffffffffffffff"
        },
        {
            "pc": 2678,
            "type": "msg_sender_eq_const",
            "value": "0xffffffffffffffffffffffffffffffffffffffff"
        }
    ]
}
medium other detector SELFDESTRUCT reachable 45 yes yes
view
trace_id: 0xbbc67d89904b911d7ef14d43769451addb617596eb766b9ddd346e13728a769d
validation_json
{
    "sink": "SELFDESTRUCT",
    "errors": 0,
    "status": "confirmed",
    "attempts": 3,
    "trace_id": "0xbbc67d89904b911d7ef14d43769451addb617596eb766b9ddd346e13728a769d",
    "confirmed": true,
    "trace_mode": "structLogs",
    "call_targets": null,
    "matched_probe": null,
    "target_varies": null,
    "classification": "sink_reached"
}
witness_json
{
    "notes": "heuristic witness; entrypoints are best-effort selectors with zeroed calldata",
    "constraints": [],
    "entrypoints": [
        {
            "calldata": "0x12065fe0",
            "selector": "0x12065fe0",
            "calldata_variants": [
                "0x12065fe0",
                "0x12065fe00000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x35f46994",
            "selector": "0x35f46994",
            "calldata_variants": [
                "0x35f46994",
                "0x35f469940000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x5dea5e47",
            "selector": "0x5dea5e47",
            "calldata_variants": [
                "0x5dea5e47",
                "0x5dea5e470000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x690b90a9",
            "selector": "0x690b90a9",
            "calldata_variants": [
                "0x690b90a9",
                "0x690b90a90000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x6adcef6b",
            "selector": "0x6adcef6b",
            "calldata_variants": [
                "0x6adcef6b",
                "0x6adcef6b0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x6ccb5d02",
            "selector": "0x6ccb5d02",
            "calldata_variants": [
                "0x6ccb5d02",
                "0x6ccb5d020000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x75724990",
            "selector": "0x75724990",
            "calldata_variants": [
                "0x75724990",
                "0x757249900000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x7f616488",
            "selector": "0x7f616488",
            "calldata_variants": [
                "0x7f616488",
                "0x7f6164880000000000000000000000000000000000000000000000000000000000000000"
            ]
        }
    ]
}
evidence_json
{
    "guards_detected": [
        {
            "pc": 2346,
            "type": "msg_sender_eq_const",
            "value": "0xffffffffffffffffffffffffffffffffffffffff"
        },
        {
            "pc": 2678,
            "type": "msg_sender_eq_const",
            "value": "0xffffffffffffffffffffffffffffffffffffffff"
        }
    ],
    "selfdestruct_count": 1
}