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

Analysis Run

019b3844-8959-7216-b178-68cf5249a368

complete
Chain ID
1
Address
Block Number
Created
Fri, Dec 19, 2025 8:19 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
Authorization based on tx.origin
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
11427 artifact.fetch complete 1 / 3 3 months ago
11428 tool.cast_disasm complete 1 / 3 3 months ago
54896 analysis.bundle complete 1 / 3 1 week ago
54897 capability.graph complete 1 / 3 1 week ago
54898 detector.run complete 1 / 3 1 week ago
54899 validation.fork complete 1 / 3 1 week ago

Artifact

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

Slither

tool.slither

No slither job recorded yet.

Codex

report.consolidate

No codex job recorded yet.

Opcode Heuristics

tool.cast_disasm
Delegatecall
0
Selfdestruct
0
CREATE2
1
CALL-family (heavy)
4
EXT*/BALANCE
4
Total opcodes
1932
Flags
create_opcodes_present
View cast disassembly output
00000000: PUSH1 0x60
00000002: PUSH1 0x40
00000004: MSTORE
00000005: CALLDATASIZE
00000006: ISZERO
00000007: PUSH2 0x007d
0000000a: JUMPI
0000000b: PUSH4 0xffffffff
00000010: PUSH1 0xe0
00000012: PUSH1 0x02
00000014: EXP
00000015: PUSH1 0x00
00000017: CALLDATALOAD
00000018: DIV
00000019: AND
0000001a: PUSH4 0x22c9427e
0000001f: DUP2
00000020: EQ
00000021: PUSH2 0x007f
00000024: JUMPI
00000025: DUP1
00000026: PUSH4 0x30e1f16f
0000002b: EQ
0000002c: PUSH2 0x0094
0000002f: JUMPI
00000030: DUP1
00000031: PUSH4 0x6423b5f0
00000036: EQ
00000037: PUSH2 0x00a6
0000003a: JUMPI
0000003b: DUP1
0000003c: PUSH4 0x7c1a35d7
00000041: EQ
00000042: PUSH2 0x00d2
00000045: JUMPI
00000046: DUP1
00000047: PUSH4 0x814b3fe0
0000004c: EQ
0000004d: PUSH2 0x00f4
00000050: JUMPI
00000051: DUP1
00000052: PUSH4 0x8da5cb5b
00000057: EQ
00000058: PUSH2 0x013c
0000005b: JUMPI
0000005c: DUP1
0000005d: PUSH4 0x9abd3572
00000062: EQ
00000063: PUSH2 0x0168
00000066: JUMPI
00000067: DUP1
00000068: PUSH4 0xa289d187
0000006d: EQ
0000006e: PUSH2 0x017d
00000071: JUMPI
00000072: DUP1
00000073: PUSH4 0xf2fde38b
00000078: EQ
00000079: PUSH2 0x0187
0000007c: JUMPI
0000007d: JUMPDEST
0000007e: INVALID
0000007f: JUMPDEST
00000080: CALLVALUE
00000081: ISZERO
00000082: PUSH2 0x0087
00000085: JUMPI
00000086: INVALID
00000087: JUMPDEST
00000088: PUSH2 0x0092
0000008b: PUSH1 0x04
0000008d: CALLDATALOAD
0000008e: PUSH2 0x01a5
00000091: JUMP
00000092: JUMPDEST
00000093: STOP
00000094: JUMPDEST
00000095: CALLVALUE
00000096: ISZERO
00000097: PUSH2 0x009c
0000009a: JUMPI
0000009b: INVALID
0000009c: JUMPDEST
0000009d: PUSH2 0x0092
000000a0: PUSH2 0x0401
000000a3: JUMP
000000a4: JUMPDEST
000000a5: STOP
000000a6: JUMPDEST
000000a7: CALLVALUE
000000a8: ISZERO
000000a9: PUSH2 0x00ae
000000ac: JUMPI
000000ad: INVALID
000000ae: JUMPDEST
000000af: PUSH2 0x00b6
000000b2: PUSH2 0x0501
000000b5: JUMP
000000b6: JUMPDEST
000000b7: PUSH1 0x40
000000b9: DUP1
000000ba: MLOAD
000000bb: PUSH1 0x01
000000bd: PUSH1 0xa0
000000bf: PUSH1 0x02
000000c1: EXP
000000c2: SUB
000000c3: SWAP1
000000c4: SWAP3
000000c5: AND
000000c6: DUP3
000000c7: MSTORE
000000c8: MLOAD
000000c9: SWAP1
000000ca: DUP2
000000cb: SWAP1
000000cc: SUB
000000cd: PUSH1 0x20
000000cf: ADD
000000d0: SWAP1
000000d1: RETURN
000000d2: JUMPDEST
000000d3: CALLVALUE
000000d4: ISZERO
000000d5: PUSH2 0x00da
000000d8: JUMPI
000000d9: INVALID
000000da: JUMPDEST
000000db: PUSH2 0x00e2
000000de: PUSH2 0x0510
000000e1: JUMP
000000e2: JUMPDEST
000000e3: PUSH1 0x40
000000e5: DUP1
000000e6: MLOAD
000000e7: SWAP2
000000e8: DUP3
000000e9: MSTORE
000000ea: MLOAD
000000eb: SWAP1
000000ec: DUP2
000000ed: SWAP1
000000ee: SUB
000000ef: PUSH1 0x20
000000f1: ADD
000000f2: SWAP1
000000f3: RETURN
000000f4: JUMPDEST
000000f5: CALLVALUE
000000f6: ISZERO
000000f7: PUSH2 0x00fc
000000fa: JUMPI
000000fb: INVALID
000000fc: JUMPDEST
000000fd: PUSH2 0x0107
00000100: PUSH1 0x04
00000102: CALLDATALOAD
00000103: PUSH2 0x0516
00000106: JUMP
00000107: JUMPDEST
00000108: PUSH1 0x40
0000010a: DUP1
0000010b: MLOAD
0000010c: SWAP7
0000010d: DUP8
0000010e: MSTORE
0000010f: PUSH1 0x20
00000111: DUP8
00000112: ADD
00000113: SWAP6
00000114: SWAP1
00000115: SWAP6
00000116: MSTORE
00000117: DUP6
00000118: DUP6
00000119: ADD
0000011a: SWAP4
0000011b: SWAP1
0000011c: SWAP4
0000011d: MSTORE
0000011e: PUSH1 0x60
00000120: DUP6
00000121: ADD
00000122: SWAP2
00000123: SWAP1
00000124: SWAP2
00000125: MSTORE
00000126: PUSH1 0x80
00000128: DUP5
00000129: ADD
0000012a: MSTORE
0000012b: ISZERO
0000012c: ISZERO
0000012d: PUSH1 0xa0
0000012f: DUP4
00000130: ADD
00000131: MSTORE
00000132: MLOAD
00000133: SWAP1
00000134: DUP2
00000135: SWAP1
00000136: SUB
00000137: PUSH1 0xc0
00000139: ADD
0000013a: SWAP1
0000013b: RETURN
0000013c: JUMPDEST
0000013d: CALLVALUE
0000013e: ISZERO
0000013f: PUSH2 0x0144
00000142: JUMPI
00000143: INVALID
00000144: JUMPDEST
00000145: PUSH2 0x00b6
00000148: PUSH2 0x055f
0000014b: JUMP
0000014c: JUMPDEST
0000014d: PUSH1 0x40
0000014f: DUP1
00000150: MLOAD
00000151: PUSH1 0x01
00000153: PUSH1 0xa0
00000155: PUSH1 0x02
00000157: EXP
00000158: SUB
00000159: SWAP1
0000015a: SWAP3
0000015b: AND
0000015c: DUP3
0000015d: MSTORE
0000015e: MLOAD
0000015f: SWAP1
00000160: DUP2
00000161: SWAP1
00000162: SUB
00000163: PUSH1 0x20
00000165: ADD
00000166: SWAP1
00000167: RETURN
00000168: JUMPDEST
00000169: CALLVALUE
0000016a: ISZERO
0000016b: PUSH2 0x0170
0000016e: JUMPI
0000016f: INVALID
00000170: JUMPDEST
00000171: PUSH2 0x0092
00000174: PUSH1 0x04
00000176: CALLDATALOAD
00000177: PUSH2 0x056e
0000017a: JUMP
0000017b: JUMPDEST
0000017c: STOP
0000017d: JUMPDEST
0000017e: PUSH2 0x0092
00000181: PUSH2 0x074a
00000184: JUMP
00000185: JUMPDEST
00000186: STOP
00000187: JUMPDEST
00000188: CALLVALUE
00000189: ISZERO
0000018a: PUSH2 0x018f
0000018d: JUMPI
0000018e: INVALID
0000018f: JUMPDEST
00000190: PUSH2 0x0092
00000193: PUSH1 0x01
00000195: PUSH1 0xa0
00000197: PUSH1 0x02
00000199: EXP
0000019a: SUB
0000019b: PUSH1 0x04
0000019d: CALLDATALOAD
0000019e: AND
0000019f: PUSH2 0x08ea
000001a2: JUMP
000001a3: JUMPDEST
000001a4: STOP
000001a5: JUMPDEST
000001a6: PUSH1 0x00
000001a8: DUP1
000001a9: SLOAD
000001aa: DUP2
000001ab: SWAP1
000001ac: DUP2
000001ad: SWAP1
000001ae: DUP2
000001af: SWAP1
000001b0: DUP2
000001b1: SWAP1
000001b2: CALLER
000001b3: PUSH1 0x01
000001b5: PUSH1 0xa0
000001b7: PUSH1 0x02
000001b9: EXP
000001ba: SUB
000001bb: SWAP1
000001bc: DUP2
000001bd: AND
000001be: SWAP2
000001bf: AND
000001c0: EQ
000001c1: PUSH2 0x01ca
000001c4: JUMPI
000001c5: PUSH1 0x00
000001c7: PUSH1 0x00
000001c9: REVERT
000001ca: JUMPDEST
000001cb: PUSH1 0x03
000001cd: SLOAD
000001ce: DUP7
000001cf: SWAP1
000001d0: DUP2
000001d1: LT
000001d2: PUSH2 0x01db
000001d5: JUMPI
000001d6: PUSH1 0x00
000001d8: PUSH1 0x00
000001da: REVERT
000001db: JUMPDEST
000001dc: PUSH1 0x03
000001de: DUP1
000001df: SLOAD
000001e0: DUP9
000001e1: SWAP1
000001e2: DUP2
000001e3: LT
000001e4: PUSH2 0x01e9
000001e7: JUMPI
000001e8: INVALID
000001e9: JUMPDEST
000001ea: SWAP1
000001eb: PUSH1 0x00
000001ed: MSTORE
000001ee: PUSH1 0x20
000001f0: PUSH1 0x00
000001f2: KECCAK256
000001f3: SWAP1
000001f4: PUSH1 0x07
000001f6: MUL
000001f7: ADD
000001f8: PUSH1 0x00
000001fa: JUMPDEST
000001fb: POP
000001fc: PUSH1 0x05
000001fe: DUP2
000001ff: ADD
00000200: SLOAD
00000201: SWAP1
00000202: SWAP7
00000203: POP
00000204: PUSH1 0xff
00000206: AND
00000207: ISZERO
00000208: PUSH2 0x0211
0000020b: JUMPI
0000020c: PUSH1 0x00
0000020e: PUSH1 0x00
00000210: REVERT
00000211: JUMPDEST
00000212: PUSH2 0x0224
00000215: PUSH2 0x021c
00000218: PUSH2 0x0936
0000021b: JUMP
0000021c: JUMPDEST
0000021d: PUSH1 0x02
0000021f: SLOAD
00000220: PUSH2 0x093b
00000223: JUMP
00000224: JUMPDEST
00000225: PUSH1 0x01
00000227: DUP8
00000228: ADD
00000229: SLOAD
0000022a: LT
0000022b: PUSH2 0x0234
0000022e: JUMPI
0000022f: PUSH1 0x00
00000231: PUSH1 0x00
00000233: REVERT
00000234: JUMPDEST
00000235: PUSH1 0x01
00000237: PUSH1 0x03
00000239: DUP9
0000023a: DUP2
0000023b: SLOAD
0000023c: DUP2
0000023d: LT
0000023e: ISZERO
0000023f: ISZERO
00000240: PUSH2 0x0245
00000243: JUMPI
00000244: INVALID
00000245: JUMPDEST
00000246: SWAP1
00000247: PUSH1 0x00
00000249: MSTORE
0000024a: PUSH1 0x20
0000024c: PUSH1 0x00
0000024e: KECCAK256
0000024f: SWAP1
00000250: PUSH1 0x07
00000252: MUL
00000253: ADD
00000254: PUSH1 0x00
00000256: JUMPDEST
00000257: POP
00000258: PUSH1 0x05
0000025a: ADD
0000025b: DUP1
0000025c: SLOAD
0000025d: PUSH1 0xff
0000025f: NOT
00000260: AND
00000261: SWAP2
00000262: ISZERO
00000263: ISZERO
00000264: SWAP2
00000265: SWAP1
00000266: SWAP2
00000267: OR
00000268: SWAP1
00000269: SSTORE
0000026a: PUSH1 0x01
0000026c: SLOAD
0000026d: PUSH1 0x40
0000026f: DUP1
00000270: MLOAD
00000271: PUSH1 0x00
00000273: PUSH1 0x20
00000275: SWAP2
00000276: DUP3
00000277: ADD
00000278: DUP2
00000279: SWAP1
0000027a: MSTORE
0000027b: DUP3
0000027c: MLOAD
0000027d: PUSH1 0xe4
0000027f: PUSH1 0x02
00000281: EXP
00000282: PUSH4 0x0981b24d
00000287: MUL
00000288: DUP2
00000289: MSTORE
0000028a: NUMBER
0000028b: PUSH1 0x04
0000028d: DUP3
0000028e: ADD
0000028f: MSTORE
00000290: SWAP3
00000291: MLOAD
00000292: PUSH1 0x01
00000294: PUSH1 0xa0
00000296: PUSH1 0x02
00000298: EXP
00000299: SUB
0000029a: SWAP1
0000029b: SWAP5
0000029c: AND
0000029d: SWAP4
0000029e: PUSH4 0x981b24d0
000002a3: SWAP4
000002a4: PUSH1 0x24
000002a6: DUP1
000002a7: DUP3
000002a8: ADD
000002a9: SWAP5
000002aa: SWAP4
000002ab: SWAP2
000002ac: DUP4
000002ad: SWAP1
000002ae: SUB
000002af: ADD
000002b0: SWAP1
000002b1: DUP3
000002b2: SWAP1
000002b3: DUP8
000002b4: DUP1
000002b5: EXTCODESIZE
000002b6: ISZERO
000002b7: ISZERO
000002b8: PUSH2 0x02bd
000002bb: JUMPI
000002bc: INVALID
000002bd: JUMPDEST
000002be: PUSH2 0x02c6
000002c1: GAS
000002c2: SUB
000002c3: CALL
000002c4: ISZERO
000002c5: ISZERO
000002c6: PUSH2 0x02cb
000002c9: JUMPI
000002ca: INVALID
000002cb: JUMPDEST
000002cc: POP
000002cd: POP
000002ce: POP
000002cf: PUSH1 0x40
000002d1: MLOAD
000002d2: DUP1
000002d3: MLOAD
000002d4: SWAP1
000002d5: POP
000002d6: SWAP5
000002d7: POP
000002d8: PUSH2 0x02e9
000002db: DUP7
000002dc: PUSH1 0x02
000002de: ADD
000002df: SLOAD
000002e0: DUP8
000002e1: PUSH1 0x03
000002e3: ADD
000002e4: SLOAD
000002e5: PUSH2 0x093b
000002e8: JUMP
000002e9: JUMPDEST
000002ea: PUSH1 0x03
000002ec: SLOAD
000002ed: SWAP1
000002ee: SWAP5
000002ef: POP
000002f0: SWAP3
000002f1: POP
000002f2: PUSH2 0x02fc
000002f5: NUMBER
000002f6: PUSH1 0x01
000002f8: PUSH2 0x093b
000002fb: JUMP
000002fc: JUMPDEST
000002fd: SWAP2
000002fe: POP
000002ff: PUSH1 0x03
00000301: DUP1
00000302: SLOAD
00000303: DUP1
00000304: PUSH1 0x01
00000306: ADD
00000307: DUP3
00000308: DUP2
00000309: PUSH2 0x0312
0000030c: SWAP2
0000030d: SWAP1
0000030e: PUSH2 0x09b8
00000311: JUMP
00000312: JUMPDEST
00000313: SWAP2
00000314: PUSH1 0x00
00000316: MSTORE
00000317: PUSH1 0x20
00000319: PUSH1 0x00
0000031b: KECCAK256
0000031c: SWAP1
0000031d: PUSH1 0x07
0000031f: MUL
00000320: ADD
00000321: PUSH1 0x00
00000323: JUMPDEST
00000324: PUSH1 0xc0
00000326: PUSH1 0x40
00000328: MLOAD
00000329: SWAP1
0000032a: DUP2
0000032b: ADD
0000032c: PUSH1 0x40
0000032e: MSTORE
0000032f: DUP1
00000330: DUP7
00000331: DUP2
00000332: MSTORE
00000333: PUSH1 0x20
00000335: ADD
00000336: PUSH2 0x033d
00000339: PUSH2 0x0936
0000033c: JUMP
0000033d: JUMPDEST
0000033e: DUP2
0000033f: MSTORE
00000340: PUSH1 0x20
00000342: DUP1
00000343: DUP3
00000344: ADD
00000345: DUP11
00000346: SWAP1
00000347: MSTORE
00000348: PUSH1 0x00
0000034a: PUSH1 0x40
0000034c: DUP1
0000034d: DUP5
0000034e: ADD
0000034f: DUP3
00000350: SWAP1
00000351: MSTORE
00000352: PUSH1 0x60
00000354: DUP1
00000355: DUP6
00000356: ADD
00000357: DUP15
00000358: SWAP1
00000359: MSTORE
0000035a: PUSH1 0x80
0000035c: SWAP5
0000035d: DUP6
0000035e: ADD
0000035f: SWAP3
00000360: SWAP1
00000361: SWAP3
00000362: MSTORE
00000363: DUP5
00000364: MLOAD
00000365: DUP8
00000366: SSTORE
00000367: DUP5
00000368: DUP4
00000369: ADD
0000036a: MLOAD
0000036b: PUSH1 0x01
0000036d: DUP9
0000036e: ADD
0000036f: SSTORE
00000370: DUP5
00000371: DUP2
00000372: ADD
00000373: MLOAD
00000374: PUSH1 0x02
00000376: DUP9
00000377: ADD
00000378: SSTORE
00000379: DUP5
0000037a: DUP3
0000037b: ADD
0000037c: MLOAD
0000037d: PUSH1 0x03
0000037f: DUP9
00000380: ADD
00000381: SSTORE
00000382: DUP5
00000383: DUP5
00000384: ADD
00000385: MLOAD
00000386: PUSH1 0x04
00000388: DUP9
00000389: ADD
0000038a: SSTORE
0000038b: PUSH1 0xa0
0000038d: SWAP1
0000038e: SWAP5
0000038f: ADD
00000390: MLOAD
00000391: PUSH1 0x05
00000393: SWAP1
00000394: SWAP7
00000395: ADD
00000396: DUP1
00000397: SLOAD
00000398: PUSH1 0xff
0000039a: NOT
0000039b: AND
0000039c: SWAP7
0000039d: ISZERO
0000039e: ISZERO
0000039f: SWAP7
000003a0: SWAP1
000003a1: SWAP7
000003a2: OR
000003a3: SWAP1
000003a4: SWAP6
000003a5: SSTORE
000003a6: DUP3
000003a7: MLOAD
000003a8: DUP9
000003a9: DUP2
000003aa: MSTORE
000003ab: SWAP1
000003ac: DUP2
000003ad: ADD
000003ae: DUP11
000003af: SWAP1
000003b0: MSTORE
000003b1: DUP1
000003b2: DUP4
000003b3: ADD
000003b4: DUP12
000003b5: SWAP1
000003b6: MSTORE
000003b7: SWAP4
000003b8: DUP5
000003b9: ADD
000003ba: DUP9
000003bb: SWAP1
000003bc: MSTORE
000003bd: SWAP1
000003be: MLOAD
000003bf: CALLER
000003c0: PUSH1 0x01
000003c2: PUSH1 0xa0
000003c4: PUSH1 0x02
000003c6: EXP
000003c7: SUB
000003c8: AND
000003c9: SWAP5
000003ca: POP
000003cb: PUSH32 0x820e5e0bd7a055839c0210e84ddba311de47df61f9c489947f436bcf0f302ff1
000003ec: SWAP4
000003ed: DUP2
000003ee: SWAP1
000003ef: SUB
000003f0: SWAP1
000003f1: SWAP2
000003f2: ADD
000003f3: SWAP2
000003f4: POP
000003f5: LOG2
000003f6: JUMPDEST
000003f7: JUMPDEST
000003f8: POP
000003f9: JUMPDEST
000003fa: POP
000003fb: POP
000003fc: POP
000003fd: POP
000003fe: POP
000003ff: POP
00000400: JUMP
00000401: JUMPDEST
00000402: PUSH1 0x03
00000404: SLOAD
00000405: PUSH1 0x01
00000407: PUSH1 0xa0
00000409: PUSH1 0x02
0000040b: EXP
0000040c: SUB
0000040d: CALLER
0000040e: AND
0000040f: PUSH1 0x00
00000411: SWAP1
00000412: DUP2
00000413: MSTORE
00000414: PUSH1 0x04
00000416: PUSH1 0x20
00000418: MSTORE
00000419: PUSH1 0x40
0000041b: DUP2
0000041c: KECCAK256
0000041d: SLOAD
0000041e: SWAP1
0000041f: SWAP2
00000420: SWAP1
00000421: LT
00000422: PUSH2 0x042b
00000425: JUMPI
00000426: PUSH1 0x00
00000428: PUSH1 0x00
0000042a: REVERT
0000042b: JUMPDEST
0000042c: POP
0000042d: PUSH1 0x01
0000042f: PUSH1 0xa0
00000431: PUSH1 0x02
00000433: EXP
00000434: SUB
00000435: CALLER
00000436: AND
00000437: PUSH1 0x00
00000439: SWAP1
0000043a: DUP2
0000043b: MSTORE
0000043c: PUSH1 0x04
0000043e: PUSH1 0x20
00000440: MSTORE
00000441: PUSH1 0x40
00000443: SWAP1
00000444: KECCAK256
00000445: SLOAD
00000446: JUMPDEST
00000447: PUSH1 0x03
00000449: SLOAD
0000044a: DUP2
0000044b: LT
0000044c: ISZERO
0000044d: PUSH2 0x04fd
00000450: JUMPI
00000451: PUSH1 0x03
00000453: DUP1
00000454: SLOAD
00000455: DUP3
00000456: SWAP1
00000457: DUP2
00000458: LT
00000459: PUSH2 0x045e
0000045c: JUMPI
0000045d: INVALID
0000045e: JUMPDEST
0000045f: SWAP1
00000460: PUSH1 0x00
00000462: MSTORE
00000463: PUSH1 0x20
00000465: PUSH1 0x00
00000467: KECCAK256
00000468: SWAP1
00000469: PUSH1 0x07
0000046b: MUL
0000046c: ADD
0000046d: PUSH1 0x00
0000046f: JUMPDEST
00000470: POP
00000471: PUSH1 0x01
00000473: PUSH1 0xa0
00000475: PUSH1 0x02
00000477: EXP
00000478: SUB
00000479: CALLER
0000047a: AND
0000047b: PUSH1 0x00
0000047d: SWAP1
0000047e: DUP2
0000047f: MSTORE
00000480: PUSH1 0x06
00000482: SWAP2
00000483: SWAP1
00000484: SWAP2
00000485: ADD
00000486: PUSH1 0x20
00000488: MSTORE
00000489: PUSH1 0x40
0000048b: SWAP1
0000048c: KECCAK256
0000048d: SLOAD
0000048e: PUSH1 0xff
00000490: AND
00000491: ISZERO
00000492: DUP1
00000493: ISZERO
00000494: PUSH2 0x04c1
00000497: JUMPI
00000498: POP
00000499: PUSH1 0x03
0000049b: DUP1
0000049c: SLOAD
0000049d: DUP3
0000049e: SWAP1
0000049f: DUP2
000004a0: LT
000004a1: PUSH2 0x04a6
000004a4: JUMPI
000004a5: INVALID
000004a6: JUMPDEST
000004a7: SWAP1
000004a8: PUSH1 0x00
000004aa: MSTORE
000004ab: PUSH1 0x20
000004ad: PUSH1 0x00
000004af: KECCAK256
000004b0: SWAP1
000004b1: PUSH1 0x07
000004b3: MUL
000004b4: ADD
000004b5: PUSH1 0x00
000004b7: JUMPDEST
000004b8: POP
000004b9: PUSH1 0x05
000004bb: ADD
000004bc: SLOAD
000004bd: PUSH1 0xff
000004bf: AND
000004c0: ISZERO
000004c1: JUMPDEST
000004c2: ISZERO
000004c3: PUSH2 0x04f3
000004c6: JUMPI
000004c7: PUSH2 0x04d1
000004ca: DUP2
000004cb: PUSH1 0x01
000004cd: PUSH2 0x0952
000004d0: JUMP
000004d1: JUMPDEST
000004d2: PUSH1 0x01
000004d4: PUSH1 0xa0
000004d6: PUSH1 0x02
000004d8: EXP
000004d9: SUB
000004da: CALLER
000004db: AND
000004dc: PUSH1 0x00
000004de: SWAP1
000004df: DUP2
000004e0: MSTORE
000004e1: PUSH1 0x04
000004e3: PUSH1 0x20
000004e5: MSTORE
000004e6: PUSH1 0x40
000004e8: SWAP1
000004e9: KECCAK256
000004ea: SSTORE
000004eb: PUSH2 0x04f3
000004ee: DUP2
000004ef: PUSH2 0x056e
000004f2: JUMP
000004f3: JUMPDEST
000004f4: JUMPDEST
000004f5: JUMPDEST
000004f6: PUSH1 0x01
000004f8: ADD
000004f9: PUSH2 0x0446
000004fc: JUMP
000004fd: JUMPDEST
000004fe: JUMPDEST
000004ff: POP
00000500: JUMP
00000501: JUMPDEST
00000502: PUSH1 0x01
00000504: SLOAD
00000505: PUSH1 0x01
00000507: PUSH1 0xa0
00000509: PUSH1 0x02
0000050b: EXP
0000050c: SUB
0000050d: AND
0000050e: DUP2
0000050f: JUMP
00000510: JUMPDEST
00000511: PUSH1 0x02
00000513: SLOAD
00000514: DUP2
00000515: JUMP
00000516: JUMPDEST
00000517: PUSH1 0x03
00000519: DUP1
0000051a: SLOAD
0000051b: DUP3
0000051c: SWAP1
0000051d: DUP2
0000051e: LT
0000051f: PUSH2 0x0524
00000522: JUMPI
00000523: INVALID
00000524: JUMPDEST
00000525: SWAP1
00000526: PUSH1 0x00
00000528: MSTORE
00000529: PUSH1 0x20
0000052b: PUSH1 0x00
0000052d: KECCAK256
0000052e: SWAP1
0000052f: PUSH1 0x07
00000531: MUL
00000532: ADD
00000533: PUSH1 0x00
00000535: JUMPDEST
00000536: POP
00000537: DUP1
00000538: SLOAD
00000539: PUSH1 0x01
0000053b: DUP3
0000053c: ADD
0000053d: SLOAD
0000053e: PUSH1 0x02
00000540: DUP4
00000541: ADD
00000542: SLOAD
00000543: PUSH1 0x03
00000545: DUP5
00000546: ADD
00000547: SLOAD
00000548: PUSH1 0x04
0000054a: DUP6
0000054b: ADD
0000054c: SLOAD
0000054d: PUSH1 0x05
0000054f: SWAP1
00000550: SWAP6
00000551: ADD
00000552: SLOAD
00000553: SWAP4
00000554: SWAP6
00000555: POP
00000556: SWAP2
00000557: SWAP4
00000558: SWAP1
00000559: SWAP3
0000055a: PUSH1 0xff
0000055c: AND
0000055d: DUP7
0000055e: JUMP
0000055f: JUMPDEST
00000560: PUSH1 0x00
00000562: SLOAD
00000563: PUSH1 0x01
00000565: PUSH1 0xa0
00000567: PUSH1 0x02
00000569: EXP
0000056a: SUB
0000056b: AND
0000056c: DUP2
0000056d: JUMP
0000056e: JUMPDEST
0000056f: PUSH1 0x03
00000571: SLOAD
00000572: PUSH1 0x00
00000574: SWAP1
00000575: DUP2
00000576: SWAP1
00000577: DUP2
00000578: SWAP1
00000579: DUP5
0000057a: SWAP1
0000057b: DUP2
0000057c: LT
0000057d: PUSH2 0x0586
00000580: JUMPI
00000581: PUSH1 0x00
00000583: PUSH1 0x00
00000585: REVERT
00000586: JUMPDEST
00000587: PUSH1 0x03
00000589: DUP1
0000058a: SLOAD
0000058b: DUP7
0000058c: SWAP1
0000058d: DUP2
0000058e: LT
0000058f: PUSH2 0x0594
00000592: JUMPI
00000593: INVALID
00000594: JUMPDEST
00000595: SWAP1
00000596: PUSH1 0x00
00000598: MSTORE
00000599: PUSH1 0x20
0000059b: PUSH1 0x00
0000059d: KECCAK256
0000059e: SWAP1
0000059f: PUSH1 0x07
000005a1: MUL
000005a2: ADD
000005a3: PUSH1 0x00
000005a5: JUMPDEST
000005a6: POP
000005a7: PUSH1 0x01
000005a9: PUSH1 0xa0
000005ab: PUSH1 0x02
000005ad: EXP
000005ae: SUB
000005af: CALLER
000005b0: AND
000005b1: PUSH1 0x00
000005b3: SWAP1
000005b4: DUP2
000005b5: MSTORE
000005b6: PUSH1 0x06
000005b8: DUP3
000005b9: ADD
000005ba: PUSH1 0x20
000005bc: MSTORE
000005bd: PUSH1 0x40
000005bf: SWAP1
000005c0: KECCAK256
000005c1: SLOAD
000005c2: SWAP1
000005c3: SWAP5
000005c4: POP
000005c5: PUSH1 0xff
000005c7: AND
000005c8: ISZERO
000005c9: PUSH2 0x05d2
000005cc: JUMPI
000005cd: PUSH1 0x00
000005cf: PUSH1 0x00
000005d1: REVERT
000005d2: JUMPDEST
000005d3: PUSH1 0x05
000005d5: DUP5
000005d6: ADD
000005d7: SLOAD
000005d8: PUSH1 0xff
000005da: AND
000005db: ISZERO
000005dc: PUSH2 0x05e5
000005df: JUMPI
000005e0: PUSH1 0x00
000005e2: PUSH1 0x00
000005e4: REVERT
000005e5: JUMPDEST
000005e6: PUSH1 0x01
000005e8: SLOAD
000005e9: DUP5
000005ea: SLOAD
000005eb: PUSH1 0x40
000005ed: DUP1
000005ee: MLOAD
000005ef: PUSH1 0x00
000005f1: PUSH1 0x20
000005f3: SWAP2
000005f4: DUP3
000005f5: ADD
000005f6: DUP2
000005f7: SWAP1
000005f8: MSTORE
000005f9: DUP3
000005fa: MLOAD
000005fb: PUSH1 0xe1
000005fd: PUSH1 0x02
000005ff: EXP
00000600: PUSH4 0x277166bf
00000605: MUL
00000606: DUP2
00000607: MSTORE
00000608: PUSH1 0x01
0000060a: PUSH1 0xa0
0000060c: PUSH1 0x02
0000060e: EXP
0000060f: SUB
00000610: CALLER
00000611: DUP2
00000612: AND
00000613: PUSH1 0x04
00000615: DUP4
00000616: ADD
00000617: MSTORE
00000618: PUSH1 0x24
0000061a: DUP3
0000061b: ADD
0000061c: SWAP6
0000061d: SWAP1
0000061e: SWAP6
0000061f: MSTORE
00000620: SWAP3
00000621: MLOAD
00000622: SWAP4
00000623: SWAP1
00000624: SWAP5
00000625: AND
00000626: SWAP4
00000627: PUSH4 0x4ee2cd7e
0000062c: SWAP4
0000062d: PUSH1 0x44
0000062f: DUP1
00000630: DUP6
00000631: ADD
00000632: SWAP5
00000633: SWAP2
00000634: SWAP3
00000635: SWAP2
00000636: DUP4
00000637: SWAP1
00000638: SUB
00000639: ADD
0000063a: SWAP1
0000063b: DUP3
0000063c: SWAP1
0000063d: DUP8
0000063e: DUP1
0000063f: EXTCODESIZE
00000640: ISZERO
00000641: ISZERO
00000642: PUSH2 0x0647
00000645: JUMPI
00000646: INVALID
00000647: JUMPDEST
00000648: PUSH2 0x02c6
0000064b: GAS
0000064c: SUB
0000064d: CALL
0000064e: ISZERO
0000064f: ISZERO
00000650: PUSH2 0x0655
00000653: JUMPI
00000654: INVALID
00000655: JUMPDEST
00000656: POP
00000657: POP
00000658: PUSH1 0x40
0000065a: MLOAD
0000065b: MLOAD
0000065c: PUSH1 0x04
0000065e: DUP7
0000065f: ADD
00000660: SLOAD
00000661: PUSH1 0x02
00000663: DUP8
00000664: ADD
00000665: SLOAD
00000666: SWAP2
00000667: SWAP6
00000668: POP
00000669: PUSH2 0x068b
0000066c: SWAP3
0000066d: POP
0000066e: SWAP1
0000066f: PUSH2 0x067f
00000672: SWAP1
00000673: DUP7
00000674: SWAP1
00000675: PUSH4 0xffffffff
0000067a: PUSH2 0x096c
0000067d: AND
0000067e: JUMP
0000067f: JUMPDEST
00000680: SWAP1
00000681: PUSH4 0xffffffff
00000686: PUSH2 0x099b
00000689: AND
0000068a: JUMP
0000068b: JUMPDEST
0000068c: PUSH1 0x01
0000068e: PUSH1 0xa0
00000690: PUSH1 0x02
00000692: EXP
00000693: SUB
00000694: CALLER
00000695: AND
00000696: PUSH1 0x00
00000698: SWAP1
00000699: DUP2
0000069a: MSTORE
0000069b: PUSH1 0x06
0000069d: DUP7
0000069e: ADD
0000069f: PUSH1 0x20
000006a1: MSTORE
000006a2: PUSH1 0x40
000006a4: SWAP1
000006a5: KECCAK256
000006a6: DUP1
000006a7: SLOAD
000006a8: PUSH1 0xff
000006aa: NOT
000006ab: AND
000006ac: PUSH1 0x01
000006ae: OR
000006af: SWAP1
000006b0: SSTORE
000006b1: PUSH1 0x03
000006b3: DUP6
000006b4: ADD
000006b5: SLOAD
000006b6: SWAP1
000006b7: SWAP3
000006b8: POP
000006b9: PUSH2 0x06c2
000006bc: SWAP1
000006bd: DUP4
000006be: PUSH2 0x0952
000006c1: JUMP
000006c2: JUMPDEST
000006c3: PUSH1 0x03
000006c5: DUP6
000006c6: ADD
000006c7: SSTORE
000006c8: PUSH1 0x00
000006ca: DUP3
000006cb: GT
000006cc: ISZERO
000006cd: PUSH2 0x0741
000006d0: JUMPI
000006d1: PUSH1 0x40
000006d3: MLOAD
000006d4: PUSH1 0x01
000006d6: PUSH1 0xa0
000006d8: PUSH1 0x02
000006da: EXP
000006db: SUB
000006dc: CALLER
000006dd: AND
000006de: SWAP1
000006df: DUP4
000006e0: ISZERO
000006e1: PUSH2 0x08fc
000006e4: MUL
000006e5: SWAP1
000006e6: DUP5
000006e7: SWAP1
000006e8: PUSH1 0x00
000006ea: DUP2
000006eb: DUP2
000006ec: DUP2
000006ed: DUP6
000006ee: DUP9
000006ef: DUP9
000006f0: CALL
000006f1: SWAP4
000006f2: POP
000006f3: POP
000006f4: POP
000006f5: POP
000006f6: ISZERO
000006f7: ISZERO
000006f8: PUSH2 0x06fd
000006fb: JUMPI
000006fc: INVALID
000006fd: JUMPDEST
000006fe: PUSH1 0x40
00000700: DUP1
00000701: MLOAD
00000702: DUP7
00000703: DUP2
00000704: MSTORE
00000705: PUSH1 0x20
00000707: DUP2
00000708: ADD
00000709: DUP5
0000070a: SWAP1
0000070b: MSTORE
0000070c: DUP2
0000070d: MLOAD
0000070e: PUSH1 0x01
00000710: PUSH1 0xa0
00000712: PUSH1 0x02
00000714: EXP
00000715: SUB
00000716: CALLER
00000717: AND
00000718: SWAP3
00000719: PUSH32 0xa1c93169468f71ef26f4adf10bca8df21460f11843a01ed9c69da306e33c3847
0000073a: SWAP3
0000073b: DUP3
0000073c: SWAP1
0000073d: SUB
0000073e: ADD
0000073f: SWAP1
00000740: LOG2
00000741: JUMPDEST
00000742: JUMPDEST
00000743: JUMPDEST
00000744: POP
00000745: POP
00000746: POP
00000747: POP
00000748: POP
00000749: JUMP
0000074a: JUMPDEST
0000074b: PUSH1 0x00
0000074d: DUP1
0000074e: SLOAD
0000074f: DUP2
00000750: SWAP1
00000751: DUP2
00000752: SWAP1
00000753: CALLER
00000754: PUSH1 0x01
00000756: PUSH1 0xa0
00000758: PUSH1 0x02
0000075a: EXP
0000075b: SUB
0000075c: SWAP1
0000075d: DUP2
0000075e: AND
0000075f: SWAP2
00000760: AND
00000761: EQ
00000762: PUSH2 0x076b
00000765: JUMPI
00000766: PUSH1 0x00
00000768: PUSH1 0x00
0000076a: REVERT
0000076b: JUMPDEST
0000076c: PUSH1 0x01
0000076e: SLOAD
0000076f: PUSH1 0x40
00000771: DUP1
00000772: MLOAD
00000773: PUSH1 0x00
00000775: PUSH1 0x20
00000777: SWAP2
00000778: DUP3
00000779: ADD
0000077a: DUP2
0000077b: SWAP1
0000077c: MSTORE
0000077d: DUP3
0000077e: MLOAD
0000077f: PUSH1 0xe4
00000781: PUSH1 0x02
00000783: EXP
00000784: PUSH4 0x0981b24d
00000789: MUL
0000078a: DUP2
0000078b: MSTORE
0000078c: NUMBER
0000078d: PUSH1 0x04
0000078f: DUP3
00000790: ADD
00000791: MSTORE
00000792: SWAP3
00000793: MLOAD
00000794: PUSH1 0x01
00000796: PUSH1 0xa0
00000798: PUSH1 0x02
0000079a: EXP
0000079b: SUB
0000079c: SWAP1
0000079d: SWAP5
0000079e: AND
0000079f: SWAP4
000007a0: PUSH4 0x981b24d0
000007a5: SWAP4
000007a6: PUSH1 0x24
000007a8: DUP1
000007a9: DUP3
000007aa: ADD
000007ab: SWAP5
000007ac: SWAP4
000007ad: SWAP2
000007ae: DUP4
000007af: SWAP1
000007b0: SUB
000007b1: ADD
000007b2: SWAP1
000007b3: DUP3
000007b4: SWAP1
000007b5: DUP8
000007b6: DUP1
000007b7: EXTCODESIZE
000007b8: ISZERO
000007b9: ISZERO
000007ba: PUSH2 0x07bf
000007bd: JUMPI
000007be: INVALID
000007bf: JUMPDEST
000007c0: PUSH2 0x02c6
000007c3: GAS
000007c4: SUB
000007c5: CALL
000007c6: ISZERO
000007c7: ISZERO
000007c8: PUSH2 0x07cd
000007cb: JUMPI
000007cc: INVALID
000007cd: JUMPDEST
000007ce: POP
000007cf: POP
000007d0: PUSH1 0x40
000007d2: MLOAD
000007d3: MLOAD
000007d4: PUSH1 0x03
000007d6: SLOAD
000007d7: SWAP1
000007d8: SWAP5
000007d9: POP
000007da: SWAP3
000007db: POP
000007dc: PUSH2 0x07e8
000007df: SWAP1
000007e0: POP
000007e1: NUMBER
000007e2: PUSH1 0x01
000007e4: PUSH2 0x093b
000007e7: JUMP
000007e8: JUMPDEST
000007e9: SWAP1
000007ea: POP
000007eb: PUSH1 0x03
000007ed: DUP1
000007ee: SLOAD
000007ef: DUP1
000007f0: PUSH1 0x01
000007f2: ADD
000007f3: DUP3
000007f4: DUP2
000007f5: PUSH2 0x07fe
000007f8: SWAP2
000007f9: SWAP1
000007fa: PUSH2 0x09b8
000007fd: JUMP
000007fe: JUMPDEST
000007ff: SWAP2
00000800: PUSH1 0x00
00000802: MSTORE
00000803: PUSH1 0x20
00000805: PUSH1 0x00
00000807: KECCAK256
00000808: SWAP1
00000809: PUSH1 0x07
0000080b: MUL
0000080c: ADD
0000080d: PUSH1 0x00
0000080f: JUMPDEST
00000810: PUSH1 0xc0
00000812: PUSH1 0x40
00000814: MLOAD
00000815: SWAP1
00000816: DUP2
00000817: ADD
00000818: PUSH1 0x40
0000081a: MSTORE
0000081b: DUP1
0000081c: DUP6
0000081d: DUP2
0000081e: MSTORE
0000081f: PUSH1 0x20
00000821: ADD
00000822: PUSH2 0x0829
00000825: PUSH2 0x0936
00000828: JUMP
00000829: JUMPDEST
0000082a: DUP2
0000082b: MSTORE
0000082c: CALLVALUE
0000082d: PUSH1 0x20
0000082f: DUP1
00000830: DUP4
00000831: ADD
00000832: DUP3
00000833: SWAP1
00000834: MSTORE
00000835: PUSH1 0x00
00000837: PUSH1 0x40
00000839: DUP1
0000083a: DUP6
0000083b: ADD
0000083c: DUP3
0000083d: SWAP1
0000083e: MSTORE
0000083f: PUSH1 0x60
00000841: DUP1
00000842: DUP7
00000843: ADD
00000844: DUP14
00000845: SWAP1
00000846: MSTORE
00000847: PUSH1 0x80
00000849: SWAP6
0000084a: DUP7
0000084b: ADD
0000084c: SWAP3
0000084d: SWAP1
0000084e: SWAP3
0000084f: MSTORE
00000850: DUP6
00000851: MLOAD
00000852: DUP9
00000853: SSTORE
00000854: DUP6
00000855: DUP4
00000856: ADD
00000857: MLOAD
00000858: PUSH1 0x01
0000085a: DUP10
0000085b: ADD
0000085c: SSTORE
0000085d: DUP6
0000085e: DUP2
0000085f: ADD
00000860: MLOAD
00000861: PUSH1 0x02
00000863: DUP10
00000864: ADD
00000865: SSTORE
00000866: DUP6
00000867: DUP3
00000868: ADD
00000869: MLOAD
0000086a: PUSH1 0x03
0000086c: DUP10
0000086d: ADD
0000086e: SSTORE
0000086f: DUP6
00000870: DUP6
00000871: ADD
00000872: MLOAD
00000873: PUSH1 0x04
00000875: DUP10
00000876: ADD
00000877: SSTORE
00000878: PUSH1 0xa0
0000087a: SWAP1
0000087b: SWAP6
0000087c: ADD
0000087d: MLOAD
0000087e: PUSH1 0x05
00000880: SWAP1
00000881: SWAP8
00000882: ADD
00000883: DUP1
00000884: SLOAD
00000885: PUSH1 0xff
00000887: NOT
00000888: AND
00000889: SWAP8
0000088a: ISZERO
0000088b: ISZERO
0000088c: SWAP8
0000088d: SWAP1
0000088e: SWAP8
0000088f: OR
00000890: SWAP1
00000891: SWAP7
00000892: SSTORE
00000893: DUP4
00000894: MLOAD
00000895: DUP9
00000896: DUP2
00000897: MSTORE
00000898: SWAP1
00000899: DUP2
0000089a: ADD
0000089b: SWAP2
0000089c: SWAP1
0000089d: SWAP2
0000089e: MSTORE
0000089f: DUP1
000008a0: DUP4
000008a1: ADD
000008a2: DUP10
000008a3: SWAP1
000008a4: MSTORE
000008a5: SWAP4
000008a6: DUP5
000008a7: ADD
000008a8: DUP8
000008a9: SWAP1
000008aa: MSTORE
000008ab: SWAP1
000008ac: MLOAD
000008ad: CALLER
000008ae: PUSH1 0x01
000008b0: PUSH1 0xa0
000008b2: PUSH1 0x02
000008b4: EXP
000008b5: SUB
000008b6: AND
000008b7: SWAP5
000008b8: POP
000008b9: PUSH32 0xcbf89ed8b63aa0a8f6e744e4023554f41dc830838d138eb2d4099cbcfe4a0831
000008da: SWAP4
000008db: DUP2
000008dc: SWAP1
000008dd: SUB
000008de: SWAP1
000008df: SWAP2
000008e0: ADD
000008e1: SWAP2
000008e2: POP
000008e3: LOG2
000008e4: JUMPDEST
000008e5: JUMPDEST
000008e6: POP
000008e7: POP
000008e8: POP
000008e9: JUMP
000008ea: JUMPDEST
000008eb: PUSH1 0x00
000008ed: SLOAD
000008ee: CALLER
000008ef: PUSH1 0x01
000008f1: PUSH1 0xa0
000008f3: PUSH1 0x02
000008f5: EXP
000008f6: SUB
000008f7: SWAP1
000008f8: DUP2
000008f9: AND
000008fa: SWAP2
000008fb: AND
000008fc: EQ
000008fd: PUSH2 0x0906
00000900: JUMPI
00000901: PUSH1 0x00
00000903: PUSH1 0x00
00000905: REVERT
00000906: JUMPDEST
00000907: PUSH1 0x01
00000909: PUSH1 0xa0
0000090b: PUSH1 0x02
0000090d: EXP
0000090e: SUB
0000090f: DUP2
00000910: AND
00000911: ISZERO
00000912: PUSH2 0x04fd
00000915: JUMPI
00000916: PUSH1 0x00
00000918: DUP1
00000919: SLOAD
0000091a: PUSH1 0x01
0000091c: PUSH1 0xa0
0000091e: PUSH1 0x02
00000920: EXP
00000921: SUB
00000922: NOT
00000923: AND
00000924: PUSH1 0x01
00000926: PUSH1 0xa0
00000928: PUSH1 0x02
0000092a: EXP
0000092b: SUB
0000092c: DUP4
0000092d: AND
0000092e: OR
0000092f: SWAP1
00000930: SSTORE
00000931: JUMPDEST
00000932: JUMPDEST
00000933: JUMPDEST
00000934: POP
00000935: JUMP
00000936: JUMPDEST
00000937: TIMESTAMP
00000938: JUMPDEST
00000939: SWAP1
0000093a: JUMP
0000093b: JUMPDEST
0000093c: PUSH1 0x00
0000093e: DUP3
0000093f: DUP3
00000940: GT
00000941: ISZERO
00000942: PUSH2 0x0947
00000945: JUMPI
00000946: INVALID
00000947: JUMPDEST
00000948: POP
00000949: DUP1
0000094a: DUP3
0000094b: SUB
0000094c: JUMPDEST
0000094d: SWAP3
0000094e: SWAP2
0000094f: POP
00000950: POP
00000951: JUMP
00000952: JUMPDEST
00000953: PUSH1 0x00
00000955: DUP3
00000956: DUP3
00000957: ADD
00000958: DUP4
00000959: DUP2
0000095a: LT
0000095b: ISZERO
0000095c: PUSH2 0x0961
0000095f: JUMPI
00000960: INVALID
00000961: JUMPDEST
00000962: DUP1
00000963: SWAP2
00000964: POP
00000965: JUMPDEST
00000966: POP
00000967: SWAP3
00000968: SWAP2
00000969: POP
0000096a: POP
0000096b: JUMP
0000096c: JUMPDEST
0000096d: PUSH1 0x00
0000096f: DUP3
00000970: DUP3
00000971: MUL
00000972: DUP4
00000973: ISZERO
00000974: DUP1
00000975: PUSH2 0x0988
00000978: JUMPI
00000979: POP
0000097a: DUP3
0000097b: DUP5
0000097c: DUP3
0000097d: DUP2
0000097e: ISZERO
0000097f: ISZERO
00000980: PUSH2 0x0985
00000983: JUMPI
00000984: INVALID
00000985: JUMPDEST
00000986: DIV
00000987: EQ
00000988: JUMPDEST
00000989: ISZERO
0000098a: ISZERO
0000098b: PUSH2 0x0961
0000098e: JUMPI
0000098f: INVALID
00000990: JUMPDEST
00000991: DUP1
00000992: SWAP2
00000993: POP
00000994: JUMPDEST
00000995: POP
00000996: SWAP3
00000997: SWAP2
00000998: POP
00000999: POP
0000099a: JUMP
0000099b: JUMPDEST
0000099c: PUSH1 0x00
0000099e: PUSH1 0x00
000009a0: DUP3
000009a1: DUP5
000009a2: DUP2
000009a3: ISZERO
000009a4: ISZERO
000009a5: PUSH2 0x09aa
000009a8: JUMPI
000009a9: INVALID
000009aa: JUMPDEST
000009ab: DIV
000009ac: SWAP1
000009ad: POP
000009ae: DUP1
000009af: SWAP2
000009b0: POP
000009b1: JUMPDEST
000009b2: POP
000009b3: SWAP3
000009b4: SWAP2
000009b5: POP
000009b6: POP
000009b7: JUMP
000009b8: JUMPDEST
000009b9: DUP2
000009ba: SLOAD
000009bb: DUP2
000009bc: DUP4
000009bd: SSTORE
000009be: DUP2
000009bf: DUP2
000009c0: ISZERO
000009c1: GT
000009c2: PUSH2 0x08e4
000009c5: JUMPI
000009c6: PUSH1 0x07
000009c8: MUL
000009c9: DUP2
000009ca: PUSH1 0x07
000009cc: MUL
000009cd: DUP4
000009ce: PUSH1 0x00
000009d0: MSTORE
000009d1: PUSH1 0x20
000009d3: PUSH1 0x00
000009d5: KECCAK256
000009d6: SWAP2
000009d7: DUP3
000009d8: ADD
000009d9: SWAP2
000009da: ADD
000009db: PUSH2 0x08e4
000009de: SWAP2
000009df: SWAP1
000009e0: PUSH2 0x09ea
000009e3: JUMP
000009e4: JUMPDEST
000009e5: JUMPDEST
000009e6: POP
000009e7: POP
000009e8: POP
000009e9: JUMP
000009ea: JUMPDEST
000009eb: PUSH2 0x0938
000009ee: SWAP2
000009ef: SWAP1
000009f0: JUMPDEST
000009f1: DUP1
000009f2: DUP3
000009f3: GT
000009f4: ISZERO
000009f5: PUSH2 0x0a2b
000009f8: JUMPI
000009f9: PUSH1 0x00
000009fb: DUP1
000009fc: DUP3
000009fd: SSTORE
000009fe: PUSH1 0x01
00000a00: DUP3
00000a01: ADD
00000a02: DUP2
00000a03: SWAP1
00000a04: SSTORE
00000a05: PUSH1 0x02
00000a07: DUP3
00000a08: ADD
00000a09: DUP2
00000a0a: SWAP1
00000a0b: SSTORE
00000a0c: PUSH1 0x03
00000a0e: DUP3
00000a0f: ADD
00000a10: DUP2
00000a11: SWAP1
00000a12: SSTORE
00000a13: PUSH1 0x04
00000a15: DUP3
00000a16: ADD
00000a17: SSTORE
00000a18: PUSH1 0x05
00000a1a: DUP2
00000a1b: ADD
00000a1c: DUP1
00000a1d: SLOAD
00000a1e: PUSH1 0xff
00000a20: NOT
00000a21: AND
00000a22: SWAP1
00000a23: SSTORE
00000a24: PUSH1 0x07
00000a26: ADD
00000a27: PUSH2 0x09f0
00000a2a: JUMP
00000a2b: JUMPDEST
00000a2c: POP
00000a2d: SWAP1
00000a2e: JUMP
00000a2f: JUMPDEST
00000a30: SWAP1
00000a31: JUMP
00000a32: STOP
00000a33: LOG1
00000a34: PUSH6 0x627a7a723058
00000a3b: KECCAK256
00000a3c: UNKNOWN(0xA9)
00000a3d: MCOPY
00000a3e: EXTCODECOPY
00000a3f: SLOAD
00000a40: BLOBBASEFEE
00000a41: SWAP2
00000a42: DIV
00000a43: UNKNOWN(0xE6)
00000a44: UNKNOWN(0xBA)
00000a45: CODESIZE
00000a46: PUSH3 0xa084d8
00000a4a: ORIGIN
00000a4b: UNKNOWN(0xE7)
00000a4c: UNKNOWN(0xDF)
00000a4d: CREATE2
00000a4e: UNKNOWN(0x4D)
00000a4f: UNKNOWN(0xEF)
00000a50: UNKNOWN(0xDE)
00000a51: PUSH23
View stderr
Warning: This is a nightly build of Foundry. It is recommended to use the latest stable version. To mute this warning set `FOUNDRY_DISABLE_NIGHTLY_WARNING` in your environment.

