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

Analysis Run

019b3844-9076-70eb-8c30-b975e74a99e9

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

What survived the funnel

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

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

Processing Jobs

Status & attempts
ID Type Status Attempts Heartbeat
12607 artifact.fetch complete 1 / 3 4 months ago
12608 tool.cast_disasm complete 1 / 3 4 months ago
55828 analysis.bundle complete 1 / 3 2 weeks ago
55829 capability.graph complete 1 / 3 2 weeks ago
55830 detector.run complete 1 / 3 2 weeks ago
55831 validation.fork complete 1 / 3 2 weeks ago

Artifact

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

Slither

tool.slither

No slither job recorded yet.

Codex

report.consolidate

No codex job recorded yet.

Opcode Heuristics

tool.cast_disasm
Delegatecall
0
Selfdestruct
1
CREATE2
2
CALL-family (heavy)
9
EXT*/BALANCE
9
Total opcodes
2429
Flags
selfdestruct_present create_opcodes_present heavy_ext_balance_usage
View cast disassembly output
00000000: PUSH1 0x80
00000002: PUSH1 0x40
00000004: MSTORE
00000005: PUSH1 0x04
00000007: CALLDATASIZE
00000008: LT
00000009: PUSH2 0x00c4
0000000c: JUMPI
0000000d: PUSH4 0xffffffff
00000012: PUSH29 0x0100000000000000000000000000000000000000000000000000000000
00000030: PUSH1 0x00
00000032: CALLDATALOAD
00000033: DIV
00000034: AND
00000035: PUSH4 0x06fdde03
0000003a: DUP2
0000003b: EQ
0000003c: PUSH2 0x0106
0000003f: JUMPI
00000040: DUP1
00000041: PUSH4 0x095ea7b3
00000046: EQ
00000047: PUSH2 0x0190
0000004a: JUMPI
0000004b: DUP1
0000004c: PUSH4 0x18160ddd
00000051: EQ
00000052: PUSH2 0x01b4
00000055: JUMPI
00000056: DUP1
00000057: PUSH4 0x23b872dd
0000005c: EQ
0000005d: PUSH2 0x01db
00000060: JUMPI
00000061: DUP1
00000062: PUSH4 0x313ce567
00000067: EQ
00000068: PUSH2 0x0219
0000006b: JUMPI
0000006c: DUP1
0000006d: PUSH4 0x70a08231
00000072: EQ
00000073: PUSH2 0x0244
00000076: JUMPI
00000077: DUP1
00000078: PUSH4 0x8da5cb5b
0000007d: EQ
0000007e: PUSH2 0x0265
00000081: JUMPI
00000082: DUP1
00000083: PUSH4 0x95d89b41
00000088: EQ
00000089: PUSH2 0x0296
0000008c: JUMPI
0000008d: DUP1
0000008e: PUSH4 0x9dfde201
00000093: EQ
00000094: PUSH2 0x02ab
00000097: JUMPI
00000098: DUP1
00000099: PUSH4 0xa6f9dae1
0000009e: EQ
0000009f: PUSH2 0x02c0
000000a2: JUMPI
000000a3: DUP1
000000a4: PUSH4 0xa9059cbb
000000a9: EQ
000000aa: PUSH2 0x02e1
000000ad: JUMPI
000000ae: DUP1
000000af: PUSH4 0xbd9b6d86
000000b4: EQ
000000b5: PUSH2 0x0305
000000b8: JUMPI
000000b9: DUP1
000000ba: PUSH4 0xdd62ed3e
000000bf: EQ
000000c0: PUSH2 0x031a
000000c3: JUMPI
000000c4: JUMPDEST
000000c5: PUSH1 0x00
000000c7: CALLVALUE
000000c8: GT
000000c9: PUSH2 0x00d1
000000cc: JUMPI
000000cd: PUSH1 0x00
000000cf: DUP1
000000d0: REVERT
000000d1: JUMPDEST
000000d2: PUSH7 0x2386f26fc10000
000000da: CALLVALUE
000000db: LT
000000dc: ISZERO
000000dd: PUSH2 0x00e5
000000e0: JUMPI
000000e1: PUSH1 0x00
000000e3: DUP1
000000e4: REVERT
000000e5: JUMPDEST
000000e6: PUSH8 0x8ac7230489e80000
000000ef: CALLVALUE
000000f0: GT
000000f1: ISZERO
000000f2: PUSH2 0x00fa
000000f5: JUMPI
000000f6: PUSH1 0x00
000000f8: DUP1
000000f9: REVERT
000000fa: JUMPDEST
000000fb: PUSH2 0x0104
000000fe: CALLER
000000ff: CALLVALUE
00000100: PUSH2 0x0341
00000103: JUMP
00000104: JUMPDEST
00000105: STOP
00000106: JUMPDEST
00000107: CALLVALUE
00000108: DUP1
00000109: ISZERO
0000010a: PUSH2 0x0112
0000010d: JUMPI
0000010e: PUSH1 0x00
00000110: DUP1
00000111: REVERT
00000112: JUMPDEST
00000113: POP
00000114: PUSH2 0x011b
00000117: PUSH2 0x0534
0000011a: JUMP
0000011b: JUMPDEST
0000011c: PUSH1 0x40
0000011e: DUP1
0000011f: MLOAD
00000120: PUSH1 0x20
00000122: DUP1
00000123: DUP3
00000124: MSTORE
00000125: DUP4
00000126: MLOAD
00000127: DUP2
00000128: DUP4
00000129: ADD
0000012a: MSTORE
0000012b: DUP4
0000012c: MLOAD
0000012d: SWAP2
0000012e: SWAP3
0000012f: DUP4
00000130: SWAP3
00000131: SWAP1
00000132: DUP4
00000133: ADD
00000134: SWAP2
00000135: DUP6
00000136: ADD
00000137: SWAP1
00000138: DUP1
00000139: DUP4
0000013a: DUP4
0000013b: PUSH1 0x00
0000013d: JUMPDEST
0000013e: DUP4
0000013f: DUP2
00000140: LT
00000141: ISZERO
00000142: PUSH2 0x0155
00000145: JUMPI
00000146: DUP2
00000147: DUP2
00000148: ADD
00000149: MLOAD
0000014a: DUP4
0000014b: DUP3
0000014c: ADD
0000014d: MSTORE
0000014e: PUSH1 0x20
00000150: ADD
00000151: PUSH2 0x013d
00000154: JUMP
00000155: JUMPDEST
00000156: POP
00000157: POP
00000158: POP
00000159: POP
0000015a: SWAP1
0000015b: POP
0000015c: SWAP1
0000015d: DUP2
0000015e: ADD
0000015f: SWAP1
00000160: PUSH1 0x1f
00000162: AND
00000163: DUP1
00000164: ISZERO
00000165: PUSH2 0x0182
00000168: JUMPI
00000169: DUP1
0000016a: DUP3
0000016b: SUB
0000016c: DUP1
0000016d: MLOAD
0000016e: PUSH1 0x01
00000170: DUP4
00000171: PUSH1 0x20
00000173: SUB
00000174: PUSH2 0x0100
00000177: EXP
00000178: SUB
00000179: NOT
0000017a: AND
0000017b: DUP2
0000017c: MSTORE
0000017d: PUSH1 0x20
0000017f: ADD
00000180: SWAP2
00000181: POP
00000182: JUMPDEST
00000183: POP
00000184: SWAP3
00000185: POP
00000186: POP
00000187: POP
00000188: PUSH1 0x40
0000018a: MLOAD
0000018b: DUP1
0000018c: SWAP2
0000018d: SUB
0000018e: SWAP1
0000018f: RETURN
00000190: JUMPDEST
00000191: CALLVALUE
00000192: DUP1
00000193: ISZERO
00000194: PUSH2 0x019c
00000197: JUMPI
00000198: PUSH1 0x00
0000019a: DUP1
0000019b: REVERT
0000019c: JUMPDEST
0000019d: POP
0000019e: PUSH2 0x0104
000001a1: PUSH1 0x01
000001a3: PUSH1 0xa0
000001a5: PUSH1 0x02
000001a7: EXP
000001a8: SUB
000001a9: PUSH1 0x04
000001ab: CALLDATALOAD
000001ac: AND
000001ad: PUSH1 0x24
000001af: CALLDATALOAD
000001b0: PUSH2 0x056b
000001b3: JUMP
000001b4: JUMPDEST
000001b5: CALLVALUE
000001b6: DUP1
000001b7: ISZERO
000001b8: PUSH2 0x01c0
000001bb: JUMPI
000001bc: PUSH1 0x00
000001be: DUP1
000001bf: REVERT
000001c0: JUMPDEST
000001c1: POP
000001c2: PUSH2 0x01c9
000001c5: PUSH2 0x05cd
000001c8: JUMP
000001c9: JUMPDEST
000001ca: PUSH1 0x40
000001cc: DUP1
000001cd: MLOAD
000001ce: SWAP2
000001cf: DUP3
000001d0: MSTORE
000001d1: MLOAD
000001d2: SWAP1
000001d3: DUP2
000001d4: SWAP1
000001d5: SUB
000001d6: PUSH1 0x20
000001d8: ADD
000001d9: SWAP1
000001da: RETURN
000001db: JUMPDEST
000001dc: CALLVALUE
000001dd: DUP1
000001de: ISZERO
000001df: PUSH2 0x01e7
000001e2: JUMPI
000001e3: PUSH1 0x00
000001e5: DUP1
000001e6: REVERT
000001e7: JUMPDEST
000001e8: POP
000001e9: PUSH2 0x0205
000001ec: PUSH1 0x01
000001ee: PUSH1 0xa0
000001f0: PUSH1 0x02
000001f2: EXP
000001f3: SUB
000001f4: PUSH1 0x04
000001f6: CALLDATALOAD
000001f7: DUP2
000001f8: AND
000001f9: SWAP1
000001fa: PUSH1 0x24
000001fc: CALLDATALOAD
000001fd: AND
000001fe: PUSH1 0x44
00000200: CALLDATALOAD
00000201: PUSH2 0x05d3
00000204: JUMP
00000205: JUMPDEST
00000206: PUSH1 0x40
00000208: DUP1
00000209: MLOAD
0000020a: SWAP2
0000020b: ISZERO
0000020c: ISZERO
0000020d: DUP3
0000020e: MSTORE
0000020f: MLOAD
00000210: SWAP1
00000211: DUP2
00000212: SWAP1
00000213: SUB
00000214: PUSH1 0x20
00000216: ADD
00000217: SWAP1
00000218: RETURN
00000219: JUMPDEST
0000021a: CALLVALUE
0000021b: DUP1
0000021c: ISZERO
0000021d: PUSH2 0x0225
00000220: JUMPI
00000221: PUSH1 0x00
00000223: DUP1
00000224: REVERT
00000225: JUMPDEST
00000226: POP
00000227: PUSH2 0x022e
0000022a: PUSH2 0x091d
0000022d: JUMP
0000022e: JUMPDEST
0000022f: PUSH1 0x40
00000231: DUP1
00000232: MLOAD
00000233: PUSH1 0xff
00000235: SWAP1
00000236: SWAP3
00000237: AND
00000238: DUP3
00000239: MSTORE
0000023a: MLOAD
0000023b: SWAP1
0000023c: DUP2
0000023d: SWAP1
0000023e: SUB
0000023f: PUSH1 0x20
00000241: ADD
00000242: SWAP1
00000243: RETURN
00000244: JUMPDEST
00000245: CALLVALUE
00000246: DUP1
00000247: ISZERO
00000248: PUSH2 0x0250
0000024b: JUMPI
0000024c: PUSH1 0x00
0000024e: DUP1
0000024f: REVERT
00000250: JUMPDEST
00000251: POP
00000252: PUSH2 0x01c9
00000255: PUSH1 0x01
00000257: PUSH1 0xa0
00000259: PUSH1 0x02
0000025b: EXP
0000025c: SUB
0000025d: PUSH1 0x04
0000025f: CALLDATALOAD
00000260: AND
00000261: PUSH2 0x0922
00000264: JUMP
00000265: JUMPDEST
00000266: CALLVALUE
00000267: DUP1
00000268: ISZERO
00000269: PUSH2 0x0271
0000026c: JUMPI
0000026d: PUSH1 0x00
0000026f: DUP1
00000270: REVERT
00000271: JUMPDEST
00000272: POP
00000273: PUSH2 0x027a
00000276: PUSH2 0x093d
00000279: JUMP
0000027a: JUMPDEST
0000027b: PUSH1 0x40
0000027d: DUP1
0000027e: MLOAD
0000027f: PUSH1 0x01
00000281: PUSH1 0xa0
00000283: PUSH1 0x02
00000285: EXP
00000286: SUB
00000287: SWAP1
00000288: SWAP3
00000289: AND
0000028a: DUP3
0000028b: MSTORE
0000028c: MLOAD
0000028d: SWAP1
0000028e: DUP2
0000028f: SWAP1
00000290: SUB
00000291: PUSH1 0x20
00000293: ADD
00000294: SWAP1
00000295: RETURN
00000296: JUMPDEST
00000297: CALLVALUE
00000298: DUP1
00000299: ISZERO
0000029a: PUSH2 0x02a2
0000029d: JUMPI
0000029e: PUSH1 0x00
000002a0: DUP1
000002a1: REVERT
000002a2: JUMPDEST
000002a3: POP
000002a4: PUSH2 0x011b
000002a7: PUSH2 0x094c
000002aa: JUMP
000002ab: JUMPDEST
000002ac: CALLVALUE
000002ad: DUP1
000002ae: ISZERO
000002af: PUSH2 0x02b7
000002b2: JUMPI
000002b3: PUSH1 0x00
000002b5: DUP1
000002b6: REVERT
000002b7: JUMPDEST
000002b8: POP
000002b9: PUSH2 0x01c9
000002bc: PUSH2 0x0983
000002bf: JUMP
000002c0: JUMPDEST
000002c1: CALLVALUE
000002c2: DUP1
000002c3: ISZERO
000002c4: PUSH2 0x02cc
000002c7: JUMPI
000002c8: PUSH1 0x00
000002ca: DUP1
000002cb: REVERT
000002cc: JUMPDEST
000002cd: POP
000002ce: PUSH2 0x0104
000002d1: PUSH1 0x01
000002d3: PUSH1 0xa0
000002d5: PUSH1 0x02
000002d7: EXP
000002d8: SUB
000002d9: PUSH1 0x04
000002db: CALLDATALOAD
000002dc: AND
000002dd: PUSH2 0x0989
000002e0: JUMP
000002e1: JUMPDEST
000002e2: CALLVALUE
000002e3: DUP1
000002e4: ISZERO
000002e5: PUSH2 0x02ed
000002e8: JUMPI
000002e9: PUSH1 0x00
000002eb: DUP1
000002ec: REVERT
000002ed: JUMPDEST
000002ee: POP
000002ef: PUSH2 0x0205
000002f2: PUSH1 0x01
000002f4: PUSH1 0xa0
000002f6: PUSH1 0x02
000002f8: EXP
000002f9: SUB
000002fa: PUSH1 0x04
000002fc: CALLDATALOAD
000002fd: AND
000002fe: PUSH1 0x24
00000300: CALLDATALOAD
00000301: PUSH2 0x09e4
00000304: JUMP
00000305: JUMPDEST
00000306: CALLVALUE
00000307: DUP1
00000308: ISZERO
00000309: PUSH2 0x0311
0000030c: JUMPI
0000030d: PUSH1 0x00
0000030f: DUP1
00000310: REVERT
00000311: JUMPDEST
00000312: POP
00000313: PUSH2 0x0104
00000316: PUSH2 0x0c6a
00000319: JUMP
0000031a: JUMPDEST
0000031b: CALLVALUE
0000031c: DUP1
0000031d: ISZERO
0000031e: PUSH2 0x0326
00000321: JUMPI
00000322: PUSH1 0x00
00000324: DUP1
00000325: REVERT
00000326: JUMPDEST
00000327: POP
00000328: PUSH2 0x01c9
0000032b: PUSH1 0x01
0000032d: PUSH1 0xa0
0000032f: PUSH1 0x02
00000331: EXP
00000332: SUB
00000333: PUSH1 0x04
00000335: CALLDATALOAD
00000336: DUP2
00000337: AND
00000338: SWAP1
00000339: PUSH1 0x24
0000033b: CALLDATALOAD
0000033c: AND
0000033d: PUSH2 0x0cb5
00000340: JUMP
00000341: JUMPDEST
00000342: PUSH1 0x00
00000344: DUP1
00000345: PUSH1 0x00
00000347: PUSH1 0x08
00000349: PUSH1 0x06
0000034b: SLOAD
0000034c: PUSH1 0x0a
0000034e: MUL
0000034f: DUP2
00000350: ISZERO
00000351: ISZERO
00000352: PUSH2 0x0357
00000355: JUMPI
00000356: INVALID
00000357: JUMPDEST
00000358: DIV
00000359: DUP5
0000035a: DUP2
0000035b: ISZERO
0000035c: ISZERO
0000035d: PUSH2 0x0362
00000360: JUMPI
00000361: INVALID
00000362: JUMPDEST
00000363: DIV
00000364: SWAP3
00000365: POP
00000366: PUSH1 0x00
00000368: DUP4
00000369: GT
0000036a: PUSH2 0x0372
0000036d: JUMPI
0000036e: PUSH1 0x00
00000370: DUP1
00000371: REVERT
00000372: JUMPDEST
00000373: PUSH1 0x01
00000375: PUSH1 0xa0
00000377: PUSH1 0x02
00000379: EXP
0000037a: SUB
0000037b: DUP6
0000037c: AND
0000037d: PUSH1 0x00
0000037f: SWAP1
00000380: DUP2
00000381: MSTORE
00000382: PUSH1 0x04
00000384: PUSH1 0x20
00000386: MSTORE
00000387: PUSH1 0x40
00000389: SWAP1
0000038a: KECCAK256
0000038b: SLOAD
0000038c: DUP4
0000038d: DUP2
0000038e: ADD
0000038f: GT
00000390: PUSH2 0x0398
00000393: JUMPI
00000394: PUSH1 0x00
00000396: DUP1
00000397: REVERT
00000398: JUMPDEST
00000399: PUSH1 0x02
0000039b: DUP1
0000039c: SLOAD
0000039d: DUP5
0000039e: ADD
0000039f: SWAP1
000003a0: SSTORE
000003a1: PUSH1 0x01
000003a3: PUSH1 0xa0
000003a5: PUSH1 0x02
000003a7: EXP
000003a8: SUB
000003a9: DUP6
000003aa: AND
000003ab: PUSH1 0x00
000003ad: SWAP1
000003ae: DUP2
000003af: MSTORE
000003b0: PUSH1 0x04
000003b2: PUSH1 0x20
000003b4: MSTORE
000003b5: PUSH1 0x40
000003b7: SWAP1
000003b8: KECCAK256
000003b9: DUP1
000003ba: SLOAD
000003bb: DUP5
000003bc: ADD
000003bd: SWAP1
000003be: SSTORE
000003bf: PUSH2 0x03cf
000003c2: DUP5
000003c3: PUSH1 0x64
000003c5: PUSH4 0xffffffff
000003ca: PUSH2 0x0ce0
000003cd: AND
000003ce: JUMP
000003cf: JUMPDEST
000003d0: SWAP2
000003d1: POP
000003d2: PUSH2 0x03e2
000003d5: DUP3
000003d6: PUSH1 0x55
000003d8: PUSH4 0xffffffff
000003dd: PUSH2 0x0cfc
000003e0: AND
000003e1: JUMP
000003e2: JUMPDEST
000003e3: PUSH1 0x05
000003e5: DUP1
000003e6: SLOAD
000003e7: SWAP1
000003e8: SWAP2
000003e9: ADD
000003ea: SWAP1
000003eb: DUP2
000003ec: SWAP1
000003ed: SSTORE
000003ee: PUSH1 0x02
000003f0: SLOAD
000003f1: PUSH2 0x0400
000003f4: SWAP2
000003f5: SWAP1
000003f6: PUSH4 0xffffffff
000003fb: PUSH2 0x0ce0
000003fe: AND
000003ff: JUMP
00000400: JUMPDEST
00000401: PUSH1 0x06
00000403: DUP2
00000404: SWAP1
00000405: SSTORE
00000406: PUSH1 0x08
00000408: SWAP1
00000409: PUSH1 0x0a
0000040b: MUL
0000040c: DIV
0000040d: DUP5
0000040e: DUP2
0000040f: ISZERO
00000410: ISZERO
00000411: PUSH2 0x0416
00000414: JUMPI
00000415: INVALID
00000416: JUMPDEST
00000417: MOD
00000418: SWAP1
00000419: POP
0000041a: PUSH1 0x00
0000041c: DUP2
0000041d: GT
0000041e: PUSH2 0x0426
00000421: JUMPI
00000422: PUSH1 0x00
00000424: DUP1
00000425: REVERT
00000426: JUMPDEST
00000427: PUSH1 0x40
00000429: DUP1
0000042a: MLOAD
0000042b: DUP5
0000042c: DUP2
0000042d: MSTORE
0000042e: SWAP1
0000042f: MLOAD
00000430: PUSH1 0x01
00000432: PUSH1 0xa0
00000434: PUSH1 0x02
00000436: EXP
00000437: SUB
00000438: DUP8
00000439: AND
0000043a: SWAP2
0000043b: ADDRESS
0000043c: SWAP2
0000043d: PUSH1 0x00
0000043f: DUP1
00000440: MLOAD
00000441: PUSH1 0x20
00000443: PUSH2 0x0d2f
00000446: DUP4
00000447: CODECOPY
00000448: DUP2
00000449: MLOAD
0000044a: SWAP2
0000044b: MSTORE
0000044c: SWAP2
0000044d: DUP2
0000044e: SWAP1
0000044f: SUB
00000450: PUSH1 0x20
00000452: ADD
00000453: SWAP1
00000454: LOG3
00000455: PUSH1 0x00
00000457: DUP1
00000458: SLOAD
00000459: SWAP1
0000045a: SWAP5
0000045b: POP
0000045c: DUP5
0000045d: SWAP4
0000045e: POP
0000045f: PUSH1 0x01
00000461: PUSH1 0xa0
00000463: PUSH1 0x02
00000465: EXP
00000466: SUB
00000467: AND
00000468: PUSH2 0x08fc
0000046b: PUSH2 0x047b
0000046e: DUP5
0000046f: PUSH1 0x05
00000471: PUSH4 0xffffffff
00000476: PUSH2 0x0cfc
00000479: AND
0000047a: JUMP
0000047b: JUMPDEST
0000047c: PUSH1 0x40
0000047e: MLOAD
0000047f: DUP2
00000480: ISZERO
00000481: SWAP1
00000482: SWAP3
00000483: MUL
00000484: SWAP2
00000485: PUSH1 0x00
00000487: DUP2
00000488: DUP2
00000489: DUP2
0000048a: DUP6
0000048b: DUP9
0000048c: DUP9
0000048d: CALL
0000048e: SWAP4
0000048f: POP
00000490: POP
00000491: POP
00000492: POP
00000493: ISZERO
00000494: DUP1
00000495: ISZERO
00000496: PUSH2 0x04a3
00000499: JUMPI
0000049a: RETURNDATASIZE
0000049b: PUSH1 0x00
0000049d: DUP1
0000049e: RETURNDATACOPY
0000049f: RETURNDATASIZE
000004a0: PUSH1 0x00
000004a2: REVERT
000004a3: JUMPDEST
000004a4: POP
000004a5: PUSH20 0xb453aa2cdc2f9241d2c451053da8268b34b4227f
000004ba: PUSH2 0x08fc
000004bd: PUSH2 0x04cd
000004c0: DUP5
000004c1: PUSH1 0x05
000004c3: PUSH4 0xffffffff
000004c8: PUSH2 0x0cfc
000004cb: AND
000004cc: JUMP
000004cd: JUMPDEST
000004ce: PUSH1 0x40
000004d0: MLOAD
000004d1: DUP2
000004d2: ISZERO
000004d3: SWAP1
000004d4: SWAP3
000004d5: MUL
000004d6: SWAP2
000004d7: PUSH1 0x00
000004d9: DUP2
000004da: DUP2
000004db: DUP2
000004dc: DUP6
000004dd: DUP9
000004de: DUP9
000004df: CALL
000004e0: SWAP4
000004e1: POP
000004e2: POP
000004e3: POP
000004e4: POP
000004e5: ISZERO
000004e6: DUP1
000004e7: ISZERO
000004e8: PUSH2 0x04f5
000004eb: JUMPI
000004ec: RETURNDATASIZE
000004ed: PUSH1 0x00
000004ef: DUP1
000004f0: RETURNDATACOPY
000004f1: RETURNDATASIZE
000004f2: PUSH1 0x00
000004f4: REVERT
000004f5: JUMPDEST
000004f6: POP
000004f7: PUSH1 0x40
000004f9: MLOAD
000004fa: PUSH1 0x01
000004fc: PUSH1 0xa0
000004fe: PUSH1 0x02
00000500: EXP
00000501: SUB
00000502: DUP7
00000503: AND
00000504: SWAP1
00000505: DUP3
00000506: ISZERO
00000507: PUSH2 0x08fc
0000050a: MUL
0000050b: SWAP1
0000050c: DUP4
0000050d: SWAP1
0000050e: PUSH1 0x00
00000510: DUP2
00000511: DUP2
00000512: DUP2
00000513: DUP6
00000514: DUP9
00000515: DUP9
00000516: CALL
00000517: SWAP4
00000518: POP
00000519: POP
0000051a: POP
0000051b: POP
0000051c: ISZERO
0000051d: DUP1
0000051e: ISZERO
0000051f: PUSH2 0x052c
00000522: JUMPI
00000523: RETURNDATASIZE
00000524: PUSH1 0x00
00000526: DUP1
00000527: RETURNDATACOPY
00000528: RETURNDATASIZE
00000529: PUSH1 0x00
0000052b: REVERT
0000052c: JUMPDEST
0000052d: POP
0000052e: POP
0000052f: POP
00000530: POP
00000531: POP
00000532: POP
00000533: JUMP
00000534: JUMPDEST
00000535: PUSH1 0x40
00000537: DUP1
00000538: MLOAD
00000539: DUP1
0000053a: DUP3
0000053b: ADD
0000053c: SWAP1
0000053d: SWAP2
0000053e: MSTORE
0000053f: PUSH1 0x0f
00000541: DUP2
00000542: MSTORE
00000543: PUSH32 0x4e455854204c4556454c20434c55420000000000000000000000000000000000
00000564: PUSH1 0x20
00000566: DUP3
00000567: ADD
00000568: MSTORE
00000569: DUP2
0000056a: JUMP
0000056b: JUMPDEST
0000056c: CALLER
0000056d: PUSH1 0x00
0000056f: DUP2
00000570: DUP2
00000571: MSTORE
00000572: PUSH1 0x03
00000574: PUSH1 0x20
00000576: SWAP1
00000577: DUP2
00000578: MSTORE
00000579: PUSH1 0x40
0000057b: DUP1
0000057c: DUP4
0000057d: KECCAK256
0000057e: PUSH1 0x01
00000580: PUSH1 0xa0
00000582: PUSH1 0x02
00000584: EXP
00000585: SUB
00000586: DUP8
00000587: AND
00000588: DUP1
00000589: DUP6
0000058a: MSTORE
0000058b: SWAP1
0000058c: DUP4
0000058d: MSTORE
0000058e: SWAP3
0000058f: DUP2
00000590: SWAP1
00000591: KECCAK256
00000592: DUP6
00000593: SWAP1
00000594: SSTORE
00000595: DUP1
00000596: MLOAD
00000597: DUP6
00000598: DUP2
00000599: MSTORE
0000059a: SWAP1
0000059b: MLOAD
0000059c: SWAP3
0000059d: SWAP4
0000059e: SWAP3
0000059f: PUSH32 0x8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925
000005c0: SWAP3
000005c1: SWAP2
000005c2: DUP2
000005c3: SWAP1
000005c4: SUB
000005c5: SWAP1
000005c6: SWAP2
000005c7: ADD
000005c8: SWAP1
000005c9: LOG3
000005ca: POP
000005cb: POP
000005cc: JUMP
000005cd: JUMPDEST
000005ce: PUSH1 0x02
000005d0: SLOAD
000005d1: DUP2
000005d2: JUMP
000005d3: JUMPDEST
000005d4: PUSH1 0x00
000005d6: DUP1
000005d7: DUP1
000005d8: PUSH1 0x60
000005da: PUSH1 0x64
000005dc: CALLDATASIZE
000005dd: LT
000005de: ISZERO
000005df: PUSH2 0x05e7
000005e2: JUMPI
000005e3: PUSH1 0x00
000005e5: DUP1
000005e6: REVERT
000005e7: JUMPDEST
000005e8: PUSH1 0x01
000005ea: PUSH1 0xa0
000005ec: PUSH1 0x02
000005ee: EXP
000005ef: SUB
000005f0: DUP8
000005f1: AND
000005f2: PUSH1 0x00
000005f4: SWAP1
000005f5: DUP2
000005f6: MSTORE
000005f7: PUSH1 0x04
000005f9: PUSH1 0x20
000005fb: MSTORE
000005fc: PUSH1 0x40
000005fe: SWAP1
000005ff: KECCAK256
00000600: SLOAD
00000601: DUP6
00000602: GT
00000603: ISZERO
00000604: PUSH2 0x060c
00000607: JUMPI
00000608: PUSH1 0x00
0000060a: DUP1
0000060b: REVERT
0000060c: JUMPDEST
0000060d: PUSH1 0x01
0000060f: PUSH1 0xa0
00000611: PUSH1 0x02
00000613: EXP
00000614: SUB
00000615: DUP8
00000616: AND
00000617: PUSH1 0x00
00000619: SWAP1
0000061a: DUP2
0000061b: MSTORE
0000061c: PUSH1 0x03
0000061e: PUSH1 0x20
00000620: SWAP1
00000621: DUP2
00000622: MSTORE
00000623: PUSH1 0x40
00000625: DUP1
00000626: DUP4
00000627: KECCAK256
00000628: CALLER
00000629: DUP5
0000062a: MSTORE
0000062b: SWAP1
0000062c: SWAP2
0000062d: MSTORE
0000062e: SWAP1
0000062f: KECCAK256
00000630: SLOAD
00000631: DUP6
00000632: GT
00000633: ISZERO
00000634: PUSH2 0x063c
00000637: JUMPI
00000638: PUSH1 0x00
0000063a: DUP1
0000063b: REVERT
0000063c: JUMPDEST
0000063d: PUSH1 0x01
0000063f: PUSH1 0xa0
00000641: PUSH1 0x02
00000643: EXP
00000644: SUB
00000645: DUP7
00000646: AND
00000647: ADDRESS
00000648: EQ
00000649: PUSH2 0x06e6
0000064c: JUMPI
0000064d: PUSH1 0x01
0000064f: PUSH1 0xa0
00000651: PUSH1 0x02
00000653: EXP
00000654: SUB
00000655: DUP7
00000656: AND
00000657: PUSH1 0x00
00000659: SWAP1
0000065a: DUP2
0000065b: MSTORE
0000065c: PUSH1 0x04
0000065e: PUSH1 0x20
00000660: MSTORE
00000661: PUSH1 0x40
00000663: SWAP1
00000664: KECCAK256
00000665: SLOAD
00000666: DUP6
00000667: DUP2
00000668: ADD
00000669: LT
0000066a: ISZERO
0000066b: PUSH2 0x0673
0000066e: JUMPI
0000066f: PUSH1 0x00
00000671: DUP1
00000672: REVERT
00000673: JUMPDEST
00000674: PUSH1 0x01
00000676: PUSH1 0xa0
00000678: PUSH1 0x02
0000067a: EXP
0000067b: SUB
0000067c: DUP1
0000067d: DUP9
0000067e: AND
0000067f: PUSH1 0x00
00000681: DUP2
00000682: DUP2
00000683: MSTORE
00000684: PUSH1 0x04
00000686: PUSH1 0x20
00000688: SWAP1
00000689: DUP2
0000068a: MSTORE
0000068b: PUSH1 0x40
0000068d: DUP1
0000068e: DUP4
0000068f: KECCAK256
00000690: DUP1
00000691: SLOAD
00000692: DUP12
00000693: SWAP1
00000694: SUB
00000695: SWAP1
00000696: SSTORE
00000697: SWAP4
00000698: DUP11
00000699: AND
0000069a: DUP1
0000069b: DUP4
0000069c: MSTORE
0000069d: DUP5
0000069e: DUP4
0000069f: KECCAK256
000006a0: DUP1
000006a1: SLOAD
000006a2: DUP12
000006a3: ADD
000006a4: SWAP1
000006a5: SSTORE
000006a6: DUP4
000006a7: DUP4
000006a8: MSTORE
000006a9: PUSH1 0x03
000006ab: DUP3
000006ac: MSTORE
000006ad: DUP5
000006ae: DUP4
000006af: KECCAK256
000006b0: CALLER
000006b1: DUP5
000006b2: MSTORE
000006b3: DUP3
000006b4: MSTORE
000006b5: SWAP2
000006b6: DUP5
000006b7: SWAP1
000006b8: KECCAK256
000006b9: DUP1
000006ba: SLOAD
000006bb: DUP11
000006bc: SWAP1
000006bd: SUB
000006be: SWAP1
000006bf: SSTORE
000006c0: DUP4
000006c1: MLOAD
000006c2: DUP10
000006c3: DUP2
000006c4: MSTORE
000006c5: SWAP4
000006c6: MLOAD
000006c7: SWAP2
000006c8: SWAP4
000006c9: PUSH1 0x00
000006cb: DUP1
000006cc: MLOAD
000006cd: PUSH1 0x20
000006cf: PUSH2 0x0d2f
000006d2: DUP4
000006d3: CODECOPY
000006d4: DUP2
000006d5: MLOAD
000006d6: SWAP2
000006d7: MSTORE
000006d8: SWAP3
000006d9: SWAP1
000006da: DUP2
000006db: SWAP1
000006dc: SUB
000006dd: SWAP1
000006de: SWAP2
000006df: ADD
000006e0: SWAP1
000006e1: LOG3
000006e2: PUSH2 0x0910
000006e5: JUMP
000006e6: JUMPDEST
000006e7: PUSH1 0x01
000006e9: PUSH1 0xa0
000006eb: PUSH1 0x02
000006ed: EXP
000006ee: SUB
000006ef: DUP8
000006f0: AND
000006f1: PUSH1 0x00
000006f3: SWAP1
000006f4: DUP2
000006f5: MSTORE
000006f6: PUSH1 0x04
000006f8: PUSH1 0x20
000006fa: MSTORE
000006fb: PUSH1 0x40
000006fd: SWAP1
000006fe: KECCAK256
000006ff: DUP1
00000700: SLOAD
00000701: DUP7
00000702: SWAP1
00000703: SUB
00000704: SWAP1
00000705: SSTORE
00000706: PUSH1 0x06
00000708: SLOAD
00000709: PUSH2 0x0719
0000070c: SWAP1
0000070d: DUP7
0000070e: SWAP1
0000070f: PUSH4 0xffffffff
00000714: PUSH2 0x0cfc
00000717: AND
00000718: JUMP
00000719: JUMPDEST
0000071a: SWAP3
0000071b: POP
0000071c: ADDRESS
0000071d: BALANCE
0000071e: DUP4
0000071f: GT
00000720: ISZERO
00000721: PUSH2 0x0729
00000724: JUMPI
00000725: PUSH1 0x00
00000727: DUP1
00000728: REVERT
00000729: JUMPDEST
0000072a: DUP5
0000072b: PUSH1 0x02
0000072d: SLOAD
0000072e: GT
0000072f: ISZERO
00000730: PUSH2 0x07f7
00000733: JUMPI
00000734: PUSH2 0x0756
00000737: PUSH1 0x02
00000739: SLOAD
0000073a: PUSH1 0x05
0000073c: SLOAD
0000073d: ADDRESS
0000073e: PUSH1 0x01
00000740: PUSH1 0xa0
00000742: PUSH1 0x02
00000744: EXP
00000745: SUB
00000746: AND
00000747: BALANCE
00000748: SUB
00000749: PUSH2 0x0ce0
0000074c: SWAP1
0000074d: SWAP2
0000074e: SWAP1
0000074f: PUSH4 0xffffffff
00000754: AND
00000755: JUMP
00000756: JUMPDEST
00000757: PUSH1 0x05
00000759: DUP1
0000075a: SLOAD
0000075b: DUP6
0000075c: SWAP1
0000075d: SUB
0000075e: SWAP1
0000075f: SSTORE
00000760: PUSH1 0x02
00000762: DUP1
00000763: SLOAD
00000764: DUP8
00000765: SWAP1
00000766: SUB
00000767: SWAP1
00000768: SSTORE
00000769: SWAP2
0000076a: POP
0000076b: PUSH2 0x077a
0000076e: DUP3
0000076f: DUP7
00000770: PUSH4 0xffffffff
00000775: PUSH2 0x0cfc
00000778: AND
00000779: JUMP
0000077a: JUMPDEST
0000077b: PUSH1 0x05
0000077d: DUP1
0000077e: SLOAD
0000077f: SWAP1
00000780: SWAP2
00000781: ADD
00000782: SWAP1
00000783: DUP2
00000784: SWAP1
00000785: SSTORE
00000786: PUSH1 0x02
00000788: SLOAD
00000789: PUSH2 0x0798
0000078c: SWAP2
0000078d: SWAP1
0000078e: PUSH4 0xffffffff
00000793: PUSH2 0x0ce0
00000796: AND
00000797: JUMP
00000798: JUMPDEST
00000799: PUSH1 0x06
0000079b: SSTORE
0000079c: PUSH1 0x40
0000079e: DUP1
0000079f: MLOAD
000007a0: DUP7
000007a1: DUP2
000007a2: MSTORE
000007a3: SWAP1
000007a4: MLOAD
000007a5: PUSH1 0x01
000007a7: PUSH1 0xa0
000007a9: PUSH1 0x02
000007ab: EXP
000007ac: SUB
000007ad: DUP1
000007ae: DUP10
000007af: AND
000007b0: SWAP3
000007b1: SWAP1
000007b2: DUP11
000007b3: AND
000007b4: SWAP2
000007b5: PUSH1 0x00
000007b7: DUP1
000007b8: MLOAD
000007b9: PUSH1 0x20
000007bb: PUSH2 0x0d2f
000007be: DUP4
000007bf: CODECOPY
000007c0: DUP2
000007c1: MLOAD
000007c2: SWAP2
000007c3: MSTORE
000007c4: SWAP2
000007c5: DUP2
000007c6: SWAP1
000007c7: SUB
000007c8: PUSH1 0x20
000007ca: ADD
000007cb: SWAP1
000007cc: LOG3
000007cd: PUSH1 0x01
000007cf: PUSH1 0xa0
000007d1: PUSH1 0x02
000007d3: EXP
000007d4: SUB
000007d5: DUP8
000007d6: AND
000007d7: PUSH1 0x00
000007d9: SWAP1
000007da: DUP2
000007db: MSTORE
000007dc: PUSH1 0x03
000007de: PUSH1 0x20
000007e0: SWAP1
000007e1: DUP2
000007e2: MSTORE
000007e3: PUSH1 0x40
000007e5: DUP1
000007e6: DUP4
000007e7: KECCAK256
000007e8: CALLER
000007e9: DUP5
000007ea: MSTORE
000007eb: SWAP1
000007ec: SWAP2
000007ed: MSTORE
000007ee: SWAP1
000007ef: KECCAK256
000007f0: DUP1
000007f1: SLOAD
000007f2: DUP7
000007f3: SWAP1
000007f4: SUB
000007f5: SWAP1
000007f6: SSTORE
000007f7: JUMPDEST
000007f8: DUP5
000007f9: PUSH1 0x02
000007fb: SLOAD
000007fc: EQ
000007fd: ISZERO
000007fe: PUSH2 0x08d8
00000801: JUMPI
00000802: PUSH1 0x02
00000804: SLOAD
00000805: ADDRESS
00000806: BALANCE
00000807: DUP2
00000808: ISZERO
00000809: ISZERO
0000080a: PUSH2 0x080f
0000080d: JUMPI
0000080e: INVALID
0000080f: JUMPDEST
00000810: DIV
00000811: PUSH1 0x06
00000813: DUP2
00000814: SWAP1
00000815: SSTORE
00000816: PUSH2 0x0839
00000819: SWAP1
0000081a: PUSH1 0x64
0000081c: SWAP1
0000081d: PUSH2 0x082d
00000820: SWAP1
00000821: PUSH1 0x65
00000823: PUSH4 0xffffffff
00000828: PUSH2 0x0cfc
0000082b: AND
0000082c: JUMP
0000082d: JUMPDEST
0000082e: SWAP1
0000082f: PUSH4 0xffffffff
00000834: PUSH2 0x0ce0
00000837: AND
00000838: JUMP
00000839: JUMPDEST
0000083a: PUSH1 0x06
0000083c: SSTORE
0000083d: PUSH1 0x00
0000083f: PUSH1 0x02
00000841: DUP2
00000842: SWAP1
00000843: SSTORE
00000844: PUSH1 0x05
00000846: SSTORE
00000847: PUSH1 0x40
00000849: DUP1
0000084a: MLOAD
0000084b: DUP7
0000084c: DUP2
0000084d: MSTORE
0000084e: SWAP1
0000084f: MLOAD
00000850: PUSH1 0x01
00000852: PUSH1 0xa0
00000854: PUSH1 0x02
00000856: EXP
00000857: SUB
00000858: DUP1
00000859: DUP10
0000085a: AND
0000085b: SWAP3
0000085c: SWAP1
0000085d: DUP11
0000085e: AND
0000085f: SWAP2
00000860: PUSH1 0x00
00000862: DUP1
00000863: MLOAD
00000864: PUSH1 0x20
00000866: PUSH2 0x0d2f
00000869: DUP4
0000086a: CODECOPY
0000086b: DUP2
0000086c: MLOAD
0000086d: SWAP2
0000086e: MSTORE
0000086f: SWAP2
00000870: DUP2
00000871: SWAP1
00000872: SUB
00000873: PUSH1 0x20
00000875: ADD
00000876: SWAP1
00000877: LOG3
00000878: PUSH1 0x01
0000087a: PUSH1 0xa0
0000087c: PUSH1 0x02
0000087e: EXP
0000087f: SUB
00000880: DUP1
00000881: DUP9
00000882: AND
00000883: PUSH1 0x00
00000885: SWAP1
00000886: DUP2
00000887: MSTORE
00000888: PUSH1 0x03
0000088a: PUSH1 0x20
0000088c: SWAP1
0000088d: DUP2
0000088e: MSTORE
0000088f: PUSH1 0x40
00000891: DUP1
00000892: DUP4
00000893: KECCAK256
00000894: CALLER
00000895: DUP5
00000896: MSTORE
00000897: SWAP1
00000898: SWAP2
00000899: MSTORE
0000089a: DUP1
0000089b: DUP3
0000089c: KECCAK256
0000089d: DUP1
0000089e: SLOAD
0000089f: DUP10
000008a0: SWAP1
000008a1: SUB
000008a2: SWAP1
000008a3: SSTORE
000008a4: DUP2
000008a5: SLOAD
000008a6: SWAP1
000008a7: MLOAD
000008a8: SWAP3
000008a9: AND
000008aa: SWAP2
000008ab: ADDRESS
000008ac: BALANCE
000008ad: DUP7
000008ae: SWAP1
000008af: SUB
000008b0: DUP1
000008b1: ISZERO
000008b2: PUSH2 0x08fc
000008b5: MUL
000008b6: SWAP3
000008b7: SWAP1
000008b8: SWAP2
000008b9: SWAP1
000008ba: DUP2
000008bb: DUP2
000008bc: DUP2
000008bd: DUP6
000008be: DUP9
000008bf: DUP9
000008c0: CALL
000008c1: SWAP4
000008c2: POP
000008c3: POP
000008c4: POP
000008c5: POP
000008c6: ISZERO
000008c7: DUP1
000008c8: ISZERO
000008c9: PUSH2 0x08d6
000008cc: JUMPI
000008cd: RETURNDATASIZE
000008ce: PUSH1 0x00
000008d0: DUP1
000008d1: RETURNDATACOPY
000008d2: RETURNDATASIZE
000008d3: PUSH1 0x00
000008d5: REVERT
000008d6: JUMPDEST
000008d7: POP
000008d8: JUMPDEST
000008d9: PUSH1 0x40
000008db: MLOAD
000008dc: PUSH1 0x01
000008de: PUSH1 0xa0
000008e0: PUSH1 0x02
000008e2: EXP
000008e3: SUB
000008e4: DUP9
000008e5: AND
000008e6: SWAP1
000008e7: DUP5
000008e8: ISZERO
000008e9: PUSH2 0x08fc
000008ec: MUL
000008ed: SWAP1
000008ee: DUP6
000008ef: SWAP1
000008f0: PUSH1 0x00
000008f2: DUP2
000008f3: DUP2
000008f4: DUP2
000008f5: DUP6
000008f6: DUP9
000008f7: DUP9
000008f8: CALL
000008f9: SWAP4
000008fa: POP
000008fb: POP
000008fc: POP
000008fd: POP
000008fe: ISZERO
000008ff: DUP1
00000900: ISZERO
00000901: PUSH2 0x090e
00000904: JUMPI
00000905: RETURNDATASIZE
00000906: PUSH1 0x00
00000908: DUP1
00000909: RETURNDATACOPY
0000090a: RETURNDATASIZE
0000090b: PUSH1 0x00
0000090d: REVERT
0000090e: JUMPDEST
0000090f: POP
00000910: JUMPDEST
00000911: POP
00000912: PUSH1 0x01
00000914: SWAP7
00000915: SWAP6
00000916: POP
00000917: POP
00000918: POP
00000919: POP
0000091a: POP
0000091b: POP
0000091c: JUMP
0000091d: JUMPDEST
0000091e: PUSH1 0x06
00000920: DUP2
00000921: JUMP
00000922: JUMPDEST
00000923: PUSH1 0x01
00000925: PUSH1 0xa0
00000927: PUSH1 0x02
00000929: EXP
0000092a: SUB
0000092b: AND
0000092c: PUSH1 0x00
0000092e: SWAP1
0000092f: DUP2
00000930: MSTORE
00000931: PUSH1 0x04
00000933: PUSH1 0x20
00000935: MSTORE
00000936: PUSH1 0x40
00000938: SWAP1
00000939: KECCAK256
0000093a: SLOAD
0000093b: SWAP1
0000093c: JUMP
0000093d: JUMPDEST
0000093e: PUSH1 0x00
00000940: SLOAD
00000941: PUSH1 0x01
00000943: PUSH1 0xa0
00000945: PUSH1 0x02
00000947: EXP
00000948: SUB
00000949: AND
0000094a: DUP2
0000094b: JUMP
0000094c: JUMPDEST
0000094d: PUSH1 0x40
0000094f: DUP1
00000950: MLOAD
00000951: DUP1
00000952: DUP3
00000953: ADD
00000954: SWAP1
00000955: SWAP2
00000956: MSTORE
00000957: PUSH1 0x06
00000959: DUP2
0000095a: MSTORE
0000095b: PUSH32 0x4e4c434c55420000000000000000000000000000000000000000000000000000
0000097c: PUSH1 0x20
0000097e: DUP3
0000097f: ADD
00000980: MSTORE
00000981: DUP2
00000982: JUMP
00000983: JUMPDEST
00000984: PUSH1 0x06
00000986: SLOAD
00000987: DUP2
00000988: JUMP
00000989: JUMPDEST
0000098a: PUSH1 0x00
0000098c: SLOAD
0000098d: PUSH1 0x01
0000098f: PUSH1 0xa0
00000991: PUSH1 0x02
00000993: EXP
00000994: SUB
00000995: AND
00000996: CALLER
00000997: EQ
00000998: PUSH2 0x09a0
0000099b: JUMPI
0000099c: PUSH1 0x00
0000099e: DUP1
0000099f: REVERT
000009a0: JUMPDEST
000009a1: PUSH1 0x01
000009a3: PUSH1 0xa0
000009a5: PUSH1 0x02
000009a7: EXP
000009a8: SUB
000009a9: DUP2
000009aa: AND
000009ab: ISZERO
000009ac: ISZERO
000009ad: PUSH2 0x09b5
000009b0: JUMPI
000009b1: PUSH1 0x00
000009b3: DUP1
000009b4: REVERT
000009b5: JUMPDEST
000009b6: PUSH1 0x01
000009b8: DUP1
000009b9: SLOAD
000009ba: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000009cf: NOT
000009d0: AND
000009d1: PUSH1 0x01
000009d3: PUSH1 0xa0
000009d5: PUSH1 0x02
000009d7: EXP
000009d8: SUB
000009d9: SWAP3
000009da: SWAP1
000009db: SWAP3
000009dc: AND
000009dd: SWAP2
000009de: SWAP1
000009df: SWAP2
000009e0: OR
000009e1: SWAP1
000009e2: SSTORE
000009e3: JUMP
000009e4: JUMPDEST
000009e5: PUSH1 0x00
000009e7: DUP1
000009e8: DUP1
000009e9: PUSH1 0x40
000009eb: PUSH1 0x44
000009ed: CALLDATASIZE
000009ee: LT
000009ef: ISZERO
000009f0: PUSH2 0x09f8
000009f3: JUMPI
000009f4: PUSH1 0x00
000009f6: DUP1
000009f7: REVERT
000009f8: JUMPDEST
000009f9: CALLER
000009fa: PUSH1 0x00
000009fc: SWAP1
000009fd: DUP2
000009fe: MSTORE
000009ff: PUSH1 0x04
00000a01: PUSH1 0x20
00000a03: MSTORE
00000a04: PUSH1 0x40
00000a06: SWAP1
00000a07: KECCAK256
00000a08: SLOAD
00000a09: DUP6
00000a0a: GT
00000a0b: ISZERO
00000a0c: PUSH2 0x0a14
00000a0f: JUMPI
00000a10: PUSH1 0x00
00000a12: DUP1
00000a13: REVERT
00000a14: JUMPDEST
00000a15: PUSH1 0x01
00000a17: PUSH1 0xa0
00000a19: PUSH1 0x02
00000a1b: EXP
00000a1c: SUB
00000a1d: DUP7
00000a1e: AND
00000a1f: ADDRESS
00000a20: EQ
00000a21: PUSH2 0x0aa3
00000a24: JUMPI
00000a25: PUSH1 0x01
00000a27: PUSH1 0xa0
00000a29: PUSH1 0x02
00000a2b: EXP
00000a2c: SUB
00000a2d: DUP7
00000a2e: AND
00000a2f: PUSH1 0x00
00000a31: SWAP1
00000a32: DUP2
00000a33: MSTORE
00000a34: PUSH1 0x04
00000a36: PUSH1 0x20
00000a38: MSTORE
00000a39: PUSH1 0x40
00000a3b: SWAP1
00000a3c: KECCAK256
00000a3d: SLOAD
00000a3e: DUP6
00000a3f: DUP2
00000a40: ADD
00000a41: LT
00000a42: ISZERO
00000a43: PUSH2 0x0a4b
00000a46: JUMPI
00000a47: PUSH1 0x00
00000a49: DUP1
00000a4a: REVERT
00000a4b: JUMPDEST
00000a4c: CALLER
00000a4d: PUSH1 0x00
00000a4f: DUP2
00000a50: DUP2
00000a51: MSTORE
00000a52: PUSH1 0x04
00000a54: PUSH1 0x20
00000a56: SWAP1
00000a57: DUP2
00000a58: MSTORE
00000a59: PUSH1 0x40
00000a5b: DUP1
00000a5c: DUP4
00000a5d: KECCAK256
00000a5e: DUP1
00000a5f: SLOAD
00000a60: DUP11
00000a61: SWAP1
00000a62: SUB
00000a63: SWAP1
00000a64: SSTORE
00000a65: PUSH1 0x01
00000a67: PUSH1 0xa0
00000a69: PUSH1 0x02
00000a6b: EXP
00000a6c: SUB
00000a6d: DUP11
00000a6e: AND
00000a6f: DUP1
00000a70: DUP5
00000a71: MSTORE
00000a72: SWAP3
00000a73: DUP2
00000a74: SWAP1
00000a75: KECCAK256
00000a76: DUP1
00000a77: SLOAD
00000a78: DUP11
00000a79: ADD
00000a7a: SWAP1
00000a7b: SSTORE
00000a7c: DUP1
00000a7d: MLOAD
00000a7e: DUP10
00000a7f: DUP2
00000a80: MSTORE
00000a81: SWAP1
00000a82: MLOAD
00000a83: SWAP3
00000a84: SWAP4
00000a85: SWAP3
00000a86: PUSH1 0x00
00000a88: DUP1
00000a89: MLOAD
00000a8a: PUSH1 0x20
00000a8c: PUSH2 0x0d2f
00000a8f: DUP4
00000a90: CODECOPY
00000a91: DUP2
00000a92: MLOAD
00000a93: SWAP2
00000a94: MSTORE
00000a95: SWAP3
00000a96: SWAP2
00000a97: DUP2
00000a98: SWAP1
00000a99: SUB
00000a9a: SWAP1
00000a9b: SWAP2
00000a9c: ADD
00000a9d: SWAP1
00000a9e: LOG3
00000a9f: PUSH2 0x0c5e
00000aa2: JUMP
00000aa3: JUMPDEST
00000aa4: CALLER
00000aa5: PUSH1 0x00
00000aa7: SWAP1
00000aa8: DUP2
00000aa9: MSTORE
00000aaa: PUSH1 0x04
00000aac: PUSH1 0x20
00000aae: MSTORE
00000aaf: PUSH1 0x40
00000ab1: SWAP1
00000ab2: KECCAK256
00000ab3: DUP1
00000ab4: SLOAD
00000ab5: DUP7
00000ab6: SWAP1
00000ab7: SUB
00000ab8: SWAP1
00000ab9: SSTORE
00000aba: PUSH1 0x06
00000abc: SLOAD
00000abd: PUSH2 0x0acd
00000ac0: SWAP1
00000ac1: DUP7
00000ac2: SWAP1
00000ac3: PUSH4 0xffffffff
00000ac8: PUSH2 0x0cfc
00000acb: AND
00000acc: JUMP
00000acd: JUMPDEST
00000ace: SWAP3
00000acf: POP
00000ad0: ADDRESS
00000ad1: BALANCE
00000ad2: DUP4
00000ad3: GT
00000ad4: ISZERO
00000ad5: PUSH2 0x0add
00000ad8: JUMPI
00000ad9: PUSH1 0x00
00000adb: DUP1
00000adc: REVERT
00000add: JUMPDEST
00000ade: DUP5
00000adf: PUSH1 0x02
00000ae1: SLOAD
00000ae2: GT
00000ae3: ISZERO
00000ae4: PUSH2 0x0b7e
00000ae7: JUMPI
00000ae8: PUSH2 0x0b0a
00000aeb: PUSH1 0x02
00000aed: SLOAD
00000aee: PUSH1 0x05
00000af0: SLOAD
00000af1: ADDRESS
00000af2: PUSH1 0x01
00000af4: PUSH1 0xa0
00000af6: PUSH1 0x02
00000af8: EXP
00000af9: SUB
00000afa: AND
00000afb: BALANCE
00000afc: SUB
00000afd: PUSH2 0x0ce0
00000b00: SWAP1
00000b01: SWAP2
00000b02: SWAP1
00000b03: PUSH4 0xffffffff
00000b08: AND
00000b09: JUMP
00000b0a: JUMPDEST
00000b0b: PUSH1 0x05
00000b0d: DUP1
00000b0e: SLOAD
00000b0f: DUP6
00000b10: SWAP1
00000b11: SUB
00000b12: SWAP1
00000b13: SSTORE
00000b14: PUSH1 0x02
00000b16: DUP1
00000b17: SLOAD
00000b18: DUP8
00000b19: SWAP1
00000b1a: SUB
00000b1b: SWAP1
00000b1c: SSTORE
00000b1d: SWAP2
00000b1e: POP
00000b1f: PUSH2 0x0b2e
00000b22: DUP3
00000b23: DUP7
00000b24: PUSH4 0xffffffff
00000b29: PUSH2 0x0cfc
00000b2c: AND
00000b2d: JUMP
00000b2e: JUMPDEST
00000b2f: PUSH1 0x05
00000b31: DUP1
00000b32: SLOAD
00000b33: SWAP1
00000b34: SWAP2
00000b35: ADD
00000b36: SWAP1
00000b37: DUP2
00000b38: SWAP1
00000b39: SSTORE
00000b3a: PUSH1 0x02
00000b3c: SLOAD
00000b3d: PUSH2 0x0b4c
00000b40: SWAP2
00000b41: SWAP1
00000b42: PUSH4 0xffffffff
00000b47: PUSH2 0x0ce0
00000b4a: AND
00000b4b: JUMP
00000b4c: JUMPDEST
00000b4d: PUSH1 0x06
00000b4f: SSTORE
00000b50: PUSH1 0x40
00000b52: DUP1
00000b53: MLOAD
00000b54: DUP7
00000b55: DUP2
00000b56: MSTORE
00000b57: SWAP1
00000b58: MLOAD
00000b59: PUSH1 0x01
00000b5b: PUSH1 0xa0
00000b5d: PUSH1 0x02
00000b5f: EXP
00000b60: SUB
00000b61: DUP9
00000b62: AND
00000b63: SWAP2
00000b64: CALLER
00000b65: SWAP2
00000b66: PUSH1 0x00
00000b68: DUP1
00000b69: MLOAD
00000b6a: PUSH1 0x20
00000b6c: PUSH2 0x0d2f
00000b6f: DUP4
00000b70: CODECOPY
00000b71: DUP2
00000b72: MLOAD
00000b73: SWAP2
00000b74: MSTORE
00000b75: SWAP2
00000b76: DUP2
00000b77: SWAP1
00000b78: SUB
00000b79: PUSH1 0x20
00000b7b: ADD
00000b7c: SWAP1
00000b7d: LOG3
00000b7e: JUMPDEST
00000b7f: DUP5
00000b80: PUSH1 0x02
00000b82: SLOAD
00000b83: EQ
00000b84: ISZERO
00000b85: PUSH2 0x0c2f
00000b88: JUMPI
00000b89: PUSH1 0x02
00000b8b: SLOAD
00000b8c: ADDRESS
00000b8d: BALANCE
00000b8e: DUP2
00000b8f: ISZERO
00000b90: ISZERO
00000b91: PUSH2 0x0b96
00000b94: JUMPI
00000b95: INVALID
00000b96: JUMPDEST
00000b97: DIV
00000b98: PUSH1 0x06
00000b9a: DUP2
00000b9b: SWAP1
00000b9c: SSTORE
00000b9d: PUSH2 0x0bb4
00000ba0: SWAP1
00000ba1: PUSH1 0x64
00000ba3: SWAP1
00000ba4: PUSH2 0x082d
00000ba7: SWAP1
00000ba8: PUSH1 0x65
00000baa: PUSH4 0xffffffff
00000baf: PUSH2 0x0cfc
00000bb2: AND
00000bb3: JUMP
00000bb4: JUMPDEST
00000bb5: PUSH1 0x06
00000bb7: SSTORE
00000bb8: PUSH1 0x00
00000bba: PUSH1 0x02
00000bbc: DUP2
00000bbd: SWAP1
00000bbe: SSTORE
00000bbf: PUSH1 0x05
00000bc1: SSTORE
00000bc2: PUSH1 0x40
00000bc4: DUP1
00000bc5: MLOAD
00000bc6: DUP7
00000bc7: DUP2
00000bc8: MSTORE
00000bc9: SWAP1
00000bca: MLOAD
00000bcb: PUSH1 0x01
00000bcd: PUSH1 0xa0
00000bcf: PUSH1 0x02
00000bd1: EXP
00000bd2: SUB
00000bd3: DUP9
00000bd4: AND
00000bd5: SWAP2
00000bd6: CALLER
00000bd7: SWAP2
00000bd8: PUSH1 0x00
00000bda: DUP1
00000bdb: MLOAD
00000bdc: PUSH1 0x20
00000bde: PUSH2 0x0d2f
00000be1: DUP4
00000be2: CODECOPY
00000be3: DUP2
00000be4: MLOAD
00000be5: SWAP2
00000be6: MSTORE
00000be7: SWAP2
00000be8: DUP2
00000be9: SWAP1
00000bea: SUB
00000beb: PUSH1 0x20
00000bed: ADD
00000bee: SWAP1
00000bef: LOG3
00000bf0: PUSH1 0x00
00000bf2: DUP1
00000bf3: SLOAD
00000bf4: PUSH1 0x40
00000bf6: MLOAD
00000bf7: PUSH1 0x01
00000bf9: PUSH1 0xa0
00000bfb: PUSH1 0x02
00000bfd: EXP
00000bfe: SUB
00000bff: SWAP1
00000c00: SWAP2
00000c01: AND
00000c02: SWAP2
00000c03: ADDRESS
00000c04: BALANCE
00000c05: DUP7
00000c06: SWAP1
00000c07: SUB
00000c08: DUP1
00000c09: ISZERO
00000c0a: PUSH2 0x08fc
00000c0d: MUL
00000c0e: SWAP3
00000c0f: SWAP1
00000c10: SWAP2
00000c11: DUP2
00000c12: DUP2
00000c13: DUP2
00000c14: DUP6
00000c15: DUP9
00000c16: DUP9
00000c17: CALL
00000c18: SWAP4
00000c19: POP
00000c1a: POP
00000c1b: POP
00000c1c: POP
00000c1d: ISZERO
00000c1e: DUP1
00000c1f: ISZERO
00000c20: PUSH2 0x0c2d
00000c23: JUMPI
00000c24: RETURNDATASIZE
00000c25: PUSH1 0x00
00000c27: DUP1
00000c28: RETURNDATACOPY
00000c29: RETURNDATASIZE
00000c2a: PUSH1 0x00
00000c2c: REVERT
00000c2d: JUMPDEST
00000c2e: POP
00000c2f: JUMPDEST
00000c30: PUSH1 0x40
00000c32: MLOAD
00000c33: CALLER
00000c34: SWAP1
00000c35: DUP5
00000c36: ISZERO
00000c37: PUSH2 0x08fc
00000c3a: MUL
00000c3b: SWAP1
00000c3c: DUP6
00000c3d: SWAP1
00000c3e: PUSH1 0x00
00000c40: DUP2
00000c41: DUP2
00000c42: DUP2
00000c43: DUP6
00000c44: DUP9
00000c45: DUP9
00000c46: CALL
00000c47: SWAP4
00000c48: POP
00000c49: POP
00000c4a: POP
00000c4b: POP
00000c4c: ISZERO
00000c4d: DUP1
00000c4e: ISZERO
00000c4f: PUSH2 0x0c5c
00000c52: JUMPI
00000c53: RETURNDATASIZE
00000c54: PUSH1 0x00
00000c56: DUP1
00000c57: RETURNDATACOPY
00000c58: RETURNDATASIZE
00000c59: PUSH1 0x00
00000c5b: REVERT
00000c5c: JUMPDEST
00000c5d: POP
00000c5e: JUMPDEST
00000c5f: POP
00000c60: PUSH1 0x01
00000c62: SWAP6
00000c63: SWAP5
00000c64: POP
00000c65: POP
00000c66: POP
00000c67: POP
00000c68: POP
00000c69: JUMP
00000c6a: JUMPDEST
00000c6b: PUSH1 0x01
00000c6d: SLOAD
00000c6e: PUSH1 0x01
00000c70: PUSH1 0xa0
00000c72: PUSH1 0x02
00000c74: EXP
00000c75: SUB
00000c76: AND
00000c77: CALLER
00000c78: EQ
00000c79: PUSH2 0x0c81
00000c7c: JUMPI
00000c7d: PUSH1 0x00
00000c7f: DUP1
00000c80: REVERT
00000c81: JUMPDEST
00000c82: PUSH1 0x01
00000c84: DUP1
00000c85: SLOAD
00000c86: PUSH1 0x00
00000c88: DUP1
00000c89: SLOAD
00000c8a: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000c9f: NOT
00000ca0: SWAP1
00000ca1: DUP2
00000ca2: AND
00000ca3: PUSH1 0x01
00000ca5: PUSH1 0xa0
00000ca7: PUSH1 0x02
00000ca9: EXP
00000caa: SUB
00000cab: DUP5
00000cac: AND
00000cad: OR
00000cae: SWAP1
00000caf: SWAP2
00000cb0: SSTORE
00000cb1: AND
00000cb2: SWAP1
00000cb3: SSTORE
00000cb4: JUMP
00000cb5: JUMPDEST
00000cb6: PUSH1 0x01
00000cb8: PUSH1 0xa0
00000cba: PUSH1 0x02
00000cbc: EXP
00000cbd: SUB
00000cbe: SWAP2
00000cbf: DUP3
00000cc0: AND
00000cc1: PUSH1 0x00
00000cc3: SWAP1
00000cc4: DUP2
00000cc5: MSTORE
00000cc6: PUSH1 0x03
00000cc8: PUSH1 0x20
00000cca: SWAP1
00000ccb: DUP2
00000ccc: MSTORE
00000ccd: PUSH1 0x40
00000ccf: DUP1
00000cd0: DUP4
00000cd1: KECCAK256
00000cd2: SWAP4
00000cd3: SWAP1
00000cd4: SWAP5
00000cd5: AND
00000cd6: DUP3
00000cd7: MSTORE
00000cd8: SWAP2
00000cd9: SWAP1
00000cda: SWAP2
00000cdb: MSTORE
00000cdc: KECCAK256
00000cdd: SLOAD
00000cde: SWAP1
00000cdf: JUMP
00000ce0: JUMPDEST
00000ce1: PUSH1 0x00
00000ce3: DUP1
00000ce4: DUP3
00000ce5: DUP5
00000ce6: DUP2
00000ce7: ISZERO
00000ce8: ISZERO
00000ce9: PUSH2 0x0cee
00000cec: JUMPI
00000ced: INVALID
00000cee: JUMPDEST
00000cef: DIV
00000cf0: SWAP1
00000cf1: POP
00000cf2: DUP1
00000cf3: SWAP2
00000cf4: POP
00000cf5: JUMPDEST
00000cf6: POP
00000cf7: SWAP3
00000cf8: SWAP2
00000cf9: POP
00000cfa: POP
00000cfb: JUMP
00000cfc: JUMPDEST
00000cfd: PUSH1 0x00
00000cff: DUP1
00000d00: DUP4
00000d01: ISZERO
00000d02: ISZERO
00000d03: PUSH2 0x0d0f
00000d06: JUMPI
00000d07: PUSH1 0x00
00000d09: SWAP2
00000d0a: POP
00000d0b: PUSH2 0x0cf5
00000d0e: JUMP
00000d0f: JUMPDEST
00000d10: POP
00000d11: DUP3
00000d12: DUP3
00000d13: MUL
00000d14: DUP3
00000d15: DUP5
00000d16: DUP3
00000d17: DUP2
00000d18: ISZERO
00000d19: ISZERO
00000d1a: PUSH2 0x0d1f
00000d1d: JUMPI
00000d1e: INVALID
00000d1f: JUMPDEST
00000d20: DIV
00000d21: EQ
00000d22: PUSH2 0x0d27
00000d25: JUMPI
00000d26: INVALID
00000d27: JUMPDEST
00000d28: SWAP4
00000d29: SWAP3
00000d2a: POP
00000d2b: POP
00000d2c: POP
00000d2d: JUMP
00000d2e: STOP
00000d2f: UNKNOWN(0xDD)
00000d30: CALLCODE
00000d31: MSTORE
00000d32: UNKNOWN(0xAD)
00000d33: SHL
00000d34: UNKNOWN(0xE2)
00000d35: UNKNOWN(0xC8)
00000d36: SWAP12
00000d37: PUSH10 0xc2b068fc378daa952ba7
00000d42: CALL
00000d43: PUSH4 0xc4a11628
00000d48: CREATE2
00000d49: GAS
00000d4a: UNKNOWN(0x4D)
00000d4b: CREATE2
00000d4c: UNKNOWN(0x23)
00000d4d: UNKNOWN(0xB3)
00000d4e: UNKNOWN(0xEF)
00000d4f: LOG1
00000d50: PUSH6 0x627a7a723058
00000d57: KECCAK256
00000d58: UNKNOWN(0x1F)
00000d59: UNKNOWN(0xF9)
00000d5a: UNKNOWN(0x2B)
00000d5b: UNKNOWN(0x4F)
00000d5c: UNKNOWN(0xAB)
00000d5d: XOR
00000d5e: RETURNDATASIZE
00000d5f: ISZERO
00000d60: UNKNOWN(0xDC)
00000d61: ORIGIN
00000d62: UNKNOWN(0xE2)
00000d63: UNKNOWN(0x2B)
00000d64: RETURNDATACOPY
00000d65: LOG1
00000d66: UNKNOWN(0x25)
00000d67: UNKNOWN(0xCA)
00000d68: UNKNOWN(0xF7)
00000d69: SELFDESTRUCT
00000d6a: UNKNOWN(0xAD)
00000d6b: UNKNOWN(0xA8)
00000d6c: SWAP11
00000d6d: SWAP2
00000d6e: DUP5
00000d6f: RETURNDATACOPY
00000d70: UNKNOWN(0x4E)
00000d71: EXTCODESIZE
00000d72: SSTORE
00000d73: GAS
00000d74: SWAP15
00000d75: UNKNOWN(0x4E)
00000d76: PUSH29
View stderr
Warning: This is a nightly build of Foundry. It is recommended to use the latest stable version. To mute this warning set `FOUNDRY_DISABLE_NIGHTLY_WARNING` in your environment.

