I had this kind of trouble with a /tmp/xxxx.cmd file. From cygwin point of view, it had x-permission, from windows point of view (ls -ls 'C:\ProgramData\cygwin64\tmp\xxxx.cmd') it had not. In https://unix.stackexchange.com/questions/549908/chmod-not-working-in-mingw64-but-working-cygwin I found that if the file contents starts with ':\n' then cygwin recognizes it as an executable thingy, and it will display the x bit.