Findings

validated = confirmed for call sinks; sink observed for others
Severity Category Tool Title Confidence Validated Confirmed Details
high auth detector Authorization based on tx.origin 70 no
view
validation_json
{
    "reason": "missing sink mapping",
    "status": "no_sink"
}
witness_json
{
    "notes": "heuristic witness; entrypoints are best-effort selectors with zeroed calldata",
    "constraints": [],
    "entrypoints": [
        {
            "calldata": "0x22c9427e",
            "selector": "0x22c9427e",
            "calldata_variants": [
                "0x22c9427e",
                "0x22c9427e0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x30e1f16f",
            "selector": "0x30e1f16f",
            "calldata_variants": [
                "0x30e1f16f",
                "0x30e1f16f0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x6423b5f0",
            "selector": "0x6423b5f0",
            "calldata_variants": [
                "0x6423b5f0",
                "0x6423b5f00000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x7c1a35d7",
            "selector": "0x7c1a35d7",
            "calldata_variants": [
                "0x7c1a35d7",
                "0x7c1a35d70000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x814b3fe0",
            "selector": "0x814b3fe0",
            "calldata_variants": [
                "0x814b3fe0",
                "0x814b3fe00000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x8da5cb5b",
            "selector": "0x8da5cb5b",
            "calldata_variants": [
                "0x8da5cb5b",
                "0x8da5cb5b0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x9abd3572",
            "selector": "0x9abd3572",
            "calldata_variants": [
                "0x9abd3572",
                "0x9abd35720000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xa289d187",
            "selector": "0xa289d187",
            "calldata_variants": [
                "0xa289d187",
                "0xa289d1870000000000000000000000000000000000000000000000000000000000000000"
            ]
        }
    ]
}
evidence_json
{
    "guards_detected": [
        {
            "pc": 2634,
            "type": "tx_origin_used"
        }
    ]
}
medium other detector Untrusted CALL target/value reachable 45 no no
view
trace_id: 0x7ece32c1b3decfd96deae9d410cddce1fc533a5cdb8df83fb4aadaa0bc1a377a
call_targets: 0x6822aaf4ab22e6cca8352a927b9ae0a8fdb58d9d
target_varies: no
classification: constant_target
validation_json
{
    "sink": "CALL",
    "errors": 0,
    "status": "sink_reached",
    "attempts": 1,
    "trace_id": "0x7ece32c1b3decfd96deae9d410cddce1fc533a5cdb8df83fb4aadaa0bc1a377a",
    "confirmed": false,
    "trace_mode": "callTracer",
    "call_targets": [
        "0x6822aaf4ab22e6cca8352a927b9ae0a8fdb58d9d"
    ],
    "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": "0x22c9427e",
            "selector": "0x22c9427e",
            "calldata_variants": [
                "0x22c9427e",
                "0x22c9427e0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x30e1f16f",
            "selector": "0x30e1f16f",
            "calldata_variants": [
                "0x30e1f16f",
                "0x30e1f16f0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x6423b5f0",
            "selector": "0x6423b5f0",
            "calldata_variants": [
                "0x6423b5f0",
                "0x6423b5f00000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x7c1a35d7",
            "selector": "0x7c1a35d7",
            "calldata_variants": [
                "0x7c1a35d7",
                "0x7c1a35d70000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x814b3fe0",
            "selector": "0x814b3fe0",
            "calldata_variants": [
                "0x814b3fe0",
                "0x814b3fe00000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x8da5cb5b",
            "selector": "0x8da5cb5b",
            "calldata_variants": [
                "0x8da5cb5b",
                "0x8da5cb5b0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x9abd3572",
            "selector": "0x9abd3572",
            "calldata_variants": [
                "0x9abd3572",
                "0x9abd35720000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xa289d187",
            "selector": "0xa289d187",
            "calldata_variants": [
                "0xa289d187",
                "0xa289d1870000000000000000000000000000000000000000000000000000000000000000"
            ]
        }
    ]
}
evidence_json
{
    "examples": [
        {
            "pc": 707,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        },
        {
            "pc": 1613,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        },
        {
            "pc": 1776,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        }
    ],
    "call_count": 4,
    "guards_detected": [
        {
            "pc": 2634,
            "type": "tx_origin_used"
        }
    ],
    "untrusted_call_count": 4
}
medium other detector ETH value transfer possible 40 no no
view
trace_id: 0x7ece32c1b3decfd96deae9d410cddce1fc533a5cdb8df83fb4aadaa0bc1a377a
call_targets: 0x6822aaf4ab22e6cca8352a927b9ae0a8fdb58d9d
target_varies: no
classification: constant_target
validation_json
{
    "sink": "CALL",
    "errors": 0,
    "status": "sink_reached",
    "attempts": 1,
    "trace_id": "0x7ece32c1b3decfd96deae9d410cddce1fc533a5cdb8df83fb4aadaa0bc1a377a",
    "confirmed": false,
    "trace_mode": "callTracer",
    "call_targets": [
        "0x6822aaf4ab22e6cca8352a927b9ae0a8fdb58d9d"
    ],
    "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": "0x22c9427e",
            "selector": "0x22c9427e",
            "calldata_variants": [
                "0x22c9427e",
                "0x22c9427e0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x30e1f16f",
            "selector": "0x30e1f16f",
            "calldata_variants": [
                "0x30e1f16f",
                "0x30e1f16f0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x6423b5f0",
            "selector": "0x6423b5f0",
            "calldata_variants": [
                "0x6423b5f0",
                "0x6423b5f00000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x7c1a35d7",
            "selector": "0x7c1a35d7",
            "calldata_variants": [
                "0x7c1a35d7",
                "0x7c1a35d70000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x814b3fe0",
            "selector": "0x814b3fe0",
            "calldata_variants": [
                "0x814b3fe0",
                "0x814b3fe00000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x8da5cb5b",
            "selector": "0x8da5cb5b",
            "calldata_variants": [
                "0x8da5cb5b",
                "0x8da5cb5b0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x9abd3572",
            "selector": "0x9abd3572",
            "calldata_variants": [
                "0x9abd3572",
                "0x9abd35720000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xa289d187",
            "selector": "0xa289d187",
            "calldata_variants": [
                "0xa289d187",
                "0xa289d1870000000000000000000000000000000000000000000000000000000000000000"
            ]
        }
    ]
}
evidence_json
{
    "examples": [
        {
            "pc": 707,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        },
        {
            "pc": 1613,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        },
        {
            "pc": 1776,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        }
    ],
    "eth_value_calls": 4,
    "guards_detected": [
        {
            "pc": 2634,
            "type": "tx_origin_used"
        }
    ]
}
medium other detector CREATE/CREATE2 reachable 45 no no
view
trace_id: 0x62e54f98a02056e13b828e2f862903868189c2b6b8c2475cba8774d94e2522f0
validation_json
{
    "sink": "CREATE",
    "errors": 0,
    "status": "unknown",
    "attempts": 18,
    "trace_id": "0x62e54f98a02056e13b828e2f862903868189c2b6b8c2475cba8774d94e2522f0",
    "confirmed": false,
    "trace_mode": "structLogs",
    "call_targets": null,
    "matched_probe": null,
    "target_varies": null,
    "classification": "no_sink"
}
witness_json
{
    "notes": "heuristic witness; entrypoints are best-effort selectors with zeroed calldata",
    "constraints": [],
    "entrypoints": [
        {
            "calldata": "0x22c9427e",
            "selector": "0x22c9427e",
            "calldata_variants": [
                "0x22c9427e",
                "0x22c9427e0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x30e1f16f",
            "selector": "0x30e1f16f",
            "calldata_variants": [
                "0x30e1f16f",
                "0x30e1f16f0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x6423b5f0",
            "selector": "0x6423b5f0",
            "calldata_variants": [
                "0x6423b5f0",
                "0x6423b5f00000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x7c1a35d7",
            "selector": "0x7c1a35d7",
            "calldata_variants": [
                "0x7c1a35d7",
                "0x7c1a35d70000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x814b3fe0",
            "selector": "0x814b3fe0",
            "calldata_variants": [
                "0x814b3fe0",
                "0x814b3fe00000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x8da5cb5b",
            "selector": "0x8da5cb5b",
            "calldata_variants": [
                "0x8da5cb5b",
                "0x8da5cb5b0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x9abd3572",
            "selector": "0x9abd3572",
            "calldata_variants": [
                "0x9abd3572",
                "0x9abd35720000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xa289d187",
            "selector": "0xa289d187",
            "calldata_variants": [
                "0xa289d187",
                "0xa289d1870000000000000000000000000000000000000000000000000000000000000000"
            ]
        }
    ]
}
evidence_json
{
    "create_count": 0,
    "create2_count": 1
}