Function at 0x485bb0
Capabilities:
Query or enumerate registry value

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
push 0xffffffffffffffff
push 0x50b99d
mov eax, dword fs:[0]
push eax
sub esp, 0x228
mov eax, dword [0x5522c0]
xor eax, esp
mov dword [esp + 0x220], eax
push ebx
push esi
push edi
mov eax, dword [0x5522c0]
xor eax, esp
push eax
lea eax, [esp + 0x238]
mov dword fs:[0], eax
push str.ShowWelcomeWindow
mov esi, str.SoftwareBaofengPhoneAssistantUserConfig
mov edi, SysReAllocString
mov ebx, ecx
call fcn.0045d1e0
lea esi, [ebx + 0xb4]
add esp, 4
lea eax, [esp + 0x14]
push esi
push eax
mov ebx, str.PhoneAssistant_
mov dword [esp + 0x28], esi
call fcn.0045ce00
add esp, 8
mov dword [esp + 0x240], 0
mov ecx, dword [esp + 0x14]
push ecx
call dword [sym.imp.SHLWAPI.dll_PathIsDirectoryW]
test eax, eax
setne al
test al, al
jne 0x485c7a
mov dword [esp + 0x240], 0xffffffff
mov eax, dword [esp + 0x14]
add eax, 0xfffffff0
lea edx, [eax + 0xc]
or ecx, 0xffffffff
lock xadd dword [edx], ecx
dec ecx
test ecx, ecx
jg 0x485c70
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov eax, 0x3ea
jmp 0x485fef
mov ecx, str.DriverInstallerX64.exe
call fcn.00458df0
mov ecx, str.DriverInstallerX86.exe
call fcn.00458df0
mov ecx, str.PhoneAppCenter.exe
call fcn.00458df0
mov ecx, str.PhoneLauncher.exe
call fcn.00458df0
mov ecx, str.PhoneMediaCenter.exe
call fcn.00458df0
mov ecx, str.PhonePlatform.exe
call fcn.00458df0
mov ecx, str.wandoujia_daemon.exe
call fcn.00458df0
mov ecx, str.wdjconx64.exe
call fcn.00458df0
mov ecx, str.wdjconx86.exe
call fcn.00458df0
mov ecx, str.WDJDriverInstaller.exe
call fcn.00458df0
mov ecx, str.BFVThumbHost.exe
call fcn.00458df0
mov ecx, str.PhoneAssistantUpdate.exe
call fcn.00458df0
xor ecx, ecx
push 0x206
push ecx
lea edx, [esp + 0x2e]
push edx
mov word [esp + 0x30], cx
call fcn.004e9520
add esp, 0xc
lea eax, [esp + 0x10]
push eax
lea ecx, [esp + 0x28]
push ecx
lea edx, [esp + 0x20]
push edx
push str.InstallPath
push str.SoftwareBaofengPhoneAssistant
mov ebx, 1
push SysReAllocString
mov dword [esp + 0x28], 0x102
mov dword [esp + 0x30], ebx
call dword [sym.imp.SHLWAPI.dll_SHGetValueW]
test eax, eax
jne 0x485d5d
push eax
call fcn.00458c80
add esp, 4
lea eax, [esp + 0x24]
push 0
push eax
call fcn.0045c770
add esp, 8
mov eax, dword [esi]
sub eax, 0x10
call fcn.0045cfd0
add eax, 0x10
mov dword [esp + 0x10], eax
mov byte [esp + 0x240], bl
mov eax, 0x5c
lea ebx, [esp + 0x10]
call fcn.0048d1d0
mov esi, dword [esp + 0x10]
push 0x5c
push esi
call fcn.004e7673
add esp, 8
test eax, eax
je 0x485d9c
sub eax, esi
sar eax, 1
jns 0x485df5
lea eax, [esi - 0x10]
mov byte [esp + 0x240], 0
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x485dc0
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov dword [esp + 0x240], 0xffffffff
mov eax, dword [esp + 0x14]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x485deb
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov eax, 0x3eb
jmp 0x485fef
inc eax
lea ecx, [esp + 0x18]
lea edx, [esp + 0x10]
call fcn.0045d940
lea edi, [esp + 0x10]
mov byte [esp + 0x240], 2
call fcn.0045cee0
mov bl, 1
mov byte [esp + 0x240], bl
mov eax, dword [esp + 0x18]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x485e3d
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov edx, str.PhoneAssistant_
lea eax, [esp + 0x10]
call fcn.0045b3c0
mov edi, dword [esp + 0x10]
cmp dword [edi - 0xc], 0
lea eax, [edi - 0x10]
jne 0x485eae
mov byte [esp + 0x240], 0
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x485e79
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov dword [esp + 0x240], 0xffffffff
mov eax, dword [esp + 0x14]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x485ea4
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov eax, 0x3ec
jmp 0x485fef
push ecx
mov dword [esp + 0x20], esp
mov esi, esp
call fcn.0045cfd0
add eax, 0x10
mov dword [esi], eax
mov byte [esp + 0x244], 3
mov eax, dword [esp + 0x18]
push ecx
add eax, 0xfffffff0
mov dword [esp + 0x20], esp
mov esi, esp
call fcn.0045cfd0
add eax, 0x10
mov dword [esi], eax
mov byte [esp + 0x248], bl
call fcn.0045c980
mov ecx, dword [esp + 0x1c]
push 0
push ecx
mov esi, eax
call fcn.0045c770
add esp, 0x10
test esi, esi
jne 0x485f1c
lea ecx, [esp + 0x10]
call fcn.004591f0
lea ecx, [esp + 0x14]
call fcn.004591f0
mov eax, 0x3ed
jmp 0x485fef
lea edx, [esp + 0x10]
push edx
lea eax, [esp + 0x1c]
push eax
mov ebx, str.bin_
call fcn.0045ce00
add esp, 8
mov byte [esp + 0x240], 4
mov ecx, dword [eax]
call fcn.0045bdf0
lea ecx, [esp + 0x18]
mov byte [esp + 0x240], 1
call fcn.004591f0
lea ecx, [esp + 0x10]
push ecx
lea edx, [esp + 0x20]
push edx
mov ebx, str.binUpload.dll
call fcn.0045ce00
mov esi, eax
mov eax, dword [esp + 0x28]
push eax
lea ecx, [esp + 0x24]
push ecx
mov byte [esp + 0x250], 5
call fcn.0045ce00
add esp, 0x10
mov byte [esp + 0x240], 6
mov edx, dword [esi]
mov ebx, dword [eax]
push edx
call fcn.00492f10
lea ecx, [esp + 0x18]
call fcn.004591f0
lea ecx, [esp + 0x1c]
call fcn.004591f0
push edi
push str.InstallPath
mov edi, str.SoftwareBaofengPhoneAssistant
mov ebx, SysReAllocString
call fcn.0045d150
add esp, 8
lea ecx, [esp + 0x10]
test al, al
jne 0x485fdc
call fcn.004591f0
lea ecx, [esp + 0x14]
call fcn.004591f0
mov eax, 0x3ee
jmp 0x485fef
call fcn.004591f0
lea ecx, [esp + 0x14]
call fcn.004591f0
mov eax, 1
mov ecx, dword [esp + 0x238]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [esp + 0x220]
xor ecx, esp
call fcn.004e4840
mov esp, ebp
pop ebp
ret