Eh, every stringcompare does it “character by character”, even if later processor design have mnemonics comparing larger blocks of data, they still work on the same basic principle. Mnemonics comparing larger blocks are usually faster by skipping useless “boosters” like branchprediction and what not, unrelated to CMP (compare) opcodes.

In this case, it just reads the connecting users steam_id into a space of memory, uses this data to instruct the local database to return TRUE or FALSE if this steam_id is present in the table containing “valid” steam_id:s.

As usual, my answers are too long, live with it.