It is a mIRC problem but not a bug just a "lack of" kinda thing. The maximum string limit is ~940 characters depending on the length of the variable name.

read the bvar out in sets of 930 characters and loop trough it untill $bvar(&b,0) characters is reached.
i.e //bset -t &b 1 $str(a,930) | tokenize 32 $bvar(&b,1,930).text | echo -a $1-

The maximum ammount is actually 939 - binvar length so for &b

//bset -t &b 1 $str(a,937) | tokenize 32 $bvar(&b,1,937).text | echo -a $1-

would be the maximum.