Function at 0x4123d0
Capabilities:
Query or enumerate registry value
Read .ini file

Disassembly:
sub esp, 0x620
mov ax, word [0x42f1ac]
push ebx
push ebp
push esi
mov esi, ecx
push edi
mov word [esp + 0x18], ax
mov ecx, 0x81
xor eax, eax
lea edi, [esp + 0x1a]
rep stosd dword es:[edi], eax
stosw word es:[edi], ax
cmp dword [0x42d03c], 4
jne 0x41253f
lea ecx, [esi + 0x58]
call sub.MFC42u.DLL_CString::Empty
lea ecx, [esi + 0x60]
call sub.MFC42u.DLL_CString::Empty
lea ecx, [esi + 0x5c]
call sub.MFC42u.DLL_CString::Empty
lea ecx, [esi + 0x64]
call sub.MFC42u.DLL_CString::Empty
mov edi, dword [esp + 0x634]
mov ecx, dword [esp + 0x63c]
mov ebx, dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringW]
push edi
push 0x104
push ecx
push str.urllib.dat_
push str.liblist
push str.360safe
call ebx
mov edx, dword [esp + 0x640]
push edi
push 0x104
push edx
push str.1.0.0.1001
push str.libversion
push str.360safe
call ebx
mov ebp, dword [esp + 0x638]
push edi
push 0x104
push ebp
push str.1.0.0.1001
push str.urlver
push str.360safe
call ebx
add esi, 0x24
push ebp
mov ecx, esi
call sub.MFC42u.DLL_CString::operator_2
mov ecx, 0x82
xor eax, eax
lea edi, [esp + 0x18]
lea edx, [esp + 0x18]
rep stosd dword es:[edi], eax
mov ecx, str.1.0.0.1001
mov dword [esp + 0x14], 1
mov dword [esp + 0x10], 0x104
mov edi, 0x104
lea eax, [esp + 0x18]
sub ecx, edx
mov dx, word [ecx + eax]
test dx, dx
je 0x4124dd
mov word [eax], dx
add eax, 2
dec edi
jne 0x4124c9
jmp 0x4124e1
test edi, edi
jne 0x4124e4
sub eax, 2
mov word [eax], 0
lea eax, [esp + 0x10]
lea ecx, [esp + 0x18]
push eax
lea edx, [esp + 0x18]
push ecx
push edx
push str.urlver
push str.Software360SafeLiveUp
push reloc.OLEAUT32.dll_SysReAllocString
call dword [sym.imp.SHLWAPI.dll_SHGetValueW]
lea eax, [esp + 0x18]
push ebp
push eax
call dword [sym.imp.MSVCRT.dll__wcsicmp]
add esp, 8
test eax, eax
jl 0x412991
lea ecx, [esp + 0x18]
push ecx
mov ecx, esi
call sub.MFC42u.DLL_CString::operator_2
pop edi
pop esi
pop ebp
xor eax, eax
pop ebx
add esp, 0x620
ret 0x10
mov ebx, dword [esp + 0x634]
mov ebp, dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringW]
push ebx
lea edx, [esp + 0x1c]
xor eax, eax
push 0x104
push edx
mov ecx, 0x82
lea edi, [esp + 0x24]
push eax
push str.libdate2
push str.360safe
rep stosd dword es:[edi], eax
call ebp
cmp word [esp + 0x18], 0
je 0x4125c0
mov eax, dword [esi + 0x84]
lea edi, [esi + 0x84]
lea ecx, [esp + 0x18]
push ecx
push eax
call dword [sym.imp.MSVCRT.dll__wcsicmp]
add esp, 8
test eax, eax
je 0x4125c0
lea edx, [esp + 0x18]
push edx
push str.libdate
push str.Software360SafeLiveUp
push reloc.OLEAUT32.dll_SysReAllocString
call fcn.00405e90
add esp, 0x10
lea eax, [esp + 0x18]
mov ecx, edi
push eax
call sub.MFC42u.DLL_CString::operator_2
mov ecx, 0x82
xor eax, eax
lea edi, [esp + 0x18]
push ebx
rep stosd dword es:[edi], eax
lea ecx, [esp + 0x1c]
push 0x104
push ecx
push eax
push str.plugcount
push str.360safe
call ebp
cmp word [esp + 0x18], 0
je 0x4125fa
lea edx, [esp + 0x18]
lea ecx, [esi + 0x28]
push edx
call sub.MFC42u.DLL_CString::operator_2
mov ecx, 0x82
xor eax, eax
lea edi, [esp + 0x18]
push ebx
rep stosd dword es:[edi], eax
lea eax, [esp + 0x1c]
push 0x104
push eax
push 0
push str.stylecount
push str.360safe
call ebp
cmp word [esp + 0x18], 0
je 0x412635
lea ecx, [esp + 0x18]
push ecx
lea ecx, [esi + 0x2c]
call sub.MFC42u.DLL_CString::operator_2
push ebx
lea edx, [esp + 0x1c]
xor eax, eax
push 0x104
push edx
mov ecx, 0x82
lea edi, [esp + 0x24]
push eax
push str.adcount
push str.360safe
rep stosd dword es:[edi], eax
call ebp
cmp word [esp + 0x18], 0
je 0x41266f
lea eax, [esp + 0x18]
lea ecx, [esi + 0x30]
push eax
call sub.MFC42u.DLL_CString::operator_2
lea ecx, [esi + 0x34]
push 0x42f1ac
call sub.MFC42u.DLL_CString::operator_2
lea ecx, [esi + 0x38]
push 0x42f1ac
call sub.MFC42u.DLL_CString::operator_2
lea ecx, [esi + 0x3c]
push 0x42f1ac
call sub.MFC42u.DLL_CString::operator_2
lea ecx, [esi + 0x40]
push 0x42f1ac
call sub.MFC42u.DLL_CString::operator_2
mov ecx, 0x82
xor eax, eax
lea edi, [esp + 0x18]
push ebx
rep stosd dword es:[edi], eax
lea ecx, [esp + 0x1c]
push 0x104
push ecx
push eax
push str.ltitle
push str.leak
call ebp
cmp word [esp + 0x18], 0
je 0x4126dd
lea edx, [esp + 0x18]
lea ecx, [esi + 0x34]
push edx
call sub.MFC42u.DLL_CString::operator_2
mov ecx, 0x82
xor eax, eax
lea edi, [esp + 0x18]
push ebx
rep stosd dword es:[edi], eax
lea eax, [esp + 0x1c]
push 0x104
push eax
push 0
push str.linfo
push str.leak
call ebp
cmp word [esp + 0x18], 0
je 0x412718
lea ecx, [esp + 0x18]
push ecx
lea ecx, [esi + 0x38]
call sub.MFC42u.DLL_CString::operator_2
push ebx
lea edx, [esp + 0x1c]
xor eax, eax
push 0x104
push edx
mov ecx, 0x82
lea edi, [esp + 0x24]
push eax
push str.lcount
push str.leak
rep stosd dword es:[edi], eax
call ebp
cmp word [esp + 0x18], 0
je 0x412752
lea eax, [esp + 0x18]
lea ecx, [esi + 0x3c]
push eax
call sub.MFC42u.DLL_CString::operator_2
mov ecx, 0x82
xor eax, eax
lea edi, [esp + 0x18]
push ebx
rep stosd dword es:[edi], eax
lea ecx, [esp + 0x1c]
push 0x104
push ecx
push eax
push str.ldate
push str.leak
call ebp
cmp word [esp + 0x18], 0
je 0x41278c
lea edx, [esp + 0x18]
lea ecx, [esi + 0x40]
push edx
call sub.MFC42u.DLL_CString::operator_2
mov edi, dword [esp + 0x638]
push ebx
push 0x104
push edi
push 0
push str.libver2
push str.360safe
call ebp
lea ecx, [esi + 0x20]
push edi
call sub.MFC42u.DLL_CString::operator_2
mov ecx, 0x82
xor eax, eax
lea edi, [esp + 0x18]
lea edx, [esp + 0x18]
rep stosd dword es:[edi], eax
mov ecx, str.1.0.0.1001
mov dword [esp + 0x14], 1
mov dword [esp + 0x10], 0x104
mov edi, 0x104
lea eax, [esp + 0x18]
sub ecx, edx
mov dx, word [ecx + eax]
test dx, dx
je 0x4127f6
mov word [eax], dx
add eax, 2
dec edi
jne 0x4127e2
jmp 0x4127fa
test edi, edi
jne 0x4127fd
sub eax, 2
mov word [eax], 0
lea eax, [esp + 0x10]
lea ecx, [esp + 0x18]
push eax
lea edx, [esp + 0x18]
push ecx
push edx
push str.libver
push str.Software360SafeLiveUp
push reloc.OLEAUT32.dll_SysReAllocString
call dword [sym.imp.SHLWAPI.dll_SHGetValueW]
mov eax, dword [esp + 0x638]
lea ecx, [esp + 0x18]
push eax
push ecx
call dword [sym.imp.MSVCRT.dll__wcsicmp]
add esp, 8
test eax, eax
jl 0x41284d
lea edx, [esp + 0x18]
lea ecx, [esi + 0x20]
push edx
call sub.MFC42u.DLL_CString::operator_2
mov eax, dword [esp + 0x63c]
push ebx
push 0x104
push eax
push str.LibSpywa.dat_LibRun.dat_LibTask.dat_LibSrv.dat_LibDefa.dat_Libclsid.dat_LibActi.dat_
push str.liblist
push str.360safe
call ebp
mov ecx, dword [esp + 0x640]
push ebx
push 0x104
push ecx
push str.1.0.1.1002_1.0.1.1002_1.0.1.1002_1.0.1.1002_1.0.1.1002_1.0.1.1002_1.0.1.1002_
push str.libversion
push str.360safe
call ebp
mov ecx, 0x81
xor eax, eax
lea edi, [esp + 0x222]
mov word [esp + 0x220], 0
rep stosd dword es:[edi], eax
stosw word es:[edi], ax
mov ecx, 0x81
xor eax, eax
lea edi, [esp + 0x42a]
mov word [esp + 0x428], 0
rep stosd dword es:[edi], eax
push ebx
lea edx, [esp + 0x224]
push 0x104
push edx
push 0
push str.liblist2
push str.360safe
stosw word es:[edi], ax
call ebp
push ebx
lea eax, [esp + 0x42c]
push 0x104
push eax
push 0
push str.libversion2
push str.360safe
call ebp
lea ecx, [esp + 0x220]
push ecx
lea ecx, [esi + 0x58]
call sub.MFC42u.DLL_CString::operator_2
lea edx, [esp + 0x428]
lea ecx, [esi + 0x5c]
push edx
call sub.MFC42u.DLL_CString::operator_2
mov ecx, 0x82
xor eax, eax
lea edi, [esp + 0x220]
push ebx
rep stosd dword es:[edi], eax
mov ecx, 0x82
lea edi, [esp + 0x42c]
rep stosd dword es:[edi], eax
lea eax, [esp + 0x224]
push 0x104
push eax
push 0
push str.liblist3
push str.360safe
call ebp
push ebx
lea ecx, [esp + 0x42c]
push 0x104
push ecx
push 0
push str.libversion3
push str.360safe
call ebp
lea edx, [esp + 0x220]
lea ecx, [esi + 0x60]
push edx
call sub.MFC42u.DLL_CString::operator_2
lea eax, [esp + 0x428]
push eax
lea ecx, [esi + 0x64]
call sub.MFC42u.DLL_CString::operator_2
pop edi
pop esi
pop ebp
xor eax, eax
pop ebx
add esp, 0x620
ret 0x10