Hi saquib,
It appears that the "larger" sw is not able to read and/or process the data from the COM port as quickly as data is being transferred from the digital balance. Unless you are already doing so, you could add a VISA Property node to monitor the "Bytes at Port" as the program is running. It will indicate how much data is ready to be read (in the buffer).
When running the larger program, it may be possible that the read buffer does not get processed often enough to "empty" the buffer, thus preventing the number of bytes at port from continuously increasing. In other words, maybe the larger sw does not process the data fast enough to keep up with the data from the digital balance.
It could also be a timeout issue. What version of Labview are you using?
JLV