https://gcc.gnu.org/bugzilla/show_bug.cgi?id=80013
--- Comment #1 from Rudy Y. <rudyy.id at gmail dot com> --- Disassembler 'libcrypto-41.dll' - LibreSSL x64 2.5.1 - compile by Libre developer itself using gnuc compiler ( version 5.4.0? ): xor ecx,ecx /* same as above! */ xor r8d,r8d /* same as above! */ xor edx,edx /* same as above! */ call CreateMutexA /* CreateMutex(NULL, FALSE, NULL) */ mov rcx,rax mov rax,rbx /* Different? */ lock cmpxchg [],rcx test rax,rax jz . call CloseHandle Event 5.x got this problem too.