Fix up install functions

Change-Id: I62110806f60cd923fb761f5e5f2544da3d5b68b1
diff --git a/twinstall.cpp b/twinstall.cpp
index 4247cf7..595c4d2 100644
--- a/twinstall.cpp
+++ b/twinstall.cpp
@@ -269,15 +269,22 @@
 	DataManager::GetValue(TW_SIGNED_ZIP_VERIFY_VAR, zip_verify);
 #endif
 	DataManager::SetProgress(0);
+
+	MemMapping map;
+	if (sysMapFile(path, &map) != 0) {
+		LOGERR("Failed to sysMapFile '%s'\n", path);
+        return -1;
+    }
+
 	if (zip_verify) {
 		gui_print("Verifying zip signature...\n");
-		ret_val = verify_file(path);
+		ret_val = verify_file(map.addr, map.length);
 		if (ret_val != VERIFY_SUCCESS) {
 			LOGERR("Zip signature verification failed: %i\n", ret_val);
 			return -1;
 		}
 	}
-	ret_val = mzOpenZipArchive(path, &Zip);
+	ret_val = mzOpenZipArchive(map.addr, map.length, &Zip);
 	if (ret_val != 0) {
 		LOGERR("Zip file is corrupt!\n", path);
 		return INSTALL_CORRUPT;