Dead useful when defacing. I'm not gonna provide the file as it's very private and I worked mad hard on it 
Code:
#!/usr/bin/perl
####1. open the file
#####2 read from the file
#######3 take the strings that it reads make HTTP requests based on content
########4 analyze the response
#########5 if one is found, write to a file
use strict; ##like #include <stdin.h> in C
use warnings; ##like #include <stdin.h> in C
use Net::HTTP; ##like #include <stdin.h in C
use Getopt::Std; ##like #include <stdin.h in
my ($code, $mess); ## strings (variables)
my (%h, %options); ##strings (variables)
getopts('l:t:', \%options); #(sets options)
my $list = $options{l} || die "Usage: $0 -l <list> -t <target>\n"; ##strings (variables)
my $target = $options{t} || die "Usage: $0 -l <list> -t <target>\n"; ##strings (variables)
open(LIST, "<", $list) || die "open(): error: $!.\n"; # opens the list and puts it in variable $list
print "Searching for files on $target...\n"; #just prints that on screen
while(defined(my $line = <LIST>)) # reads the $list and puts it in a $line and reads it line by line until the end
{
chomp $line; #chomp removes /n (enteer)
my $request = Net::HTTP -> new (Host => $target) || die "Net::HTTP new(): error: [email protected]\n"; #ask me
$request -> write_request(GET => $line, 'User-Agent' => "Windows XP"); #ask me
($code, $mess, %h) = $request -> read_response_headers;#ask me
if($code == 200 || $code == 302) #errors it reads to tell if its alive
{
print "Found file: $line\n"; #prints it if its found
}
}
print "Done, exiting...\n"; #prints it
close LIST;
exit;