http://bugs.winehq.org/show_bug.cgi?id=9337
--- Comment #26 from Anastasius Focht focht@gmx.net 2010-08-22 14:51:23 --- Hello,
well this not copy protection stuff in any way. More like d3d/whatever bug... You can also use +snoop to provide better diag because that logs.dll exports lots of helper functions for the game engine, giving some insight.
--- snip --- ... 0009:CALL logs.?BES_CalculateBSphere@@YAXPAUI3D_CreateObjectProp@@KPAVc_Vector3@@PAMPAVc_Bbox@@@Z() ret=054bb75f 0009:RET logs.?BES_CalculateBSphere@@YAXPAUI3D_CreateObjectProp@@KPAVc_Vector3@@PAMPAVc_Bbox@@@Z() retval=0b6b242c ret=054bb75f 0009:Call ntdll.RtlAllocateHeap(00110000,00000000,00000338) ret=1006acda 0009:Ret ntdll.RtlAllocateHeap() retval=0b6b8ae8 ret=1006acda 0009:Call ntdll.RtlFreeHeap(00110000,00000000,0b6aa1f8) ret=1006ad16 0009:Ret ntdll.RtlFreeHeap() retval=00000001 ret=1006ad16 ... 0009:warn:d3d:IWineD3DDeviceImpl_GetDeviceCaps (0x1610e0) : stub, calling idirect3d for now 0009:Call wined3d.wined3d_mutex_unlock() ret=728f1c84 0009:Ret wined3d.wined3d_mutex_unlock() retval=00000000 ret=728f1c84 0009:Call ntdll.RtlFreeHeap(00110000,00000000,0b698f68) ret=728f1e63 0009:Ret ntdll.RtlFreeHeap() retval=00000001 ret=728f1e63 0009:Call ntdll.RtlAllocateHeap(00110000,00000000,00000020) ret=101067b3 0009:Ret ntdll.RtlAllocateHeap() retval=0b6aa3d0 ret=101067b3 0009:trace:seh:raise_exception code=c0000005 flags=0 addr=0x1008ec8b ip=1008ec8b tid=0009 0009:trace:seh:raise_exception info[0]=00000000 0009:trace:seh:raise_exception info[1]=0000000c 0009:trace:seh:raise_exception eax=00000000 ebx=05836020 ecx=0b4be98c edx=0b6aa3e4 esi=0b6aa3d4 edi=0b6aa3d2 0009:trace:seh:raise_exception ebp=0032d33c esp=0032d068 cs=0023 ds=002b es=002b fs=0063 gs=006b flags=00210212 --- snip ---
The crash location looks more like an internal helper which does some transformation/floating point operations on 3D vectors. At least one of the arguments (pointer to object instance) is 0, hence the crash. Could be anything ...
Regards