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

Analysis Run

019b477e-d879-729b-a563-474f0162de4c

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
29085 artifact.fetch complete 1 / 3 4 months ago
29086 tool.cast_disasm complete 1 / 3 4 months ago
72616 analysis.bundle complete 1 / 3 2 weeks ago
72617 capability.graph complete 1 / 3 2 weeks ago
72618 detector.run complete 1 / 3 2 weeks ago
72619 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)
5
EXT*/BALANCE
0
Total opcodes
530
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 0x001e
0000000c: JUMPI
0000000d: PUSH1 0x00
0000000f: CALLDATALOAD
00000010: PUSH1 0xe0
00000012: SHR
00000013: DUP1
00000014: PUSH4 0x8da5cb5b
00000019: EQ
0000001a: PUSH2 0x0050
0000001d: JUMPI
0000001e: JUMPDEST
0000001f: CALLVALUE
00000020: PUSH1 0x01
00000022: SUB
00000023: PUSH2 0x0030
00000026: JUMPI
00000027: PUSH2 0x002e
0000002a: PUSH2 0x00a0
0000002d: JUMP
0000002e: JUMPDEST
0000002f: STOP
00000030: JUMPDEST
00000031: CALLVALUE
00000032: PUSH1 0x02
00000034: SUB
00000035: PUSH2 0x0040
00000038: JUMPI
00000039: PUSH2 0x002e
0000003c: PUSH2 0x01e4
0000003f: JUMP
00000040: JUMPDEST
00000041: CALLVALUE
00000042: PUSH1 0x03
00000044: SUB
00000045: PUSH2 0x002e
00000048: JUMPI
00000049: PUSH2 0x002e
0000004c: PUSH2 0x03bf
0000004f: JUMP
00000050: JUMPDEST
00000051: CALLVALUE
00000052: DUP1
00000053: ISZERO
00000054: PUSH2 0x005c
00000057: JUMPI
00000058: PUSH1 0x00
0000005a: DUP1
0000005b: REVERT
0000005c: JUMPDEST
0000005d: POP
0000005e: PUSH2 0x0084
00000061: PUSH32 0x000000000000000000000000c0ffeedad16ef4ea21e61f2d3eb5f3ca3249bc1e
00000082: DUP2
00000083: JUMP
00000084: JUMPDEST
00000085: PUSH1 0x40
00000087: MLOAD
00000088: PUSH1 0x01
0000008a: PUSH1 0x01
0000008c: PUSH1 0xa0
0000008e: SHL
0000008f: SUB
00000090: SWAP1
00000091: SWAP2
00000092: AND
00000093: DUP2
00000094: MSTORE
00000095: PUSH1 0x20
00000097: ADD
00000098: PUSH1 0x40
0000009a: MLOAD
0000009b: DUP1
0000009c: SWAP2
0000009d: SUB
0000009e: SWAP1
0000009f: RETURN
000000a0: JUMPDEST
000000a1: PUSH32 0x000000000000000000000000c0ffeedad16ef4ea21e61f2d3eb5f3ca3249bc1e
000000c2: PUSH1 0x01
000000c4: PUSH1 0x01
000000c6: PUSH1 0xa0
000000c8: SHL
000000c9: SUB
000000ca: AND
000000cb: ISZERO
000000cc: DUP1
000000cd: ISZERO
000000ce: SWAP1
000000cf: PUSH2 0x0101
000000d2: JUMPI
000000d3: POP
000000d4: CALLER
000000d5: PUSH1 0x01
000000d7: PUSH1 0x01
000000d9: PUSH1 0xa0
000000db: SHL
000000dc: SUB
000000dd: PUSH32 0x000000000000000000000000c0ffeedad16ef4ea21e61f2d3eb5f3ca3249bc1e
000000fe: AND
000000ff: EQ
00000100: ISZERO
00000101: JUMPDEST
00000102: ISZERO
00000103: PUSH2 0x0155
00000106: JUMPI
00000107: PUSH1 0x40
00000109: MLOAD
0000010a: PUSH4 0x61e54529
0000010f: PUSH1 0xe0
00000111: SHL
00000112: DUP2
00000113: MSTORE
00000114: PUSH1 0x01
00000116: PUSH1 0x01
00000118: PUSH1 0xa0
0000011a: SHL
0000011b: SUB
0000011c: PUSH32 0x000000000000000000000000c0ffeedad16ef4ea21e61f2d3eb5f3ca3249bc1e
0000013d: AND
0000013e: PUSH1 0x04
00000140: DUP3
00000141: ADD
00000142: MSTORE
00000143: CALLER
00000144: PUSH1 0x24
00000146: DUP3
00000147: ADD
00000148: MSTORE
00000149: PUSH1 0x44
0000014b: ADD
0000014c: JUMPDEST
0000014d: PUSH1 0x40
0000014f: MLOAD
00000150: DUP1
00000151: SWAP2
00000152: SUB
00000153: SWAP1
00000154: REVERT
00000155: JUMPDEST
00000156: PUSH4 0xb6f9de95
0000015b: PUSH1 0x00
0000015d: MSTORE
0000015e: PUSH1 0x00
00000160: PUSH1 0x20
00000162: MSTORE
00000163: PUSH1 0x80
00000165: PUSH1 0x40
00000167: MSTORE
00000168: ADDRESS
00000169: PUSH1 0x60
0000016b: MSTORE
0000016c: PUSH1 0x00
0000016e: CALLDATALOAD
0000016f: PUSH1 0xc0
00000171: SHR
00000172: PUSH1 0x80
00000174: MSTORE
00000175: PUSH1 0x02
00000177: PUSH1 0xa0
00000179: MSTORE
0000017a: PUSH20 0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2
0000018f: PUSH1 0xc0
00000191: MSTORE
00000192: PUSH1 0x08
00000194: JUMPDEST
00000195: CALLDATASIZE
00000196: DUP2
00000197: LT
00000198: ISZERO
00000199: PUSH2 0x01e1
0000019c: JUMPI
0000019d: DUP1
0000019e: CALLDATALOAD
0000019f: PUSH1 0x60
000001a1: SHR
000001a2: PUSH1 0xe0
000001a4: MSTORE
000001a5: PUSH1 0x00
000001a7: DUP1
000001a8: PUSH1 0xe4
000001aa: PUSH1 0x1c
000001ac: PUSH1 0x14
000001ae: DUP6
000001af: ADD
000001b0: CALLDATALOAD
000001b1: PUSH20 0xeaaa41cb2a64b11fe761d41e747c032cdd60cace
000001c6: GAS
000001c7: CALL
000001c8: PUSH2 0x01d9
000001cb: JUMPI
000001cc: PUSH4 0x12345677
000001d1: PUSH1 0x00
000001d3: MSTORE
000001d4: PUSH1 0x04
000001d6: PUSH1 0x00
000001d8: REVERT
000001d9: JUMPDEST
000001da: PUSH1 0x34
000001dc: ADD
000001dd: PUSH2 0x0194
000001e0: JUMP
000001e1: JUMPDEST
000001e2: POP
000001e3: JUMP
000001e4: JUMPDEST
000001e5: PUSH32 0x000000000000000000000000c0ffeedad16ef4ea21e61f2d3eb5f3ca3249bc1e
00000206: PUSH1 0x01
00000208: PUSH1 0x01
0000020a: PUSH1 0xa0
0000020c: SHL
0000020d: SUB
0000020e: AND
0000020f: ISZERO
00000210: DUP1
00000211: ISZERO
00000212: SWAP1
00000213: PUSH2 0x0245
00000216: JUMPI
00000217: POP
00000218: CALLER
00000219: PUSH1 0x01
0000021b: PUSH1 0x01
0000021d: PUSH1 0xa0
0000021f: SHL
00000220: SUB
00000221: PUSH32 0x000000000000000000000000c0ffeedad16ef4ea21e61f2d3eb5f3ca3249bc1e
00000242: AND
00000243: EQ
00000244: ISZERO
00000245: JUMPDEST
00000246: ISZERO
00000247: PUSH2 0x0294
0000024a: JUMPI
0000024b: PUSH1 0x40
0000024d: MLOAD
0000024e: PUSH4 0x61e54529
00000253: PUSH1 0xe0
00000255: SHL
00000256: DUP2
00000257: MSTORE
00000258: PUSH1 0x01
0000025a: PUSH1 0x01
0000025c: PUSH1 0xa0
0000025e: SHL
0000025f: SUB
00000260: PUSH32 0x000000000000000000000000c0ffeedad16ef4ea21e61f2d3eb5f3ca3249bc1e
00000281: AND
00000282: PUSH1 0x04
00000284: DUP3
00000285: ADD
00000286: MSTORE
00000287: CALLER
00000288: PUSH1 0x24
0000028a: DUP3
0000028b: ADD
0000028c: MSTORE
0000028d: PUSH1 0x44
0000028f: ADD
00000290: PUSH2 0x014c
00000293: JUMP
00000294: JUMPDEST
00000295: PUSH1 0x0c
00000297: PUSH4 0x095ea7b3
0000029c: PUSH1 0x00
0000029e: MSTORE
0000029f: PUSH20 0xeaaa41cb2a64b11fe761d41e747c032cdd60cace
000002b4: PUSH1 0x20
000002b6: MSTORE
000002b7: PUSH4 0x791ac947
000002bc: PUSH1 0x60
000002be: MSTORE
000002bf: PUSH1 0x00
000002c1: PUSH1 0xa0
000002c3: MSTORE
000002c4: PUSH1 0xa0
000002c6: PUSH1 0xc0
000002c8: MSTORE
000002c9: ADDRESS
000002ca: PUSH1 0xe0
000002cc: MSTORE
000002cd: PUSH1 0x00
000002cf: NOT
000002d0: PUSH2 0x0100
000002d3: MSTORE
000002d4: PUSH1 0x02
000002d6: PUSH2 0x0120
000002d9: MSTORE
000002da: PUSH20 0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2
000002ef: PUSH2 0x0160
000002f2: MSTORE
000002f3: JUMPDEST
000002f4: CALLDATASIZE
000002f5: DUP2
000002f6: LT
000002f7: ISZERO
000002f8: PUSH2 0x0375
000002fb: JUMPI
000002fc: DUP1
000002fd: CALLDATALOAD
000002fe: PUSH1 0x60
00000300: SHR
00000301: PUSH1 0x14
00000303: DUP3
00000304: ADD
00000305: CALLDATALOAD
00000306: PUSH1 0x34
00000308: DUP4
00000309: ADD
0000030a: CALLDATALOAD
0000030b: PUSH1 0xb0
0000030d: SHR
0000030e: DUP2
0000030f: PUSH1 0x40
00000311: MSTORE
00000312: PUSH1 0x00
00000314: DUP1
00000315: PUSH1 0x44
00000317: PUSH1 0x1c
00000319: PUSH1 0x00
0000031b: DUP8
0000031c: GAS
0000031d: CALL
0000031e: PUSH2 0x032f
00000321: JUMPI
00000322: PUSH4 0x12345688
00000327: PUSH1 0x00
00000329: MSTORE
0000032a: PUSH1 0x04
0000032c: PUSH1 0x00
0000032e: REVERT
0000032f: JUMPDEST
00000330: DUP2
00000331: PUSH1 0x80
00000333: MSTORE
00000334: DUP3
00000335: PUSH2 0x0140
00000338: MSTORE
00000339: PUSH1 0x00
0000033b: DUP1
0000033c: PUSH2 0x0104
0000033f: PUSH1 0x7c
00000341: DUP5
00000342: PUSH20 0xeaaa41cb2a64b11fe761d41e747c032cdd60cace
00000357: GAS
00000358: CALL
00000359: PUSH2 0x036a
0000035c: JUMPI
0000035d: PUSH4 0x12345699
00000362: PUSH1 0x00
00000364: MSTORE
00000365: PUSH1 0x04
00000367: PUSH1 0x00
00000369: REVERT
0000036a: JUMPDEST
0000036b: POP
0000036c: POP
0000036d: POP
0000036e: PUSH1 0x3e
00000370: ADD
00000371: PUSH2 0x02f3
00000374: JUMP
00000375: JUMPDEST
00000376: POP
00000377: PUSH1 0x00
00000379: CALLDATALOAD
0000037a: PUSH1 0xb0
0000037c: SHR
0000037d: PUSH1 0x0a
0000037f: CALLDATALOAD
00000380: PUSH1 0xf0
00000382: SHR
00000383: DUP2
00000384: SELFBALANCE
00000385: LT
00000386: ISZERO
00000387: PUSH2 0x0398
0000038a: JUMPI
0000038b: PUSH4 0x123456aa
00000390: PUSH1 0x00
00000392: MSTORE
00000393: PUSH1 0x04
00000395: PUSH1 0x00
00000397: REVERT
00000398: JUMPDEST
00000399: PUSH2 0x2710
0000039c: SELFBALANCE
0000039d: SWAP3
0000039e: SWAP1
0000039f: SWAP3
000003a0: SUB
000003a1: MUL
000003a2: DIV
000003a3: PUSH1 0x00
000003a5: DUP1
000003a6: DUP1
000003a7: DUP1
000003a8: DUP5
000003a9: COINBASE
000003aa: PUSH2 0xc350
000003ad: CALL
000003ae: PUSH2 0x01e1
000003b1: JUMPI
000003b2: PUSH4 0x123456bb
000003b7: PUSH1 0x00
000003b9: MSTORE
000003ba: PUSH1 0x04
000003bc: PUSH1 0x00
000003be: REVERT
000003bf: JUMPDEST
000003c0: PUSH32 0x000000000000000000000000c0ffeedad16ef4ea21e61f2d3eb5f3ca3249bc1e
000003e1: PUSH1 0x01
000003e3: PUSH1 0x01
000003e5: PUSH1 0xa0
000003e7: SHL
000003e8: SUB
000003e9: AND
000003ea: ISZERO
000003eb: DUP1
000003ec: ISZERO
000003ed: SWAP1
000003ee: PUSH2 0x0420
000003f1: JUMPI
000003f2: POP
000003f3: CALLER
000003f4: PUSH1 0x01
000003f6: PUSH1 0x01
000003f8: PUSH1 0xa0
000003fa: SHL
000003fb: SUB
000003fc: PUSH32 0x000000000000000000000000c0ffeedad16ef4ea21e61f2d3eb5f3ca3249bc1e
0000041d: AND
0000041e: EQ
0000041f: ISZERO
00000420: JUMPDEST
00000421: ISZERO
00000422: PUSH2 0x046f
00000425: JUMPI
00000426: PUSH1 0x40
00000428: MLOAD
00000429: PUSH4 0x61e54529
0000042e: PUSH1 0xe0
00000430: SHL
00000431: DUP2
00000432: MSTORE
00000433: PUSH1 0x01
00000435: PUSH1 0x01
00000437: PUSH1 0xa0
00000439: SHL
0000043a: SUB
0000043b: PUSH32 0x000000000000000000000000c0ffeedad16ef4ea21e61f2d3eb5f3ca3249bc1e
0000045c: AND
0000045d: PUSH1 0x04
0000045f: DUP3
00000460: ADD
00000461: MSTORE
00000462: CALLER
00000463: PUSH1 0x24
00000465: DUP3
00000466: ADD
00000467: MSTORE
00000468: PUSH1 0x44
0000046a: ADD
0000046b: PUSH2 0x014c
0000046e: JUMP
0000046f: JUMPDEST
00000470: PUSH1 0x40
00000472: MLOAD
00000473: PUSH1 0x01
00000475: PUSH1 0x01
00000477: PUSH1 0xa0
00000479: SHL
0000047a: SUB
0000047b: PUSH32 0x000000000000000000000000c0ffeedad16ef4ea21e61f2d3eb5f3ca3249bc1e
0000049c: AND
0000049d: SWAP1
0000049e: SELFBALANCE
0000049f: DUP1
000004a0: ISZERO
000004a1: PUSH2 0x08fc
000004a4: MUL
000004a5: SWAP2
000004a6: PUSH1 0x00
000004a8: DUP2
000004a9: DUP2
000004aa: DUP2
000004ab: DUP6
000004ac: DUP9
000004ad: DUP9
000004ae: CALL
000004af: SWAP4
000004b0: POP
000004b1: POP
000004b2: POP
000004b3: POP
000004b4: ISZERO
000004b5: DUP1
000004b6: ISZERO
000004b7: PUSH2 0x01e1
000004ba: JUMPI
000004bb: RETURNDATASIZE
000004bc: PUSH1 0x00
000004be: DUP1
000004bf: RETURNDATACOPY
000004c0: RETURNDATASIZE
000004c1: PUSH1 0x00
000004c3: REVERT
000004c4: INVALID
000004c5: LOG2
000004c6: PUSH5 0x6970667358
000004cc: UNKNOWN(0x22)
000004cd: SLT
000004ce: KECCAK256
000004cf: UNKNOWN(0xC6)
000004d0: PUSH27 0x0e591fe571db9252cc152dfcaf478240aedd54ca293270bb8f6754
000004ec: SLOAD
000004ed: CHAINID
000004ee: DUP13
000004ef: PUSH5 0x736f6c6343
000004f5: STOP
000004f6: ADDMOD
000004f7: BYTE
000004f8: STOP
000004f9: CALLER

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: 0x006e593fe21ea622e819f08005f4903854c8066aff30698a08fecd2651b020af
call_targets: 0xaf4efd9a6699e8828b984291726ca1e821f3c5f6
target_varies: no
classification: constant_target
validation_json
{
    "sink": "CALL",
    "errors": 0,
    "status": "sink_reached",
    "attempts": 1,
    "trace_id": "0x006e593fe21ea622e819f08005f4903854c8066aff30698a08fecd2651b020af",
    "confirmed": false,
    "trace_mode": "callTracer",
    "call_targets": [
        "0xaf4efd9a6699e8828b984291726ca1e821f3c5f6"
    ],
    "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": "0x8da5cb5b",
            "selector": "0x8da5cb5b",
            "calldata_variants": [
                "0x8da5cb5b",
                "0x8da5cb5b0000000000000000000000000000000000000000000000000000000000000000"
            ]
        }
    ]
}
evidence_json
{
    "examples": [
        {
            "pc": 455,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        },
        {
            "pc": 797,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        },
        {
            "pc": 856,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        }
    ],
    "call_count": 5,
    "guards_detected": [],
    "untrusted_call_count": 5
}
high other detector ETH value transfer possible 55 no no
view
trace_id: 0x006e593fe21ea622e819f08005f4903854c8066aff30698a08fecd2651b020af
call_targets: 0xaf4efd9a6699e8828b984291726ca1e821f3c5f6
target_varies: no
classification: constant_target
validation_json
{
    "sink": "CALL",
    "errors": 0,
    "status": "sink_reached",
    "attempts": 1,
    "trace_id": "0x006e593fe21ea622e819f08005f4903854c8066aff30698a08fecd2651b020af",
    "confirmed": false,
    "trace_mode": "callTracer",
    "call_targets": [
        "0xaf4efd9a6699e8828b984291726ca1e821f3c5f6"
    ],
    "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": "0x8da5cb5b",
            "selector": "0x8da5cb5b",
            "calldata_variants": [
                "0x8da5cb5b",
                "0x8da5cb5b0000000000000000000000000000000000000000000000000000000000000000"
            ]
        }
    ]
}
evidence_json
{
    "examples": [
        {
            "pc": 455,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        },
        {
            "pc": 797,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        },
        {
            "pc": 856,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        }
    ],
    "eth_value_calls": 5,
    "guards_detected": []
}