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

Analysis Run

019b3844-b1d0-732a-a90a-ea7b14889768

complete
Chain ID
1
Address
Block Number
Created
Fri, Dec 19, 2025 8:19 PM
Review Summary

What survived the funnel

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

Confirmed
0
Validated
0
Source
Bytecode only
Review Backing
Not yet
Best current signal
Untrusted DELEGATECALL target reachable
crit 0 high 0 direct contract
Review Checklist
1. Read the findings table first. Ignore raw jobs until the result looks real.
2. Confirm attacker control, not just the existence of a sink.
3. Confirm money or privilege impact.
4. Keep it if the behavior is real. Kill it if this is normal proxy, admin, or upgrade plumbing.

Processing Jobs

Status & attempts
ID Type Status Attempts Heartbeat
18417 artifact.fetch complete 1 / 3 3 months ago
18418 tool.cast_disasm complete 1 / 3 3 months ago
87388 analysis.bundle complete 1 / 3 1 week ago
87389 capability.graph complete 1 / 3 1 week ago
87390 detector.run complete 1 / 3 1 week ago
87391 validation.fork complete 1 / 3 1 week ago

Artifact

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

Slither

tool.slither

No slither job recorded yet.

Codex

report.consolidate

No codex job recorded yet.

Opcode Heuristics

