Function at 0x41e6d0
Capabilities:
Create thread
Read .ini file

Disassembly:
mov eax, 0x131c
call fcn.004a5e30
mov eax, dword [0x4c4004]
xor eax, esp
mov dword [esp + 0x1314], eax
movups xmm0, xmmword [str.UninstallEntries_]
mov eax, dword [0x4aeb68]
push ebx
push ebp
push esi
push edi
movups xmmword [esp + 0x118], xmm0
push 0x1e4
movups xmm0, xmmword [0x4aeb58]
mov dword [esp + 0x13c], eax
lea eax, [esp + 0x140]
push 0
push eax
movups xmmword [esp + 0x134], xmm0
call fcn.0048e880
add esp, 0xc
xor eax, eax
mov word [esp + 0x50], ax
push 0xc6
push eax
lea eax, [esp + 0x5a]
push eax
call fcn.0048e880
add esp, 0xc
lea eax, [esp + 0x50]
push 0xa
push 0x64
push eax
push 0
call fcn.004927cc
add esp, 4
push eax
call fcn.0048f70e
add esp, 0x10
lea eax, [esp + 0x50]
push eax
lea eax, [esp + 0x11c]
push eax
call dword [sym.imp.SHLWAPI.dll_StrCatW]
push 0x27c9
push dword [0x4def88]
call dword [sym.imp.USER32.dll_GetDlgItem]
mov ebx, eax
mov ecx, ebx
call fcn.00476300
mov ebp, eax
test ebp, ebp
je 0x41e947
push 0x4ded80
push 1
push str.Confirm
push str.SROPTIONS
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileIntW]
test eax, eax
je 0x41e826
push 0xa
push 0x64
lea eax, [esp + 0xb28]
push eax
push ebp
call fcn.0048f70e
add esp, 0x10
lea eax, [esp + 0xb20]
mov edx, 0x4aea68
mov ecx, 0x4ad9cc
push eax
call fcn.00477440
push eax
lea eax, [esp + 0x328]
push 0x104
push eax
call fcn.0040a3c0
add esp, 0x10
mov edx, 0x4ad0a4
mov ecx, 0x4ad9cc
push 0x24
call fcn.00477440
push eax
lea eax, [esp + 0x328]
push eax
push dword [0x4def88]
call dword [sym.imp.USER32.dll_MessageBoxW]
cmp eax, 6
jne 0x41e9a3
mov edi, dword [sym.imp.USER32.dll_SendMessageW]
push 0
push 0
push 0x1004
push ebx
call edi
lea esi, [eax - 1]
cmp esi, 0xffffffff
je 0x41e98b
push 0xf000
push esi
push 0x102c
push ebx
call edi
and eax, 0xfffff000
cmp eax, 0x2000
jne 0x41e93b
push 0x7fc
lea eax, [esp + 0x328]
mov dword [esp + 0x324], 0
push 0
push eax
call fcn.0048e880
add esp, 0xc
mov dword [esp + 0xb20], 0
lea eax, [esp + 0xb24]
push 0x7fc
push 0
push eax
call fcn.0048e880
add esp, 0xc
mov dword [esp + 0x1c], 6
lea eax, [esp + 0x320]
mov dword [esp + 0x2c], 0x400
mov dword [esp + 0x28], eax
lea eax, [esp + 0x14]
push eax
push esi
push 0x1073
push ebx
call edi
push 0x5c
lea eax, [esp + 0x324]
push eax
call dword [sym.imp.SHLWAPI.dll_StrChrW]
test eax, eax
je 0x41e9a3
lea ecx, [esp + 0x320]
sub eax, ecx
lea ecx, [esp + 0x322]
sar eax, 1
lea eax, [ecx + eax*2]
push eax
lea eax, [esp + 0xb24]
push eax
call dword [sym.imp.SHLWAPI.dll_StrCpyW]
lea eax, [esp + 0x118]
mov ecx, 0x80000002
push eax
push 1
push ebp
push str.UninHKLM
lea edx, [esp + 0xb30]
call fcn.00476910
add esp, 0x10
push 0
push esi
push 0x1008
push ebx
call edi
dec ebp
dec esi
cmp esi, 0xffffffff
jne 0x41e844
jmp 0x41e98b
mov edx, 0x4aeb38
mov ecx, 0x4ad9cc
call fcn.00477440
push eax
lea eax, [esp + 0x324]
push eax
call dword [sym.imp.SHLWAPI.dll_StrCpyW]
lea eax, [esp + 0x320]
mov edx, 0x4aeb40
push 0x30
push eax
mov ecx, 0x4ad9cc
call fcn.00477440
push eax
push dword [0x4def88]
call dword [sym.imp.USER32.dll_MessageBoxW]
lea eax, [esp + 0x10]
push eax
push 0
push 0
push fcn.0041ae70
push 0
push 0
call dword [sym.imp.KERNEL32.dll_CreateThread]
mov ecx, dword [esp + 0x1324]
pop edi
pop esi
pop ebp
pop ebx
xor ecx, esp
call fcn.0048d925
add esp, 0x131c
ret