https://bugs.winehq.org/show_bug.cgi?id=46785
--- Comment #8 from Paul Gofman gofmanp@gmail.com --- Created attachment 63939 --> https://bugs.winehq.org/attachment.cgi?id=63939 ddraw: Check device_list[] entry version in d3d7_EnumDevices()
I've tested the demo and could reproduce the problem, it was running fine in Wine for me but crashing in Wine Staging. Removing 0001-ddraw-Return-correct-devices-based-off-requested-Dir.patch was fixing the issue (0003-ddraw-Implement-DDENUMSURFACES_CANBECREATED-flag-in-.patch had to be removed also or it won't compile).
I am attaching the patch on top of current Wine Staging (with all the patches in place) which fixes the issue for me.