Function at 0x42ebbf
Capabilities:
Delete registry key
Get installed programs
Set registry value

Disassembly:
push ebp
lea ebp, [esp - 0x1ac]
sub esp, 0x22c
mov eax, dword [0x4d5784]
xor eax, ebp
mov dword [ebp + 0x1a8], eax
mov eax, dword [ebp + 0x1b4]
push ebx
mov ebx, dword [sym.imp.SHLWAPI.dll_PathAppendW]
push esi
mov esi, dword [sym.imp.ADVAPI32.dll_RegSetValueExW]
push edi
mov dword [ebp - 0x68], eax
mov dword [ebp - 0x74], str..kzShellNew
mov dword [ebp - 0x70], str..zipShellNew
mov dword [ebp - 0x6c], str..7zShellNew
mov dword [ebp - 0x80], str.KzNew.dat
mov dword [ebp - 0x7c], str.zipnew.dat
mov dword [ebp - 0x78], str.7znew.dat
xor edi, edi
push dword [ebp - 0x68]
lea eax, [ebp - 0x60]
push 0x104
push eax
call fcn.004304d7
mov eax, dword [ebp + edi - 0x74]
add esp, 0xc
lea ecx, [ebp - 0x64]
push ecx
push eax
push SysReAllocString
call dword [sym.imp.ADVAPI32.dll_RegOpenKeyW]
test eax, eax
je 0x42ec5d
lea eax, [ebp - 0x64]
push eax
push dword [ebp + edi - 0x74]
push SysReAllocString
call dword [sym.imp.ADVAPI32.dll_RegCreateKeyW]
push dword [ebp + edi - 0x80]
lea eax, [ebp - 0x60]
push eax
call ebx
lea eax, [ebp - 0x60]
push eax
call fcn.0042f8e7
pop ecx
lea eax, [eax + eax + 2]
push eax
lea eax, [ebp - 0x60]
push eax
push 1
push 0
push str.FileName
push dword [ebp - 0x64]
call esi
push dword [ebp - 0x64]
call dword [sym.imp.ADVAPI32.dll_RegCloseKey]
add edi, 4
cmp edi, 0xc
jl 0x42ec1e
push dword [ebp - 0x68]
lea eax, [ebp - 0x60]
push 0x104
push eax
call fcn.004304d7
add esp, 0xc
push str.Uninstaller.exe
lea eax, [ebp - 0x60]
push eax
call ebx
lea eax, [ebp - 0x64]
push eax
push str.SoftwareMicrosoftWindowsCurrentVersionUninstallKuaiZip
push reloc.OLEAUT32.dll_SysReAllocString
call dword [sym.imp.ADVAPI32.dll_RegCreateKeyW]
test eax, eax
jne 0x42edae
lea eax, [ebp - 0x60]
push eax
call fcn.0042f8e7
pop ecx
lea eax, [eax + eax + 2]
push eax
lea eax, [ebp - 0x60]
push eax
push 1
xor ebx, ebx
push ebx
push str.UninstallString
push dword [ebp - 0x64]
call esi
mov edi, 0x4da128
push 0xf
mov ecx, edi
call fcn.0042d5c5
push eax
call fcn.0042f8e7
pop ecx
lea eax, [eax + eax + 2]
push eax
push 0xf
mov ecx, edi
call fcn.0042d5c5
push eax
push 1
push ebx
push str.DisplayName
push dword [ebp - 0x64]
call esi
mov eax, dword [0x4da0cc]
mov ecx, dword [0x4da0b8]
mov edx, 0x4da0b8
mov dword [ebp - 0x68], ecx
cmp eax, 8
jae 0x42edaa
mov dword [ebp - 0x68], edx
mov edi, edx
push dword [ebp - 0x68]
call fcn.0042f8e7
pop ecx
lea eax, [eax + eax + 2]
push eax
push edi
push 1
push ebx
push str.DisplayVersion
push dword [ebp - 0x64]
call esi
lea eax, [ebp - 0x60]
push eax
call fcn.0042f8e7
pop ecx
lea eax, [eax + eax + 2]
push eax
lea eax, [ebp - 0x60]
push eax
push 1
push ebx
push str.DisplayIcon
push dword [ebp - 0x64]
call esi
mov edi, str.Suzhou_Shijie_Software_Co.__LTD
push edi
call fcn.0042f8e7
pop ecx
lea eax, [eax + eax + 2]
push eax
push edi
push 1
push ebx
push str.Publisher
push dword [ebp - 0x64]
call esi
push dword [ebp - 0x64]
call dword [sym.imp.ADVAPI32.dll_RegCloseKey]
jmp 0x42edb0
mov edi, ecx
jmp 0x42ed44
xor ebx, ebx
lea eax, [ebp - 0x64]
push eax
push 0xf003f
push ebx
push str.SoftwareMicrosoftWindowsCurrentVersionUninstall
push reloc.OLEAUT32.dll_SysReAllocString
call dword [sym.imp.ADVAPI32.dll_RegOpenKeyExW]
pop edi
pop esi
pop ebx
test eax, eax
jne 0x42ede8
push str.KZip
push dword [ebp - 0x64]
call dword [sym.imp.ADVAPI32.dll_RegDeleteKeyW]
push dword [ebp - 0x64]
call dword [sym.imp.ADVAPI32.dll_RegCloseKey]
call fcn.0042e52b
call fcn.0042eab4
mov ecx, dword [ebp + 0x1a8]
xor ecx, ebp
call fcn.0043039d
add ebp, 0x1ac
leave
ret