Place beans in a large saucepan with enough water to cover by 2 inches. Bring to a boil; reduce heat and simmer for 2 minutes. Remove from heat; cover and let stand for 1 hour. Drain and rinse beans. Return beans to pan and add 5 cups water. Bring to a boil; reduce heat and simmer, covered, 1 to 1 1/2 hours or until beans are tender, stirring occasionally. Add salt during last 15 minutes of cooking time.
In a blender or food processor, combine 1 cup cooked beans with 1 cup of their cooking liquid; process until smooth and set aside.
Cook bacon in a skillet over medium heat until brown and crisp. Drain all except 2 teaspoons of bacon drippings. Add onion and garlic to skillet and cook until tender, about 5 minutes. Add tomato and cook 1 minute longer.
Add mixture to beans in saucepan. Stir in chicken broth, blended beans, and TABASCO® Sauce. Bring to a boil and add macaroni. Reduce heat to medium-low and cook until macaroni is tender, about 7 minutes. Just before serving, stir in cilantro and adjust seasoning with salt and additional TABASCO® Sauce, if desired.
Makes 6 to 8 servings.