[Solved]
I owe everyone a deep and sincere apology.
Let me try to make the story short:
From the beginning, due to security reasons, I wasn't allowed to access the PLCs (which are several thousand miles away) remotely.
I was allowed only remote access to the PC in which TwinCAT is running.
Any modification I would need to do with any of the PLCs, I had to send it to a person in the field to apply it, then I would investigate the results in TC.
Due to the erroneous data received by TC, I suggested modifying one of the PLCs to send known-fixed values, hoping that I can locate these values in the PFB card memory (suspecting wrong or shifted addresses).
After getting the OK that the modification was implemented, TC was still showing erroneous values... Here I posted my original msg.
With the lack of new ideas, I insisted on accessing the PLCs myself...Finally, I got the OK.
Just a few minutes after access, I found that my modification was wrongly applied: instead of copying blocks from one project to another, they edited the existing blocks with code from the original blocks (not the modified ones). So, I was under a "wrong" impression that the values are fixed in the PLC while they are changing in TC.
After correcting this mistake, TC shows the known-fixed values as they are but bytes-reversed.
Applying "byte-swapping" function (thanks to everyone points this out), TC and the linked software show the data correctly.
Please accept my apology and I'm really thankful to everyone tried to help.
Hos
[PS: How to mark the original post as "Solved". I can't even see the "Edit" icon which FAQ talks about]