One of the best tips someone told me was to have a pretty much constant supply of 'new' things to look at / eat / play with.
This friend of mine used to take a rucksack filled only with this kind of thing (keeping her own handluggage light as well, to allow for the weight!)
At regular intervals something is extracted for each child (best to have similar items to avoid rows!) The trick is to do this regularly, in time slots that work for the age of the child (say every half hour - hour?)and, on really long journeys, to take back in some of the earlier items so they can be re-used (perhaps for the other child).
I appreciate this could mean a lot of things, given how long you're travelling for, but my friend said that the even the smallest things worked well. Her 5 year old had things like a colouring and sticker book, with crayons attached by string to the book(not felt tips, whose lids could get dropped. She also did an 'eye-spy' game with pictures of airport related things that the child had to spot. They got a prize at regular intervals through the quiz!!
Other tips that I'm sure you'll have thought of - use the stopovers to wash and freshen up, so that you don't have to venture to the airplane loos more often than absolutely necessary. You could also stock up on more 'new' items, and jetison old ones (although not sure how good KL is for this). Put the children in really cool, loose clothing and take a few extra layers so you can get warmer at night in the plane if necessary.
Put your 2 year old on the window seat, and the 4 year old on the aisle (don't let them put you in the middle of a 5 seater section if they have them, as they're impossible to get out of!) Hopefully they'll give you bulkhead seats, so you have more of a play area.
If you have a video camera, try loading a pre-recorded home video of yourselves. My sister does this with my neice and it apparently keeps her occupied for an hour at a time, just watching herself, Daddy, the cat etc.!
Good luck!