"Buffer overrun detected" when trying to launch cod 1

I got Call of Duty to run by using an older version of lutris-wine, but I when I launch I get a error
"Microsoft Visual C++ Runtime Library

Program: …(path)\Call of Duty\CoDSP.exe

A buffer overrun has been detected which has corrupted the program’s internal state. The program cannot safely continue execution and must now be terminated."

I’ve searched and tried 2 fixes including

  1. putting atioglxx.dll into cod directory (didn’t work cause I don’t have a ATI graphics card)
  2. renaming “CoDSP.exe” to “mohaa.exe”, renaming the .exe to mohaa.exe forces the driver to use an internal driver profile (created by Intel for “Medal of Honor: Allied Assault”), which is also compatible with Call of Duty, but this doesn’t work as I don’t have an intel graphics card.
    none of these fixes worked.

I can swap to an old graphics driver but I find it inconvenient just to play a game.