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

Analysis Run

e44c9565-9bf8-4757-94ca-2c57fa718988

complete
Chain ID
1
Address
Block Number
Created
Thu, Jan 1, 2026 6:51 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
0
Validated
0
Source
Bytecode only
Review Backing
Not yet
Best current signal
ETH value transfer possible
crit 0 high 0 proxy context implementation known
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
31107 report.consolidate complete 1 / 1 3 months ago
76456 artifact.fetch complete 1 / 3 1 week ago
76457 tool.cast_disasm complete 1 / 3 1 week ago
76458 analysis.bundle complete 1 / 3 1 week ago
76459 capability.graph complete 1 / 3 1 week ago
76460 detector.run complete 1 / 3 1 week ago
76461 validation.fork complete 1 / 3 1 week ago

Artifact

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

Slither

tool.slither

No slither job recorded yet.

Codex

report.consolidate
Job Status
complete
Attempts
1 / 1
Findings
0
No findings?
yes
Summary
Reviewed the runtime bytecode. The only ETH transfer uses a low-level CALL guarded by owner/rewarder checks, and the initializer logic appears to be standard one-time initialization. No concrete exploit path to profit is visible from bytecode alone without assuming an uninitialized deployment state.
View stderr
[codex:970747] OpenAI Codex v0.77.0 (research preview)
[codex:970747] --------
[codex:970747] workdir: /tmp/codex-multi-316v1gjc
[codex:970747] model: gpt-5.2-codex
[codex:970747] provider: openai
[codex:970747] approval: never
[codex:970747] sandbox: read-only
[codex:970747] reasoning effort: xhigh
[codex:970747] reasoning summaries: auto
[codex:970747] session id: 019b7ae3-01f1-70a3-b587-2661cac095b7
[codex:970747] --------
[codex:970747] user
[codex:970747] You are a profit-focused exploit hunter analyzing EVM bytecode. Your ONLY goal is finding ways to extract value (ETH, tokens, NFTs) from this contract.
[codex:970747] 
[codex:970747] Read `BYTECODE_BUNDLE.txt` completely before concluding.
[codex:970747] 
[codex:970747] ONLY REPORT if you find a CONCRETE, EXPLOITABLE path to profit. We do NOT care about:
[codex:970747] - Gas inefficiency, code quality, or best practices
[codex:970747] - Theoretical vulnerabilities without a clear extraction path
[codex:970747] - Generic footguns (unchecked return values, etc.) unless they enable theft
[codex:970747] - Issues requiring social engineering or off-chain coordination
[codex:970747] 
[codex:970747] PATTERNS WORTH INVESTIGATING in bytecode:
[codex:970747] - CALL/DELEGATECALL with controllable destination or calldata
[codex:970747] - Value transfers (CALL with non-zero value) without prior CALLER/ORIGIN checks
[codex:970747] - SSTORE to low slots (0-10) that might be owner/admin storage
[codex:970747] - ecrecover (signature validation) - look for missing nonce/replay protection
[codex:970747] - External calls before state updates (reentrancy)
[codex:970747] - SELFDESTRUCT with controllable beneficiary
[codex:970747] - Proxy patterns (DELEGATECALL to storage slot) with unprotected upgrade paths
[codex:970747] 
[codex:970747] For each finding, you MUST explain:
[codex:970747] 1. The specific bytecode pattern/offsets that indicate the vulnerability
[codex:970747] 2. The concrete sequence of transactions to extract value
[codex:970747] 3. Why you believe this is exploitable (not just suspicious)
[codex:970747] 
[codex:970747] If you cannot identify a concrete profit path from bytecode alone: set no_findings=true.
[codex:970747] Do NOT hallucinate. Bytecode-only analysis is limited - be honest about uncertainty.
[codex:970747] 
[codex:970747] Output MUST be valid JSON matching the provided schema.
[codex:970747] - severity: info, low, medium, high, critical (use high/critical ONLY for clear extraction paths)
[codex:970747] - category: access_control, reentrancy, math, oracle, upgradeability, auth, other
[codex:970747] mcp startup: no servers
[codex:970747] 
[codex:970747] thinking
[codex:970747] **Reading bytecode file using shell**
[codex:970747] exec
[codex:970747] /bin/bash -lc ls in /tmp/codex-multi-316v1gjc succeeded in 5ms:
[codex:970747] BYTECODE_BUNDLE.txt
[codex:970747] codex-output-schema.json
[codex:970747] exec
[codex:970747] /bin/bash -lc 'cat BYTECODE_BUNDLE.txt' in /tmp/codex-multi-316v1gjc succeeded in 5ms:
[codex:970747] Runtime bytecode bundle for best-effort auditing.
[codex:970747] Note: without verified source, conclusions are low-confidence unless a concrete pattern is visible.
[codex:970747] 
[codex:970747] FILE: runtime_bytecode.hex
[codex:970747] 0x60806040526004361061009a5760003560e01c80638da5cb5b11610069578063dcc3e06e1161004e578063dcc3e06e146101a3578063e30c3978146101c1578063f2fde38b146101df57600080fd5b80638da5cb5b14610147578063c4d66de81461018357600080fd5b80633a6462e4146100db57806349dcbc5e146100fd578063715018a61461011d57806379ba50971461013257600080fd5b366100d65760405134815233907ff6f3bf9d00b52384d77c0b88440f0c216676d7ff221073342ec0606c43ccc40c9060200160405180910390a2005b600080fd5b3480156100e757600080fd5b506100fb6100f63660046108b7565b6101ff565b005b34801561010957600080fd5b506100fb6101183660046108d9565b610307565b34801561012957600080fd5b506100fb61038b565b34801561013e57600080fd5b506100fb610452565b34801561015357600080fd5b506000546201000090046001600160a01b03165b6040516001600160a01b03909116815260200160405180910390f35b34801561018f57600080fd5b506100fb61019e3660046108b7565b6104b2565b3480156101af57600080fd5b506002546001600160a01b0316610167565b3480156101cd57600080fd5b506001546001600160a01b0316610167565b3480156101eb57600080fd5b506100fb6101fa3660046108b7565b610650565b6000546001600160a01b036201000090910416331461024f57604051634389d5ab60e01b815260206004820152600660248201526539b2b73232b960d11b60448201526064015b60405180910390fd5b6001600160a01b0381166102a65760405163046c82ad60e41b815260206004820152600860248201527f72657761726465720000000000000000000000000000000000000000000000006044820152606401610246565b6002805473ffffffffffffffffffffffffffffffffffffffff19166001600160a01b0383169081179091556040519081527fcf0aff36caea97f7ad632b334936cb196014c193ac1a790b578f12a70d9836db9060200160405180910390a150565b6002546001600160a01b031633148061033057506000546201000090046001600160a01b031633145b61037d57604051634389d5ab60e01b815260206004820152601c60248201527f63616c6c6572206e6f74207265776172646572206f72206f776e6572000000006044820152606401610246565b610387828261076f565b5050565b6000546001600160a01b03620100009091041633146103d657604051634389d5ab60e01b815260206004820152600660248201526539b2b73232b960d11b6044820152606401610246565b6000805475ffffffffffffffffffffffffffffffffffffffff000019811682556001805473ffffffffffffffffffffffffffffffffffffffff19169055604051620100009091046001600160a01b0316919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a350565b33806104666001546001600160a01b031690565b6001600160a01b0316146104a657604051634389d5ab60e01b815260206004820152600660248201526539b2b73232b960d11b6044820152606401610246565b6104af81610817565b50565b600054610100900460ff16158080156104d25750600054600160ff909116105b806104ec5750303b1580156104ec575060005460ff166001145b61055e5760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201527f647920696e697469616c697a65640000000000000000000000000000000000006064820152608401610246565b6000805460ff191660011790558015610581576000805461ff0019166101001790555b6001600160a01b0382166105d85760405163046c82ad60e41b815260206004820152600560248201527f6f776e65720000000000000000000000000000000000000000000000000000006044820152606401610246565b6000805475ffffffffffffffffffffffffffffffffffffffff00001916620100006001600160a01b038516021790558015610387576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15050565b6000546001600160a01b036201000090910416331461069b57604051634389d5ab60e01b815260206004820152600660248201526539b2b73232b960d11b6044820152606401610246565b6001600160a01b0381166106f25760405163046c82ad60e41b815260206004820152600860248201527f6e65774f776e65720000000000000000000000000000000000000000000000006044820152606401610246565b600180546001600160a01b03831673ffffffffffffffffffffffffffffffffffffffff1990911681179091556107376000546001600160a01b03620100009091041690565b6001600160a01b03167f38d16b8cac22d99fc7c124b9cd0de2d3fa1faef420bfe791d8c362d765e2270060405160405180910390a350565b6000826001600160a01b03168260405160006040518083038185875af1925050503d80600081146107bc576040519150601f19603f3d011682016040523d82523d6000602084013e6107c1565b606091505b50509050806108125760405162461bcd60e51b815260206004820152600c60248201527f65746820776974686472617700000000000000000000000000000000000000006044820152606401610246565b505050565b6001805473ffffffffffffffffffffffffffffffffffffffff19169055600080546001600160a01b038381166201000081810275ffffffffffffffffffffffffffffffffffffffff0000198516178555604051930490911692909183917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a35050565b80356001600160a01b03811681146108b257600080fd5b919050565b6000602082840312156108c957600080fd5b6108d28261089b565b9392505050565b600080604083850312156108ec57600080fd5b6108f58361089b565b94602093909301359350505056fea2646970667358221220a3c7700a2adba2f576c1b7e422c062d167331aa018218821a694445aa2b040ac64736f6c63430008180033
[codex:970747] 
[codex:970747] thinking
[codex:970747] **Decoding contract bytecode and storage layout**
[codex:970747] exec
[codex:970747] /bin/bash -lc "python - <<'PY'
[codex:970747] import hashlib
[codex:970747] from eth_hash.auto import keccak
[codex:970747] 
[codex:970747] s='OwnableUnauthorizedAccount(address)'
[codex:970747] print(keccak(s.encode()).hex()[:8])
[codex:970747] 
[codex:970747] s='Ownable: caller is not the owner'
[codex:970747] print(hashlib.sha3_256(s.encode()).hexdigest()[:8])
[codex:970747] PY" in /tmp/codex-multi-316v1gjc succeeded in 109ms:
[codex:970747] 118cdaa7
[codex:970747] c545d1d5
[codex:970747] 
[codex:970747] thinking
[codex:970747] **Analyzing error selectors**
[codex:970747] exec
[codex:970747] /bin/bash -lc "python - <<'PY'
[codex:970747] from eth_hash.auto import keccak
[codex:970747] cands=['Unauthorized()','NotOwner()','OwnableUnauthorizedAccount(address)','Ownable: caller is not the owner','OwnableUnauthorizedAccount(address)','CallerNotOwner()','NotAuthorized()','AccessDenied()','OwnableUnauthorizedAccount(address)']
[codex:970747] for s in cands:
[codex:970747]     if '(' in s:
[codex:970747]         sel=keccak(s.encode()).hex()[:8]
[codex:970747]     else:
[codex:970747]         sel=''
[codex:970747]     print(s, sel)
[codex:970747] PY" in /tmp/codex-multi-316v1gjc succeeded in 75ms:
[codex:970747] Unauthorized() 82b42900
[codex:970747] NotOwner() 30cd7471
[codex:970747] OwnableUnauthorizedAccount(address) 118cdaa7
[codex:970747] Ownable: caller is not the owner 
[codex:970747] OwnableUnauthorizedAccount(address) 118cdaa7
[codex:970747] CallerNotOwner() 5cd83192
[codex:970747] NotAuthorized() ea8e4eb5
[codex:970747] AccessDenied() 4ca88867
[codex:970747] OwnableUnauthorizedAccount(address) 118cdaa7
[codex:970747] 
[codex:970747] thinking
[codex:970747] **Analyzing custom error selectors**
[codex:970747] exec
[codex:970747] /bin/bash -lc "python - <<'PY'
[codex:970747] from eth_hash.auto import keccak
[codex:970747] cands=['Unauthorized(address)','NotAuthorized(address)','OnlyOwner()','OwnableUnauthorizedAccount(address)','OwnableUnauthorizedAccount(address account)','OwnableUnauthorizedAccount(address account)','Ownable: caller is not the owner']
[codex:970747] for s in cands:
[codex:970747]     if '(' in s:
[codex:970747]         sel=keccak(s.encode()).hex()[:8]
[codex:970747]         print(s, sel)
[codex:970747] PY" in /tmp/codex-multi-316v1gjc succeeded in 76ms:
[codex:970747] Unauthorized(address) 8e4a23d6
[codex:970747] NotAuthorized(address) 4a0bfec1
[codex:970747] OnlyOwner() 5fc483c5
[codex:970747] OwnableUnauthorizedAccount(address) 118cdaa7
[codex:970747] OwnableUnauthorizedAccount(address account) 04ef705d
[codex:970747] OwnableUnauthorizedAccount(address account) 04ef705d
[codex:970747] 
[codex:970747] 
[codex:970747] thinking
[codex:970747] **Analyzing bytecode for withdrawal functions**
[codex:970747] thinking
[codex:970747] **Examining initializer and ownership logic in detail**
[codex:970747] 
[codex:970747] I'm closely reviewing the initializer function's bytecode to verify it properly guards against multiple initializations and checking owner and pending owner update logic for potential bypasses or flaws. I'll also consider implementing a minimal disassembler to aid deeper inspection.
[codex:970747] exec
[codex:970747] /bin/bash -lc "python - <<'PY'
[codex:970747] import sys
[codex:970747] from textwrap import wrap
[codex:970747] 
[codex:970747] # read bytecode
[codex:970747] import re
[codex:970747] code=open('/tmp/codex-multi-316v1gjc/BYTECODE_BUNDLE.txt').read()
[codex:970747] hexstr=re.search(r'0x([0-9a-fA-F]+)', code).group(1)
[codex:970747] code_bytes=bytes.fromhex(hexstr)
[codex:970747] 
[codex:970747] # opcode table
[codex:970747] opcodes={
[codex:970747]     0x00:'STOP',0x01:'ADD',0x02:'MUL',0x03:'SUB',0x04:'DIV',0x05:'SDIV',0x06:'MOD',0x07:'SMOD',0x08:'ADDMOD',0x09:'MULMOD',0x0a:'EXP',0x0b:'SIGNEXTEND',
[codex:970747]     0x10:'LT',0x11:'GT',0x12:'SLT',0x13:'SGT',0x14:'EQ',0x15:'ISZERO',0x16:'AND',0x17:'OR',0x18:'XOR',0x19:'NOT',0x1a:'BYTE',0x1b:'SHL',0x1c:'SHR',0x1d:'SAR',
[codex:970747]     0x20:'SHA3',
[codex:970747]     0x30:'ADDRESS',0x31:'BALANCE',0x32:'ORIGIN',0x33:'CALLER',0x34:'CALLVALUE',0x35:'CALLDATALOAD',0x36:'CALLDATASIZE',0x37:'CALLDATACOPY',0x38:'CODESIZE',0x39:'CODECOPY',0x3a:'GASPRICE',0x3b:'EXTCODESIZE',0x3c:'EXTCODECOPY',0x3d:'RETURNDATASIZE',0x3e:'RETURNDATACOPY',0x3f:'EXTCODEHASH',
[codex:970747]     0x40:'BLOCKHASH',0x41:'COINBASE',0x42:'TIMESTAMP',0x43:'NUMBER',0x44:'DIFFICULTY',0x45:'GASLIMIT',0x46:'CHAINID',0x47:'SELFBALANCE',0x48:'BASEFEE',
[codex:970747]     0x50:'POP',0x51:'MLOAD',0x52:'MSTORE',0x53:'MSTORE8',0x54:'SLOAD',0x55:'SSTORE',0x56:'JUMP',0x57:'JUMPI',0x58:'PC',0x59:'MSIZE',0x5a:'GAS',0x5b:'JUMPDEST',
[codex:970747]     0x60:'PUSH1',0x61:'PUSH2',0x62:'PUSH3',0x63:'PUSH4',0x64:'PUSH5',0x65:'PUSH6',0x66:'PUSH7',0x67:'PUSH8',0x68:'PUSH9',0x69:'PUSH10',0x6a:'PUSH11',0x6b:'PUSH12',0x6c:'PUSH13',0x6d:'PUSH14',0x6e:'PUSH15',0x6f:'PUSH16',0x70:'PUSH17',0x71:'PUSH18',0x72:'PUSH19',0x73:'PUSH20',0x74:'PUSH21',0x75:'PUSH22',0x76:'PUSH23',0x77:'PUSH24',0x78:'PUSH25',0x79:'PUSH26',0x7a:'PUSH27',0x7b:'PUSH28',0x7c:'PUSH29',0x7d:'PUSH30',0x7e:'PUSH31',0x7f:'PUSH32',
[codex:970747]     0x80:'DUP1',0x81:'DUP2',0x82:'DUP3',0x83:'DUP4',0x84:'DUP5',0x85:'DUP6',0x86:'DUP7',0x87:'DUP8',0x88:'DUP9',0x89:'DUP10',0x8a:'DUP11',0x8b:'DUP12',0x8c:'DUP13',0x8d:'DUP14',0x8e:'DUP15',0x8f:'DUP16',
[codex:970747]     0x90:'SWAP1',0x91:'SWAP2',0x92:'SWAP3',0x93:'SWAP4',0x94:'SWAP5',0x95:'SWAP6',0x96:'SWAP7',0x97:'SWAP8',0x98:'SWAP9',0x99:'SWAP10',0x9a:'SWAP11',0x9b:'SWAP12',0x9c:'SWAP13',0x9d:'SWAP14',0x9e:'SWAP15',0x9f:'SWAP16',
[codex:970747]     0xa0:'LOG0',0xa1:'LOG1',0xa2:'LOG2',0xa3:'LOG3',0xa4:'LOG4',
[codex:970747]     0xf0:'CREATE',0xf1:'CALL',0xf2:'CALLCODE',0xf3:'RETURN',0xf4:'DELEGATECALL',0xf5:'CREATE2',0xfa:'STATICCALL',0xfd:'REVERT',0xfe:'INVALID',0xff:'SELFDESTRUCT',
[codex:970747] }
[codex:970747] 
[codex:970747] # disassemble
[codex:970747] pc=0
[codex:970747] lines=[]
[codex:970747] while pc < len(code_bytes):
[codex:970747]     op=code_bytes[pc]
[codex:970747]     name=opcodes.get(op, 'UNKNOWN')
[codex:970747]     if 0x60 <= op <= 0x7f:
[codex:970747]         n=op-0x5f
[codex:970747]         data=code_bytes[pc+1:pc+1+n]
[codex:970747]         lines.append(f\"{pc:04x}: {name} 0x{data.hex()}\")
[codex:970747]         pc += 1+n
[codex:970747]     else:
[codex:970747]         lines.append(f\"{pc:04x}: {name}\")
[codex:970747]         pc += 1
[codex:970747] 
[codex:970747] # Print some around key function starts
[codex:970747] # Let's just print whole thing? It might be long but okay.
[codex:970747] for line in lines:
[codex:970747]     print(line)
[codex:970747] PY" in /tmp/codex-multi-316v1gjc succeeded in 27ms:
[codex:970747] 0000: PUSH1 0x80
[codex:970747] 0002: PUSH1 0x40
[codex:970747] 0004: MSTORE
[codex:970747] 0005: PUSH1 0x04
[codex:970747] 0007: CALLDATASIZE
[codex:970747] 0008: LT
[codex:970747] 0009: PUSH2 0x009a
[codex:970747] 000c: JUMPI
[codex:970747] 000d: PUSH1 0x00
[codex:970747] 000f: CALLDATALOAD
[codex:970747] 0010: PUSH1 0xe0
[codex:970747] 0012: SHR
[codex:970747] 0013: DUP1
[codex:970747] 0014: PUSH4 0x8da5cb5b
[codex:970747] 0019: GT
[codex:970747] 001a: PUSH2 0x0069
[codex:970747] 001d: JUMPI
[codex:970747] 001e: DUP1
[codex:970747] 001f: PUSH4 0xdcc3e06e
[codex:970747] 0024: GT
[codex:970747] 
[codex:970747] thinking
[codex:970747] **Analyzing contract ownership and access controls**
[codex:970747] 
[codex:970747] I'm breaking down key contract functions like renounceOwnership, acceptOwnership, setRewarder, and withdraw by decoding their bytecode logic and bitwise operations on storage slots. I'm verifying that owner checks and masking preserve state correctly and no obvious direct exploit paths appear, aside from the typical proxy uninitialized risk—which can't be confirmed from bytecode alone. I'll summarize findings accordingly.
[codex:970747] codex
[codex:970747] {"no_findings":true,"summary":"Reviewed the runtime bytecode. The only ETH transfer uses a low-level CALL guarded by owner/rewarder checks, and the initializer logic appears to be standard one-time initialization. No concrete exploit path to profit is visible from bytecode alone without assuming an uninitialized deployment state.","findings":[]}
[codex:970747] tokens used
[codex:970747] 32,601
[codex:970747] {"no_findings":true,"summary":"Reviewed the runtime bytecode. The only ETH transfer uses a low-level CALL guarded by owner/rewarder checks, and the initializer logic appears to be standard one-time initialization. No concrete exploit path to profit is visible from bytecode alone without assuming an uninitialized deployment state.","findings":[]}
Metadata
{
    "codex": {
        "ran_at": "2026-01-01T18:51:44.851189+00:00",
        "returncode": 0
    },
    "summary": "Reviewed the runtime bytecode. The only ETH transfer uses a low-level CALL guarded by owner/rewarder checks, and the initializer logic appears to be standard one-time initialization. No concrete exploit path to profit is visible from bytecode alone without assuming an uninitialized deployment state.",
    "raw_final": {
        "summary": "Reviewed the runtime bytecode. The only ETH transfer uses a low-level CALL guarded by owner/rewarder checks, and the initializer logic appears to be standard one-time initialization. No concrete exploit path to profit is visible from bytecode alone without assuming an uninitialized deployment state.",
        "findings": [],
        "no_findings": true
    },
    "no_findings": true,
    "schema_version": 1
}

Opcode Heuristics

tool.cast_disasm
Delegatecall
0
Selfdestruct
0
CREATE2
0
CALL-family (heavy)
1
EXT*/BALANCE
1
Total opcodes
1219
Flags
No heuristic flags raised.
View cast disassembly output
00000000: PUSH1 0x80
00000002: PUSH1 0x40
00000004: MSTORE
00000005: PUSH1 0x04
00000007: CALLDATASIZE
00000008: LT
00000009: PUSH2 0x009a
0000000c: JUMPI
0000000d: PUSH1 0x00
0000000f: CALLDATALOAD
00000010: PUSH1 0xe0
00000012: SHR
00000013: DUP1
00000014: PUSH4 0x8da5cb5b
00000019: GT
0000001a: PUSH2 0x0069
0000001d: JUMPI
0000001e: DUP1
0000001f: PUSH4 0xdcc3e06e
00000024: GT
00000025: PUSH2 0x004e
00000028: JUMPI
00000029: DUP1
0000002a: PUSH4 0xdcc3e06e
0000002f: EQ
00000030: PUSH2 0x01a3
00000033: JUMPI
00000034: DUP1
00000035: PUSH4 0xe30c3978
0000003a: EQ
0000003b: PUSH2 0x01c1
0000003e: JUMPI
0000003f: DUP1
00000040: PUSH4 0xf2fde38b
00000045: EQ
00000046: PUSH2 0x01df
00000049: JUMPI
0000004a: PUSH1 0x00
0000004c: DUP1
0000004d: REVERT
0000004e: JUMPDEST
0000004f: DUP1
00000050: PUSH4 0x8da5cb5b
00000055: EQ
00000056: PUSH2 0x0147
00000059: JUMPI
0000005a: DUP1
0000005b: PUSH4 0xc4d66de8
00000060: EQ
00000061: PUSH2 0x0183
00000064: JUMPI
00000065: PUSH1 0x00
00000067: DUP1
00000068: REVERT
00000069: JUMPDEST
0000006a: DUP1
0000006b: PUSH4 0x3a6462e4
00000070: EQ
00000071: PUSH2 0x00db
00000074: JUMPI
00000075: DUP1
00000076: PUSH4 0x49dcbc5e
0000007b: EQ
0000007c: PUSH2 0x00fd
0000007f: JUMPI
00000080: DUP1
00000081: PUSH4 0x715018a6
00000086: EQ
00000087: PUSH2 0x011d
0000008a: JUMPI
0000008b: DUP1
0000008c: PUSH4 0x79ba5097
00000091: EQ
00000092: PUSH2 0x0132
00000095: JUMPI
00000096: PUSH1 0x00
00000098: DUP1
00000099: REVERT
0000009a: JUMPDEST
0000009b: CALLDATASIZE
0000009c: PUSH2 0x00d6
0000009f: JUMPI
000000a0: PUSH1 0x40
000000a2: MLOAD
000000a3: CALLVALUE
000000a4: DUP2
000000a5: MSTORE
000000a6: CALLER
000000a7: SWAP1
000000a8: PUSH32 0xf6f3bf9d00b52384d77c0b88440f0c216676d7ff221073342ec0606c43ccc40c
000000c9: SWAP1
000000ca: PUSH1 0x20
000000cc: ADD
000000cd: PUSH1 0x40
000000cf: MLOAD
000000d0: DUP1
000000d1: SWAP2
000000d2: SUB
000000d3: SWAP1
000000d4: LOG2
000000d5: STOP
000000d6: JUMPDEST
000000d7: PUSH1 0x00
000000d9: DUP1
000000da: REVERT
000000db: JUMPDEST
000000dc: CALLVALUE
000000dd: DUP1
000000de: ISZERO
000000df: PUSH2 0x00e7
000000e2: JUMPI
000000e3: PUSH1 0x00
000000e5: DUP1
000000e6: REVERT
000000e7: JUMPDEST
000000e8: POP
000000e9: PUSH2 0x00fb
000000ec: PUSH2 0x00f6
000000ef: CALLDATASIZE
000000f0: PUSH1 0x04
000000f2: PUSH2 0x08b7
000000f5: JUMP
000000f6: JUMPDEST
000000f7: PUSH2 0x01ff
000000fa: JUMP
000000fb: JUMPDEST
000000fc: STOP
000000fd: JUMPDEST
000000fe: CALLVALUE
000000ff: DUP1
00000100: ISZERO
00000101: PUSH2 0x0109
00000104: JUMPI
00000105: PUSH1 0x00
00000107: DUP1
00000108: REVERT
00000109: JUMPDEST
0000010a: POP
0000010b: PUSH2 0x00fb
0000010e: PUSH2 0x0118
00000111: CALLDATASIZE
00000112: PUSH1 0x04
00000114: PUSH2 0x08d9
00000117: JUMP
00000118: JUMPDEST
00000119: PUSH2 0x0307
0000011c: JUMP
0000011d: JUMPDEST
0000011e: CALLVALUE
0000011f: DUP1
00000120: ISZERO
00000121: PUSH2 0x0129
00000124: JUMPI
00000125: PUSH1 0x00
00000127: DUP1
00000128: REVERT
00000129: JUMPDEST
0000012a: POP
0000012b: PUSH2 0x00fb
0000012e: PUSH2 0x038b
00000131: JUMP
00000132: JUMPDEST
00000133: CALLVALUE
00000134: DUP1
00000135: ISZERO
00000136: PUSH2 0x013e
00000139: JUMPI
0000013a: PUSH1 0x00
0000013c: DUP1
0000013d: REVERT
0000013e: JUMPDEST
0000013f: POP
00000140: PUSH2 0x00fb
00000143: PUSH2 0x0452
00000146: JUMP
00000147: JUMPDEST
00000148: CALLVALUE
00000149: DUP1
0000014a: ISZERO
0000014b: PUSH2 0x0153
0000014e: JUMPI
0000014f: PUSH1 0x00
00000151: DUP1
00000152: REVERT
00000153: JUMPDEST
00000154: POP
00000155: PUSH1 0x00
00000157: SLOAD
00000158: PUSH3 0x010000
0000015c: SWAP1
0000015d: DIV
0000015e: PUSH1 0x01
00000160: PUSH1 0x01
00000162: PUSH1 0xa0
00000164: SHL
00000165: SUB
00000166: AND
00000167: JUMPDEST
00000168: PUSH1 0x40
0000016a: MLOAD
0000016b: PUSH1 0x01
0000016d: PUSH1 0x01
0000016f: PUSH1 0xa0
00000171: SHL
00000172: SUB
00000173: SWAP1
00000174: SWAP2
00000175: AND
00000176: DUP2
00000177: MSTORE
00000178: PUSH1 0x20
0000017a: ADD
0000017b: PUSH1 0x40
0000017d: MLOAD
0000017e: DUP1
0000017f: SWAP2
00000180: SUB
00000181: SWAP1
00000182: RETURN
00000183: JUMPDEST
00000184: CALLVALUE
00000185: DUP1
00000186: ISZERO
00000187: PUSH2 0x018f
0000018a: JUMPI
0000018b: PUSH1 0x00
0000018d: DUP1
0000018e: REVERT
0000018f: JUMPDEST
00000190: POP
00000191: PUSH2 0x00fb
00000194: PUSH2 0x019e
00000197: CALLDATASIZE
00000198: PUSH1 0x04
0000019a: PUSH2 0x08b7
0000019d: JUMP
0000019e: JUMPDEST
0000019f: PUSH2 0x04b2
000001a2: JUMP
000001a3: JUMPDEST
000001a4: CALLVALUE
000001a5: DUP1
000001a6: ISZERO
000001a7: PUSH2 0x01af
000001aa: JUMPI
000001ab: PUSH1 0x00
000001ad: DUP1
000001ae: REVERT
000001af: JUMPDEST
000001b0: POP
000001b1: PUSH1 0x02
000001b3: SLOAD
000001b4: PUSH1 0x01
000001b6: PUSH1 0x01
000001b8: PUSH1 0xa0
000001ba: SHL
000001bb: SUB
000001bc: AND
000001bd: PUSH2 0x0167
000001c0: JUMP
000001c1: JUMPDEST
000001c2: CALLVALUE
000001c3: DUP1
000001c4: ISZERO
000001c5: PUSH2 0x01cd
000001c8: JUMPI
000001c9: PUSH1 0x00
000001cb: DUP1
000001cc: REVERT
000001cd: JUMPDEST
000001ce: POP
000001cf: PUSH1 0x01
000001d1: SLOAD
000001d2: PUSH1 0x01
000001d4: PUSH1 0x01
000001d6: PUSH1 0xa0
000001d8: SHL
000001d9: SUB
000001da: AND
000001db: PUSH2 0x0167
000001de: JUMP
000001df: JUMPDEST
000001e0: CALLVALUE
000001e1: DUP1
000001e2: ISZERO
000001e3: PUSH2 0x01eb
000001e6: JUMPI
000001e7: PUSH1 0x00
000001e9: DUP1
000001ea: REVERT
000001eb: JUMPDEST
000001ec: POP
000001ed: PUSH2 0x00fb
000001f0: PUSH2 0x01fa
000001f3: CALLDATASIZE
000001f4: PUSH1 0x04
000001f6: PUSH2 0x08b7
000001f9: JUMP
000001fa: JUMPDEST
000001fb: PUSH2 0x0650
000001fe: JUMP
000001ff: JUMPDEST
00000200: PUSH1 0x00
00000202: SLOAD
00000203: PUSH1 0x01
00000205: PUSH1 0x01
00000207: PUSH1 0xa0
00000209: SHL
0000020a: SUB
0000020b: PUSH3 0x010000
0000020f: SWAP1
00000210: SWAP2
00000211: DIV
00000212: AND
00000213: CALLER
00000214: EQ
00000215: PUSH2 0x024f
00000218: JUMPI
00000219: PUSH1 0x40
0000021b: MLOAD
0000021c: PUSH4 0x4389d5ab
00000221: PUSH1 0xe0
00000223: SHL
00000224: DUP2
00000225: MSTORE
00000226: PUSH1 0x20
00000228: PUSH1 0x04
0000022a: DUP3
0000022b: ADD
0000022c: MSTORE
0000022d: PUSH1 0x06
0000022f: PUSH1 0x24
00000231: DUP3
00000232: ADD
00000233: MSTORE
00000234: PUSH6 0x39b2b73232b9
0000023b: PUSH1 0xd1
0000023d: SHL
0000023e: PUSH1 0x44
00000240: DUP3
00000241: ADD
00000242: MSTORE
00000243: PUSH1 0x64
00000245: ADD
00000246: JUMPDEST
00000247: PUSH1 0x40
00000249: MLOAD
0000024a: DUP1
0000024b: SWAP2
0000024c: SUB
0000024d: SWAP1
0000024e: REVERT
0000024f: JUMPDEST
00000250: PUSH1 0x01
00000252: PUSH1 0x01
00000254: PUSH1 0xa0
00000256: SHL
00000257: SUB
00000258: DUP2
00000259: AND
0000025a: PUSH2 0x02a6
0000025d: JUMPI
0000025e: PUSH1 0x40
00000260: MLOAD
00000261: PUSH4 0x046c82ad
00000266: PUSH1 0xe4
00000268: SHL
00000269: DUP2
0000026a: MSTORE
0000026b: PUSH1 0x20
0000026d: PUSH1 0x04
0000026f: DUP3
00000270: ADD
00000271: MSTORE
00000272: PUSH1 0x08
00000274: PUSH1 0x24
00000276: DUP3
00000277: ADD
00000278: MSTORE
00000279: PUSH32 0x7265776172646572000000000000000000000000000000000000000000000000
0000029a: PUSH1 0x44
0000029c: DUP3
0000029d: ADD
0000029e: MSTORE
0000029f: PUSH1 0x64
000002a1: ADD
000002a2: PUSH2 0x0246
000002a5: JUMP
000002a6: JUMPDEST
000002a7: PUSH1 0x02
000002a9: DUP1
000002aa: SLOAD
000002ab: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000002c0: NOT
000002c1: AND
000002c2: PUSH1 0x01
000002c4: PUSH1 0x01
000002c6: PUSH1 0xa0
000002c8: SHL
000002c9: SUB
000002ca: DUP4
000002cb: AND
000002cc: SWAP1
000002cd: DUP2
000002ce: OR
000002cf: SWAP1
000002d0: SWAP2
000002d1: SSTORE
000002d2: PUSH1 0x40
000002d4: MLOAD
000002d5: SWAP1
000002d6: DUP2
000002d7: MSTORE
000002d8: PUSH32 0xcf0aff36caea97f7ad632b334936cb196014c193ac1a790b578f12a70d9836db
000002f9: SWAP1
000002fa: PUSH1 0x20
000002fc: ADD
000002fd: PUSH1 0x40
000002ff: MLOAD
00000300: DUP1
00000301: SWAP2
00000302: SUB
00000303: SWAP1
00000304: LOG1
00000305: POP
00000306: JUMP
00000307: JUMPDEST
00000308: PUSH1 0x02
0000030a: SLOAD
0000030b: PUSH1 0x01
0000030d: PUSH1 0x01
0000030f: PUSH1 0xa0
00000311: SHL
00000312: SUB
00000313: AND
00000314: CALLER
00000315: EQ
00000316: DUP1
00000317: PUSH2 0x0330
0000031a: JUMPI
0000031b: POP
0000031c: PUSH1 0x00
0000031e: SLOAD
0000031f: PUSH3 0x010000
00000323: SWAP1
00000324: DIV
00000325: PUSH1 0x01
00000327: PUSH1 0x01
00000329: PUSH1 0xa0
0000032b: SHL
0000032c: SUB
0000032d: AND
0000032e: CALLER
0000032f: EQ
00000330: JUMPDEST
00000331: PUSH2 0x037d
00000334: JUMPI
00000335: PUSH1 0x40
00000337: MLOAD
00000338: PUSH4 0x4389d5ab
0000033d: PUSH1 0xe0
0000033f: SHL
00000340: DUP2
00000341: MSTORE
00000342: PUSH1 0x20
00000344: PUSH1 0x04
00000346: DUP3
00000347: ADD
00000348: MSTORE
00000349: PUSH1 0x1c
0000034b: PUSH1 0x24
0000034d: DUP3
0000034e: ADD
0000034f: MSTORE
00000350: PUSH32 0x63616c6c6572206e6f74207265776172646572206f72206f776e657200000000
00000371: PUSH1 0x44
00000373: DUP3
00000374: ADD
00000375: MSTORE
00000376: PUSH1 0x64
00000378: ADD
00000379: PUSH2 0x0246
0000037c: JUMP
0000037d: JUMPDEST
0000037e: PUSH2 0x0387
00000381: DUP3
00000382: DUP3
00000383: PUSH2 0x076f
00000386: JUMP
00000387: JUMPDEST
00000388: POP
00000389: POP
0000038a: JUMP
0000038b: JUMPDEST
0000038c: PUSH1 0x00
0000038e: SLOAD
0000038f: PUSH1 0x01
00000391: PUSH1 0x01
00000393: PUSH1 0xa0
00000395: SHL
00000396: SUB
00000397: PUSH3 0x010000
0000039b: SWAP1
0000039c: SWAP2
0000039d: DIV
0000039e: AND
0000039f: CALLER
000003a0: EQ
000003a1: PUSH2 0x03d6
000003a4: JUMPI
000003a5: PUSH1 0x40
000003a7: MLOAD
000003a8: PUSH4 0x4389d5ab
000003ad: PUSH1 0xe0
000003af: SHL
000003b0: DUP2
000003b1: MSTORE
000003b2: PUSH1 0x20
000003b4: PUSH1 0x04
000003b6: DUP3
000003b7: ADD
000003b8: MSTORE
000003b9: PUSH1 0x06
000003bb: PUSH1 0x24
000003bd: DUP3
000003be: ADD
000003bf: MSTORE
000003c0: PUSH6 0x39b2b73232b9
000003c7: PUSH1 0xd1
000003c9: SHL
000003ca: PUSH1 0x44
000003cc: DUP3
000003cd: ADD
000003ce: MSTORE
000003cf: PUSH1 0x64
000003d1: ADD
000003d2: PUSH2 0x0246
000003d5: JUMP
000003d6: JUMPDEST
000003d7: PUSH1 0x00
000003d9: DUP1
000003da: SLOAD
000003db: PUSH22 0xffffffffffffffffffffffffffffffffffffffff0000
000003f2: NOT
000003f3: DUP2
000003f4: AND
000003f5: DUP3
000003f6: SSTORE
000003f7: PUSH1 0x01
000003f9: DUP1
000003fa: SLOAD
000003fb: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000410: NOT
00000411: AND
00000412: SWAP1
00000413: SSTORE
00000414: PUSH1 0x40
00000416: MLOAD
00000417: PUSH3 0x010000
0000041b: SWAP1
0000041c: SWAP2
0000041d: DIV
0000041e: PUSH1 0x01
00000420: PUSH1 0x01
00000422: PUSH1 0xa0
00000424: SHL
00000425: SUB
00000426: AND
00000427: SWAP2
00000428: SWAP1
00000429: DUP3
0000042a: SWAP1
0000042b: PUSH32 0x8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0
0000044c: SWAP1
0000044d: DUP4
0000044e: SWAP1
0000044f: LOG3
00000450: POP
00000451: JUMP
00000452: JUMPDEST
00000453: CALLER
00000454: DUP1
00000455: PUSH2 0x0466
00000458: PUSH1 0x01
0000045a: SLOAD
0000045b: PUSH1 0x01
0000045d: PUSH1 0x01
0000045f: PUSH1 0xa0
00000461: SHL
00000462: SUB
00000463: AND
00000464: SWAP1
00000465: JUMP
00000466: JUMPDEST
00000467: PUSH1 0x01
00000469: PUSH1 0x01
0000046b: PUSH1 0xa0
0000046d: SHL
0000046e: SUB
0000046f: AND
00000470: EQ
00000471: PUSH2 0x04a6
00000474: JUMPI
00000475: PUSH1 0x40
00000477: MLOAD
00000478: PUSH4 0x4389d5ab
0000047d: PUSH1 0xe0
0000047f: SHL
00000480: DUP2
00000481: MSTORE
00000482: PUSH1 0x20
00000484: PUSH1 0x04
00000486: DUP3
00000487: ADD
00000488: MSTORE
00000489: PUSH1 0x06
0000048b: PUSH1 0x24
0000048d: DUP3
0000048e: ADD
0000048f: MSTORE
00000490: PUSH6 0x39b2b73232b9
00000497: PUSH1 0xd1
00000499: SHL
0000049a: PUSH1 0x44
0000049c: DUP3
0000049d: ADD
0000049e: MSTORE
0000049f: PUSH1 0x64
000004a1: ADD
000004a2: PUSH2 0x0246
000004a5: JUMP
000004a6: JUMPDEST
000004a7: PUSH2 0x04af
000004aa: DUP2
000004ab: PUSH2 0x0817
000004ae: JUMP
000004af: JUMPDEST
000004b0: POP
000004b1: JUMP
000004b2: JUMPDEST
000004b3: PUSH1 0x00
000004b5: SLOAD
000004b6: PUSH2 0x0100
000004b9: SWAP1
000004ba: DIV
000004bb: PUSH1 0xff
000004bd: AND
000004be: ISZERO
000004bf: DUP1
000004c0: DUP1
000004c1: ISZERO
000004c2: PUSH2 0x04d2
000004c5: JUMPI
000004c6: POP
000004c7: PUSH1 0x00
000004c9: SLOAD
000004ca: PUSH1 0x01
000004cc: PUSH1 0xff
000004ce: SWAP1
000004cf: SWAP2
000004d0: AND
000004d1: LT
000004d2: JUMPDEST
000004d3: DUP1
000004d4: PUSH2 0x04ec
000004d7: JUMPI
000004d8: POP
000004d9: ADDRESS
000004da: EXTCODESIZE
000004db: ISZERO
000004dc: DUP1
000004dd: ISZERO
000004de: PUSH2 0x04ec
000004e1: JUMPI
000004e2: POP
000004e3: PUSH1 0x00
000004e5: SLOAD
000004e6: PUSH1 0xff
000004e8: AND
000004e9: PUSH1 0x01
000004eb: EQ
000004ec: JUMPDEST
000004ed: PUSH2 0x055e
000004f0: JUMPI
000004f1: PUSH1 0x40
000004f3: MLOAD
000004f4: PUSH3 0x461bcd
000004f8: PUSH1 0xe5
000004fa: SHL
000004fb: DUP2
000004fc: MSTORE
000004fd: PUSH1 0x20
000004ff: PUSH1 0x04
00000501: DUP3
00000502: ADD
00000503: MSTORE
00000504: PUSH1 0x2e
00000506: PUSH1 0x24
00000508: DUP3
00000509: ADD
0000050a: MSTORE
0000050b: PUSH32 0x496e697469616c697a61626c653a20636f6e747261637420697320616c726561
0000052c: PUSH1 0x44
0000052e: DUP3
0000052f: ADD
00000530: MSTORE
00000531: PUSH32 0x647920696e697469616c697a6564000000000000000000000000000000000000
00000552: PUSH1 0x64
00000554: DUP3
00000555: ADD
00000556: MSTORE
00000557: PUSH1 0x84
00000559: ADD
0000055a: PUSH2 0x0246
0000055d: JUMP
0000055e: JUMPDEST
0000055f: PUSH1 0x00
00000561: DUP1
00000562: SLOAD
00000563: PUSH1 0xff
00000565: NOT
00000566: AND
00000567: PUSH1 0x01
00000569: OR
0000056a: SWAP1
0000056b: SSTORE
0000056c: DUP1
0000056d: ISZERO
0000056e: PUSH2 0x0581
00000571: JUMPI
00000572: PUSH1 0x00
00000574: DUP1
00000575: SLOAD
00000576: PUSH2 0xff00
00000579: NOT
0000057a: AND
0000057b: PUSH2 0x0100
0000057e: OR
0000057f: SWAP1
00000580: SSTORE
00000581: JUMPDEST
00000582: PUSH1 0x01
00000584: PUSH1 0x01
00000586: PUSH1 0xa0
00000588: SHL
00000589: SUB
0000058a: DUP3
0000058b: AND
0000058c: PUSH2 0x05d8
0000058f: JUMPI
00000590: PUSH1 0x40
00000592: MLOAD
00000593: PUSH4 0x046c82ad
00000598: PUSH1 0xe4
0000059a: SHL
0000059b: DUP2
0000059c: MSTORE
0000059d: PUSH1 0x20
0000059f: PUSH1 0x04
000005a1: DUP3
000005a2: ADD
000005a3: MSTORE
000005a4: PUSH1 0x05
000005a6: PUSH1 0x24
000005a8: DUP3
000005a9: ADD
000005aa: MSTORE
000005ab: PUSH32 0x6f776e6572000000000000000000000000000000000000000000000000000000
000005cc: PUSH1 0x44
000005ce: DUP3
000005cf: ADD
000005d0: MSTORE
000005d1: PUSH1 0x64
000005d3: ADD
000005d4: PUSH2 0x0246
000005d7: JUMP
000005d8: JUMPDEST
000005d9: PUSH1 0x00
000005db: DUP1
000005dc: SLOAD
000005dd: PUSH22 0xffffffffffffffffffffffffffffffffffffffff0000
000005f4: NOT
000005f5: AND
000005f6: PUSH3 0x010000
000005fa: PUSH1 0x01
000005fc: PUSH1 0x01
000005fe: PUSH1 0xa0
00000600: SHL
00000601: SUB
00000602: DUP6
00000603: AND
00000604: MUL
00000605: OR
00000606: SWAP1
00000607: SSTORE
00000608: DUP1
00000609: ISZERO
0000060a: PUSH2 0x0387
0000060d: JUMPI
0000060e: PUSH1 0x00
00000610: DUP1
00000611: SLOAD
00000612: PUSH2 0xff00
00000615: NOT
00000616: AND
00000617: SWAP1
00000618: SSTORE
00000619: PUSH1 0x40
0000061b: MLOAD
0000061c: PUSH1 0x01
0000061e: DUP2
0000061f: MSTORE
00000620: PUSH32 0x7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb3847402498
00000641: SWAP1
00000642: PUSH1 0x20
00000644: ADD
00000645: PUSH1 0x40
00000647: MLOAD
00000648: DUP1
00000649: SWAP2
0000064a: SUB
0000064b: SWAP1
0000064c: LOG1
0000064d: POP
0000064e: POP
0000064f: JUMP
00000650: JUMPDEST
00000651: PUSH1 0x00
00000653: SLOAD
00000654: PUSH1 0x01
00000656: PUSH1 0x01
00000658: PUSH1 0xa0
0000065a: SHL
0000065b: SUB
0000065c: PUSH3 0x010000
00000660: SWAP1
00000661: SWAP2
00000662: DIV
00000663: AND
00000664: CALLER
00000665: EQ
00000666: PUSH2 0x069b
00000669: JUMPI
0000066a: PUSH1 0x40
0000066c: MLOAD
0000066d: PUSH4 0x4389d5ab
00000672: PUSH1 0xe0
00000674: SHL
00000675: DUP2
00000676: MSTORE
00000677: PUSH1 0x20
00000679: PUSH1 0x04
0000067b: DUP3
0000067c: ADD
0000067d: MSTORE
0000067e: PUSH1 0x06
00000680: PUSH1 0x24
00000682: DUP3
00000683: ADD
00000684: MSTORE
00000685: PUSH6 0x39b2b73232b9
0000068c: PUSH1 0xd1
0000068e: SHL
0000068f: PUSH1 0x44
00000691: DUP3
00000692: ADD
00000693: MSTORE
00000694: PUSH1 0x64
00000696: ADD
00000697: PUSH2 0x0246
0000069a: JUMP
0000069b: JUMPDEST
0000069c: PUSH1 0x01
0000069e: PUSH1 0x01
000006a0: PUSH1 0xa0
000006a2: SHL
000006a3: SUB
000006a4: DUP2
000006a5: AND
000006a6: PUSH2 0x06f2
000006a9: JUMPI
000006aa: PUSH1 0x40
000006ac: MLOAD
000006ad: PUSH4 0x046c82ad
000006b2: PUSH1 0xe4
000006b4: SHL
000006b5: DUP2
000006b6: MSTORE
000006b7: PUSH1 0x20
000006b9: PUSH1 0x04
000006bb: DUP3
000006bc: ADD
000006bd: MSTORE
000006be: PUSH1 0x08
000006c0: PUSH1 0x24
000006c2: DUP3
000006c3: ADD
000006c4: MSTORE
000006c5: PUSH32 0x6e65774f776e6572000000000000000000000000000000000000000000000000
000006e6: PUSH1 0x44
000006e8: DUP3
000006e9: ADD
000006ea: MSTORE
000006eb: PUSH1 0x64
000006ed: ADD
000006ee: PUSH2 0x0246
000006f1: JUMP
000006f2: JUMPDEST
000006f3: PUSH1 0x01
000006f5: DUP1
000006f6: SLOAD
000006f7: PUSH1 0x01
000006f9: PUSH1 0x01
000006fb: PUSH1 0xa0
000006fd: SHL
000006fe: SUB
000006ff: DUP4
00000700: AND
00000701: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000716: NOT
00000717: SWAP1
00000718: SWAP2
00000719: AND
0000071a: DUP2
0000071b: OR
0000071c: SWAP1
0000071d: SWAP2
0000071e: SSTORE
0000071f: PUSH2 0x0737
00000722: PUSH1 0x00
00000724: SLOAD
00000725: PUSH1 0x01
00000727: PUSH1 0x01
00000729: PUSH1 0xa0
0000072b: SHL
0000072c: SUB
0000072d: PUSH3 0x010000
00000731: SWAP1
00000732: SWAP2
00000733: DIV
00000734: AND
00000735: SWAP1
00000736: JUMP
00000737: JUMPDEST
00000738: PUSH1 0x01
0000073a: PUSH1 0x01
0000073c: PUSH1 0xa0
0000073e: SHL
0000073f: SUB
00000740: AND
00000741: PUSH32 0x38d16b8cac22d99fc7c124b9cd0de2d3fa1faef420bfe791d8c362d765e22700
00000762: PUSH1 0x40
00000764: MLOAD
00000765: PUSH1 0x40
00000767: MLOAD
00000768: DUP1
00000769: SWAP2
0000076a: SUB
0000076b: SWAP1
0000076c: LOG3
0000076d: POP
0000076e: JUMP
0000076f: JUMPDEST
00000770: PUSH1 0x00
00000772: DUP3
00000773: PUSH1 0x01
00000775: PUSH1 0x01
00000777: PUSH1 0xa0
00000779: SHL
0000077a: SUB
0000077b: AND
0000077c: DUP3
0000077d: PUSH1 0x40
0000077f: MLOAD
00000780: PUSH1 0x00
00000782: PUSH1 0x40
00000784: MLOAD
00000785: DUP1
00000786: DUP4
00000787: SUB
00000788: DUP2
00000789: DUP6
0000078a: DUP8
0000078b: GAS
0000078c: CALL
0000078d: SWAP3
0000078e: POP
0000078f: POP
00000790: POP
00000791: RETURNDATASIZE
00000792: DUP1
00000793: PUSH1 0x00
00000795: DUP2
00000796: EQ
00000797: PUSH2 0x07bc
0000079a: JUMPI
0000079b: PUSH1 0x40
0000079d: MLOAD
0000079e: SWAP2
0000079f: POP
000007a0: PUSH1 0x1f
000007a2: NOT
000007a3: PUSH1 0x3f
000007a5: RETURNDATASIZE
000007a6: ADD
000007a7: AND
000007a8: DUP3
000007a9: ADD
000007aa: PUSH1 0x40
000007ac: MSTORE
000007ad: RETURNDATASIZE
000007ae: DUP3
000007af: MSTORE
000007b0: RETURNDATASIZE
000007b1: PUSH1 0x00
000007b3: PUSH1 0x20
000007b5: DUP5
000007b6: ADD
000007b7: RETURNDATACOPY
000007b8: PUSH2 0x07c1
000007bb: JUMP
000007bc: JUMPDEST
000007bd: PUSH1 0x60
000007bf: SWAP2
000007c0: POP
000007c1: JUMPDEST
000007c2: POP
000007c3: POP
000007c4: SWAP1
000007c5: POP
000007c6: DUP1
000007c7: PUSH2 0x0812
000007ca: JUMPI
000007cb: PUSH1 0x40
000007cd: MLOAD
000007ce: PUSH3 0x461bcd
000007d2: PUSH1 0xe5
000007d4: SHL
000007d5: DUP2
000007d6: MSTORE
000007d7: PUSH1 0x20
000007d9: PUSH1 0x04
000007db: DUP3
000007dc: ADD
000007dd: MSTORE
000007de: PUSH1 0x0c
000007e0: PUSH1 0x24
000007e2: DUP3
000007e3: ADD
000007e4: MSTORE
000007e5: PUSH32 0x6574682077697468647261770000000000000000000000000000000000000000
00000806: PUSH1 0x44
00000808: DUP3
00000809: ADD
0000080a: MSTORE
0000080b: PUSH1 0x64
0000080d: ADD
0000080e: PUSH2 0x0246
00000811: JUMP
00000812: JUMPDEST
00000813: POP
00000814: POP
00000815: POP
00000816: JUMP
00000817: JUMPDEST
00000818: PUSH1 0x01
0000081a: DUP1
0000081b: SLOAD
0000081c: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000831: NOT
00000832: AND
00000833: SWAP1
00000834: SSTORE
00000835: PUSH1 0x00
00000837: DUP1
00000838: SLOAD
00000839: PUSH1 0x01
0000083b: PUSH1 0x01
0000083d: PUSH1 0xa0
0000083f: SHL
00000840: SUB
00000841: DUP4
00000842: DUP2
00000843: AND
00000844: PUSH3 0x010000
00000848: DUP2
00000849: DUP2
0000084a: MUL
0000084b: PUSH22 0xffffffffffffffffffffffffffffffffffffffff0000
00000862: NOT
00000863: DUP6
00000864: AND
00000865: OR
00000866: DUP6
00000867: SSTORE
00000868: PUSH1 0x40
0000086a: MLOAD
0000086b: SWAP4
0000086c: DIV
0000086d: SWAP1
0000086e: SWAP2
0000086f: AND
00000870: SWAP3
00000871: SWAP1
00000872: SWAP2
00000873: DUP4
00000874: SWAP2
00000875: PUSH32 0x8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0
00000896: SWAP2
00000897: LOG3
00000898: POP
00000899: POP
0000089a: JUMP
0000089b: JUMPDEST
0000089c: DUP1
0000089d: CALLDATALOAD
0000089e: PUSH1 0x01
000008a0: PUSH1 0x01
000008a2: PUSH1 0xa0
000008a4: SHL
000008a5: SUB
000008a6: DUP2
000008a7: AND
000008a8: DUP2
000008a9: EQ
000008aa: PUSH2 0x08b2
000008ad: JUMPI
000008ae: PUSH1 0x00
000008b0: DUP1
000008b1: REVERT
000008b2: JUMPDEST
000008b3: SWAP2
000008b4: SWAP1
000008b5: POP
000008b6: JUMP
000008b7: JUMPDEST
000008b8: PUSH1 0x00
000008ba: PUSH1 0x20
000008bc: DUP3
000008bd: DUP5
000008be: SUB
000008bf: SLT
000008c0: ISZERO
000008c1: PUSH2 0x08c9
000008c4: JUMPI
000008c5: PUSH1 0x00
000008c7: DUP1
000008c8: REVERT
000008c9: JUMPDEST
000008ca: PUSH2 0x08d2
000008cd: DUP3
000008ce: PUSH2 0x089b
000008d1: JUMP
000008d2: JUMPDEST
000008d3: SWAP4
000008d4: SWAP3
000008d5: POP
000008d6: POP
000008d7: POP
000008d8: JUMP
000008d9: JUMPDEST
000008da: PUSH1 0x00
000008dc: DUP1
000008dd: PUSH1 0x40
000008df: DUP4
000008e0: DUP6
000008e1: SUB
000008e2: SLT
000008e3: ISZERO
000008e4: PUSH2 0x08ec
000008e7: JUMPI
000008e8: PUSH1 0x00
000008ea: DUP1
000008eb: REVERT
000008ec: JUMPDEST
000008ed: PUSH2 0x08f5
000008f0: DUP4
000008f1: PUSH2 0x089b
000008f4: JUMP
000008f5: JUMPDEST
000008f6: SWAP5
000008f7: PUSH1 0x20
000008f9: SWAP4
000008fa: SWAP1
000008fb: SWAP4
000008fc: ADD
000008fd: CALLDATALOAD
000008fe: SWAP4
000008ff: POP
00000900: POP
00000901: POP
00000902: JUMP
00000903: INVALID
00000904: LOG2
00000905: PUSH5 0x6970667358
0000090b: UNKNOWN(0x22)
0000090c: SLT
0000090d: KECCAK256
0000090e: LOG3
0000090f: UNKNOWN(0xC7)
00000910: PUSH17 0x0a2adba2f576c1b7e422c062d167331aa0
00000922: XOR
00000923: UNKNOWN(0x21)
00000924: DUP9
00000925: UNKNOWN(0x21)
00000926: UNKNOWN(0xA6)
00000927: SWAP5
00000928: DIFFICULTY
00000929: GAS
0000092a: LOG2
0000092b: UNKNOWN(0xB0)
0000092c: BLOCKHASH
0000092d: UNKNOWN(0xAC)
0000092e: PUSH5 0x736f6c6343
00000934: STOP
00000935: ADDMOD
00000936: XOR
00000937: STOP
00000938: CALLER

Findings

validated = confirmed for call sinks; sink observed for others
Severity Category Tool Title Confidence Validated Confirmed Details
high other detector ETH value transfer possible 55 no no
view
trace_id: 0xc14c5e761fafd4d33da634516532cf8824d69d4239397097f32e7a1b3fd9e88e
call_targets: 0x25b47236f7dc9c973ed8d3a7c95b29701402b5d4
target_varies: no
classification: constant_target
validation_json
{
    "sink": "CALL",
    "errors": 0,
    "status": "sink_reached",
    "attempts": 1,
    "trace_id": "0xc14c5e761fafd4d33da634516532cf8824d69d4239397097f32e7a1b3fd9e88e",
    "confirmed": false,
    "trace_mode": "callTracer",
    "call_targets": [
        "0x25b47236f7dc9c973ed8d3a7c95b29701402b5d4"
    ],
    "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": "0xdcc3e06e",
            "selector": "0xdcc3e06e",
            "calldata_variants": [
                "0xdcc3e06e",
                "0xdcc3e06e0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xe30c3978",
            "selector": "0xe30c3978",
            "calldata_variants": [
                "0xe30c3978",
                "0xe30c39780000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xf2fde38b",
            "selector": "0xf2fde38b",
            "calldata_variants": [
                "0xf2fde38b",
                "0xf2fde38b0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x8da5cb5b",
            "selector": "0x8da5cb5b",
            "calldata_variants": [
                "0x8da5cb5b",
                "0x8da5cb5b0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xc4d66de8",
            "selector": "0xc4d66de8",
            "calldata_variants": [
                "0xc4d66de8",
                "0xc4d66de80000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x3a6462e4",
            "selector": "0x3a6462e4",
            "calldata_variants": [
                "0x3a6462e4",
                "0x3a6462e40000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x49dcbc5e",
            "selector": "0x49dcbc5e",
            "calldata_variants": [
                "0x49dcbc5e",
                "0x49dcbc5e0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x715018a6",
            "selector": "0x715018a6",
            "calldata_variants": [
                "0x715018a6",
                "0x715018a60000000000000000000000000000000000000000000000000000000000000000"
            ]
        }
    ]
}
evidence_json
{
    "examples": [
        {
            "pc": 1932,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        }
    ],
    "eth_value_calls": 1,
    "guards_detected": []
}
high other detector Untrusted CALL target/value reachable 60 no no
view
trace_id: 0xc14c5e761fafd4d33da634516532cf8824d69d4239397097f32e7a1b3fd9e88e
call_targets: 0x25b47236f7dc9c973ed8d3a7c95b29701402b5d4
target_varies: no
classification: constant_target
validation_json
{
    "sink": "CALL",
    "errors": 0,
    "status": "sink_reached",
    "attempts": 1,
    "trace_id": "0xc14c5e761fafd4d33da634516532cf8824d69d4239397097f32e7a1b3fd9e88e",
    "confirmed": false,
    "trace_mode": "callTracer",
    "call_targets": [
        "0x25b47236f7dc9c973ed8d3a7c95b29701402b5d4"
    ],
    "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": "0xdcc3e06e",
            "selector": "0xdcc3e06e",
            "calldata_variants": [
                "0xdcc3e06e",
                "0xdcc3e06e0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xe30c3978",
            "selector": "0xe30c3978",
            "calldata_variants": [
                "0xe30c3978",
                "0xe30c39780000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xf2fde38b",
            "selector": "0xf2fde38b",
            "calldata_variants": [
                "0xf2fde38b",
                "0xf2fde38b0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x8da5cb5b",
            "selector": "0x8da5cb5b",
            "calldata_variants": [
                "0x8da5cb5b",
                "0x8da5cb5b0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xc4d66de8",
            "selector": "0xc4d66de8",
            "calldata_variants": [
                "0xc4d66de8",
                "0xc4d66de80000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x3a6462e4",
            "selector": "0x3a6462e4",
            "calldata_variants": [
                "0x3a6462e4",
                "0x3a6462e40000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x49dcbc5e",
            "selector": "0x49dcbc5e",
            "calldata_variants": [
                "0x49dcbc5e",
                "0x49dcbc5e0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x715018a6",
            "selector": "0x715018a6",
            "calldata_variants": [
                "0x715018a6",
                "0x715018a60000000000000000000000000000000000000000000000000000000000000000"
            ]
        }
    ]
}
evidence_json
{
    "examples": [
        {
            "pc": 1932,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        }
    ],
    "call_count": 1,
    "guards_detected": [],
    "untrusted_call_count": 1
}