Migrating the files, considering only the First Published Location, is possible with the app with a workaround. You can follow the steps below to filter the files based on First Published Location.


Step 1 : Create a comma-separated string of the IDs of the records that can be the First Published Locations. (Target one parent Object at a time)
a. Extract the record IDs of the object of interest into an Excel sheet using Dataloader.io or a tool of your choice. (The below screenshot is from Dataloader.io)

b. Apply the following formula to the IDs in the Excel to convert them to a comma-separated string. 

=TEXTJOIN(",", TRUE, "'" & A2:A24 & "'")


Step 2 : Add the comma-separated ID string to the file filter in the app along with the following clause as shown in the screenshot.

ContentDocumentId IN 
(SELECT ContentDocumentId FROM ContentVersion WHERE FirstPublishLocationId IN 
   (
      // Add comma seperated Id string                  
   )
)


Step 3: Now, to go with the UI approach of migration, you can click on Search, verify the files, and choose to migrate.
If the comma seperated string is too long, you might get an error (MALFORMED_QUERY: SOQL statements can not be longer than 100000 characters), in that case you can use a smaller set of Ids.

The batch approach of migration works for a fairly long comma-separated string, but if you face an error in the Apex job, try with a smaller set of IDs.


Note: This approach does not give expected results if a file is shared with more than one record belonging to the same object.