I think the phplist would be the way to go If I can get the export to ubb. It appears I could use the table in phplist or a csv file.
You dont need to dig through the UBB.threads database to export user email addresses. Luckily that feature has been available for nearly 10 years
Control Panel / Members / Email Members.
See attached screenshots
edit1:
if you have a really large list of users, you can export them in batches of 10 years, or 5 years or even 1 year groups. It doesnt matter if you overlap a time period and get the user's email address multiple times. phpList is smart enough to notice duplicate email addresses, and will only insert new ones. I was able to split a community consisting of over 30,000 members in to two sets; 20000101-20100101 and 20100101-CURRENT.
edit2: UBBCentral also uses phpLists since probably even before 2010. I'm not sure if Rick, Brooks or SD set it up way back then. I've done a few software version upgrades to it since. But it is the software used here for the sparse community mailings.
https://www.ubbcentral.com/lists/