\s+ заменяет только 0x20, 0x9, 0xA, 0xD о чём прямо сказано в мануале. Если что-то и выглядит как пробел, может спокойно им не являться. А есть ещё разные типографские неразрывные пробелы и т.д.
this.map.writeByte((byte) ((this.map.readByte(_local2) & (0xFF ^ (1 << _local3)))));
прочитать байт _local2 и сравнить его с обратной маской в зависимости от бита по позиции _local3, затем записать получившийся байт. как тут можно понять, для чего это?))