fixed ReadFile, added a param for dwNumBytesRead, encountered some situations where ReadFile failed with a NULL paramter even though docs say it is optional.