The main question here is: is the optimisation required?
If it is then you cannot replace it with slower, more readable code. You will need to add comments etc to it to make it more readable.
If the code does not have to be optimised then it should not be (to the point of affecting readability) and you can re-factor it to make it more readable.
HOWEVER - make sure you know exactly what the code does and how to throughly test it before you start changing things. This includes peak usage etc. If do not not have to compose a set of test cases and run them before and after then you do not have time to do the refactoring.