tool.cast_disasm
Delegatecall
1
Selfdestruct
0
CREATE2
0
CALL-family (heavy)
3
EXT*/BALANCE
0
Total opcodes
1989
Flags
delegatecall_present
View cast disassembly output
00000000: PUSH1 0x80
00000002: PUSH1 0x40
00000004: MSTORE
00000005: PUSH1 0x04
00000007: CALLDATASIZE
00000008: LT
00000009: PUSH2 0x00c0
0000000c: JUMPI
0000000d: PUSH1 0x00
0000000f: CALLDATALOAD
00000010: PUSH1 0xe0
00000012: SHR
00000013: DUP1
00000014: PUSH4 0x82bc4aaf
00000019: GT
0000001a: PUSH2 0x0074
0000001d: JUMPI
0000001e: DUP1
0000001f: PUSH4 0xd9e10f45
00000024: GT
00000025: PUSH2 0x004e
00000028: JUMPI
00000029: DUP1
0000002a: PUSH4 0xd9e10f45
0000002f: EQ
00000030: PUSH2 0x02f0
00000033: JUMPI
00000034: DUP1
00000035: PUSH4 0xedbd7668
0000003a: EQ
0000003b: PUSH2 0x0310
0000003e: JUMPI
0000003f: DUP1
00000040: PUSH4 0xf2fde38b
00000045: EQ
00000046: PUSH2 0x0330
00000049: JUMPI
0000004a: PUSH2 0x00c7
0000004d: JUMP
0000004e: JUMPDEST
0000004f: DUP1
00000050: PUSH4 0x82bc4aaf
00000055: EQ
00000056: PUSH2 0x027b
00000059: JUMPI
0000005a: DUP1
0000005b: PUSH4 0x8da5cb5b
00000060: EQ
00000061: PUSH2 0x029b
00000064: JUMPI
00000065: DUP1
00000066: PUSH4 0xa734f06e
0000006b: EQ
0000006c: PUSH2 0x02c8
0000006f: JUMPI
00000070: PUSH2 0x00c7
00000073: JUMP
00000074: JUMPDEST
00000075: DUP1
00000076: PUSH4 0x3f221521
0000007b: GT
0000007c: PUSH2 0x00a5
0000007f: JUMPI
00000080: DUP1
00000081: PUSH4 0x3f221521
00000086: EQ
00000087: PUSH2 0x01cb
0000008a: JUMPI
0000008b: DUP1
0000008c: PUSH4 0x4e6fd6c4
00000091: EQ
00000092: PUSH2 0x0210
00000095: JUMPI
00000096: DUP1
00000097: PUSH4 0x6b880718
0000009c: EQ
0000009d: PUSH2 0x024b
000000a0: JUMPI
000000a1: PUSH2 0x00c7
000000a4: JUMP
000000a5: JUMPDEST
000000a6: DUP1
000000a7: PUSH4 0x1cff79cd
000000ac: EQ
000000ad: PUSH2 0x018b
000000b0: JUMPI
000000b1: DUP1
000000b2: PUSH4 0x29e31bdd
000000b7: EQ
000000b8: PUSH2 0x01ab
000000bb: JUMPI
000000bc: PUSH2 0x00c7
000000bf: JUMP
000000c0: JUMPDEST
000000c1: CALLDATASIZE
000000c2: PUSH2 0x00c7
000000c5: JUMPI
000000c6: STOP
000000c7: JUMPDEST
000000c8: PUSH1 0x01
000000ca: SLOAD
000000cb: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000000e0: AND
000000e1: PUSH2 0xdead
000000e4: EQ
000000e5: PUSH2 0x0157
000000e8: JUMPI
000000e9: PUSH1 0x00
000000eb: PUSH2 0x014d
000000ee: PUSH1 0x01
000000f0: PUSH1 0x00
000000f2: SWAP1
000000f3: SLOAD
000000f4: SWAP1
000000f5: PUSH2 0x0100
000000f8: EXP
000000f9: SWAP1
000000fa: DIV
000000fb: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000110: AND
00000111: PUSH1 0x00
00000113: CALLDATASIZE
00000114: DUP1
00000115: DUP1
00000116: PUSH1 0x1f
00000118: ADD
00000119: PUSH1 0x20
0000011b: DUP1
0000011c: SWAP2
0000011d: DIV
0000011e: MUL
0000011f: PUSH1 0x20
00000121: ADD
00000122: PUSH1 0x40
00000124: MLOAD
00000125: SWAP1
00000126: DUP2
00000127: ADD
00000128: PUSH1 0x40
0000012a: MSTORE
0000012b: DUP1
0000012c: SWAP4
0000012d: SWAP3
0000012e: SWAP2
0000012f: SWAP1
00000130: DUP2
00000131: DUP2
00000132: MSTORE
00000133: PUSH1 0x20
00000135: ADD
00000136: DUP4
00000137: DUP4
00000138: DUP1
00000139: DUP3
0000013a: DUP5
0000013b: CALLDATACOPY
0000013c: PUSH1 0x00
0000013e: SWAP3
0000013f: ADD
00000140: SWAP2
00000141: SWAP1
00000142: SWAP2
00000143: MSTORE
00000144: POP
00000145: PUSH2 0x0350
00000148: SWAP3
00000149: POP
0000014a: POP
0000014b: POP
0000014c: JUMP
0000014d: JUMPDEST
0000014e: SWAP1
0000014f: POP
00000150: DUP1
00000151: MLOAD
00000152: PUSH1 0x20
00000154: DUP3
00000155: ADD
00000156: RETURN
00000157: JUMPDEST
00000158: PUSH1 0x40
0000015a: MLOAD
0000015b: PUSH32 0x8d0f4ce900000000000000000000000000000000000000000000000000000000
0000017c: DUP2
0000017d: MSTORE
0000017e: PUSH1 0x04
00000180: ADD
00000181: PUSH1 0x40
00000183: MLOAD
00000184: DUP1
00000185: SWAP2
00000186: SUB
00000187: SWAP1
00000188: REVERT
00000189: JUMPDEST
0000018a: STOP
0000018b: JUMPDEST
0000018c: CALLVALUE
0000018d: DUP1
0000018e: ISZERO
0000018f: PUSH2 0x0197
00000192: JUMPI
00000193: PUSH1 0x00
00000195: DUP1
00000196: REVERT
00000197: JUMPDEST
00000198: POP
00000199: PUSH2 0x0189
0000019c: PUSH2 0x01a6
0000019f: CALLDATASIZE
000001a0: PUSH1 0x04
000001a2: PUSH2 0x0d08
000001a5: JUMP
000001a6: JUMPDEST
000001a7: PUSH2 0x0396
000001aa: JUMP
000001ab: JUMPDEST
000001ac: CALLVALUE
000001ad: DUP1
000001ae: ISZERO
000001af: PUSH2 0x01b7
000001b2: JUMPI
000001b3: PUSH1 0x00
000001b5: DUP1
000001b6: REVERT
000001b7: JUMPDEST
000001b8: POP
000001b9: PUSH2 0x0189
000001bc: PUSH2 0x01c6
000001bf: CALLDATASIZE
000001c0: PUSH1 0x04
000001c2: PUSH2 0x0d56
000001c5: JUMP
000001c6: JUMPDEST
000001c7: PUSH2 0x0509
000001ca: JUMP
000001cb: JUMPDEST
000001cc: CALLVALUE
000001cd: DUP1
000001ce: ISZERO
000001cf: PUSH2 0x01d7
000001d2: JUMPI
000001d3: PUSH1 0x00
000001d5: DUP1
000001d6: REVERT
000001d7: JUMPDEST
000001d8: POP
000001d9: PUSH2 0x01fb
000001dc: PUSH2 0x01e6
000001df: CALLDATASIZE
000001e0: PUSH1 0x04
000001e2: PUSH2 0x0d92
000001e5: JUMP
000001e6: JUMPDEST
000001e7: PUSH1 0x02
000001e9: PUSH1 0x20
000001eb: MSTORE
000001ec: PUSH1 0x00
000001ee: SWAP1
000001ef: DUP2
000001f0: MSTORE
000001f1: PUSH1 0x40
000001f3: SWAP1
000001f4: KECCAK256
000001f5: SLOAD
000001f6: PUSH1 0xff
000001f8: AND
000001f9: DUP2
000001fa: JUMP
000001fb: JUMPDEST
000001fc: PUSH1 0x40
000001fe: MLOAD
000001ff: SWAP1
00000200: ISZERO
00000201: ISZERO
00000202: DUP2
00000203: MSTORE
00000204: PUSH1 0x20
00000206: ADD
00000207: JUMPDEST
00000208: PUSH1 0x40
0000020a: MLOAD
0000020b: DUP1
0000020c: SWAP2
0000020d: SUB
0000020e: SWAP1
0000020f: RETURN
00000210: JUMPDEST
00000211: CALLVALUE
00000212: DUP1
00000213: ISZERO
00000214: PUSH2 0x021c
00000217: JUMPI
00000218: PUSH1 0x00
0000021a: DUP1
0000021b: REVERT
0000021c: JUMPDEST
0000021d: POP
0000021e: PUSH2 0x0226
00000221: PUSH2 0xdead
00000224: DUP2
00000225: JUMP
00000226: JUMPDEST
00000227: PUSH1 0x40
00000229: MLOAD
0000022a: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
0000023f: SWAP1
00000240: SWAP2
00000241: AND
00000242: DUP2
00000243: MSTORE
00000244: PUSH1 0x20
00000246: ADD
00000247: PUSH2 0x0207
0000024a: JUMP
0000024b: JUMPDEST
0000024c: CALLVALUE
0000024d: DUP1
0000024e: ISZERO
0000024f: PUSH2 0x0257
00000252: JUMPI
00000253: PUSH1 0x00
00000255: DUP1
00000256: REVERT
00000257: JUMPDEST
00000258: POP
00000259: PUSH2 0x01fb
0000025c: PUSH2 0x0266
0000025f: CALLDATASIZE
00000260: PUSH1 0x04
00000262: PUSH2 0x0d92
00000265: JUMP
00000266: JUMPDEST
00000267: PUSH1 0x03
00000269: PUSH1 0x20
0000026b: MSTORE
0000026c: PUSH1 0x00
0000026e: SWAP1
0000026f: DUP2
00000270: MSTORE
00000271: PUSH1 0x40
00000273: SWAP1
00000274: KECCAK256
00000275: SLOAD
00000276: PUSH1 0xff
00000278: AND
00000279: DUP2
0000027a: JUMP
0000027b: JUMPDEST
0000027c: CALLVALUE
0000027d: DUP1
0000027e: ISZERO
0000027f: PUSH2 0x0287
00000282: JUMPI
00000283: PUSH1 0x00
00000285: DUP1
00000286: REVERT
00000287: JUMPDEST
00000288: POP
00000289: PUSH2 0x0189
0000028c: PUSH2 0x0296
0000028f: CALLDATASIZE
00000290: PUSH1 0x04
00000292: PUSH2 0x0e4a
00000295: JUMP
00000296: JUMPDEST
00000297: PUSH2 0x060e
0000029a: JUMP
0000029b: JUMPDEST
0000029c: CALLVALUE
0000029d: DUP1
0000029e: ISZERO
0000029f: PUSH2 0x02a7
000002a2: JUMPI
000002a3: PUSH1 0x00
000002a5: DUP1
000002a6: REVERT
000002a7: JUMPDEST
000002a8: POP
000002a9: PUSH1 0x00
000002ab: SLOAD
000002ac: PUSH2 0x0226
000002af: SWAP1
000002b0: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000002c5: AND
000002c6: DUP2
000002c7: JUMP
000002c8: JUMPDEST
000002c9: CALLVALUE
000002ca: DUP1
000002cb: ISZERO
000002cc: PUSH2 0x02d4
000002cf: JUMPI
000002d0: PUSH1 0x00
000002d2: DUP1
000002d3: REVERT
000002d4: JUMPDEST
000002d5: POP
000002d6: PUSH2 0x0226
000002d9: PUSH20 0xeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee
000002ee: DUP2
000002ef: JUMP
000002f0: JUMPDEST
000002f1: CALLVALUE
000002f2: DUP1
000002f3: ISZERO
000002f4: PUSH2 0x02fc
000002f7: JUMPI
000002f8: PUSH1 0x00
000002fa: DUP1
000002fb: REVERT
000002fc: JUMPDEST
000002fd: POP
000002fe: PUSH2 0x0189
00000301: PUSH2 0x030b
00000304: CALLDATASIZE
00000305: PUSH1 0x04
00000307: PUSH2 0x0d56
0000030a: JUMP
0000030b: JUMPDEST
0000030c: PUSH2 0x06ef
0000030f: JUMP
00000310: JUMPDEST
00000311: CALLVALUE
00000312: DUP1
00000313: ISZERO
00000314: PUSH2 0x031c
00000317: JUMPI
00000318: PUSH1 0x00
0000031a: DUP1
0000031b: REVERT
0000031c: JUMPDEST
0000031d: POP
0000031e: PUSH2 0x0189
00000321: PUSH2 0x032b
00000324: CALLDATASIZE
00000325: PUSH1 0x04
00000327: PUSH2 0x0f1f
0000032a: JUMP
0000032b: JUMPDEST
0000032c: PUSH2 0x07ef
0000032f: JUMP
00000330: JUMPDEST
00000331: CALLVALUE
00000332: DUP1
00000333: ISZERO
00000334: PUSH2 0x033c
00000337: JUMPI
00000338: PUSH1 0x00
0000033a: DUP1
0000033b: REVERT
0000033c: JUMPDEST
0000033d: POP
0000033e: PUSH2 0x0189
00000341: PUSH2 0x034b
00000344: CALLDATASIZE
00000345: PUSH1 0x04
00000347: PUSH2 0x0d92
0000034a: JUMP
0000034b: JUMPDEST
0000034c: PUSH2 0x09f2
0000034f: JUMP
00000350: JUMPDEST
00000351: PUSH1 0x60
00000353: PUSH1 0x00
00000355: DUP1
00000356: DUP4
00000357: MLOAD
00000358: PUSH1 0x20
0000035a: DUP6
0000035b: ADD
0000035c: DUP7
0000035d: GAS
0000035e: DELEGATECALL
0000035f: RETURNDATASIZE
00000360: PUSH1 0x40
00000362: MLOAD
00000363: SWAP3
00000364: POP
00000365: PUSH1 0x1f
00000367: NOT
00000368: PUSH1 0x1f
0000036a: PUSH1 0x20
0000036c: DUP4
0000036d: ADD
0000036e: ADD
0000036f: AND
00000370: DUP4
00000371: ADD
00000372: PUSH1 0x40
00000374: MSTORE
00000375: DUP1
00000376: DUP4
00000377: MSTORE
00000378: DUP1
00000379: PUSH1 0x00
0000037b: PUSH1 0x20
0000037d: DUP6
0000037e: ADD
0000037f: RETURNDATACOPY
00000380: DUP2
00000381: PUSH2 0x038e
00000384: JUMPI
00000385: DUP1
00000386: PUSH1 0x00
00000388: DUP1
00000389: RETURNDATACOPY
0000038a: DUP1
0000038b: PUSH1 0x00
0000038d: REVERT
0000038e: JUMPDEST
0000038f: POP
00000390: POP
00000391: SWAP3
00000392: SWAP2
00000393: POP
00000394: POP
00000395: JUMP
00000396: JUMPDEST
00000397: CALLER
00000398: PUSH1 0x00
0000039a: SWAP1
0000039b: DUP2
0000039c: MSTORE
0000039d: PUSH1 0x02
0000039f: PUSH1 0x20
000003a1: MSTORE
000003a2: PUSH1 0x40
000003a4: SWAP1
000003a5: KECCAK256
000003a6: SLOAD
000003a7: PUSH1 0xff
000003a9: AND
000003aa: ISZERO
000003ab: DUP1
000003ac: ISZERO
000003ad: PUSH2 0x03ce
000003b0: JUMPI
000003b1: POP
000003b2: PUSH1 0x00
000003b4: SLOAD
000003b5: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000003ca: AND
000003cb: CALLER
000003cc: EQ
000003cd: ISZERO
000003ce: JUMPDEST
000003cf: ISZERO
000003d0: PUSH2 0x0405
000003d3: JUMPI
000003d4: PUSH1 0x40
000003d6: MLOAD
000003d7: PUSH32 0x74bf188c00000000000000000000000000000000000000000000000000000000
000003f8: DUP2
000003f9: MSTORE
000003fa: PUSH1 0x04
000003fc: ADD
000003fd: PUSH1 0x40
000003ff: MLOAD
00000400: DUP1
00000401: SWAP2
00000402: SUB
00000403: SWAP1
00000404: REVERT
00000405: JUMPDEST
00000406: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
0000041b: DUP3
0000041c: AND
0000041d: PUSH1 0x00
0000041f: SWAP1
00000420: DUP2
00000421: MSTORE
00000422: PUSH1 0x03
00000424: PUSH1 0x20
00000426: MSTORE
00000427: PUSH1 0x40
00000429: SWAP1
0000042a: KECCAK256
0000042b: SLOAD
0000042c: DUP3
0000042d: SWAP1
0000042e: PUSH1 0xff
00000430: AND
00000431: ISZERO
00000432: DUP1
00000433: PUSH2 0x0456
00000436: JUMPI
00000437: POP
00000438: PUSH1 0x01
0000043a: SLOAD
0000043b: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000450: AND
00000451: PUSH2 0xdead
00000454: EQ
00000455: ISZERO
00000456: JUMPDEST
00000457: ISZERO
00000458: PUSH2 0x048d
0000045b: JUMPI
0000045c: PUSH1 0x40
0000045e: MLOAD
0000045f: PUSH32 0xc797928700000000000000000000000000000000000000000000000000000000
00000480: DUP2
00000481: MSTORE
00000482: PUSH1 0x04
00000484: ADD
00000485: PUSH1 0x40
00000487: MLOAD
00000488: DUP1
00000489: SWAP2
0000048a: SUB
0000048b: SWAP1
0000048c: REVERT
0000048d: JUMPDEST
0000048e: PUSH1 0x01
00000490: DUP1
00000491: SLOAD
00000492: PUSH32 0xffffffffffffffffffffffff0000000000000000000000000000000000000000
000004b3: AND
000004b4: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000004c9: DUP4
000004ca: AND
000004cb: OR
000004cc: SWAP1
000004cd: SSTORE
000004ce: PUSH2 0x04d7
000004d1: DUP4
000004d2: DUP4
000004d3: PUSH2 0x0350
000004d6: JUMP
000004d7: JUMPDEST
000004d8: POP
000004d9: POP
000004da: PUSH1 0x01
000004dc: DUP1
000004dd: SLOAD
000004de: PUSH32 0xffffffffffffffffffffffff0000000000000000000000000000000000000000
000004ff: AND
00000500: PUSH2 0xdead
00000503: OR
00000504: SWAP1
00000505: SSTORE
00000506: POP
00000507: POP
00000508: JUMP
00000509: JUMPDEST
0000050a: PUSH1 0x00
0000050c: SLOAD
0000050d: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000522: AND
00000523: CALLER
00000524: EQ
00000525: PUSH2 0x058f
00000528: JUMPI
00000529: PUSH1 0x40
0000052b: MLOAD
0000052c: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000
0000054d: DUP2
0000054e: MSTORE
0000054f: PUSH1 0x20
00000551: PUSH1 0x04
00000553: DUP3
00000554: ADD
00000555: MSTORE
00000556: PUSH1 0x0c
00000558: PUSH1 0x24
0000055a: DUP3
0000055b: ADD
0000055c: MSTORE
0000055d: PUSH32 0x554e415554484f52495a45440000000000000000000000000000000000000000
0000057e: PUSH1 0x44
00000580: DUP3
00000581: ADD
00000582: MSTORE
00000583: PUSH1 0x64
00000585: ADD
00000586: JUMPDEST
00000587: PUSH1 0x40
00000589: MLOAD
0000058a: DUP1
0000058b: SWAP2
0000058c: SUB
0000058d: SWAP1
0000058e: REVERT
0000058f: JUMPDEST
00000590: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000005a5: DUP3
000005a6: AND
000005a7: PUSH1 0x00
000005a9: DUP2
000005aa: DUP2
000005ab: MSTORE
000005ac: PUSH1 0x02
000005ae: PUSH1 0x20
000005b0: MSTORE
000005b1: PUSH1 0x40
000005b3: DUP1
000005b4: DUP3
000005b5: KECCAK256
000005b6: DUP1
000005b7: SLOAD
000005b8: PUSH32 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00
000005d9: AND
000005da: DUP6
000005db: ISZERO
000005dc: ISZERO
000005dd: SWAP1
000005de: DUP2
000005df: OR
000005e0: SWAP1
000005e1: SWAP2
000005e2: SSTORE
000005e3: SWAP1
000005e4: MLOAD
000005e5: SWAP1
000005e6: SWAP3
000005e7: SWAP2
000005e8: PUSH32 0xd74bdcde9b66b7d08a366a43b11a78f3c8307dfeeb0a7741005200bfedfe933f
00000609: SWAP2
0000060a: LOG3
0000060b: POP
0000060c: POP
0000060d: JUMP
0000060e: JUMPDEST
0000060f: PUSH1 0x00
00000611: SLOAD
00000612: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000627: AND
00000628: CALLER
00000629: EQ
0000062a: PUSH2 0x068f
0000062d: JUMPI
0000062e: PUSH1 0x40
00000630: MLOAD
00000631: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000
00000652: DUP2
00000653: MSTORE
00000654: PUSH1 0x20
00000656: PUSH1 0x04
00000658: DUP3
00000659: ADD
0000065a: MSTORE
0000065b: PUSH1 0x0c
0000065d: PUSH1 0x24
0000065f: DUP3
00000660: ADD
00000661: MSTORE
00000662: PUSH32 0x554e415554484f52495a45440000000000000000000000000000000000000000
00000683: PUSH1 0x44
00000685: DUP3
00000686: ADD
00000687: MSTORE
00000688: PUSH1 0x64
0000068a: ADD
0000068b: PUSH2 0x0586
0000068e: JUMP
0000068f: JUMPDEST
00000690: PUSH1 0x00
00000692: JUMPDEST
00000693: DUP3
00000694: MLOAD
00000695: DUP2
00000696: LT
00000697: ISZERO
00000698: PUSH2 0x06ea
0000069b: JUMPI
0000069c: PUSH2 0x06d7
0000069f: DUP4
000006a0: DUP3
000006a1: DUP2
000006a2: MLOAD
000006a3: DUP2
000006a4: LT
000006a5: PUSH2 0x06b0
000006a8: JUMPI
000006a9: PUSH2 0x06b0
000006ac: PUSH2 0x0fe9
000006af: JUMP
000006b0: JUMPDEST
000006b1: PUSH1 0x20
000006b3: MUL
000006b4: PUSH1 0x20
000006b6: ADD
000006b7: ADD
000006b8: MLOAD
000006b9: DUP4
000006ba: DUP4
000006bb: DUP2
000006bc: MLOAD
000006bd: DUP2
000006be: LT
000006bf: PUSH2 0x06ca
000006c2: JUMPI
000006c3: PUSH2 0x06ca
000006c6: PUSH2 0x0fe9
000006c9: JUMP
000006ca: JUMPDEST
000006cb: PUSH1 0x20
000006cd: MUL
000006ce: PUSH1 0x20
000006d0: ADD
000006d1: ADD
000006d2: MLOAD
000006d3: PUSH2 0x0350
000006d6: JUMP
000006d7: JUMPDEST
000006d8: POP
000006d9: DUP1
000006da: PUSH2 0x06e2
000006dd: DUP2
000006de: PUSH2 0x1018
000006e1: JUMP
000006e2: JUMPDEST
000006e3: SWAP2
000006e4: POP
000006e5: POP
000006e6: PUSH2 0x0692
000006e9: JUMP
000006ea: JUMPDEST
000006eb: POP
000006ec: POP
000006ed: POP
000006ee: JUMP
000006ef: JUMPDEST
000006f0: PUSH1 0x00
000006f2: SLOAD
000006f3: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000708: AND
00000709: CALLER
0000070a: EQ
0000070b: PUSH2 0x0770
0000070e: JUMPI
0000070f: PUSH1 0x40
00000711: MLOAD
00000712: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000
00000733: DUP2
00000734: MSTORE
00000735: PUSH1 0x20
00000737: PUSH1 0x04
00000739: DUP3
0000073a: ADD
0000073b: MSTORE
0000073c: PUSH1 0x0c
0000073e: PUSH1 0x24
00000740: DUP3
00000741: ADD
00000742: MSTORE
00000743: PUSH32 0x554e415554484f52495a45440000000000000000000000000000000000000000
00000764: PUSH1 0x44
00000766: DUP3
00000767: ADD
00000768: MSTORE
00000769: PUSH1 0x64
0000076b: ADD
0000076c: PUSH2 0x0586
0000076f: JUMP
00000770: JUMPDEST
00000771: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000786: DUP3
00000787: AND
00000788: PUSH1 0x00
0000078a: DUP2
0000078b: DUP2
0000078c: MSTORE
0000078d: PUSH1 0x03
0000078f: PUSH1 0x20
00000791: MSTORE
00000792: PUSH1 0x40
00000794: DUP1
00000795: DUP3
00000796: KECCAK256
00000797: DUP1
00000798: SLOAD
00000799: PUSH32 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00
000007ba: AND
000007bb: DUP6
000007bc: ISZERO
000007bd: ISZERO
000007be: SWAP1
000007bf: DUP2
000007c0: OR
000007c1: SWAP1
000007c2: SWAP2
000007c3: SSTORE
000007c4: SWAP1
000007c5: MLOAD
000007c6: SWAP1
000007c7: SWAP3
000007c8: SWAP2
000007c9: PUSH32 0xf8b5205933f2a0c22ab598fc1570a8405c8aec362af89ed1f8d4500d0e6b8f6c
000007ea: SWAP2
000007eb: LOG3
000007ec: POP
000007ed: POP
000007ee: JUMP
000007ef: JUMPDEST
000007f0: PUSH1 0x00
000007f2: SLOAD
000007f3: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000808: AND
00000809: CALLER
0000080a: EQ
0000080b: PUSH2 0x0870
0000080e: JUMPI
0000080f: PUSH1 0x40
00000811: MLOAD
00000812: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000
00000833: DUP2
00000834: MSTORE
00000835: PUSH1 0x20
00000837: PUSH1 0x04
00000839: DUP3
0000083a: ADD
0000083b: MSTORE
0000083c: PUSH1 0x0c
0000083e: PUSH1 0x24
00000840: DUP3
00000841: ADD
00000842: MSTORE
00000843: PUSH32 0x554e415554484f52495a45440000000000000000000000000000000000000000
00000864: PUSH1 0x44
00000866: DUP3
00000867: ADD
00000868: MSTORE
00000869: PUSH1 0x64
0000086b: ADD
0000086c: PUSH2 0x0586
0000086f: JUMP
00000870: JUMPDEST
00000871: PUSH1 0x00
00000873: JUMPDEST
00000874: DUP3
00000875: MLOAD
00000876: DUP2
00000877: LT
00000878: ISZERO
00000879: PUSH2 0x09ec
0000087c: JUMPI
0000087d: PUSH20 0xeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee
00000892: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000008a7: AND
000008a8: DUP4
000008a9: DUP3
000008aa: DUP2
000008ab: MLOAD
000008ac: DUP2
000008ad: LT
000008ae: PUSH2 0x08b9
000008b1: JUMPI
000008b2: PUSH2 0x08b9
000008b5: PUSH2 0x0fe9
000008b8: JUMP
000008b9: JUMPDEST
000008ba: PUSH1 0x20
000008bc: MUL
000008bd: PUSH1 0x20
000008bf: ADD
000008c0: ADD
000008c1: MLOAD
000008c2: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000008d7: AND
000008d8: SUB
000008d9: PUSH2 0x0904
000008dc: JUMPI
000008dd: PUSH2 0x08ff
000008e0: DUP5
000008e1: DUP4
000008e2: DUP4
000008e3: DUP2
000008e4: MLOAD
000008e5: DUP2
000008e6: LT
000008e7: PUSH2 0x08f2
000008ea: JUMPI
000008eb: PUSH2 0x08f2
000008ee: PUSH2 0x0fe9
000008f1: JUMP
000008f2: JUMPDEST
000008f3: PUSH1 0x20
000008f5: MUL
000008f6: PUSH1 0x20
000008f8: ADD
000008f9: ADD
000008fa: MLOAD
000008fb: PUSH2 0x0ae3
000008fe: JUMP
000008ff: JUMPDEST
00000900: PUSH2 0x0941
00000903: JUMP
00000904: JUMPDEST
00000905: PUSH2 0x0941
00000908: DUP4
00000909: DUP3
0000090a: DUP2
0000090b: MLOAD
0000090c: DUP2
0000090d: LT
0000090e: PUSH2 0x0919
00000911: JUMPI
00000912: PUSH2 0x0919
00000915: PUSH2 0x0fe9
00000918: JUMP
00000919: JUMPDEST
0000091a: PUSH1 0x20
0000091c: MUL
0000091d: PUSH1 0x20
0000091f: ADD
00000920: ADD
00000921: MLOAD
00000922: DUP6
00000923: DUP5
00000924: DUP5
00000925: DUP2
00000926: MLOAD
00000927: DUP2
00000928: LT
00000929: PUSH2 0x0934
0000092c: JUMPI
0000092d: PUSH2 0x0934
00000930: PUSH2 0x0fe9
00000933: JUMP
00000934: JUMPDEST
00000935: PUSH1 0x20
00000937: MUL
00000938: PUSH1 0x20
0000093a: ADD
0000093b: ADD
0000093c: MLOAD
0000093d: PUSH2 0x0b2f
00000940: JUMP
00000941: JUMPDEST
00000942: DUP3
00000943: DUP2
00000944: DUP2
00000945: MLOAD
00000946: DUP2
00000947: LT
00000948: PUSH2 0x0953
0000094b: JUMPI
0000094c: PUSH2 0x0953
0000094f: PUSH2 0x0fe9
00000952: JUMP
00000953: JUMPDEST
00000954: PUSH1 0x20
00000956: MUL
00000957: PUSH1 0x20
00000959: ADD
0000095a: ADD
0000095b: MLOAD
0000095c: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000971: AND
00000972: DUP5
00000973: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000988: AND
00000989: PUSH32 0x9b1bfa7fa9ee420a16e124f794c35ac9f90472acc99140eb2f6447c714cad8eb
000009aa: DUP5
000009ab: DUP5
000009ac: DUP2
000009ad: MLOAD
000009ae: DUP2
000009af: LT
000009b0: PUSH2 0x09bb
000009b3: JUMPI
000009b4: PUSH2 0x09bb
000009b7: PUSH2 0x0fe9
000009ba: JUMP
000009bb: JUMPDEST
000009bc: PUSH1 0x20
000009be: MUL
000009bf: PUSH1 0x20
000009c1: ADD
000009c2: ADD
000009c3: MLOAD
000009c4: PUSH1 0x40
000009c6: MLOAD
000009c7: PUSH2 0x09d2
000009ca: SWAP2
000009cb: DUP2
000009cc: MSTORE
000009cd: PUSH1 0x20
000009cf: ADD
000009d0: SWAP1
000009d1: JUMP
000009d2: JUMPDEST
000009d3: PUSH1 0x40
000009d5: MLOAD
000009d6: DUP1
000009d7: SWAP2
000009d8: SUB
000009d9: SWAP1
000009da: LOG3
000009db: DUP1
000009dc: PUSH2 0x09e4
000009df: DUP2
000009e0: PUSH2 0x1018
000009e3: JUMP
000009e4: JUMPDEST
000009e5: SWAP2
000009e6: POP
000009e7: POP
000009e8: PUSH2 0x0873
000009eb: JUMP
000009ec: JUMPDEST
000009ed: POP
000009ee: POP
000009ef: POP
000009f0: POP
000009f1: JUMP
000009f2: JUMPDEST
000009f3: PUSH1 0x00
000009f5: SLOAD
000009f6: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000a0b: AND
00000a0c: CALLER
00000a0d: EQ
00000a0e: PUSH2 0x0a73
00000a11: JUMPI
00000a12: PUSH1 0x40
00000a14: MLOAD
00000a15: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000
00000a36: DUP2
00000a37: MSTORE
00000a38: PUSH1 0x20
00000a3a: PUSH1 0x04
00000a3c: DUP3
00000a3d: ADD
00000a3e: MSTORE
00000a3f: PUSH1 0x0c
00000a41: PUSH1 0x24
00000a43: DUP3
00000a44: ADD
00000a45: MSTORE
00000a46: PUSH32 0x554e415554484f52495a45440000000000000000000000000000000000000000
00000a67: PUSH1 0x44
00000a69: DUP3
00000a6a: ADD
00000a6b: MSTORE
00000a6c: PUSH1 0x64
00000a6e: ADD
00000a6f: PUSH2 0x0586
00000a72: JUMP
00000a73: JUMPDEST
00000a74: PUSH1 0x00
00000a76: DUP1
00000a77: SLOAD
00000a78: PUSH32 0xffffffffffffffffffffffff0000000000000000000000000000000000000000
00000a99: AND
00000a9a: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000aaf: DUP4
00000ab0: AND
00000ab1: SWAP1
00000ab2: DUP2
00000ab3: OR
00000ab4: DUP3
00000ab5: SSTORE
00000ab6: PUSH1 0x40
00000ab8: MLOAD
00000ab9: SWAP1
00000aba: SWAP2
00000abb: CALLER
00000abc: SWAP2
00000abd: PUSH32 0x8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0
00000ade: SWAP2
00000adf: SWAP1
00000ae0: LOG3
00000ae1: POP
00000ae2: JUMP
00000ae3: JUMPDEST
00000ae4: PUSH1 0x00
00000ae6: DUP1
00000ae7: PUSH1 0x00
00000ae9: DUP1
00000aea: PUSH1 0x00
00000aec: DUP6
00000aed: DUP8
00000aee: PUSH2 0x4e20
00000af1: CALL
00000af2: SWAP1
00000af3: POP
00000af4: DUP1
00000af5: PUSH2 0x06ea
00000af8: JUMPI
00000af9: PUSH1 0x40
00000afb: MLOAD
00000afc: PUSH32 0xdee51a8a00000000000000000000000000000000000000000000000000000000
00000b1d: DUP2
00000b1e: MSTORE
00000b1f: PUSH3 0x01155a
00000b23: PUSH1 0x04
00000b25: DUP3
00000b26: ADD
00000b27: MSTORE
00000b28: PUSH1 0x24
00000b2a: ADD
00000b2b: PUSH2 0x0586
00000b2e: JUMP
00000b2f: JUMPDEST
00000b30: PUSH1 0x00
00000b32: PUSH1 0x40
00000b34: MLOAD
00000b35: PUSH32 0xa9059cbb00000000000000000000000000000000000000000000000000000000
00000b56: DUP2
00000b57: MSTORE
00000b58: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000b6d: DUP5
00000b6e: AND
00000b6f: PUSH1 0x04
00000b71: DUP3
00000b72: ADD
00000b73: MSTORE
00000b74: DUP3
00000b75: PUSH1 0x24
00000b77: DUP3
00000b78: ADD
00000b79: MSTORE
00000b7a: PUSH1 0x20
00000b7c: PUSH1 0x00
00000b7e: PUSH1 0x44
00000b80: DUP4
00000b81: PUSH1 0x00
00000b83: DUP10
00000b84: GAS
00000b85: CALL
00000b86: RETURNDATASIZE
00000b87: ISZERO
00000b88: PUSH1 0x1f
00000b8a: RETURNDATASIZE
00000b8b: GT
00000b8c: PUSH1 0x01
00000b8e: PUSH1 0x00
00000b90: MLOAD
00000b91: EQ
00000b92: AND
00000b93: OR
00000b94: AND
00000b95: SWAP2
00000b96: POP
00000b97: POP
00000b98: DUP1
00000b99: PUSH2 0x09ec
00000b9c: JUMPI
00000b9d: PUSH1 0x40
00000b9f: MLOAD
00000ba0: PUSH32 0xdee51a8a00000000000000000000000000000000000000000000000000000000
00000bc1: DUP2
00000bc2: MSTORE
00000bc3: PUSH3 0x01155a
00000bc7: PUSH1 0x04
00000bc9: DUP3
00000bca: ADD
00000bcb: MSTORE
00000bcc: PUSH1 0x24
00000bce: ADD
00000bcf: PUSH2 0x0586
00000bd2: JUMP
00000bd3: JUMPDEST
00000bd4: DUP1
00000bd5: CALLDATALOAD
00000bd6: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000beb: DUP2
00000bec: AND
00000bed: DUP2
00000bee: EQ
00000bef: PUSH2 0x0bf7
00000bf2: JUMPI
00000bf3: PUSH1 0x00
00000bf5: DUP1
00000bf6: REVERT
00000bf7: JUMPDEST
00000bf8: SWAP2
00000bf9: SWAP1
00000bfa: POP
00000bfb: JUMP
00000bfc: JUMPDEST
00000bfd: PUSH32 0x4e487b7100000000000000000000000000000000000000000000000000000000
00000c1e: PUSH1 0x00
00000c20: MSTORE
00000c21: PUSH1 0x41
00000c23: PUSH1 0x04
00000c25: MSTORE
00000c26: PUSH1 0x24
00000c28: PUSH1 0x00
00000c2a: REVERT
00000c2b: JUMPDEST
00000c2c: PUSH1 0x40
00000c2e: MLOAD
00000c2f: PUSH1 0x1f
00000c31: DUP3
00000c32: ADD
00000c33: PUSH32 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0
00000c54: AND
00000c55: DUP2
00000c56: ADD
00000c57: PUSH8 0xffffffffffffffff
00000c60: DUP2
00000c61: GT
00000c62: DUP3
00000c63: DUP3
00000c64: LT
00000c65: OR
00000c66: ISZERO
00000c67: PUSH2 0x0c72
00000c6a: JUMPI
00000c6b: PUSH2 0x0c72
00000c6e: PUSH2 0x0bfc
00000c71: JUMP
00000c72: JUMPDEST
00000c73: PUSH1 0x40
00000c75: MSTORE
00000c76: SWAP2
00000c77: SWAP1
00000c78: POP
00000c79: JUMP
00000c7a: JUMPDEST
00000c7b: PUSH1 0x00
00000c7d: DUP3
00000c7e: PUSH1 0x1f
00000c80: DUP4
00000c81: ADD
00000c82: SLT
00000c83: PUSH2 0x0c8b
00000c86: JUMPI
00000c87: PUSH1 0x00
00000c89: DUP1
00000c8a: REVERT
00000c8b: JUMPDEST
00000c8c: DUP2
00000c8d: CALLDATALOAD
00000c8e: PUSH8 0xffffffffffffffff
00000c97: DUP2
00000c98: GT
00000c99: ISZERO
00000c9a: PUSH2 0x0ca5
00000c9d: JUMPI
00000c9e: PUSH2 0x0ca5
00000ca1: PUSH2 0x0bfc
00000ca4: JUMP
00000ca5: JUMPDEST
00000ca6: PUSH2 0x0cd6
00000ca9: PUSH1 0x20
00000cab: PUSH32 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0
00000ccc: PUSH1 0x1f
00000cce: DUP5
00000ccf: ADD
00000cd0: AND
00000cd1: ADD
00000cd2: PUSH2 0x0c2b
00000cd5: JUMP
00000cd6: JUMPDEST
00000cd7: DUP2
00000cd8: DUP2
00000cd9: MSTORE
00000cda: DUP5
00000cdb: PUSH1 0x20
00000cdd: DUP4
00000cde: DUP7
00000cdf: ADD
00000ce0: ADD
00000ce1: GT
00000ce2: ISZERO
00000ce3: PUSH2 0x0ceb
00000ce6: JUMPI
00000ce7: PUSH1 0x00
00000ce9: DUP1
00000cea: REVERT
00000ceb: JUMPDEST
00000cec: DUP2
00000ced: PUSH1 0x20
00000cef: DUP6
00000cf0: ADD
00000cf1: PUSH1 0x20
00000cf3: DUP4
00000cf4: ADD
00000cf5: CALLDATACOPY
00000cf6: PUSH1 0x00
00000cf8: SWAP2
00000cf9: DUP2
00000cfa: ADD
00000cfb: PUSH1 0x20
00000cfd: ADD
00000cfe: SWAP2
00000cff: SWAP1
00000d00: SWAP2
00000d01: MSTORE
00000d02: SWAP4
00000d03: SWAP3
00000d04: POP
00000d05: POP
00000d06: POP
00000d07: JUMP
00000d08: JUMPDEST
00000d09: PUSH1 0x00
00000d0b: DUP1
00000d0c: PUSH1 0x40
00000d0e: DUP4
00000d0f: DUP6
00000d10: SUB
00000d11: SLT
00000d12: ISZERO
00000d13: PUSH2 0x0d1b
00000d16: JUMPI
00000d17: PUSH1 0x00
00000d19: DUP1
00000d1a: REVERT
00000d1b: JUMPDEST
00000d1c: PUSH2 0x0d24
00000d1f: DUP4
00000d20: PUSH2 0x0bd3
00000d23: JUMP
00000d24: JUMPDEST
00000d25: SWAP2
00000d26: POP
00000d27: PUSH1 0x20
00000d29: DUP4
00000d2a: ADD
00000d2b: CALLDATALOAD
00000d2c: PUSH8 0xffffffffffffffff
00000d35: DUP2
00000d36: GT
00000d37: ISZERO
00000d38: PUSH2 0x0d40
00000d3b: JUMPI
00000d3c: PUSH1 0x00
00000d3e: DUP1
00000d3f: REVERT
00000d40: JUMPDEST
00000d41: PUSH2 0x0d4c
00000d44: DUP6
00000d45: DUP3
00000d46: DUP7
00000d47: ADD
00000d48: PUSH2 0x0c7a
00000d4b: JUMP
00000d4c: JUMPDEST
00000d4d: SWAP2
00000d4e: POP
00000d4f: POP
00000d50: SWAP3
00000d51: POP
00000d52: SWAP3
00000d53: SWAP1
00000d54: POP
00000d55: JUMP
00000d56: JUMPDEST
00000d57: PUSH1 0x00
00000d59: DUP1
00000d5a: PUSH1 0x40
00000d5c: DUP4
00000d5d: DUP6
00000d5e: SUB
00000d5f: SLT
00000d60: ISZERO
00000d61: PUSH2 0x0d69
00000d64: JUMPI
00000d65: PUSH1 0x00
00000d67: DUP1
00000d68: REVERT
00000d69: JUMPDEST
00000d6a: PUSH2 0x0d72
00000d6d: DUP4
00000d6e: PUSH2 0x0bd3
00000d71: JUMP
00000d72: JUMPDEST
00000d73: SWAP2
00000d74: POP
00000d75: PUSH1 0x20
00000d77: DUP4
00000d78: ADD
00000d79: CALLDATALOAD
00000d7a: DUP1
00000d7b: ISZERO
00000d7c: ISZERO
00000d7d: DUP2
00000d7e: EQ
00000d7f: PUSH2 0x0d87
00000d82: JUMPI
00000d83: PUSH1 0x00
00000d85: DUP1
00000d86: REVERT
00000d87: JUMPDEST
00000d88: DUP1
00000d89: SWAP2
00000d8a: POP
00000d8b: POP
00000d8c: SWAP3
00000d8d: POP
00000d8e: SWAP3
00000d8f: SWAP1
00000d90: POP
00000d91: JUMP
00000d92: JUMPDEST
00000d93: PUSH1 0x00
00000d95: PUSH1 0x20
00000d97: DUP3
00000d98: DUP5
00000d99: SUB
00000d9a: SLT
00000d9b: ISZERO
00000d9c: PUSH2 0x0da4
00000d9f: JUMPI
00000da0: PUSH1 0x00
00000da2: DUP1
00000da3: REVERT
00000da4: JUMPDEST
00000da5: PUSH2 0x0dad
00000da8: DUP3
00000da9: PUSH2 0x0bd3
00000dac: JUMP
00000dad: JUMPDEST
00000dae: SWAP4
00000daf: SWAP3
00000db0: POP
00000db1: POP
00000db2: POP
00000db3: JUMP
00000db4: JUMPDEST
00000db5: PUSH1 0x00
00000db7: PUSH8 0xffffffffffffffff
00000dc0: DUP3
00000dc1: GT
00000dc2: ISZERO
00000dc3: PUSH2 0x0dce
00000dc6: JUMPI
00000dc7: PUSH2 0x0dce
00000dca: PUSH2 0x0bfc
00000dcd: JUMP
00000dce: JUMPDEST
00000dcf: POP
00000dd0: PUSH1 0x05
00000dd2: SHL
00000dd3: PUSH1 0x20
00000dd5: ADD
00000dd6: SWAP1
00000dd7: JUMP
00000dd8: JUMPDEST
00000dd9: PUSH1 0x00
00000ddb: DUP3
00000ddc: PUSH1 0x1f
00000dde: DUP4
00000ddf: ADD
00000de0: SLT
00000de1: PUSH2 0x0de9
00000de4: JUMPI
00000de5: PUSH1 0x00
00000de7: DUP1
00000de8: REVERT
00000de9: JUMPDEST
00000dea: DUP2
00000deb: CALLDATALOAD
00000dec: PUSH1 0x20
00000dee: PUSH2 0x0dfe
00000df1: PUSH2 0x0df9
00000df4: DUP4
00000df5: PUSH2 0x0db4
00000df8: JUMP
00000df9: JUMPDEST
00000dfa: PUSH2 0x0c2b
00000dfd: JUMP
00000dfe: JUMPDEST
00000dff: DUP3
00000e00: DUP2
00000e01: MSTORE
00000e02: PUSH1 0x05
00000e04: SWAP3
00000e05: SWAP1
00000e06: SWAP3
00000e07: SHL
00000e08: DUP5
00000e09: ADD
00000e0a: DUP2
00000e0b: ADD
00000e0c: SWAP2
00000e0d: DUP2
00000e0e: DUP2
00000e0f: ADD
00000e10: SWAP1
00000e11: DUP7
00000e12: DUP5
00000e13: GT
00000e14: ISZERO
00000e15: PUSH2 0x0e1d
00000e18: JUMPI
00000e19: PUSH1 0x00
00000e1b: DUP1
00000e1c: REVERT
00000e1d: JUMPDEST
00000e1e: DUP3
00000e1f: DUP7
00000e20: ADD
00000e21: JUMPDEST
00000e22: DUP5
00000e23: DUP2
00000e24: LT
00000e25: ISZERO
00000e26: PUSH2 0x0e3f
00000e29: JUMPI
00000e2a: PUSH2 0x0e32
00000e2d: DUP2
00000e2e: PUSH2 0x0bd3
00000e31: JUMP
00000e32: JUMPDEST
00000e33: DUP4
00000e34: MSTORE
00000e35: SWAP2
00000e36: DUP4
00000e37: ADD
00000e38: SWAP2
00000e39: DUP4
00000e3a: ADD
00000e3b: PUSH2 0x0e21
00000e3e: JUMP
00000e3f: JUMPDEST
00000e40: POP
00000e41: SWAP7
00000e42: SWAP6
00000e43: POP
00000e44: POP
00000e45: POP
00000e46: POP
00000e47: POP
00000e48: POP
00000e49: JUMP
00000e4a: JUMPDEST
00000e4b: PUSH1 0x00
00000e4d: DUP1
00000e4e: PUSH1 0x40
00000e50: DUP4
00000e51: DUP6
00000e52: SUB
00000e53: SLT
00000e54: ISZERO
00000e55: PUSH2 0x0e5d
00000e58: JUMPI
00000e59: PUSH1 0x00
00000e5b: DUP1
00000e5c: REVERT
00000e5d: JUMPDEST
00000e5e: DUP3
00000e5f: CALLDATALOAD
00000e60: PUSH8 0xffffffffffffffff
00000e69: DUP1
00000e6a: DUP3
00000e6b: GT
00000e6c: ISZERO
00000e6d: PUSH2 0x0e75
00000e70: JUMPI
00000e71: PUSH1 0x00
00000e73: DUP1
00000e74: REVERT
00000e75: JUMPDEST
00000e76: PUSH2 0x0e81
00000e79: DUP7
00000e7a: DUP4
00000e7b: DUP8
00000e7c: ADD
00000e7d: PUSH2 0x0dd8
00000e80: JUMP
00000e81: JUMPDEST
00000e82: SWAP4
00000e83: POP
00000e84: PUSH1 0x20
00000e86: SWAP2
00000e87: POP
00000e88: DUP2
00000e89: DUP6
00000e8a: ADD
00000e8b: CALLDATALOAD
00000e8c: DUP2
00000e8d: DUP2
00000e8e: GT
00000e8f: ISZERO
00000e90: PUSH2 0x0e98
00000e93: JUMPI
00000e94: PUSH1 0x00
00000e96: DUP1
00000e97: REVERT
00000e98: JUMPDEST
00000e99: DUP6
00000e9a: ADD
00000e9b: PUSH1 0x1f
00000e9d: DUP2
00000e9e: ADD
00000e9f: DUP8
00000ea0: SGT
00000ea1: PUSH2 0x0ea9
00000ea4: JUMPI
00000ea5: PUSH1 0x00
00000ea7: DUP1
00000ea8: REVERT
00000ea9: JUMPDEST
00000eaa: DUP1
00000eab: CALLDATALOAD
00000eac: PUSH2 0x0eb7
00000eaf: PUSH2 0x0df9
00000eb2: DUP3
00000eb3: PUSH2 0x0db4
00000eb6: JUMP
00000eb7: JUMPDEST
00000eb8: DUP2
00000eb9: DUP2
00000eba: MSTORE
00000ebb: PUSH1 0x05
00000ebd: SWAP2
00000ebe: SWAP1
00000ebf: SWAP2
00000ec0: SHL
00000ec1: DUP3
00000ec2: ADD
00000ec3: DUP5
00000ec4: ADD
00000ec5: SWAP1
00000ec6: DUP5
00000ec7: DUP2
00000ec8: ADD
00000ec9: SWAP1
00000eca: DUP10
00000ecb: DUP4
00000ecc: GT
00000ecd: ISZERO
00000ece: PUSH2 0x0ed6
00000ed1: JUMPI
00000ed2: PUSH1 0x00
00000ed4: DUP1
00000ed5: REVERT
00000ed6: JUMPDEST
00000ed7: DUP6
00000ed8: DUP5
00000ed9: ADD
00000eda: JUMPDEST
00000edb: DUP4
00000edc: DUP2
00000edd: LT
00000ede: ISZERO
00000edf: PUSH2 0x0f0e
00000ee2: JUMPI
00000ee3: DUP1
00000ee4: CALLDATALOAD
00000ee5: DUP7
00000ee6: DUP2
00000ee7: GT
00000ee8: ISZERO
00000ee9: PUSH2 0x0ef2
00000eec: JUMPI
00000eed: PUSH1 0x00
00000eef: DUP1
00000ef0: DUP2
00000ef1: REVERT
00000ef2: JUMPDEST
00000ef3: PUSH2 0x0f00
00000ef6: DUP13
00000ef7: DUP10
00000ef8: DUP4
00000ef9: DUP10
00000efa: ADD
00000efb: ADD
00000efc: PUSH2 0x0c7a
00000eff: JUMP
00000f00: JUMPDEST
00000f01: DUP5
00000f02: MSTORE
00000f03: POP
00000f04: SWAP2
00000f05: DUP7
00000f06: ADD
00000f07: SWAP2
00000f08: DUP7
00000f09: ADD
00000f0a: PUSH2 0x0eda
00000f0d: JUMP
00000f0e: JUMPDEST
00000f0f: POP
00000f10: DUP1
00000f11: SWAP7
00000f12: POP
00000f13: POP
00000f14: POP
00000f15: POP
00000f16: POP
00000f17: POP
00000f18: POP
00000f19: SWAP3
00000f1a: POP
00000f1b: SWAP3
00000f1c: SWAP1
00000f1d: POP
00000f1e: JUMP
00000f1f: JUMPDEST
00000f20: PUSH1 0x00
00000f22: DUP1
00000f23: PUSH1 0x00
00000f25: PUSH1 0x60
00000f27: DUP5
00000f28: DUP7
00000f29: SUB
00000f2a: SLT
00000f2b: ISZERO
00000f2c: PUSH2 0x0f34
00000f2f: JUMPI
00000f30: PUSH1 0x00
00000f32: DUP1
00000f33: REVERT
00000f34: JUMPDEST
00000f35: PUSH2 0x0f3d
00000f38: DUP5
00000f39: PUSH2 0x0bd3
00000f3c: JUMP
00000f3d: JUMPDEST
00000f3e: SWAP3
00000f3f: POP
00000f40: PUSH1 0x20
00000f42: DUP1
00000f43: DUP6
00000f44: ADD
00000f45: CALLDATALOAD
00000f46: PUSH8 0xffffffffffffffff
00000f4f: DUP1
00000f50: DUP3
00000f51: GT
00000f52: ISZERO
00000f53: PUSH2 0x0f5b
00000f56: JUMPI
00000f57: PUSH1 0x00
00000f59: DUP1
00000f5a: REVERT
00000f5b: JUMPDEST
00000f5c: PUSH2 0x0f67
00000f5f: DUP9
00000f60: DUP4
00000f61: DUP10
00000f62: ADD
00000f63: PUSH2 0x0dd8
00000f66: JUMP
00000f67: JUMPDEST
00000f68: SWAP5
00000f69: POP
00000f6a: PUSH1 0x40
00000f6c: DUP8
00000f6d: ADD
00000f6e: CALLDATALOAD
00000f6f: SWAP2
00000f70: POP
00000f71: DUP1
00000f72: DUP3
00000f73: GT
00000f74: ISZERO
00000f75: PUSH2 0x0f7d
00000f78: JUMPI
00000f79: PUSH1 0x00
00000f7b: DUP1
00000f7c: REVERT
00000f7d: JUMPDEST
00000f7e: POP
00000f7f: DUP6
00000f80: ADD
00000f81: PUSH1 0x1f
00000f83: DUP2
00000f84: ADD
00000f85: DUP8
00000f86: SGT
00000f87: PUSH2 0x0f8f
00000f8a: JUMPI
00000f8b: PUSH1 0x00
00000f8d: DUP1
00000f8e: REVERT
00000f8f: JUMPDEST
00000f90: DUP1
00000f91: CALLDATALOAD
00000f92: PUSH2 0x0f9d
00000f95: PUSH2 0x0df9
00000f98: DUP3
00000f99: PUSH2 0x0db4
00000f9c: JUMP
00000f9d: JUMPDEST
00000f9e: DUP2
00000f9f: DUP2
00000fa0: MSTORE
00000fa1: PUSH1 0x05
00000fa3: SWAP2
00000fa4: SWAP1
00000fa5: SWAP2
00000fa6: SHL
00000fa7: DUP3
00000fa8: ADD
00000fa9: DUP4
00000faa: ADD
00000fab: SWAP1
00000fac: DUP4
00000fad: DUP2
00000fae: ADD
00000faf: SWAP1
00000fb0: DUP10
00000fb1: DUP4
00000fb2: GT
00000fb3: ISZERO
00000fb4: PUSH2 0x0fbc
00000fb7: JUMPI
00000fb8: PUSH1 0x00
00000fba: DUP1
00000fbb: REVERT
00000fbc: JUMPDEST
00000fbd: SWAP3
00000fbe: DUP5
00000fbf: ADD
00000fc0: SWAP3
00000fc1: JUMPDEST
00000fc2: DUP3
00000fc3: DUP5
00000fc4: LT
00000fc5: ISZERO
00000fc6: PUSH2 0x0fda
00000fc9: JUMPI
00000fca: DUP4
00000fcb: CALLDATALOAD
00000fcc: DUP3
00000fcd: MSTORE
00000fce: SWAP3
00000fcf: DUP5
00000fd0: ADD
00000fd1: SWAP3
00000fd2: SWAP1
00000fd3: DUP5
00000fd4: ADD
00000fd5: SWAP1
00000fd6: PUSH2 0x0fc1
00000fd9: JUMP
00000fda: JUMPDEST
00000fdb: DUP1
00000fdc: SWAP6
00000fdd: POP
00000fde: POP
00000fdf: POP
00000fe0: POP
00000fe1: POP
00000fe2: POP
00000fe3: SWAP3
00000fe4: POP
00000fe5: SWAP3
00000fe6: POP
00000fe7: SWAP3
00000fe8: JUMP
00000fe9: JUMPDEST
00000fea: PUSH32 0x4e487b7100000000000000000000000000000000000000000000000000000000
0000100b: PUSH1 0x00
0000100d: MSTORE
0000100e: PUSH1 0x32
00001010: PUSH1 0x04
00001012: MSTORE
00001013: PUSH1 0x24
00001015: PUSH1 0x00
00001017: REVERT
00001018: JUMPDEST
00001019: PUSH1 0x00
0000101b: PUSH32 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
0000103c: DUP3
0000103d: SUB
0000103e: PUSH2 0x1070
00001041: JUMPI
00001042: PUSH32 0x4e487b7100000000000000000000000000000000000000000000000000000000
00001063: PUSH1 0x00
00001065: MSTORE
00001066: PUSH1 0x11
00001068: PUSH1 0x04
0000106a: MSTORE
0000106b: PUSH1 0x24
0000106d: PUSH1 0x00
0000106f: REVERT
00001070: JUMPDEST
00001071: POP
00001072: PUSH1 0x01
00001074: ADD
00001075: SWAP1
00001076: JUMP
00001077: INVALID
00001078: LOG2
00001079: PUSH5 0x6970667358
0000107f: UNKNOWN(0x22)
00001080: SLT
00001081: KECCAK256
00001082: BLOBBASEFEE
00001083: CALLER
00001084: UNKNOWN(0x4B)
00001085: UNKNOWN(0xB7)
00001086: GASPRICE
00001087: STATICCALL
00001088: PUSH32 0xe1dcc66c7b1765fb124793c3c5b654213d15d483fc45f5737164736f6c634300
000010a9: ADDMOD
000010aa: ISZERO
000010ab: STOP
000010ac: CALLER
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
critical upgradeability detector Untrusted DELEGATECALL target reachable 70 no no
view
trace_id: 0xfa6a3f6f57a723f2dcd0f73a00d6b8ac996d3821e9479ff0e49f795ee846072f
validation_json
{
    "sink": "DELEGATECALL",
    "errors": 0,
    "status": "unknown",
    "attempts": 132,
    "trace_id": "0xfa6a3f6f57a723f2dcd0f73a00d6b8ac996d3821e9479ff0e49f795ee846072f",
    "confirmed": false,
    "trace_mode": "callTracer",
    "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": "0xd9e10f45",
            "selector": "0xd9e10f45",
            "calldata_variants": [
                "0xd9e10f45",
                "0xd9e10f450000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xedbd7668",
            "selector": "0xedbd7668",
            "calldata_variants": [
                "0xedbd7668",
                "0xedbd76680000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xf2fde38b",
            "selector": "0xf2fde38b",
            "calldata_variants": [
                "0xf2fde38b",
                "0xf2fde38b0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x82bc4aaf",
            "selector": "0x82bc4aaf",
            "calldata_variants": [
                "0x82bc4aaf",
                "0x82bc4aaf0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x8da5cb5b",
            "selector": "0x8da5cb5b",
            "calldata_variants": [
                "0x8da5cb5b",
                "0x8da5cb5b0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xa734f06e",
            "selector": "0xa734f06e",
            "calldata_variants": [
                "0xa734f06e",
                "0xa734f06e0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x3f221521",
            "selector": "0x3f221521",
            "calldata_variants": [
                "0x3f221521",
                "0x3f2215210000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x4e6fd6c4",
            "selector": "0x4e6fd6c4",
            "calldata_variants": [
                "0x4e6fd6c4",
                "0x4e6fd6c40000000000000000000000000000000000000000000000000000000000000000"
            ]
        }
    ]
}
evidence_json
{
    "examples": [
        {
            "pc": 862,
            "opcode": "DELEGATECALL",
            "returndata_checked": null,
            "value_expression_category": "n/a",
            "target_expression_category": "computed"
        }
    ],
    "guards_detected": [],
    "delegatecall_count": 1,
    "untrusted_delegatecall_count": 1
}
high other detector ETH value transfer possible 55 no no
view
trace_id: 0x7c9c52c8ed05b270a53fef01519211d7b10cd9b84a4044b521afe5a6fcc0a6b5
call_targets: 0x2c3ff880e4f2841fae9592b2329f633cb2875cb2
target_varies: no
classification: constant_target
validation_json
{
    "sink": "CALL",
    "errors": 0,
    "status": "sink_reached",
    "attempts": 1,
    "trace_id": "0x7c9c52c8ed05b270a53fef01519211d7b10cd9b84a4044b521afe5a6fcc0a6b5",
    "confirmed": false,
    "trace_mode": "callTracer",
    "call_targets": [
        "0x2c3ff880e4f2841fae9592b2329f633cb2875cb2"
    ],
    "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": "0xd9e10f45",
            "selector": "0xd9e10f45",
            "calldata_variants": [
                "0xd9e10f45",
                "0xd9e10f450000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xedbd7668",
            "selector": "0xedbd7668",
            "calldata_variants": [
                "0xedbd7668",
                "0xedbd76680000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xf2fde38b",
            "selector": "0xf2fde38b",
            "calldata_variants": [
                "0xf2fde38b",
                "0xf2fde38b0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x82bc4aaf",
            "selector": "0x82bc4aaf",
            "calldata_variants": [
                "0x82bc4aaf",
                "0x82bc4aaf0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x8da5cb5b",
            "selector": "0x8da5cb5b",
            "calldata_variants": [
                "0x8da5cb5b",
                "0x8da5cb5b0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xa734f06e",
            "selector": "0xa734f06e",
            "calldata_variants": [
                "0xa734f06e",
                "0xa734f06e0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x3f221521",
            "selector": "0x3f221521",
            "calldata_variants": [
                "0x3f221521",
                "0x3f2215210000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x4e6fd6c4",
            "selector": "0x4e6fd6c4",
            "calldata_variants": [
                "0x4e6fd6c4",
                "0x4e6fd6c40000000000000000000000000000000000000000000000000000000000000000"
            ]
        }
    ]
}
evidence_json
{
    "examples": [
        {
            "pc": 2801,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        },
        {
            "pc": 2949,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        }
    ],
    "eth_value_calls": 2,
    "guards_detected": []
}
high other detector Untrusted CALL target/value reachable 60 no no
view
trace_id: 0x7c9c52c8ed05b270a53fef01519211d7b10cd9b84a4044b521afe5a6fcc0a6b5
call_targets: 0x2c3ff880e4f2841fae9592b2329f633cb2875cb2
target_varies: no
classification: constant_target
validation_json
{
    "sink": "CALL",
    "errors": 0,
    "status": "sink_reached",
    "attempts": 1,
    "trace_id": "0x7c9c52c8ed05b270a53fef01519211d7b10cd9b84a4044b521afe5a6fcc0a6b5",
    "confirmed": false,
    "trace_mode": "callTracer",
    "call_targets": [
        "0x2c3ff880e4f2841fae9592b2329f633cb2875cb2"
    ],
    "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": "0xd9e10f45",
            "selector": "0xd9e10f45",
            "calldata_variants": [
                "0xd9e10f45",
                "0xd9e10f450000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xedbd7668",
            "selector": "0xedbd7668",
            "calldata_variants": [
                "0xedbd7668",
                "0xedbd76680000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xf2fde38b",
            "selector": "0xf2fde38b",
            "calldata_variants": [
                "0xf2fde38b",
                "0xf2fde38b0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x82bc4aaf",
            "selector": "0x82bc4aaf",
            "calldata_variants": [
                "0x82bc4aaf",
                "0x82bc4aaf0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x8da5cb5b",
            "selector": "0x8da5cb5b",
            "calldata_variants": [
                "0x8da5cb5b",
                "0x8da5cb5b0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xa734f06e",
            "selector": "0xa734f06e",
            "calldata_variants": [
                "0xa734f06e",
                "0xa734f06e0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x3f221521",
            "selector": "0x3f221521",
            "calldata_variants": [
                "0x3f221521",
                "0x3f2215210000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x4e6fd6c4",
            "selector": "0x4e6fd6c4",
            "calldata_variants": [
                "0x4e6fd6c4",
                "0x4e6fd6c40000000000000000000000000000000000000000000000000000000000000000"
            ]
        }
    ]
}
evidence_json
{
    "examples": [
        {
            "pc": 2801,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        },
        {
            "pc": 2949,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        }
    ],
    "call_count": 2,
    "guards_detected": [],
    "untrusted_call_count": 2
}