If you have a Region field in which you enter either Asian or European, then you don't need a script, just a calculation to concatenate the name accordingly, such as:
regionField = "Asian" ; Upper ( lastName ) & " " & Proper ( firstName ) ;
regionField = "European" ; Proper ( firstName ) & " " & Upper ( lastName ) ;
defaultSetting (e.g. "region not specified")
Using the Upper( ) and Proper( ) functions ensures that the calc result always uses these formats regardless of how the name data is entered. Note, however, that Proper may conflict with preferred formatting (e.g. McXxx, MacXxx, macxxx, O'Xxxx, Xxxx-Yyyy, etc).
Thank you! So simple, I had made it much too complicated.