I had the thought, right now Process_File_Copy() is downloading the archives via curl, via the com server API, and I use SMB Direct so there's no reason to do it that way.
I thought maybe the 404 is happening because I don't have any of the files replicated onto the com server, I tried copying <storage>\software_uploads to C:\toems_local_storage\, this didn't work but I don't think the server config knows about this file location anymore. I would have to dive into the api code and I can't do that right now.
Since it should be using SMB for this anyway, I implemented that, and now it seems to be working
I can provide the code, but I'm not quite happy with some rough edges it has, I've made a lot of other tweaks along the way, and ultimately this solution is derived from existing code; also the codeblocks here don't know about powershell and make a visual mess of it.
One additional note, the call to Expand-Archive doesn't use -force, which means it can't overwrite. I didn't locate the overwrite value so I just hard-forced it, which won't matter for my case. It should probably be something like -force:$file.Overwrite