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

Analysis Run

019b477e-b294-70dd-a643-ae8b68eb44be

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
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
22377 artifact.fetch complete 1 / 3 3 months ago
22378 tool.cast_disasm complete 1 / 3 3 months ago
65722 analysis.bundle complete 1 / 3 2 weeks ago
65723 capability.graph complete 1 / 3 2 weeks ago
65724 detector.run complete 1 / 3 2 weeks ago
65725 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)
1
EXT*/BALANCE
2
Total opcodes
524
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 0x0061
0000000c: JUMPI
0000000d: PUSH4 0xffffffff
00000012: PUSH29 0x0100000000000000000000000000000000000000000000000000000000
00000030: PUSH1 0x00
00000032: CALLDATALOAD
00000033: DIV
00000034: AND
00000035: PUSH4 0x3a98ef39
0000003a: DUP2
0000003b: EQ
0000003c: PUSH2 0x016f
0000003f: JUMPI
00000040: DUP1
00000041: PUSH4 0x4dc244ed
00000046: EQ
00000047: PUSH2 0x0196
0000004a: JUMPI
0000004b: DUP1
0000004c: PUSH4 0x70a08231
00000051: EQ
00000052: PUSH2 0x01ab
00000055: JUMPI
00000056: DUP1
00000057: PUSH4 0xce7c2ac2
0000005c: EQ
0000005d: PUSH2 0x01d9
00000060: JUMPI
00000061: JUMPDEST
00000062: PUSH1 0x00
00000064: DUP1
00000065: CALLVALUE
00000066: GT
00000067: ISZERO
00000068: PUSH2 0x00fd
0000006b: JUMPI
0000006c: PUSH1 0x01
0000006e: SLOAD
0000006f: ISZERO
00000070: ISZERO
00000071: PUSH2 0x007b
00000074: JUMPI
00000075: POP
00000076: CALLVALUE
00000077: PUSH2 0x00b2
0000007a: JUMP
0000007b: JUMPDEST
0000007c: PUSH2 0x00af
0000007f: PUSH2 0x008f
00000082: ADDRESS
00000083: BALANCE
00000084: CALLVALUE
00000085: PUSH4 0xffffffff
0000008a: PUSH2 0x0207
0000008d: AND
0000008e: JUMP
0000008f: JUMPDEST
00000090: PUSH1 0x01
00000092: SLOAD
00000093: PUSH2 0x00a3
00000096: SWAP1
00000097: CALLVALUE
00000098: SWAP1
00000099: PUSH4 0xffffffff
0000009e: PUSH2 0x0225
000000a1: AND
000000a2: JUMP
000000a3: JUMPDEST
000000a4: SWAP1
000000a5: PUSH4 0xffffffff
000000aa: PUSH2 0x025a
000000ad: AND
000000ae: JUMP
000000af: JUMPDEST
000000b0: SWAP1
000000b1: POP
000000b2: JUMPDEST
000000b3: CALLER
000000b4: PUSH1 0x00
000000b6: SWAP1
000000b7: DUP2
000000b8: MSTORE
000000b9: PUSH1 0x20
000000bb: DUP2
000000bc: SWAP1
000000bd: MSTORE
000000be: PUSH1 0x40
000000c0: SWAP1
000000c1: KECCAK256
000000c2: SLOAD
000000c3: PUSH2 0x00d2
000000c6: SWAP1
000000c7: DUP3
000000c8: PUSH4 0xffffffff
000000cd: PUSH2 0x027d
000000d0: AND
000000d1: JUMP
000000d2: JUMPDEST
000000d3: CALLER
000000d4: PUSH1 0x00
000000d6: SWAP1
000000d7: DUP2
000000d8: MSTORE
000000d9: PUSH1 0x20
000000db: DUP2
000000dc: SWAP1
000000dd: MSTORE
000000de: PUSH1 0x40
000000e0: SWAP1
000000e1: KECCAK256
000000e2: SSTORE
000000e3: PUSH1 0x01
000000e5: SLOAD
000000e6: PUSH2 0x00f5
000000e9: SWAP1
000000ea: DUP3
000000eb: PUSH4 0xffffffff
000000f0: PUSH2 0x027d
000000f3: AND
000000f4: JUMP
000000f5: JUMPDEST
000000f6: PUSH1 0x01
000000f8: SSTORE
000000f9: PUSH2 0x016c
000000fc: JUMP
000000fd: JUMPDEST
000000fe: PUSH2 0x0106
00000101: CALLER
00000102: PUSH2 0x028f
00000105: JUMP
00000106: JUMPDEST
00000107: CALLER
00000108: PUSH1 0x00
0000010a: SWAP1
0000010b: DUP2
0000010c: MSTORE
0000010d: PUSH1 0x20
0000010f: DUP2
00000110: SWAP1
00000111: MSTORE
00000112: PUSH1 0x40
00000114: SWAP1
00000115: KECCAK256
00000116: SLOAD
00000117: PUSH1 0x01
00000119: SLOAD
0000011a: SWAP2
0000011b: SWAP3
0000011c: POP
0000011d: PUSH2 0x012c
00000120: SWAP2
00000121: SWAP1
00000122: PUSH4 0xffffffff
00000127: PUSH2 0x0207
0000012a: AND
0000012b: JUMP
0000012c: JUMPDEST
0000012d: PUSH1 0x01
0000012f: SSTORE
00000130: CALLER
00000131: PUSH1 0x00
00000133: DUP2
00000134: DUP2
00000135: MSTORE
00000136: PUSH1 0x20
00000138: DUP2
00000139: SWAP1
0000013a: MSTORE
0000013b: PUSH1 0x40
0000013d: DUP1
0000013e: DUP3
0000013f: KECCAK256
00000140: DUP3
00000141: SWAP1
00000142: SSTORE
00000143: MLOAD
00000144: DUP4
00000145: ISZERO
00000146: PUSH2 0x08fc
00000149: MUL
0000014a: SWAP2
0000014b: DUP5
0000014c: SWAP2
0000014d: SWAP1
0000014e: DUP2
0000014f: DUP2
00000150: DUP2
00000151: DUP6
00000152: DUP9
00000153: DUP9
00000154: CALL
00000155: SWAP4
00000156: POP
00000157: POP
00000158: POP
00000159: POP
0000015a: ISZERO
0000015b: DUP1
0000015c: ISZERO
0000015d: PUSH2 0x016a
00000160: JUMPI
00000161: RETURNDATASIZE
00000162: PUSH1 0x00
00000164: DUP1
00000165: RETURNDATACOPY
00000166: RETURNDATASIZE
00000167: PUSH1 0x00
00000169: REVERT
0000016a: JUMPDEST
0000016b: POP
0000016c: JUMPDEST
0000016d: POP
0000016e: STOP
0000016f: JUMPDEST
00000170: CALLVALUE
00000171: DUP1
00000172: ISZERO
00000173: PUSH2 0x017b
00000176: JUMPI
00000177: PUSH1 0x00
00000179: DUP1
0000017a: REVERT
0000017b: JUMPDEST
0000017c: POP
0000017d: PUSH2 0x0184
00000180: PUSH2 0x0304
00000183: JUMP
00000184: JUMPDEST
00000185: PUSH1 0x40
00000187: DUP1
00000188: MLOAD
00000189: SWAP2
0000018a: DUP3
0000018b: MSTORE
0000018c: MLOAD
0000018d: SWAP1
0000018e: DUP2
0000018f: SWAP1
00000190: SUB
00000191: PUSH1 0x20
00000193: ADD
00000194: SWAP1
00000195: RETURN
00000196: JUMPDEST
00000197: CALLVALUE
00000198: DUP1
00000199: ISZERO
0000019a: PUSH2 0x01a2
0000019d: JUMPI
0000019e: PUSH1 0x00
000001a0: DUP1
000001a1: REVERT
000001a2: JUMPDEST
000001a3: POP
000001a4: PUSH2 0x0184
000001a7: PUSH2 0x030a
000001aa: JUMP
000001ab: JUMPDEST
000001ac: CALLVALUE
000001ad: DUP1
000001ae: ISZERO
000001af: PUSH2 0x01b7
000001b2: JUMPI
000001b3: PUSH1 0x00
000001b5: DUP1
000001b6: REVERT
000001b7: JUMPDEST
000001b8: POP
000001b9: PUSH2 0x0184
000001bc: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000001d1: PUSH1 0x04
000001d3: CALLDATALOAD
000001d4: AND
000001d5: PUSH2 0x028f
000001d8: JUMP
000001d9: JUMPDEST
000001da: CALLVALUE
000001db: DUP1
000001dc: ISZERO
000001dd: PUSH2 0x01e5
000001e0: JUMPI
000001e1: PUSH1 0x00
000001e3: DUP1
000001e4: REVERT
000001e5: JUMPDEST
000001e6: POP
000001e7: PUSH2 0x0184
000001ea: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000001ff: PUSH1 0x04
00000201: CALLDATALOAD
00000202: AND
00000203: PUSH2 0x030f
00000206: JUMP
00000207: JUMPDEST
00000208: PUSH1 0x00
0000020a: DUP1
0000020b: DUP4
0000020c: DUP4
0000020d: GT
0000020e: ISZERO
0000020f: PUSH2 0x0217
00000212: JUMPI
00000213: PUSH1 0x00
00000215: DUP1
00000216: REVERT
00000217: JUMPDEST
00000218: POP
00000219: POP
0000021a: DUP1
0000021b: DUP3
0000021c: SUB
0000021d: DUP1
0000021e: JUMPDEST
0000021f: POP
00000220: SWAP3
00000221: SWAP2
00000222: POP
00000223: POP
00000224: JUMP
00000225: JUMPDEST
00000226: PUSH1 0x00
00000228: DUP1
00000229: DUP4
0000022a: ISZERO
0000022b: ISZERO
0000022c: PUSH2 0x0238
0000022f: JUMPI
00000230: PUSH1 0x00
00000232: SWAP2
00000233: POP
00000234: PUSH2 0x021e
00000237: JUMP
00000238: JUMPDEST
00000239: POP
0000023a: DUP3
0000023b: DUP3
0000023c: MUL
0000023d: DUP3
0000023e: DUP5
0000023f: DUP3
00000240: DUP2
00000241: ISZERO
00000242: ISZERO
00000243: PUSH2 0x0248
00000246: JUMPI
00000247: INVALID
00000248: JUMPDEST
00000249: DIV
0000024a: EQ
0000024b: PUSH2 0x0253
0000024e: JUMPI
0000024f: PUSH1 0x00
00000251: DUP1
00000252: REVERT
00000253: JUMPDEST
00000254: SWAP4
00000255: SWAP3
00000256: POP
00000257: POP
00000258: POP
00000259: JUMP
0000025a: JUMPDEST
0000025b: PUSH1 0x00
0000025d: DUP1
0000025e: DUP1
0000025f: DUP4
00000260: GT
00000261: PUSH2 0x0269
00000264: JUMPI
00000265: PUSH1 0x00
00000267: DUP1
00000268: REVERT
00000269: JUMPDEST
0000026a: DUP3
0000026b: DUP5
0000026c: DUP2
0000026d: ISZERO
0000026e: ISZERO
0000026f: PUSH2 0x0274
00000272: JUMPI
00000273: INVALID
00000274: JUMPDEST
00000275: DIV
00000276: SWAP5
00000277: SWAP4
00000278: POP
00000279: POP
0000027a: POP
0000027b: POP
0000027c: JUMP
0000027d: JUMPDEST
0000027e: PUSH1 0x00
00000280: DUP3
00000281: DUP3
00000282: ADD
00000283: DUP4
00000284: DUP2
00000285: LT
00000286: ISZERO
00000287: PUSH2 0x0253
0000028a: JUMPI
0000028b: PUSH1 0x00
0000028d: DUP1
0000028e: REVERT
0000028f: JUMPDEST
00000290: PUSH1 0x00
00000292: PUSH1 0x01
00000294: SLOAD
00000295: PUSH1 0x00
00000297: EQ
00000298: ISZERO
00000299: PUSH2 0x02a4
0000029c: JUMPI
0000029d: POP
0000029e: PUSH1 0x00
000002a0: PUSH2 0x02ff
000002a3: JUMP
000002a4: JUMPDEST
000002a5: PUSH1 0x01
000002a7: SLOAD
000002a8: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000002bd: DUP4
000002be: AND
000002bf: PUSH1 0x00
000002c1: SWAP1
000002c2: DUP2
000002c3: MSTORE
000002c4: PUSH1 0x20
000002c6: DUP2
000002c7: SWAP1
000002c8: MSTORE
000002c9: PUSH1 0x40
000002cb: SWAP1
000002cc: KECCAK256
000002cd: SLOAD
000002ce: PUSH2 0x02fc
000002d1: SWAP2
000002d2: PUSH1 0x64
000002d4: SWAP2
000002d5: PUSH2 0x00a3
000002d8: SWAP2
000002d9: SWAP1
000002da: DUP3
000002db: SWAP1
000002dc: PUSH1 0x5a
000002de: SWAP1
000002df: PUSH2 0x02f0
000002e2: SWAP1
000002e3: ADDRESS
000002e4: BALANCE
000002e5: SWAP1
000002e6: PUSH4 0xffffffff
000002eb: PUSH2 0x0225
000002ee: AND
000002ef: JUMP
000002f0: JUMPDEST
000002f1: SWAP1
000002f2: PUSH4 0xffffffff
000002f7: PUSH2 0x0225
000002fa: AND
000002fb: JUMP
000002fc: JUMPDEST
000002fd: SWAP1
000002fe: POP
000002ff: JUMPDEST
00000300: SWAP2
00000301: SWAP1
00000302: POP
00000303: JUMP
00000304: JUMPDEST
00000305: PUSH1 0x01
00000307: SLOAD
00000308: DUP2
00000309: JUMP
0000030a: JUMPDEST
0000030b: PUSH1 0x5a
0000030d: DUP2
0000030e: JUMP
0000030f: JUMPDEST
00000310: PUSH1 0x00
00000312: PUSH1 0x20
00000314: DUP2
00000315: SWAP1
00000316: MSTORE
00000317: SWAP1
00000318: DUP2
00000319: MSTORE
0000031a: PUSH1 0x40
0000031c: SWAP1
0000031d: KECCAK256
0000031e: SLOAD
0000031f: DUP2
00000320: JUMP
00000321: STOP
00000322: LOG1
00000323: PUSH6 0x627a7a723058
0000032a: KECCAK256
0000032b: UNKNOWN(0x1F)
0000032c: PUSH4 0x80d0123e
00000331: LOG3
00000332: ISZERO
00000333: RETURNDATASIZE
00000334: MCOPY
00000335: UNKNOWN(0xB9)
00000336: SDIV
00000337: UNKNOWN(0x4D)
00000338: OR
00000339: UNKNOWN(0xB1)
0000033a: UNKNOWN(0x24)
0000033b: UNKNOWN(0xD8)
0000033c: UNKNOWN(0x4D)
0000033d: SWAP16
0000033e: BLOCKHASH
0000033f: SWAP13
00000340: AND
00000341: UNKNOWN(0xA5)
00000342: LOG2
00000343: PUSH18

