It would be helpful to know more about your problem domain. For example, are you trying to pick out which of a 100 images the cropped sample came from? Or do you not even know if the cropped sample will have come from any of the images in your library?
I'm not an image processing expert, but I have worked with one or some stuff. The first thing that comes to mind is that you could try doing some kind of color averaging to see if you can create a huristic that lets you find likely candidates.
Find the average RGB of the cropped sample. Then to see if it might be a match with a sample, find the local RGB color average in a number of spots in the image. If your cropped RBG average is too far off from all the local averages in an image, it's not very likely that they are related.
Once you narrow down a few candidates, finding the exact location will still be tricky. Try working on sub-sampled versions of the images. If the orig. image is 2000x2000, sub-sample both images by 10 to get a 200x200 main image. Do the same subsample for the cropped image and see where you get a best fit. Then iteratively reduce the amount of sub-sampling and fine tune the exact location your cropped image came from. You are still doing some brute force, but it's on an image 100 times smaller.