mIRC is single threaded, the GUI ruins on the same thread as everything else so if you have a script that takes a long time to execute it holds up everything else mIRC is doing. Try refactoring the code to be more efficient. INI file access should already be pretty fast because it's supposed to be cached, but you may try loading the INI file to a hash table with the /hload command and looping over that. Referencing properties by their key is more efficient than looping over $hget().item. If this doesn't speed things up, instead of doing all 3,400 entries at once start a number of timers to stagger them.