Is there anything that can cause the normals to appear different?

I have a character, the materials properties are the same as the original ones, the diffuse and normal map also match the original one, same for the alpha channel of both. But it appear in game, the normal does not appear right, and when I switch to another color, the normal is completly different It doesn’t make sense at all.

The only thing different between color A and color B are are the secondary texture for the body which is underneath the mesh, and somehow, if it get switched, the normal of the clothings change.

Any idea? I know this is weird, Iv never seen something like that before and it kind of blow my mind.

(I should also say that the mesh using the two original textures is the original mesh for that content, so it should automatically be mapped to diffuse 0, normal 0 since the original mode doesnt have more than 1 texture. I have a feeling that it has something to do with the material properties doing something when two meshes are over each other. But yeah, as is, the mesh should be rendered properly since nothing really changed.)

Edit : I also have a second unrelated question, is there any way of removing EMG (sub-objects within an EMO)? I have attempted to remove them manually using an HEX editor but it break the file anyway, I guess there is some sort of header that I have to modify as well?

Edit2 :

Aww nevermind, I just recalled that the normal maps references are not starting from 0 just like the diffuse map referense but from the total of diffuse map