Because its an Enterprise 2.0 account, you can do the following, using the subscriber system view (see more info at Data View: Subscribers):
%%[
var @name
SET @name = "dude@exacttarget.com"
SET @status= Lookup("_subscribers", "status" , "EmailAddress", @name)
]%%
----- New EXAMPLE-----
Something I have using AMPscript in a clients code... may be useful here
SET @rr2 = CreateObject("RetrieveRequest")
SetObjectProperty(@rr2,"ObjectType","Subscriber")
AddObjectArrayItem(@rr2, "Properties", "ID")
AddObjectArrayItem(@rr2, "Properties", "EmailAddress")
AddObjectArrayItem(@rr2, "Properties", "SubscriberKey")
AddObjectArrayItem(@rr2, "Properties", "Status")
/* Create a filter be the subscriber Id */
SET @sfp2 = CreateObject("SimpleFilterPart")
SetObjectProperty(@sfp2,"Property","SubscriberKey")
SetObjectProperty(@sfp2,"SimpleOperator","equals")
AddObjectArrayItem(@sfp2,"Value",@email)
/* invoke the Retrieve Call */
SetObjectProperty(@rr2,"Filter",@sfp2)
SET @atts = InvokeRetrieve(@rr2,@status)
Then I loop through the results
If you are properly updating list membership using the SubscriberList object (as demonstrated in the code sample referenced in your comment), then the list is basically the same Publication List.
You can select Lists in UI Send Definitions.
Best Answer
Use the following code to determine which Lists (also Publication Lists) a subscriber is a part of.
Make sure your email is using
%%=MicrositeURL(xxxxx)=%%
or%%=RedirectTo(CloudPagesURL(xxxxx))=%%
.This ensures that the Landing Page/CloudPage has access to the subscriber's attributes (such as Subscriber Key)