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

Analysis Run

019b477e-da98-72bf-8e7b-320f15eda0c0

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
29497 artifact.fetch complete 1 / 3 3 months ago
29498 tool.cast_disasm complete 1 / 3 3 months ago
108649 analysis.bundle complete 1 / 3 1 week ago
108650 capability.graph complete 1 / 3 1 week ago
108651 detector.run complete 1 / 3 1 week ago
108652 validation.fork complete 1 / 3 1 week 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)
3
EXT*/BALANCE
4
Total opcodes
572
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 0x004a
0000000c: JUMPI
0000000d: PUSH1 0x00
0000000f: CALLDATALOAD
00000010: PUSH29 0x0100000000000000000000000000000000000000000000000000000000
0000002e: SWAP1
0000002f: DIV
00000030: DUP1
00000031: PUSH4 0x9e5faafc
00000036: EQ
00000037: PUSH2 0x013d
0000003a: JUMPI
0000003b: DUP1
0000003c: PUSH4 0xd4b83992
00000041: EQ
00000042: PUSH2 0x0147
00000045: JUMPI
00000046: PUSH2 0x0138
00000049: JUMP
0000004a: JUMPDEST
0000004b: CALLDATASIZE
0000004c: PUSH2 0x0138
0000004f: JUMPI
00000050: PUSH1 0x00
00000052: DUP1
00000053: PUSH1 0x00
00000055: SWAP1
00000056: SLOAD
00000057: SWAP1
00000058: PUSH2 0x0100
0000005b: EXP
0000005c: SWAP1
0000005d: DIV
0000005e: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000073: AND
00000074: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000089: AND
0000008a: BALANCE
0000008b: GT
0000008c: ISZERO
0000008d: PUSH2 0x0136
00000090: JUMPI
00000091: PUSH1 0x00
00000093: DUP1
00000094: SLOAD
00000095: SWAP1
00000096: PUSH2 0x0100
00000099: EXP
0000009a: SWAP1
0000009b: DIV
0000009c: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000000b1: AND
000000b2: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000000c7: AND
000000c8: PUSH4 0x2e1a7d4d
000000cd: CALLVALUE
000000ce: PUSH1 0x40
000000d0: MLOAD
000000d1: DUP3
000000d2: PUSH4 0xffffffff
000000d7: AND
000000d8: PUSH29 0x0100000000000000000000000000000000000000000000000000000000
000000f6: MUL
000000f7: DUP2
000000f8: MSTORE
000000f9: PUSH1 0x04
000000fb: ADD
000000fc: PUSH2 0x0105
000000ff: SWAP2
00000100: SWAP1
00000101: PUSH2 0x0335
00000104: JUMP
00000105: JUMPDEST
00000106: PUSH1 0x00
00000108: PUSH1 0x40
0000010a: MLOAD
0000010b: DUP1
0000010c: DUP4
0000010d: SUB
0000010e: DUP2
0000010f: PUSH1 0x00
00000111: DUP8
00000112: DUP1
00000113: EXTCODESIZE
00000114: ISZERO
00000115: DUP1
00000116: ISZERO
00000117: PUSH2 0x011f
0000011a: JUMPI
0000011b: PUSH1 0x00
0000011d: DUP1
0000011e: REVERT
0000011f: JUMPDEST
00000120: POP
00000121: PUSH1 0x32
00000123: GAS
00000124: SUB
00000125: CALL
00000126: ISZERO
00000127: DUP1
00000128: ISZERO
00000129: PUSH2 0x0131
0000012c: JUMPI
0000012d: PUSH1 0x00
0000012f: DUP1
00000130: REVERT
00000131: JUMPDEST
00000132: POP
00000133: POP
00000134: POP
00000135: POP
00000136: JUMPDEST
00000137: STOP
00000138: JUMPDEST
00000139: PUSH1 0x00
0000013b: DUP1
0000013c: REVERT
0000013d: JUMPDEST
0000013e: PUSH2 0x0145
00000141: PUSH2 0x0172
00000144: JUMP
00000145: JUMPDEST
00000146: STOP
00000147: JUMPDEST
00000148: CALLVALUE
00000149: DUP1
0000014a: ISZERO
0000014b: PUSH2 0x0153
0000014e: JUMPI
0000014f: PUSH1 0x00
00000151: DUP1
00000152: REVERT
00000153: JUMPDEST
00000154: POP
00000155: PUSH2 0x015c
00000158: PUSH2 0x02f8
0000015b: JUMP
0000015c: JUMPDEST
0000015d: PUSH1 0x40
0000015f: MLOAD
00000160: PUSH2 0x0169
00000163: SWAP2
00000164: SWAP1
00000165: PUSH2 0x03cf
00000168: JUMP
00000169: JUMPDEST
0000016a: PUSH1 0x40
0000016c: MLOAD
0000016d: DUP1
0000016e: SWAP2
0000016f: SUB
00000170: SWAP1
00000171: RETURN
00000172: JUMPDEST
00000173: PUSH1 0x00
00000175: CALLVALUE
00000176: GT
00000177: PUSH2 0x01b5
0000017a: JUMPI
0000017b: PUSH1 0x40
0000017d: MLOAD
0000017e: PUSH32 0x08c379a000000000000000000000000000000000000000000000000000000000
0000019f: DUP2
000001a0: MSTORE
000001a1: PUSH1 0x04
000001a3: ADD
000001a4: PUSH2 0x01ac
000001a7: SWAP1
000001a8: PUSH2 0x046d
000001ab: JUMP
000001ac: JUMPDEST
000001ad: PUSH1 0x40
000001af: MLOAD
000001b0: DUP1
000001b1: SWAP2
000001b2: SUB
000001b3: SWAP1
000001b4: REVERT
000001b5: JUMPDEST
000001b6: PUSH1 0x00
000001b8: DUP1
000001b9: SLOAD
000001ba: SWAP1
000001bb: PUSH2 0x0100
000001be: EXP
000001bf: SWAP1
000001c0: DIV
000001c1: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000001d6: AND
000001d7: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
000001ec: AND
000001ed: PUSH4 0xd0e30db0
000001f2: CALLVALUE
000001f3: PUSH1 0x40
000001f5: MLOAD
000001f6: DUP3
000001f7: PUSH4 0xffffffff
000001fc: AND
000001fd: PUSH29 0x0100000000000000000000000000000000000000000000000000000000
0000021b: MUL
0000021c: DUP2
0000021d: MSTORE
0000021e: PUSH1 0x04
00000220: ADD
00000221: PUSH1 0x00
00000223: PUSH1 0x40
00000225: MLOAD
00000226: DUP1
00000227: DUP4
00000228: SUB
00000229: DUP2
0000022a: DUP6
0000022b: DUP9
0000022c: DUP1
0000022d: EXTCODESIZE
0000022e: ISZERO
0000022f: DUP1
00000230: ISZERO
00000231: PUSH2 0x0239
00000234: JUMPI
00000235: PUSH1 0x00
00000237: DUP1
00000238: REVERT
00000239: JUMPDEST
0000023a: POP
0000023b: PUSH2 0x235a
0000023e: GAS
0000023f: SUB
00000240: CALL
00000241: ISZERO
00000242: DUP1
00000243: ISZERO
00000244: PUSH2 0x024c
00000247: JUMPI
00000248: PUSH1 0x00
0000024a: DUP1
0000024b: REVERT
0000024c: JUMPDEST
0000024d: POP
0000024e: POP
0000024f: POP
00000250: POP
00000251: POP
00000252: PUSH1 0x00
00000254: DUP1
00000255: SLOAD
00000256: SWAP1
00000257: PUSH2 0x0100
0000025a: EXP
0000025b: SWAP1
0000025c: DIV
0000025d: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000272: AND
00000273: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000288: AND
00000289: PUSH4 0x2e1a7d4d
0000028e: CALLVALUE
0000028f: PUSH1 0x40
00000291: MLOAD
00000292: DUP3
00000293: PUSH4 0xffffffff
00000298: AND
00000299: PUSH29 0x0100000000000000000000000000000000000000000000000000000000
000002b7: MUL
000002b8: DUP2
000002b9: MSTORE
000002ba: PUSH1 0x04
000002bc: ADD
000002bd: PUSH2 0x02c6
000002c0: SWAP2
000002c1: SWAP1
000002c2: PUSH2 0x0335
000002c5: JUMP
000002c6: JUMPDEST
000002c7: PUSH1 0x00
000002c9: PUSH1 0x40
000002cb: MLOAD
000002cc: DUP1
000002cd: DUP4
000002ce: SUB
000002cf: DUP2
000002d0: PUSH1 0x00
000002d2: DUP8
000002d3: DUP1
000002d4: EXTCODESIZE
000002d5: ISZERO
000002d6: DUP1
000002d7: ISZERO
000002d8: PUSH2 0x02e0
000002db: JUMPI
000002dc: PUSH1 0x00
000002de: DUP1
000002df: REVERT
000002e0: JUMPDEST
000002e1: POP
000002e2: PUSH1 0x32
000002e4: GAS
000002e5: SUB
000002e6: CALL
000002e7: ISZERO
000002e8: DUP1
000002e9: ISZERO
000002ea: PUSH2 0x02f2
000002ed: JUMPI
000002ee: PUSH1 0x00
000002f0: DUP1
000002f1: REVERT
000002f2: JUMPDEST
000002f3: POP
000002f4: POP
000002f5: POP
000002f6: POP
000002f7: JUMP
000002f8: JUMPDEST
000002f9: PUSH1 0x00
000002fb: DUP1
000002fc: SLOAD
000002fd: SWAP1
000002fe: PUSH2 0x0100
00000301: EXP
00000302: SWAP1
00000303: DIV
00000304: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000319: AND
0000031a: DUP2
0000031b: JUMP
0000031c: JUMPDEST
0000031d: PUSH1 0x00
0000031f: DUP2
00000320: SWAP1
00000321: POP
00000322: SWAP2
00000323: SWAP1
00000324: POP
00000325: JUMP
00000326: JUMPDEST
00000327: PUSH2 0x032f
0000032a: DUP2
0000032b: PUSH2 0x031c
0000032e: JUMP
0000032f: JUMPDEST
00000330: DUP3
00000331: MSTORE
00000332: POP
00000333: POP
00000334: JUMP
00000335: JUMPDEST
00000336: PUSH1 0x00
00000338: PUSH1 0x20
0000033a: DUP3
0000033b: ADD
0000033c: SWAP1
0000033d: POP
0000033e: PUSH2 0x034a
00000341: PUSH1 0x00
00000343: DUP4
00000344: ADD
00000345: DUP5
00000346: PUSH2 0x0326
00000349: JUMP
0000034a: JUMPDEST
0000034b: SWAP3
0000034c: SWAP2
0000034d: POP
0000034e: POP
0000034f: JUMP
00000350: JUMPDEST
00000351: PUSH1 0x00
00000353: PUSH20 0xffffffffffffffffffffffffffffffffffffffff
00000368: DUP3
00000369: AND
0000036a: SWAP1
0000036b: POP
0000036c: SWAP2
0000036d: SWAP1
0000036e: POP
0000036f: JUMP
00000370: JUMPDEST
00000371: PUSH1 0x00
00000373: DUP2
00000374: SWAP1
00000375: POP
00000376: SWAP2
00000377: SWAP1
00000378: POP
00000379: JUMP
0000037a: JUMPDEST
0000037b: PUSH1 0x00
0000037d: PUSH2 0x0395
00000380: PUSH2 0x0390
00000383: PUSH2 0x038b
00000386: DUP5
00000387: PUSH2 0x0350
0000038a: JUMP
0000038b: JUMPDEST
0000038c: PUSH2 0x0370
0000038f: JUMP
00000390: JUMPDEST
00000391: PUSH2 0x0350
00000394: JUMP
00000395: JUMPDEST
00000396: SWAP1
00000397: POP
00000398: SWAP2
00000399: SWAP1
0000039a: POP
0000039b: JUMP
0000039c: JUMPDEST
0000039d: PUSH1 0x00
0000039f: PUSH2 0x03a7
000003a2: DUP3
000003a3: PUSH2 0x037a
000003a6: JUMP
000003a7: JUMPDEST
000003a8: SWAP1
000003a9: POP
000003aa: SWAP2
000003ab: SWAP1
000003ac: POP
000003ad: JUMP
000003ae: JUMPDEST
000003af: PUSH1 0x00
000003b1: PUSH2 0x03b9
000003b4: DUP3
000003b5: PUSH2 0x039c
000003b8: JUMP
000003b9: JUMPDEST
000003ba: SWAP1
000003bb: POP
000003bc: SWAP2
000003bd: SWAP1
000003be: POP
000003bf: JUMP
000003c0: JUMPDEST
000003c1: PUSH2 0x03c9
000003c4: DUP2
000003c5: PUSH2 0x03ae
000003c8: JUMP
000003c9: JUMPDEST
000003ca: DUP3
000003cb: MSTORE
000003cc: POP
000003cd: POP
000003ce: JUMP
000003cf: JUMPDEST
000003d0: PUSH1 0x00
000003d2: PUSH1 0x20
000003d4: DUP3
000003d5: ADD
000003d6: SWAP1
000003d7: POP
000003d8: PUSH2 0x03e4
000003db: PUSH1 0x00
000003dd: DUP4
000003de: ADD
000003df: DUP5
000003e0: PUSH2 0x03c0
000003e3: JUMP
000003e4: JUMPDEST
000003e5: SWAP3
000003e6: SWAP2
000003e7: POP
000003e8: POP
000003e9: JUMP
000003ea: JUMPDEST
000003eb: PUSH1 0x00
000003ed: DUP3
000003ee: DUP3
000003ef: MSTORE
000003f0: PUSH1 0x20
000003f2: DUP3
000003f3: ADD
000003f4: SWAP1
000003f5: POP
000003f6: SWAP3
000003f7: SWAP2
000003f8: POP
000003f9: POP
000003fa: JUMP
000003fb: JUMPDEST
000003fc: PUSH32 0x53656e6420736f6d652045544820746f20696e69746961746520746865206174
0000041d: PUSH1 0x00
0000041f: DUP3
00000420: ADD
00000421: MSTORE
00000422: PUSH32 0x7461636b00000000000000000000000000000000000000000000000000000000
00000443: PUSH1 0x20
00000445: DUP3
00000446: ADD
00000447: MSTORE
00000448: POP
00000449: JUMP
0000044a: JUMPDEST
0000044b: PUSH1 0x00
0000044d: PUSH2 0x0457
00000450: PUSH1 0x24
00000452: DUP4
00000453: PUSH2 0x03ea
00000456: JUMP
00000457: JUMPDEST
00000458: SWAP2
00000459: POP
0000045a: PUSH2 0x0462
0000045d: DUP3
0000045e: PUSH2 0x03fb
00000461: JUMP
00000462: JUMPDEST
00000463: PUSH1 0x40
00000465: DUP3
00000466: ADD
00000467: SWAP1
00000468: POP
00000469: SWAP2
0000046a: SWAP1
0000046b: POP
0000046c: JUMP
0000046d: JUMPDEST
0000046e: PUSH1 0x00
00000470: PUSH1 0x20
00000472: DUP3
00000473: ADD
00000474: SWAP1
00000475: POP
00000476: DUP2
00000477: DUP2
00000478: SUB
00000479: PUSH1 0x00
0000047b: DUP4
0000047c: ADD
0000047d: MSTORE
0000047e: PUSH2 0x0486
00000481: DUP2
00000482: PUSH2 0x044a
00000485: JUMP
00000486: JUMPDEST
00000487: SWAP1
00000488: POP
00000489: SWAP2
0000048a: SWAP1
0000048b: POP
0000048c: JUMP
0000048d: INVALID
0000048e: LOG2
0000048f: PUSH5 0x6970667358
00000495: UNKNOWN(0x22)
00000496: SLT
00000497: KECCAK256
00000498: SWAP6
00000499: UNKNOWN(0x24)
0000049a: UNKNOWN(0xB6)
0000049b: DUP13
0000049c: UNKNOWN(0xBA)
0000049d: PUSH11 0x59992c63a06e60ad59f37c
000004a9: DUP9
000004aa: UNKNOWN(0xCD)
000004ab: UNKNOWN(0xB2)
000004ac: UNKNOWN(0xB9)
000004ad: PUSH8 0x7d06e6eff9f070c8
000004b6: UNKNOWN(0xDA)
000004b7: UNKNOWN(0xBF)
000004b8: PUSH5 0x736f6c6343
000004be: STOP
000004bf: ADDMOD
000004c0: GT
000004c1: STOP
000004c2: 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: 0xd97ec7730a2fef538056f4a2f0e7ec3e1fee84e6c458b8daf6a6964ad3357038
call_targets: 0x773569c50335e943b3345ee37fcd43473cc384c8
target_varies: no
classification: constant_target
validation_json
{
    "sink": "CALL",
    "errors": 0,
    "status": "sink_reached",
    "attempts": 1,
    "trace_id": "0xd97ec7730a2fef538056f4a2f0e7ec3e1fee84e6c458b8daf6a6964ad3357038",
    "confirmed": false,
    "trace_mode": "callTracer",
    "call_targets": [
        "0x773569c50335e943b3345ee37fcd43473cc384c8"
    ],
    "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": "0x9e5faafc",
            "selector": "0x9e5faafc",
            "calldata_variants": [
                "0x9e5faafc",
                "0x9e5faafc0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xd4b83992",
            "selector": "0xd4b83992",
            "calldata_variants": [
                "0xd4b83992",
                "0xd4b839920000000000000000000000000000000000000000000000000000000000000000"
            ]
        }
    ]
}
evidence_json
{
    "examples": [
        {
            "pc": 293,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        },
        {
            "pc": 576,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        },
        {
            "pc": 742,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        }
    ],
    "call_count": 3,
    "guards_detected": [],
    "untrusted_call_count": 3
}
high other detector ETH value transfer possible 55 no no
view
trace_id: 0xd97ec7730a2fef538056f4a2f0e7ec3e1fee84e6c458b8daf6a6964ad3357038
call_targets: 0x773569c50335e943b3345ee37fcd43473cc384c8
target_varies: no
classification: constant_target
validation_json
{
    "sink": "CALL",
    "errors": 0,
    "status": "sink_reached",
    "attempts": 1,
    "trace_id": "0xd97ec7730a2fef538056f4a2f0e7ec3e1fee84e6c458b8daf6a6964ad3357038",
    "confirmed": false,
    "trace_mode": "callTracer",
    "call_targets": [
        "0x773569c50335e943b3345ee37fcd43473cc384c8"
    ],
    "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": "0x9e5faafc",
            "selector": "0x9e5faafc",
            "calldata_variants": [
                "0x9e5faafc",
                "0x9e5faafc0000000000000000000000000000000000000000000000000000000000000000"
            ]
        },
        {
            "calldata": "0xd4b83992",
            "selector": "0xd4b83992",
            "calldata_variants": [
                "0xd4b83992",
                "0xd4b839920000000000000000000000000000000000000000000000000000000000000000"
            ]
        }
    ]
}
evidence_json
{
    "examples": [
        {
            "pc": 293,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        },
        {
            "pc": 576,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        },
        {
            "pc": 742,
            "opcode": "CALL",
            "returndata_checked": null,
            "value_expression_category": "computed",
            "target_expression_category": "computed"
        }
    ],
    "eth_value_calls": 3,
    "guards_detected": []
}