It's called kernel_123 in your copy because: in a certain Vocab resource it lists each kernel function by name and number. Which functions are available differs per version of SCI -- for example text parser games had Parse and Said functions, which were later both replaced with Dummy. StrSplit used to be #120, but it was then moved around to #123.
If a game provides its own copy of vocab.999 (old) or 999.voc (new), SCI Companion's decompiler and compiler alike will know what to do. If they don't, built-in copies of these lists may be used depending on what version is detected.
In the SCI 1.001.100 that I use specifically, StrSplit is in fact RemapColors. There is no StrSplit in that particular version.
But technically, the name of a kernel call doesn't matter, so long as you call the right one with the correct arguments. If you're absolutely sure kernel #123 is StrSplit, just use kernel_123 as if you wrote StrSplit. The final bytecode output would be the same either way.
Some more tech details: when faced with the string (StrSplit engBuf @thisBuf 0), the compiler will look through that list of kernel calls and any known procedures to see if any of them match by name. There is no procedure by the name StrSplit, nor is there a kernel call (because it's kernel_123) so it gives the error shown.