How so if you don't even use the source path in your code? P.S.: More to the point, you don't call any functions to actually unzip anything! Unzopen fails, because it expects the zip file name/path, but you are passing to it the target path, which presumably is a directory, not a file at all. NMo wonder it doesn't work! Moreover, unzOpen only provides a handle to the zip file that lets you access the individual files contained within, you need to use variuous other functions to walk over the list of files, find their relative path, and extract it to the target location.
GOTOs are a bit like wire coat hangers: they tend to breed in the darkness, such that where there once were few, eventually there are many, and the program's architecture collapses beneath them. (Fran Poretto)