Well, wrong color because of ARGB vs. ABGR?  I suppose using swizzles like here would work?
https://github.com/DHrpcs3/rpcs3/pull/233/files

GLint swizzleMask[] = { GL_BLUE, GL_GREEN, GL_RED, GL_ALPHA };

-[Unknown]