Bien, en principio, una vez que tienes el puntero, sería cuestión de ir mirando a cuál de esas estructuras (esas que deben aparecer en Windows.h) podría corresponder. Es decir, suponiendo que sea una de ellas, utilizar los elementos que te indiquen las dimensiones y el apuntador a los datos para ver si la cosa cuadra o no. Una vez que des con el tipo de estructura concreto, ya sería comparar los bloques de memoria apuntados.
Para estas comprobaciones, lo suyo sería utilizar un depurador, colocar puntos de ruptura justo después de cargar las imágenes, y examinar la memoria correspondiente. El depurador para compiladores GNU creo que se llama gdb, pero no sé qué posibilidades de visualización de variables tiene. A las bravas, puedes guardar bloques de memoria en archivos binarios y examinarlos mediante algún editor hexadecimal (en internet puedes encontrar varios, gratuitos).
También puede ser que en alguna librería gráfica encuentres lo que necesitas para lo que quieres hacer, por ejemplo mira en estas páginas:
http://www.thefreecountry.com/sourcecode/graphics.shtml http://www.freebyte.com/programming/...phicslibraries
Saludos,