Payload is (more than likely) not null terminated so you can't print it directly. If it was null terminated, you would not have to go through the exercise of using memset and memcpy.
Further
Serial.println(sizeof(nullTermedPayload));
This will print the size of the buffer nullTermedPayload (always two more than length). The below will print the actual length of the content and should match the length argument.
Serial.println(strlen(nullTermedPayload));