https://bugs.winehq.org/show_bug.cgi?id=45080
--- Comment #13 from Nikolay Sivov bunglehead@gmail.com --- (In reply to Toni from comment #12)
In case it's not clear you can try editing dlls/dxgi/device.c, around line 42 (depends on the wine source you're editing), where you have the line "|| IsEqualGUID(riid, &IID_IDXGIDevice1)", add another line with "|| IsEqualGUID(riid, &IID_IDXGIDevice2)" instead just below that. That will make it return an incomplete IDXGIDevice2 interface that might or might not work.
Try that and then see if you get to the same point or hit some new problem.
I don't think it's useful. If you're going to edit it, you should be adding new methods too so you don't have to guess later why it failed.