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

Analysis Run

019b3836-4be5-7069-95a3-60d3a6cb6c88

complete
Chain ID
1
Address
Block Number
Created
Fri, Dec 19, 2025 8:04 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
6971 artifact.fetch complete 1 / 3 4 months ago
6972 tool.cast_disasm complete 1 / 3 4 months ago
50756 analysis.bundle complete 1 / 3 2 weeks ago
50757 capability.graph complete 1 / 3 2 weeks ago
50758 detector.run complete 1 / 3 2 weeks ago
50759 validation.fork complete 1 / 3 2 weeks 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
1
CREATE2
0
CALL-family (heavy)
5
EXT*/BALANCE
0
Total opcodes
2995
Flags
selfdestruct_present
View cast disassembly output
00000000: PUSH1 0x60
00000002: PUSH1 0x40
00000004: MSTORE
00000005: CALLDATASIZE
00000006: ISZERO
00000007: PUSH2 0x00cf
0000000a: JUMPI
0000000b: PUSH1 0xe0
0000000d: PUSH1 0x02
0000000f: EXP
00000010: PUSH1 0x00
00000012: CALLDATALOAD
00000013: DIV
00000014: PUSH4 0x173825d9
00000019: DUP2
0000001a: EQ
0000001b: PUSH2 0x01a5
0000001e: JUMPI
0000001f: DUP1
00000020: PUSH4 0x2f54bf6e
00000025: EQ
00000026: PUSH2 0x01f9
00000029: JUMPI
0000002a: DUP1
0000002b: PUSH4 0x4123cb6b
00000030: EQ
00000031: PUSH2 0x0221
00000034: JUMPI
00000035: DUP1
00000036: PUSH4 0x5c52c2f5
0000003b: EQ
0000003c: PUSH2 0x022a
0000003f: JUMPI
00000040: DUP1
00000041: PUSH4 0x632a9a52
00000046: EQ
00000047: PUSH2 0x0254
0000004a: JUMPI
0000004b: DUP1
0000004c: PUSH4 0x7065cb48
00000051: EQ
00000052: PUSH2 0x02ca
00000055: JUMPI
00000056: DUP1
00000057: PUSH4 0x746c9171
0000005c: EQ
0000005d: PUSH2 0x02f7
00000060: JUMPI
00000061: DUP1
00000062: PUSH4 0x797af627
00000067: EQ
00000068: PUSH2 0x0300
0000006b: JUMPI
0000006c: DUP1
0000006d: PUSH4 0xb20d30a9
00000072: EQ
00000073: PUSH2 0x0313
00000076: JUMPI
00000077: DUP1
00000078: PUSH4 0xb61d27f6
0000007d: EQ
0000007e: PUSH2 0x0340
00000081: JUMPI
00000082: DUP1
00000083: PUSH4 0xb75c7dc6
00000088: EQ
00000089: PUSH2 0x0361
0000008c: JUMPI
0000008d: DUP1
0000008e: PUSH4 0xba51a6df
00000093: EQ
00000094: PUSH2 0x0390
00000097: JUMPI
00000098: DUP1
00000099: PUSH4 0xc2cf7326
0000009e: EQ
0000009f: PUSH2 0x03bd
000000a2: JUMPI
000000a3: DUP1
000000a4: PUSH4 0xcbf0b0c0
000000a9: EQ
000000aa: PUSH2 0x03fb
000000ad: JUMPI
000000ae: DUP1
000000af: PUSH4 0xdd287692
000000b4: EQ
000000b5: PUSH2 0x0428
000000b8: JUMPI
000000b9: DUP1
000000ba: PUSH4 0xf00d4b5d
000000bf: EQ
000000c0: PUSH2 0x043b
000000c3: JUMPI
000000c4: DUP1
000000c5: PUSH4 0xf1736d86
000000ca: EQ
000000cb: PUSH2 0x046d
000000ce: JUMPI
000000cf: JUMPDEST
000000d0: PUSH2 0x0477
000000d3: PUSH2 0x0108
000000d6: SLOAD
000000d7: PUSH1 0x40
000000d9: DUP1
000000da: MLOAD
000000db: PUSH32 0x82661dc400000000000000000000000000000000000000000000000000000000
000000fc: DUP2
000000fd: MSTORE
000000fe: PUSH1 0x50
00000100: PUSH1 0x04
00000102: DUP3
00000103: ADD
00000104: MSTORE
00000105: PUSH20 0xc4dc238f4ff143480f64456e0c4837e1c802934e
0000011a: PUSH1 0x24
0000011c: DUP3
0000011d: ADD
0000011e: MSTORE
0000011f: SWAP1
00000120: MLOAD
00000121: PUSH1 0x01
00000123: PUSH1 0xa0
00000125: PUSH1 0x02
00000127: EXP
00000128: SUB
00000129: SWAP1
0000012a: SWAP3
0000012b: AND
0000012c: SWAP2
0000012d: DUP3
0000012e: SWAP2
0000012f: PUSH4 0x82661dc4
00000134: SWAP2
00000135: PUSH1 0x44
00000137: DUP3
00000138: DUP2
00000139: ADD
0000013a: SWAP3
0000013b: PUSH1 0x20
0000013d: SWAP3
0000013e: SWAP2
0000013f: SWAP1
00000140: DUP3
00000141: SWAP1
00000142: SUB
00000143: ADD
00000144: DUP2
00000145: PUSH1 0x00
00000147: DUP8
00000148: PUSH2 0x61da
0000014b: GAS
0000014c: SUB
0000014d: CALL
0000014e: ISZERO
0000014f: PUSH2 0x0002
00000152: JUMPI
00000153: POP
00000154: POP
00000155: POP
00000156: PUSH1 0x00
00000158: CALLVALUE
00000159: GT
0000015a: ISZERO
0000015b: PUSH2 0x01a2
0000015e: JUMPI
0000015f: PUSH1 0x40
00000161: DUP1
00000162: MLOAD
00000163: CALLER
00000164: PUSH1 0x01
00000166: PUSH1 0xa0
00000168: PUSH1 0x02
0000016a: EXP
0000016b: SUB
0000016c: AND
0000016d: DUP2
0000016e: MSTORE
0000016f: CALLVALUE
00000170: PUSH1 0x20
00000172: DUP3
00000173: ADD
00000174: MSTORE
00000175: DUP2
00000176: MLOAD
00000177: PUSH32 0xe1fffcc4923d04b559f4d29a8bfc6cda04eb5b0d3c460751c2402c5c5cc9109c
00000198: SWAP3
00000199: SWAP2
0000019a: DUP2
0000019b: SWAP1
0000019c: SUB
0000019d: SWAP1
0000019e: SWAP2
0000019f: ADD
000001a0: SWAP1
000001a1: LOG1
000001a2: JUMPDEST
000001a3: POP
000001a4: JUMP
000001a5: JUMPDEST
000001a6: PUSH2 0x0477
000001a9: PUSH1 0x04
000001ab: CALLDATALOAD
000001ac: PUSH1 0x00
000001ae: PUSH1 0x00
000001b0: CALLDATASIZE
000001b1: PUSH1 0x40
000001b3: MLOAD
000001b4: DUP1
000001b5: DUP4
000001b6: DUP4
000001b7: DUP1
000001b8: DUP3
000001b9: DUP5
000001ba: CALLDATACOPY
000001bb: DUP3
000001bc: ADD
000001bd: SWAP2
000001be: POP
000001bf: POP
000001c0: SWAP3
000001c1: POP
000001c2: POP
000001c3: POP
000001c4: PUSH1 0x40
000001c6: MLOAD
000001c7: DUP1
000001c8: SWAP2
000001c9: SUB
000001ca: SWAP1
000001cb: KECCAK256
000001cc: PUSH2 0x0789
000001cf: DUP2
000001d0: JUMPDEST
000001d1: CALLER
000001d2: PUSH1 0x01
000001d4: PUSH1 0xa0
000001d6: PUSH1 0x02
000001d8: EXP
000001d9: SUB
000001da: AND
000001db: PUSH1 0x00
000001dd: SWAP1
000001de: DUP2
000001df: MSTORE
000001e0: PUSH2 0x0102
000001e3: PUSH1 0x20
000001e5: MSTORE
000001e6: PUSH1 0x40
000001e8: DUP2
000001e9: KECCAK256
000001ea: SLOAD
000001eb: DUP2
000001ec: DUP1
000001ed: DUP3
000001ee: DUP2
000001ef: EQ
000001f0: ISZERO
000001f1: PUSH2 0x0da5
000001f4: JUMPI
000001f5: PUSH2 0x0efe
000001f8: JUMP
000001f9: JUMPDEST
000001fa: PUSH2 0x0479
000001fd: PUSH1 0x04
000001ff: CALLDATALOAD
00000200: JUMPDEST
00000201: PUSH1 0x01
00000203: PUSH1 0xa0
00000205: PUSH1 0x02
00000207: EXP
00000208: SUB
00000209: DUP2
0000020a: AND
0000020b: PUSH1 0x00
0000020d: SWAP1
0000020e: DUP2
0000020f: MSTORE
00000210: PUSH2 0x0102
00000213: PUSH1 0x20
00000215: MSTORE
00000216: PUSH1 0x40
00000218: DUP2
00000219: KECCAK256
0000021a: SLOAD
0000021b: GT
0000021c: JUMPDEST
0000021d: SWAP2
0000021e: SWAP1
0000021f: POP
00000220: JUMP
00000221: JUMPDEST
00000222: PUSH2 0x0479
00000225: PUSH1 0x01
00000227: SLOAD
00000228: DUP2
00000229: JUMP
0000022a: JUMPDEST
0000022b: PUSH2 0x0477
0000022e: PUSH1 0x00
00000230: CALLDATASIZE
00000231: PUSH1 0x40
00000233: MLOAD
00000234: DUP1
00000235: DUP4
00000236: DUP4
00000237: DUP1
00000238: DUP3
00000239: DUP5
0000023a: CALLDATACOPY
0000023b: DUP3
0000023c: ADD
0000023d: SWAP2
0000023e: POP
0000023f: POP
00000240: SWAP3
00000241: POP
00000242: POP
00000243: POP
00000244: PUSH1 0x40
00000246: MLOAD
00000247: DUP1
00000248: SWAP2
00000249: SUB
0000024a: SWAP1
0000024b: KECCAK256
0000024c: PUSH2 0x08ca
0000024f: DUP2
00000250: PUSH2 0x01d0
00000253: JUMP
00000254: JUMPDEST
00000255: PUSH1 0x40
00000257: DUP1
00000258: MLOAD
00000259: PUSH2 0x0108
0000025c: SLOAD
0000025d: PUSH32 0xc9d27afe00000000000000000000000000000000000000000000000000000000
0000027e: DUP3
0000027f: MSTORE
00000280: PUSH1 0x50
00000282: PUSH1 0x04
00000284: DUP4
00000285: ADD
00000286: MSTORE
00000287: PUSH1 0x01
00000289: PUSH1 0x24
0000028b: DUP4
0000028c: ADD
0000028d: MSTORE
0000028e: SWAP2
0000028f: MLOAD
00000290: PUSH2 0x0477
00000293: SWAP3
00000294: PUSH1 0x01
00000296: PUSH1 0xa0
00000298: PUSH1 0x02
0000029a: EXP
0000029b: SUB
0000029c: AND
0000029d: SWAP2
0000029e: DUP3
0000029f: SWAP2
000002a0: PUSH4 0xc9d27afe
000002a5: SWAP2
000002a6: PUSH1 0x44
000002a8: DUP2
000002a9: DUP2
000002aa: ADD
000002ab: SWAP3
000002ac: PUSH1 0x20
000002ae: SWAP3
000002af: SWAP1
000002b0: SWAP2
000002b1: SWAP1
000002b2: DUP3
000002b3: SWAP1
000002b4: SUB
000002b5: ADD
000002b6: DUP2
000002b7: PUSH1 0x00
000002b9: DUP8
000002ba: PUSH2 0x61da
000002bd: GAS
000002be: SUB
000002bf: CALL
000002c0: ISZERO
000002c1: PUSH2 0x0002
000002c4: JUMPI
000002c5: POP
000002c6: POP
000002c7: POP
000002c8: POP
000002c9: JUMP
000002ca: JUMPDEST
000002cb: PUSH2 0x0477
000002ce: PUSH1 0x04
000002d0: CALLDATALOAD
000002d1: PUSH1 0x00
000002d3: CALLDATASIZE
000002d4: PUSH1 0x40
000002d6: MLOAD
000002d7: DUP1
000002d8: DUP4
000002d9: DUP4
000002da: DUP1
000002db: DUP3
000002dc: DUP5
000002dd: CALLDATACOPY
000002de: DUP3
000002df: ADD
000002e0: SWAP2
000002e1: POP
000002e2: POP
000002e3: SWAP3
000002e4: POP
000002e5: POP
000002e6: POP
000002e7: PUSH1 0x40
000002e9: MLOAD
000002ea: DUP1
000002eb: SWAP2
000002ec: SUB
000002ed: SWAP1
000002ee: KECCAK256
000002ef: PUSH2 0x0682
000002f2: DUP2
000002f3: PUSH2 0x01d0
000002f6: JUMP
000002f7: JUMPDEST
000002f8: PUSH2 0x0479
000002fb: PUSH1 0x00
000002fd: SLOAD
000002fe: DUP2
000002ff: JUMP
00000300: JUMPDEST
00000301: PUSH2 0x0479
00000304: PUSH1 0x04
00000306: CALLDATALOAD
00000307: JUMPDEST
00000308: PUSH1 0x00
0000030a: DUP2
0000030b: PUSH2 0x0b66
0000030e: DUP2
0000030f: PUSH2 0x01d0
00000312: JUMP
00000313: JUMPDEST
00000314: PUSH2 0x0477
00000317: PUSH1 0x04
00000319: CALLDATALOAD
0000031a: PUSH1 0x00
0000031c: CALLDATASIZE
0000031d: PUSH1 0x40
0000031f: MLOAD
00000320: DUP1
00000321: DUP4
00000322: DUP4
00000323: DUP1
00000324: DUP3
00000325: DUP5
00000326: CALLDATACOPY
00000327: DUP3
00000328: ADD
00000329: SWAP2
0000032a: POP
0000032b: POP
0000032c: SWAP3
0000032d: POP
0000032e: POP
0000032f: POP
00000330: PUSH1 0x40
00000332: MLOAD
00000333: DUP1
00000334: SWAP2
00000335: SUB
00000336: SWAP1
00000337: KECCAK256
00000338: PUSH2 0x08be
0000033b: DUP2
0000033c: PUSH2 0x01d0
0000033f: JUMP
00000340: JUMPDEST
00000341: PUSH2 0x0479
00000344: PUSH1 0x04
00000346: DUP1
00000347: CALLDATALOAD
00000348: SWAP1
00000349: PUSH1 0x24
0000034b: DUP1
0000034c: CALLDATALOAD
0000034d: SWAP2
0000034e: PUSH1 0x44
00000350: CALLDATALOAD
00000351: SWAP2
00000352: DUP3
00000353: ADD
00000354: SWAP2
00000355: ADD
00000356: CALLDATALOAD
00000357: PUSH1 0x00
00000359: PUSH2 0x08e9
0000035c: CALLER
0000035d: PUSH2 0x0200
00000360: JUMP
00000361: JUMPDEST
00000362: PUSH2 0x0477
00000365: PUSH1 0x04
00000367: CALLDATALOAD
00000368: CALLER
00000369: PUSH1 0x01
0000036b: PUSH1 0xa0
0000036d: PUSH1 0x02
0000036f: EXP
00000370: SUB
00000371: AND
00000372: PUSH1 0x00
00000374: SWAP1
00000375: DUP2
00000376: MSTORE
00000377: PUSH2 0x0102
0000037a: PUSH1 0x20
0000037c: MSTORE
0000037d: PUSH1 0x40
0000037f: DUP2
00000380: KECCAK256
00000381: SLOAD
00000382: SWAP1
00000383: DUP1
00000384: DUP3
00000385: DUP2
00000386: EQ
00000387: ISZERO
00000388: PUSH2 0x04a8
0000038b: JUMPI
0000038c: PUSH2 0x0527
0000038f: JUMP
00000390: JUMPDEST
00000391: PUSH2 0x0477
00000394: PUSH1 0x04
00000396: CALLDATALOAD
00000397: PUSH1 0x00
00000399: CALLDATASIZE
0000039a: PUSH1 0x40
0000039c: MLOAD
0000039d: DUP1
0000039e: DUP4
0000039f: DUP4
000003a0: DUP1
000003a1: DUP3
000003a2: DUP5
000003a3: CALLDATACOPY
000003a4: DUP3
000003a5: ADD
000003a6: SWAP2
000003a7: POP
000003a8: POP
000003a9: SWAP3
000003aa: POP
000003ab: POP
000003ac: POP
000003ad: PUSH1 0x40
000003af: MLOAD
000003b0: DUP1
000003b1: SWAP2
000003b2: SUB
000003b3: SWAP1
000003b4: KECCAK256
000003b5: PUSH2 0x0847
000003b8: DUP2
000003b9: PUSH2 0x01d0
000003bc: JUMP
000003bd: JUMPDEST
000003be: PUSH2 0x0479
000003c1: PUSH1 0x04
000003c3: CALLDATALOAD
000003c4: PUSH1 0x24
000003c6: CALLDATALOAD
000003c7: PUSH1 0x00
000003c9: DUP3
000003ca: DUP2
000003cb: MSTORE
000003cc: PUSH2 0x0103
000003cf: PUSH1 0x20
000003d1: SWAP1
000003d2: DUP2
000003d3: MSTORE
000003d4: PUSH1 0x40
000003d6: DUP1
000003d7: DUP4
000003d8: KECCAK256
000003d9: PUSH1 0x01
000003db: PUSH1 0xa0
000003dd: PUSH1 0x02
000003df: EXP
000003e0: SUB
000003e1: DUP6
000003e2: AND
000003e3: DUP5
000003e4: MSTORE
000003e5: PUSH2 0x0102
000003e8: SWAP1
000003e9: SWAP3
000003ea: MSTORE
000003eb: DUP3
000003ec: KECCAK256
000003ed: SLOAD
000003ee: DUP3
000003ef: DUP2
000003f0: DUP2
000003f1: EQ
000003f2: ISZERO
000003f3: PUSH2 0x08a0
000003f6: JUMPI
000003f7: PUSH2 0x08b5
000003fa: JUMP
000003fb: JUMPDEST
000003fc: PUSH2 0x0477
000003ff: PUSH1 0x04
00000401: CALLDATALOAD
00000402: PUSH1 0x00
00000404: CALLDATASIZE
00000405: PUSH1 0x40
00000407: MLOAD
00000408: DUP1
00000409: DUP4
0000040a: DUP4
0000040b: DUP1
0000040c: DUP3
0000040d: DUP5
0000040e: CALLDATACOPY
0000040f: DUP3
00000410: ADD
00000411: SWAP2
00000412: POP
00000413: POP
00000414: SWAP3
00000415: POP
00000416: POP
00000417: POP
00000418: PUSH1 0x40
0000041a: MLOAD
0000041b: DUP1
0000041c: SWAP2
0000041d: SUB
0000041e: SWAP1
0000041f: KECCAK256
00000420: PUSH2 0x08d8
00000423: DUP2
00000424: PUSH2 0x01d0
00000427: JUMP
00000428: JUMPDEST
00000429: PUSH2 0x048b
0000042c: PUSH2 0x0108
0000042f: SLOAD
00000430: PUSH1 0x01
00000432: PUSH1 0xa0
00000434: PUSH1 0x02
00000436: EXP
00000437: SUB
00000438: AND
00000439: DUP2
0000043a: JUMP
0000043b: JUMPDEST
0000043c: PUSH2 0x0477
0000043f: PUSH1 0x04
00000441: CALLDATALOAD
00000442: PUSH1 0x24
00000444: CALLDATALOAD
00000445: PUSH1 0x00
00000447: PUSH1 0x00
00000449: CALLDATASIZE
0000044a: PUSH1 0x40
0000044c: MLOAD
0000044d: DUP1
0000044e: DUP4
0000044f: DUP4
00000450: DUP1
00000451: DUP3
00000452: DUP5
00000453: CALLDATACOPY
00000454: DUP3
00000455: ADD
00000456: SWAP2
00000457: POP
00000458: POP
00000459: SWAP3
0000045a: POP
0000045b: POP
0000045c: POP
0000045d: PUSH1 0x40
0000045f: MLOAD
00000460: DUP1
00000461: SWAP2
00000462: SUB
00000463: SWAP1
00000464: KECCAK256
00000465: PUSH2 0x05b2
00000468: DUP2
00000469: PUSH2 0x01d0
0000046c: JUMP
0000046d: JUMPDEST
0000046e: PUSH2 0x0479
00000471: PUSH2 0x0105
00000474: SLOAD
00000475: DUP2
00000476: JUMP
00000477: JUMPDEST
00000478: STOP
00000479: JUMPDEST
0000047a: PUSH1 0x40
0000047c: DUP1
0000047d: MLOAD
0000047e: SWAP2
0000047f: DUP3
00000480: MSTORE
00000481: MLOAD
00000482: SWAP1
00000483: DUP2
00000484: SWAP1
00000485: SUB
00000486: PUSH1 0x20
00000488: ADD
00000489: SWAP1
0000048a: RETURN
0000048b: JUMPDEST
0000048c: PUSH1 0x40
0000048e: DUP1
0000048f: MLOAD
00000490: PUSH1 0x01
00000492: PUSH1 0xa0
00000494: PUSH1 0x02
00000496: EXP
00000497: SUB
00000498: SWAP3
00000499: SWAP1
0000049a: SWAP3
0000049b: AND
0000049c: DUP3
0000049d: MSTORE
0000049e: MLOAD
0000049f: SWAP1
000004a0: DUP2
000004a1: SWAP1
000004a2: SUB
000004a3: PUSH1 0x20
000004a5: ADD
000004a6: SWAP1
000004a7: RETURN
000004a8: JUMPDEST
000004a9: POP
000004aa: POP
000004ab: PUSH1 0x00
000004ad: DUP3
000004ae: DUP2
000004af: MSTORE
000004b0: PUSH2 0x0103
000004b3: PUSH1 0x20
000004b5: MSTORE
000004b6: PUSH1 0x40
000004b8: DUP2
000004b9: KECCAK256
000004ba: PUSH1 0x01
000004bc: DUP2
000004bd: ADD
000004be: SLOAD
000004bf: PUSH1 0x02
000004c1: DUP5
000004c2: SWAP1
000004c3: EXP
000004c4: SWAP3
000004c5: SWAP1
000004c6: DUP4
000004c7: AND
000004c8: GT
000004c9: ISZERO
000004ca: PUSH2 0x0527
000004cd: JUMPI
000004ce: DUP1
000004cf: SLOAD
000004d0: PUSH1 0x01
000004d2: DUP3
000004d3: DUP2
000004d4: ADD
000004d5: DUP1
000004d6: SLOAD
000004d7: SWAP3
000004d8: SWAP1
000004d9: SWAP2
000004da: ADD
000004db: DUP4
000004dc: SSTORE
000004dd: SWAP1
000004de: DUP4
000004df: SWAP1
000004e0: SUB
000004e1: SWAP1
000004e2: SSTORE
000004e3: PUSH1 0x40
000004e5: DUP1
000004e6: MLOAD
000004e7: CALLER
000004e8: PUSH1 0x01
000004ea: PUSH1 0xa0
000004ec: PUSH1 0x02
000004ee: EXP
000004ef: SUB
000004f0: AND
000004f1: DUP2
000004f2: MSTORE
000004f3: PUSH1 0x20
000004f5: DUP2
000004f6: ADD
000004f7: DUP7
000004f8: SWAP1
000004f9: MSTORE
000004fa: DUP2
000004fb: MLOAD
000004fc: PUSH32 0xc7fb647e59b18047309aa15aad418e5d7ca96d173ad704f1031a2c3d7591734b
0000051d: SWAP3
0000051e: SWAP2
0000051f: DUP2
00000520: SWAP1
00000521: SUB
00000522: SWAP1
00000523: SWAP2
00000524: ADD
00000525: SWAP1
00000526: LOG1
00000527: JUMPDEST
00000528: POP
00000529: POP
0000052a: POP
0000052b: POP
0000052c: JUMP
0000052d: JUMPDEST
0000052e: PUSH1 0x01
00000530: PUSH1 0xa0
00000532: PUSH1 0x02
00000534: EXP
00000535: SUB
00000536: DUP4
00000537: AND
00000538: PUSH1 0x02
0000053a: DUP4
0000053b: PUSH2 0x0100
0000053e: DUP2
0000053f: LT
00000540: ISZERO
00000541: PUSH2 0x0002
00000544: JUMPI
00000545: POP
00000546: DUP4
00000547: ADD
00000548: DUP2
00000549: SWAP1
0000054a: SSTORE
0000054b: PUSH1 0x01
0000054d: PUSH1 0xa0
0000054f: PUSH1 0x02
00000551: EXP
00000552: SUB
00000553: DUP6
00000554: AND
00000555: PUSH1 0x00
00000557: DUP2
00000558: DUP2
00000559: MSTORE
0000055a: PUSH2 0x0102
0000055d: PUSH1 0x20
0000055f: SWAP1
00000560: DUP2
00000561: MSTORE
00000562: PUSH1 0x40
00000564: DUP1
00000565: DUP4
00000566: KECCAK256
00000567: DUP4
00000568: SWAP1
00000569: SSTORE
0000056a: DUP5
0000056b: DUP4
0000056c: MSTORE
0000056d: SWAP2
0000056e: DUP3
0000056f: SWAP1
00000570: KECCAK256
00000571: DUP7
00000572: SWAP1
00000573: SSTORE
00000574: DUP2
00000575: MLOAD
00000576: SWAP3
00000577: DUP4
00000578: MSTORE
00000579: DUP3
0000057a: ADD
0000057b: SWAP3
0000057c: SWAP1
0000057d: SWAP3
0000057e: MSTORE
0000057f: DUP2
00000580: MLOAD
00000581: PUSH32 0xb532073b38c83145e3e5135377a08bf9aab55bc0fd7c1179cd4fb995d2a5159c
000005a2: SWAP3
000005a3: SWAP2
000005a4: DUP2
000005a5: SWAP1
000005a6: SUB
000005a7: SWAP1
000005a8: SWAP2
000005a9: ADD
000005aa: SWAP1
000005ab: LOG1
000005ac: POP
000005ad: JUMPDEST
000005ae: POP
000005af: POP
000005b0: POP
000005b1: JUMP
000005b2: JUMPDEST
000005b3: ISZERO
000005b4: PUSH2 0x0527
000005b7: JUMPI
000005b8: PUSH2 0x05c0
000005bb: DUP4
000005bc: PUSH2 0x0200
000005bf: JUMP
000005c0: JUMPDEST
000005c1: ISZERO
000005c2: PUSH2 0x05cb
000005c5: JUMPI
000005c6: POP
000005c7: PUSH2 0x05ad
000005ca: JUMP
000005cb: JUMPDEST
000005cc: PUSH1 0x01
000005ce: PUSH1 0xa0
000005d0: PUSH1 0x02
000005d2: EXP
000005d3: SUB
000005d4: DUP5
000005d5: AND
000005d6: PUSH1 0x00
000005d8: SWAP1
000005d9: DUP2
000005da: MSTORE
000005db: PUSH2 0x0102
000005de: PUSH1 0x20
000005e0: MSTORE
000005e1: PUSH1 0x40
000005e3: DUP2
000005e4: KECCAK256
000005e5: SLOAD
000005e6: SWAP3
000005e7: POP
000005e8: DUP3
000005e9: EQ
000005ea: ISZERO
000005eb: PUSH2 0x05f4
000005ee: JUMPI
000005ef: POP
000005f0: PUSH2 0x05ad
000005f3: JUMP
000005f4: JUMPDEST
000005f5: PUSH2 0x052d
000005f8: JUMPDEST
000005f9: PUSH2 0x0104
000005fc: SLOAD
000005fd: PUSH1 0x00
000005ff: JUMPDEST
00000600: DUP2
00000601: DUP2
00000602: LT
00000603: ISZERO
00000604: PUSH2 0x104a
00000607: JUMPI
00000608: PUSH2 0x0104
0000060b: DUP1
0000060c: SLOAD
0000060d: PUSH2 0x0109
00000610: SWAP2
00000611: PUSH1 0x00
00000613: SWAP2
00000614: DUP5
00000615: SWAP1
00000616: DUP2
00000617: LT
00000618: ISZERO
00000619: PUSH2 0x0002
0000061c: JUMPI
0000061d: PUSH1 0x00
0000061f: DUP1
00000620: MLOAD
00000621: PUSH1 0x20
00000623: PUSH2 0x1117
00000626: DUP4
00000627: CODECOPY
00000628: DUP2
00000629: MLOAD
0000062a: SWAP2
0000062b: MSTORE
0000062c: ADD
0000062d: SLOAD
0000062e: DUP3
0000062f: MSTORE
00000630: POP
00000631: PUSH1 0x20
00000633: SWAP2
00000634: SWAP1
00000635: SWAP2
00000636: MSTORE
00000637: PUSH1 0x40
00000639: DUP2
0000063a: KECCAK256
0000063b: DUP1
0000063c: SLOAD
0000063d: PUSH1 0x01
0000063f: PUSH1 0xa0
00000641: PUSH1 0x02
00000643: EXP
00000644: SUB
00000645: NOT
00000646: AND
00000647: DUP2
00000648: SSTORE
00000649: PUSH1 0x01
0000064b: DUP2
0000064c: DUP2
0000064d: ADD
0000064e: DUP4
0000064f: SWAP1
00000650: SSTORE
00000651: PUSH1 0x02
00000653: DUP3
00000654: DUP2
00000655: ADD
00000656: DUP1
00000657: SLOAD
00000658: DUP6
00000659: DUP3
0000065a: SSTORE
0000065b: SWAP4
0000065c: SWAP5
0000065d: SWAP4
0000065e: SWAP1
0000065f: SWAP3
00000660: DUP2
00000661: AND
00000662: ISZERO
00000663: PUSH2 0x0100
00000666: MUL
00000667: PUSH1 0x00
00000669: NOT
0000066a: ADD
0000066b: AND
0000066c: DIV
0000066d: PUSH1 0x1f
0000066f: DUP2
00000670: SWAP1
00000671: LT
00000672: PUSH2 0x10cf
00000675: JUMPI
00000676: POP
00000677: JUMPDEST
00000678: POP
00000679: POP
0000067a: POP
0000067b: PUSH1 0x01
0000067d: ADD
0000067e: PUSH2 0x05ff
00000681: JUMP
00000682: JUMPDEST
00000683: ISZERO
00000684: PUSH2 0x070f
00000687: JUMPI
00000688: PUSH2 0x0713
0000068b: DUP3
0000068c: PUSH2 0x0200
0000068f: JUMP
00000690: JUMPDEST
00000691: PUSH1 0x01
00000693: DUP1
00000694: SLOAD
00000695: DUP2
00000696: ADD
00000697: SWAP1
00000698: DUP2
00000699: SWAP1
0000069a: SSTORE
0000069b: PUSH1 0x01
0000069d: PUSH1 0xa0
0000069f: PUSH1 0x02
000006a1: EXP
000006a2: SUB
000006a3: DUP4
000006a4: AND
000006a5: SWAP1
000006a6: PUSH1 0x02
000006a8: SWAP1
000006a9: PUSH2 0x0100
000006ac: DUP2
000006ad: LT
000006ae: ISZERO
000006af: PUSH2 0x0002
000006b2: JUMPI
000006b3: SWAP1
000006b4: SWAP1
000006b5: ADD
000006b6: PUSH1 0x00
000006b8: POP
000006b9: SSTORE
000006ba: PUSH1 0x01
000006bc: SLOAD
000006bd: PUSH1 0x01
000006bf: PUSH1 0xa0
000006c1: PUSH1 0x02
000006c3: EXP
000006c4: SUB
000006c5: DUP4
000006c6: AND
000006c7: PUSH1 0x00
000006c9: DUP2
000006ca: DUP2
000006cb: MSTORE
000006cc: PUSH2 0x0102
000006cf: PUSH1 0x20
000006d1: SWAP1
000006d2: DUP2
000006d3: MSTORE
000006d4: PUSH1 0x40
000006d6: SWAP2
000006d7: DUP3
000006d8: SWAP1
000006d9: KECCAK256
000006da: SWAP4
000006db: SWAP1
000006dc: SWAP4
000006dd: SSTORE
000006de: DUP1
000006df: MLOAD
000006e0: SWAP2
000006e1: DUP3
000006e2: MSTORE
000006e3: MLOAD
000006e4: PUSH32 0x994a936646fe87ffe4f1e469d3d6aa417d6b855598397f323de5b449f765f0c3
00000705: SWAP3
00000706: SWAP2
00000707: DUP2
00000708: SWAP1
00000709: SUB
0000070a: SWAP1
0000070b: SWAP2
0000070c: ADD
0000070d: SWAP1
0000070e: LOG1
0000070f: JUMPDEST
00000710: POP
00000711: POP
00000712: JUMP
00000713: JUMPDEST
00000714: ISZERO
00000715: PUSH2 0x071e
00000718: JUMPI
00000719: POP
0000071a: PUSH2 0x01a2
0000071d: JUMP
0000071e: JUMPDEST
0000071f: PUSH2 0x0726
00000722: PUSH2 0x05f8
00000725: JUMP
00000726: JUMPDEST
00000727: PUSH1 0x01
00000729: SLOAD
0000072a: PUSH1 0xfa
0000072c: SWAP1
0000072d: LT
0000072e: PUSH2 0x0739
00000731: JUMPI
00000732: PUSH2 0x0739
00000735: PUSH2 0x074e
00000738: JUMP
00000739: JUMPDEST
0000073a: PUSH1 0x01
0000073c: SLOAD
0000073d: PUSH1 0xfa
0000073f: SWAP1
00000740: LT
00000741: PUSH2 0x0690
00000744: JUMPI
00000745: POP
00000746: PUSH2 0x01a2
00000749: JUMP
0000074a: JUMPDEST
0000074b: PUSH2 0x0806
0000074e: JUMPDEST
0000074f: PUSH1 0x01
00000751: JUMPDEST
00000752: PUSH1 0x01
00000754: SLOAD
00000755: DUP2
00000756: LT
00000757: ISZERO
00000758: PUSH2 0x01a2
0000075b: JUMPI
0000075c: JUMPDEST
0000075d: PUSH1 0x01
0000075f: SLOAD
00000760: DUP2
00000761: LT
00000762: DUP1
00000763: ISZERO
00000764: PUSH2 0x077c
00000767: JUMPI
00000768: POP
00000769: PUSH1 0x02
0000076b: DUP2
0000076c: PUSH2 0x0100
0000076f: DUP2
00000770: LT
00000771: ISZERO
00000772: PUSH2 0x0002
00000775: JUMPI
00000776: ADD
00000777: SLOAD
00000778: PUSH1 0x00
0000077a: EQ
0000077b: ISZERO
0000077c: JUMPDEST
0000077d: ISZERO
0000077e: PUSH2 0x0f06
00000781: JUMPI
00000782: PUSH1 0x01
00000784: ADD
00000785: PUSH2 0x075c
00000788: JUMP
00000789: JUMPDEST
0000078a: ISZERO
0000078b: PUSH2 0x05ad
0000078e: JUMPI
0000078f: PUSH1 0x01
00000791: PUSH1 0xa0
00000793: PUSH1 0x02
00000795: EXP
00000796: SUB
00000797: DUP4
00000798: AND
00000799: PUSH1 0x00
0000079b: SWAP1
0000079c: DUP2
0000079d: MSTORE
0000079e: PUSH2 0x0102
000007a1: PUSH1 0x20
000007a3: MSTORE
000007a4: PUSH1 0x40
000007a6: DUP2
000007a7: KECCAK256
000007a8: SLOAD
000007a9: SWAP3
000007aa: POP
000007ab: DUP3
000007ac: EQ
000007ad: ISZERO
000007ae: PUSH2 0x07b7
000007b1: JUMPI
000007b2: POP
000007b3: PUSH2 0x070f
000007b6: JUMP
000007b7: JUMPDEST
000007b8: PUSH1 0x01
000007ba: PUSH1 0x01
000007bc: PUSH1 0x00
000007be: POP
000007bf: SLOAD
000007c0: SUB
000007c1: PUSH1 0x00
000007c3: PUSH1 0x00
000007c5: POP
000007c6: SLOAD
000007c7: GT
000007c8: ISZERO
000007c9: PUSH2 0x07d2
000007cc: JUMPI
000007cd: POP
000007ce: PUSH2 0x070f
000007d1: JUMP
000007d2: JUMPDEST
000007d3: PUSH1 0x00
000007d5: PUSH1 0x02
000007d7: DUP4
000007d8: PUSH2 0x0100
000007db: DUP2
000007dc: LT
000007dd: ISZERO
000007de: PUSH2 0x0002
000007e1: JUMPI
000007e2: POP
000007e3: DUP4
000007e4: ADD
000007e5: DUP2
000007e6: SWAP1
000007e7: SSTORE
000007e8: PUSH1 0x01
000007ea: PUSH1 0xa0
000007ec: PUSH1 0x02
000007ee: EXP
000007ef: SUB
000007f0: DUP5
000007f1: AND
000007f2: DUP2
000007f3: MSTORE
000007f4: PUSH2 0x0102
000007f7: PUSH1 0x20
000007f9: MSTORE
000007fa: PUSH1 0x40
000007fc: DUP2
000007fd: KECCAK256
000007fe: SSTORE
000007ff: PUSH2 0x074a
00000802: PUSH2 0x05f8
00000805: JUMP
00000806: JUMPDEST
00000807: PUSH1 0x40
00000809: DUP1
0000080a: MLOAD
0000080b: PUSH1 0x01
0000080d: PUSH1 0xa0
0000080f: PUSH1 0x02
00000811: EXP
00000812: SUB
00000813: DUP6
00000814: AND
00000815: DUP2
00000816: MSTORE
00000817: SWAP1
00000818: MLOAD
00000819: PUSH32 0x58619076adf5bb0943d100ef88d52d7c3fd691b19d3a9071b555b651fbf418da
0000083a: SWAP2
0000083b: DUP2
0000083c: SWAP1
0000083d: SUB
0000083e: PUSH1 0x20
00000840: ADD
00000841: SWAP1
00000842: LOG1
00000843: POP
00000844: POP
00000845: POP
00000846: JUMP
00000847: JUMPDEST
00000848: ISZERO
00000849: PUSH2 0x070f
0000084c: JUMPI
0000084d: PUSH1 0x01
0000084f: SLOAD
00000850: DUP3
00000851: GT
00000852: ISZERO
00000853: PUSH2 0x085c
00000856: JUMPI
00000857: POP
00000858: PUSH2 0x01a2
0000085b: JUMP
0000085c: JUMPDEST
0000085d: PUSH1 0x00
0000085f: DUP3
00000860: SWAP1
00000861: SSTORE
00000862: PUSH2 0x0869
00000865: PUSH2 0x05f8
00000868: JUMP
00000869: JUMPDEST
0000086a: PUSH1 0x40
0000086c: DUP1
0000086d: MLOAD
0000086e: DUP4
0000086f: DUP2
00000870: MSTORE
00000871: SWAP1
00000872: MLOAD
00000873: PUSH32 0xacbdb084c721332ac59f9b8e392196c9eb0e4932862da8eb9beaf0dad4f550da
00000894: SWAP2
00000895: DUP2
00000896: SWAP1
00000897: SUB
00000898: PUSH1 0x20
0000089a: ADD
0000089b: SWAP1
0000089c: LOG1
0000089d: POP
0000089e: POP
0000089f: JUMP
000008a0: JUMPDEST
000008a1: POP
000008a2: PUSH1 0x01
000008a4: DUP3
000008a5: ADD
000008a6: SLOAD
000008a7: PUSH1 0x02
000008a9: DUP3
000008aa: SWAP1
000008ab: EXP
000008ac: SWAP1
000008ad: DUP2
000008ae: AND
000008af: PUSH1 0x00
000008b1: EQ
000008b2: ISZERO
000008b3: SWAP4
000008b4: POP
000008b5: JUMPDEST
000008b6: POP
000008b7: POP
000008b8: POP
000008b9: SWAP3
000008ba: SWAP2
000008bb: POP
000008bc: POP
000008bd: JUMP
000008be: JUMPDEST
000008bf: ISZERO
000008c0: PUSH2 0x070f
000008c3: JUMPI
000008c4: POP
000008c5: PUSH2 0x0105
000008c8: SSTORE
000008c9: JUMP
000008ca: JUMPDEST
000008cb: ISZERO
000008cc: PUSH2 0x01a2
000008cf: JUMPI
000008d0: PUSH1 0x00
000008d2: PUSH2 0x0106
000008d5: SSTORE
000008d6: POP
000008d7: JUMP
000008d8: JUMPDEST
000008d9: ISZERO
000008da: PUSH2 0x070f
000008dd: JUMPI
000008de: DUP2
000008df: PUSH1 0x01
000008e1: PUSH1 0xa0
000008e3: PUSH1 0x02
000008e5: EXP
000008e6: SUB
000008e7: AND
000008e8: SELFDESTRUCT
000008e9: JUMPDEST
000008ea: ISZERO
000008eb: PUSH2 0x0b2a
000008ee: JUMPI
000008ef: PUSH2 0x08fd
000008f2: DUP5
000008f3: PUSH1 0x00
000008f5: PUSH2 0x0fe0
000008f8: CALLER
000008f9: PUSH2 0x0200
000008fc: JUMP
000008fd: JUMPDEST
000008fe: ISZERO
000008ff: PUSH2 0x09bc
00000902: JUMPI
00000903: PUSH32 0x92ca3a80853e6663fa31fa10b99225f18d4902939b4c53a9caae9043f6efd004
00000924: CALLER
00000925: DUP6
00000926: DUP8
00000927: DUP7
00000928: DUP7
00000929: PUSH1 0x40
0000092b: MLOAD
0000092c: DUP1
0000092d: DUP7
0000092e: PUSH1 0x01
00000930: PUSH1 0xa0
00000932: PUSH1 0x02
00000934: EXP
00000935: SUB
00000936: AND
00000937: DUP2
00000938: MSTORE
00000939: PUSH1 0x20
0000093b: ADD
0000093c: DUP6
0000093d: DUP2
0000093e: MSTORE
0000093f: PUSH1 0x20
00000941: ADD
00000942: DUP5
00000943: PUSH1 0x01
00000945: PUSH1 0xa0
00000947: PUSH1 0x02
00000949: EXP
0000094a: SUB
0000094b: AND
0000094c: DUP2
0000094d: MSTORE
0000094e: PUSH1 0x20
00000950: ADD
00000951: DUP1
00000952: PUSH1 0x20
00000954: ADD
00000955: DUP3
00000956: DUP2
00000957: SUB
00000958: DUP3
00000959: MSTORE
0000095a: DUP5
0000095b: DUP5
0000095c: DUP3
0000095d: DUP2
0000095e: DUP2
0000095f: MSTORE
00000960: PUSH1 0x20
00000962: ADD
00000963: SWAP3
00000964: POP
00000965: DUP1
00000966: DUP3
00000967: DUP5
00000968: CALLDATACOPY
00000969: DUP3
0000096a: ADD
0000096b: SWAP2
0000096c: POP
0000096d: POP
0000096e: SWAP7
0000096f: POP
00000970: POP
00000971: POP
00000972: POP
00000973: POP
00000974: POP
00000975: POP
00000976: PUSH1 0x40
00000978: MLOAD
00000979: DUP1
0000097a: SWAP2
0000097b: SUB
0000097c: SWAP1
0000097d: LOG1
0000097e: DUP5
0000097f: PUSH1 0x01
00000981: PUSH1 0xa0
00000983: PUSH1 0x02
00000985: EXP
00000986: SUB
00000987: AND
00000988: DUP5
00000989: DUP5
0000098a: DUP5
0000098b: PUSH1 0x40
0000098d: MLOAD
0000098e: DUP1
0000098f: DUP4
00000990: DUP4
00000991: DUP1
00000992: DUP3
00000993: DUP5
00000994: CALLDATACOPY
00000995: DUP3
00000996: ADD
00000997: SWAP2
00000998: POP
00000999: POP
0000099a: SWAP3
0000099b: POP
0000099c: POP
0000099d: POP
0000099e: PUSH1 0x00
000009a0: PUSH1 0x40
000009a2: MLOAD
000009a3: DUP1
000009a4: DUP4
000009a5: SUB
000009a6: DUP2
000009a7: DUP6
000009a8: DUP8
000009a9: PUSH2 0x8502
000009ac: GAS
000009ad: SUB
000009ae: CALL
000009af: POP
000009b0: PUSH1 0x00
000009b2: SWAP4
000009b3: POP
000009b4: PUSH2 0x0b2a
000009b7: SWAP3
000009b8: POP
000009b9: POP
000009ba: POP
000009bb: JUMP
000009bc: JUMPDEST
000009bd: PUSH1 0x00
000009bf: CALLDATASIZE
000009c0: NUMBER
000009c1: PUSH1 0x40
000009c3: MLOAD
000009c4: DUP1
000009c5: DUP5
000009c6: DUP5
000009c7: DUP1
000009c8: DUP3
000009c9: DUP5
000009ca: CALLDATACOPY
000009cb: DUP3
000009cc: ADD
000009cd: SWAP2
000009ce: POP
000009cf: POP
000009d0: DUP3
000009d1: DUP2
000009d2: MSTORE
000009d3: PUSH1 0x20
000009d5: ADD
000009d6: SWAP4
000009d7: POP
000009d8: POP
000009d9: POP
000009da: POP
000009db: PUSH1 0x40
000009dd: MLOAD
000009de: DUP1
000009df: SWAP2
000009e0: SUB
000009e1: SWAP1
000009e2: KECCAK256
000009e3: SWAP1
000009e4: POP
000009e5: DUP1
000009e6: POP
000009e7: PUSH2 0x09ef
000009ea: DUP2
000009eb: PUSH2 0x0307
000009ee: JUMP
000009ef: JUMPDEST
000009f0: ISZERO
000009f1: DUP1
000009f2: ISZERO
000009f3: PUSH2 0x0a12
000009f6: JUMPI
000009f7: POP
000009f8: PUSH1 0x00
000009fa: DUP2
000009fb: DUP2
000009fc: MSTORE
000009fd: PUSH2 0x0109
00000a00: PUSH1 0x20
00000a02: MSTORE
00000a03: PUSH1 0x40
00000a05: DUP2
00000a06: KECCAK256
00000a07: SLOAD
00000a08: PUSH1 0x01
00000a0a: PUSH1 0xa0
00000a0c: PUSH1 0x02
00000a0e: EXP
00000a0f: SUB
00000a10: AND
00000a11: EQ
00000a12: JUMPDEST
00000a13: ISZERO
00000a14: PUSH2 0x0b2a
00000a17: JUMPI
00000a18: PUSH1 0x00
00000a1a: DUP2
00000a1b: DUP2
00000a1c: MSTORE
00000a1d: PUSH2 0x0109
00000a20: PUSH1 0x20
00000a22: SWAP1
00000a23: DUP2
00000a24: MSTORE
00000a25: PUSH1 0x40
00000a27: DUP3
00000a28: KECCAK256
00000a29: DUP1
00000a2a: SLOAD
00000a2b: PUSH1 0x01
00000a2d: PUSH1 0xa0
00000a2f: PUSH1 0x02
00000a31: EXP
00000a32: SUB
00000a33: NOT
00000a34: AND
00000a35: DUP9
00000a36: OR
00000a37: DUP2
00000a38: SSTORE
00000a39: PUSH1 0x01
00000a3b: DUP2
00000a3c: DUP2
00000a3d: ADD
00000a3e: DUP9
00000a3f: SWAP1
00000a40: SSTORE
00000a41: PUSH1 0x02
00000a43: SWAP2
00000a44: DUP3
00000a45: ADD
00000a46: DUP1
00000a47: SLOAD
00000a48: DUP2
00000a49: DUP7
00000a4a: MSTORE
00000a4b: SWAP5
00000a4c: DUP5
00000a4d: SWAP1
00000a4e: KECCAK256
00000a4f: SWAP1
00000a50: SWAP5
00000a51: SWAP2
00000a52: DUP3
00000a53: AND
00000a54: ISZERO
00000a55: PUSH2 0x0100
00000a58: MUL
00000a59: PUSH1 0x00
00000a5b: NOT
00000a5c: ADD
00000a5d: SWAP1
00000a5e: SWAP2
00000a5f: AND
00000a60: SWAP2
00000a61: SWAP1
00000a62: SWAP2
00000a63: DIV
00000a64: PUSH1 0x1f
00000a66: SWAP1
00000a67: DUP2
00000a68: ADD
00000a69: SWAP3
00000a6a: SWAP1
00000a6b: SWAP3
00000a6c: DIV
00000a6d: DUP2
00000a6e: ADD
00000a6f: SWAP2
00000a70: DUP6
00000a71: SWAP2
00000a72: SWAP1
00000a73: DUP8
00000a74: SWAP1
00000a75: DUP4
00000a76: SWAP1
00000a77: LT
00000a78: PUSH2 0x0b32
00000a7b: JUMPI
00000a7c: PUSH1 0xff
00000a7e: NOT
00000a7f: DUP2
00000a80: CALLDATALOAD
00000a81: AND
00000a82: DUP4
00000a83: DUP1
00000a84: ADD
00000a85: OR
00000a86: DUP6
00000a87: SSTORE
00000a88: JUMPDEST
00000a89: POP
00000a8a: PUSH2 0x0aa4
00000a8d: SWAP3
00000a8e: SWAP2
00000a8f: POP
00000a90: JUMPDEST
00000a91: DUP1
00000a92: DUP3
00000a93: GT
00000a94: ISZERO
00000a95: PUSH2 0x0b62
00000a98: JUMPI
00000a99: PUSH1 0x00
00000a9b: DUP2
00000a9c: SSTORE
00000a9d: PUSH1 0x01
00000a9f: ADD
00000aa0: PUSH2 0x0a90
00000aa3: JUMP
00000aa4: JUMPDEST
00000aa5: POP
00000aa6: POP
00000aa7: PUSH32 0x1733cbb53659d713b79580f79f3f9ff215f78a7c7aa45890f3b89fc5cddfbf32
00000ac8: DUP2
00000ac9: CALLER
00000aca: DUP7
00000acb: DUP9
00000acc: DUP8
00000acd: DUP8
00000ace: PUSH1 0x40
00000ad0: MLOAD
00000ad1: DUP1
00000ad2: DUP8
00000ad3: DUP2
00000ad4: MSTORE
00000ad5: PUSH1 0x20
00000ad7: ADD
00000ad8: DUP7
00000ad9: PUSH1 0x01
00000adb: PUSH1 0xa0
00000add: PUSH1 0x02
00000adf: EXP
00000ae0: SUB
00000ae1: AND
00000ae2: DUP2
00000ae3: MSTORE
00000ae4: PUSH1 0x20
00000ae6: ADD
00000ae7: DUP6
00000ae8: DUP2
00000ae9: MSTORE
00000aea: PUSH1 0x20
00000aec: ADD
00000aed: DUP5
00000aee: PUSH1 0x01
00000af0: PUSH1 0xa0
00000af2: PUSH1 0x02
00000af4: EXP
00000af5: SUB
00000af6: AND
00000af7: DUP2
00000af8: MSTORE
00000af9: PUSH1 0x20
00000afb: ADD
00000afc: DUP1
00000afd: PUSH1 0x20
00000aff: ADD
00000b00: DUP3
00000b01: DUP2
00000b02: SUB
00000b03: DUP3
00000b04: MSTORE
00000b05: DUP5
00000b06: DUP5
00000b07: DUP3
00000b08: DUP2
00000b09: DUP2
00000b0a: MSTORE
00000b0b: PUSH1 0x20
00000b0d: ADD
00000b0e: SWAP3
00000b0f: POP
00000b10: DUP1
00000b11: DUP3
00000b12: DUP5
00000b13: CALLDATACOPY
00000b14: DUP3
00000b15: ADD
00000b16: SWAP2
00000b17: POP
00000b18: POP
00000b19: SWAP8
00000b1a: POP
00000b1b: POP
00000b1c: POP
00000b1d: POP
00000b1e: POP
00000b1f: POP
00000b20: POP
00000b21: POP
00000b22: PUSH1 0x40
00000b24: MLOAD
00000b25: DUP1
00000b26: SWAP2
00000b27: SUB
00000b28: SWAP1
00000b29: LOG1
00000b2a: JUMPDEST
00000b2b: SWAP5
00000b2c: SWAP4
00000b2d: POP
00000b2e: POP
00000b2f: POP
00000b30: POP
00000b31: JUMP
00000b32: JUMPDEST
00000b33: DUP3
00000b34: DUP1
00000b35: ADD
00000b36: PUSH1 0x01
00000b38: ADD
00000b39: DUP6
00000b3a: SSTORE
00000b3b: DUP3
00000b3c: ISZERO
00000b3d: PUSH2 0x0a88
00000b40: JUMPI
00000b41: SWAP2
00000b42: DUP3
00000b43: ADD
00000b44: JUMPDEST
00000b45: DUP3
00000b46: DUP2
00000b47: GT
00000b48: ISZERO
00000b49: PUSH2 0x0a88
00000b4c: JUMPI
00000b4d: DUP3
00000b4e: CALLDATALOAD
00000b4f: DUP3
00000b50: PUSH1 0x00
00000b52: POP
00000b53: SSTORE
00000b54: SWAP2
00000b55: PUSH1 0x20
00000b57: ADD
00000b58: SWAP2
00000b59: SWAP1
00000b5a: PUSH1 0x01
00000b5c: ADD
00000b5d: SWAP1
00000b5e: PUSH2 0x0b44
00000b61: JUMP
00000b62: JUMPDEST
00000b63: POP
00000b64: SWAP1
00000b65: JUMP
00000b66: JUMPDEST
00000b67: ISZERO
00000b68: PUSH2 0x0be9
00000b6b: JUMPI
00000b6c: PUSH1 0x00
00000b6e: DUP4
00000b6f: DUP2
00000b70: MSTORE
00000b71: PUSH2 0x0109
00000b74: PUSH1 0x20
00000b76: MSTORE
00000b77: PUSH1 0x40
00000b79: DUP2
00000b7a: KECCAK256
00000b7b: SLOAD
00000b7c: PUSH1 0x01
00000b7e: PUSH1 0xa0
00000b80: PUSH1 0x02
00000b82: EXP
00000b83: SUB
00000b84: AND
00000b85: EQ
00000b86: PUSH2 0x0be9
00000b89: JUMPI
00000b8a: PUSH1 0x40
00000b8c: DUP1
00000b8d: MLOAD
00000b8e: PUSH1 0x00
00000b90: SWAP2
00000b91: SWAP1
00000b92: SWAP2
00000b93: KECCAK256
00000b94: DUP1
00000b95: SLOAD
00000b96: PUSH1 0x01
00000b98: DUP3
00000b99: DUP2
00000b9a: ADD
00000b9b: SLOAD
00000b9c: PUSH1 0x02
00000b9e: SWAP4
00000b9f: DUP5
00000ba0: ADD
00000ba1: DUP1
00000ba2: SLOAD
00000ba3: PUSH1 0x01
00000ba5: PUSH1 0xa0
00000ba7: PUSH1 0x02
00000ba9: EXP
00000baa: SUB
00000bab: SWAP5
00000bac: SWAP1
00000bad: SWAP5
00000bae: AND
00000baf: SWAP6
00000bb0: SWAP2
00000bb1: SWAP5
00000bb2: SWAP1
00000bb3: SWAP4
00000bb4: SWAP2
00000bb5: SWAP3
00000bb6: DUP4
00000bb7: SWAP3
00000bb8: DUP6
00000bb9: SWAP3
00000bba: SWAP2
00000bbb: DUP2
00000bbc: AND
00000bbd: ISZERO
00000bbe: PUSH2 0x0100
00000bc1: MUL
00000bc2: PUSH1 0x00
00000bc4: NOT
00000bc5: ADD
00000bc6: AND
00000bc7: DIV
00000bc8: DUP1
00000bc9: ISZERO
00000bca: PUSH2 0x0c1a
00000bcd: JUMPI
00000bce: DUP1
00000bcf: PUSH1 0x1f
00000bd1: LT
00000bd2: PUSH2 0x0bef
00000bd5: JUMPI
00000bd6: PUSH2 0x0100
00000bd9: DUP1
00000bda: DUP4
00000bdb: SLOAD
00000bdc: DIV
00000bdd: MUL
00000bde: DUP4
00000bdf: MSTORE
00000be0: SWAP2
00000be1: PUSH1 0x20
00000be3: ADD
00000be4: SWAP2
00000be5: PUSH2 0x0c1a
00000be8: JUMP
00000be9: JUMPDEST
00000bea: POP
00000beb: SWAP2
00000bec: SWAP1
00000bed: POP
00000bee: JUMP
00000bef: JUMPDEST
00000bf0: DUP3
00000bf1: ADD
00000bf2: SWAP2
00000bf3: SWAP1
00000bf4: PUSH1 0x00
00000bf6: MSTORE
00000bf7: PUSH1 0x20
00000bf9: PUSH1 0x00
00000bfb: KECCAK256
00000bfc: SWAP1
00000bfd: JUMPDEST
00000bfe: DUP2
00000bff: SLOAD
00000c00: DUP2
00000c01: MSTORE
00000c02: SWAP1
00000c03: PUSH1 0x01
00000c05: ADD
00000c06: SWAP1
00000c07: PUSH1 0x20
00000c09: ADD
00000c0a: DUP1
00000c0b: DUP4
00000c0c: GT
00000c0d: PUSH2 0x0bfd
00000c10: JUMPI
00000c11: DUP3
00000c12: SWAP1
00000c13: SUB
00000c14: PUSH1 0x1f
00000c16: AND
00000c17: DUP3
00000c18: ADD
00000c19: SWAP2
00000c1a: JUMPDEST
00000c1b: POP
00000c1c: POP
00000c1d: SWAP2
00000c1e: POP
00000c1f: POP
00000c20: PUSH1 0x00
00000c22: PUSH1 0x40
00000c24: MLOAD
00000c25: DUP1
00000c26: DUP4
00000c27: SUB
00000c28: DUP2
00000c29: DUP6
00000c2a: DUP8
00000c2b: PUSH2 0x8502
00000c2e: GAS
00000c2f: SUB
00000c30: CALL
00000c31: POP
00000c32: POP
00000c33: POP
00000c34: PUSH1 0x00
00000c36: DUP5
00000c37: DUP2
00000c38: MSTORE
00000c39: PUSH2 0x0109
00000c3c: PUSH1 0x20
00000c3e: SWAP1
00000c3f: DUP2
00000c40: MSTORE
00000c41: PUSH1 0x40
00000c43: SWAP2
00000c44: DUP3
00000c45: SWAP1
00000c46: KECCAK256
00000c47: DUP1
00000c48: SLOAD
00000c49: PUSH1 0x01
00000c4b: DUP3
00000c4c: DUP2
00000c4d: ADD
00000c4e: SLOAD
00000c4f: DUP6
00000c50: MLOAD
00000c51: CALLER
00000c52: PUSH1 0x01
00000c54: PUSH1 0xa0
00000c56: PUSH1 0x02
00000c58: EXP
00000c59: SUB
00000c5a: DUP2
00000c5b: DUP2
00000c5c: AND
00000c5d: DUP4
00000c5e: MSTORE
00000c5f: SWAP7
00000c60: DUP3
00000c61: ADD
00000c62: DUP13
00000c63: SWAP1
00000c64: MSTORE
00000c65: SWAP7
00000c66: DUP2
00000c67: ADD
00000c68: DUP3
00000c69: SWAP1
00000c6a: MSTORE
00000c6b: SWAP3
00000c6c: SWAP1
00000c6d: SWAP5
00000c6e: AND
00000c6f: PUSH1 0x60
00000c71: DUP4
00000c72: ADD
00000c73: DUP2
00000c74: SWAP1
00000c75: MSTORE
00000c76: PUSH1 0xa0
00000c78: PUSH1 0x80
00000c7a: DUP5
00000c7b: ADD
00000c7c: DUP2
00000c7d: DUP2
00000c7e: MSTORE
00000c7f: PUSH1 0x02
00000c81: SWAP6
00000c82: DUP7
00000c83: ADD
00000c84: DUP1
00000c85: SLOAD
00000c86: SWAP5
00000c87: DUP6
00000c88: AND
00000c89: ISZERO
00000c8a: PUSH2 0x0100
00000c8d: MUL
00000c8e: PUSH1 0x00
00000c90: NOT
00000c91: ADD
00000c92: SWAP1
00000c93: SWAP5
00000c94: AND
00000c95: SWAP6
00000c96: SWAP1
00000c97: SWAP6
00000c98: DIV
00000c99: SWAP1
00000c9a: DUP5
00000c9b: ADD
00000c9c: DUP2
00000c9d: SWAP1
00000c9e: MSTORE
00000c9f: PUSH32 0xe7c957c06e9a662c1a6c77366179f5b702b97651dc28eee7d5bf1dff6e40bb4a
00000cc0: SWAP8
00000cc1: POP
00000cc2: DUP11
00000cc3: SWAP6
00000cc4: SWAP5
00000cc5: SWAP2
00000cc6: SWAP4
00000cc7: SWAP2
00000cc8: SWAP1
00000cc9: PUSH1 0xc0
00000ccb: DUP4
00000ccc: ADD
00000ccd: SWAP1
00000cce: DUP5
00000ccf: SWAP1
00000cd0: DUP1
00000cd1: ISZERO
00000cd2: PUSH2 0x0d1c
00000cd5: JUMPI
00000cd6: DUP1
00000cd7: PUSH1 0x1f
00000cd9: LT
00000cda: PUSH2 0x0cf1
00000cdd: JUMPI
00000cde: PUSH2 0x0100
00000ce1: DUP1
00000ce2: DUP4
00000ce3: SLOAD
00000ce4: DIV
00000ce5: MUL
00000ce6: DUP4
00000ce7: MSTORE
00000ce8: SWAP2
00000ce9: PUSH1 0x20
00000ceb: ADD
00000cec: SWAP2
00000ced: PUSH2 0x0d1c
00000cf0: JUMP
00000cf1: JUMPDEST
00000cf2: DUP3
00000cf3: ADD
00000cf4: SWAP2
00000cf5: SWAP1
00000cf6: PUSH1 0x00
00000cf8: MSTORE
00000cf9: PUSH1 0x20
00000cfb: PUSH1 0x00
00000cfd: KECCAK256
00000cfe: SWAP1
00000cff: JUMPDEST
00000d00: DUP2
00000d01: SLOAD
00000d02: DUP2
00000d03: MSTORE
00000d04: SWAP1
00000d05: PUSH1 0x01
00000d07: ADD
00000d08: SWAP1
00000d09: PUSH1 0x20
00000d0b: ADD
00000d0c: DUP1
00000d0d: DUP4
00000d0e: GT
00000d0f: PUSH2 0x0cff
00000d12: JUMPI
00000d13: DUP3
00000d14: SWAP1
00000d15: SUB
00000d16: PUSH1 0x1f
00000d18: AND
00000d19: DUP3
00000d1a: ADD
00000d1b: SWAP2
00000d1c: JUMPDEST
00000d1d: POP
00000d1e: POP
00000d1f: SWAP7
00000d20: POP
00000d21: POP
00000d22: POP
00000d23: POP
00000d24: POP
00000d25: POP
00000d26: POP
00000d27: PUSH1 0x40
00000d29: MLOAD
00000d2a: DUP1
00000d2b: SWAP2
00000d2c: SUB
00000d2d: SWAP1
00000d2e: LOG1
00000d2f: PUSH1 0x00
00000d31: DUP4
00000d32: DUP2
00000d33: MSTORE
00000d34: PUSH2 0x0109
00000d37: PUSH1 0x20
00000d39: MSTORE
00000d3a: PUSH1 0x40
00000d3c: DUP2
00000d3d: KECCAK256
00000d3e: DUP1
00000d3f: SLOAD
00000d40: PUSH1 0x01
00000d42: PUSH1 0xa0
00000d44: PUSH1 0x02
00000d46: EXP
00000d47: SUB
00000d48: NOT
00000d49: AND
00000d4a: DUP2
00000d4b: SSTORE
00000d4c: PUSH1 0x01
00000d4e: DUP2
00000d4f: DUP2
00000d50: ADD
00000d51: DUP4
00000d52: SWAP1
00000d53: SSTORE
00000d54: PUSH1 0x02
00000d56: DUP3
00000d57: DUP2
00000d58: ADD
00000d59: DUP1
00000d5a: SLOAD
00000d5b: DUP6
00000d5c: DUP3
00000d5d: SSTORE
00000d5e: SWAP4
00000d5f: SWAP5
00000d60: SWAP4
00000d61: SWAP1
00000d62: SWAP3
00000d63: DUP2
00000d64: AND
00000d65: ISZERO
00000d66: PUSH2 0x0100
00000d69: MUL
00000d6a: PUSH1 0x00
00000d6c: NOT
00000d6d: ADD
00000d6e: AND
00000d6f: DIV
00000d70: PUSH1 0x1f
00000d72: DUP2
00000d73: SWAP1
00000d74: LT
00000d75: PUSH2 0x0d87
00000d78: JUMPI
00000d79: POP
00000d7a: JUMPDEST
00000d7b: POP
00000d7c: POP
00000d7d: POP
00000d7e: PUSH1 0x01
00000d80: SWAP2
00000d81: POP
00000d82: POP
00000d83: PUSH2 0x021c
00000d86: JUMP
00000d87: JUMPDEST
00000d88: PUSH1 0x1f
00000d8a: ADD
00000d8b: PUSH1 0x20
00000d8d: SWAP1
00000d8e: DIV
00000d8f: SWAP1
00000d90: PUSH1 0x00
00000d92: MSTORE
00000d93: PUSH1 0x20
00000d95: PUSH1 0x00
00000d97: KECCAK256
00000d98: SWAP1
00000d99: DUP2
00000d9a: ADD
00000d9b: SWAP1
00000d9c: PUSH2 0x0d7a
00000d9f: SWAP2
00000da0: SWAP1
00000da1: PUSH2 0x0a90
00000da4: JUMP
00000da5: JUMPDEST
00000da6: PUSH1 0x00
00000da8: DUP6
00000da9: DUP2
00000daa: MSTORE
00000dab: PUSH2 0x0103
00000dae: PUSH1 0x20
00000db0: MSTORE
00000db1: PUSH1 0x40
00000db3: DUP2
00000db4: KECCAK256
00000db5: DUP1
00000db6: SLOAD
00000db7: SWAP1
00000db8: SWAP4
00000db9: POP
00000dba: EQ
00000dbb: ISZERO
00000dbc: PUSH2 0x0e2d
00000dbf: JUMPI
00000dc0: PUSH1 0x00
00000dc2: DUP1
00000dc3: SLOAD
00000dc4: DUP4
00000dc5: SSTORE
00000dc6: PUSH1 0x01
00000dc8: DUP4
00000dc9: DUP2
00000dca: ADD
00000dcb: SWAP2
00000dcc: SWAP1
00000dcd: SWAP2
00000dce: SSTORE
00000dcf: PUSH2 0x0104
00000dd2: DUP1
00000dd3: SLOAD
00000dd4: SWAP2
00000dd5: DUP3
00000dd6: ADD
00000dd7: DUP1
00000dd8: DUP3
00000dd9: SSTORE
00000dda: DUP3
00000ddb: DUP1
00000ddc: ISZERO
00000ddd: DUP3
00000dde: SWAP1
00000ddf: GT
00000de0: PUSH2 0x0dfc
00000de3: JUMPI
00000de4: DUP2
00000de5: DUP4
00000de6: PUSH1 0x00
00000de8: MSTORE
00000de9: PUSH1 0x20
00000deb: PUSH1 0x00
00000ded: KECCAK256
00000dee: SWAP2
00000def: DUP3
00000df0: ADD
00000df1: SWAP2
00000df2: ADD
00000df3: PUSH2 0x0dfc
00000df6: SWAP2
00000df7: SWAP1
00000df8: PUSH2 0x0a90
00000dfb: JUMP
00000dfc: JUMPDEST
00000dfd: POP
00000dfe: POP
00000dff: POP
00000e00: PUSH1 0x02
00000e02: DUP4
00000e03: ADD
00000e04: DUP2
00000e05: SWAP1
00000e06: SSTORE
00000e07: PUSH2 0x0104
00000e0a: DUP1
00000e0b: SLOAD
00000e0c: DUP8
00000e0d: SWAP3
00000e0e: SWAP1
00000e0f: DUP2
00000e10: LT
00000e11: ISZERO
00000e12: PUSH2 0x0002
00000e15: JUMPI
00000e16: PUSH1 0x00
00000e18: SWAP2
00000e19: SWAP1
00000e1a: SWAP2
00000e1b: MSTORE
00000e1c: PUSH1 0x00
00000e1e: DUP1
00000e1f: MLOAD
00000e20: PUSH1 0x20
00000e22: PUSH2 0x1117
00000e25: DUP4
00000e26: CODECOPY
00000e27: DUP2
00000e28: MLOAD
00000e29: SWAP2
00000e2a: MSTORE
00000e2b: ADD
00000e2c: SSTORE
00000e2d: JUMPDEST
00000e2e: POP
00000e2f: PUSH1 0x01
00000e31: DUP2
00000e32: ADD
00000e33: SLOAD
00000e34: PUSH1 0x02
00000e36: DUP4
00000e37: SWAP1
00000e38: EXP
00000e39: SWAP1
00000e3a: DUP2
00000e3b: AND
00000e3c: PUSH1 0x00
00000e3e: EQ
00000e3f: ISZERO
00000e40: PUSH2 0x0efe
00000e43: JUMPI
00000e44: PUSH1 0x40
00000e46: DUP1
00000e47: MLOAD
00000e48: CALLER
00000e49: PUSH1 0x01
00000e4b: PUSH1 0xa0
00000e4d: PUSH1 0x02
00000e4f: EXP
00000e50: SUB
00000e51: AND
00000e52: DUP2
00000e53: MSTORE
00000e54: PUSH1 0x20
00000e56: DUP2
00000e57: ADD
00000e58: DUP8
00000e59: SWAP1
00000e5a: MSTORE
00000e5b: DUP2
00000e5c: MLOAD
00000e5d: PUSH32 0xe1c52dc63b719ade82e8bea94cc41a0d5d28e4aaf536adb5e9cccc9ff8c1aeda
00000e7e: SWAP3
00000e7f: SWAP2
00000e80: DUP2
00000e81: SWAP1
00000e82: SUB
00000e83: SWAP1
00000e84: SWAP2
00000e85: ADD
00000e86: SWAP1
00000e87: LOG1
00000e88: DUP2
00000e89: SLOAD
00000e8a: PUSH1 0x01
00000e8c: SWAP1
00000e8d: GT
00000e8e: PUSH2 0x0eeb
00000e91: JUMPI
00000e92: PUSH1 0x00
00000e94: DUP6
00000e95: DUP2
00000e96: MSTORE
00000e97: PUSH2 0x0103
00000e9a: PUSH1 0x20
00000e9c: MSTORE
00000e9d: PUSH1 0x40
00000e9f: SWAP1
00000ea0: KECCAK256
00000ea1: PUSH1 0x02
00000ea3: ADD
00000ea4: SLOAD
00000ea5: PUSH2 0x0104
00000ea8: DUP1
00000ea9: SLOAD
00000eaa: SWAP1
00000eab: SWAP2
00000eac: SWAP1
00000ead: DUP2
00000eae: LT
00000eaf: ISZERO
00000eb0: PUSH2 0x0002
00000eb3: JUMPI
00000eb4: PUSH1 0x40
00000eb6: PUSH1 0x00
00000eb8: SWAP1
00000eb9: DUP2
00000eba: KECCAK256
00000ebb: PUSH1 0x00
00000ebd: DUP1
00000ebe: MLOAD
00000ebf: PUSH1 0x20
00000ec1: PUSH2 0x1117
00000ec4: DUP4
00000ec5: CODECOPY
00000ec6: DUP2
00000ec7: MLOAD
00000ec8: SWAP2
00000ec9: MSTORE
00000eca: SWAP3
00000ecb: SWAP1
00000ecc: SWAP3
00000ecd: ADD
00000ece: DUP2
00000ecf: SWAP1
00000ed0: SSTORE
00000ed1: DUP1
00000ed2: DUP3
00000ed3: SSTORE
00000ed4: PUSH1 0x01
00000ed6: DUP3
00000ed7: DUP2
00000ed8: ADD
00000ed9: DUP3
00000eda: SWAP1
00000edb: SSTORE
00000edc: PUSH1 0x02
00000ede: SWAP3
00000edf: SWAP1
00000ee0: SWAP3
00000ee1: ADD
00000ee2: SSTORE
00000ee3: SWAP5
00000ee4: POP
00000ee5: PUSH2 0x0efe
00000ee8: SWAP1
00000ee9: POP
00000eea: JUMP
00000eeb: JUMPDEST
00000eec: DUP2
00000eed: SLOAD
00000eee: PUSH1 0x00
00000ef0: NOT
00000ef1: ADD
00000ef2: DUP3
00000ef3: SSTORE
00000ef4: PUSH1 0x01
00000ef6: DUP3
00000ef7: ADD
00000ef8: DUP1
00000ef9: SLOAD
00000efa: DUP3
00000efb: OR
00000efc: SWAP1
00000efd: SSTORE
00000efe: JUMPDEST
00000eff: POP
00000f00: POP
00000f01: POP
00000f02: SWAP2
00000f03: SWAP1
00000f04: POP
00000f05: JUMP
00000f06: JUMPDEST
00000f07: JUMPDEST
00000f08: PUSH1 0x01
00000f0a: DUP1
00000f0b: SLOAD
00000f0c: GT
00000f0d: DUP1
00000f0e: ISZERO
00000f0f: PUSH2 0x0f29
00000f12: JUMPI
00000f13: POP
00000f14: PUSH1 0x01
00000f16: SLOAD
00000f17: PUSH1 0x02
00000f19: SWAP1
00000f1a: PUSH2 0x0100
00000f1d: DUP2
00000f1e: LT
00000f1f: ISZERO
00000f20: PUSH2 0x0002
00000f23: JUMPI
00000f24: ADD
00000f25: SLOAD
00000f26: PUSH1 0x00
00000f28: EQ
00000f29: JUMPDEST
00000f2a: ISZERO
00000f2b: PUSH2 0x0f3d
00000f2e: JUMPI
00000f2f: PUSH1 0x01
00000f31: DUP1
00000f32: SLOAD
00000f33: PUSH1 0x00
00000f35: NOT
00000f36: ADD
00000f37: SWAP1
00000f38: SSTORE
00000f39: PUSH2 0x0f07
00000f3c: JUMP
00000f3d: JUMPDEST
00000f3e: PUSH1 0x01
00000f40: SLOAD
00000f41: DUP2
00000f42: LT
00000f43: DUP1
00000f44: ISZERO
00000f45: PUSH2 0x0f60
00000f48: JUMPI
00000f49: POP
00000f4a: PUSH1 0x01
00000f4c: SLOAD
00000f4d: PUSH1 0x02
00000f4f: SWAP1
00000f50: PUSH2 0x0100
00000f53: DUP2
00000f54: LT
00000f55: ISZERO
00000f56: PUSH2 0x0002
00000f59: JUMPI
00000f5a: ADD
00000f5b: SLOAD
00000f5c: PUSH1 0x00
00000f5e: EQ
00000f5f: ISZERO
00000f60: JUMPDEST
00000f61: DUP1
00000f62: ISZERO
00000f63: PUSH2 0x0f7a
00000f66: JUMPI
00000f67: POP
00000f68: PUSH1 0x02
00000f6a: DUP2
00000f6b: PUSH2 0x0100
00000f6e: DUP2
00000f6f: LT
00000f70: ISZERO
00000f71: PUSH2 0x0002
00000f74: JUMPI
00000f75: ADD
00000f76: SLOAD
00000f77: PUSH1 0x00
00000f79: EQ
00000f7a: JUMPDEST
00000f7b: ISZERO
00000f7c: PUSH2 0x0fdb
00000f7f: JUMPI
00000f80: PUSH1 0x01
00000f82: SLOAD
00000f83: PUSH1 0x02
00000f85: SWAP1
00000f86: PUSH2 0x0100
00000f89: DUP2
00000f8a: LT
00000f8b: ISZERO
00000f8c: PUSH2 0x0002
00000f8f: JUMPI
00000f90: DUP2
00000f91: ADD
00000f92: SLOAD
00000f93: SWAP1
00000f94: DUP3
00000f95: PUSH2 0x0100
00000f98: DUP2
00000f99: LT
00000f9a: ISZERO
00000f9b: PUSH2 0x0002
00000f9e: JUMPI
00000f9f: SWAP1
00000fa0: SWAP1
00000fa1: ADD
00000fa2: PUSH1 0x00
00000fa4: POP
00000fa5: SSTORE
00000fa6: DUP1
00000fa7: PUSH2 0x0102
00000faa: PUSH1 0x00
00000fac: PUSH1 0x02
00000fae: DUP4
00000faf: PUSH2 0x0100
00000fb2: DUP2
00000fb3: LT
00000fb4: ISZERO
00000fb5: PUSH2 0x0002
00000fb8: JUMPI
00000fb9: DUP2
00000fba: ADD
00000fbb: SLOAD
00000fbc: DUP3
00000fbd: MSTORE
00000fbe: PUSH1 0x20
00000fc0: SWAP3
00000fc1: SWAP1
00000fc2: SWAP3
00000fc3: MSTORE
00000fc4: PUSH1 0x40
00000fc6: DUP2
00000fc7: KECCAK256
00000fc8: SWAP3
00000fc9: SWAP1
00000fca: SWAP3
00000fcb: SSTORE
00000fcc: PUSH1 0x01
00000fce: SLOAD
00000fcf: PUSH2 0x0100
00000fd2: DUP2
00000fd3: LT
00000fd4: ISZERO
00000fd5: PUSH2 0x0002
00000fd8: JUMPI
00000fd9: ADD
00000fda: SSTORE
00000fdb: JUMPDEST
00000fdc: PUSH2 0x0751
00000fdf: JUMP
00000fe0: JUMPDEST
00000fe1: ISZERO
00000fe2: PUSH2 0x021c
00000fe5: JUMPI
00000fe6: PUSH2 0x0107
00000fe9: SLOAD
00000fea: PUSH2 0x0ff6
00000fed: JUMPDEST
00000fee: PUSH3 0x015180
00000ff2: TIMESTAMP
00000ff3: DIV
00000ff4: SWAP1
00000ff5: JUMP
00000ff6: JUMPDEST
00000ff7: GT
00000ff8: ISZERO
00000ff9: PUSH2 0x100f
00000ffc: JUMPI
00000ffd: PUSH1 0x00
00000fff: PUSH2 0x0106
00001002: SSTORE
00001003: PUSH2 0x100a
00001006: PUSH2 0x0fed
00001009: JUMP
0000100a: JUMPDEST
0000100b: PUSH2 0x0107
0000100e: SSTORE
0000100f: JUMPDEST
00001010: PUSH2 0x0106
00001013: SLOAD
00001014: DUP1
00001015: DUP4
00001016: ADD
00001017: LT
00001018: DUP1
00001019: ISZERO
0000101a: SWAP1
0000101b: PUSH2 0x102c
0000101e: JUMPI
0000101f: POP
00001020: PUSH2 0x0105
00001023: SLOAD
00001024: PUSH2 0x0106
00001027: SLOAD
00001028: DUP4
00001029: ADD
0000102a: GT
0000102b: ISZERO
0000102c: JUMPDEST
0000102d: ISZERO
0000102e: PUSH2 0x1042
00001031: JUMPI
00001032: POP
00001033: PUSH2 0x0106
00001036: DUP1
00001037: SLOAD
00001038: DUP3
00001039: ADD
0000103a: SWAP1
0000103b: SSTORE
0000103c: PUSH1 0x01
0000103e: PUSH2 0x021c
00001041: JUMP
00001042: JUMPDEST
00001043: POP
00001044: PUSH1 0x00
00001046: PUSH2 0x021c
00001049: JUMP
0000104a: JUMPDEST
0000104b: PUSH2 0x070f
0000104e: PUSH2 0x0104
00001051: SLOAD
00001052: PUSH1 0x00
00001054: JUMPDEST
00001055: DUP2
00001056: DUP2
00001057: LT
00001058: ISZERO
00001059: PUSH2 0x10ed
0000105c: JUMPI
0000105d: PUSH2 0x0104
00001060: DUP1
00001061: SLOAD
00001062: DUP3
00001063: SWAP1
00001064: DUP2
00001065: LT
00001066: ISZERO
00001067: PUSH2 0x0002
0000106a: JUMPI
0000106b: PUSH1 0x00
0000106d: SWAP2
0000106e: DUP3
0000106f: MSTORE
00001070: PUSH1 0x00
00001072: DUP1
00001073: MLOAD
00001074: PUSH1 0x20
00001076: PUSH2 0x1117
00001079: DUP4
0000107a: CODECOPY
0000107b: DUP2
0000107c: MLOAD
0000107d: SWAP2
0000107e: MSTORE
0000107f: ADD
00001080: SLOAD
00001081: EQ
00001082: PUSH2 0x10c7
00001085: JUMPI
00001086: PUSH2 0x0104
00001089: DUP1
0000108a: SLOAD
0000108b: PUSH2 0x0103
0000108e: SWAP2
0000108f: PUSH1 0x00
00001091: SWAP2
00001092: DUP5
00001093: SWAP1
00001094: DUP2
00001095: LT
00001096: ISZERO
00001097: PUSH2 0x0002
0000109a: JUMPI
0000109b: PUSH1 0x00
0000109d: DUP1
0000109e: MLOAD
0000109f: PUSH1 0x20
000010a1: PUSH2 0x1117
000010a4: DUP4
000010a5: CODECOPY
000010a6: DUP2
000010a7: MLOAD
000010a8: SWAP2
000010a9: MSTORE
000010aa: ADD
000010ab: SLOAD
000010ac: DUP3
000010ad: MSTORE
000010ae: POP
000010af: PUSH1 0x20
000010b1: SWAP2
000010b2: SWAP1
000010b3: SWAP2
000010b4: MSTORE
000010b5: PUSH1 0x40
000010b7: DUP2
000010b8: KECCAK256
000010b9: DUP2
000010ba: DUP2
000010bb: SSTORE
000010bc: PUSH1 0x01
000010be: DUP2
000010bf: ADD
000010c0: DUP3
000010c1: SWAP1
000010c2: SSTORE
000010c3: PUSH1 0x02
000010c5: ADD
000010c6: SSTORE
000010c7: JUMPDEST
000010c8: PUSH1 0x01
000010ca: ADD
000010cb: PUSH2 0x1054
000010ce: JUMP
000010cf: JUMPDEST
000010d0: PUSH1 0x1f
000010d2: ADD
000010d3: PUSH1 0x20
000010d5: SWAP1
000010d6: DIV
000010d7: SWAP1
000010d8: PUSH1 0x00
000010da: MSTORE
000010db: PUSH1 0x20
000010dd: PUSH1 0x00
000010df: KECCAK256
000010e0: SWAP1
000010e1: DUP2
000010e2: ADD
000010e3: SWAP1
000010e4: PUSH2 0x0677
000010e7: SWAP2
000010e8: SWAP1
000010e9: PUSH2 0x0a90
000010ec: JUMP
000010ed: JUMPDEST
000010ee: PUSH2 0x0104
000010f1: DUP1
000010f2: SLOAD
000010f3: PUSH1 0x00
000010f5: DUP1
000010f6: DUP4
000010f7: SSTORE
000010f8: SWAP2
000010f9: SWAP1
000010fa: SWAP2
000010fb: MSTORE
000010fc: PUSH2 0x05ad
000010ff: SWAP1
00001100: PUSH1 0x00
00001102: DUP1
00001103: MLOAD
00001104: PUSH1 0x20
00001106: PUSH2 0x1117
00001109: DUP4
0000110a: CODECOPY
0000110b: DUP2
0000110c: MLOAD
0000110d: SWAP2
0000110e: MSTORE
0000110f: SWAP1
00001110: DUP2
00001111: ADD
00001112: SWAP1
00001113: PUSH2 0x0a90
00001116: JUMP
00001117: UNKNOWN(0x4C)
00001118: SIGNEXTEND
00001119: UNKNOWN(0xE6)
0000111a: MUL
0000111b: STOP
0000111c: STATICCALL
0000111d: LOG2
0000111e: SDIV
0000111f: MSIZE
00001120: ADDRESS
00001121: DUP13
00001122: UNKNOWN(0xB7)
00001123: UNKNOWN(0xB5)
00001124: LOG1
00001125: UNKNOWN(0xBB)
00001126: ORIGIN
00001127: SSTORE
00001128: UNKNOWN(0xC1)
00001129: PUSH13 0xb1cab91f525b5ae7a03d02fabe
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": "0x173825d9",
            "selector": "0x173825d9",
            "calldata_variants": [
                "0x173825d9",
                "0x173825d90000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x2f54bf6e",
            "selector": "0x2f54bf6e",
            "calldata_variants": [
                "0x2f54bf6e",
                "0x2f54bf6e0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x4123cb6b",
            "selector": "0x4123cb6b",
            "calldata_variants": [
                "0x4123cb6b",
                "0x4123cb6b0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x5c52c2f5",
            "selector": "0x5c52c2f5",
            "calldata_variants": [
                "0x5c52c2f5",
                "0x5c52c2f50000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x632a9a52",
            "selector": "0x632a9a52",
            "calldata_variants": [
                "0x632a9a52",
                "0x632a9a520000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x7065cb48",
            "selector": "0x7065cb48",
            "calldata_variants": [
                "0x7065cb48",
                "0x7065cb480000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x746c9171",
            "selector": "0x746c9171",
            "calldata_variants": [
                "0x746c9171",
                "0x746c91710000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x797af627",
            "selector": "0x797af627",
            "calldata_variants": [
                "0x797af627",
                "0x797af6270000000000000000000000000000000000000000000000000000000000000000"
            ]
        }
    ]
}
evidence_json
{
    "guards_detected": [
        {
            "pc": 4390,
            "type": "tx_origin_used"
        }
    ]
}
medium other detector Untrusted CALL target/value reachable 45 no no
view
trace_id: 0x3f15b5e306b2c97b492525bcec2db73998d3ff9b08496d7e61afd23a3cdf8af6
call_targets: 0x3ae3baa2741c2b847547747bddd037bc7cf7c2c7
target_varies: no
classification: constant_target
validation_json
{
    "sink": "CALL",
    "errors": 0,
    "status": "sink_reached",
    "attempts": 1,
    "trace_id": "0x3f15b5e306b2c97b492525bcec2db73998d3ff9b08496d7e61afd23a3cdf8af6",
    "confirmed": false,
    "trace_mode": "callTracer",
    "call_targets": [
        "0x3ae3baa2741c2b847547747bddd037bc7cf7c2c7"
    ],
    "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": "0x173825d9",
            "selector": "0x173825d9",
            "calldata_variants": [
                "0x173825d9",
                "0x173825d90000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x2f54bf6e",
            "selector": "0x2f54bf6e",
            "calldata_variants": [
                "0x2f54bf6e",
                "0x2f54bf6e0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x4123cb6b",
            "selector": "0x4123cb6b",
            "calldata_variants": [
                "0x4123cb6b",
                "0x4123cb6b0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x5c52c2f5",
            "selector": "0x5c52c2f5",
            "calldata_variants": [
                "0x5c52c2f5",
                "0x5c52c2f50000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x632a9a52",
            "selector": "0x632a9a52",
            "calldata_variants": [
                "0x632a9a52",
                "0x632a9a520000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x7065cb48",
            "selector": "0x7065cb48",
            "calldata_variants": [
                "0x7065cb48",
                "0x7065cb480000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x746c9171",
            "selector": "0x746c9171",
            "calldata_variants": [
                "0x746c9171",
                "0x746c91710000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x797af627",
            "selector": "0x797af627",
            "calldata_variants": [
                "0x797af627",
                "0x797af6270000000000000000000000000000000000000000000000000000000000000000"
            ]
        }
    ]
}
evidence_json
{
    "examples": [
        {
            "pc": 333,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        },
        {
            "pc": 703,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        },
        {
            "pc": 2478,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        }
    ],
    "call_count": 4,
    "guards_detected": [
        {
            "pc": 4390,
            "type": "tx_origin_used"
        }
    ],
    "untrusted_call_count": 4
}
medium other detector ETH value transfer possible 40 no no
view
trace_id: 0x3f15b5e306b2c97b492525bcec2db73998d3ff9b08496d7e61afd23a3cdf8af6
call_targets: 0x3ae3baa2741c2b847547747bddd037bc7cf7c2c7
target_varies: no
classification: constant_target
validation_json
{
    "sink": "CALL",
    "errors": 0,
    "status": "sink_reached",
    "attempts": 1,
    "trace_id": "0x3f15b5e306b2c97b492525bcec2db73998d3ff9b08496d7e61afd23a3cdf8af6",
    "confirmed": false,
    "trace_mode": "callTracer",
    "call_targets": [
        "0x3ae3baa2741c2b847547747bddd037bc7cf7c2c7"
    ],
    "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": "0x173825d9",
            "selector": "0x173825d9",
            "calldata_variants": [
                "0x173825d9",
                "0x173825d90000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x2f54bf6e",
            "selector": "0x2f54bf6e",
            "calldata_variants": [
                "0x2f54bf6e",
                "0x2f54bf6e0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x4123cb6b",
            "selector": "0x4123cb6b",
            "calldata_variants": [
                "0x4123cb6b",
                "0x4123cb6b0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x5c52c2f5",
            "selector": "0x5c52c2f5",
            "calldata_variants": [
                "0x5c52c2f5",
                "0x5c52c2f50000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x632a9a52",
            "selector": "0x632a9a52",
            "calldata_variants": [
                "0x632a9a52",
                "0x632a9a520000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x7065cb48",
            "selector": "0x7065cb48",
            "calldata_variants": [
                "0x7065cb48",
                "0x7065cb480000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x746c9171",
            "selector": "0x746c9171",
            "calldata_variants": [
                "0x746c9171",
                "0x746c91710000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x797af627",
            "selector": "0x797af627",
            "calldata_variants": [
                "0x797af627",
                "0x797af6270000000000000000000000000000000000000000000000000000000000000000"
            ]
        }
    ]
}
evidence_json
{
    "examples": [
        {
            "pc": 333,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        },
        {
            "pc": 703,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        },
        {
            "pc": 2478,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        }
    ],
    "eth_value_calls": 4,
    "guards_detected": [
        {
            "pc": 4390,
            "type": "tx_origin_used"
        }
    ]
}
medium other detector SELFDESTRUCT reachable 45 no no
view
trace_id: 0xff3e20b93614b0bf8eaaa1d2bc4bf14a73e8a712cb4a5052cd01ee66fd1229c7
validation_json
{
    "sink": "SELFDESTRUCT",
    "errors": 0,
    "status": "unknown",
    "attempts": 32,
    "trace_id": "0xff3e20b93614b0bf8eaaa1d2bc4bf14a73e8a712cb4a5052cd01ee66fd1229c7",
    "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": "0x173825d9",
            "selector": "0x173825d9",
            "calldata_variants": [
                "0x173825d9",
                "0x173825d90000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x2f54bf6e",
            "selector": "0x2f54bf6e",
            "calldata_variants": [
                "0x2f54bf6e",
                "0x2f54bf6e0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x4123cb6b",
            "selector": "0x4123cb6b",
            "calldata_variants": [
                "0x4123cb6b",
                "0x4123cb6b0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x5c52c2f5",
            "selector": "0x5c52c2f5",
            "calldata_variants": [
                "0x5c52c2f5",
                "0x5c52c2f50000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x632a9a52",
            "selector": "0x632a9a52",
            "calldata_variants": [
                "0x632a9a52",
                "0x632a9a520000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x7065cb48",
            "selector": "0x7065cb48",
            "calldata_variants": [
                "0x7065cb48",
                "0x7065cb480000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x746c9171",
            "selector": "0x746c9171",
            "calldata_variants": [
                "0x746c9171",
                "0x746c91710000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x797af627",
            "selector": "0x797af627",
            "calldata_variants": [
                "0x797af627",
                "0x797af6270000000000000000000000000000000000000000000000000000000000000000"
            ]
        }
    ]
}
evidence_json
{
    "guards_detected": [
        {
            "pc": 4390,
            "type": "tx_origin_used"
        }
    ],
    "selfdestruct_count": 1
}