Danger: assembler and userAddress are hard coded, make sure to adjust those values for your case before sending funds! Also read the reference article below to understand it better