Findings

validated = confirmed for call sinks; sink observed for others
Severity Category Tool Title Confidence Validated Confirmed Details
high auth detector Authorization based on tx.origin 70 no
view
validation_json
{
    "reason": "missing sink mapping",
    "status": "no_sink"
}
witness_json
{
    "notes": "heuristic witness; entrypoints are best-effort selectors with zeroed calldata",
    "constraints": [],
    "entrypoints": [
        {
            "calldata": "0x06fdde03",
            "selector": "0x06fdde03",
            "calldata_variants": [
                "0x06fdde03",
                "0x06fdde030000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x095ea7b3",
            "selector": "0x095ea7b3",
            "calldata_variants": [
                "0x095ea7b3",
                "0x095ea7b30000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x18160ddd",
            "selector": "0x18160ddd",
            "calldata_variants": [
                "0x18160ddd",
                "0x18160ddd0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x23b872dd",
            "selector": "0x23b872dd",
            "calldata_variants": [
                "0x23b872dd",
                "0x23b872dd0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x313ce567",
            "selector": "0x313ce567",
            "calldata_variants": [
                "0x313ce567",
                "0x313ce5670000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x70a08231",
            "selector": "0x70a08231",
            "calldata_variants": [
                "0x70a08231",
                "0x70a082310000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x8da5cb5b",
            "selector": "0x8da5cb5b",
            "calldata_variants": [
                "0x8da5cb5b",
                "0x8da5cb5b0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x95d89b41",
            "selector": "0x95d89b41",
            "calldata_variants": [
                "0x95d89b41",
                "0x95d89b410000000000000000000000000000000000000000000000000000000000000000"
            ]
        }
    ]
}
evidence_json
{
    "guards_detected": [
        {
            "pc": 3425,
            "type": "tx_origin_used"
        }
    ]
}
medium other detector Untrusted CALL target/value reachable 45 no no
view
trace_id: 0x51e09bd825d687afb614fdd8c547baa3d35332db3d1dc8038bfcb8694f67296f
call_targets: 0x1e5b407f511542b7ac7836319de139601c6fad02
target_varies: no
classification: constant_target
validation_json
{
    "sink": "CALL",
    "errors": 0,
    "status": "sink_reached",
    "attempts": 1,
    "trace_id": "0x51e09bd825d687afb614fdd8c547baa3d35332db3d1dc8038bfcb8694f67296f",
    "confirmed": false,
    "trace_mode": "callTracer",
    "call_targets": [
        "0x1e5b407f511542b7ac7836319de139601c6fad02"
    ],
    "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": "0x06fdde03",
            "selector": "0x06fdde03",
            "calldata_variants": [
                "0x06fdde03",
                "0x06fdde030000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x095ea7b3",
            "selector": "0x095ea7b3",
            "calldata_variants": [
                "0x095ea7b3",
                "0x095ea7b30000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x18160ddd",
            "selector": "0x18160ddd",
            "calldata_variants": [
                "0x18160ddd",
                "0x18160ddd0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x23b872dd",
            "selector": "0x23b872dd",
            "calldata_variants": [
                "0x23b872dd",
                "0x23b872dd0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x313ce567",
            "selector": "0x313ce567",
            "calldata_variants": [
                "0x313ce567",
                "0x313ce5670000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x70a08231",
            "selector": "0x70a08231",
            "calldata_variants": [
                "0x70a08231",
                "0x70a082310000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x8da5cb5b",
            "selector": "0x8da5cb5b",
            "calldata_variants": [
                "0x8da5cb5b",
                "0x8da5cb5b0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x95d89b41",
            "selector": "0x95d89b41",
            "calldata_variants": [
                "0x95d89b41",
                "0x95d89b410000000000000000000000000000000000000000000000000000000000000000"
            ]
        }
    ]
}
evidence_json
{
    "examples": [
        {
            "pc": 1165,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        },
        {
            "pc": 1247,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        },
        {
            "pc": 1302,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        }
    ],
    "call_count": 9,
    "guards_detected": [
        {
            "pc": 3425,
            "type": "tx_origin_used"
        }
    ],
    "untrusted_call_count": 9
}
medium other detector ETH value transfer possible 40 no no
view
trace_id: 0x51e09bd825d687afb614fdd8c547baa3d35332db3d1dc8038bfcb8694f67296f
call_targets: 0x1e5b407f511542b7ac7836319de139601c6fad02
target_varies: no
classification: constant_target
validation_json
{
    "sink": "CALL",
    "errors": 0,
    "status": "sink_reached",
    "attempts": 1,
    "trace_id": "0x51e09bd825d687afb614fdd8c547baa3d35332db3d1dc8038bfcb8694f67296f",
    "confirmed": false,
    "trace_mode": "callTracer",
    "call_targets": [
        "0x1e5b407f511542b7ac7836319de139601c6fad02"
    ],
    "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": "0x06fdde03",
            "selector": "0x06fdde03",
            "calldata_variants": [
                "0x06fdde03",
                "0x06fdde030000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x095ea7b3",
            "selector": "0x095ea7b3",
            "calldata_variants": [
                "0x095ea7b3",
                "0x095ea7b30000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x18160ddd",
            "selector": "0x18160ddd",
            "calldata_variants": [
                "0x18160ddd",
                "0x18160ddd0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x23b872dd",
            "selector": "0x23b872dd",
            "calldata_variants": [
                "0x23b872dd",
                "0x23b872dd0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x313ce567",
            "selector": "0x313ce567",
            "calldata_variants": [
                "0x313ce567",
                "0x313ce5670000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x70a08231",
            "selector": "0x70a08231",
            "calldata_variants": [
                "0x70a08231",
                "0x70a082310000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x8da5cb5b",
            "selector": "0x8da5cb5b",
            "calldata_variants": [
                "0x8da5cb5b",
                "0x8da5cb5b0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x95d89b41",
            "selector": "0x95d89b41",
            "calldata_variants": [
                "0x95d89b41",
                "0x95d89b410000000000000000000000000000000000000000000000000000000000000000"
            ]
        }
    ]
}
evidence_json
{
    "examples": [
        {
            "pc": 1165,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        },
        {
            "pc": 1247,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        },
        {
            "pc": 1302,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        }
    ],
    "eth_value_calls": 9,
    "guards_detected": [
        {
            "pc": 3425,
            "type": "tx_origin_used"
        }
    ]
}
medium other detector SELFDESTRUCT reachable 45 no no
view
trace_id: 0x096d6bf5153e6f34a82ce545e6c2357ddcbf022050f817a1238fba9bed36325c
validation_json
{
    "sink": "SELFDESTRUCT",
    "errors": 0,
    "status": "unknown",
    "attempts": 26,
    "trace_id": "0x096d6bf5153e6f34a82ce545e6c2357ddcbf022050f817a1238fba9bed36325c",
    "confirmed": false,
    "trace_mode": "structLogs",
    "call_targets": null,
    "matched_probe": null,
    "target_varies": null,
    "classification": "no_sink"
}
witness_json
{
    "notes": "heuristic witness; entrypoints are best-effort selectors with zeroed calldata",
    "constraints": [],
    "entrypoints": [
        {
            "calldata": "0x06fdde03",
            "selector": "0x06fdde03",
            "calldata_variants": [
                "0x06fdde03",
                "0x06fdde030000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x095ea7b3",
            "selector": "0x095ea7b3",
            "calldata_variants": [
                "0x095ea7b3",
                "0x095ea7b30000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x18160ddd",
            "selector": "0x18160ddd",
            "calldata_variants": [
                "0x18160ddd",
                "0x18160ddd0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x23b872dd",
            "selector": "0x23b872dd",
            "calldata_variants": [
                "0x23b872dd",
                "0x23b872dd0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x313ce567",
            "selector": "0x313ce567",
            "calldata_variants": [
                "0x313ce567",
                "0x313ce5670000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x70a08231",
            "selector": "0x70a08231",
            "calldata_variants": [
                "0x70a08231",
                "0x70a082310000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x8da5cb5b",
            "selector": "0x8da5cb5b",
            "calldata_variants": [
                "0x8da5cb5b",
                "0x8da5cb5b0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x95d89b41",
            "selector": "0x95d89b41",
            "calldata_variants": [
                "0x95d89b41",
                "0x95d89b410000000000000000000000000000000000000000000000000000000000000000"
            ]
        }
    ]
}
evidence_json
{
    "guards_detected": [
        {
            "pc": 3425,
            "type": "tx_origin_used"
        }
    ],
    "selfdestruct_count": 1
}
medium other detector CREATE/CREATE2 reachable 45 no no
view
trace_id: 0x096d6bf5153e6f34a82ce545e6c2357ddcbf022050f817a1238fba9bed36325c
validation_json
{
    "sink": "CREATE",
    "errors": 0,
    "status": "unknown",
    "attempts": 26,
    "trace_id": "0x096d6bf5153e6f34a82ce545e6c2357ddcbf022050f817a1238fba9bed36325c",
    "confirmed": false,
    "trace_mode": "structLogs",
    "call_targets": null,
    "matched_probe": null,
    "target_varies": null,
    "classification": "no_sink"
}
witness_json
{
    "notes": "heuristic witness; entrypoints are best-effort selectors with zeroed calldata",
    "constraints": [],
    "entrypoints": [
        {
            "calldata": "0x06fdde03",
            "selector": "0x06fdde03",
            "calldata_variants": [
                "0x06fdde03",
                "0x06fdde030000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x095ea7b3",
            "selector": "0x095ea7b3",
            "calldata_variants": [
                "0x095ea7b3",
                "0x095ea7b30000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x18160ddd",
            "selector": "0x18160ddd",
            "calldata_variants": [
                "0x18160ddd",
                "0x18160ddd0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x23b872dd",
            "selector": "0x23b872dd",
            "calldata_variants": [
                "0x23b872dd",
                "0x23b872dd0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x313ce567",
            "selector": "0x313ce567",
            "calldata_variants": [
                "0x313ce567",
                "0x313ce5670000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x70a08231",
            "selector": "0x70a08231",
            "calldata_variants": [
                "0x70a08231",
                "0x70a082310000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x8da5cb5b",
            "selector": "0x8da5cb5b",
            "calldata_variants": [
                "0x8da5cb5b",
                "0x8da5cb5b0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x95d89b41",
            "selector": "0x95d89b41",
            "calldata_variants": [
                "0x95d89b41",
                "0x95d89b410000000000000000000000000000000000000000000000000000000000000000"
            ]
        }
    ]
}
evidence_json
{
    "create_count": 0,
    "create2_count": 2
}