Solution worked perfectly, modified some code from the FileExists() help page to make this:
#include <AutoItConstants.au3>
#include <MsgBoxConstants.au3>
;Finds the drive path of the USB
Local $aArray = DriveGetDrive($DT_REMOVABLE)
If @error Then
;An error occurred when retrieving the drives.
MsgBox($MB_SYSTEMMODAL, "", "It appears an error occurred.")
Else
For $i = 1 To $aArray[0]
;Show all the drives found and convert the drive letter to uppercase.
;MsgBox($MB_SYSTEMMODAL, "", "Drive " & $i & "/" & $aArray[0] & ":" & @CRLF & StringUpper($aArray[$i]))
If FileExists($aArray[$i]&"\setup\USB_Search_Target") Then
;Removes setup folder because DirCopy is stupid and needs to create a new folder
DirRemove("C:\Users\admin\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Startup")
sleep(200)
;Moves main scripts & installers to C:\
DirCopy($aArray[$i]&"\Setup","C:\Install_notes\Setup",1)
sleep(200)
;Moves the startup script to startup folder
DirCopy($aArray[$i]&"\StartupController","C:\Users\admin\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Startup",1)
sleep(500)
Shutdown(6)
;MsgBox(4096,"","Test Works")
EndIf
Next
EndIf