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

Analysis Run

019b477e-c246-7345-85c0-ad9fd41db4c6

complete
Chain ID
1
Address
Block Number
Created
Mon, Dec 22, 2025 7:17 PM
Review Summary

What survived the funnel

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

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

Processing Jobs

Status & attempts
ID Type Status Attempts Heartbeat
25007 artifact.fetch complete 1 / 3 3 months ago
25008 tool.cast_disasm complete 1 / 3 3 months ago
68478 analysis.bundle complete 1 / 3 2 weeks ago
68479 capability.graph complete 1 / 3 2 weeks ago
68480 detector.run complete 1 / 3 2 weeks ago
68481 validation.fork complete 1 / 3 2 weeks ago

Artifact

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

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)
2
EXT*/BALANCE
1
Total opcodes
1287
Flags
No heuristic flags raised.
View cast disassembly output
00000000: PUSH1 0x80
00000002: PUSH1 0x40
00000004: MSTORE
00000005: PUSH1 0x04
00000007: CALLDATASIZE
00000008: LT
00000009: PUSH2 0x0043
0000000c: JUMPI
0000000d: PUSH1 0x00
0000000f: CALLDATALOAD
00000010: PUSH1 0xe0
00000012: SHR
00000013: DUP1
00000014: PUSH4 0x715018a6
00000019: EQ
0000001a: PUSH2 0x004f
0000001d: JUMPI
0000001e: DUP1
0000001f: PUSH4 0x8da5cb5b
00000024: EQ
00000025: PUSH2 0x0066
00000028: JUMPI
00000029: DUP1
0000002a: PUSH4 0xd9caed12
0000002f: EQ
00000030: PUSH2 0x00a7
00000033: JUMPI
00000034: DUP1
00000035: PUSH4 0xf2fde38b
0000003a: EQ
0000003b: PUSH2 0x0122
0000003e: JUMPI
0000003f: PUSH2 0x004a
00000042: JUMP
00000043: JUMPDEST
00000044: CALLDATASIZE
00000045: PUSH2 0x004a
00000048: JUMPI
00000049: STOP
0000004a: JUMPDEST
0000004b: PUSH1 0x00
0000004d: DUP1
0000004e: REVERT
0000004f: JUMPDEST
00000050: CALLVALUE
00000051: DUP1
00000052: ISZERO
00000053: PUSH2 0x005b
00000056: JUMPI
00000057: PUSH1 0x00
00000059: DUP1
0000005a: REVERT
0000005b: JUMPDEST
0000005c: POP
0000005d: PUSH2 0x0064
00000060: PUSH2 0x0173
00000063: JUMP
00000064: JUMPDEST
00000065: STOP
00000066: JUMPDEST
00000067: CALLVALUE
00000068: DUP1
00000069: ISZERO
0000006a: PUSH2 0x0072
0000006d: JUMPI
0000006e: PUSH1 0x00
00000070: DUP1
00000071: REVERT
00000072: JUMPDEST
00000073: POP
00000074: PUSH2 0x007b
00000077: PUSH2 0x02f9
0000007a: JUMP
0000007b: JUMPDEST
0000007c: PUSH1 0x40
0000007e: MLOAD
0000007f: DUP1
00000080: DUP3
00000081: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000096: AND
00000097: DUP2
00000098: MSTORE
00000099: PUSH1 0x20
0000009b: ADD
0000009c: SWAP2
0000009d: POP
0000009e: POP
0000009f: PUSH1 0x40
000000a1: MLOAD
000000a2: DUP1
000000a3: SWAP2
000000a4: SUB
000000a5: SWAP1
000000a6: RETURN
000000a7: JUMPDEST
000000a8: CALLVALUE
000000a9: DUP1
000000aa: ISZERO
000000ab: PUSH2 0x00b3
000000ae: JUMPI
000000af: PUSH1 0x00
000000b1: DUP1
000000b2: REVERT
000000b3: JUMPDEST
000000b4: POP
000000b5: PUSH2 0x0120
000000b8: PUSH1 0x04
000000ba: DUP1
000000bb: CALLDATASIZE
000000bc: SUB
000000bd: PUSH1 0x60
000000bf: DUP2
000000c0: LT
000000c1: ISZERO
000000c2: PUSH2 0x00ca
000000c5: JUMPI
000000c6: PUSH1 0x00
000000c8: DUP1
000000c9: REVERT
000000ca: JUMPDEST
000000cb: DUP2
000000cc: ADD
000000cd: SWAP1
000000ce: DUP1
000000cf: DUP1
000000d0: CALLDATALOAD
000000d1: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000000e6: AND
000000e7: SWAP1
000000e8: PUSH1 0x20
000000ea: ADD
000000eb: SWAP1
000000ec: SWAP3
000000ed: SWAP2
000000ee: SWAP1
000000ef: DUP1
000000f0: CALLDATALOAD
000000f1: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000106: AND
00000107: SWAP1
00000108: PUSH1 0x20
0000010a: ADD
0000010b: SWAP1
0000010c: SWAP3
0000010d: SWAP2
0000010e: SWAP1
0000010f: DUP1
00000110: CALLDATALOAD
00000111: SWAP1
00000112: PUSH1 0x20
00000114: ADD
00000115: SWAP1
00000116: SWAP3
00000117: SWAP2
00000118: SWAP1
00000119: POP
0000011a: POP
0000011b: POP
0000011c: PUSH2 0x0322
0000011f: JUMP
00000120: JUMPDEST
00000121: STOP
00000122: JUMPDEST
00000123: CALLVALUE
00000124: DUP1
00000125: ISZERO
00000126: PUSH2 0x012e
00000129: JUMPI
0000012a: PUSH1 0x00
0000012c: DUP1
0000012d: REVERT
0000012e: JUMPDEST
0000012f: POP
00000130: PUSH2 0x0171
00000133: PUSH1 0x04
00000135: DUP1
00000136: CALLDATASIZE
00000137: SUB
00000138: PUSH1 0x20
0000013a: DUP2
0000013b: LT
0000013c: ISZERO
0000013d: PUSH2 0x0145
00000140: JUMPI
00000141: PUSH1 0x00
00000143: DUP1
00000144: REVERT
00000145: JUMPDEST
00000146: DUP2
00000147: ADD
00000148: SWAP1
00000149: DUP1
0000014a: DUP1
0000014b: CALLDATALOAD
0000014c: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000161: AND
00000162: SWAP1
00000163: PUSH1 0x20
00000165: ADD
00000166: SWAP1
00000167: SWAP3
00000168: SWAP2
00000169: SWAP1
0000016a: POP
0000016b: POP
0000016c: POP
0000016d: PUSH2 0x049c
00000170: JUMP
00000171: JUMPDEST
00000172: STOP
00000173: JUMPDEST
00000174: PUSH2 0x017b
00000177: PUSH2 0x06a7
0000017a: JUMP
0000017b: JUMPDEST
0000017c: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000191: AND
00000192: PUSH1 0x00
00000194: DUP1
00000195: SLOAD
00000196: SWAP1
00000197: PUSH2 0x0100
0000019a: EXP
0000019b: SWAP1
0000019c: DIV
0000019d: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000001b2: AND
000001b3: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000001c8: AND
000001c9: EQ
000001ca: PUSH2 0x023b
000001cd: JUMPI
000001ce: PUSH1 0x40
000001d0: MLOAD
000001d1: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000
000001f2: DUP2
000001f3: MSTORE
000001f4: PUSH1 0x04
000001f6: ADD
000001f7: DUP1
000001f8: DUP1
000001f9: PUSH1 0x20
000001fb: ADD
000001fc: DUP3
000001fd: DUP2
000001fe: SUB
000001ff: DUP3
00000200: MSTORE
00000201: PUSH1 0x20
00000203: DUP2
00000204: MSTORE
00000205: PUSH1 0x20
00000207: ADD
00000208: DUP1
00000209: PUSH32 0x4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572
0000022a: DUP2
0000022b: MSTORE
0000022c: POP
0000022d: PUSH1 0x20
0000022f: ADD
00000230: SWAP2
00000231: POP
00000232: POP
00000233: PUSH1 0x40
00000235: MLOAD
00000236: DUP1
00000237: SWAP2
00000238: SUB
00000239: SWAP1
0000023a: REVERT
0000023b: JUMPDEST
0000023c: PUSH1 0x00
0000023e: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000253: AND
00000254: PUSH1 0x00
00000256: DUP1
00000257: SLOAD
00000258: SWAP1
00000259: PUSH2 0x0100
0000025c: EXP
0000025d: SWAP1
0000025e: DIV
0000025f: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000274: AND
00000275: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
0000028a: AND
0000028b: PUSH32 0x8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0
000002ac: PUSH1 0x40
000002ae: MLOAD
000002af: PUSH1 0x40
000002b1: MLOAD
000002b2: DUP1
000002b3: SWAP2
000002b4: SUB
000002b5: SWAP1
000002b6: LOG3
000002b7: PUSH1 0x00
000002b9: DUP1
000002ba: PUSH1 0x00
000002bc: PUSH2 0x0100
000002bf: EXP
000002c0: DUP2
000002c1: SLOAD
000002c2: DUP2
000002c3: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000002d8: MUL
000002d9: NOT
000002da: AND
000002db: SWAP1
000002dc: DUP4
000002dd: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000002f2: AND
000002f3: MUL
000002f4: OR
000002f5: SWAP1
000002f6: SSTORE
000002f7: POP
000002f8: JUMP
000002f9: JUMPDEST
000002fa: PUSH1 0x00
000002fc: DUP1
000002fd: PUSH1 0x00
000002ff: SWAP1
00000300: SLOAD
00000301: SWAP1
00000302: PUSH2 0x0100
00000305: EXP
00000306: SWAP1
00000307: DIV
00000308: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
0000031d: AND
0000031e: SWAP1
0000031f: POP
00000320: SWAP1
00000321: JUMP
00000322: JUMPDEST
00000323: PUSH2 0x032a
00000326: PUSH2 0x06a7
00000329: JUMP
0000032a: JUMPDEST
0000032b: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000340: AND
00000341: PUSH1 0x00
00000343: DUP1
00000344: SLOAD
00000345: SWAP1
00000346: PUSH2 0x0100
00000349: EXP
0000034a: SWAP1
0000034b: DIV
0000034c: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000361: AND
00000362: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000377: AND
00000378: EQ
00000379: PUSH2 0x03ea
0000037c: JUMPI
0000037d: PUSH1 0x40
0000037f: MLOAD
00000380: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000
000003a1: DUP2
000003a2: MSTORE
000003a3: PUSH1 0x04
000003a5: ADD
000003a6: DUP1
000003a7: DUP1
000003a8: PUSH1 0x20
000003aa: ADD
000003ab: DUP3
000003ac: DUP2
000003ad: SUB
000003ae: DUP3
000003af: MSTORE
000003b0: PUSH1 0x20
000003b2: DUP2
000003b3: MSTORE
000003b4: PUSH1 0x20
000003b6: ADD
000003b7: DUP1
000003b8: PUSH32 0x4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572
000003d9: DUP2
000003da: MSTORE
000003db: POP
000003dc: PUSH1 0x20
000003de: ADD
000003df: SWAP2
000003e0: POP
000003e1: POP
000003e2: PUSH1 0x40
000003e4: MLOAD
000003e5: DUP1
000003e6: SWAP2
000003e7: SUB
000003e8: SWAP1
000003e9: REVERT
000003ea: JUMPDEST
000003eb: PUSH1 0x00
000003ed: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000402: AND
00000403: DUP4
00000404: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000419: AND
0000041a: EQ
0000041b: ISZERO
0000041c: PUSH2 0x046b
0000041f: JUMPI
00000420: DUP2
00000421: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000436: AND
00000437: PUSH2 0x08fc
0000043a: DUP3
0000043b: SWAP1
0000043c: DUP2
0000043d: ISZERO
0000043e: MUL
0000043f: SWAP1
00000440: PUSH1 0x40
00000442: MLOAD
00000443: PUSH1 0x00
00000445: PUSH1 0x40
00000447: MLOAD
00000448: DUP1
00000449: DUP4
0000044a: SUB
0000044b: DUP2
0000044c: DUP6
0000044d: DUP9
0000044e: DUP9
0000044f: CALL
00000450: SWAP4
00000451: POP
00000452: POP
00000453: POP
00000454: POP
00000455: ISZERO
00000456: DUP1
00000457: ISZERO
00000458: PUSH2 0x0465
0000045b: JUMPI
0000045c: RETURNDATASIZE
0000045d: PUSH1 0x00
0000045f: DUP1
00000460: RETURNDATACOPY
00000461: RETURNDATASIZE
00000462: PUSH1 0x00
00000464: REVERT
00000465: JUMPDEST
00000466: POP
00000467: PUSH2 0x0497
0000046a: JUMP
0000046b: JUMPDEST
0000046c: PUSH2 0x0496
0000046f: DUP3
00000470: DUP3
00000471: DUP6
00000472: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000487: AND
00000488: PUSH2 0x06af
0000048b: SWAP1
0000048c: SWAP3
0000048d: SWAP2
0000048e: SWAP1
0000048f: PUSH4 0xffffffff
00000494: AND
00000495: JUMP
00000496: JUMPDEST
00000497: JUMPDEST
00000498: POP
00000499: POP
0000049a: POP
0000049b: JUMP
0000049c: JUMPDEST
0000049d: PUSH2 0x04a4
000004a0: PUSH2 0x06a7
000004a3: JUMP
000004a4: JUMPDEST
000004a5: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000004ba: AND
000004bb: PUSH1 0x00
000004bd: DUP1
000004be: SLOAD
000004bf: SWAP1
000004c0: PUSH2 0x0100
000004c3: EXP
000004c4: SWAP1
000004c5: DIV
000004c6: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000004db: AND
000004dc: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000004f1: AND
000004f2: EQ
000004f3: PUSH2 0x0564
000004f6: JUMPI
000004f7: PUSH1 0x40
000004f9: MLOAD
000004fa: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000
0000051b: DUP2
0000051c: MSTORE
0000051d: PUSH1 0x04
0000051f: ADD
00000520: DUP1
00000521: DUP1
00000522: PUSH1 0x20
00000524: ADD
00000525: DUP3
00000526: DUP2
00000527: SUB
00000528: DUP3
00000529: MSTORE
0000052a: PUSH1 0x20
0000052c: DUP2
0000052d: MSTORE
0000052e: PUSH1 0x20
00000530: ADD
00000531: DUP1
00000532: PUSH32 0x4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572
00000553: DUP2
00000554: MSTORE
00000555: POP
00000556: PUSH1 0x20
00000558: ADD
00000559: SWAP2
0000055a: POP
0000055b: POP
0000055c: PUSH1 0x40
0000055e: MLOAD
0000055f: DUP1
00000560: SWAP2
00000561: SUB
00000562: SWAP1
00000563: REVERT
00000564: JUMPDEST
00000565: PUSH1 0x00
00000567: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
0000057c: AND
0000057d: DUP2
0000057e: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000593: AND
00000594: EQ
00000595: ISZERO
00000596: PUSH2 0x05ea
00000599: JUMPI
0000059a: PUSH1 0x40
0000059c: MLOAD
0000059d: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000
000005be: DUP2
000005bf: MSTORE
000005c0: PUSH1 0x04
000005c2: ADD
000005c3: DUP1
000005c4: DUP1
000005c5: PUSH1 0x20
000005c7: ADD
000005c8: DUP3
000005c9: DUP2
000005ca: SUB
000005cb: DUP3
000005cc: MSTORE
000005cd: PUSH1 0x26
000005cf: DUP2
000005d0: MSTORE
000005d1: PUSH1 0x20
000005d3: ADD
000005d4: DUP1
000005d5: PUSH2 0x0ae1
000005d8: PUSH1 0x26
000005da: SWAP2
000005db: CODECOPY
000005dc: PUSH1 0x40
000005de: ADD
000005df: SWAP2
000005e0: POP
000005e1: POP
000005e2: PUSH1 0x40
000005e4: MLOAD
000005e5: DUP1
000005e6: SWAP2
000005e7: SUB
000005e8: SWAP1
000005e9: REVERT
000005ea: JUMPDEST
000005eb: DUP1
000005ec: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000601: AND
00000602: PUSH1 0x00
00000604: DUP1
00000605: SLOAD
00000606: SWAP1
00000607: PUSH2 0x0100
0000060a: EXP
0000060b: SWAP1
0000060c: DIV
0000060d: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000622: AND
00000623: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000638: AND
00000639: PUSH32 0x8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0
0000065a: PUSH1 0x40
0000065c: MLOAD
0000065d: PUSH1 0x40
0000065f: MLOAD
00000660: DUP1
00000661: SWAP2
00000662: SUB
00000663: SWAP1
00000664: LOG3
00000665: DUP1
00000666: PUSH1 0x00
00000668: DUP1
00000669: PUSH2 0x0100
0000066c: EXP
0000066d: DUP2
0000066e: SLOAD
0000066f: DUP2
00000670: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000685: MUL
00000686: NOT
00000687: AND
00000688: SWAP1
00000689: DUP4
0000068a: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
0000069f: AND
000006a0: MUL
000006a1: OR
000006a2: SWAP1
000006a3: SSTORE
000006a4: POP
000006a5: POP
000006a6: JUMP
000006a7: JUMPDEST
000006a8: PUSH1 0x00
000006aa: CALLER
000006ab: SWAP1
000006ac: POP
000006ad: SWAP1
000006ae: JUMP
000006af: JUMPDEST
000006b0: PUSH2 0x074c
000006b3: DUP4
000006b4: PUSH4 0xa9059cbb
000006b9: PUSH1 0xe0
000006bb: SHL
000006bc: DUP5
000006bd: DUP5
000006be: PUSH1 0x40
000006c0: MLOAD
000006c1: PUSH1 0x24
000006c3: ADD
000006c4: DUP1
000006c5: DUP4
000006c6: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000006db: AND
000006dc: DUP2
000006dd: MSTORE
000006de: PUSH1 0x20
000006e0: ADD
000006e1: DUP3
000006e2: DUP2
000006e3: MSTORE
000006e4: PUSH1 0x20
000006e6: ADD
000006e7: SWAP3
000006e8: POP
000006e9: POP
000006ea: POP
000006eb: PUSH1 0x40
000006ed: MLOAD
000006ee: PUSH1 0x20
000006f0: DUP2
000006f1: DUP4
000006f2: SUB
000006f3: SUB
000006f4: DUP2
000006f5: MSTORE
000006f6: SWAP1
000006f7: PUSH1 0x40
000006f9: MSTORE
000006fa: SWAP1
000006fb: PUSH28 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffff
00000718: NOT
00000719: AND
0000071a: PUSH1 0x20
0000071c: DUP3
0000071d: ADD
0000071e: DUP1
0000071f: MLOAD
00000720: PUSH28 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffff
0000073d: DUP4
0000073e: DUP2
0000073f: DUP4
00000740: AND
00000741: OR
00000742: DUP4
00000743: MSTORE
00000744: POP
00000745: POP
00000746: POP
00000747: POP
00000748: PUSH2 0x0751
0000074b: JUMP
0000074c: JUMPDEST
0000074d: POP
0000074e: POP
0000074f: POP
00000750: JUMP
00000751: JUMPDEST
00000752: PUSH1 0x60
00000754: PUSH2 0x07b3
00000757: DUP3
00000758: PUSH1 0x40
0000075a: MLOAD
0000075b: DUP1
0000075c: PUSH1 0x40
0000075e: ADD
0000075f: PUSH1 0x40
00000761: MSTORE
00000762: DUP1
00000763: PUSH1 0x20
00000765: DUP2
00000766: MSTORE
00000767: PUSH1 0x20
00000769: ADD
0000076a: PUSH32 0x5361666545524332303a206c6f772d6c6576656c2063616c6c206661696c6564
0000078b: DUP2
0000078c: MSTORE
0000078d: POP
0000078e: DUP6
0000078f: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000007a4: AND
000007a5: PUSH2 0x0840
000007a8: SWAP1
000007a9: SWAP3
000007aa: SWAP2
000007ab: SWAP1
000007ac: PUSH4 0xffffffff
000007b1: AND
000007b2: JUMP
000007b3: JUMPDEST
000007b4: SWAP1
000007b5: POP
000007b6: PUSH1 0x00
000007b8: DUP2
000007b9: MLOAD
000007ba: GT
000007bb: ISZERO
000007bc: PUSH2 0x083b
000007bf: JUMPI
000007c0: DUP1
000007c1: DUP1
000007c2: PUSH1 0x20
000007c4: ADD
000007c5: SWAP1
000007c6: MLOAD
000007c7: PUSH1 0x20
000007c9: DUP2
000007ca: LT
000007cb: ISZERO
000007cc: PUSH2 0x07d4
000007cf: JUMPI
000007d0: PUSH1 0x00
000007d2: DUP1
000007d3: REVERT
000007d4: JUMPDEST
000007d5: DUP2
000007d6: ADD
000007d7: SWAP1
000007d8: DUP1
000007d9: DUP1
000007da: MLOAD
000007db: SWAP1
000007dc: PUSH1 0x20
000007de: ADD
000007df: SWAP1
000007e0: SWAP3
000007e1: SWAP2
000007e2: SWAP1
000007e3: POP
000007e4: POP
000007e5: POP
000007e6: PUSH2 0x083a
000007e9: JUMPI
000007ea: PUSH1 0x40
000007ec: MLOAD
000007ed: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000
0000080e: DUP2
0000080f: MSTORE
00000810: PUSH1 0x04
00000812: ADD
00000813: DUP1
00000814: DUP1
00000815: PUSH1 0x20
00000817: ADD
00000818: DUP3
00000819: DUP2
0000081a: SUB
0000081b: DUP3
0000081c: MSTORE
0000081d: PUSH1 0x2a
0000081f: DUP2
00000820: MSTORE
00000821: PUSH1 0x20
00000823: ADD
00000824: DUP1
00000825: PUSH2 0x0b2d
00000828: PUSH1 0x2a
0000082a: SWAP2
0000082b: CODECOPY
0000082c: PUSH1 0x40
0000082e: ADD
0000082f: SWAP2
00000830: POP
00000831: POP
00000832: PUSH1 0x40
00000834: MLOAD
00000835: DUP1
00000836: SWAP2
00000837: SUB
00000838: SWAP1
00000839: REVERT
0000083a: JUMPDEST
0000083b: JUMPDEST
0000083c: POP
0000083d: POP
0000083e: POP
0000083f: JUMP
00000840: JUMPDEST
00000841: PUSH1 0x60
00000843: PUSH2 0x084f
00000846: DUP5
00000847: DUP5
00000848: PUSH1 0x00
0000084a: DUP6
0000084b: PUSH2 0x0858
0000084e: JUMP
0000084f: JUMPDEST
00000850: SWAP1
00000851: POP
00000852: SWAP4
00000853: SWAP3
00000854: POP
00000855: POP
00000856: POP
00000857: JUMP
00000858: JUMPDEST
00000859: PUSH1 0x60
0000085b: DUP3
0000085c: SELFBALANCE
0000085d: LT
0000085e: ISZERO
0000085f: PUSH2 0x08b3
00000862: JUMPI
00000863: PUSH1 0x40
00000865: MLOAD
00000866: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000
00000887: DUP2
00000888: MSTORE
00000889: PUSH1 0x04
0000088b: ADD
0000088c: DUP1
0000088d: DUP1
0000088e: PUSH1 0x20
00000890: ADD
00000891: DUP3
00000892: DUP2
00000893: SUB
00000894: DUP3
00000895: MSTORE
00000896: PUSH1 0x26
00000898: DUP2
00000899: MSTORE
0000089a: PUSH1 0x20
0000089c: ADD
0000089d: DUP1
0000089e: PUSH2 0x0b07
000008a1: PUSH1 0x26
000008a3: SWAP2
000008a4: CODECOPY
000008a5: PUSH1 0x40
000008a7: ADD
000008a8: SWAP2
000008a9: POP
000008aa: POP
000008ab: PUSH1 0x40
000008ad: MLOAD
000008ae: DUP1
000008af: SWAP2
000008b0: SUB
000008b1: SWAP1
000008b2: REVERT
000008b3: JUMPDEST
000008b4: PUSH2 0x08bc
000008b7: DUP6
000008b8: PUSH2 0x0a01
000008bb: JUMP
000008bc: JUMPDEST
000008bd: PUSH2 0x092e
000008c0: JUMPI
000008c1: PUSH1 0x40
000008c3: MLOAD
000008c4: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000
000008e5: DUP2
000008e6: MSTORE
000008e7: PUSH1 0x04
000008e9: ADD
000008ea: DUP1
000008eb: DUP1
000008ec: PUSH1 0x20
000008ee: ADD
000008ef: DUP3
000008f0: DUP2
000008f1: SUB
000008f2: DUP3
000008f3: MSTORE
000008f4: PUSH1 0x1d
000008f6: DUP2
000008f7: MSTORE
000008f8: PUSH1 0x20
000008fa: ADD
000008fb: DUP1
000008fc: PUSH32 0x416464726573733a2063616c6c20746f206e6f6e2d636f6e7472616374000000
0000091d: DUP2
0000091e: MSTORE
0000091f: POP
00000920: PUSH1 0x20
00000922: ADD
00000923: SWAP2
00000924: POP
00000925: POP
00000926: PUSH1 0x40
00000928: MLOAD
00000929: DUP1
0000092a: SWAP2
0000092b: SUB
0000092c: SWAP1
0000092d: REVERT
0000092e: JUMPDEST
0000092f: PUSH1 0x00
00000931: PUSH1 0x60
00000933: DUP7
00000934: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000949: AND
0000094a: DUP6
0000094b: DUP8
0000094c: PUSH1 0x40
0000094e: MLOAD
0000094f: DUP1
00000950: DUP3
00000951: DUP1
00000952: MLOAD
00000953: SWAP1
00000954: PUSH1 0x20
00000956: ADD
00000957: SWAP1
00000958: DUP1
00000959: DUP4
0000095a: DUP4
0000095b: JUMPDEST
0000095c: PUSH1 0x20
0000095e: DUP4
0000095f: LT
00000960: PUSH2 0x097e
00000963: JUMPI
00000964: DUP1
00000965: MLOAD
00000966: DUP3
00000967: MSTORE
00000968: PUSH1 0x20
0000096a: DUP3
0000096b: ADD
0000096c: SWAP2
0000096d: POP
0000096e: PUSH1 0x20
00000970: DUP2
00000971: ADD
00000972: SWAP1
00000973: POP
00000974: PUSH1 0x20
00000976: DUP4
00000977: SUB
00000978: SWAP3
00000979: POP
0000097a: PUSH2 0x095b
0000097d: JUMP
0000097e: JUMPDEST
0000097f: PUSH1 0x01
00000981: DUP4
00000982: PUSH1 0x20
00000984: SUB
00000985: PUSH2 0x0100
00000988: EXP
00000989: SUB
0000098a: DUP1
0000098b: NOT
0000098c: DUP3
0000098d: MLOAD
0000098e: AND
0000098f: DUP2
00000990: DUP5
00000991: MLOAD
00000992: AND
00000993: DUP1
00000994: DUP3
00000995: OR
00000996: DUP6
00000997: MSTORE
00000998: POP
00000999: POP
0000099a: POP
0000099b: POP
0000099c: POP
0000099d: POP
0000099e: SWAP1
0000099f: POP
000009a0: ADD
000009a1: SWAP2
000009a2: POP
000009a3: POP
000009a4: PUSH1 0x00
000009a6: PUSH1 0x40
000009a8: MLOAD
000009a9: DUP1
000009aa: DUP4
000009ab: SUB
000009ac: DUP2
000009ad: DUP6
000009ae: DUP8
000009af: GAS
000009b0: CALL
000009b1: SWAP3
000009b2: POP
000009b3: POP
000009b4: POP
000009b5: RETURNDATASIZE
000009b6: DUP1
000009b7: PUSH1 0x00
000009b9: DUP2
000009ba: EQ
000009bb: PUSH2 0x09e0
000009be: JUMPI
000009bf: PUSH1 0x40
000009c1: MLOAD
000009c2: SWAP2
000009c3: POP
000009c4: PUSH1 0x1f
000009c6: NOT
000009c7: PUSH1 0x3f
000009c9: RETURNDATASIZE
000009ca: ADD
000009cb: AND
000009cc: DUP3
000009cd: ADD
000009ce: PUSH1 0x40
000009d0: MSTORE
000009d1: RETURNDATASIZE
000009d2: DUP3
000009d3: MSTORE
000009d4: RETURNDATASIZE
000009d5: PUSH1 0x00
000009d7: PUSH1 0x20
000009d9: DUP5
000009da: ADD
000009db: RETURNDATACOPY
000009dc: PUSH2 0x09e5
000009df: JUMP
000009e0: JUMPDEST
000009e1: PUSH1 0x60
000009e3: SWAP2
000009e4: POP
000009e5: JUMPDEST
000009e6: POP
000009e7: SWAP2
000009e8: POP
000009e9: SWAP2
000009ea: POP
000009eb: PUSH2 0x09f5
000009ee: DUP3
000009ef: DUP3
000009f0: DUP7
000009f1: PUSH2 0x0a14
000009f4: JUMP
000009f5: JUMPDEST
000009f6: SWAP3
000009f7: POP
000009f8: POP
000009f9: POP
000009fa: SWAP5
000009fb: SWAP4
000009fc: POP
000009fd: POP
000009fe: POP
000009ff: POP
00000a00: JUMP
00000a01: JUMPDEST
00000a02: PUSH1 0x00
00000a04: DUP1
00000a05: DUP3
00000a06: EXTCODESIZE
00000a07: SWAP1
00000a08: POP
00000a09: PUSH1 0x00
00000a0b: DUP2
00000a0c: GT
00000a0d: SWAP2
00000a0e: POP
00000a0f: POP
00000a10: SWAP2
00000a11: SWAP1
00000a12: POP
00000a13: JUMP
00000a14: JUMPDEST
00000a15: PUSH1 0x60
00000a17: DUP4
00000a18: ISZERO
00000a19: PUSH2 0x0a24
00000a1c: JUMPI
00000a1d: DUP3
00000a1e: SWAP1
00000a1f: POP
00000a20: PUSH2 0x0ad9
00000a23: JUMP
00000a24: JUMPDEST
00000a25: PUSH1 0x00
00000a27: DUP4
00000a28: MLOAD
00000a29: GT
00000a2a: ISZERO
00000a2b: PUSH2 0x0a37
00000a2e: JUMPI
00000a2f: DUP3
00000a30: MLOAD
00000a31: DUP1
00000a32: DUP5
00000a33: PUSH1 0x20
00000a35: ADD
00000a36: REVERT
00000a37: JUMPDEST
00000a38: DUP2
00000a39: PUSH1 0x40
00000a3b: MLOAD
00000a3c: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000
00000a5d: DUP2
00000a5e: MSTORE
00000a5f: PUSH1 0x04
00000a61: ADD
00000a62: DUP1
00000a63: DUP1
00000a64: PUSH1 0x20
00000a66: ADD
00000a67: DUP3
00000a68: DUP2
00000a69: SUB
00000a6a: DUP3
00000a6b: MSTORE
00000a6c: DUP4
00000a6d: DUP2
00000a6e: DUP2
00000a6f: MLOAD
00000a70: DUP2
00000a71: MSTORE
00000a72: PUSH1 0x20
00000a74: ADD
00000a75: SWAP2
00000a76: POP
00000a77: DUP1
00000a78: MLOAD
00000a79: SWAP1
00000a7a: PUSH1 0x20
00000a7c: ADD
00000a7d: SWAP1
00000a7e: DUP1
00000a7f: DUP4
00000a80: DUP4
00000a81: PUSH1 0x00
00000a83: JUMPDEST
00000a84: DUP4
00000a85: DUP2
00000a86: LT
00000a87: ISZERO
00000a88: PUSH2 0x0a9e
00000a8b: JUMPI
00000a8c: DUP1
00000a8d: DUP3
00000a8e: ADD
00000a8f: MLOAD
00000a90: DUP2
00000a91: DUP5
00000a92: ADD
00000a93: MSTORE
00000a94: PUSH1 0x20
00000a96: DUP2
00000a97: ADD
00000a98: SWAP1
00000a99: POP
00000a9a: PUSH2 0x0a83
00000a9d: JUMP
00000a9e: JUMPDEST
00000a9f: POP
00000aa0: POP
00000aa1: POP
00000aa2: POP
00000aa3: SWAP1
00000aa4: POP
00000aa5: SWAP1
00000aa6: DUP2
00000aa7: ADD
00000aa8: SWAP1
00000aa9: PUSH1 0x1f
00000aab: AND
00000aac: DUP1
00000aad: ISZERO
00000aae: PUSH2 0x0acb
00000ab1: JUMPI
00000ab2: DUP1
00000ab3: DUP3
00000ab4: SUB
00000ab5: DUP1
00000ab6: MLOAD
00000ab7: PUSH1 0x01
00000ab9: DUP4
00000aba: PUSH1 0x20
00000abc: SUB
00000abd: PUSH2 0x0100
00000ac0: EXP
00000ac1: SUB
00000ac2: NOT
00000ac3: AND
00000ac4: DUP2
00000ac5: MSTORE
00000ac6: PUSH1 0x20
00000ac8: ADD
00000ac9: SWAP2
00000aca: POP
00000acb: JUMPDEST
00000acc: POP
00000acd: SWAP3
00000ace: POP
00000acf: POP
00000ad0: POP
00000ad1: PUSH1 0x40
00000ad3: MLOAD
00000ad4: DUP1
00000ad5: SWAP2
00000ad6: SUB
00000ad7: SWAP1
00000ad8: REVERT
00000ad9: JUMPDEST
00000ada: SWAP4
00000adb: SWAP3
00000adc: POP
00000add: POP
00000ade: POP
00000adf: JUMP
00000ae0: INVALID
00000ae1: UNKNOWN(0x4F)
00000ae2: PUSH24 0x6e61626c653a206e6577206f776e65722069732074686520
00000afb: PUSH27 0x65726f2061646472657373416464726573733a20696e7375666669
00000b17: PUSH4 0x69656e74
00000b1c: KECCAK256
00000b1d: PUSH3 0x616c61
00000b21: PUSH15 0x636520666f722063616c6c53616665
00000b31: GASLIMIT
00000b32: MSTORE
00000b33: NUMBER
00000b34: ORIGIN
00000b35: ADDRESS
00000b36: GASPRICE
00000b37: KECCAK256
00000b38: GASLIMIT
00000b39: MSTORE
00000b3a: NUMBER
00000b3b: ORIGIN
00000b3c: ADDRESS
00000b3d: KECCAK256
00000b3e: PUSH16 0x7065726174696f6e20646964206e6f74
00000b4f: KECCAK256
00000b50: PUSH20 0x756363656564a2646970667358221220140a1e4a
00000b65: UNKNOWN(0xD2)
00000b66: CLZ
00000b67: PUSH9 0x21d732cd1bb9301fc0
00000b71: PC
00000b72: JUMP
00000b73: UNKNOWN(0xEA)
00000b74: UNKNOWN(0xBB)
00000b75: UNKNOWN(0x2E)
00000b76: UNKNOWN(0x2E)
00000b77: UNKNOWN(0x21)
00000b78: PUSH25

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": "0x715018a6",
            "selector": "0x715018a6",
            "calldata_variants": [
                "0x715018a6",
                "0x715018a60000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x8da5cb5b",
            "selector": "0x8da5cb5b",
            "calldata_variants": [
                "0x8da5cb5b",
                "0x8da5cb5b0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xd9caed12",
            "selector": "0xd9caed12",
            "calldata_variants": [
                "0xd9caed12",
                "0xd9caed120000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xf2fde38b",
            "selector": "0xf2fde38b",
            "calldata_variants": [
                "0xf2fde38b",
                "0xf2fde38b0000000000000000000000000000000000000000000000000000000000000000"
            ]
        }
    ]
}
evidence_json
{
    "guards_detected": [
        {
            "pc": 2868,
            "type": "tx_origin_used"
        },
        {
            "pc": 2875,
            "type": "tx_origin_used"
        }
    ]
}
medium other detector Untrusted CALL target/value reachable 45 no no
view
trace_id: 0x3a0ad043a0b43f3036e2c0bd76c4fbe2dc58acc926b006e9012f848e4a274e64
call_targets: 0x2fe2000660e1bf9bae5411dd42bbc8a46ac04903
target_varies: no
classification: constant_target
validation_json
{
    "sink": "CALL",
    "errors": 0,
    "status": "sink_reached",
    "attempts": 1,
    "trace_id": "0x3a0ad043a0b43f3036e2c0bd76c4fbe2dc58acc926b006e9012f848e4a274e64",
    "confirmed": false,
    "trace_mode": "callTracer",
    "call_targets": [
        "0x2fe2000660e1bf9bae5411dd42bbc8a46ac04903"
    ],
    "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": "0x715018a6",
            "selector": "0x715018a6",
            "calldata_variants": [
                "0x715018a6",
                "0x715018a60000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x8da5cb5b",
            "selector": "0x8da5cb5b",
            "calldata_variants": [
                "0x8da5cb5b",
                "0x8da5cb5b0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xd9caed12",
            "selector": "0xd9caed12",
            "calldata_variants": [
                "0xd9caed12",
                "0xd9caed120000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xf2fde38b",
            "selector": "0xf2fde38b",
            "calldata_variants": [
                "0xf2fde38b",
                "0xf2fde38b0000000000000000000000000000000000000000000000000000000000000000"
            ]
        }
    ]
}
evidence_json
{
    "examples": [
        {
            "pc": 1103,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        },
        {
            "pc": 2480,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        }
    ],
    "call_count": 2,
    "guards_detected": [
        {
            "pc": 2868,
            "type": "tx_origin_used"
        },
        {
            "pc": 2875,
            "type": "tx_origin_used"
        }
    ],
    "untrusted_call_count": 2
}
medium other detector ETH value transfer possible 40 no no
view
trace_id: 0x3a0ad043a0b43f3036e2c0bd76c4fbe2dc58acc926b006e9012f848e4a274e64
call_targets: 0x2fe2000660e1bf9bae5411dd42bbc8a46ac04903
target_varies: no
classification: constant_target
validation_json
{
    "sink": "CALL",
    "errors": 0,
    "status": "sink_reached",
    "attempts": 1,
    "trace_id": "0x3a0ad043a0b43f3036e2c0bd76c4fbe2dc58acc926b006e9012f848e4a274e64",
    "confirmed": false,
    "trace_mode": "callTracer",
    "call_targets": [
        "0x2fe2000660e1bf9bae5411dd42bbc8a46ac04903"
    ],
    "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": "0x715018a6",
            "selector": "0x715018a6",
            "calldata_variants": [
                "0x715018a6",
                "0x715018a60000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x8da5cb5b",
            "selector": "0x8da5cb5b",
            "calldata_variants": [
                "0x8da5cb5b",
                "0x8da5cb5b0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xd9caed12",
            "selector": "0xd9caed12",
            "calldata_variants": [
                "0xd9caed12",
                "0xd9caed120000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xf2fde38b",
            "selector": "0xf2fde38b",
            "calldata_variants": [
                "0xf2fde38b",
                "0xf2fde38b0000000000000000000000000000000000000000000000000000000000000000"
            ]
        }
    ]
}
evidence_json
{
    "examples": [
        {
            "pc": 1103,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        },
        {
            "pc": 2480,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        }
    ],
    "eth_value_calls": 2,
    "guards_detected": [
        {
            "pc": 2868,
            "type": "tx_origin_used"
        },
        {
            "pc": 2875,
            "type": "tx_origin_used"
        }
    ]
}