Function at 0x422b04
Capabilities:
Set registry value

Disassembly:
push 0x114
mov eax, 0x529197
call fcn.004e27d2
mov ebx, ecx
mov dword [ebp - 0x118], ebx
mov eax, dword [ebx + 0x560]
mov eax, dword [eax + 0x10]
cmp eax, 0x68
jne 0x422bcc
mov esi, str.English
lea ecx, [ebp - 0x74]
push esi
call fcn.004099b0
xor edi, edi
mov dword [ebp - 4], edi
mov eax, dword [ebx + 0x4d0]
cmp eax, 0xa
ja case.0x422b52.0
movzx eax, byte [eax + 0x4230fc]
jmp dword [eax*4 + 0x4230f0]
mov esi, str.Chinese
push esi
call fcn.00401963
pop ecx
push eax
push esi
lea ecx, [ebp - 0x74]
call fcn.00402310
lea eax, [ebp - 0x118]
push eax
push str.SoftwareAdoreshareVideo_Converter_Genius
push reloc.WS2_32.dll_accept
call dword [sym.imp.ADVAPI32.dll_RegCreateKeyW]
xor ebx, ebx
inc ebx
test eax, eax
jne 0x422bc2
cmp dword [ebp - 0x60], 8
lea ecx, [ebp - 0x74]
mov eax, dword [ebp - 0x64]
cmovae ecx, dword [ebp - 0x74]
add eax, eax
push eax
push ecx
push ebx
push edi
push str.kCurrentLanguage
push dword [ebp - 0x118]
call dword [sym.imp.ADVAPI32.dll_RegSetValueExW]
push dword [ebp - 0x118]
call dword [sym.imp.ADVAPI32.dll_RegCloseKey]
mov esi, ebx
jmp 0x422bc4
mov esi, edi
lea ecx, [ebp - 0x74]
jmp 0x4230e1
cmp eax, 0x71
je 0x423015
cmp eax, 0x72
je 0x423015
cmp eax, 0x73
je 0x423015
lea ecx, [ebp - 0x114]
call fcn.0044de23
push 7
mov dword [ebp - 4], 2
xor edi, edi
pop ecx
xor eax, eax
mov dword [ebp - 0x78], ecx
mov dword [ebp - 0x7c], edi
mov word [ebp - 0x8c], ax
mov dword [ebp - 0x30], ecx
mov dword [ebp - 0x34], edi
mov word [ebp - 0x44], ax
mov dword [ebp - 0x18], ecx
mov dword [ebp - 0x1c], edi
mov word [ebp - 0x2c], ax
mov byte [ebp - 4], 5
mov eax, dword [ebx + 0x4d0]
cmp eax, 0x13
ja case.0x422c34.0
jmp dword [eax*4 + 0x423108]
mov esi, str.1041
push esi
call fcn.00401963
pop ecx
push eax
push esi
lea ecx, [ebp - 0x44]
call fcn.00402310
mov esi, 0x554798
jmp 0x422eaa
mov esi, str.1028
push esi
call fcn.00401963
pop ecx
push eax
push esi
lea ecx, [ebp - 0x44]
call fcn.00402310
mov esi, str.zhcn
jmp 0x422eaa
mov esi, str.1034
push esi
call fcn.00401963
pop ecx
push eax
push esi
lea ecx, [ebp - 0x44]
call fcn.00402310
mov esi, 0x554760
jmp 0x422eaa
mov esi, str.1031
push esi
call fcn.00401963
pop ecx
push eax
push esi
lea ecx, [ebp - 0x44]
call fcn.00402310
mov esi, 0x554748
jmp 0x422eaa
mov esi, str.1036
push esi
call fcn.00401963
pop ecx
push eax
push esi
lea ecx, [ebp - 0x44]
call fcn.00402310
mov esi, 0x554770
jmp 0x422eaa
mov esi, str.1049
push esi
call fcn.00401963
pop ecx
push eax
push esi
lea ecx, [ebp - 0x44]
call fcn.00402310
mov esi, 0x5547d0
jmp 0x422eaa
mov esi, str.1046
push esi
call fcn.00401963
pop ecx
push eax
push esi
lea ecx, [ebp - 0x44]
call fcn.00402310
mov esi, 0x5547c0
jmp 0x422eaa
mov esi, str.1025
push esi
call fcn.00401963
pop ecx
push eax
push esi
lea ecx, [ebp - 0x44]
call fcn.00402310
mov esi, 0x554710
jmp 0x422eaa
mov esi, str.1040
push esi
call fcn.00401963
pop ecx
push eax
push esi
lea ecx, [ebp - 0x44]
call fcn.00402310
mov esi, 0x554790
jmp 0x422eaa
mov esi, str.32772
push esi
call fcn.00401963
pop ecx
push eax
push esi
lea ecx, [ebp - 0x44]
call fcn.00402310
mov esi, str.zhtw
jmp 0x422eaa
mov esi, 0x554928
push esi
call fcn.00401963
pop ecx
push eax
push esi
lea ecx, [ebp - 0x44]
call fcn.00402310
mov esi, 0x5547a0
jmp 0x422eaa
mov esi, 0x554928
push esi
call fcn.00401963
pop ecx
push eax
push esi
lea ecx, [ebp - 0x44]
call fcn.00402310
mov esi, 0x5547a8
jmp 0x422eaa
mov esi, 0x554928
push esi
call fcn.00401963
pop ecx
push eax
push esi
lea ecx, [ebp - 0x44]
call fcn.00402310
mov esi, 0x554810
jmp 0x422eaa
mov esi, 0x554928
push esi
call fcn.00401963
pop ecx
push eax
push esi
lea ecx, [ebp - 0x44]
call fcn.00402310
mov esi, 0x554800
jmp 0x422eaa
mov esi, 0x554928
push esi
call fcn.00401963
pop ecx
push eax
push esi
lea ecx, [ebp - 0x44]
call fcn.00402310
mov esi, 0x554890
jmp 0x422eaa
mov esi, 0x554928
push esi
call fcn.00401963
pop ecx
push eax
push esi
lea ecx, [ebp - 0x44]
call fcn.00402310
mov esi, 0x5547f8
jmp 0x422eaa
mov esi, 0x554928
push esi
call fcn.00401963
pop ecx
push eax
push esi
lea ecx, [ebp - 0x44]
call fcn.00402310
mov esi, 0x55b6e4
jmp 0x422eaa
mov esi, 0x554928
push esi
call fcn.00401963
pop ecx
push eax
push esi
lea ecx, [ebp - 0x44]
call fcn.00402310
mov esi, 0x55b6ec
jmp 0x422eaa
mov esi, 0x554928
push esi
call fcn.00401963
pop ecx
push eax
push esi
lea ecx, [ebp - 0x44]
call fcn.00402310
mov esi, 0x55b6f4
jmp 0x422eaa
mov esi, str.1033
push esi
call fcn.00401963
pop ecx
push eax
push esi
lea ecx, [ebp - 0x44]
call fcn.00402310
mov esi, 0x554758
push esi
call fcn.00401963
pop ecx
push eax
push esi
lea ecx, [ebp - 0x2c]
call fcn.00402310
push str.NsisLanguageKey
lea ecx, [ebx + 0x2c]
call fcn.004483c9
mov esi, dword [sym.imp.ADVAPI32.dll_RegOpenKeyExW]
lea eax, [ebp - 0x11c]
push eax
push 0xf003f
push edi
push str.SoftWareWOW6432NodeMicrosoftWindowsCurrentVersionUninstall
push reloc.OLEAUT32.dll_SysReAllocString
call esi
xor ebx, ebx
inc ebx
test eax, eax
jne 0x422f0d
mov eax, dword [ebp - 0x118]
mov eax, dword [eax + 0x560]
add eax, 0x28
cmp dword [eax + 0x14], 8
jb 0x422f05
mov eax, dword [eax]
push eax
push str.SOFTWAREWow6432NodeMicrosoftWindowsCurrentVersionUninstall_s_is1
jmp 0x422f4b
lea eax, [ebp - 0x11c]
push eax
push 0xf003f
push edi
push str.SoftWareMicrosoftWindowsCurrentVersionUninstall
push reloc.OLEAUT32.dll_SysReAllocString
call esi
test eax, eax
jne 0x422fe2
mov eax, dword [ebp - 0x118]
mov eax, dword [eax + 0x560]
add eax, 0x28
cmp dword [eax + 0x14], 8
jb 0x422f45
mov eax, dword [eax]
push eax
push str.SOFTWAREMicrosoftWindowsCurrentVersionUninstall_s_is1
lea eax, [ebp - 0x114]
push eax
call fcn.0044e3dd
add esp, 0xc
lea ecx, [ebp - 0x114]
call fcn.0044e46d
mov esi, eax
push esi
call fcn.00401963
pop ecx
push eax
push esi
lea ecx, [ebp - 0x8c]
call fcn.00402310
cmp dword [ebp - 0x78], 8
lea ecx, [ebp - 0x11c]
lea eax, [ebp - 0x8c]
cmovae eax, dword [ebp - 0x8c]
push ecx
push eax
push reloc.OLEAUT32.dll_SysReAllocString
call dword [sym.imp.ADVAPI32.dll_RegCreateKeyW]
test eax, eax
jne 0x422fe2
cmp dword [ebp - 0x18], 8
lea ecx, [ebp - 0x2c]
mov eax, dword [ebp - 0x1c]
cmovae ecx, dword [ebp - 0x2c]
add eax, eax
push eax
push ecx
push ebx
push edi
push str.Inno_Setup:_Language
push dword [ebp - 0x11c]
call dword [sym.imp.ADVAPI32.dll_RegSetValueExW]
push dword [ebp - 0x11c]
test eax, eax
jne 0x422fdc
call dword [sym.imp.ADVAPI32.dll_RegCloseKey]
mov esi, ebx
jmp 0x422fe4
call dword [sym.imp.ADVAPI32.dll_RegCloseKey]
mov esi, edi
push edi
push ebx
lea ecx, [ebp - 0x2c]
call fcn.00402226
push edi
push ebx
lea ecx, [ebp - 0x44]
call fcn.00402226
push edi
push ebx
lea ecx, [ebp - 0x8c]
call fcn.00402226
lea ecx, [ebp - 0x114]
call fcn.0044df15
jmp 0x4230e8
mov esi, str.en_US
lea ecx, [ebp - 0x5c]
push esi
call fcn.004099b0
xor ebx, ebx
inc ebx
mov dword [ebp - 4], ebx
mov eax, dword [ebp - 0x118]
mov eax, dword [eax + 0x4d0]
cmp eax, 0xa
ja case.0x42303a.0
jmp dword [eax*4 + 0x423158]
mov esi, str.ja_JP
jmp case.0x42303a.0
mov esi, str.zh_CN
jmp case.0x42303a.0
mov esi, str.es_ES
jmp case.0x42303a.0
mov esi, str.de_DE
jmp case.0x42303a.0
mov esi, str.fr_FR
jmp case.0x42303a.0
mov esi, str.ru_RU
jmp case.0x42303a.0
mov esi, str.pt_BR
jmp case.0x42303a.0
mov esi, str.zh_TW
push esi
call fcn.00401963
pop ecx
push eax
push esi
lea ecx, [ebp - 0x5c]
call fcn.00402310
lea eax, [ebp - 0x120]
push eax
push str.SoftwareTenorshareiAnyGo
push reloc.WS2_32.dll_accept
call dword [sym.imp.ADVAPI32.dll_RegCreateKeyW]
test eax, eax
jne 0x4230da
cmp dword [ebp - 0x48], 8
lea ecx, [ebp - 0x5c]
mov eax, dword [ebp - 0x4c]
cmovae ecx, dword [ebp - 0x5c]
add eax, eax
push eax
push ecx
push ebx
xor edi, edi
push edi
push str.Lang
push dword [ebp - 0x120]
call dword [sym.imp.ADVAPI32.dll_RegSetValueExW]
push dword [ebp - 0x120]
call dword [sym.imp.ADVAPI32.dll_RegCloseKey]
mov esi, ebx
jmp 0x4230de
xor edi, edi
mov esi, edi
lea ecx, [ebp - 0x5c]
push edi
push ebx
call fcn.00402226
mov eax, esi
call fcn.004e277c
ret