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

Analysis Run

019ba940-89bb-71e8-aed9-f3bdce2ac55e

complete
Chain ID
1
Address
Block Number
Created
Sat, Jan 10, 2026 6:52 PM
Review Summary

What survived the funnel

Open this run to answer one question: is this real attacker-relevant behavior with real impact, or just normal contract plumbing?

Confirmed
0
Validated
0
Source
Verified
Review Backing
Not yet
Best current signal
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
36679 artifact.fetch complete 1 / 3 3 months ago
36680 proxy.resolve complete 1 / 3 3 months ago
36681 tool.cast_disasm complete 1 / 3 3 months ago
36682 analysis.bundle complete 1 / 3 3 months ago
36683 capability.graph complete 1 / 3 3 months ago
36684 detector.run complete 1 / 3 3 months ago
36685 validation.fork complete 1 / 3 3 months ago

Artifact

Runtime bytecode: available
Creation TX:
Deployer:
Proxy: no not_proxy
Implementation:
Verified Source: yes
Proxy evidence
{
    "status": "not_proxy"
}

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
0
CALL-family (heavy)
0
EXT*/BALANCE
1
Total opcodes
2151
Flags
No heuristic flags raised.
View cast disassembly output
00000000: PUSH1 0x80
00000002: PUSH1 0x40
00000004: MSTORE
00000005: CALLVALUE
00000006: DUP1
00000007: ISZERO
00000008: PUSH2 0x0010
0000000b: JUMPI
0000000c: PUSH1 0x00
0000000e: DUP1
0000000f: REVERT
00000010: JUMPDEST
00000011: POP
00000012: PUSH1 0x04
00000014: CALLDATASIZE
00000015: LT
00000016: PUSH2 0x00a9
00000019: JUMPI
0000001a: PUSH1 0x00
0000001c: CALLDATALOAD
0000001d: PUSH1 0xe0
0000001f: SHR
00000020: DUP1
00000021: PUSH4 0x39509351
00000026: GT
00000027: PUSH2 0x0071
0000002a: JUMPI
0000002b: DUP1
0000002c: PUSH4 0x39509351
00000031: EQ
00000032: PUSH2 0x0258
00000035: JUMPI
00000036: DUP1
00000037: PUSH4 0x70a08231
0000003c: EQ
0000003d: PUSH2 0x02bc
00000040: JUMPI
00000041: DUP1
00000042: PUSH4 0x95d89b41
00000047: EQ
00000048: PUSH2 0x0314
0000004b: JUMPI
0000004c: DUP1
0000004d: PUSH4 0xa457c2d7
00000052: EQ
00000053: PUSH2 0x0397
00000056: JUMPI
00000057: DUP1
00000058: PUSH4 0xa9059cbb
0000005d: EQ
0000005e: PUSH2 0x03fb
00000061: JUMPI
00000062: DUP1
00000063: PUSH4 0xdd62ed3e
00000068: EQ
00000069: PUSH2 0x045f
0000006c: JUMPI
0000006d: PUSH2 0x00a9
00000070: JUMP
00000071: JUMPDEST
00000072: DUP1
00000073: PUSH4 0x06fdde03
00000078: EQ
00000079: PUSH2 0x00ae
0000007c: JUMPI
0000007d: DUP1
0000007e: PUSH4 0x095ea7b3
00000083: EQ
00000084: PUSH2 0x0131
00000087: JUMPI
00000088: DUP1
00000089: PUSH4 0x18160ddd
0000008e: EQ
0000008f: PUSH2 0x0195
00000092: JUMPI
00000093: DUP1
00000094: PUSH4 0x23b872dd
00000099: EQ
0000009a: PUSH2 0x01b3
0000009d: JUMPI
0000009e: DUP1
0000009f: PUSH4 0x313ce567
000000a4: EQ
000000a5: PUSH2 0x0237
000000a8: JUMPI
000000a9: JUMPDEST
000000aa: PUSH1 0x00
000000ac: DUP1
000000ad: REVERT
000000ae: JUMPDEST
000000af: PUSH2 0x00b6
000000b2: PUSH2 0x04d7
000000b5: JUMP
000000b6: JUMPDEST
000000b7: PUSH1 0x40
000000b9: MLOAD
000000ba: DUP1
000000bb: DUP1
000000bc: PUSH1 0x20
000000be: ADD
000000bf: DUP3
000000c0: DUP2
000000c1: SUB
000000c2: DUP3
000000c3: MSTORE
000000c4: DUP4
000000c5: DUP2
000000c6: DUP2
000000c7: MLOAD
000000c8: DUP2
000000c9: MSTORE
000000ca: PUSH1 0x20
000000cc: ADD
000000cd: SWAP2
000000ce: POP
000000cf: DUP1
000000d0: MLOAD
000000d1: SWAP1
000000d2: PUSH1 0x20
000000d4: ADD
000000d5: SWAP1
000000d6: DUP1
000000d7: DUP4
000000d8: DUP4
000000d9: PUSH1 0x00
000000db: JUMPDEST
000000dc: DUP4
000000dd: DUP2
000000de: LT
000000df: ISZERO
000000e0: PUSH2 0x00f6
000000e3: JUMPI
000000e4: DUP1
000000e5: DUP3
000000e6: ADD
000000e7: MLOAD
000000e8: DUP2
000000e9: DUP5
000000ea: ADD
000000eb: MSTORE
000000ec: PUSH1 0x20
000000ee: DUP2
000000ef: ADD
000000f0: SWAP1
000000f1: POP
000000f2: PUSH2 0x00db
000000f5: JUMP
000000f6: JUMPDEST
000000f7: POP
000000f8: POP
000000f9: POP
000000fa: POP
000000fb: SWAP1
000000fc: POP
000000fd: SWAP1
000000fe: DUP2
000000ff: ADD
00000100: SWAP1
00000101: PUSH1 0x1f
00000103: AND
00000104: DUP1
00000105: ISZERO
00000106: PUSH2 0x0123
00000109: JUMPI
0000010a: DUP1
0000010b: DUP3
0000010c: SUB
0000010d: DUP1
0000010e: MLOAD
0000010f: PUSH1 0x01
00000111: DUP4
00000112: PUSH1 0x20
00000114: SUB
00000115: PUSH2 0x0100
00000118: EXP
00000119: SUB
0000011a: NOT
0000011b: AND
0000011c: DUP2
0000011d: MSTORE
0000011e: PUSH1 0x20
00000120: ADD
00000121: SWAP2
00000122: POP
00000123: JUMPDEST
00000124: POP
00000125: SWAP3
00000126: POP
00000127: POP
00000128: POP
00000129: PUSH1 0x40
0000012b: MLOAD
0000012c: DUP1
0000012d: SWAP2
0000012e: SUB
0000012f: SWAP1
00000130: RETURN
00000131: JUMPDEST
00000132: PUSH2 0x017d
00000135: PUSH1 0x04
00000137: DUP1
00000138: CALLDATASIZE
00000139: SUB
0000013a: PUSH1 0x40
0000013c: DUP2
0000013d: LT
0000013e: ISZERO
0000013f: PUSH2 0x0147
00000142: JUMPI
00000143: PUSH1 0x00
00000145: DUP1
00000146: REVERT
00000147: JUMPDEST
00000148: DUP2
00000149: ADD
0000014a: SWAP1
0000014b: DUP1
0000014c: DUP1
0000014d: CALLDATALOAD
0000014e: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000163: AND
00000164: SWAP1
00000165: PUSH1 0x20
00000167: ADD
00000168: SWAP1
00000169: SWAP3
0000016a: SWAP2
0000016b: SWAP1
0000016c: DUP1
0000016d: CALLDATALOAD
0000016e: SWAP1
0000016f: PUSH1 0x20
00000171: ADD
00000172: SWAP1
00000173: SWAP3
00000174: SWAP2
00000175: SWAP1
00000176: POP
00000177: POP
00000178: POP
00000179: PUSH2 0x0579
0000017c: JUMP
0000017d: JUMPDEST
0000017e: PUSH1 0x40
00000180: MLOAD
00000181: DUP1
00000182: DUP3
00000183: ISZERO
00000184: ISZERO
00000185: DUP2
00000186: MSTORE
00000187: PUSH1 0x20
00000189: ADD
0000018a: SWAP2
0000018b: POP
0000018c: POP
0000018d: PUSH1 0x40
0000018f: MLOAD
00000190: DUP1
00000191: SWAP2
00000192: SUB
00000193: SWAP1
00000194: RETURN
00000195: JUMPDEST
00000196: PUSH2 0x019d
00000199: PUSH2 0x0597
0000019c: JUMP
0000019d: JUMPDEST
0000019e: PUSH1 0x40
000001a0: MLOAD
000001a1: DUP1
000001a2: DUP3
000001a3: DUP2
000001a4: MSTORE
000001a5: PUSH1 0x20
000001a7: ADD
000001a8: SWAP2
000001a9: POP
000001aa: POP
000001ab: PUSH1 0x40
000001ad: MLOAD
000001ae: DUP1
000001af: SWAP2
000001b0: SUB
000001b1: SWAP1
000001b2: RETURN
000001b3: JUMPDEST
000001b4: PUSH2 0x021f
000001b7: PUSH1 0x04
000001b9: DUP1
000001ba: CALLDATASIZE
000001bb: SUB
000001bc: PUSH1 0x60
000001be: DUP2
000001bf: LT
000001c0: ISZERO
000001c1: PUSH2 0x01c9
000001c4: JUMPI
000001c5: PUSH1 0x00
000001c7: DUP1
000001c8: REVERT
000001c9: JUMPDEST
000001ca: DUP2
000001cb: ADD
000001cc: SWAP1
000001cd: DUP1
000001ce: DUP1
000001cf: CALLDATALOAD
000001d0: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000001e5: AND
000001e6: SWAP1
000001e7: PUSH1 0x20
000001e9: ADD
000001ea: SWAP1
000001eb: SWAP3
000001ec: SWAP2
000001ed: SWAP1
000001ee: DUP1
000001ef: CALLDATALOAD
000001f0: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000205: AND
00000206: SWAP1
00000207: PUSH1 0x20
00000209: ADD
0000020a: SWAP1
0000020b: SWAP3
0000020c: SWAP2
0000020d: SWAP1
0000020e: DUP1
0000020f: CALLDATALOAD
00000210: SWAP1
00000211: PUSH1 0x20
00000213: ADD
00000214: SWAP1
00000215: SWAP3
00000216: SWAP2
00000217: SWAP1
00000218: POP
00000219: POP
0000021a: POP
0000021b: PUSH2 0x05a1
0000021e: JUMP
0000021f: JUMPDEST
00000220: PUSH1 0x40
00000222: MLOAD
00000223: DUP1
00000224: DUP3
00000225: ISZERO
00000226: ISZERO
00000227: DUP2
00000228: MSTORE
00000229: PUSH1 0x20
0000022b: ADD
0000022c: SWAP2
0000022d: POP
0000022e: POP
0000022f: PUSH1 0x40
00000231: MLOAD
00000232: DUP1
00000233: SWAP2
00000234: SUB
00000235: SWAP1
00000236: RETURN
00000237: JUMPDEST
00000238: PUSH2 0x023f
0000023b: PUSH2 0x067a
0000023e: JUMP
0000023f: JUMPDEST
00000240: PUSH1 0x40
00000242: MLOAD
00000243: DUP1
00000244: DUP3
00000245: PUSH1 0xff
00000247: AND
00000248: DUP2
00000249: MSTORE
0000024a: PUSH1 0x20
0000024c: ADD
0000024d: SWAP2
0000024e: POP
0000024f: POP
00000250: PUSH1 0x40
00000252: MLOAD
00000253: DUP1
00000254: SWAP2
00000255: SUB
00000256: SWAP1
00000257: RETURN
00000258: JUMPDEST
00000259: PUSH2 0x02a4
0000025c: PUSH1 0x04
0000025e: DUP1
0000025f: CALLDATASIZE
00000260: SUB
00000261: PUSH1 0x40
00000263: DUP2
00000264: LT
00000265: ISZERO
00000266: PUSH2 0x026e
00000269: JUMPI
0000026a: PUSH1 0x00
0000026c: DUP1
0000026d: REVERT
0000026e: JUMPDEST
0000026f: DUP2
00000270: ADD
00000271: SWAP1
00000272: DUP1
00000273: DUP1
00000274: CALLDATALOAD
00000275: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
0000028a: AND
0000028b: SWAP1
0000028c: PUSH1 0x20
0000028e: ADD
0000028f: SWAP1
00000290: SWAP3
00000291: SWAP2
00000292: SWAP1
00000293: DUP1
00000294: CALLDATALOAD
00000295: SWAP1
00000296: PUSH1 0x20
00000298: ADD
00000299: SWAP1
0000029a: SWAP3
0000029b: SWAP2
0000029c: SWAP1
0000029d: POP
0000029e: POP
0000029f: POP
000002a0: PUSH2 0x0691
000002a3: JUMP
000002a4: JUMPDEST
000002a5: PUSH1 0x40
000002a7: MLOAD
000002a8: DUP1
000002a9: DUP3
000002aa: ISZERO
000002ab: ISZERO
000002ac: DUP2
000002ad: MSTORE
000002ae: PUSH1 0x20
000002b0: ADD
000002b1: SWAP2
000002b2: POP
000002b3: POP
000002b4: PUSH1 0x40
000002b6: MLOAD
000002b7: DUP1
000002b8: SWAP2
000002b9: SUB
000002ba: SWAP1
000002bb: RETURN
000002bc: JUMPDEST
000002bd: PUSH2 0x02fe
000002c0: PUSH1 0x04
000002c2: DUP1
000002c3: CALLDATASIZE
000002c4: SUB
000002c5: PUSH1 0x20
000002c7: DUP2
000002c8: LT
000002c9: ISZERO
000002ca: PUSH2 0x02d2
000002cd: JUMPI
000002ce: PUSH1 0x00
000002d0: DUP1
000002d1: REVERT
000002d2: JUMPDEST
000002d3: DUP2
000002d4: ADD
000002d5: SWAP1
000002d6: DUP1
000002d7: DUP1
000002d8: CALLDATALOAD
000002d9: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000002ee: AND
000002ef: SWAP1
000002f0: PUSH1 0x20
000002f2: ADD
000002f3: SWAP1
000002f4: SWAP3
000002f5: SWAP2
000002f6: SWAP1
000002f7: POP
000002f8: POP
000002f9: POP
000002fa: PUSH2 0x0744
000002fd: JUMP
000002fe: JUMPDEST
000002ff: PUSH1 0x40
00000301: MLOAD
00000302: DUP1
00000303: DUP3
00000304: DUP2
00000305: MSTORE
00000306: PUSH1 0x20
00000308: ADD
00000309: SWAP2
0000030a: POP
0000030b: POP
0000030c: PUSH1 0x40
0000030e: MLOAD
0000030f: DUP1
00000310: SWAP2
00000311: SUB
00000312: SWAP1
00000313: RETURN
00000314: JUMPDEST
00000315: PUSH2 0x031c
00000318: PUSH2 0x078c
0000031b: JUMP
0000031c: JUMPDEST
0000031d: PUSH1 0x40
0000031f: MLOAD
00000320: DUP1
00000321: DUP1
00000322: PUSH1 0x20
00000324: ADD
00000325: DUP3
00000326: DUP2
00000327: SUB
00000328: DUP3
00000329: MSTORE
0000032a: DUP4
0000032b: DUP2
0000032c: DUP2
0000032d: MLOAD
0000032e: DUP2
0000032f: MSTORE
00000330: PUSH1 0x20
00000332: ADD
00000333: SWAP2
00000334: POP
00000335: DUP1
00000336: MLOAD
00000337: SWAP1
00000338: PUSH1 0x20
0000033a: ADD
0000033b: SWAP1
0000033c: DUP1
0000033d: DUP4
0000033e: DUP4
0000033f: PUSH1 0x00
00000341: JUMPDEST
00000342: DUP4
00000343: DUP2
00000344: LT
00000345: ISZERO
00000346: PUSH2 0x035c
00000349: JUMPI
0000034a: DUP1
0000034b: DUP3
0000034c: ADD
0000034d: MLOAD
0000034e: DUP2
0000034f: DUP5
00000350: ADD
00000351: MSTORE
00000352: PUSH1 0x20
00000354: DUP2
00000355: ADD
00000356: SWAP1
00000357: POP
00000358: PUSH2 0x0341
0000035b: JUMP
0000035c: JUMPDEST
0000035d: POP
0000035e: POP
0000035f: POP
00000360: POP
00000361: SWAP1
00000362: POP
00000363: SWAP1
00000364: DUP2
00000365: ADD
00000366: SWAP1
00000367: PUSH1 0x1f
00000369: AND
0000036a: DUP1
0000036b: ISZERO
0000036c: PUSH2 0x0389
0000036f: JUMPI
00000370: DUP1
00000371: DUP3
00000372: SUB
00000373: DUP1
00000374: MLOAD
00000375: PUSH1 0x01
00000377: DUP4
00000378: PUSH1 0x20
0000037a: SUB
0000037b: PUSH2 0x0100
0000037e: EXP
0000037f: SUB
00000380: NOT
00000381: AND
00000382: DUP2
00000383: MSTORE
00000384: PUSH1 0x20
00000386: ADD
00000387: SWAP2
00000388: POP
00000389: JUMPDEST
0000038a: POP
0000038b: SWAP3
0000038c: POP
0000038d: POP
0000038e: POP
0000038f: PUSH1 0x40
00000391: MLOAD
00000392: DUP1
00000393: SWAP2
00000394: SUB
00000395: SWAP1
00000396: RETURN
00000397: JUMPDEST
00000398: PUSH2 0x03e3
0000039b: PUSH1 0x04
0000039d: DUP1
0000039e: CALLDATASIZE
0000039f: SUB
000003a0: PUSH1 0x40
000003a2: DUP2
000003a3: LT
000003a4: ISZERO
000003a5: PUSH2 0x03ad
000003a8: JUMPI
000003a9: PUSH1 0x00
000003ab: DUP1
000003ac: REVERT
000003ad: JUMPDEST
000003ae: DUP2
000003af: ADD
000003b0: SWAP1
000003b1: DUP1
000003b2: DUP1
000003b3: CALLDATALOAD
000003b4: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000003c9: AND
000003ca: SWAP1
000003cb: PUSH1 0x20
000003cd: ADD
000003ce: SWAP1
000003cf: SWAP3
000003d0: SWAP2
000003d1: SWAP1
000003d2: DUP1
000003d3: CALLDATALOAD
000003d4: SWAP1
000003d5: PUSH1 0x20
000003d7: ADD
000003d8: SWAP1
000003d9: SWAP3
000003da: SWAP2
000003db: SWAP1
000003dc: POP
000003dd: POP
000003de: POP
000003df: PUSH2 0x082e
000003e2: JUMP
000003e3: JUMPDEST
000003e4: PUSH1 0x40
000003e6: MLOAD
000003e7: DUP1
000003e8: DUP3
000003e9: ISZERO
000003ea: ISZERO
000003eb: DUP2
000003ec: MSTORE
000003ed: PUSH1 0x20
000003ef: ADD
000003f0: SWAP2
000003f1: POP
000003f2: POP
000003f3: PUSH1 0x40
000003f5: MLOAD
000003f6: DUP1
000003f7: SWAP2
000003f8: SUB
000003f9: SWAP1
000003fa: RETURN
000003fb: JUMPDEST
000003fc: PUSH2 0x0447
000003ff: PUSH1 0x04
00000401: DUP1
00000402: CALLDATASIZE
00000403: SUB
00000404: PUSH1 0x40
00000406: DUP2
00000407: LT
00000408: ISZERO
00000409: PUSH2 0x0411
0000040c: JUMPI
0000040d: PUSH1 0x00
0000040f: DUP1
00000410: REVERT
00000411: JUMPDEST
00000412: DUP2
00000413: ADD
00000414: SWAP1
00000415: DUP1
00000416: DUP1
00000417: CALLDATALOAD
00000418: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
0000042d: AND
0000042e: SWAP1
0000042f: PUSH1 0x20
00000431: ADD
00000432: SWAP1
00000433: SWAP3
00000434: SWAP2
00000435: SWAP1
00000436: DUP1
00000437: CALLDATALOAD
00000438: SWAP1
00000439: PUSH1 0x20
0000043b: ADD
0000043c: SWAP1
0000043d: SWAP3
0000043e: SWAP2
0000043f: SWAP1
00000440: POP
00000441: POP
00000442: POP
00000443: PUSH2 0x08fb
00000446: JUMP
00000447: JUMPDEST
00000448: PUSH1 0x40
0000044a: MLOAD
0000044b: DUP1
0000044c: DUP3
0000044d: ISZERO
0000044e: ISZERO
0000044f: DUP2
00000450: MSTORE
00000451: PUSH1 0x20
00000453: ADD
00000454: SWAP2
00000455: POP
00000456: POP
00000457: PUSH1 0x40
00000459: MLOAD
0000045a: DUP1
0000045b: SWAP2
0000045c: SUB
0000045d: SWAP1
0000045e: RETURN
0000045f: JUMPDEST
00000460: PUSH2 0x04c1
00000463: PUSH1 0x04
00000465: DUP1
00000466: CALLDATASIZE
00000467: SUB
00000468: PUSH1 0x40
0000046a: DUP2
0000046b: LT
0000046c: ISZERO
0000046d: PUSH2 0x0475
00000470: JUMPI
00000471: PUSH1 0x00
00000473: DUP1
00000474: REVERT
00000475: JUMPDEST
00000476: DUP2
00000477: ADD
00000478: SWAP1
00000479: DUP1
0000047a: DUP1
0000047b: CALLDATALOAD
0000047c: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000491: AND
00000492: SWAP1
00000493: PUSH1 0x20
00000495: ADD
00000496: SWAP1
00000497: SWAP3
00000498: SWAP2
00000499: SWAP1
0000049a: DUP1
0000049b: CALLDATALOAD
0000049c: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000004b1: AND
000004b2: SWAP1
000004b3: PUSH1 0x20
000004b5: ADD
000004b6: SWAP1
000004b7: SWAP3
000004b8: SWAP2
000004b9: SWAP1
000004ba: POP
000004bb: POP
000004bc: POP
000004bd: PUSH2 0x0919
000004c0: JUMP
000004c1: JUMPDEST
000004c2: PUSH1 0x40
000004c4: MLOAD
000004c5: DUP1
000004c6: DUP3
000004c7: DUP2
000004c8: MSTORE
000004c9: PUSH1 0x20
000004cb: ADD
000004cc: SWAP2
000004cd: POP
000004ce: POP
000004cf: PUSH1 0x40
000004d1: MLOAD
000004d2: DUP1
000004d3: SWAP2
000004d4: SUB
000004d5: SWAP1
000004d6: RETURN
000004d7: JUMPDEST
000004d8: PUSH1 0x60
000004da: PUSH1 0x03
000004dc: DUP1
000004dd: SLOAD
000004de: PUSH1 0x01
000004e0: DUP2
000004e1: PUSH1 0x01
000004e3: AND
000004e4: ISZERO
000004e5: PUSH2 0x0100
000004e8: MUL
000004e9: SUB
000004ea: AND
000004eb: PUSH1 0x02
000004ed: SWAP1
000004ee: DIV
000004ef: DUP1
000004f0: PUSH1 0x1f
000004f2: ADD
000004f3: PUSH1 0x20
000004f5: DUP1
000004f6: SWAP2
000004f7: DIV
000004f8: MUL
000004f9: PUSH1 0x20
000004fb: ADD
000004fc: PUSH1 0x40
000004fe: MLOAD
000004ff: SWAP1
00000500: DUP2
00000501: ADD
00000502: PUSH1 0x40
00000504: MSTORE
00000505: DUP1
00000506: SWAP3
00000507: SWAP2
00000508: SWAP1
00000509: DUP2
0000050a: DUP2
0000050b: MSTORE
0000050c: PUSH1 0x20
0000050e: ADD
0000050f: DUP3
00000510: DUP1
00000511: SLOAD
00000512: PUSH1 0x01
00000514: DUP2
00000515: PUSH1 0x01
00000517: AND
00000518: ISZERO
00000519: PUSH2 0x0100
0000051c: MUL
0000051d: SUB
0000051e: AND
0000051f: PUSH1 0x02
00000521: SWAP1
00000522: DIV
00000523: DUP1
00000524: ISZERO
00000525: PUSH2 0x056f
00000528: JUMPI
00000529: DUP1
0000052a: PUSH1 0x1f
0000052c: LT
0000052d: PUSH2 0x0544
00000530: JUMPI
00000531: PUSH2 0x0100
00000534: DUP1
00000535: DUP4
00000536: SLOAD
00000537: DIV
00000538: MUL
00000539: DUP4
0000053a: MSTORE
0000053b: SWAP2
0000053c: PUSH1 0x20
0000053e: ADD
0000053f: SWAP2
00000540: PUSH2 0x056f
00000543: JUMP
00000544: JUMPDEST
00000545: DUP3
00000546: ADD
00000547: SWAP2
00000548: SWAP1
00000549: PUSH1 0x00
0000054b: MSTORE
0000054c: PUSH1 0x20
0000054e: PUSH1 0x00
00000550: KECCAK256
00000551: SWAP1
00000552: JUMPDEST
00000553: DUP2
00000554: SLOAD
00000555: DUP2
00000556: MSTORE
00000557: SWAP1
00000558: PUSH1 0x01
0000055a: ADD
0000055b: SWAP1
0000055c: PUSH1 0x20
0000055e: ADD
0000055f: DUP1
00000560: DUP4
00000561: GT
00000562: PUSH2 0x0552
00000565: JUMPI
00000566: DUP3
00000567: SWAP1
00000568: SUB
00000569: PUSH1 0x1f
0000056b: AND
0000056c: DUP3
0000056d: ADD
0000056e: SWAP2
0000056f: JUMPDEST
00000570: POP
00000571: POP
00000572: POP
00000573: POP
00000574: POP
00000575: SWAP1
00000576: POP
00000577: SWAP1
00000578: JUMP
00000579: JUMPDEST
0000057a: PUSH1 0x00
0000057c: PUSH2 0x058d
0000057f: PUSH2 0x0586
00000582: PUSH2 0x0a28
00000585: JUMP
00000586: JUMPDEST
00000587: DUP5
00000588: DUP5
00000589: PUSH2 0x0a30
0000058c: JUMP
0000058d: JUMPDEST
0000058e: PUSH1 0x01
00000590: SWAP1
00000591: POP
00000592: SWAP3
00000593: SWAP2
00000594: POP
00000595: POP
00000596: JUMP
00000597: JUMPDEST
00000598: PUSH1 0x00
0000059a: PUSH1 0x02
0000059c: SLOAD
0000059d: SWAP1
0000059e: POP
0000059f: SWAP1
000005a0: JUMP
000005a1: JUMPDEST
000005a2: PUSH1 0x00
000005a4: PUSH2 0x05ae
000005a7: DUP5
000005a8: DUP5
000005a9: DUP5
000005aa: PUSH2 0x0c27
000005ad: JUMP
000005ae: JUMPDEST
000005af: PUSH2 0x066f
000005b2: DUP5
000005b3: PUSH2 0x05ba
000005b6: PUSH2 0x0a28
000005b9: JUMP
000005ba: JUMPDEST
000005bb: PUSH2 0x066a
000005be: DUP6
000005bf: PUSH1 0x40
000005c1: MLOAD
000005c2: DUP1
000005c3: PUSH1 0x60
000005c5: ADD
000005c6: PUSH1 0x40
000005c8: MSTORE
000005c9: DUP1
000005ca: PUSH1 0x28
000005cc: DUP2
000005cd: MSTORE
000005ce: PUSH1 0x20
000005d0: ADD
000005d1: PUSH2 0x1013
000005d4: PUSH1 0x28
000005d6: SWAP2
000005d7: CODECOPY
000005d8: PUSH1 0x01
000005da: PUSH1 0x00
000005dc: DUP12
000005dd: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000005f2: AND
000005f3: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000608: AND
00000609: DUP2
0000060a: MSTORE
0000060b: PUSH1 0x20
0000060d: ADD
0000060e: SWAP1
0000060f: DUP2
00000610: MSTORE
00000611: PUSH1 0x20
00000613: ADD
00000614: PUSH1 0x00
00000616: KECCAK256
00000617: PUSH1 0x00
00000619: PUSH2 0x0620
0000061c: PUSH2 0x0a28
0000061f: JUMP
00000620: JUMPDEST
00000621: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000636: AND
00000637: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
0000064c: AND
0000064d: DUP2
0000064e: MSTORE
0000064f: PUSH1 0x20
00000651: ADD
00000652: SWAP1
00000653: DUP2
00000654: MSTORE
00000655: PUSH1 0x20
00000657: ADD
00000658: PUSH1 0x00
0000065a: KECCAK256
0000065b: SLOAD
0000065c: PUSH2 0x0ee8
0000065f: SWAP1
00000660: SWAP3
00000661: SWAP2
00000662: SWAP1
00000663: PUSH4 0xffffffff
00000668: AND
00000669: JUMP
0000066a: JUMPDEST
0000066b: PUSH2 0x0a30
0000066e: JUMP
0000066f: JUMPDEST
00000670: PUSH1 0x01
00000672: SWAP1
00000673: POP
00000674: SWAP4
00000675: SWAP3
00000676: POP
00000677: POP
00000678: POP
00000679: JUMP
0000067a: JUMPDEST
0000067b: PUSH1 0x00
0000067d: PUSH1 0x05
0000067f: PUSH1 0x00
00000681: SWAP1
00000682: SLOAD
00000683: SWAP1
00000684: PUSH2 0x0100
00000687: EXP
00000688: SWAP1
00000689: DIV
0000068a: PUSH1 0xff
0000068c: AND
0000068d: SWAP1
0000068e: POP
0000068f: SWAP1
00000690: JUMP
00000691: JUMPDEST
00000692: PUSH1 0x00
00000694: PUSH2 0x073a
00000697: PUSH2 0x069e
0000069a: PUSH2 0x0a28
0000069d: JUMP
0000069e: JUMPDEST
0000069f: DUP5
000006a0: PUSH2 0x0735
000006a3: DUP6
000006a4: PUSH1 0x01
000006a6: PUSH1 0x00
000006a8: PUSH2 0x06af
000006ab: PUSH2 0x0a28
000006ae: JUMP
000006af: JUMPDEST
000006b0: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000006c5: AND
000006c6: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000006db: AND
000006dc: DUP2
000006dd: MSTORE
000006de: PUSH1 0x20
000006e0: ADD
000006e1: SWAP1
000006e2: DUP2
000006e3: MSTORE
000006e4: PUSH1 0x20
000006e6: ADD
000006e7: PUSH1 0x00
000006e9: KECCAK256
000006ea: PUSH1 0x00
000006ec: DUP10
000006ed: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000702: AND
00000703: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000718: AND
00000719: DUP2
0000071a: MSTORE
0000071b: PUSH1 0x20
0000071d: ADD
0000071e: SWAP1
0000071f: DUP2
00000720: MSTORE
00000721: PUSH1 0x20
00000723: ADD
00000724: PUSH1 0x00
00000726: KECCAK256
00000727: SLOAD
00000728: PUSH2 0x09a0
0000072b: SWAP1
0000072c: SWAP2
0000072d: SWAP1
0000072e: PUSH4 0xffffffff
00000733: AND
00000734: JUMP
00000735: JUMPDEST
00000736: PUSH2 0x0a30
00000739: JUMP
0000073a: JUMPDEST
0000073b: PUSH1 0x01
0000073d: SWAP1
0000073e: POP
0000073f: SWAP3
00000740: SWAP2
00000741: POP
00000742: POP
00000743: JUMP
00000744: JUMPDEST
00000745: PUSH1 0x00
00000747: DUP1
00000748: PUSH1 0x00
0000074a: DUP4
0000074b: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000760: AND
00000761: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000776: AND
00000777: DUP2
00000778: MSTORE
00000779: PUSH1 0x20
0000077b: ADD
0000077c: SWAP1
0000077d: DUP2
0000077e: MSTORE
0000077f: PUSH1 0x20
00000781: ADD
00000782: PUSH1 0x00
00000784: KECCAK256
00000785: SLOAD
00000786: SWAP1
00000787: POP
00000788: SWAP2
00000789: SWAP1
0000078a: POP
0000078b: JUMP
0000078c: JUMPDEST
0000078d: PUSH1 0x60
0000078f: PUSH1 0x04
00000791: DUP1
00000792: SLOAD
00000793: PUSH1 0x01
00000795: DUP2
00000796: PUSH1 0x01
00000798: AND
00000799: ISZERO
0000079a: PUSH2 0x0100
0000079d: MUL
0000079e: SUB
0000079f: AND
000007a0: PUSH1 0x02
000007a2: SWAP1
000007a3: DIV
000007a4: DUP1
000007a5: PUSH1 0x1f
000007a7: ADD
000007a8: PUSH1 0x20
000007aa: DUP1
000007ab: SWAP2
000007ac: DIV
000007ad: MUL
000007ae: PUSH1 0x20
000007b0: ADD
000007b1: PUSH1 0x40
000007b3: MLOAD
000007b4: SWAP1
000007b5: DUP2
000007b6: ADD
000007b7: PUSH1 0x40
000007b9: MSTORE
000007ba: DUP1
000007bb: SWAP3
000007bc: SWAP2
000007bd: SWAP1
000007be: DUP2
000007bf: DUP2
000007c0: MSTORE
000007c1: PUSH1 0x20
000007c3: ADD
000007c4: DUP3
000007c5: DUP1
000007c6: SLOAD
000007c7: PUSH1 0x01
000007c9: DUP2
000007ca: PUSH1 0x01
000007cc: AND
000007cd: ISZERO
000007ce: PUSH2 0x0100
000007d1: MUL
000007d2: SUB
000007d3: AND
000007d4: PUSH1 0x02
000007d6: SWAP1
000007d7: DIV
000007d8: DUP1
000007d9: ISZERO
000007da: PUSH2 0x0824
000007dd: JUMPI
000007de: DUP1
000007df: PUSH1 0x1f
000007e1: LT
000007e2: PUSH2 0x07f9
000007e5: JUMPI
000007e6: PUSH2 0x0100
000007e9: DUP1
000007ea: DUP4
000007eb: SLOAD
000007ec: DIV
000007ed: MUL
000007ee: DUP4
000007ef: MSTORE
000007f0: SWAP2
000007f1: PUSH1 0x20
000007f3: ADD
000007f4: SWAP2
000007f5: PUSH2 0x0824
000007f8: JUMP
000007f9: JUMPDEST
000007fa: DUP3
000007fb: ADD
000007fc: SWAP2
000007fd: SWAP1
000007fe: PUSH1 0x00
00000800: MSTORE
00000801: PUSH1 0x20
00000803: PUSH1 0x00
00000805: KECCAK256
00000806: SWAP1
00000807: JUMPDEST
00000808: DUP2
00000809: SLOAD
0000080a: DUP2
0000080b: MSTORE
0000080c: SWAP1
0000080d: PUSH1 0x01
0000080f: ADD
00000810: SWAP1
00000811: PUSH1 0x20
00000813: ADD
00000814: DUP1
00000815: DUP4
00000816: GT
00000817: PUSH2 0x0807
0000081a: JUMPI
0000081b: DUP3
0000081c: SWAP1
0000081d: SUB
0000081e: PUSH1 0x1f
00000820: AND
00000821: DUP3
00000822: ADD
00000823: SWAP2
00000824: JUMPDEST
00000825: POP
00000826: POP
00000827: POP
00000828: POP
00000829: POP
0000082a: SWAP1
0000082b: POP
0000082c: SWAP1
0000082d: JUMP
0000082e: JUMPDEST
0000082f: PUSH1 0x00
00000831: PUSH2 0x08f1
00000834: PUSH2 0x083b
00000837: PUSH2 0x0a28
0000083a: JUMP
0000083b: JUMPDEST
0000083c: DUP5
0000083d: PUSH2 0x08ec
00000840: DUP6
00000841: PUSH1 0x40
00000843: MLOAD
00000844: DUP1
00000845: PUSH1 0x60
00000847: ADD
00000848: PUSH1 0x40
0000084a: MSTORE
0000084b: DUP1
0000084c: PUSH1 0x25
0000084e: DUP2
0000084f: MSTORE
00000850: PUSH1 0x20
00000852: ADD
00000853: PUSH2 0x1084
00000856: PUSH1 0x25
00000858: SWAP2
00000859: CODECOPY
0000085a: PUSH1 0x01
0000085c: PUSH1 0x00
0000085e: PUSH2 0x0865
00000861: PUSH2 0x0a28
00000864: JUMP
00000865: JUMPDEST
00000866: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
0000087b: AND
0000087c: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000891: AND
00000892: DUP2
00000893: MSTORE
00000894: PUSH1 0x20
00000896: ADD
00000897: SWAP1
00000898: DUP2
00000899: MSTORE
0000089a: PUSH1 0x20
0000089c: ADD
0000089d: PUSH1 0x00
0000089f: KECCAK256
000008a0: PUSH1 0x00
000008a2: DUP11
000008a3: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000008b8: AND
000008b9: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000008ce: AND
000008cf: DUP2
000008d0: MSTORE
000008d1: PUSH1 0x20
000008d3: ADD
000008d4: SWAP1
000008d5: DUP2
000008d6: MSTORE
000008d7: PUSH1 0x20
000008d9: ADD
000008da: PUSH1 0x00
000008dc: KECCAK256
000008dd: SLOAD
000008de: PUSH2 0x0ee8
000008e1: SWAP1
000008e2: SWAP3
000008e3: SWAP2
000008e4: SWAP1
000008e5: PUSH4 0xffffffff
000008ea: AND
000008eb: JUMP
000008ec: JUMPDEST
000008ed: PUSH2 0x0a30
000008f0: JUMP
000008f1: JUMPDEST
000008f2: PUSH1 0x01
000008f4: SWAP1
000008f5: POP
000008f6: SWAP3
000008f7: SWAP2
000008f8: POP
000008f9: POP
000008fa: JUMP
000008fb: JUMPDEST
000008fc: PUSH1 0x00
000008fe: PUSH2 0x090f
00000901: PUSH2 0x0908
00000904: PUSH2 0x0a28
00000907: JUMP
00000908: JUMPDEST
00000909: DUP5
0000090a: DUP5
0000090b: PUSH2 0x0c27
0000090e: JUMP
0000090f: JUMPDEST
00000910: PUSH1 0x01
00000912: SWAP1
00000913: POP
00000914: SWAP3
00000915: SWAP2
00000916: POP
00000917: POP
00000918: JUMP
00000919: JUMPDEST
0000091a: PUSH1 0x00
0000091c: PUSH1 0x01
0000091e: PUSH1 0x00
00000920: DUP5
00000921: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000936: AND
00000937: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
0000094c: AND
0000094d: DUP2
0000094e: MSTORE
0000094f: PUSH1 0x20
00000951: ADD
00000952: SWAP1
00000953: DUP2
00000954: MSTORE
00000955: PUSH1 0x20
00000957: ADD
00000958: PUSH1 0x00
0000095a: KECCAK256
0000095b: PUSH1 0x00
0000095d: DUP4
0000095e: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000973: AND
00000974: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000989: AND
0000098a: DUP2
0000098b: MSTORE
0000098c: PUSH1 0x20
0000098e: ADD
0000098f: SWAP1
00000990: DUP2
00000991: MSTORE
00000992: PUSH1 0x20
00000994: ADD
00000995: PUSH1 0x00
00000997: KECCAK256
00000998: SLOAD
00000999: SWAP1
0000099a: POP
0000099b: SWAP3
0000099c: SWAP2
0000099d: POP
0000099e: POP
0000099f: JUMP
000009a0: JUMPDEST
000009a1: PUSH1 0x00
000009a3: DUP1
000009a4: DUP3
000009a5: DUP5
000009a6: ADD
000009a7: SWAP1
000009a8: POP
000009a9: DUP4
000009aa: DUP2
000009ab: LT
000009ac: ISZERO
000009ad: PUSH2 0x0a1e
000009b0: JUMPI
000009b1: PUSH1 0x40
000009b3: MLOAD
000009b4: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000
000009d5: DUP2
000009d6: MSTORE
000009d7: PUSH1 0x04
000009d9: ADD
000009da: DUP1
000009db: DUP1
000009dc: PUSH1 0x20
000009de: ADD
000009df: DUP3
000009e0: DUP2
000009e1: SUB
000009e2: DUP3
000009e3: MSTORE
000009e4: PUSH1 0x1b
000009e6: DUP2
000009e7: MSTORE
000009e8: PUSH1 0x20
000009ea: ADD
000009eb: DUP1
000009ec: PUSH32 0x536166654d6174683a206164646974696f6e206f766572666c6f770000000000
00000a0d: DUP2
00000a0e: MSTORE
00000a0f: POP
00000a10: PUSH1 0x20
00000a12: ADD
00000a13: SWAP2
00000a14: POP
00000a15: POP
00000a16: PUSH1 0x40
00000a18: MLOAD
00000a19: DUP1
00000a1a: SWAP2
00000a1b: SUB
00000a1c: SWAP1
00000a1d: REVERT
00000a1e: JUMPDEST
00000a1f: DUP1
00000a20: SWAP2
00000a21: POP
00000a22: POP
00000a23: SWAP3
00000a24: SWAP2
00000a25: POP
00000a26: POP
00000a27: JUMP
00000a28: JUMPDEST
00000a29: PUSH1 0x00
00000a2b: CALLER
00000a2c: SWAP1
00000a2d: POP
00000a2e: SWAP1
00000a2f: JUMP
00000a30: JUMPDEST
00000a31: PUSH1 0x00
00000a33: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000a48: AND
00000a49: DUP4
00000a4a: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000a5f: AND
00000a60: EQ
00000a61: ISZERO
00000a62: PUSH2 0x0ab6
00000a65: JUMPI
00000a66: PUSH1 0x40
00000a68: MLOAD
00000a69: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000
00000a8a: DUP2
00000a8b: MSTORE
00000a8c: PUSH1 0x04
00000a8e: ADD
00000a8f: DUP1
00000a90: DUP1
00000a91: PUSH1 0x20
00000a93: ADD
00000a94: DUP3
00000a95: DUP2
00000a96: SUB
00000a97: DUP3
00000a98: MSTORE
00000a99: PUSH1 0x24
00000a9b: DUP2
00000a9c: MSTORE
00000a9d: PUSH1 0x20
00000a9f: ADD
00000aa0: DUP1
00000aa1: PUSH2 0x1060
00000aa4: PUSH1 0x24
00000aa6: SWAP2
00000aa7: CODECOPY
00000aa8: PUSH1 0x40
00000aaa: ADD
00000aab: SWAP2
00000aac: POP
00000aad: POP
00000aae: PUSH1 0x40
00000ab0: MLOAD
00000ab1: DUP1
00000ab2: SWAP2
00000ab3: SUB
00000ab4: SWAP1
00000ab5: REVERT
00000ab6: JUMPDEST
00000ab7: PUSH1 0x00
00000ab9: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000ace: AND
00000acf: DUP3
00000ad0: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000ae5: AND
00000ae6: EQ
00000ae7: ISZERO
00000ae8: PUSH2 0x0b3c
00000aeb: JUMPI
00000aec: PUSH1 0x40
00000aee: MLOAD
00000aef: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000
00000b10: DUP2
00000b11: MSTORE
00000b12: PUSH1 0x04
00000b14: ADD
00000b15: DUP1
00000b16: DUP1
00000b17: PUSH1 0x20
00000b19: ADD
00000b1a: DUP3
00000b1b: DUP2
00000b1c: SUB
00000b1d: DUP3
00000b1e: MSTORE
00000b1f: PUSH1 0x22
00000b21: DUP2
00000b22: MSTORE
00000b23: PUSH1 0x20
00000b25: ADD
00000b26: DUP1
00000b27: PUSH2 0x0fcb
00000b2a: PUSH1 0x22
00000b2c: SWAP2
00000b2d: CODECOPY
00000b2e: PUSH1 0x40
00000b30: ADD
00000b31: SWAP2
00000b32: POP
00000b33: POP
00000b34: PUSH1 0x40
00000b36: MLOAD
00000b37: DUP1
00000b38: SWAP2
00000b39: SUB
00000b3a: SWAP1
00000b3b: REVERT
00000b3c: JUMPDEST
00000b3d: DUP1
00000b3e: PUSH1 0x01
00000b40: PUSH1 0x00
00000b42: DUP6
00000b43: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000b58: AND
00000b59: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000b6e: AND
00000b6f: DUP2
00000b70: MSTORE
00000b71: PUSH1 0x20
00000b73: ADD
00000b74: SWAP1
00000b75: DUP2
00000b76: MSTORE
00000b77: PUSH1 0x20
00000b79: ADD
00000b7a: PUSH1 0x00
00000b7c: KECCAK256
00000b7d: PUSH1 0x00
00000b7f: DUP5
00000b80: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000b95: AND
00000b96: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000bab: AND
00000bac: DUP2
00000bad: MSTORE
00000bae: PUSH1 0x20
00000bb0: ADD
00000bb1: SWAP1
00000bb2: DUP2
00000bb3: MSTORE
00000bb4: PUSH1 0x20
00000bb6: ADD
00000bb7: PUSH1 0x00
00000bb9: KECCAK256
00000bba: DUP2
00000bbb: SWAP1
00000bbc: SSTORE
00000bbd: POP
00000bbe: DUP2
00000bbf: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000bd4: AND
00000bd5: DUP4
00000bd6: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000beb: AND
00000bec: PUSH32 0x8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925
00000c0d: DUP4
00000c0e: PUSH1 0x40
00000c10: MLOAD
00000c11: DUP1
00000c12: DUP3
00000c13: DUP2
00000c14: MSTORE
00000c15: PUSH1 0x20
00000c17: ADD
00000c18: SWAP2
00000c19: POP
00000c1a: POP
00000c1b: PUSH1 0x40
00000c1d: MLOAD
00000c1e: DUP1
00000c1f: SWAP2
00000c20: SUB
00000c21: SWAP1
00000c22: LOG3
00000c23: POP
00000c24: POP
00000c25: POP
00000c26: JUMP
00000c27: JUMPDEST
00000c28: PUSH1 0x00
00000c2a: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000c3f: AND
00000c40: DUP4
00000c41: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000c56: AND
00000c57: EQ
00000c58: ISZERO
00000c59: PUSH2 0x0cad
00000c5c: JUMPI
00000c5d: PUSH1 0x40
00000c5f: MLOAD
00000c60: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000
00000c81: DUP2
00000c82: MSTORE
00000c83: PUSH1 0x04
00000c85: ADD
00000c86: DUP1
00000c87: DUP1
00000c88: PUSH1 0x20
00000c8a: ADD
00000c8b: DUP3
00000c8c: DUP2
00000c8d: SUB
00000c8e: DUP3
00000c8f: MSTORE
00000c90: PUSH1 0x25
00000c92: DUP2
00000c93: MSTORE
00000c94: PUSH1 0x20
00000c96: ADD
00000c97: DUP1
00000c98: PUSH2 0x103b
00000c9b: PUSH1 0x25
00000c9d: SWAP2
00000c9e: CODECOPY
00000c9f: PUSH1 0x40
00000ca1: ADD
00000ca2: SWAP2
00000ca3: POP
00000ca4: POP
00000ca5: PUSH1 0x40
00000ca7: MLOAD
00000ca8: DUP1
00000ca9: SWAP2
00000caa: SUB
00000cab: SWAP1
00000cac: REVERT
00000cad: JUMPDEST
00000cae: PUSH1 0x00
00000cb0: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000cc5: AND
00000cc6: DUP3
00000cc7: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000cdc: AND
00000cdd: EQ
00000cde: ISZERO
00000cdf: PUSH2 0x0d33
00000ce2: JUMPI
00000ce3: PUSH1 0x40
00000ce5: MLOAD
00000ce6: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000
00000d07: DUP2
00000d08: MSTORE
00000d09: PUSH1 0x04
00000d0b: ADD
00000d0c: DUP1
00000d0d: DUP1
00000d0e: PUSH1 0x20
00000d10: ADD
00000d11: DUP3
00000d12: DUP2
00000d13: SUB
00000d14: DUP3
00000d15: MSTORE
00000d16: PUSH1 0x23
00000d18: DUP2
00000d19: MSTORE
00000d1a: PUSH1 0x20
00000d1c: ADD
00000d1d: DUP1
00000d1e: PUSH2 0x0fa8
00000d21: PUSH1 0x23
00000d23: SWAP2
00000d24: CODECOPY
00000d25: PUSH1 0x40
00000d27: ADD
00000d28: SWAP2
00000d29: POP
00000d2a: POP
00000d2b: PUSH1 0x40
00000d2d: MLOAD
00000d2e: DUP1
00000d2f: SWAP2
00000d30: SUB
00000d31: SWAP1
00000d32: REVERT
00000d33: JUMPDEST
00000d34: PUSH2 0x0d3e
00000d37: DUP4
00000d38: DUP4
00000d39: DUP4
00000d3a: PUSH2 0x0fa2
00000d3d: JUMP
00000d3e: JUMPDEST
00000d3f: PUSH2 0x0da9
00000d42: DUP2
00000d43: PUSH1 0x40
00000d45: MLOAD
00000d46: DUP1
00000d47: PUSH1 0x60
00000d49: ADD
00000d4a: PUSH1 0x40
00000d4c: MSTORE
00000d4d: DUP1
00000d4e: PUSH1 0x26
00000d50: DUP2
00000d51: MSTORE
00000d52: PUSH1 0x20
00000d54: ADD
00000d55: PUSH2 0x0fed
00000d58: PUSH1 0x26
00000d5a: SWAP2
00000d5b: CODECOPY
00000d5c: PUSH1 0x00
00000d5e: DUP1
00000d5f: DUP8
00000d60: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000d75: AND
00000d76: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000d8b: AND
00000d8c: DUP2
00000d8d: MSTORE
00000d8e: PUSH1 0x20
00000d90: ADD
00000d91: SWAP1
00000d92: DUP2
00000d93: MSTORE
00000d94: PUSH1 0x20
00000d96: ADD
00000d97: PUSH1 0x00
00000d99: KECCAK256
00000d9a: SLOAD
00000d9b: PUSH2 0x0ee8
00000d9e: SWAP1
00000d9f: SWAP3
00000da0: SWAP2
00000da1: SWAP1
00000da2: PUSH4 0xffffffff
00000da7: AND
00000da8: JUMP
00000da9: JUMPDEST
00000daa: PUSH1 0x00
00000dac: DUP1
00000dad: DUP6
00000dae: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000dc3: AND
00000dc4: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000dd9: AND
00000dda: DUP2
00000ddb: MSTORE
00000ddc: PUSH1 0x20
00000dde: ADD
00000ddf: SWAP1
00000de0: DUP2
00000de1: MSTORE
00000de2: PUSH1 0x20
00000de4: ADD
00000de5: PUSH1 0x00
00000de7: KECCAK256
00000de8: DUP2
00000de9: SWAP1
00000dea: SSTORE
00000deb: POP
00000dec: PUSH2 0x0e3c
00000def: DUP2
00000df0: PUSH1 0x00
00000df2: DUP1
00000df3: DUP6
00000df4: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000e09: AND
00000e0a: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000e1f: AND
00000e20: DUP2
00000e21: MSTORE
00000e22: PUSH1 0x20
00000e24: ADD
00000e25: SWAP1
00000e26: DUP2
00000e27: MSTORE
00000e28: PUSH1 0x20
00000e2a: ADD
00000e2b: PUSH1 0x00
00000e2d: KECCAK256
00000e2e: SLOAD
00000e2f: PUSH2 0x09a0
00000e32: SWAP1
00000e33: SWAP2
00000e34: SWAP1
00000e35: PUSH4 0xffffffff
00000e3a: AND
00000e3b: JUMP
00000e3c: JUMPDEST
00000e3d: PUSH1 0x00
00000e3f: DUP1
00000e40: DUP5
00000e41: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000e56: AND
00000e57: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000e6c: AND
00000e6d: DUP2
00000e6e: MSTORE
00000e6f: PUSH1 0x20
00000e71: ADD
00000e72: SWAP1
00000e73: DUP2
00000e74: MSTORE
00000e75: PUSH1 0x20
00000e77: ADD
00000e78: PUSH1 0x00
00000e7a: KECCAK256
00000e7b: DUP2
00000e7c: SWAP1
00000e7d: SSTORE
00000e7e: POP
00000e7f: DUP2
00000e80: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000e95: AND
00000e96: DUP4
00000e97: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000eac: AND
00000ead: PUSH32 0xddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef
00000ece: DUP4
00000ecf: PUSH1 0x40
00000ed1: MLOAD
00000ed2: DUP1
00000ed3: DUP3
00000ed4: DUP2
00000ed5: MSTORE
00000ed6: PUSH1 0x20
00000ed8: ADD
00000ed9: SWAP2
00000eda: POP
00000edb: POP
00000edc: PUSH1 0x40
00000ede: MLOAD
00000edf: DUP1
00000ee0: SWAP2
00000ee1: SUB
00000ee2: SWAP1
00000ee3: LOG3
00000ee4: POP
00000ee5: POP
00000ee6: POP
00000ee7: JUMP
00000ee8: JUMPDEST
00000ee9: PUSH1 0x00
00000eeb: DUP4
00000eec: DUP4
00000eed: GT
00000eee: ISZERO
00000eef: DUP3
00000ef0: SWAP1
00000ef1: PUSH2 0x0f95
00000ef4: JUMPI
00000ef5: PUSH1 0x40
00000ef7: MLOAD
00000ef8: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000
00000f19: DUP2
00000f1a: MSTORE
00000f1b: PUSH1 0x04
00000f1d: ADD
00000f1e: DUP1
00000f1f: DUP1
00000f20: PUSH1 0x20
00000f22: ADD
00000f23: DUP3
00000f24: DUP2
00000f25: SUB
00000f26: DUP3
00000f27: MSTORE
00000f28: DUP4
00000f29: DUP2
00000f2a: DUP2
00000f2b: MLOAD
00000f2c: DUP2
00000f2d: MSTORE
00000f2e: PUSH1 0x20
00000f30: ADD
00000f31: SWAP2
00000f32: POP
00000f33: DUP1
00000f34: MLOAD
00000f35: SWAP1
00000f36: PUSH1 0x20
00000f38: ADD
00000f39: SWAP1
00000f3a: DUP1
00000f3b: DUP4
00000f3c: DUP4
00000f3d: PUSH1 0x00
00000f3f: JUMPDEST
00000f40: DUP4
00000f41: DUP2
00000f42: LT
00000f43: ISZERO
00000f44: PUSH2 0x0f5a
00000f47: JUMPI
00000f48: DUP1
00000f49: DUP3
00000f4a: ADD
00000f4b: MLOAD
00000f4c: DUP2
00000f4d: DUP5
00000f4e: ADD
00000f4f: MSTORE
00000f50: PUSH1 0x20
00000f52: DUP2
00000f53: ADD
00000f54: SWAP1
00000f55: POP
00000f56: PUSH2 0x0f3f
00000f59: JUMP
00000f5a: JUMPDEST
00000f5b: POP
00000f5c: POP
00000f5d: POP
00000f5e: POP
00000f5f: SWAP1
00000f60: POP
00000f61: SWAP1
00000f62: DUP2
00000f63: ADD
00000f64: SWAP1
00000f65: PUSH1 0x1f
00000f67: AND
00000f68: DUP1
00000f69: ISZERO
00000f6a: PUSH2 0x0f87
00000f6d: JUMPI
00000f6e: DUP1
00000f6f: DUP3
00000f70: SUB
00000f71: DUP1
00000f72: MLOAD
00000f73: PUSH1 0x01
00000f75: DUP4
00000f76: PUSH1 0x20
00000f78: SUB
00000f79: PUSH2 0x0100
00000f7c: EXP
00000f7d: SUB
00000f7e: NOT
00000f7f: AND
00000f80: DUP2
00000f81: MSTORE
00000f82: PUSH1 0x20
00000f84: ADD
00000f85: SWAP2
00000f86: POP
00000f87: JUMPDEST
00000f88: POP
00000f89: SWAP3
00000f8a: POP
00000f8b: POP
00000f8c: POP
00000f8d: PUSH1 0x40
00000f8f: MLOAD
00000f90: DUP1
00000f91: SWAP2
00000f92: SUB
00000f93: SWAP1
00000f94: REVERT
00000f95: JUMPDEST
00000f96: POP
00000f97: DUP3
00000f98: DUP5
00000f99: SUB
00000f9a: SWAP1
00000f9b: POP
00000f9c: SWAP4
00000f9d: SWAP3
00000f9e: POP
00000f9f: POP
00000fa0: POP
00000fa1: JUMP
00000fa2: JUMPDEST
00000fa3: POP
00000fa4: POP
00000fa5: POP
00000fa6: JUMP
00000fa7: INVALID
00000fa8: GASLIMIT
00000fa9: MSTORE
00000faa: NUMBER
00000fab: ORIGIN
00000fac: ADDRESS
00000fad: GASPRICE
00000fae: KECCAK256
00000faf: PUSH21 0x72616e7366657220746f20746865207a65726f2061
00000fc5: PUSH5 0x6472657373
00000fcb: GASLIMIT
00000fcc: MSTORE
00000fcd: NUMBER
00000fce: ORIGIN
00000fcf: ADDRESS
00000fd0: GASPRICE
00000fd1: KECCAK256
00000fd2: PUSH2 0x7070
00000fd5: PUSH19 0x6f766520746f20746865207a65726f20616464
00000fe9: PUSH19 0x65737345524332303a207472616e7366657220
00000ffd: PUSH2 0x6d6f
00001000: PUSH22 0x6e7420657863656564732062616c616e636545524332
00001017: ADDRESS
00001018: GASPRICE
00001019: KECCAK256
0000101a: PUSH21 0x72616e7366657220616d6f756e7420657863656564
00001030: PUSH20 0x20616c6c6f77616e636545524332303a20747261
00001045: PUSH15 0x736665722066726f6d20746865207a
00001055: PUSH6 0x726f20616464
0000105c: PUSH19 0x65737345524332303a20617070726f76652066
00001070: PUSH19 0x6f6d20746865207a65726f2061646472657373
00001084: GASLIMIT
00001085: MSTORE
00001086: NUMBER
00001087: ORIGIN
00001088: ADDRESS
00001089: GASPRICE
0000108a: KECCAK256
0000108b: PUSH5 0x6563726561
00001091: PUSH20 0x656420616c6c6f77616e63652062656c6f77207a
000010a6: PUSH6 0x726fa2646970
000010ad: PUSH7 0x735822122033f2
000010b5: PUSH9 0x6c4d086980e347a467
000010bf: UNKNOWN(0xC4)
000010c0: UNKNOWN(0xC0)
000010c1: UNKNOWN(0xA8)
000010c2: EXTCODEHASH
000010c3: SWAP5
000010c4: DUP11
000010c5: UNKNOWN(0xB7)
000010c6: DUP10
000010c7: UNKNOWN(0xEA)
000010c8: SWAP7
000010c9: UNKNOWN(0xED)
000010ca: UNKNOWN(0xA9)
000010cb: UNKNOWN(0xDE)
000010cc: DUP3
000010cd: AND
000010ce: UNKNOWN(0x26)
000010cf: UNKNOWN(0xA9)
000010d0: UNKNOWN(0xC3)
000010d1: DIV
000010d2: MSTORE
000010d3: PUSH5 0x736f6c6343
000010d9: STOP
000010da: SMOD
000010db: STOP
000010dc: STOP
000010dd: CALLER

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": "0x39509351",
            "selector": "0x39509351",
            "calldata_variants": [
                "0x39509351",
                "0x395093510000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x70a08231",
            "selector": "0x70a08231",
            "calldata_variants": [
                "0x70a08231",
                "0x70a082310000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x95d89b41",
            "selector": "0x95d89b41",
            "calldata_variants": [
                "0x95d89b41",
                "0x95d89b410000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xa457c2d7",
            "selector": "0xa457c2d7",
            "calldata_variants": [
                "0xa457c2d7",
                "0xa457c2d70000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xa9059cbb",
            "selector": "0xa9059cbb",
            "calldata_variants": [
                "0xa9059cbb",
                "0xa9059cbb0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xdd62ed3e",
            "selector": "0xdd62ed3e",
            "calldata_variants": [
                "0xdd62ed3e",
                "0xdd62ed3e0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x06fdde03",
            "selector": "0x06fdde03",
            "calldata_variants": [
                "0x06fdde03",
                "0x06fdde030000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x095ea7b3",
            "selector": "0x095ea7b3",
            "calldata_variants": [
                "0x095ea7b3",
                "0x095ea7b30000000000000000000000000000000000000000000000000000000000000000"
            ]
        }
    ]
}
evidence_json
{
    "guards_detected": [
        {
            "pc": 4011,
            "type": "tx_origin_used"
        },
        {
            "pc": 4046,
            "type": "tx_origin_used"
        },
        {
            "pc": 4231,
            "type": "tx_origin_used"
        }
    ]
}