Fill a large saucepan with lightly salted water and bring to a boil over high heat. Cook pasta in boiling water, stirring occasionally, until the pasta has cooked through, about 11 minutes. Drain well.
Meanwhile, melt the butter in a large saucepan over medium heat. Stir in the garlic and cook until golden brown, about 5 minutes. Add 2/3 cup of the beans and 1/2 cup of soy milk; mash with the back of a spoon or a potato masher to create a thick paste. Stir in enough soy milk to create a thick sauce. Mix in the remaining beans and asparagus; simmer until asparagus is tender. Season to taste with salt and pepper. Toss pasta with the sauce and serve.