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

Analysis Run

019b3836-55bf-707c-9b70-d7efee13d25e

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

What survived the funnel

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

Confirmed
0
Validated
0
Source
Bytecode only
Review Backing
Not yet
Best current signal
Untrusted CALL target/value 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
8301 artifact.fetch complete 1 / 3 4 months ago
8302 tool.cast_disasm complete 1 / 3 4 months ago
98062 analysis.bundle complete 1 / 3 2 weeks ago
98063 capability.graph complete 1 / 3 2 weeks ago
98064 detector.run complete 1 / 3 2 weeks ago
98065 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
0
CREATE2
0
CALL-family (heavy)
4
EXT*/BALANCE
0
Total opcodes
1130
Flags
No heuristic flags raised.
View cast disassembly output
00000000: PUSH1 0x60
00000002: PUSH1 0x40
00000004: MSTORE
00000005: CALLDATASIZE
00000006: ISZERO
00000007: PUSH2 0x005e
0000000a: JUMPI
0000000b: PUSH1 0x00
0000000d: CALLDATALOAD
0000000e: PUSH29 0x0100000000000000000000000000000000000000000000000000000000
0000002c: SWAP1
0000002d: DIV
0000002e: DUP1
0000002f: PUSH4 0x23261794
00000034: EQ
00000035: PUSH2 0x021d
00000038: JUMPI
00000039: DUP1
0000003a: PUSH4 0x49e79bcb
0000003f: EQ
00000040: PUSH2 0x025f
00000043: JUMPI
00000044: DUP1
00000045: PUSH4 0x7c98fabc
0000004a: EQ
0000004b: PUSH2 0x02e3
0000004e: JUMPI
0000004f: DUP1
00000050: PUSH4 0xb60d4288
00000055: EQ
00000056: PUSH2 0x0339
00000059: JUMPI
0000005a: PUSH2 0x005e
0000005d: JUMP
0000005e: JUMPDEST
0000005f: PUSH2 0x021b
00000062: JUMPDEST
00000063: PUSH1 0x00
00000065: JUMPDEST
00000066: PUSH1 0x01
00000068: PUSH1 0x00
0000006a: POP
0000006b: DUP1
0000006c: SLOAD
0000006d: SWAP1
0000006e: POP
0000006f: DUP2
00000070: LT
00000071: ISZERO
00000072: PUSH2 0x00f7
00000075: JUMPI
00000076: PUSH1 0x01
00000078: PUSH1 0x00
0000007a: POP
0000007b: DUP2
0000007c: DUP2
0000007d: SLOAD
0000007e: DUP2
0000007f: LT
00000080: ISZERO
00000081: PUSH2 0x0002
00000084: JUMPI
00000085: SWAP1
00000086: PUSH1 0x00
00000088: MSTORE
00000089: PUSH1 0x20
0000008b: PUSH1 0x00
0000008d: KECCAK256
0000008e: SWAP1
0000008f: ADD
00000090: PUSH1 0x00
00000092: JUMPDEST
00000093: SWAP1
00000094: SLOAD
00000095: SWAP1
00000096: PUSH2 0x0100
00000099: EXP
0000009a: SWAP1
0000009b: DIV
0000009c: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000000b1: AND
000000b2: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000000c7: AND
000000c8: CALLER
000000c9: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000000de: AND
000000df: EQ
000000e0: ISZERO
000000e1: PUSH2 0x00e9
000000e4: JUMPI
000000e5: PUSH2 0x0002
000000e8: JUMP
000000e9: JUMPDEST
000000ea: JUMPDEST
000000eb: DUP1
000000ec: DUP1
000000ed: PUSH1 0x01
000000ef: ADD
000000f0: SWAP2
000000f1: POP
000000f2: POP
000000f3: PUSH2 0x0065
000000f6: JUMP
000000f7: JUMPDEST
000000f8: CALLER
000000f9: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
0000010e: AND
0000010f: PUSH1 0x00
00000111: PUSH1 0x00
00000113: PUSH1 0x00
00000115: POP
00000116: SLOAD
00000117: PUSH1 0x40
00000119: MLOAD
0000011a: DUP1
0000011b: SWAP1
0000011c: POP
0000011d: PUSH1 0x00
0000011f: PUSH1 0x40
00000121: MLOAD
00000122: DUP1
00000123: DUP4
00000124: SUB
00000125: DUP2
00000126: DUP6
00000127: DUP9
00000128: DUP9
00000129: CALL
0000012a: SWAP4
0000012b: POP
0000012c: POP
0000012d: POP
0000012e: POP
0000012f: ISZERO
00000130: ISZERO
00000131: PUSH2 0x0139
00000134: JUMPI
00000135: PUSH2 0x0002
00000138: JUMP
00000139: JUMPDEST
0000013a: PUSH1 0x01
0000013c: PUSH1 0x00
0000013e: POP
0000013f: DUP1
00000140: SLOAD
00000141: DUP1
00000142: PUSH1 0x01
00000144: ADD
00000145: DUP3
00000146: DUP2
00000147: DUP2
00000148: SLOAD
00000149: DUP2
0000014a: DUP4
0000014b: SSTORE
0000014c: DUP2
0000014d: DUP2
0000014e: ISZERO
0000014f: GT
00000150: PUSH2 0x018b
00000153: JUMPI
00000154: DUP2
00000155: DUP4
00000156: PUSH1 0x00
00000158: MSTORE
00000159: PUSH1 0x20
0000015b: PUSH1 0x00
0000015d: KECCAK256
0000015e: SWAP2
0000015f: DUP3
00000160: ADD
00000161: SWAP2
00000162: ADD
00000163: PUSH2 0x018a
00000166: SWAP2
00000167: SWAP1
00000168: PUSH2 0x016c
0000016b: JUMP
0000016c: JUMPDEST
0000016d: DUP1
0000016e: DUP3
0000016f: GT
00000170: ISZERO
00000171: PUSH2 0x0186
00000174: JUMPI
00000175: PUSH1 0x00
00000177: DUP2
00000178: DUP2
00000179: POP
0000017a: PUSH1 0x00
0000017c: SWAP1
0000017d: SSTORE
0000017e: POP
0000017f: PUSH1 0x01
00000181: ADD
00000182: PUSH2 0x016c
00000185: JUMP
00000186: JUMPDEST
00000187: POP
00000188: SWAP1
00000189: JUMP
0000018a: JUMPDEST
0000018b: JUMPDEST
0000018c: POP
0000018d: POP
0000018e: POP
0000018f: SWAP2
00000190: SWAP1
00000191: SWAP1
00000192: PUSH1 0x00
00000194: MSTORE
00000195: PUSH1 0x20
00000197: PUSH1 0x00
00000199: KECCAK256
0000019a: SWAP1
0000019b: ADD
0000019c: PUSH1 0x00
0000019e: JUMPDEST
0000019f: CALLER
000001a0: SWAP1
000001a1: SWAP2
000001a2: SWAP1
000001a3: SWAP2
000001a4: PUSH2 0x0100
000001a7: EXP
000001a8: DUP2
000001a9: SLOAD
000001aa: DUP2
000001ab: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000001c0: MUL
000001c1: NOT
000001c2: AND
000001c3: SWAP1
000001c4: DUP4
000001c5: MUL
000001c6: OR
000001c7: SWAP1
000001c8: SSTORE
000001c9: POP
000001ca: POP
000001cb: PUSH32 0x43ae4cdf8a91111b3d5218f026184de8c4522dbee8dc3c7a1dcbc30977269eb8
000001ec: CALLER
000001ed: PUSH1 0x40
000001ef: MLOAD
000001f0: DUP1
000001f1: DUP3
000001f2: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000207: AND
00000208: DUP2
00000209: MSTORE
0000020a: PUSH1 0x20
0000020c: ADD
0000020d: SWAP2
0000020e: POP
0000020f: POP
00000210: PUSH1 0x40
00000212: MLOAD
00000213: DUP1
00000214: SWAP2
00000215: SUB
00000216: SWAP1
00000217: LOG1
00000218: POP
00000219: JUMPDEST
0000021a: JUMP
0000021b: JUMPDEST
0000021c: STOP
0000021d: JUMPDEST
0000021e: PUSH2 0x0233
00000221: PUSH1 0x04
00000223: DUP1
00000224: DUP1
00000225: CALLDATALOAD
00000226: SWAP1
00000227: PUSH1 0x20
00000229: ADD
0000022a: SWAP1
0000022b: SWAP2
0000022c: SWAP1
0000022d: POP
0000022e: POP
0000022f: PUSH2 0x0348
00000232: JUMP
00000233: JUMPDEST
00000234: PUSH1 0x40
00000236: MLOAD
00000237: DUP1
00000238: DUP3
00000239: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
0000024e: AND
0000024f: DUP2
00000250: MSTORE
00000251: PUSH1 0x20
00000253: ADD
00000254: SWAP2
00000255: POP
00000256: POP
00000257: PUSH1 0x40
00000259: MLOAD
0000025a: DUP1
0000025b: SWAP2
0000025c: SUB
0000025d: SWAP1
0000025e: RETURN
0000025f: JUMPDEST
00000260: PUSH2 0x0275
00000263: PUSH1 0x04
00000265: DUP1
00000266: DUP1
00000267: CALLDATALOAD
00000268: SWAP1
00000269: PUSH1 0x20
0000026b: ADD
0000026c: SWAP1
0000026d: SWAP2
0000026e: SWAP1
0000026f: POP
00000270: POP
00000271: PUSH2 0x038a
00000274: JUMP
00000275: JUMPDEST
00000276: PUSH1 0x40
00000278: MLOAD
00000279: DUP1
0000027a: DUP1
0000027b: PUSH1 0x20
0000027d: ADD
0000027e: DUP3
0000027f: DUP2
00000280: SUB
00000281: DUP3
00000282: MSTORE
00000283: DUP4
00000284: DUP2
00000285: DUP2
00000286: MLOAD
00000287: DUP2
00000288: MSTORE
00000289: PUSH1 0x20
0000028b: ADD
0000028c: SWAP2
0000028d: POP
0000028e: DUP1
0000028f: MLOAD
00000290: SWAP1
00000291: PUSH1 0x20
00000293: ADD
00000294: SWAP1
00000295: DUP1
00000296: DUP4
00000297: DUP4
00000298: DUP3
00000299: SWAP1
0000029a: PUSH1 0x00
0000029c: PUSH1 0x04
0000029e: PUSH1 0x20
000002a0: DUP5
000002a1: PUSH1 0x1f
000002a3: ADD
000002a4: DIV
000002a5: PUSH1 0x0f
000002a7: MUL
000002a8: PUSH1 0x03
000002aa: ADD
000002ab: CALL
000002ac: POP
000002ad: SWAP1
000002ae: POP
000002af: SWAP1
000002b0: DUP2
000002b1: ADD
000002b2: SWAP1
000002b3: PUSH1 0x1f
000002b5: AND
000002b6: DUP1
000002b7: ISZERO
000002b8: PUSH2 0x02d5
000002bb: JUMPI
000002bc: DUP1
000002bd: DUP3
000002be: SUB
000002bf: DUP1
000002c0: MLOAD
000002c1: PUSH1 0x01
000002c3: DUP4
000002c4: PUSH1 0x20
000002c6: SUB
000002c7: PUSH2 0x0100
000002ca: EXP
000002cb: SUB
000002cc: NOT
000002cd: AND
000002ce: DUP2
000002cf: MSTORE
000002d0: PUSH1 0x20
000002d2: ADD
000002d3: SWAP2
000002d4: POP
000002d5: JUMPDEST
000002d6: POP
000002d7: SWAP3
000002d8: POP
000002d9: POP
000002da: POP
000002db: PUSH1 0x40
000002dd: MLOAD
000002de: DUP1
000002df: SWAP2
000002e0: SUB
000002e1: SWAP1
000002e2: RETURN
000002e3: JUMPDEST
000002e4: PUSH2 0x0337
000002e7: PUSH1 0x04
000002e9: DUP1
000002ea: DUP1
000002eb: CALLDATALOAD
000002ec: SWAP1
000002ed: PUSH1 0x20
000002ef: ADD
000002f0: SWAP1
000002f1: DUP3
000002f2: ADD
000002f3: DUP1
000002f4: CALLDATALOAD
000002f5: SWAP1
000002f6: PUSH1 0x20
000002f8: ADD
000002f9: SWAP2
000002fa: SWAP2
000002fb: SWAP1
000002fc: DUP1
000002fd: DUP1
000002fe: PUSH1 0x1f
00000300: ADD
00000301: PUSH1 0x20
00000303: DUP1
00000304: SWAP2
00000305: DIV
00000306: MUL
00000307: PUSH1 0x20
00000309: ADD
0000030a: PUSH1 0x40
0000030c: MLOAD
0000030d: SWAP1
0000030e: DUP2
0000030f: ADD
00000310: PUSH1 0x40
00000312: MSTORE
00000313: DUP1
00000314: SWAP4
00000315: SWAP3
00000316: SWAP2
00000317: SWAP1
00000318: DUP2
00000319: DUP2
0000031a: MSTORE
0000031b: PUSH1 0x20
0000031d: ADD
0000031e: DUP4
0000031f: DUP4
00000320: DUP1
00000321: DUP3
00000322: DUP5
00000323: CALLDATACOPY
00000324: DUP3
00000325: ADD
00000326: SWAP2
00000327: POP
00000328: POP
00000329: POP
0000032a: POP
0000032b: POP
0000032c: POP
0000032d: SWAP1
0000032e: SWAP1
0000032f: SWAP2
00000330: SWAP1
00000331: POP
00000332: POP
00000333: PUSH2 0x043d
00000336: JUMP
00000337: JUMPDEST
00000338: STOP
00000339: JUMPDEST
0000033a: PUSH2 0x0346
0000033d: PUSH1 0x04
0000033f: DUP1
00000340: POP
00000341: POP
00000342: PUSH2 0x072e
00000345: JUMP
00000346: JUMPDEST
00000347: STOP
00000348: JUMPDEST
00000349: PUSH1 0x01
0000034b: PUSH1 0x00
0000034d: POP
0000034e: DUP2
0000034f: DUP2
00000350: SLOAD
00000351: DUP2
00000352: LT
00000353: ISZERO
00000354: PUSH2 0x0002
00000357: JUMPI
00000358: SWAP1
00000359: PUSH1 0x00
0000035b: MSTORE
0000035c: PUSH1 0x20
0000035e: PUSH1 0x00
00000360: KECCAK256
00000361: SWAP1
00000362: ADD
00000363: PUSH1 0x00
00000365: JUMPDEST
00000366: SWAP2
00000367: POP
00000368: SWAP1
00000369: SWAP1
0000036a: SLOAD
0000036b: SWAP1
0000036c: PUSH2 0x0100
0000036f: EXP
00000370: SWAP1
00000371: DIV
00000372: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000387: AND
00000388: DUP2
00000389: JUMP
0000038a: JUMPDEST
0000038b: PUSH1 0x02
0000038d: PUSH1 0x00
0000038f: POP
00000390: PUSH1 0x20
00000392: MSTORE
00000393: DUP1
00000394: PUSH1 0x00
00000396: MSTORE
00000397: PUSH1 0x40
00000399: PUSH1 0x00
0000039b: KECCAK256
0000039c: PUSH1 0x00
0000039e: SWAP2
0000039f: POP
000003a0: SWAP1
000003a1: POP
000003a2: DUP1
000003a3: SLOAD
000003a4: PUSH1 0x01
000003a6: DUP2
000003a7: PUSH1 0x01
000003a9: AND
000003aa: ISZERO
000003ab: PUSH2 0x0100
000003ae: MUL
000003af: SUB
000003b0: AND
000003b1: PUSH1 0x02
000003b3: SWAP1
000003b4: DIV
000003b5: DUP1
000003b6: PUSH1 0x1f
000003b8: ADD
000003b9: PUSH1 0x20
000003bb: DUP1
000003bc: SWAP2
000003bd: DIV
000003be: MUL
000003bf: PUSH1 0x20
000003c1: ADD
000003c2: PUSH1 0x40
000003c4: MLOAD
000003c5: SWAP1
000003c6: DUP2
000003c7: ADD
000003c8: PUSH1 0x40
000003ca: MSTORE
000003cb: DUP1
000003cc: SWAP3
000003cd: SWAP2
000003ce: SWAP1
000003cf: DUP2
000003d0: DUP2
000003d1: MSTORE
000003d2: PUSH1 0x20
000003d4: ADD
000003d5: DUP3
000003d6: DUP1
000003d7: SLOAD
000003d8: PUSH1 0x01
000003da: DUP2
000003db: PUSH1 0x01
000003dd: AND
000003de: ISZERO
000003df: PUSH2 0x0100
000003e2: MUL
000003e3: SUB
000003e4: AND
000003e5: PUSH1 0x02
000003e7: SWAP1
000003e8: DIV
000003e9: DUP1
000003ea: ISZERO
000003eb: PUSH2 0x0435
000003ee: JUMPI
000003ef: DUP1
000003f0: PUSH1 0x1f
000003f2: LT
000003f3: PUSH2 0x040a
000003f6: JUMPI
000003f7: PUSH2 0x0100
000003fa: DUP1
000003fb: DUP4
000003fc: SLOAD
000003fd: DIV
000003fe: MUL
000003ff: DUP4
00000400: MSTORE
00000401: SWAP2
00000402: PUSH1 0x20
00000404: ADD
00000405: SWAP2
00000406: PUSH2 0x0435
00000409: JUMP
0000040a: JUMPDEST
0000040b: DUP3
0000040c: ADD
0000040d: SWAP2
0000040e: SWAP1
0000040f: PUSH1 0x00
00000411: MSTORE
00000412: PUSH1 0x20
00000414: PUSH1 0x00
00000416: KECCAK256
00000417: SWAP1
00000418: JUMPDEST
00000419: DUP2
0000041a: SLOAD
0000041b: DUP2
0000041c: MSTORE
0000041d: SWAP1
0000041e: PUSH1 0x01
00000420: ADD
00000421: SWAP1
00000422: PUSH1 0x20
00000424: ADD
00000425: DUP1
00000426: DUP4
00000427: GT
00000428: PUSH2 0x0418
0000042b: JUMPI
0000042c: DUP3
0000042d: SWAP1
0000042e: SUB
0000042f: PUSH1 0x1f
00000431: AND
00000432: DUP3
00000433: ADD
00000434: SWAP2
00000435: JUMPDEST
00000436: POP
00000437: POP
00000438: POP
00000439: POP
0000043a: POP
0000043b: DUP2
0000043c: JUMP
0000043d: JUMPDEST
0000043e: PUSH1 0x00
00000440: JUMPDEST
00000441: PUSH1 0x01
00000443: PUSH1 0x00
00000445: POP
00000446: DUP1
00000447: SLOAD
00000448: SWAP1
00000449: POP
0000044a: DUP2
0000044b: LT
0000044c: ISZERO
0000044d: PUSH2 0x04d2
00000450: JUMPI
00000451: PUSH1 0x01
00000453: PUSH1 0x00
00000455: POP
00000456: DUP2
00000457: DUP2
00000458: SLOAD
00000459: DUP2
0000045a: LT
0000045b: ISZERO
0000045c: PUSH2 0x0002
0000045f: JUMPI
00000460: SWAP1
00000461: PUSH1 0x00
00000463: MSTORE
00000464: PUSH1 0x20
00000466: PUSH1 0x00
00000468: KECCAK256
00000469: SWAP1
0000046a: ADD
0000046b: PUSH1 0x00
0000046d: JUMPDEST
0000046e: SWAP1
0000046f: SLOAD
00000470: SWAP1
00000471: PUSH2 0x0100
00000474: EXP
00000475: SWAP1
00000476: DIV
00000477: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
0000048c: AND
0000048d: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000004a2: AND
000004a3: CALLER
000004a4: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000004b9: AND
000004ba: EQ
000004bb: ISZERO
000004bc: PUSH2 0x04c4
000004bf: JUMPI
000004c0: PUSH2 0x0002
000004c3: JUMP
000004c4: JUMPDEST
000004c5: JUMPDEST
000004c6: DUP1
000004c7: DUP1
000004c8: PUSH1 0x01
000004ca: ADD
000004cb: SWAP2
000004cc: POP
000004cd: POP
000004ce: PUSH2 0x0440
000004d1: JUMP
000004d2: JUMPDEST
000004d3: DUP2
000004d4: PUSH1 0x02
000004d6: PUSH1 0x00
000004d8: POP
000004d9: PUSH1 0x00
000004db: CALLER
000004dc: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000004f1: AND
000004f2: DUP2
000004f3: MSTORE
000004f4: PUSH1 0x20
000004f6: ADD
000004f7: SWAP1
000004f8: DUP2
000004f9: MSTORE
000004fa: PUSH1 0x20
000004fc: ADD
000004fd: PUSH1 0x00
000004ff: KECCAK256
00000500: PUSH1 0x00
00000502: POP
00000503: SWAP1
00000504: DUP1
00000505: MLOAD
00000506: SWAP1
00000507: PUSH1 0x20
00000509: ADD
0000050a: SWAP1
0000050b: DUP3
0000050c: DUP1
0000050d: SLOAD
0000050e: PUSH1 0x01
00000510: DUP2
00000511: PUSH1 0x01
00000513: AND
00000514: ISZERO
00000515: PUSH2 0x0100
00000518: MUL
00000519: SUB
0000051a: AND
0000051b: PUSH1 0x02
0000051d: SWAP1
0000051e: DIV
0000051f: SWAP1
00000520: PUSH1 0x00
00000522: MSTORE
00000523: PUSH1 0x20
00000525: PUSH1 0x00
00000527: KECCAK256
00000528: SWAP1
00000529: PUSH1 0x1f
0000052b: ADD
0000052c: PUSH1 0x20
0000052e: SWAP1
0000052f: DIV
00000530: DUP2
00000531: ADD
00000532: SWAP3
00000533: DUP3
00000534: PUSH1 0x1f
00000536: LT
00000537: PUSH2 0x054b
0000053a: JUMPI
0000053b: DUP1
0000053c: MLOAD
0000053d: PUSH1 0xff
0000053f: NOT
00000540: AND
00000541: DUP4
00000542: DUP1
00000543: ADD
00000544: OR
00000545: DUP6
00000546: SSTORE
00000547: PUSH2 0x057c
0000054a: JUMP
0000054b: JUMPDEST
0000054c: DUP3
0000054d: DUP1
0000054e: ADD
0000054f: PUSH1 0x01
00000551: ADD
00000552: DUP6
00000553: SSTORE
00000554: DUP3
00000555: ISZERO
00000556: PUSH2 0x057c
00000559: JUMPI
0000055a: SWAP2
0000055b: DUP3
0000055c: ADD
0000055d: JUMPDEST
0000055e: DUP3
0000055f: DUP2
00000560: GT
00000561: ISZERO
00000562: PUSH2 0x057b
00000565: JUMPI
00000566: DUP3
00000567: MLOAD
00000568: DUP3
00000569: PUSH1 0x00
0000056b: POP
0000056c: SSTORE
0000056d: SWAP2
0000056e: PUSH1 0x20
00000570: ADD
00000571: SWAP2
00000572: SWAP1
00000573: PUSH1 0x01
00000575: ADD
00000576: SWAP1
00000577: PUSH2 0x055d
0000057a: JUMP
0000057b: JUMPDEST
0000057c: JUMPDEST
0000057d: POP
0000057e: SWAP1
0000057f: POP
00000580: PUSH2 0x05a7
00000583: SWAP2
00000584: SWAP1
00000585: PUSH2 0x0589
00000588: JUMP
00000589: JUMPDEST
0000058a: DUP1
0000058b: DUP3
0000058c: GT
0000058d: ISZERO
0000058e: PUSH2 0x05a3
00000591: JUMPI
00000592: PUSH1 0x00
00000594: DUP2
00000595: DUP2
00000596: POP
00000597: PUSH1 0x00
00000599: SWAP1
0000059a: SSTORE
0000059b: POP
0000059c: PUSH1 0x01
0000059e: ADD
0000059f: PUSH2 0x0589
000005a2: JUMP
000005a3: JUMPDEST
000005a4: POP
000005a5: SWAP1
000005a6: JUMP
000005a7: JUMPDEST
000005a8: POP
000005a9: POP
000005aa: CALLER
000005ab: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000005c0: AND
000005c1: PUSH1 0x00
000005c3: PUSH1 0x00
000005c5: PUSH1 0x00
000005c7: POP
000005c8: SLOAD
000005c9: PUSH1 0x40
000005cb: MLOAD
000005cc: DUP1
000005cd: SWAP1
000005ce: POP
000005cf: PUSH1 0x00
000005d1: PUSH1 0x40
000005d3: MLOAD
000005d4: DUP1
000005d5: DUP4
000005d6: SUB
000005d7: DUP2
000005d8: DUP6
000005d9: DUP9
000005da: DUP9
000005db: CALL
000005dc: SWAP4
000005dd: POP
000005de: POP
000005df: POP
000005e0: POP
000005e1: ISZERO
000005e2: ISZERO
000005e3: PUSH2 0x05eb
000005e6: JUMPI
000005e7: PUSH2 0x0002
000005ea: JUMP
000005eb: JUMPDEST
000005ec: PUSH1 0x01
000005ee: PUSH1 0x00
000005f0: POP
000005f1: DUP1
000005f2: SLOAD
000005f3: DUP1
000005f4: PUSH1 0x01
000005f6: ADD
000005f7: DUP3
000005f8: DUP2
000005f9: DUP2
000005fa: SLOAD
000005fb: DUP2
000005fc: DUP4
000005fd: SSTORE
000005fe: DUP2
000005ff: DUP2
00000600: ISZERO
00000601: GT
00000602: PUSH2 0x063d
00000605: JUMPI
00000606: DUP2
00000607: DUP4
00000608: PUSH1 0x00
0000060a: MSTORE
0000060b: PUSH1 0x20
0000060d: PUSH1 0x00
0000060f: KECCAK256
00000610: SWAP2
00000611: DUP3
00000612: ADD
00000613: SWAP2
00000614: ADD
00000615: PUSH2 0x063c
00000618: SWAP2
00000619: SWAP1
0000061a: PUSH2 0x061e
0000061d: JUMP
0000061e: JUMPDEST
0000061f: DUP1
00000620: DUP3
00000621: GT
00000622: ISZERO
00000623: PUSH2 0x0638
00000626: JUMPI
00000627: PUSH1 0x00
00000629: DUP2
0000062a: DUP2
0000062b: POP
0000062c: PUSH1 0x00
0000062e: SWAP1
0000062f: SSTORE
00000630: POP
00000631: PUSH1 0x01
00000633: ADD
00000634: PUSH2 0x061e
00000637: JUMP
00000638: JUMPDEST
00000639: POP
0000063a: SWAP1
0000063b: JUMP
0000063c: JUMPDEST
0000063d: JUMPDEST
0000063e: POP
0000063f: POP
00000640: POP
00000641: SWAP2
00000642: SWAP1
00000643: SWAP1
00000644: PUSH1 0x00
00000646: MSTORE
00000647: PUSH1 0x20
00000649: PUSH1 0x00
0000064b: KECCAK256
0000064c: SWAP1
0000064d: ADD
0000064e: PUSH1 0x00
00000650: JUMPDEST
00000651: CALLER
00000652: SWAP1
00000653: SWAP2
00000654: SWAP1
00000655: SWAP2
00000656: PUSH2 0x0100
00000659: EXP
0000065a: DUP2
0000065b: SLOAD
0000065c: DUP2
0000065d: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000672: MUL
00000673: NOT
00000674: AND
00000675: SWAP1
00000676: DUP4
00000677: MUL
00000678: OR
00000679: SWAP1
0000067a: SSTORE
0000067b: POP
0000067c: POP
0000067d: PUSH32 0x739e31b714662088b4db39289f795fe978ea0bea62bc1873ec3beca4bf2e8ede
0000069e: CALLER
0000069f: DUP4
000006a0: PUSH1 0x40
000006a2: MLOAD
000006a3: DUP1
000006a4: DUP4
000006a5: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000006ba: AND
000006bb: DUP2
000006bc: MSTORE
000006bd: PUSH1 0x20
000006bf: ADD
000006c0: DUP1
000006c1: PUSH1 0x20
000006c3: ADD
000006c4: DUP3
000006c5: DUP2
000006c6: SUB
000006c7: DUP3
000006c8: MSTORE
000006c9: DUP4
000006ca: DUP2
000006cb: DUP2
000006cc: MLOAD
000006cd: DUP2
000006ce: MSTORE
000006cf: PUSH1 0x20
000006d1: ADD
000006d2: SWAP2
000006d3: POP
000006d4: DUP1
000006d5: MLOAD
000006d6: SWAP1
000006d7: PUSH1 0x20
000006d9: ADD
000006da: SWAP1
000006db: DUP1
000006dc: DUP4
000006dd: DUP4
000006de: DUP3
000006df: SWAP1
000006e0: PUSH1 0x00
000006e2: PUSH1 0x04
000006e4: PUSH1 0x20
000006e6: DUP5
000006e7: PUSH1 0x1f
000006e9: ADD
000006ea: DIV
000006eb: PUSH1 0x0f
000006ed: MUL
000006ee: PUSH1 0x03
000006f0: ADD
000006f1: CALL
000006f2: POP
000006f3: SWAP1
000006f4: POP
000006f5: SWAP1
000006f6: DUP2
000006f7: ADD
000006f8: SWAP1
000006f9: PUSH1 0x1f
000006fb: AND
000006fc: DUP1
000006fd: ISZERO
000006fe: PUSH2 0x071b
00000701: JUMPI
00000702: DUP1
00000703: DUP3
00000704: SUB
00000705: DUP1
00000706: MLOAD
00000707: PUSH1 0x01
00000709: DUP4
0000070a: PUSH1 0x20
0000070c: SUB
0000070d: PUSH2 0x0100
00000710: EXP
00000711: SUB
00000712: NOT
00000713: AND
00000714: DUP2
00000715: MSTORE
00000716: PUSH1 0x20
00000718: ADD
00000719: SWAP2
0000071a: POP
0000071b: JUMPDEST
0000071c: POP
0000071d: SWAP4
0000071e: POP
0000071f: POP
00000720: POP
00000721: POP
00000722: PUSH1 0x40
00000724: MLOAD
00000725: DUP1
00000726: SWAP2
00000727: SUB
00000728: SWAP1
00000729: LOG1
0000072a: POP
0000072b: JUMPDEST
0000072c: POP
0000072d: JUMP
0000072e: JUMPDEST
0000072f: JUMPDEST
00000730: JUMP
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
medium other detector Untrusted CALL target/value reachable 45 no no
view
trace_id: 0x6e676bdbd94f80de1c0592caa759dc4cf3267d0c8a5d49ba9f50b860ce0b8fa2
call_targets: 0x90a5c5bccccc9358766b2be66bddae9e5c7d7ae3
target_varies: no
classification: constant_target
validation_json
{
    "sink": "CALL",
    "errors": 0,
    "status": "sink_reached",
    "attempts": 1,
    "trace_id": "0x6e676bdbd94f80de1c0592caa759dc4cf3267d0c8a5d49ba9f50b860ce0b8fa2",
    "confirmed": false,
    "trace_mode": "callTracer",
    "call_targets": [
        "0x90a5c5bccccc9358766b2be66bddae9e5c7d7ae3"
    ],
    "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": "0x23261794",
            "selector": "0x23261794",
            "calldata_variants": [
                "0x23261794",
                "0x232617940000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x49e79bcb",
            "selector": "0x49e79bcb",
            "calldata_variants": [
                "0x49e79bcb",
                "0x49e79bcb0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x7c98fabc",
            "selector": "0x7c98fabc",
            "calldata_variants": [
                "0x7c98fabc",
                "0x7c98fabc0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xb60d4288",
            "selector": "0xb60d4288",
            "calldata_variants": [
                "0xb60d4288",
                "0xb60d42880000000000000000000000000000000000000000000000000000000000000000"
            ]
        }
    ]
}
evidence_json
{
    "examples": [
        {
            "pc": 297,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        },
        {
            "pc": 683,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        },
        {
            "pc": 1499,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        }
    ],
    "call_count": 4,
    "guards_detected": [
        {
            "pc": 200,
            "type": "msg_sender_eq_const",
            "value": "0xffffffffffffffffffffffffffffffffffffffff"
        },
        {
            "pc": 1187,
            "type": "msg_sender_eq_const",
            "value": "0xffffffffffffffffffffffffffffffffffffffff"
        }
    ],
    "untrusted_call_count": 4
}
medium other detector ETH value transfer possible 40 no no
view
trace_id: 0x6e676bdbd94f80de1c0592caa759dc4cf3267d0c8a5d49ba9f50b860ce0b8fa2
call_targets: 0x90a5c5bccccc9358766b2be66bddae9e5c7d7ae3
target_varies: no
classification: constant_target
validation_json
{
    "sink": "CALL",
    "errors": 0,
    "status": "sink_reached",
    "attempts": 1,
    "trace_id": "0x6e676bdbd94f80de1c0592caa759dc4cf3267d0c8a5d49ba9f50b860ce0b8fa2",
    "confirmed": false,
    "trace_mode": "callTracer",
    "call_targets": [
        "0x90a5c5bccccc9358766b2be66bddae9e5c7d7ae3"
    ],
    "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": "0x23261794",
            "selector": "0x23261794",
            "calldata_variants": [
                "0x23261794",
                "0x232617940000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x49e79bcb",
            "selector": "0x49e79bcb",
            "calldata_variants": [
                "0x49e79bcb",
                "0x49e79bcb0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x7c98fabc",
            "selector": "0x7c98fabc",
            "calldata_variants": [
                "0x7c98fabc",
                "0x7c98fabc0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xb60d4288",
            "selector": "0xb60d4288",
            "calldata_variants": [
                "0xb60d4288",
                "0xb60d42880000000000000000000000000000000000000000000000000000000000000000"
            ]
        }
    ]
}
evidence_json
{
    "examples": [
        {
            "pc": 297,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        },
        {
            "pc": 683,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        },
        {
            "pc": 1499,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        }
    ],
    "eth_value_calls": 4,
    "guards_detected": [
        {
            "pc": 200,
            "type": "msg_sender_eq_const",
            "value": "0xffffffffffffffffffffffffffffffffffffffff"
        },
        {
            "pc": 1187,
            "type": "msg_sender_eq_const",
            "value": "0xffffffffffffffffffffffffffffffffffffffff"
        }
    ]
}