how to get back the modified INOUT parameter in postgres
These are the two working solutions:

NEW := func1(NEW);


or first cast the record to text:

SELECT * FROM func1(NEW::text::"My_Table") INTO NEW;