The "Paint" operator allows creating bitmaps when particles intersect with objects in the scene.
Each object who is to be painted must have a unique TP Texmap.
If multiple objects use the same material and MatIDs then the objects must have their own unique material and TP Texmap.
Each max object who will be painted needs its own unique Composite material in the slot you want to paint. That Composite should have whatever regular map is applied to the object and also a TP_Texmap set to Normal, Multiply or Addition, etc (depending on your needs).
Add bitmaps to the TP_TexMap and those will be used to paint the object.
In the TP Texmap, use VRayBMPFilter instead of Bitmap or the bitmap paths may be lost. (confirm?)
While it can be possible to duplicate the Paint operator in the TP UI – it is recommended to create a fresh one for each object to paint. Presumably, this has to do with how memory and data structures are allocated inside TP and 3dsmax.
.TIF images appear to cause a problem – JPG seems ok.
This seems to be some particular multi-threaded issue with the 3ds Max asset tracker.
Apparently the Bitmap texture tries to load files during rendering, possibly because TP gives it different times to evaluate at, and when two threads do that at the same time, you get a crash.
Using VRayBmpFilter texture instead of Bitmap or VRayHDRI seems to work fine for the particular scene.