char *str; // = value of eax
int i = 0;
while (str[i]) {
if (str[i] < ' ' || str[i] == ',')
str[i] = ' ';
i++;
}
It traverses a c-string and replaces all characters below ' '
and commas ','
with a space ' '
. See an ASCII table: characters "below" space are all the controll characters. The function probably wants to erase them to get a "clean" string. The string is passed via a pointer in eax.
I don't know what this would have to do with 23, but maybe this is what you got for some specific input while debugging.