It's easy to claim that Daryl Hair had "pre-determined that he was gonna call" Murali without examining the all the facts.
Firstly, a number of umpires, including Hair, had previously raised concerns about Muralitharan's action with the ICC, with those reports forwarded to the Board of Control for Cricket in Sri Lanka (BCCSL, now Sri Lanka Cricket). Those reports apparently fell on deaf ears.
As Hair said in an interview in 2020, "You try your best to say that it had to stop, or had to change."
The BCCSL must take responsibility for what followed as they failed to act on the reports forwarded by the ICC.
According to the rules of the day and the observations of several umpires, Murali was a 'chucker' and the authorities were failing to act. This left Hair with a dilemma. He said, "You understand it's a drastic step to take but when you feel like nothing is going to change, if six or seven wickets fall and you know those balls were illegal, in my mind I wouldn't have been doing my job."
The subsequent modification of the rules defining a legal delivery, and the testing of Murali may have legitimised his action but, at the time he was 'called', his action was illegal by the letter of the law in place and Hair had no option. To use your quote, " You can cry till the cows come home but it wont change that fact."