Findings

validated = confirmed for call sinks; sink observed for others
Severity Category Tool Title Confidence Validated Confirmed Details
high other detector Untrusted CALL target/value reachable 60 no no
view
trace_id: 0x5c6715caf4c8ed070ac3e221a5ac66949407419a6eb582c3734f71d6c9efaefb
call_targets: 0x6288c6b68f06b1a3fd231c9c1cb37113a531c912
target_varies: no
classification: constant_target
validation_json
{
    "sink": "CALL",
    "errors": 0,
    "status": "sink_reached",
    "attempts": 1,
    "trace_id": "0x5c6715caf4c8ed070ac3e221a5ac66949407419a6eb582c3734f71d6c9efaefb",
    "confirmed": false,
    "trace_mode": "callTracer",
    "call_targets": [
        "0x6288c6b68f06b1a3fd231c9c1cb37113a531c912"
    ],
    "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": "0x3a98ef39",
            "selector": "0x3a98ef39",
            "calldata_variants": [
                "0x3a98ef39",
                "0x3a98ef390000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x4dc244ed",
            "selector": "0x4dc244ed",
            "calldata_variants": [
                "0x4dc244ed",
                "0x4dc244ed0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x70a08231",
            "selector": "0x70a08231",
            "calldata_variants": [
                "0x70a08231",
                "0x70a082310000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xce7c2ac2",
            "selector": "0xce7c2ac2",
            "calldata_variants": [
                "0xce7c2ac2",
                "0xce7c2ac20000000000000000000000000000000000000000000000000000000000000000"
            ]
        }
    ]
}
evidence_json
{
    "examples": [
        {
            "pc": 340,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        }
    ],
    "call_count": 1,
    "guards_detected": [],
    "untrusted_call_count": 1
}
high other detector ETH value transfer possible 55 no no
view
trace_id: 0x5c6715caf4c8ed070ac3e221a5ac66949407419a6eb582c3734f71d6c9efaefb
call_targets: 0x6288c6b68f06b1a3fd231c9c1cb37113a531c912
target_varies: no
classification: constant_target
validation_json
{
    "sink": "CALL",
    "errors": 0,
    "status": "sink_reached",
    "attempts": 1,
    "trace_id": "0x5c6715caf4c8ed070ac3e221a5ac66949407419a6eb582c3734f71d6c9efaefb",
    "confirmed": false,
    "trace_mode": "callTracer",
    "call_targets": [
        "0x6288c6b68f06b1a3fd231c9c1cb37113a531c912"
    ],
    "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": "0x3a98ef39",
            "selector": "0x3a98ef39",
            "calldata_variants": [
                "0x3a98ef39",
                "0x3a98ef390000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x4dc244ed",
            "selector": "0x4dc244ed",
            "calldata_variants": [
                "0x4dc244ed",
                "0x4dc244ed0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0x70a08231",
            "selector": "0x70a08231",
            "calldata_variants": [
                "0x70a08231",
                "0x70a082310000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xce7c2ac2",
            "selector": "0xce7c2ac2",
            "calldata_variants": [
                "0xce7c2ac2",
                "0xce7c2ac20000000000000000000000000000000000000000000000000000000000000000"
            ]
        }
    ]
}
evidence_json
{
    "examples": [
        {
            "pc": 340,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        }
    ],
    "eth_value_calls": 1,
    "guards_detected": []
}