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

Analysis Run

33e1ca55-d562-44e8-9531-8ef62882cd87

failed
Chain ID
1
Address
Block Number
Created
Fri, Jan 2, 2026 10:46 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
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
31369 report.consolidate complete 1 / 1 3 months ago
111212 artifact.fetch failed 1 / 3 1 week ago
111213 tool.cast_disasm complete 1 / 3 1 week ago
111214 analysis.bundle complete 1 / 3 1 week ago
111215 capability.graph complete 1 / 3 1 week ago
111216 detector.run complete 1 / 3 1 week ago
111217 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
No concrete, exploitable profit paths found in the provided sources.
View stderr
[codex:100192] OpenAI Codex v0.77.0 (research preview)
[codex:100192] --------
[codex:100192] workdir: /tmp/codex-multi-9_137g4t
[codex:100192] model: gpt-5.2-codex
[codex:100192] provider: openai
[codex:100192] approval: never
[codex:100192] sandbox: read-only
[codex:100192] reasoning effort: xhigh
[codex:100192] reasoning summaries: auto
[codex:100192] session id: 019b80e3-ec43-7573-8be9-601077dd7f67
[codex:100192] --------
[codex:100192] user
[codex:100192] You are a profit-focused exploit hunter. Your ONLY goal is finding ways to extract value (ETH, tokens, NFTs) from this contract.
[codex:100192] 
[codex:100192] Read `AUDIT_BUNDLE.txt` completely before concluding. Treat `lib/` and `@openzeppelin/` as trusted unless misused.
[codex:100192] 
[codex:100192] ONLY REPORT if you find a CONCRETE, EXPLOITABLE path to profit. We do NOT care about:
[codex:100192] - Gas inefficiency, code quality, naming, or best practices
[codex:100192] - Theoretical vulnerabilities without a clear extraction path
[codex:100192] - Centralization risks (admin can rug) - assume admin keys are secure
[codex:100192] - Front-running unless it enables theft beyond MEV
[codex:100192] - DoS, griefing, or issues that don't result in attacker profit
[codex:100192] - Missing events, view function issues, or informational findings
[codex:100192] 
[codex:100192] HIGH-VALUE PATTERNS TO HUNT:
[codex:100192] - Reentrancy: external calls before state updates that allow double-withdrawal
[codex:100192] - Access control: missing/bypassable auth on withdraw, transfer, or mint functions
[codex:100192] - Flash loan attacks: borrow -> manipulate -> profit in single tx
[codex:100192] - Price oracle manipulation: TWAP with short window, spot price reads, stale prices
[codex:100192] - Signature replay: missing nonce, chainId, or deadline in permit/meta-tx
[codex:100192] - Proxy hijacking: unprotected initialize(), storage collision, UUPS without auth
[codex:100192] - Accounting errors: rounding that favors attacker, share inflation, first depositor attacks
[codex:100192] - Unchecked external calls: return value ignored on token transfers enabling fake tokens
[codex:100192] - Cross-function reentrancy: state read in function A, modified via reentrant call, used stale in A
[codex:100192] 
[codex:100192] For each finding, you MUST provide:
[codex:100192] 1. Exact file and line numbers of vulnerable code
[codex:100192] 2. Step-by-step exploit transaction sequence
[codex:100192] 3. Estimated profit potential (order of magnitude: contract balance, LP reserves, etc.)
[codex:100192] 
[codex:100192] If no concrete profit path exists: set no_findings=true. Do NOT pad with low-severity noise.
[codex:100192] 
[codex:100192] Output MUST be valid JSON matching the provided schema.
[codex:100192] - severity: info, low, medium, high, critical (use high/critical ONLY for clear extraction paths)
[codex:100192] - category: access_control, reentrancy, math, oracle, upgradeability, auth, other
[codex:100192] mcp startup: no servers
[codex:100192] 
[codex:100192] thinking
[codex:100192] **Preparing to read AUDIT_BUNDLE.txt**
[codex:100192] exec
[codex:100192] /bin/bash -lc ls in /tmp/codex-multi-9_137g4t succeeded in 6ms:
[codex:100192] AUDIT_BUNDLE.txt
[codex:100192] codex-output-schema.json
[codex:100192] contracts
[codex:100192] exec
[codex:100192] /bin/bash -lc 'cat AUDIT_BUNDLE.txt' in /tmp/codex-multi-9_137g4t succeeded in 5ms:
[codex:100192] This file concatenates first-party Solidity sources only (lib/@openzeppelin excluded).
[codex:100192] 
[codex:100192] ================================================================================
[codex:100192] FILE: contracts/Contract.sol
[codex:100192] ================================================================================
[codex:100192] /*
[codex:100192] 
[codex:100192]   Copyright 2017 ZeroEx Intl.
[codex:100192] 
[codex:100192]   Licensed under the Apache License, Version 2.0 (the "License");
[codex:100192]   you may not use this file except in compliance with the License.
[codex:100192]   You may obtain a copy of the License at
[codex:100192] 
[codex:100192]     http://www.apache.org/licenses/LICENSE-2.0
[codex:100192] 
[codex:100192]   Unless required by applicable law or agreed to in writing, software
[codex:100192]   distributed under the License is distributed on an "AS IS" BASIS,
[codex:100192]   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
[codex:100192]   See the License for the specific language governing permissions and
[codex:100192]   limitations under the License.
[codex:100192] 
[codex:100192] thinking
[codex:100192] **Reviewing contract for exploits**
[codex:100192] codex
[codex:100192] {"no_findings":true,"summary":"No concrete, exploitable profit paths found in the provided sources.","findings":[]}
[codex:100192] tokens used
[codex:100192] 3,633
[codex:100192] {"no_findings":true,"summary":"No concrete, exploitable profit paths found in the provided sources.","findings":[]}
Metadata
{
    "codex": {
        "ran_at": "2026-01-02T22:46:30.628754+00:00",
        "returncode": 0
    },
    "summary": "No concrete, exploitable profit paths found in the provided sources.",
    "raw_final": {
        "summary": "No concrete, exploitable profit paths found in the provided sources.",
        "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
0
Total opcodes
1580
Flags
No heuristic flags raised.
View cast disassembly output
00000000: PUSH1 0x60
00000002: PUSH1 0x40
00000004: MSTORE
00000005: CALLDATASIZE
00000006: ISZERO
00000007: PUSH2 0x00ad
0000000a: JUMPI
0000000b: PUSH1 0x00
0000000d: CALLDATALOAD
0000000e: PUSH29 0x0100000000000000000000000000000000000000000000000000000000
0000002c: SWAP1
0000002d: DIV
0000002e: PUSH4 0xffffffff
00000033: AND
00000034: DUP1
00000035: PUSH4 0x06fdde03
0000003a: EQ
0000003b: PUSH2 0x00be
0000003e: JUMPI
0000003f: DUP1
00000040: PUSH4 0x095ea7b3
00000045: EQ
00000046: PUSH2 0x0157
00000049: JUMPI
0000004a: DUP1
0000004b: PUSH4 0x18160ddd
00000050: EQ
00000051: PUSH2 0x01ae
00000054: JUMPI
00000055: DUP1
00000056: PUSH4 0x23b872dd
0000005b: EQ
0000005c: PUSH2 0x01d4
0000005f: JUMPI
00000060: DUP1
00000061: PUSH4 0x2e1a7d4d
00000066: EQ
00000067: PUSH2 0x024a
0000006a: JUMPI
0000006b: DUP1
0000006c: PUSH4 0x313ce567
00000071: EQ
00000072: PUSH2 0x026a
00000075: JUMPI
00000076: DUP1
00000077: PUSH4 0x70a08231
0000007c: EQ
0000007d: PUSH2 0x0296
00000080: JUMPI
00000081: DUP1
00000082: PUSH4 0x95d89b41
00000087: EQ
00000088: PUSH2 0x02e0
0000008b: JUMPI
0000008c: DUP1
0000008d: PUSH4 0xa9059cbb
00000092: EQ
00000093: PUSH2 0x0379
00000096: JUMPI
00000097: DUP1
00000098: PUSH4 0xd0e30db0
0000009d: EQ
0000009e: PUSH2 0x03d0
000000a1: JUMPI
000000a2: DUP1
000000a3: PUSH4 0xdd62ed3e
000000a8: EQ
000000a9: PUSH2 0x03da
000000ac: JUMPI
000000ad: JUMPDEST
000000ae: PUSH2 0x00bc
000000b1: JUMPDEST
000000b2: PUSH2 0x00b9
000000b5: PUSH2 0x0443
000000b8: JUMP
000000b9: JUMPDEST
000000ba: JUMPDEST
000000bb: JUMP
000000bc: JUMPDEST
000000bd: STOP
000000be: JUMPDEST
000000bf: CALLVALUE
000000c0: ISZERO
000000c1: PUSH2 0x00c6
000000c4: JUMPI
000000c5: INVALID
000000c6: JUMPDEST
000000c7: PUSH2 0x00ce
000000ca: PUSH2 0x04e4
000000cd: JUMP
000000ce: JUMPDEST
000000cf: PUSH1 0x40
000000d1: MLOAD
000000d2: DUP1
000000d3: DUP1
000000d4: PUSH1 0x20
000000d6: ADD
000000d7: DUP3
000000d8: DUP2
000000d9: SUB
000000da: DUP3
000000db: MSTORE
000000dc: DUP4
000000dd: DUP2
000000de: DUP2
000000df: MLOAD
000000e0: DUP2
000000e1: MSTORE
000000e2: PUSH1 0x20
000000e4: ADD
000000e5: SWAP2
000000e6: POP
000000e7: DUP1
000000e8: MLOAD
000000e9: SWAP1
000000ea: PUSH1 0x20
000000ec: ADD
000000ed: SWAP1
000000ee: DUP1
000000ef: DUP4
000000f0: DUP4
000000f1: PUSH1 0x00
000000f3: DUP4
000000f4: EQ
000000f5: PUSH2 0x011d
000000f8: JUMPI
000000f9: JUMPDEST
000000fa: DUP1
000000fb: MLOAD
000000fc: DUP3
000000fd: MSTORE
000000fe: PUSH1 0x20
00000100: DUP4
00000101: GT
00000102: ISZERO
00000103: PUSH2 0x011d
00000106: JUMPI
00000107: PUSH1 0x20
00000109: DUP3
0000010a: ADD
0000010b: SWAP2
0000010c: POP
0000010d: PUSH1 0x20
0000010f: DUP2
00000110: ADD
00000111: SWAP1
00000112: POP
00000113: PUSH1 0x20
00000115: DUP4
00000116: SUB
00000117: SWAP3
00000118: POP
00000119: PUSH2 0x00f9
0000011c: JUMP
0000011d: JUMPDEST
0000011e: POP
0000011f: POP
00000120: POP
00000121: SWAP1
00000122: POP
00000123: SWAP1
00000124: DUP2
00000125: ADD
00000126: SWAP1
00000127: PUSH1 0x1f
00000129: AND
0000012a: DUP1
0000012b: ISZERO
0000012c: PUSH2 0x0149
0000012f: JUMPI
00000130: DUP1
00000131: DUP3
00000132: SUB
00000133: DUP1
00000134: MLOAD
00000135: PUSH1 0x01
00000137: DUP4
00000138: PUSH1 0x20
0000013a: SUB
0000013b: PUSH2 0x0100
0000013e: EXP
0000013f: SUB
00000140: NOT
00000141: AND
00000142: DUP2
00000143: MSTORE
00000144: PUSH1 0x20
00000146: ADD
00000147: SWAP2
00000148: POP
00000149: JUMPDEST
0000014a: POP
0000014b: SWAP3
0000014c: POP
0000014d: POP
0000014e: POP
0000014f: PUSH1 0x40
00000151: MLOAD
00000152: DUP1
00000153: SWAP2
00000154: SUB
00000155: SWAP1
00000156: RETURN
00000157: JUMPDEST
00000158: CALLVALUE
00000159: ISZERO
0000015a: PUSH2 0x015f
0000015d: JUMPI
0000015e: INVALID
0000015f: JUMPDEST
00000160: PUSH2 0x0194
00000163: PUSH1 0x04
00000165: DUP1
00000166: DUP1
00000167: CALLDATALOAD
00000168: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
0000017d: AND
0000017e: SWAP1
0000017f: PUSH1 0x20
00000181: ADD
00000182: SWAP1
00000183: SWAP2
00000184: SWAP1
00000185: DUP1
00000186: CALLDATALOAD
00000187: SWAP1
00000188: PUSH1 0x20
0000018a: ADD
0000018b: SWAP1
0000018c: SWAP2
0000018d: SWAP1
0000018e: POP
0000018f: POP
00000190: PUSH2 0x051e
00000193: JUMP
00000194: JUMPDEST
00000195: PUSH1 0x40
00000197: MLOAD
00000198: DUP1
00000199: DUP3
0000019a: ISZERO
0000019b: ISZERO
0000019c: ISZERO
0000019d: ISZERO
0000019e: DUP2
0000019f: MSTORE
000001a0: PUSH1 0x20
000001a2: ADD
000001a3: SWAP2
000001a4: POP
000001a5: POP
000001a6: PUSH1 0x40
000001a8: MLOAD
000001a9: DUP1
000001aa: SWAP2
000001ab: SUB
000001ac: SWAP1
000001ad: RETURN
000001ae: JUMPDEST
000001af: CALLVALUE
000001b0: ISZERO
000001b1: PUSH2 0x01b6
000001b4: JUMPI
000001b5: INVALID
000001b6: JUMPDEST
000001b7: PUSH2 0x01be
000001ba: PUSH2 0x0611
000001bd: JUMP
000001be: JUMPDEST
000001bf: PUSH1 0x40
000001c1: MLOAD
000001c2: DUP1
000001c3: DUP3
000001c4: DUP2
000001c5: MSTORE
000001c6: PUSH1 0x20
000001c8: ADD
000001c9: SWAP2
000001ca: POP
000001cb: POP
000001cc: PUSH1 0x40
000001ce: MLOAD
000001cf: DUP1
000001d0: SWAP2
000001d1: SUB
000001d2: SWAP1
000001d3: RETURN
000001d4: JUMPDEST
000001d5: CALLVALUE
000001d6: ISZERO
000001d7: PUSH2 0x01dc
000001da: JUMPI
000001db: INVALID
000001dc: JUMPDEST
000001dd: PUSH2 0x0230
000001e0: PUSH1 0x04
000001e2: DUP1
000001e3: DUP1
000001e4: CALLDATALOAD
000001e5: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000001fa: AND
000001fb: SWAP1
000001fc: PUSH1 0x20
000001fe: ADD
000001ff: SWAP1
00000200: SWAP2
00000201: SWAP1
00000202: DUP1
00000203: CALLDATALOAD
00000204: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000219: AND
0000021a: SWAP1
0000021b: PUSH1 0x20
0000021d: ADD
0000021e: SWAP1
0000021f: SWAP2
00000220: SWAP1
00000221: DUP1
00000222: CALLDATALOAD
00000223: SWAP1
00000224: PUSH1 0x20
00000226: ADD
00000227: SWAP1
00000228: SWAP2
00000229: SWAP1
0000022a: POP
0000022b: POP
0000022c: PUSH2 0x0617
0000022f: JUMP
00000230: JUMPDEST
00000231: PUSH1 0x40
00000233: MLOAD
00000234: DUP1
00000235: DUP3
00000236: ISZERO
00000237: ISZERO
00000238: ISZERO
00000239: ISZERO
0000023a: DUP2
0000023b: MSTORE
0000023c: PUSH1 0x20
0000023e: ADD
0000023f: SWAP2
00000240: POP
00000241: POP
00000242: PUSH1 0x40
00000244: MLOAD
00000245: DUP1
00000246: SWAP2
00000247: SUB
00000248: SWAP1
00000249: RETURN
0000024a: JUMPDEST
0000024b: CALLVALUE
0000024c: ISZERO
0000024d: PUSH2 0x0252
00000250: JUMPI
00000251: INVALID
00000252: JUMPDEST
00000253: PUSH2 0x0268
00000256: PUSH1 0x04
00000258: DUP1
00000259: DUP1
0000025a: CALLDATALOAD
0000025b: SWAP1
0000025c: PUSH1 0x20
0000025e: ADD
0000025f: SWAP1
00000260: SWAP2
00000261: SWAP1
00000262: POP
00000263: POP
00000264: PUSH2 0x0947
00000267: JUMP
00000268: JUMPDEST
00000269: STOP
0000026a: JUMPDEST
0000026b: CALLVALUE
0000026c: ISZERO
0000026d: PUSH2 0x0272
00000270: JUMPI
00000271: INVALID
00000272: JUMPDEST
00000273: PUSH2 0x027a
00000276: PUSH2 0x0a2d
00000279: JUMP
0000027a: JUMPDEST
0000027b: PUSH1 0x40
0000027d: MLOAD
0000027e: DUP1
0000027f: DUP3
00000280: PUSH1 0xff
00000282: AND
00000283: PUSH1 0xff
00000285: AND
00000286: DUP2
00000287: MSTORE
00000288: PUSH1 0x20
0000028a: ADD
0000028b: SWAP2
0000028c: POP
0000028d: POP
0000028e: PUSH1 0x40
00000290: MLOAD
00000291: DUP1
00000292: SWAP2
00000293: SUB
00000294: SWAP1
00000295: RETURN
00000296: JUMPDEST
00000297: CALLVALUE
00000298: ISZERO
00000299: PUSH2 0x029e
0000029c: JUMPI
0000029d: INVALID
0000029e: JUMPDEST
0000029f: PUSH2 0x02ca
000002a2: PUSH1 0x04
000002a4: DUP1
000002a5: DUP1
000002a6: CALLDATALOAD
000002a7: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000002bc: AND
000002bd: SWAP1
000002be: PUSH1 0x20
000002c0: ADD
000002c1: SWAP1
000002c2: SWAP2
000002c3: SWAP1
000002c4: POP
000002c5: POP
000002c6: PUSH2 0x0a32
000002c9: JUMP
000002ca: JUMPDEST
000002cb: PUSH1 0x40
000002cd: MLOAD
000002ce: DUP1
000002cf: DUP3
000002d0: DUP2
000002d1: MSTORE
000002d2: PUSH1 0x20
000002d4: ADD
000002d5: SWAP2
000002d6: POP
000002d7: POP
000002d8: PUSH1 0x40
000002da: MLOAD
000002db: DUP1
000002dc: SWAP2
000002dd: SUB
000002de: SWAP1
000002df: RETURN
000002e0: JUMPDEST
000002e1: CALLVALUE
000002e2: ISZERO
000002e3: PUSH2 0x02e8
000002e6: JUMPI
000002e7: INVALID
000002e8: JUMPDEST
000002e9: PUSH2 0x02f0
000002ec: PUSH2 0x0a7c
000002ef: JUMP
000002f0: JUMPDEST
000002f1: PUSH1 0x40
000002f3: MLOAD
000002f4: DUP1
000002f5: DUP1
000002f6: PUSH1 0x20
000002f8: ADD
000002f9: DUP3
000002fa: DUP2
000002fb: SUB
000002fc: DUP3
000002fd: MSTORE
000002fe: DUP4
000002ff: DUP2
00000300: DUP2
00000301: MLOAD
00000302: DUP2
00000303: MSTORE
00000304: PUSH1 0x20
00000306: ADD
00000307: SWAP2
00000308: POP
00000309: DUP1
0000030a: MLOAD
0000030b: SWAP1
0000030c: PUSH1 0x20
0000030e: ADD
0000030f: SWAP1
00000310: DUP1
00000311: DUP4
00000312: DUP4
00000313: PUSH1 0x00
00000315: DUP4
00000316: EQ
00000317: PUSH2 0x033f
0000031a: JUMPI
0000031b: JUMPDEST
0000031c: DUP1
0000031d: MLOAD
0000031e: DUP3
0000031f: MSTORE
00000320: PUSH1 0x20
00000322: DUP4
00000323: GT
00000324: ISZERO
00000325: PUSH2 0x033f
00000328: JUMPI
00000329: PUSH1 0x20
0000032b: DUP3
0000032c: ADD
0000032d: SWAP2
0000032e: POP
0000032f: PUSH1 0x20
00000331: DUP2
00000332: ADD
00000333: SWAP1
00000334: POP
00000335: PUSH1 0x20
00000337: DUP4
00000338: SUB
00000339: SWAP3
0000033a: POP
0000033b: PUSH2 0x031b
0000033e: JUMP
0000033f: JUMPDEST
00000340: POP
00000341: POP
00000342: POP
00000343: SWAP1
00000344: POP
00000345: SWAP1
00000346: DUP2
00000347: ADD
00000348: SWAP1
00000349: PUSH1 0x1f
0000034b: AND
0000034c: DUP1
0000034d: ISZERO
0000034e: PUSH2 0x036b
00000351: JUMPI
00000352: DUP1
00000353: DUP3
00000354: SUB
00000355: DUP1
00000356: MLOAD
00000357: PUSH1 0x01
00000359: DUP4
0000035a: PUSH1 0x20
0000035c: SUB
0000035d: PUSH2 0x0100
00000360: EXP
00000361: SUB
00000362: NOT
00000363: AND
00000364: DUP2
00000365: MSTORE
00000366: PUSH1 0x20
00000368: ADD
00000369: SWAP2
0000036a: POP
0000036b: JUMPDEST
0000036c: POP
0000036d: SWAP3
0000036e: POP
0000036f: POP
00000370: POP
00000371: PUSH1 0x40
00000373: MLOAD
00000374: DUP1
00000375: SWAP2
00000376: SUB
00000377: SWAP1
00000378: RETURN
00000379: JUMPDEST
0000037a: CALLVALUE
0000037b: ISZERO
0000037c: PUSH2 0x0381
0000037f: JUMPI
00000380: INVALID
00000381: JUMPDEST
00000382: PUSH2 0x03b6
00000385: PUSH1 0x04
00000387: DUP1
00000388: DUP1
00000389: CALLDATALOAD
0000038a: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
0000039f: AND
000003a0: SWAP1
000003a1: PUSH1 0x20
000003a3: ADD
000003a4: SWAP1
000003a5: SWAP2
000003a6: SWAP1
000003a7: DUP1
000003a8: CALLDATALOAD
000003a9: SWAP1
000003aa: PUSH1 0x20
000003ac: ADD
000003ad: SWAP1
000003ae: SWAP2
000003af: SWAP1
000003b0: POP
000003b1: POP
000003b2: PUSH2 0x0ab6
000003b5: JUMP
000003b6: JUMPDEST
000003b7: PUSH1 0x40
000003b9: MLOAD
000003ba: DUP1
000003bb: DUP3
000003bc: ISZERO
000003bd: ISZERO
000003be: ISZERO
000003bf: ISZERO
000003c0: DUP2
000003c1: MSTORE
000003c2: PUSH1 0x20
000003c4: ADD
000003c5: SWAP2
000003c6: POP
000003c7: POP
000003c8: PUSH1 0x40
000003ca: MLOAD
000003cb: DUP1
000003cc: SWAP2
000003cd: SUB
000003ce: SWAP1
000003cf: RETURN
000003d0: JUMPDEST
000003d1: PUSH2 0x03d8
000003d4: PUSH2 0x0443
000003d7: JUMP
000003d8: JUMPDEST
000003d9: STOP
000003da: JUMPDEST
000003db: CALLVALUE
000003dc: ISZERO
000003dd: PUSH2 0x03e2
000003e0: JUMPI
000003e1: INVALID
000003e2: JUMPDEST
000003e3: PUSH2 0x042d
000003e6: PUSH1 0x04
000003e8: DUP1
000003e9: DUP1
000003ea: CALLDATALOAD
000003eb: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000400: AND
00000401: SWAP1
00000402: PUSH1 0x20
00000404: ADD
00000405: SWAP1
00000406: SWAP2
00000407: SWAP1
00000408: DUP1
00000409: CALLDATALOAD
0000040a: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
0000041f: AND
00000420: SWAP1
00000421: PUSH1 0x20
00000423: ADD
00000424: SWAP1
00000425: SWAP2
00000426: SWAP1
00000427: POP
00000428: POP
00000429: PUSH2 0x0ca4
0000042c: JUMP
0000042d: JUMPDEST
0000042e: PUSH1 0x40
00000430: MLOAD
00000431: DUP1
00000432: DUP3
00000433: DUP2
00000434: MSTORE
00000435: PUSH1 0x20
00000437: ADD
00000438: SWAP2
00000439: POP
0000043a: POP
0000043b: PUSH1 0x40
0000043d: MLOAD
0000043e: DUP1
0000043f: SWAP2
00000440: SUB
00000441: SWAP1
00000442: RETURN
00000443: JUMPDEST
00000444: PUSH2 0x048c
00000447: PUSH1 0x00
00000449: PUSH1 0x00
0000044b: CALLER
0000044c: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000461: AND
00000462: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000477: AND
00000478: DUP2
00000479: MSTORE
0000047a: PUSH1 0x20
0000047c: ADD
0000047d: SWAP1
0000047e: DUP2
0000047f: MSTORE
00000480: PUSH1 0x20
00000482: ADD
00000483: PUSH1 0x00
00000485: KECCAK256
00000486: SLOAD
00000487: CALLVALUE
00000488: PUSH2 0x0d2c
0000048b: JUMP
0000048c: JUMPDEST
0000048d: PUSH1 0x00
0000048f: PUSH1 0x00
00000491: CALLER
00000492: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000004a7: AND
000004a8: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000004bd: AND
000004be: DUP2
000004bf: MSTORE
000004c0: PUSH1 0x20
000004c2: ADD
000004c3: SWAP1
000004c4: DUP2
000004c5: MSTORE
000004c6: PUSH1 0x20
000004c8: ADD
000004c9: PUSH1 0x00
000004cb: KECCAK256
000004cc: DUP2
000004cd: SWAP1
000004ce: SSTORE
000004cf: POP
000004d0: PUSH2 0x04db
000004d3: PUSH1 0x02
000004d5: SLOAD
000004d6: CALLVALUE
000004d7: PUSH2 0x0d2c
000004da: JUMP
000004db: JUMPDEST
000004dc: PUSH1 0x02
000004de: DUP2
000004df: SWAP1
000004e0: SSTORE
000004e1: POP
000004e2: JUMPDEST
000004e3: JUMP
000004e4: JUMPDEST
000004e5: PUSH1 0x40
000004e7: PUSH1 0x40
000004e9: MLOAD
000004ea: SWAP1
000004eb: DUP2
000004ec: ADD
000004ed: PUSH1 0x40
000004ef: MSTORE
000004f0: DUP1
000004f1: PUSH1 0x0b
000004f3: DUP2
000004f4: MSTORE
000004f5: PUSH1 0x20
000004f7: ADD
000004f8: PUSH32 0x457468657220546f6b656e000000000000000000000000000000000000000000
00000519: DUP2
0000051a: MSTORE
0000051b: POP
0000051c: DUP2
0000051d: JUMP
0000051e: JUMPDEST
0000051f: PUSH1 0x00
00000521: DUP2
00000522: PUSH1 0x01
00000524: PUSH1 0x00
00000526: CALLER
00000527: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
0000053c: AND
0000053d: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000552: AND
00000553: DUP2
00000554: MSTORE
00000555: PUSH1 0x20
00000557: ADD
00000558: SWAP1
00000559: DUP2
0000055a: MSTORE
0000055b: PUSH1 0x20
0000055d: ADD
0000055e: PUSH1 0x00
00000560: KECCAK256
00000561: PUSH1 0x00
00000563: DUP6
00000564: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000579: AND
0000057a: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
0000058f: AND
00000590: DUP2
00000591: MSTORE
00000592: PUSH1 0x20
00000594: ADD
00000595: SWAP1
00000596: DUP2
00000597: MSTORE
00000598: PUSH1 0x20
0000059a: ADD
0000059b: PUSH1 0x00
0000059d: KECCAK256
0000059e: DUP2
0000059f: SWAP1
000005a0: SSTORE
000005a1: POP
000005a2: DUP3
000005a3: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000005b8: AND
000005b9: CALLER
000005ba: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000005cf: AND
000005d0: PUSH32 0x8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925
000005f1: DUP5
000005f2: PUSH1 0x40
000005f4: MLOAD
000005f5: DUP1
000005f6: DUP3
000005f7: DUP2
000005f8: MSTORE
000005f9: PUSH1 0x20
000005fb: ADD
000005fc: SWAP2
000005fd: POP
000005fe: POP
000005ff: PUSH1 0x40
00000601: MLOAD
00000602: DUP1
00000603: SWAP2
00000604: SUB
00000605: SWAP1
00000606: LOG3
00000607: PUSH1 0x01
00000609: SWAP1
0000060a: POP
0000060b: JUMPDEST
0000060c: SWAP3
0000060d: SWAP2
0000060e: POP
0000060f: POP
00000610: JUMP
00000611: JUMPDEST
00000612: PUSH1 0x02
00000614: SLOAD
00000615: DUP2
00000616: JUMP
00000617: JUMPDEST
00000618: PUSH1 0x00
0000061a: PUSH1 0x00
0000061c: PUSH1 0x01
0000061e: PUSH1 0x00
00000620: DUP7
00000621: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000636: AND
00000637: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
0000064c: AND
0000064d: DUP2
0000064e: MSTORE
0000064f: PUSH1 0x20
00000651: ADD
00000652: SWAP1
00000653: DUP2
00000654: MSTORE
00000655: PUSH1 0x20
00000657: ADD
00000658: PUSH1 0x00
0000065a: KECCAK256
0000065b: PUSH1 0x00
0000065d: CALLER
0000065e: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000673: AND
00000674: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000689: AND
0000068a: DUP2
0000068b: MSTORE
0000068c: PUSH1 0x20
0000068e: ADD
0000068f: SWAP1
00000690: DUP2
00000691: MSTORE
00000692: PUSH1 0x20
00000694: ADD
00000695: PUSH1 0x00
00000697: KECCAK256
00000698: SLOAD
00000699: SWAP1
0000069a: POP
0000069b: DUP3
0000069c: PUSH1 0x00
0000069e: PUSH1 0x00
000006a0: DUP8
000006a1: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000006b6: AND
000006b7: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000006cc: AND
000006cd: DUP2
000006ce: MSTORE
000006cf: PUSH1 0x20
000006d1: ADD
000006d2: SWAP1
000006d3: DUP2
000006d4: MSTORE
000006d5: PUSH1 0x20
000006d7: ADD
000006d8: PUSH1 0x00
000006da: KECCAK256
000006db: SLOAD
000006dc: LT
000006dd: ISZERO
000006de: DUP1
000006df: ISZERO
000006e0: PUSH2 0x06e9
000006e3: JUMPI
000006e4: POP
000006e5: DUP3
000006e6: DUP2
000006e7: LT
000006e8: ISZERO
000006e9: JUMPDEST
000006ea: DUP1
000006eb: ISZERO
000006ec: PUSH2 0x0775
000006ef: JUMPI
000006f0: POP
000006f1: PUSH1 0x00
000006f3: PUSH1 0x00
000006f5: DUP6
000006f6: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
0000070b: AND
0000070c: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000721: AND
00000722: DUP2
00000723: MSTORE
00000724: PUSH1 0x20
00000726: ADD
00000727: SWAP1
00000728: DUP2
00000729: MSTORE
0000072a: PUSH1 0x20
0000072c: ADD
0000072d: PUSH1 0x00
0000072f: KECCAK256
00000730: SLOAD
00000731: DUP4
00000732: PUSH1 0x00
00000734: PUSH1 0x00
00000736: DUP8
00000737: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
0000074c: AND
0000074d: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000762: AND
00000763: DUP2
00000764: MSTORE
00000765: PUSH1 0x20
00000767: ADD
00000768: SWAP1
00000769: DUP2
0000076a: MSTORE
0000076b: PUSH1 0x20
0000076d: ADD
0000076e: PUSH1 0x00
00000770: KECCAK256
00000771: SLOAD
00000772: ADD
00000773: LT
00000774: ISZERO
00000775: JUMPDEST
00000776: ISZERO
00000777: PUSH2 0x0935
0000077a: JUMPI
0000077b: DUP3
0000077c: PUSH1 0x00
0000077e: PUSH1 0x00
00000780: DUP7
00000781: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000796: AND
00000797: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000007ac: AND
000007ad: DUP2
000007ae: MSTORE
000007af: PUSH1 0x20
000007b1: ADD
000007b2: SWAP1
000007b3: DUP2
000007b4: MSTORE
000007b5: PUSH1 0x20
000007b7: ADD
000007b8: PUSH1 0x00
000007ba: KECCAK256
000007bb: PUSH1 0x00
000007bd: DUP3
000007be: DUP3
000007bf: SLOAD
000007c0: ADD
000007c1: SWAP3
000007c2: POP
000007c3: POP
000007c4: DUP2
000007c5: SWAP1
000007c6: SSTORE
000007c7: POP
000007c8: DUP3
000007c9: PUSH1 0x00
000007cb: PUSH1 0x00
000007cd: DUP8
000007ce: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000007e3: AND
000007e4: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000007f9: AND
000007fa: DUP2
000007fb: MSTORE
000007fc: PUSH1 0x20
000007fe: ADD
000007ff: SWAP1
00000800: DUP2
00000801: MSTORE
00000802: PUSH1 0x20
00000804: ADD
00000805: PUSH1 0x00
00000807: KECCAK256
00000808: PUSH1 0x00
0000080a: DUP3
0000080b: DUP3
0000080c: SLOAD
0000080d: SUB
0000080e: SWAP3
0000080f: POP
00000810: POP
00000811: DUP2
00000812: SWAP1
00000813: SSTORE
00000814: POP
00000815: PUSH32 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
00000836: DUP2
00000837: LT
00000838: ISZERO
00000839: PUSH2 0x08c7
0000083c: JUMPI
0000083d: DUP3
0000083e: PUSH1 0x01
00000840: PUSH1 0x00
00000842: DUP8
00000843: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000858: AND
00000859: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
0000086e: AND
0000086f: DUP2
00000870: MSTORE
00000871: PUSH1 0x20
00000873: ADD
00000874: SWAP1
00000875: DUP2
00000876: MSTORE
00000877: PUSH1 0x20
00000879: ADD
0000087a: PUSH1 0x00
0000087c: KECCAK256
0000087d: PUSH1 0x00
0000087f: CALLER
00000880: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000895: AND
00000896: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000008ab: AND
000008ac: DUP2
000008ad: MSTORE
000008ae: PUSH1 0x20
000008b0: ADD
000008b1: SWAP1
000008b2: DUP2
000008b3: MSTORE
000008b4: PUSH1 0x20
000008b6: ADD
000008b7: PUSH1 0x00
000008b9: KECCAK256
000008ba: PUSH1 0x00
000008bc: DUP3
000008bd: DUP3
000008be: SLOAD
000008bf: SUB
000008c0: SWAP3
000008c1: POP
000008c2: POP
000008c3: DUP2
000008c4: SWAP1
000008c5: SSTORE
000008c6: POP
000008c7: JUMPDEST
000008c8: DUP4
000008c9: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000008de: AND
000008df: DUP6
000008e0: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000008f5: AND
000008f6: PUSH32 0xddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef
00000917: DUP6
00000918: PUSH1 0x40
0000091a: MLOAD
0000091b: DUP1
0000091c: DUP3
0000091d: DUP2
0000091e: MSTORE
0000091f: PUSH1 0x20
00000921: ADD
00000922: SWAP2
00000923: POP
00000924: POP
00000925: PUSH1 0x40
00000927: MLOAD
00000928: DUP1
00000929: SWAP2
0000092a: SUB
0000092b: SWAP1
0000092c: LOG3
0000092d: PUSH1 0x01
0000092f: SWAP2
00000930: POP
00000931: PUSH2 0x093f
00000934: JUMP
00000935: JUMPDEST
00000936: PUSH1 0x00
00000938: SWAP2
00000939: POP
0000093a: PUSH2 0x093f
0000093d: JUMP
0000093e: JUMPDEST
0000093f: JUMPDEST
00000940: POP
00000941: SWAP4
00000942: SWAP3
00000943: POP
00000944: POP
00000945: POP
00000946: JUMP
00000947: JUMPDEST
00000948: PUSH2 0x0990
0000094b: PUSH1 0x00
0000094d: PUSH1 0x00
0000094f: CALLER
00000950: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000965: AND
00000966: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
0000097b: AND
0000097c: DUP2
0000097d: MSTORE
0000097e: PUSH1 0x20
00000980: ADD
00000981: SWAP1
00000982: DUP2
00000983: MSTORE
00000984: PUSH1 0x20
00000986: ADD
00000987: PUSH1 0x00
00000989: KECCAK256
0000098a: SLOAD
0000098b: DUP3
0000098c: PUSH2 0x0d4c
0000098f: JUMP
00000990: JUMPDEST
00000991: PUSH1 0x00
00000993: PUSH1 0x00
00000995: CALLER
00000996: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000009ab: AND
000009ac: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000009c1: AND
000009c2: DUP2
000009c3: MSTORE
000009c4: PUSH1 0x20
000009c6: ADD
000009c7: SWAP1
000009c8: DUP2
000009c9: MSTORE
000009ca: PUSH1 0x20
000009cc: ADD
000009cd: PUSH1 0x00
000009cf: KECCAK256
000009d0: DUP2
000009d1: SWAP1
000009d2: SSTORE
000009d3: POP
000009d4: PUSH2 0x09df
000009d7: PUSH1 0x02
000009d9: SLOAD
000009da: DUP3
000009db: PUSH2 0x0d4c
000009de: JUMP
000009df: JUMPDEST
000009e0: PUSH1 0x02
000009e2: DUP2
000009e3: SWAP1
000009e4: SSTORE
000009e5: POP
000009e6: CALLER
000009e7: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000009fc: AND
000009fd: PUSH2 0x08fc
00000a00: DUP3
00000a01: SWAP1
00000a02: DUP2
00000a03: ISZERO
00000a04: MUL
00000a05: SWAP1
00000a06: PUSH1 0x40
00000a08: MLOAD
00000a09: DUP1
00000a0a: SWAP1
00000a0b: POP
00000a0c: PUSH1 0x00
00000a0e: PUSH1 0x40
00000a10: MLOAD
00000a11: DUP1
00000a12: DUP4
00000a13: SUB
00000a14: DUP2
00000a15: DUP6
00000a16: DUP9
00000a17: DUP9
00000a18: CALL
00000a19: SWAP4
00000a1a: POP
00000a1b: POP
00000a1c: POP
00000a1d: POP
00000a1e: ISZERO
00000a1f: ISZERO
00000a20: PUSH2 0x0a29
00000a23: JUMPI
00000a24: PUSH1 0x00
00000a26: PUSH1 0x00
00000a28: REVERT
00000a29: JUMPDEST
00000a2a: JUMPDEST
00000a2b: POP
00000a2c: JUMP
00000a2d: JUMPDEST
00000a2e: PUSH1 0x12
00000a30: DUP2
00000a31: JUMP
00000a32: JUMPDEST
00000a33: PUSH1 0x00
00000a35: PUSH1 0x00
00000a37: PUSH1 0x00
00000a39: DUP4
00000a3a: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000a4f: AND
00000a50: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000a65: AND
00000a66: DUP2
00000a67: MSTORE
00000a68: PUSH1 0x20
00000a6a: ADD
00000a6b: SWAP1
00000a6c: DUP2
00000a6d: MSTORE
00000a6e: PUSH1 0x20
00000a70: ADD
00000a71: PUSH1 0x00
00000a73: KECCAK256
00000a74: SLOAD
00000a75: SWAP1
00000a76: POP
00000a77: JUMPDEST
00000a78: SWAP2
00000a79: SWAP1
00000a7a: POP
00000a7b: JUMP
00000a7c: JUMPDEST
00000a7d: PUSH1 0x40
00000a7f: PUSH1 0x40
00000a81: MLOAD
00000a82: SWAP1
00000a83: DUP2
00000a84: ADD
00000a85: PUSH1 0x40
00000a87: MSTORE
00000a88: DUP1
00000a89: PUSH1 0x04
00000a8b: DUP2
00000a8c: MSTORE
00000a8d: PUSH1 0x20
00000a8f: ADD
00000a90: PUSH32 0x5745544800000000000000000000000000000000000000000000000000000000
00000ab1: DUP2
00000ab2: MSTORE
00000ab3: POP
00000ab4: DUP2
00000ab5: JUMP
00000ab6: JUMPDEST
00000ab7: PUSH1 0x00
00000ab9: DUP2
00000aba: PUSH1 0x00
00000abc: PUSH1 0x00
00000abe: CALLER
00000abf: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000ad4: AND
00000ad5: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000aea: AND
00000aeb: DUP2
00000aec: MSTORE
00000aed: PUSH1 0x20
00000aef: ADD
00000af0: SWAP1
00000af1: DUP2
00000af2: MSTORE
00000af3: PUSH1 0x20
00000af5: ADD
00000af6: PUSH1 0x00
00000af8: KECCAK256
00000af9: SLOAD
00000afa: LT
00000afb: ISZERO
00000afc: DUP1
00000afd: ISZERO
00000afe: PUSH2 0x0b87
00000b01: JUMPI
00000b02: POP
00000b03: PUSH1 0x00
00000b05: PUSH1 0x00
00000b07: DUP5
00000b08: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000b1d: AND
00000b1e: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000b33: AND
00000b34: DUP2
00000b35: MSTORE
00000b36: PUSH1 0x20
00000b38: ADD
00000b39: SWAP1
00000b3a: DUP2
00000b3b: MSTORE
00000b3c: PUSH1 0x20
00000b3e: ADD
00000b3f: PUSH1 0x00
00000b41: KECCAK256
00000b42: SLOAD
00000b43: DUP3
00000b44: PUSH1 0x00
00000b46: PUSH1 0x00
00000b48: DUP7
00000b49: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000b5e: AND
00000b5f: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000b74: AND
00000b75: DUP2
00000b76: MSTORE
00000b77: PUSH1 0x20
00000b79: ADD
00000b7a: SWAP1
00000b7b: DUP2
00000b7c: MSTORE
00000b7d: PUSH1 0x20
00000b7f: ADD
00000b80: PUSH1 0x00
00000b82: KECCAK256
00000b83: SLOAD
00000b84: ADD
00000b85: LT
00000b86: ISZERO
00000b87: JUMPDEST
00000b88: ISZERO
00000b89: PUSH2 0x0c94
00000b8c: JUMPI
00000b8d: DUP2
00000b8e: PUSH1 0x00
00000b90: PUSH1 0x00
00000b92: CALLER
00000b93: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000ba8: AND
00000ba9: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000bbe: AND
00000bbf: DUP2
00000bc0: MSTORE
00000bc1: PUSH1 0x20
00000bc3: ADD
00000bc4: SWAP1
00000bc5: DUP2
00000bc6: MSTORE
00000bc7: PUSH1 0x20
00000bc9: ADD
00000bca: PUSH1 0x00
00000bcc: KECCAK256
00000bcd: PUSH1 0x00
00000bcf: DUP3
00000bd0: DUP3
00000bd1: SLOAD
00000bd2: SUB
00000bd3: SWAP3
00000bd4: POP
00000bd5: POP
00000bd6: DUP2
00000bd7: SWAP1
00000bd8: SSTORE
00000bd9: POP
00000bda: DUP2
00000bdb: PUSH1 0x00
00000bdd: PUSH1 0x00
00000bdf: DUP6
00000be0: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000bf5: AND
00000bf6: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000c0b: AND
00000c0c: DUP2
00000c0d: MSTORE
00000c0e: PUSH1 0x20
00000c10: ADD
00000c11: SWAP1
00000c12: DUP2
00000c13: MSTORE
00000c14: PUSH1 0x20
00000c16: ADD
00000c17: PUSH1 0x00
00000c19: KECCAK256
00000c1a: PUSH1 0x00
00000c1c: DUP3
00000c1d: DUP3
00000c1e: SLOAD
00000c1f: ADD
00000c20: SWAP3
00000c21: POP
00000c22: POP
00000c23: DUP2
00000c24: SWAP1
00000c25: SSTORE
00000c26: POP
00000c27: DUP3
00000c28: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000c3d: AND
00000c3e: CALLER
00000c3f: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000c54: AND
00000c55: PUSH32 0xddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef
00000c76: DUP5
00000c77: PUSH1 0x40
00000c79: MLOAD
00000c7a: DUP1
00000c7b: DUP3
00000c7c: DUP2
00000c7d: MSTORE
00000c7e: PUSH1 0x20
00000c80: ADD
00000c81: SWAP2
00000c82: POP
00000c83: POP
00000c84: PUSH1 0x40
00000c86: MLOAD
00000c87: DUP1
00000c88: SWAP2
00000c89: SUB
00000c8a: SWAP1
00000c8b: LOG3
00000c8c: PUSH1 0x01
00000c8e: SWAP1
00000c8f: POP
00000c90: PUSH2 0x0c9e
00000c93: JUMP
00000c94: JUMPDEST
00000c95: PUSH1 0x00
00000c97: SWAP1
00000c98: POP
00000c99: PUSH2 0x0c9e
00000c9c: JUMP
00000c9d: JUMPDEST
00000c9e: JUMPDEST
00000c9f: SWAP3
00000ca0: SWAP2
00000ca1: POP
00000ca2: POP
00000ca3: JUMP
00000ca4: JUMPDEST
00000ca5: PUSH1 0x00
00000ca7: PUSH1 0x01
00000ca9: PUSH1 0x00
00000cab: DUP5
00000cac: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000cc1: AND
00000cc2: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000cd7: AND
00000cd8: DUP2
00000cd9: MSTORE
00000cda: PUSH1 0x20
00000cdc: ADD
00000cdd: SWAP1
00000cde: DUP2
00000cdf: MSTORE
00000ce0: PUSH1 0x20
00000ce2: ADD
00000ce3: PUSH1 0x00
00000ce5: KECCAK256
00000ce6: PUSH1 0x00
00000ce8: DUP4
00000ce9: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000cfe: AND
00000cff: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000d14: AND
00000d15: DUP2
00000d16: MSTORE
00000d17: PUSH1 0x20
00000d19: ADD
00000d1a: SWAP1
00000d1b: DUP2
00000d1c: MSTORE
00000d1d: PUSH1 0x20
00000d1f: ADD
00000d20: PUSH1 0x00
00000d22: KECCAK256
00000d23: SLOAD
00000d24: SWAP1
00000d25: POP
00000d26: JUMPDEST
00000d27: SWAP3
00000d28: SWAP2
00000d29: POP
00000d2a: POP
00000d2b: JUMP
00000d2c: JUMPDEST
00000d2d: PUSH1 0x00
00000d2f: PUSH1 0x00
00000d31: DUP3
00000d32: DUP5
00000d33: ADD
00000d34: SWAP1
00000d35: POP
00000d36: DUP4
00000d37: DUP2
00000d38: LT
00000d39: ISZERO
00000d3a: ISZERO
00000d3b: ISZERO
00000d3c: PUSH2 0x0d41
00000d3f: JUMPI
00000d40: INVALID
00000d41: JUMPDEST
00000d42: DUP1
00000d43: SWAP2
00000d44: POP
00000d45: JUMPDEST
00000d46: POP
00000d47: SWAP3
00000d48: SWAP2
00000d49: POP
00000d4a: POP
00000d4b: JUMP
00000d4c: JUMPDEST
00000d4d: PUSH1 0x00
00000d4f: DUP3
00000d50: DUP3
00000d51: GT
00000d52: ISZERO
00000d53: ISZERO
00000d54: ISZERO
00000d55: PUSH2 0x0d5a
00000d58: JUMPI
00000d59: INVALID
00000d5a: JUMPDEST
00000d5b: DUP2
00000d5c: DUP4
00000d5d: SUB
00000d5e: SWAP1
00000d5f: POP
00000d60: JUMPDEST
00000d61: SWAP3
00000d62: SWAP2
00000d63: POP
00000d64: POP
00000d65: JUMP
00000d66: STOP
00000d67: LOG1
00000d68: PUSH6 0x627a7a723058
00000d6f: KECCAK256
00000d70: NOT
00000d71: PUSH28 0x06eae7be68ba129f01685b2c2fa836d9873b2de1861bdab047f4333b
00000d8e: UNKNOWN(0xEB)
00000d8f: PUSH28

Findings

validated = confirmed for call sinks; sink observed for others
Severity Category Tool Title Confidence Validated Confirmed Details
high other detector Untrusted CALL target/value reachable 60 no no
view
trace_id: 0xbd2b820cb81eeed9803bb39d9a5ca9c349fec924f761dd560a3acaf85a88acfe
call_targets: 0x2956356cd2a2bf3202f771f50d3d14a367b48070
target_varies: no
classification: constant_target
validation_json
{
    "sink": "CALL",
    "errors": 0,
    "status": "sink_reached",
    "attempts": 1,
    "trace_id": "0xbd2b820cb81eeed9803bb39d9a5ca9c349fec924f761dd560a3acaf85a88acfe",
    "confirmed": false,
    "trace_mode": "callTracer",
    "call_targets": [
        "0x2956356cd2a2bf3202f771f50d3d14a367b48070"
    ],
    "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": "0x06fdde03",
            "selector": "0x06fdde03",
            "calldata_variants": [
                "0x06fdde03",
                "0x06fdde030000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x095ea7b3",
            "selector": "0x095ea7b3",
            "calldata_variants": [
                "0x095ea7b3",
                "0x095ea7b30000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x18160ddd",
            "selector": "0x18160ddd",
            "calldata_variants": [
                "0x18160ddd",
                "0x18160ddd0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x23b872dd",
            "selector": "0x23b872dd",
            "calldata_variants": [
                "0x23b872dd",
                "0x23b872dd0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x2e1a7d4d",
            "selector": "0x2e1a7d4d",
            "calldata_variants": [
                "0x2e1a7d4d",
                "0x2e1a7d4d0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x313ce567",
            "selector": "0x313ce567",
            "calldata_variants": [
                "0x313ce567",
                "0x313ce5670000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x70a08231",
            "selector": "0x70a08231",
            "calldata_variants": [
                "0x70a08231",
                "0x70a082310000000000000000000000000000000000000000000000000000000000000000"
            ]
        }
    ]
}
evidence_json
{
    "examples": [
        {
            "pc": 2584,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        }
    ],
    "call_count": 1,
    "guards_detected": [],
    "untrusted_call_count": 1
}
high other detector ETH value transfer possible 55 no no
view
trace_id: 0xbd2b820cb81eeed9803bb39d9a5ca9c349fec924f761dd560a3acaf85a88acfe
call_targets: 0x2956356cd2a2bf3202f771f50d3d14a367b48070
target_varies: no
classification: constant_target
validation_json
{
    "sink": "CALL",
    "errors": 0,
    "status": "sink_reached",
    "attempts": 1,
    "trace_id": "0xbd2b820cb81eeed9803bb39d9a5ca9c349fec924f761dd560a3acaf85a88acfe",
    "confirmed": false,
    "trace_mode": "callTracer",
    "call_targets": [
        "0x2956356cd2a2bf3202f771f50d3d14a367b48070"
    ],
    "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": "0x06fdde03",
            "selector": "0x06fdde03",
            "calldata_variants": [
                "0x06fdde03",
                "0x06fdde030000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x095ea7b3",
            "selector": "0x095ea7b3",
            "calldata_variants": [
                "0x095ea7b3",
                "0x095ea7b30000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x18160ddd",
            "selector": "0x18160ddd",
            "calldata_variants": [
                "0x18160ddd",
                "0x18160ddd0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x23b872dd",
            "selector": "0x23b872dd",
            "calldata_variants": [
                "0x23b872dd",
                "0x23b872dd0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x2e1a7d4d",
            "selector": "0x2e1a7d4d",
            "calldata_variants": [
                "0x2e1a7d4d",
                "0x2e1a7d4d0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x313ce567",
            "selector": "0x313ce567",
            "calldata_variants": [
                "0x313ce567",
                "0x313ce5670000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x70a08231",
            "selector": "0x70a08231",
            "calldata_variants": [
                "0x70a08231",
                "0x70a082310000000000000000000000000000000000000000000000000000000000000000"
            ]
        }
    ]
}
evidence_json
{
    "examples": [
        {
            "pc": 2584,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        }
    ],
    "eth_value_calls": 1,
    "guards_detected": []
}