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

Analysis Run

a6649a3c-1e2c-4288-85ef-bcfd787fcd44

failed
Chain ID
1
Address
Block Number
Created
Sun, Jan 4, 2026 4:04 AM
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
0
Validated
0
Source
Verified
Review Backing
Not yet
Best current signal
Untrusted CALL target/value 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
31550 report.consolidate complete 1 / 1 3 months ago
77927 artifact.fetch failed 1 / 3 1 week ago
77928 tool.cast_disasm complete 1 / 3 1 week ago
77929 analysis.bundle complete 1 / 3 1 week ago
77930 capability.graph complete 1 / 3 1 week ago
77931 detector.run complete 1 / 3 1 week ago
77932 validation.fork complete 1 / 3 1 week ago

Artifact

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

Slither

tool.slither

No slither job recorded yet.

Codex

report.consolidate
Job Status
complete
Attempts
1 / 1
Findings
0
No findings?
yes
Summary
Reviewed `contracts/Contract.sol` in AUDIT_BUNDLE.txt; no concrete, exploitable profit path identified under the stated assumptions.
View stderr
[codex:120033] OpenAI Codex v0.77.0 (research preview)
[codex:120033] --------
[codex:120033] workdir: /tmp/codex-multi-ahjyu_v8
[codex:120033] model: gpt-5.2-codex
[codex:120033] provider: openai
[codex:120033] approval: never
[codex:120033] sandbox: read-only
[codex:120033] reasoning effort: xhigh
[codex:120033] reasoning summaries: auto
[codex:120033] session id: 019b872d-a361-79e0-bc66-179845fc53f5
[codex:120033] --------
[codex:120033] user
[codex:120033] You are a profit-focused exploit hunter. Your ONLY goal is finding ways to extract value (ETH, tokens, NFTs) from this contract.
[codex:120033] 
[codex:120033] Read `AUDIT_BUNDLE.txt` completely before concluding. Treat `lib/` and `@openzeppelin/` as trusted unless misused.
[codex:120033] 
[codex:120033] ONLY REPORT if you find a CONCRETE, EXPLOITABLE path to profit. We do NOT care about:
[codex:120033] - Gas inefficiency, code quality, naming, or best practices
[codex:120033] - Theoretical vulnerabilities without a clear extraction path
[codex:120033] - Centralization risks (admin can rug) - assume admin keys are secure
[codex:120033] - Front-running unless it enables theft beyond MEV
[codex:120033] - DoS, griefing, or issues that don't result in attacker profit
[codex:120033] - Missing events, view function issues, or informational findings
[codex:120033] 
[codex:120033] HIGH-VALUE PATTERNS TO HUNT:
[codex:120033] - Reentrancy: external calls before state updates that allow double-withdrawal
[codex:120033] - Access control: missing/bypassable auth on withdraw, transfer, or mint functions
[codex:120033] - Flash loan attacks: borrow -> manipulate -> profit in single tx
[codex:120033] - Price oracle manipulation: TWAP with short window, spot price reads, stale prices
[codex:120033] - Signature replay: missing nonce, chainId, or deadline in permit/meta-tx
[codex:120033] - Proxy hijacking: unprotected initialize(), storage collision, UUPS without auth
[codex:120033] - Accounting errors: rounding that favors attacker, share inflation, first depositor attacks
[codex:120033] - Unchecked external calls: return value ignored on token transfers enabling fake tokens
[codex:120033] - Cross-function reentrancy: state read in function A, modified via reentrant call, used stale in A
[codex:120033] 
[codex:120033] For each finding, you MUST provide:
[codex:120033] 1. Exact file and line numbers of vulnerable code
[codex:120033] 2. Step-by-step exploit transaction sequence
[codex:120033] 3. Estimated profit potential (order of magnitude: contract balance, LP reserves, etc.)
[codex:120033] 
[codex:120033] If no concrete profit path exists: set no_findings=true. Do NOT pad with low-severity noise.
[codex:120033] 
[codex:120033] Output MUST be valid JSON matching the provided schema.
[codex:120033] - severity: info, low, medium, high, critical (use high/critical ONLY for clear extraction paths)
[codex:120033] - category: access_control, reentrancy, math, oracle, upgradeability, auth, other
[codex:120033] mcp startup: no servers
[codex:120033] 
[codex:120033] thinking
[codex:120033] **Reading audit bundle file**
[codex:120033] exec
[codex:120033] /bin/bash -lc ls in /tmp/codex-multi-ahjyu_v8 succeeded in 5ms:
[codex:120033] AUDIT_BUNDLE.txt
[codex:120033] codex-output-schema.json
[codex:120033] contracts
[codex:120033] exec
[codex:120033] /bin/bash -lc 'cat AUDIT_BUNDLE.txt' in /tmp/codex-multi-ahjyu_v8 succeeded in 5ms:
[codex:120033] This file concatenates first-party Solidity sources only (lib/@openzeppelin excluded).
[codex:120033] 
[codex:120033] ================================================================================
[codex:120033] FILE: contracts/Contract.sol
[codex:120033] ================================================================================
[codex:120033] pragma solidity 0.4.14;
[codex:120033] 
[codex:120033] // -----------------------------------------------------------------------------
[codex:120033] // PembiCoin crowdsale contract.
[codex:120033] // Copyright (c) 2017 Pembient, Inc.
[codex:120033] // The MIT License.
[codex:120033] // -----------------------------------------------------------------------------
[codex:120033] 
[codex:120033] contract PembiCoinICO {
[codex:120033] 
[codex:120033]     enum State {Active, Idle, Successful, Failed}
[codex:120033] 
[codex:120033]     State public currentState = State.Idle;
[codex:120033]     uint256 public contributorCount = 0;
[codex:120033] 
[codex:120033] 
[codex:120033] thinking
[codex:120033] **Analyzing ICO contract for exploits**
[codex:120033] codex
[codex:120033] {"no_findings":true,"summary":"Reviewed `contracts/Contract.sol` in AUDIT_BUNDLE.txt; no concrete, exploitable profit path identified under the stated assumptions.","findings":[]}
[codex:120033] tokens used
[codex:120033] 6,011
[codex:120033] {"no_findings":true,"summary":"Reviewed `contracts/Contract.sol` in AUDIT_BUNDLE.txt; no concrete, exploitable profit path identified under the stated assumptions.","findings":[]}
Metadata
{
    "codex": {
        "ran_at": "2026-01-04T04:04:44.942466+00:00",
        "returncode": 0
    },
    "summary": "Reviewed `contracts/Contract.sol` in AUDIT_BUNDLE.txt; no concrete, exploitable profit path identified under the stated assumptions.",
    "raw_final": {
        "summary": "Reviewed `contracts/Contract.sol` in AUDIT_BUNDLE.txt; no concrete, exploitable profit path identified under the stated assumptions.",
        "findings": [],
        "no_findings": true
    },
    "no_findings": true,
    "schema_version": 1
}

Opcode Heuristics

tool.cast_disasm
Delegatecall
0
Selfdestruct
0
CREATE2
0
CALL-family (heavy)
2
EXT*/BALANCE
2
Total opcodes
1691
Flags
No heuristic flags raised.
View cast disassembly output
00000000: PUSH1 0x60
00000002: PUSH1 0x40
00000004: MSTORE
00000005: CALLDATASIZE
00000006: ISZERO
00000007: PUSH2 0x00a2
0000000a: JUMPI
0000000b: PUSH1 0x00
0000000d: CALLDATALOAD
0000000e: PUSH29 0x0100000000000000000000000000000000000000000000000000000000
0000002c: SWAP1
0000002d: DIV
0000002e: PUSH4 0xffffffff
00000033: AND
00000034: DUP1
00000035: PUSH4 0x0c3f6acf
0000003a: EQ
0000003b: PUSH2 0x028c
0000003e: JUMPI
0000003f: DUP1
00000040: PUSH4 0x146901db
00000045: EQ
00000046: PUSH2 0x02c3
00000049: JUMPI
0000004a: DUP1
0000004b: PUSH4 0x590e1ae3
00000050: EQ
00000051: PUSH2 0x02d8
00000054: JUMPI
00000055: DUP1
00000056: PUSH4 0x63bd1d4a
0000005b: EQ
0000005c: PUSH2 0x02ed
0000005f: JUMPI
00000060: DUP1
00000061: PUSH4 0x760a8c2a
00000066: EQ
00000067: PUSH2 0x0302
0000006a: JUMPI
0000006b: DUP1
0000006c: PUSH4 0x8ad14ee6
00000071: EQ
00000072: PUSH2 0x0317
00000075: JUMPI
00000076: DUP1
00000077: PUSH4 0x8da5cb5b
0000007c: EQ
0000007d: PUSH2 0x032c
00000080: JUMPI
00000081: DUP1
00000082: PUSH4 0xa494817b
00000087: EQ
00000088: PUSH2 0x0381
0000008b: JUMPI
0000008c: DUP1
0000008d: PUSH4 0xcef42254
00000092: EQ
00000093: PUSH2 0x0396
00000096: JUMPI
00000097: DUP1
00000098: PUSH4 0xecfd8928
0000009d: EQ
0000009e: PUSH2 0x0400
000000a1: JUMPI
000000a2: JUMPDEST
000000a3: JUMPDEST
000000a4: PUSH1 0x00
000000a6: DUP1
000000a7: PUSH1 0x00
000000a9: SWAP1
000000aa: SLOAD
000000ab: SWAP1
000000ac: PUSH2 0x0100
000000af: EXP
000000b0: SWAP1
000000b1: DIV
000000b2: PUSH1 0xff
000000b4: AND
000000b5: PUSH1 0x03
000000b7: DUP2
000000b8: GT
000000b9: ISZERO
000000ba: PUSH2 0x00bf
000000bd: JUMPI
000000be: INVALID
000000bf: JUMPDEST
000000c0: DUP2
000000c1: PUSH1 0x03
000000c3: DUP2
000000c4: GT
000000c5: ISZERO
000000c6: PUSH2 0x00cb
000000c9: JUMPI
000000ca: INVALID
000000cb: JUMPDEST
000000cc: EQ
000000cd: ISZERO
000000ce: ISZERO
000000cf: PUSH2 0x00d7
000000d2: JUMPI
000000d3: PUSH1 0x00
000000d5: DUP1
000000d6: REVERT
000000d7: JUMPDEST
000000d8: PUSH1 0x00
000000da: CALLVALUE
000000db: GT
000000dc: ISZERO
000000dd: ISZERO
000000de: PUSH2 0x00e6
000000e1: JUMPI
000000e2: PUSH1 0x00
000000e4: DUP1
000000e5: REVERT
000000e6: JUMPDEST
000000e7: PUSH1 0x00
000000e9: PUSH1 0x04
000000eb: PUSH1 0x00
000000ed: CALLER
000000ee: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000103: AND
00000104: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000119: AND
0000011a: DUP2
0000011b: MSTORE
0000011c: PUSH1 0x20
0000011e: ADD
0000011f: SWAP1
00000120: DUP2
00000121: MSTORE
00000122: PUSH1 0x20
00000124: ADD
00000125: PUSH1 0x00
00000127: KECCAK256
00000128: SLOAD
00000129: EQ
0000012a: ISZERO
0000012b: PUSH2 0x0196
0000012e: JUMPI
0000012f: CALLER
00000130: PUSH1 0x03
00000132: PUSH1 0x00
00000134: PUSH1 0x01
00000136: SLOAD
00000137: DUP2
00000138: MSTORE
00000139: PUSH1 0x20
0000013b: ADD
0000013c: SWAP1
0000013d: DUP2
0000013e: MSTORE
0000013f: PUSH1 0x20
00000141: ADD
00000142: PUSH1 0x00
00000144: KECCAK256
00000145: PUSH1 0x00
00000147: PUSH2 0x0100
0000014a: EXP
0000014b: DUP2
0000014c: SLOAD
0000014d: DUP2
0000014e: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000163: MUL
00000164: NOT
00000165: AND
00000166: SWAP1
00000167: DUP4
00000168: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
0000017d: AND
0000017e: MUL
0000017f: OR
00000180: SWAP1
00000181: SSTORE
00000182: POP
00000183: PUSH2 0x018f
00000186: PUSH1 0x01
00000188: SLOAD
00000189: PUSH1 0x01
0000018b: PUSH2 0x0429
0000018e: JUMP
0000018f: JUMPDEST
00000190: PUSH1 0x01
00000192: DUP2
00000193: SWAP1
00000194: SSTORE
00000195: POP
00000196: JUMPDEST
00000197: PUSH2 0x01df
0000019a: PUSH1 0x04
0000019c: PUSH1 0x00
0000019e: CALLER
0000019f: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000001b4: AND
000001b5: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000001ca: AND
000001cb: DUP2
000001cc: MSTORE
000001cd: PUSH1 0x20
000001cf: ADD
000001d0: SWAP1
000001d1: DUP2
000001d2: MSTORE
000001d3: PUSH1 0x20
000001d5: ADD
000001d6: PUSH1 0x00
000001d8: KECCAK256
000001d9: SLOAD
000001da: CALLVALUE
000001db: PUSH2 0x0429
000001de: JUMP
000001df: JUMPDEST
000001e0: PUSH1 0x04
000001e2: PUSH1 0x00
000001e4: CALLER
000001e5: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000001fa: AND
000001fb: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000210: AND
00000211: DUP2
00000212: MSTORE
00000213: PUSH1 0x20
00000215: ADD
00000216: SWAP1
00000217: DUP2
00000218: MSTORE
00000219: PUSH1 0x20
0000021b: ADD
0000021c: PUSH1 0x00
0000021e: KECCAK256
0000021f: DUP2
00000220: SWAP1
00000221: SSTORE
00000222: POP
00000223: ADDRESS
00000224: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000239: AND
0000023a: CALLER
0000023b: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000250: AND
00000251: PUSH32 0xd1ba4ac2e2a11b5101f6cb4d978f514a155b421e8ec396d2d9abaf0bb02917ee
00000272: CALLVALUE
00000273: PUSH1 0x40
00000275: MLOAD
00000276: DUP1
00000277: DUP3
00000278: DUP2
00000279: MSTORE
0000027a: PUSH1 0x20
0000027c: ADD
0000027d: SWAP2
0000027e: POP
0000027f: POP
00000280: PUSH1 0x40
00000282: MLOAD
00000283: DUP1
00000284: SWAP2
00000285: SUB
00000286: SWAP1
00000287: LOG3
00000288: JUMPDEST
00000289: JUMPDEST
0000028a: POP
0000028b: STOP
0000028c: JUMPDEST
0000028d: CALLVALUE
0000028e: ISZERO
0000028f: PUSH2 0x0297
00000292: JUMPI
00000293: PUSH1 0x00
00000295: DUP1
00000296: REVERT
00000297: JUMPDEST
00000298: PUSH2 0x029f
0000029b: PUSH2 0x044f
0000029e: JUMP
0000029f: JUMPDEST
000002a0: PUSH1 0x40
000002a2: MLOAD
000002a3: DUP1
000002a4: DUP3
000002a5: PUSH1 0x03
000002a7: DUP2
000002a8: GT
000002a9: ISZERO
000002aa: PUSH2 0x02af
000002ad: JUMPI
000002ae: INVALID
000002af: JUMPDEST
000002b0: PUSH1 0xff
000002b2: AND
000002b3: DUP2
000002b4: MSTORE
000002b5: PUSH1 0x20
000002b7: ADD
000002b8: SWAP2
000002b9: POP
000002ba: POP
000002bb: PUSH1 0x40
000002bd: MLOAD
000002be: DUP1
000002bf: SWAP2
000002c0: SUB
000002c1: SWAP1
000002c2: RETURN
000002c3: JUMPDEST
000002c4: CALLVALUE
000002c5: ISZERO
000002c6: PUSH2 0x02ce
000002c9: JUMPI
000002ca: PUSH1 0x00
000002cc: DUP1
000002cd: REVERT
000002ce: JUMPDEST
000002cf: PUSH2 0x02d6
000002d2: PUSH2 0x0461
000002d5: JUMP
000002d6: JUMPDEST
000002d7: STOP
000002d8: JUMPDEST
000002d9: CALLVALUE
000002da: ISZERO
000002db: PUSH2 0x02e3
000002de: JUMPI
000002df: PUSH1 0x00
000002e1: DUP1
000002e2: REVERT
000002e3: JUMPDEST
000002e4: PUSH2 0x02eb
000002e7: PUSH2 0x05c5
000002ea: JUMP
000002eb: JUMPDEST
000002ec: STOP
000002ed: JUMPDEST
000002ee: CALLVALUE
000002ef: ISZERO
000002f0: PUSH2 0x02f8
000002f3: JUMPI
000002f4: PUSH1 0x00
000002f6: DUP1
000002f7: REVERT
000002f8: JUMPDEST
000002f9: PUSH2 0x0300
000002fc: PUSH2 0x075c
000002ff: JUMP
00000300: JUMPDEST
00000301: STOP
00000302: JUMPDEST
00000303: CALLVALUE
00000304: ISZERO
00000305: PUSH2 0x030d
00000308: JUMPI
00000309: PUSH1 0x00
0000030b: DUP1
0000030c: REVERT
0000030d: JUMPDEST
0000030e: PUSH2 0x0315
00000311: PUSH2 0x08f8
00000314: JUMP
00000315: JUMPDEST
00000316: STOP
00000317: JUMPDEST
00000318: CALLVALUE
00000319: ISZERO
0000031a: PUSH2 0x0322
0000031d: JUMPI
0000031e: PUSH1 0x00
00000320: DUP1
00000321: REVERT
00000322: JUMPDEST
00000323: PUSH2 0x032a
00000326: PUSH2 0x0a5c
00000329: JUMP
0000032a: JUMPDEST
0000032b: STOP
0000032c: JUMPDEST
0000032d: CALLVALUE
0000032e: ISZERO
0000032f: PUSH2 0x0337
00000332: JUMPI
00000333: PUSH1 0x00
00000335: DUP1
00000336: REVERT
00000337: JUMPDEST
00000338: PUSH2 0x033f
0000033b: PUSH2 0x0bc0
0000033e: JUMP
0000033f: JUMPDEST
00000340: PUSH1 0x40
00000342: MLOAD
00000343: DUP1
00000344: DUP3
00000345: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
0000035a: AND
0000035b: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000370: AND
00000371: DUP2
00000372: MSTORE
00000373: PUSH1 0x20
00000375: ADD
00000376: SWAP2
00000377: POP
00000378: POP
00000379: PUSH1 0x40
0000037b: MLOAD
0000037c: DUP1
0000037d: SWAP2
0000037e: SUB
0000037f: SWAP1
00000380: RETURN
00000381: JUMPDEST
00000382: CALLVALUE
00000383: ISZERO
00000384: PUSH2 0x038c
00000387: JUMPI
00000388: PUSH1 0x00
0000038a: DUP1
0000038b: REVERT
0000038c: JUMPDEST
0000038d: PUSH2 0x0394
00000390: PUSH2 0x0be6
00000393: JUMP
00000394: JUMPDEST
00000395: STOP
00000396: JUMPDEST
00000397: CALLVALUE
00000398: ISZERO
00000399: PUSH2 0x03a1
0000039c: JUMPI
0000039d: PUSH1 0x00
0000039f: DUP1
000003a0: REVERT
000003a1: JUMPDEST
000003a2: PUSH2 0x03b7
000003a5: PUSH1 0x04
000003a7: DUP1
000003a8: DUP1
000003a9: CALLDATALOAD
000003aa: SWAP1
000003ab: PUSH1 0x20
000003ad: ADD
000003ae: SWAP1
000003af: SWAP2
000003b0: SWAP1
000003b1: POP
000003b2: POP
000003b3: PUSH2 0x0d49
000003b6: JUMP
000003b7: JUMPDEST
000003b8: PUSH1 0x40
000003ba: MLOAD
000003bb: DUP1
000003bc: DUP4
000003bd: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000003d2: AND
000003d3: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000003e8: AND
000003e9: DUP2
000003ea: MSTORE
000003eb: PUSH1 0x20
000003ed: ADD
000003ee: DUP3
000003ef: DUP2
000003f0: MSTORE
000003f1: PUSH1 0x20
000003f3: ADD
000003f4: SWAP3
000003f5: POP
000003f6: POP
000003f7: POP
000003f8: PUSH1 0x40
000003fa: MLOAD
000003fb: DUP1
000003fc: SWAP2
000003fd: SUB
000003fe: SWAP1
000003ff: RETURN
00000400: JUMPDEST
00000401: CALLVALUE
00000402: ISZERO
00000403: PUSH2 0x040b
00000406: JUMPI
00000407: PUSH1 0x00
00000409: DUP1
0000040a: REVERT
0000040b: JUMPDEST
0000040c: PUSH2 0x0413
0000040f: PUSH2 0x0de7
00000412: JUMP
00000413: JUMPDEST
00000414: PUSH1 0x40
00000416: MLOAD
00000417: DUP1
00000418: DUP3
00000419: DUP2
0000041a: MSTORE
0000041b: PUSH1 0x20
0000041d: ADD
0000041e: SWAP2
0000041f: POP
00000420: POP
00000421: PUSH1 0x40
00000423: MLOAD
00000424: DUP1
00000425: SWAP2
00000426: SUB
00000427: SWAP1
00000428: RETURN
00000429: JUMPDEST
0000042a: PUSH1 0x00
0000042c: DUP2
0000042d: DUP4
0000042e: ADD
0000042f: SWAP1
00000430: POP
00000431: DUP3
00000432: DUP2
00000433: LT
00000434: ISZERO
00000435: DUP1
00000436: ISZERO
00000437: PUSH2 0x0440
0000043a: JUMPI
0000043b: POP
0000043c: DUP2
0000043d: DUP2
0000043e: LT
0000043f: ISZERO
00000440: JUMPDEST
00000441: ISZERO
00000442: ISZERO
00000443: PUSH2 0x0448
00000446: JUMPI
00000447: INVALID
00000448: JUMPDEST
00000449: JUMPDEST
0000044a: SWAP3
0000044b: SWAP2
0000044c: POP
0000044d: POP
0000044e: JUMP
0000044f: JUMPDEST
00000450: PUSH1 0x00
00000452: DUP1
00000453: SWAP1
00000454: SLOAD
00000455: SWAP1
00000456: PUSH2 0x0100
00000459: EXP
0000045a: SWAP1
0000045b: DIV
0000045c: PUSH1 0xff
0000045e: AND
0000045f: DUP2
00000460: JUMP
00000461: JUMPDEST
00000462: PUSH1 0x00
00000464: PUSH1 0x01
00000466: PUSH1 0x00
00000468: DUP1
00000469: SWAP1
0000046a: SLOAD
0000046b: SWAP1
0000046c: PUSH2 0x0100
0000046f: EXP
00000470: SWAP1
00000471: DIV
00000472: PUSH1 0xff
00000474: AND
00000475: PUSH1 0x03
00000477: DUP2
00000478: GT
00000479: ISZERO
0000047a: PUSH2 0x047f
0000047d: JUMPI
0000047e: INVALID
0000047f: JUMPDEST
00000480: DUP2
00000481: PUSH1 0x03
00000483: DUP2
00000484: GT
00000485: ISZERO
00000486: PUSH2 0x048b
00000489: JUMPI
0000048a: INVALID
0000048b: JUMPDEST
0000048c: EQ
0000048d: ISZERO
0000048e: ISZERO
0000048f: PUSH2 0x0497
00000492: JUMPI
00000493: PUSH1 0x00
00000495: DUP1
00000496: REVERT
00000497: JUMPDEST
00000498: PUSH1 0x02
0000049a: PUSH1 0x00
0000049c: SWAP1
0000049d: SLOAD
0000049e: SWAP1
0000049f: PUSH2 0x0100
000004a2: EXP
000004a3: SWAP1
000004a4: DIV
000004a5: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000004ba: AND
000004bb: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000004d0: AND
000004d1: CALLER
000004d2: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000004e7: AND
000004e8: EQ
000004e9: ISZERO
000004ea: ISZERO
000004eb: PUSH2 0x04f3
000004ee: JUMPI
000004ef: PUSH1 0x00
000004f1: DUP1
000004f2: REVERT
000004f3: JUMPDEST
000004f4: PUSH1 0x00
000004f6: DUP1
000004f7: SWAP1
000004f8: SLOAD
000004f9: SWAP1
000004fa: PUSH2 0x0100
000004fd: EXP
000004fe: SWAP1
000004ff: DIV
00000500: PUSH1 0xff
00000502: AND
00000503: SWAP2
00000504: POP
00000505: PUSH1 0x03
00000507: PUSH1 0x00
00000509: DUP1
0000050a: PUSH2 0x0100
0000050d: EXP
0000050e: DUP2
0000050f: SLOAD
00000510: DUP2
00000511: PUSH1 0xff
00000513: MUL
00000514: NOT
00000515: AND
00000516: SWAP1
00000517: DUP4
00000518: PUSH1 0x03
0000051a: DUP2
0000051b: GT
0000051c: ISZERO
0000051d: PUSH2 0x0522
00000520: JUMPI
00000521: INVALID
00000522: JUMPDEST
00000523: MUL
00000524: OR
00000525: SWAP1
00000526: SSTORE
00000527: POP
00000528: ADDRESS
00000529: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
0000053e: AND
0000053f: CALLER
00000540: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000555: AND
00000556: PUSH32 0xe9ed7c8788612648049556b046b8ca806767063db36cb7f1b65ab87df0bd47c6
00000577: DUP5
00000578: PUSH1 0x00
0000057a: DUP1
0000057b: SWAP1
0000057c: SLOAD
0000057d: SWAP1
0000057e: PUSH2 0x0100
00000581: EXP
00000582: SWAP1
00000583: DIV
00000584: PUSH1 0xff
00000586: AND
00000587: PUSH1 0x40
00000589: MLOAD
0000058a: DUP1
0000058b: DUP4
0000058c: PUSH1 0x03
0000058e: DUP2
0000058f: GT
00000590: ISZERO
00000591: PUSH2 0x0596
00000594: JUMPI
00000595: INVALID
00000596: JUMPDEST
00000597: PUSH1 0xff
00000599: AND
0000059a: DUP2
0000059b: MSTORE
0000059c: PUSH1 0x20
0000059e: ADD
0000059f: DUP3
000005a0: PUSH1 0x03
000005a2: DUP2
000005a3: GT
000005a4: ISZERO
000005a5: PUSH2 0x05aa
000005a8: JUMPI
000005a9: INVALID
000005aa: JUMPDEST
000005ab: PUSH1 0xff
000005ad: AND
000005ae: DUP2
000005af: MSTORE
000005b0: PUSH1 0x20
000005b2: ADD
000005b3: SWAP3
000005b4: POP
000005b5: POP
000005b6: POP
000005b7: PUSH1 0x40
000005b9: MLOAD
000005ba: DUP1
000005bb: SWAP2
000005bc: SUB
000005bd: SWAP1
000005be: LOG3
000005bf: JUMPDEST
000005c0: JUMPDEST
000005c1: JUMPDEST
000005c2: POP
000005c3: POP
000005c4: JUMP
000005c5: JUMPDEST
000005c6: PUSH1 0x00
000005c8: PUSH1 0x03
000005ca: PUSH1 0x00
000005cc: DUP1
000005cd: SWAP1
000005ce: SLOAD
000005cf: SWAP1
000005d0: PUSH2 0x0100
000005d3: EXP
000005d4: SWAP1
000005d5: DIV
000005d6: PUSH1 0xff
000005d8: AND
000005d9: PUSH1 0x03
000005db: DUP2
000005dc: GT
000005dd: ISZERO
000005de: PUSH2 0x05e3
000005e1: JUMPI
000005e2: INVALID
000005e3: JUMPDEST
000005e4: DUP2
000005e5: PUSH1 0x03
000005e7: DUP2
000005e8: GT
000005e9: ISZERO
000005ea: PUSH2 0x05ef
000005ed: JUMPI
000005ee: INVALID
000005ef: JUMPDEST
000005f0: EQ
000005f1: ISZERO
000005f2: ISZERO
000005f3: PUSH2 0x05fb
000005f6: JUMPI
000005f7: PUSH1 0x00
000005f9: DUP1
000005fa: REVERT
000005fb: JUMPDEST
000005fc: PUSH1 0x04
000005fe: PUSH1 0x00
00000600: CALLER
00000601: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000616: AND
00000617: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
0000062c: AND
0000062d: DUP2
0000062e: MSTORE
0000062f: PUSH1 0x20
00000631: ADD
00000632: SWAP1
00000633: DUP2
00000634: MSTORE
00000635: PUSH1 0x20
00000637: ADD
00000638: PUSH1 0x00
0000063a: KECCAK256
0000063b: SLOAD
0000063c: SWAP2
0000063d: POP
0000063e: PUSH1 0x00
00000640: DUP3
00000641: GT
00000642: DUP1
00000643: ISZERO
00000644: PUSH2 0x0664
00000647: JUMPI
00000648: POP
00000649: ADDRESS
0000064a: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
0000065f: AND
00000660: BALANCE
00000661: DUP3
00000662: GT
00000663: ISZERO
00000664: JUMPDEST
00000665: ISZERO
00000666: ISZERO
00000667: PUSH2 0x066c
0000066a: JUMPI
0000066b: INVALID
0000066c: JUMPDEST
0000066d: PUSH1 0x00
0000066f: PUSH1 0x04
00000671: PUSH1 0x00
00000673: CALLER
00000674: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000689: AND
0000068a: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
0000069f: AND
000006a0: DUP2
000006a1: MSTORE
000006a2: PUSH1 0x20
000006a4: ADD
000006a5: SWAP1
000006a6: DUP2
000006a7: MSTORE
000006a8: PUSH1 0x20
000006aa: ADD
000006ab: PUSH1 0x00
000006ad: KECCAK256
000006ae: DUP2
000006af: SWAP1
000006b0: SSTORE
000006b1: POP
000006b2: CALLER
000006b3: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000006c8: AND
000006c9: PUSH2 0x08fc
000006cc: DUP4
000006cd: SWAP1
000006ce: DUP2
000006cf: ISZERO
000006d0: MUL
000006d1: SWAP1
000006d2: PUSH1 0x40
000006d4: MLOAD
000006d5: PUSH1 0x00
000006d7: PUSH1 0x40
000006d9: MLOAD
000006da: DUP1
000006db: DUP4
000006dc: SUB
000006dd: DUP2
000006de: DUP6
000006df: DUP9
000006e0: DUP9
000006e1: CALL
000006e2: SWAP4
000006e3: POP
000006e4: POP
000006e5: POP
000006e6: POP
000006e7: ISZERO
000006e8: ISZERO
000006e9: PUSH2 0x06f1
000006ec: JUMPI
000006ed: PUSH1 0x00
000006ef: DUP1
000006f0: REVERT
000006f1: JUMPDEST
000006f2: CALLER
000006f3: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000708: AND
00000709: ADDRESS
0000070a: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
0000071f: AND
00000720: PUSH32 0xd1ba4ac2e2a11b5101f6cb4d978f514a155b421e8ec396d2d9abaf0bb02917ee
00000741: DUP5
00000742: PUSH1 0x40
00000744: MLOAD
00000745: DUP1
00000746: DUP3
00000747: DUP2
00000748: MSTORE
00000749: PUSH1 0x20
0000074b: ADD
0000074c: SWAP2
0000074d: POP
0000074e: POP
0000074f: PUSH1 0x40
00000751: MLOAD
00000752: DUP1
00000753: SWAP2
00000754: SUB
00000755: SWAP1
00000756: LOG3
00000757: JUMPDEST
00000758: JUMPDEST
00000759: POP
0000075a: POP
0000075b: JUMP
0000075c: JUMPDEST
0000075d: PUSH1 0x00
0000075f: PUSH1 0x02
00000761: PUSH1 0x00
00000763: DUP1
00000764: SWAP1
00000765: SLOAD
00000766: SWAP1
00000767: PUSH2 0x0100
0000076a: EXP
0000076b: SWAP1
0000076c: DIV
0000076d: PUSH1 0xff
0000076f: AND
00000770: PUSH1 0x03
00000772: DUP2
00000773: GT
00000774: ISZERO
00000775: PUSH2 0x077a
00000778: JUMPI
00000779: INVALID
0000077a: JUMPDEST
0000077b: DUP2
0000077c: PUSH1 0x03
0000077e: DUP2
0000077f: GT
00000780: ISZERO
00000781: PUSH2 0x0786
00000784: JUMPI
00000785: INVALID
00000786: JUMPDEST
00000787: EQ
00000788: ISZERO
00000789: ISZERO
0000078a: PUSH2 0x0792
0000078d: JUMPI
0000078e: PUSH1 0x00
00000790: DUP1
00000791: REVERT
00000792: JUMPDEST
00000793: PUSH1 0x02
00000795: PUSH1 0x00
00000797: SWAP1
00000798: SLOAD
00000799: SWAP1
0000079a: PUSH2 0x0100
0000079d: EXP
0000079e: SWAP1
0000079f: DIV
000007a0: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000007b5: AND
000007b6: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000007cb: AND
000007cc: CALLER
000007cd: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000007e2: AND
000007e3: EQ
000007e4: ISZERO
000007e5: ISZERO
000007e6: PUSH2 0x07ee
000007e9: JUMPI
000007ea: PUSH1 0x00
000007ec: DUP1
000007ed: REVERT
000007ee: JUMPDEST
000007ef: ADDRESS
000007f0: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000805: AND
00000806: BALANCE
00000807: SWAP2
00000808: POP
00000809: PUSH1 0x02
0000080b: PUSH1 0x00
0000080d: SWAP1
0000080e: SLOAD
0000080f: SWAP1
00000810: PUSH2 0x0100
00000813: EXP
00000814: SWAP1
00000815: DIV
00000816: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
0000082b: AND
0000082c: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000841: AND
00000842: PUSH2 0x08fc
00000845: DUP4
00000846: SWAP1
00000847: DUP2
00000848: ISZERO
00000849: MUL
0000084a: SWAP1
0000084b: PUSH1 0x40
0000084d: MLOAD
0000084e: PUSH1 0x00
00000850: PUSH1 0x40
00000852: MLOAD
00000853: DUP1
00000854: DUP4
00000855: SUB
00000856: DUP2
00000857: DUP6
00000858: DUP9
00000859: DUP9
0000085a: CALL
0000085b: SWAP4
0000085c: POP
0000085d: POP
0000085e: POP
0000085f: POP
00000860: ISZERO
00000861: ISZERO
00000862: PUSH2 0x086a
00000865: JUMPI
00000866: PUSH1 0x00
00000868: DUP1
00000869: REVERT
0000086a: JUMPDEST
0000086b: PUSH1 0x02
0000086d: PUSH1 0x00
0000086f: SWAP1
00000870: SLOAD
00000871: SWAP1
00000872: PUSH2 0x0100
00000875: EXP
00000876: SWAP1
00000877: DIV
00000878: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
0000088d: AND
0000088e: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000008a3: AND
000008a4: ADDRESS
000008a5: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000008ba: AND
000008bb: PUSH32 0xd1ba4ac2e2a11b5101f6cb4d978f514a155b421e8ec396d2d9abaf0bb02917ee
000008dc: DUP5
000008dd: PUSH1 0x40
000008df: MLOAD
000008e0: DUP1
000008e1: DUP3
000008e2: DUP2
000008e3: MSTORE
000008e4: PUSH1 0x20
000008e6: ADD
000008e7: SWAP2
000008e8: POP
000008e9: POP
000008ea: PUSH1 0x40
000008ec: MLOAD
000008ed: DUP1
000008ee: SWAP2
000008ef: SUB
000008f0: SWAP1
000008f1: LOG3
000008f2: JUMPDEST
000008f3: JUMPDEST
000008f4: JUMPDEST
000008f5: POP
000008f6: POP
000008f7: JUMP
000008f8: JUMPDEST
000008f9: PUSH1 0x00
000008fb: PUSH1 0x01
000008fd: PUSH1 0x00
000008ff: DUP1
00000900: SWAP1
00000901: SLOAD
00000902: SWAP1
00000903: PUSH2 0x0100
00000906: EXP
00000907: SWAP1
00000908: DIV
00000909: PUSH1 0xff
0000090b: AND
0000090c: PUSH1 0x03
0000090e: DUP2
0000090f: GT
00000910: ISZERO
00000911: PUSH2 0x0916
00000914: JUMPI
00000915: INVALID
00000916: JUMPDEST
00000917: DUP2
00000918: PUSH1 0x03
0000091a: DUP2
0000091b: GT
0000091c: ISZERO
0000091d: PUSH2 0x0922
00000920: JUMPI
00000921: INVALID
00000922: JUMPDEST
00000923: EQ
00000924: ISZERO
00000925: ISZERO
00000926: PUSH2 0x092e
00000929: JUMPI
0000092a: PUSH1 0x00
0000092c: DUP1
0000092d: REVERT
0000092e: JUMPDEST
0000092f: PUSH1 0x02
00000931: PUSH1 0x00
00000933: SWAP1
00000934: SLOAD
00000935: SWAP1
00000936: PUSH2 0x0100
00000939: EXP
0000093a: SWAP1
0000093b: DIV
0000093c: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000951: AND
00000952: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000967: AND
00000968: CALLER
00000969: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
0000097e: AND
0000097f: EQ
00000980: ISZERO
00000981: ISZERO
00000982: PUSH2 0x098a
00000985: JUMPI
00000986: PUSH1 0x00
00000988: DUP1
00000989: REVERT
0000098a: JUMPDEST
0000098b: PUSH1 0x00
0000098d: DUP1
0000098e: SWAP1
0000098f: SLOAD
00000990: SWAP1
00000991: PUSH2 0x0100
00000994: EXP
00000995: SWAP1
00000996: DIV
00000997: PUSH1 0xff
00000999: AND
0000099a: SWAP2
0000099b: POP
0000099c: PUSH1 0x00
0000099e: DUP1
0000099f: PUSH1 0x00
000009a1: PUSH2 0x0100
000009a4: EXP
000009a5: DUP2
000009a6: SLOAD
000009a7: DUP2
000009a8: PUSH1 0xff
000009aa: MUL
000009ab: NOT
000009ac: AND
000009ad: SWAP1
000009ae: DUP4
000009af: PUSH1 0x03
000009b1: DUP2
000009b2: GT
000009b3: ISZERO
000009b4: PUSH2 0x09b9
000009b7: JUMPI
000009b8: INVALID
000009b9: JUMPDEST
000009ba: MUL
000009bb: OR
000009bc: SWAP1
000009bd: SSTORE
000009be: POP
000009bf: ADDRESS
000009c0: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000009d5: AND
000009d6: CALLER
000009d7: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000009ec: AND
000009ed: PUSH32 0xe9ed7c8788612648049556b046b8ca806767063db36cb7f1b65ab87df0bd47c6
00000a0e: DUP5
00000a0f: PUSH1 0x00
00000a11: DUP1
00000a12: SWAP1
00000a13: SLOAD
00000a14: SWAP1
00000a15: PUSH2 0x0100
00000a18: EXP
00000a19: SWAP1
00000a1a: DIV
00000a1b: PUSH1 0xff
00000a1d: AND
00000a1e: PUSH1 0x40
00000a20: MLOAD
00000a21: DUP1
00000a22: DUP4
00000a23: PUSH1 0x03
00000a25: DUP2
00000a26: GT
00000a27: ISZERO
00000a28: PUSH2 0x0a2d
00000a2b: JUMPI
00000a2c: INVALID
00000a2d: JUMPDEST
00000a2e: PUSH1 0xff
00000a30: AND
00000a31: DUP2
00000a32: MSTORE
00000a33: PUSH1 0x20
00000a35: ADD
00000a36: DUP3
00000a37: PUSH1 0x03
00000a39: DUP2
00000a3a: GT
00000a3b: ISZERO
00000a3c: PUSH2 0x0a41
00000a3f: JUMPI
00000a40: INVALID
00000a41: JUMPDEST
00000a42: PUSH1 0xff
00000a44: AND
00000a45: DUP2
00000a46: MSTORE
00000a47: PUSH1 0x20
00000a49: ADD
00000a4a: SWAP3
00000a4b: POP
00000a4c: POP
00000a4d: POP
00000a4e: PUSH1 0x40
00000a50: MLOAD
00000a51: DUP1
00000a52: SWAP2
00000a53: SUB
00000a54: SWAP1
00000a55: LOG3
00000a56: JUMPDEST
00000a57: JUMPDEST
00000a58: JUMPDEST
00000a59: POP
00000a5a: POP
00000a5b: JUMP
00000a5c: JUMPDEST
00000a5d: PUSH1 0x00
00000a5f: PUSH1 0x01
00000a61: PUSH1 0x00
00000a63: DUP1
00000a64: SWAP1
00000a65: SLOAD
00000a66: SWAP1
00000a67: PUSH2 0x0100
00000a6a: EXP
00000a6b: SWAP1
00000a6c: DIV
00000a6d: PUSH1 0xff
00000a6f: AND
00000a70: PUSH1 0x03
00000a72: DUP2
00000a73: GT
00000a74: ISZERO
00000a75: PUSH2 0x0a7a
00000a78: JUMPI
00000a79: INVALID
00000a7a: JUMPDEST
00000a7b: DUP2
00000a7c: PUSH1 0x03
00000a7e: DUP2
00000a7f: GT
00000a80: ISZERO
00000a81: PUSH2 0x0a86
00000a84: JUMPI
00000a85: INVALID
00000a86: JUMPDEST
00000a87: EQ
00000a88: ISZERO
00000a89: ISZERO
00000a8a: PUSH2 0x0a92
00000a8d: JUMPI
00000a8e: PUSH1 0x00
00000a90: DUP1
00000a91: REVERT
00000a92: JUMPDEST
00000a93: PUSH1 0x02
00000a95: PUSH1 0x00
00000a97: SWAP1
00000a98: SLOAD
00000a99: SWAP1
00000a9a: PUSH2 0x0100
00000a9d: EXP
00000a9e: SWAP1
00000a9f: DIV
00000aa0: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000ab5: AND
00000ab6: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000acb: AND
00000acc: CALLER
00000acd: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000ae2: AND
00000ae3: EQ
00000ae4: ISZERO
00000ae5: ISZERO
00000ae6: PUSH2 0x0aee
00000ae9: JUMPI
00000aea: PUSH1 0x00
00000aec: DUP1
00000aed: REVERT
00000aee: JUMPDEST
00000aef: PUSH1 0x00
00000af1: DUP1
00000af2: SWAP1
00000af3: SLOAD
00000af4: SWAP1
00000af5: PUSH2 0x0100
00000af8: EXP
00000af9: SWAP1
00000afa: DIV
00000afb: PUSH1 0xff
00000afd: AND
00000afe: SWAP2
00000aff: POP
00000b00: PUSH1 0x02
00000b02: PUSH1 0x00
00000b04: DUP1
00000b05: PUSH2 0x0100
00000b08: EXP
00000b09: DUP2
00000b0a: SLOAD
00000b0b: DUP2
00000b0c: PUSH1 0xff
00000b0e: MUL
00000b0f: NOT
00000b10: AND
00000b11: SWAP1
00000b12: DUP4
00000b13: PUSH1 0x03
00000b15: DUP2
00000b16: GT
00000b17: ISZERO
00000b18: PUSH2 0x0b1d
00000b1b: JUMPI
00000b1c: INVALID
00000b1d: JUMPDEST
00000b1e: MUL
00000b1f: OR
00000b20: SWAP1
00000b21: SSTORE
00000b22: POP
00000b23: ADDRESS
00000b24: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000b39: AND
00000b3a: CALLER
00000b3b: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000b50: AND
00000b51: PUSH32 0xe9ed7c8788612648049556b046b8ca806767063db36cb7f1b65ab87df0bd47c6
00000b72: DUP5
00000b73: PUSH1 0x00
00000b75: DUP1
00000b76: SWAP1
00000b77: SLOAD
00000b78: SWAP1
00000b79: PUSH2 0x0100
00000b7c: EXP
00000b7d: SWAP1
00000b7e: DIV
00000b7f: PUSH1 0xff
00000b81: AND
00000b82: PUSH1 0x40
00000b84: MLOAD
00000b85: DUP1
00000b86: DUP4
00000b87: PUSH1 0x03
00000b89: DUP2
00000b8a: GT
00000b8b: ISZERO
00000b8c: PUSH2 0x0b91
00000b8f: JUMPI
00000b90: INVALID
00000b91: JUMPDEST
00000b92: PUSH1 0xff
00000b94: AND
00000b95: DUP2
00000b96: MSTORE
00000b97: PUSH1 0x20
00000b99: ADD
00000b9a: DUP3
00000b9b: PUSH1 0x03
00000b9d: DUP2
00000b9e: GT
00000b9f: ISZERO
00000ba0: PUSH2 0x0ba5
00000ba3: JUMPI
00000ba4: INVALID
00000ba5: JUMPDEST
00000ba6: PUSH1 0xff
00000ba8: AND
00000ba9: DUP2
00000baa: MSTORE
00000bab: PUSH1 0x20
00000bad: ADD
00000bae: SWAP3
00000baf: POP
00000bb0: POP
00000bb1: POP
00000bb2: PUSH1 0x40
00000bb4: MLOAD
00000bb5: DUP1
00000bb6: SWAP2
00000bb7: SUB
00000bb8: SWAP1
00000bb9: LOG3
00000bba: JUMPDEST
00000bbb: JUMPDEST
00000bbc: JUMPDEST
00000bbd: POP
00000bbe: POP
00000bbf: JUMP
00000bc0: JUMPDEST
00000bc1: PUSH1 0x02
00000bc3: PUSH1 0x00
00000bc5: SWAP1
00000bc6: SLOAD
00000bc7: SWAP1
00000bc8: PUSH2 0x0100
00000bcb: EXP
00000bcc: SWAP1
00000bcd: DIV
00000bce: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000be3: AND
00000be4: DUP2
00000be5: JUMP
00000be6: JUMPDEST
00000be7: PUSH1 0x00
00000be9: DUP1
00000bea: PUSH1 0x00
00000bec: DUP1
00000bed: SWAP1
00000bee: SLOAD
00000bef: SWAP1
00000bf0: PUSH2 0x0100
00000bf3: EXP
00000bf4: SWAP1
00000bf5: DIV
00000bf6: PUSH1 0xff
00000bf8: AND
00000bf9: PUSH1 0x03
00000bfb: DUP2
00000bfc: GT
00000bfd: ISZERO
00000bfe: PUSH2 0x0c03
00000c01: JUMPI
00000c02: INVALID
00000c03: JUMPDEST
00000c04: DUP2
00000c05: PUSH1 0x03
00000c07: DUP2
00000c08: GT
00000c09: ISZERO
00000c0a: PUSH2 0x0c0f
00000c0d: JUMPI
00000c0e: INVALID
00000c0f: JUMPDEST
00000c10: EQ
00000c11: ISZERO
00000c12: ISZERO
00000c13: PUSH2 0x0c1b
00000c16: JUMPI
00000c17: PUSH1 0x00
00000c19: DUP1
00000c1a: REVERT
00000c1b: JUMPDEST
00000c1c: PUSH1 0x02
00000c1e: PUSH1 0x00
00000c20: SWAP1
00000c21: SLOAD
00000c22: SWAP1
00000c23: PUSH2 0x0100
00000c26: EXP
00000c27: SWAP1
00000c28: DIV
00000c29: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000c3e: AND
00000c3f: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000c54: AND
00000c55: CALLER
00000c56: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000c6b: AND
00000c6c: EQ
00000c6d: ISZERO
00000c6e: ISZERO
00000c6f: PUSH2 0x0c77
00000c72: JUMPI
00000c73: PUSH1 0x00
00000c75: DUP1
00000c76: REVERT
00000c77: JUMPDEST
00000c78: PUSH1 0x00
00000c7a: DUP1
00000c7b: SWAP1
00000c7c: SLOAD
00000c7d: SWAP1
00000c7e: PUSH2 0x0100
00000c81: EXP
00000c82: SWAP1
00000c83: DIV
00000c84: PUSH1 0xff
00000c86: AND
00000c87: SWAP2
00000c88: POP
00000c89: PUSH1 0x01
00000c8b: PUSH1 0x00
00000c8d: DUP1
00000c8e: PUSH2 0x0100
00000c91: EXP
00000c92: DUP2
00000c93: SLOAD
00000c94: DUP2
00000c95: PUSH1 0xff
00000c97: MUL
00000c98: NOT
00000c99: AND
00000c9a: SWAP1
00000c9b: DUP4
00000c9c: PUSH1 0x03
00000c9e: DUP2
00000c9f: GT
00000ca0: ISZERO
00000ca1: PUSH2 0x0ca6
00000ca4: JUMPI
00000ca5: INVALID
00000ca6: JUMPDEST
00000ca7: MUL
00000ca8: OR
00000ca9: SWAP1
00000caa: SSTORE
00000cab: POP
00000cac: ADDRESS
00000cad: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000cc2: AND
00000cc3: CALLER
00000cc4: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000cd9: AND
00000cda: PUSH32 0xe9ed7c8788612648049556b046b8ca806767063db36cb7f1b65ab87df0bd47c6
00000cfb: DUP5
00000cfc: PUSH1 0x00
00000cfe: DUP1
00000cff: SWAP1
00000d00: SLOAD
00000d01: SWAP1
00000d02: PUSH2 0x0100
00000d05: EXP
00000d06: SWAP1
00000d07: DIV
00000d08: PUSH1 0xff
00000d0a: AND
00000d0b: PUSH1 0x40
00000d0d: MLOAD
00000d0e: DUP1
00000d0f: DUP4
00000d10: PUSH1 0x03
00000d12: DUP2
00000d13: GT
00000d14: ISZERO
00000d15: PUSH2 0x0d1a
00000d18: JUMPI
00000d19: INVALID
00000d1a: JUMPDEST
00000d1b: PUSH1 0xff
00000d1d: AND
00000d1e: DUP2
00000d1f: MSTORE
00000d20: PUSH1 0x20
00000d22: ADD
00000d23: DUP3
00000d24: PUSH1 0x03
00000d26: DUP2
00000d27: GT
00000d28: ISZERO
00000d29: PUSH2 0x0d2e
00000d2c: JUMPI
00000d2d: INVALID
00000d2e: JUMPDEST
00000d2f: PUSH1 0xff
00000d31: AND
00000d32: DUP2
00000d33: MSTORE
00000d34: PUSH1 0x20
00000d36: ADD
00000d37: SWAP3
00000d38: POP
00000d39: POP
00000d3a: POP
00000d3b: PUSH1 0x40
00000d3d: MLOAD
00000d3e: DUP1
00000d3f: SWAP2
00000d40: SUB
00000d41: SWAP1
00000d42: LOG3
00000d43: JUMPDEST
00000d44: JUMPDEST
00000d45: JUMPDEST
00000d46: POP
00000d47: POP
00000d48: JUMP
00000d49: JUMPDEST
00000d4a: PUSH1 0x00
00000d4c: DUP1
00000d4d: PUSH1 0x00
00000d4f: DUP4
00000d50: LT
00000d51: ISZERO
00000d52: DUP1
00000d53: ISZERO
00000d54: PUSH2 0x0d5e
00000d57: JUMPI
00000d58: POP
00000d59: PUSH1 0x01
00000d5b: SLOAD
00000d5c: DUP4
00000d5d: LT
00000d5e: JUMPDEST
00000d5f: ISZERO
00000d60: ISZERO
00000d61: PUSH2 0x0d69
00000d64: JUMPI
00000d65: PUSH1 0x00
00000d67: DUP1
00000d68: REVERT
00000d69: JUMPDEST
00000d6a: PUSH1 0x03
00000d6c: PUSH1 0x00
00000d6e: DUP5
00000d6f: DUP2
00000d70: MSTORE
00000d71: PUSH1 0x20
00000d73: ADD
00000d74: SWAP1
00000d75: DUP2
00000d76: MSTORE
00000d77: PUSH1 0x20
00000d79: ADD
00000d7a: PUSH1 0x00
00000d7c: KECCAK256
00000d7d: PUSH1 0x00
00000d7f: SWAP1
00000d80: SLOAD
00000d81: SWAP1
00000d82: PUSH2 0x0100
00000d85: EXP
00000d86: SWAP1
00000d87: DIV
00000d88: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000d9d: AND
00000d9e: SWAP2
00000d9f: POP
00000da0: PUSH1 0x04
00000da2: PUSH1 0x00
00000da4: DUP4
00000da5: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000dba: AND
00000dbb: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000dd0: AND
00000dd1: DUP2
00000dd2: MSTORE
00000dd3: PUSH1 0x20
00000dd5: ADD
00000dd6: SWAP1
00000dd7: DUP2
00000dd8: MSTORE
00000dd9: PUSH1 0x20
00000ddb: ADD
00000ddc: PUSH1 0x00
00000dde: KECCAK256
00000ddf: SLOAD
00000de0: SWAP1
00000de1: POP
00000de2: JUMPDEST
00000de3: SWAP2
00000de4: POP
00000de5: SWAP2
00000de6: JUMP
00000de7: JUMPDEST
00000de8: PUSH1 0x01
00000dea: SLOAD
00000deb: DUP2
00000dec: JUMP
00000ded: STOP
00000dee: LOG1
00000def: PUSH6 0x627a7a723058
00000df6: KECCAK256
00000df7: UNKNOWN(0xAC)
00000df8: UNKNOWN(0x21)
00000df9: UNKNOWN(0xCC)
00000dfa: PUSH4 0x352a00c6
00000dff: MSIZE
00000e00: MCOPY
00000e01: UNKNOWN(0xD5)
00000e02: UNKNOWN(0xF9)
00000e03: PUSH32

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: 0xf4611b75be239f250e792806b0d26fe036b5f0c485f25b4d9f72953134d539e8
call_targets: 0x5535a72556727c221c567e0fc4208c5a99dba1cc
target_varies: no
classification: constant_target
validation_json
{
    "sink": "CALL",
    "errors": 0,
    "status": "sink_reached",
    "attempts": 1,
    "trace_id": "0xf4611b75be239f250e792806b0d26fe036b5f0c485f25b4d9f72953134d539e8",
    "confirmed": false,
    "trace_mode": "callTracer",
    "call_targets": [
        "0x5535a72556727c221c567e0fc4208c5a99dba1cc"
    ],
    "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": "0xffffffff",
            "selector": "0xffffffff",
            "calldata_variants": [
                "0xffffffff",
                "0xffffffff0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x0c3f6acf",
            "selector": "0x0c3f6acf",
            "calldata_variants": [
                "0x0c3f6acf",
                "0x0c3f6acf0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x146901db",
            "selector": "0x146901db",
            "calldata_variants": [
                "0x146901db",
                "0x146901db0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x590e1ae3",
            "selector": "0x590e1ae3",
            "calldata_variants": [
                "0x590e1ae3",
                "0x590e1ae30000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x63bd1d4a",
            "selector": "0x63bd1d4a",
            "calldata_variants": [
                "0x63bd1d4a",
                "0x63bd1d4a0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x760a8c2a",
            "selector": "0x760a8c2a",
            "calldata_variants": [
                "0x760a8c2a",
                "0x760a8c2a0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x8ad14ee6",
            "selector": "0x8ad14ee6",
            "calldata_variants": [
                "0x8ad14ee6",
                "0x8ad14ee60000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x8da5cb5b",
            "selector": "0x8da5cb5b",
            "calldata_variants": [
                "0x8da5cb5b",
                "0x8da5cb5b0000000000000000000000000000000000000000000000000000000000000000"
            ]
        }
    ]
}
evidence_json
{
    "examples": [
        {
            "pc": 1761,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        },
        {
            "pc": 2138,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        }
    ],
    "call_count": 2,
    "guards_detected": [
        {
            "pc": 1233,
            "type": "msg_sender_eq_const",
            "value": "0xffffffffffffffffffffffffffffffffffffffff"
        },
        {
            "pc": 1996,
            "type": "msg_sender_eq_const",
            "value": "0xffffffffffffffffffffffffffffffffffffffff"
        },
        {
            "pc": 2408,
            "type": "msg_sender_eq_const",
            "value": "0xffffffffffffffffffffffffffffffffffffffff"
        },
        {
            "pc": 2764,
            "type": "msg_sender_eq_const",
            "value": "0xffffffffffffffffffffffffffffffffffffffff"
        },
        {
            "pc": 3157,
            "type": "msg_sender_eq_const",
            "value": "0xffffffffffffffffffffffffffffffffffffffff"
        }
    ],
    "untrusted_call_count": 2
}
medium other detector ETH value transfer possible 40 no no
view
trace_id: 0xf4611b75be239f250e792806b0d26fe036b5f0c485f25b4d9f72953134d539e8
call_targets: 0x5535a72556727c221c567e0fc4208c5a99dba1cc
target_varies: no
classification: constant_target
validation_json
{
    "sink": "CALL",
    "errors": 0,
    "status": "sink_reached",
    "attempts": 1,
    "trace_id": "0xf4611b75be239f250e792806b0d26fe036b5f0c485f25b4d9f72953134d539e8",
    "confirmed": false,
    "trace_mode": "callTracer",
    "call_targets": [
        "0x5535a72556727c221c567e0fc4208c5a99dba1cc"
    ],
    "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": "0xffffffff",
            "selector": "0xffffffff",
            "calldata_variants": [
                "0xffffffff",
                "0xffffffff0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x0c3f6acf",
            "selector": "0x0c3f6acf",
            "calldata_variants": [
                "0x0c3f6acf",
                "0x0c3f6acf0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x146901db",
            "selector": "0x146901db",
            "calldata_variants": [
                "0x146901db",
                "0x146901db0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x590e1ae3",
            "selector": "0x590e1ae3",
            "calldata_variants": [
                "0x590e1ae3",
                "0x590e1ae30000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x63bd1d4a",
            "selector": "0x63bd1d4a",
            "calldata_variants": [
                "0x63bd1d4a",
                "0x63bd1d4a0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x760a8c2a",
            "selector": "0x760a8c2a",
            "calldata_variants": [
                "0x760a8c2a",
                "0x760a8c2a0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x8ad14ee6",
            "selector": "0x8ad14ee6",
            "calldata_variants": [
                "0x8ad14ee6",
                "0x8ad14ee60000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x8da5cb5b",
            "selector": "0x8da5cb5b",
            "calldata_variants": [
                "0x8da5cb5b",
                "0x8da5cb5b0000000000000000000000000000000000000000000000000000000000000000"
            ]
        }
    ]
}
evidence_json
{
    "examples": [
        {
            "pc": 1761,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        },
        {
            "pc": 2138,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        }
    ],
    "eth_value_calls": 2,
    "guards_detected": [
        {
            "pc": 1233,
            "type": "msg_sender_eq_const",
            "value": "0xffffffffffffffffffffffffffffffffffffffff"
        },
        {
            "pc": 1996,
            "type": "msg_sender_eq_const",
            "value": "0xffffffffffffffffffffffffffffffffffffffff"
        },
        {
            "pc": 2408,
            "type": "msg_sender_eq_const",
            "value": "0xffffffffffffffffffffffffffffffffffffffff"
        },
        {
            "pc": 2764,
            "type": "msg_sender_eq_const",
            "value": "0xffffffffffffffffffffffffffffffffffffffff"
        },
        {
            "pc": 3157,
            "type": "msg_sender_eq_const",
            "value": "0xffffffffffffffffffffffffffffffffffffffff"
        }
    ]
}