Export Compiled Binary - Difference between hex files with and witout bootloader

Hey guys - this topic is a few months old - but I'm confused about what the 'bootloader' is exactly in the case of, for example, the ATTiny chips.

I'm using the ATTinyCore, and my understanding is that when I write the 'bootloader' to, in this case an ATTiny44A, all I'm really doing is writing fuse settings, which seems to be confirmed by looking at the avrdude verbose output because I can really only see it writing and confirming the efuse, hfuse and lfuse.

However, after uploading my sketch to the ATTiny44 with the programmer (after setting the fuses by writing the 'bootloader'), if I go into the folder where it dumped my HEX files, I still see a regular .hex file and then still an additional .with_bootloader.hex file sitting there. I understand the purpose of the .with_bootloader.hex file in the case of an Arduino because it allows serial reprogramming, but what's the purpose of the 'bootloader' here? Does the .with_bootloader.hex contain the fuse settings somehow? And if so, why is it the .with_bootloader.hex file 104 bytes larger than the normal .hex file, when it would really only need to be 3 bytes larger?

Basically, if I'm going to send one of these .hex files to Digikey for automatic programming of my chips, which one of these .hex files should I send them? Digikey wants my fuse settings documented separately, so even if the .with_bootloader.hex file contains them, I feel like I should be good with the standard .hex file, but I just want to be sure before I drop a $50 first article setup fee.