recoded memcpy into assembly