In wine, Visual2Vtbl 

```
typedef struct IDCompositionVisual2Vtbl {
    BEGIN_INTERFACE

    /*** IUnknown methods ***/
    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
        IDCompositionVisual2 *This,
        REFIID riid,
        void **ppvObject);

    ULONG (STDMETHODCALLTYPE *AddRef)(
        IDCompositionVisual2 *This);

    ULONG (STDMETHODCALLTYPE *Release)(
        IDCompositionVisual2 *This);

    /*** IDCompositionVisual methods ***/
    HRESULT (STDMETHODCALLTYPE *SetOffsetX)(
        IDCompositionVisual2 *This,
        float offset_x);

    HRESULT (STDMETHODCALLTYPE *SetOffsetXAnimation)(
        IDCompositionVisual2 *This,
        IDCompositionAnimation *animation);

    HRESULT (STDMETHODCALLTYPE *SetOffsetY)(
        IDCompositionVisual2 *This,
        float offset_y);
```

setOffsetX (float *) at offset 0x18
visual2vtbl.png
But in windows 0x18 is setOffsetX (Animation *)

Is this correct?