Function at 0x4579a0
Capabilities:
Check if file exists
Query or enumerate registry value

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x12c
mov eax, dword [0x54c384]
xor eax, ebp
mov dword [ebp - 4], eax
push ebx
push esi
push edi
mov ebx, ecx
mov dword [ebp - 0x28], 0
push 0x24
push str.http:__s.360.cn_360huabao_uninst.htm
lea ecx, [ebp - 0x38]
mov dword [ebp - 0x12c], ebx
mov dword [ebp - 0x24], 0xf
mov byte [ebp - 0x38], 0
call fcn.00404000
mov ecx, dword [ebp - 0x24]
mov eax, ecx
mov edi, dword [ebp - 0x28]
sub eax, edi
push 5
push str._ver
cmp eax, 5
jb 0x457a18
cmp ecx, 0x10
lea esi, [ebp - 0x38]
lea eax, [edi + 5]
cmovae esi, dword [ebp - 0x38]
mov dword [ebp - 0x28], eax
lea eax, [esi + edi]
push eax
call fcn.004c0040
add esp, 0xc
mov byte [esi + edi + 5], 0
jmp 0x457a29
mov byte [ebp - 0x3c], 0
lea ecx, [ebp - 0x38]
push dword [ebp - 0x3c]
push 5
call fcn.004053e0
sub esp, 0x18
lea eax, [ebx + 0x6f0]
mov ecx, esp
push eax
call fcn.00402f60
lea ecx, [ebp - 0x128]
call fcn.004022e0
add esp, 0x18
mov ecx, eax
cmp dword [eax + 0x14], 0x10
jb 0x457a52
mov ecx, dword [eax]
mov edi, dword [eax + 0x10]
mov esi, dword [ebp - 0x24]
mov eax, esi
mov edx, dword [ebp - 0x28]
sub eax, edx
push edi
push ecx
cmp edi, eax
ja 0x457a87
lea eax, [edi + edx]
cmp esi, 0x10
mov dword [ebp - 0x28], eax
lea eax, [ebp - 0x38]
cmovae eax, dword [ebp - 0x38]
lea esi, [eax + edx]
push esi
call fcn.004c0040
add esp, 0xc
mov byte [esi + edi], 0
jmp 0x457a97
mov byte [ebp - 0x3c], 0
lea ecx, [ebp - 0x38]
push dword [ebp - 0x3c]
push edi
call fcn.004053e0
mov edx, dword [ebp - 0x114]
cmp edx, 0x10
jb 0x457ad1
mov ecx, dword [ebp - 0x128]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x457ac7
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x4588f2
push edx
push ecx
call fcn.004bdd39
add esp, 8
lea ecx, [ebp - 0x84]
call fcn.00460660
mov ecx, dword [ebp - 0x24]
mov eax, ecx
mov edi, dword [ebp - 0x28]
sub eax, edi
push 5
push str.pid
cmp eax, 5
jb 0x457b15
cmp ecx, 0x10
lea esi, [ebp - 0x38]
lea eax, [edi + 5]
cmovae esi, dword [ebp - 0x38]
mov dword [ebp - 0x28], eax
lea eax, [esi + edi]
push eax
call fcn.004c0040
add esp, 0xc
mov byte [esi + edi + 5], 0
jmp 0x457b26
mov byte [ebp - 0x3c], 0
lea ecx, [ebp - 0x38]
push dword [ebp - 0x3c]
push 5
call fcn.004053e0
sub esp, 0x18
lea eax, [ebp - 0x84]
mov ecx, esp
push eax
call fcn.00402f60
lea ecx, [ebp - 0x128]
call fcn.004022e0
add esp, 0x18
mov ecx, eax
cmp dword [eax + 0x14], 0x10
jb 0x457b4f
mov ecx, dword [eax]
mov edi, dword [eax + 0x10]
mov esi, dword [ebp - 0x24]
mov eax, esi
mov edx, dword [ebp - 0x28]
sub eax, edx
push edi
push ecx
cmp edi, eax
ja 0x457b84
lea eax, [edx + edi]
cmp esi, 0x10
mov dword [ebp - 0x28], eax
lea eax, [ebp - 0x38]
cmovae eax, dword [ebp - 0x38]
lea esi, [eax + edx]
push esi
call fcn.004c0040
add esp, 0xc
mov byte [esi + edi], 0
jmp 0x457b94
mov byte [ebp - 0x3c], 0
lea ecx, [ebp - 0x38]
push dword [ebp - 0x3c]
push edi
call fcn.004053e0
mov edx, dword [ebp - 0x114]
cmp edx, 0x10
jb 0x457bce
mov ecx, dword [ebp - 0x128]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x457bc4
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x4588f7
push edx
push ecx
call fcn.004bdd39
add esp, 8
mov ecx, dword [ebp - 0x24]
mov eax, ecx
mov edi, dword [ebp - 0x28]
sub eax, edi
push 5
push 0x50d848
cmp eax, 5
jb 0x457c07
cmp ecx, 0x10
lea esi, [ebp - 0x38]
lea eax, [edi + 5]
cmovae esi, dword [ebp - 0x38]
mov dword [ebp - 0x28], eax
lea eax, [esi + edi]
push eax
call fcn.004c0040
add esp, 0xc
mov byte [esi + edi + 5], 0
jmp 0x457c18
mov byte [ebp - 0x3c], 0
lea ecx, [ebp - 0x38]
push dword [ebp - 0x3c]
push 5
call fcn.004053e0
sub esp, 0x18
mov ecx, esp
call fcn.00412820
lea ecx, [ebp - 0x128]
call fcn.004022e0
add esp, 0x18
mov ecx, eax
cmp dword [eax + 0x14], 0x10
jb 0x457c3a
mov ecx, dword [eax]
mov edi, dword [eax + 0x10]
mov esi, dword [ebp - 0x24]
mov eax, esi
mov edx, dword [ebp - 0x28]
sub eax, edx
push edi
push ecx
cmp edi, eax
ja 0x457c6f
lea eax, [edx + edi]
cmp esi, 0x10
mov dword [ebp - 0x28], eax
lea eax, [ebp - 0x38]
cmovae eax, dword [ebp - 0x38]
lea esi, [eax + edx]
push esi
call fcn.004c0040
add esp, 0xc
mov byte [esi + edi], 0
jmp 0x457c7f
mov byte [ebp - 0x3c], 0
lea ecx, [ebp - 0x38]
push dword [ebp - 0x3c]
push edi
call fcn.004053e0
mov edx, dword [ebp - 0x114]
cmp edx, 0x10
jb 0x457cb9
mov ecx, dword [ebp - 0x128]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x457caf
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x4588fc
push edx
push ecx
call fcn.004bdd39
add esp, 8
mov ecx, dword [ebp - 0x24]
mov eax, ecx
mov edi, dword [ebp - 0x28]
sub eax, edi
push 5
push str.w64
cmp eax, 5
jb 0x457cf2
cmp ecx, 0x10
lea esi, [ebp - 0x38]
lea eax, [edi + 5]
cmovae esi, dword [ebp - 0x38]
mov dword [ebp - 0x28], eax
lea eax, [esi + edi]
push eax
call fcn.004c0040
add esp, 0xc
mov byte [esi + edi + 5], 0
jmp 0x457d03
mov byte [ebp - 0x3c], 0
lea ecx, [ebp - 0x38]
push dword [ebp - 0x3c]
push 5
call fcn.004053e0
call fcn.00410850
mov ebx, eax
lea esi, [ebp - 7]
test ebx, ebx
jns 0x457d40
neg ebx
mov eax, 0xcccccccd
dec esi
mul ebx
shr edx, 3
mov al, dl
mov cl, dl
shl al, 2
add cl, al
add cl, cl
sub bl, cl
add bl, 0x30
mov byte [esi], bl
mov ebx, edx
test ebx, ebx
jne 0x457d13
dec esi
mov byte [esi], 0x2d
jmp 0x457d63
mov eax, 0xcccccccd
dec esi
mul ebx
shr edx, 3
mov al, dl
mov cl, dl
shl al, 2
add cl, al
add cl, cl
sub bl, cl
add bl, 0x30
mov byte [esi], bl
mov ebx, edx
test ebx, ebx
jne 0x457d40
xor edi, edi
mov byte [ebp - 0x128], 0
lea ecx, [ebp - 7]
mov dword [ebp - 0x118], edi
mov eax, 0xf
mov dword [ebp - 0x114], eax
cmp esi, ecx
je 0x457da1
mov eax, ecx
lea ecx, [ebp - 0x128]
sub eax, esi
push eax
push esi
call fcn.00404000
mov edi, dword [ebp - 0x118]
mov eax, dword [ebp - 0x114]
mov esi, dword [ebp - 0x24]
lea ecx, [ebp - 0x128]
mov ebx, dword [ebp - 0x128]
cmp eax, 0x10
mov edx, dword [ebp - 0x28]
mov eax, esi
cmovae ecx, ebx
sub eax, edx
push edi
push ecx
cmp edi, eax
ja 0x457de5
lea eax, [edx + edi]
cmp esi, 0x10
mov dword [ebp - 0x28], eax
lea eax, [ebp - 0x38]
cmovae eax, dword [ebp - 0x38]
lea esi, [eax + edx]
push esi
call fcn.004c0040
add esp, 0xc
mov byte [esi + edi], 0
jmp 0x457dfb
mov byte [ebp - 0x3c], 0
lea ecx, [ebp - 0x38]
push dword [ebp - 0x3c]
push edi
call fcn.004053e0
mov ebx, dword [ebp - 0x128]
mov eax, dword [ebp - 0x114]
cmp eax, 0x10
jb 0x457e31
lea ecx, [eax + 1]
mov eax, ebx
cmp ecx, 0x1000
jb 0x457e27
mov ebx, dword [ebx - 4]
add ecx, 0x23
sub eax, ebx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x458901
push ecx
push ebx
call fcn.004bdd39
add esp, 8
mov ecx, dword [ebp - 0x24]
mov eax, ecx
mov edi, dword [ebp - 0x28]
sub eax, edi
push 4
push str.ut
cmp eax, 4
jb 0x457e6a
cmp ecx, 0x10
lea esi, [ebp - 0x38]
lea eax, [edi + 4]
cmovae esi, dword [ebp - 0x38]
mov dword [ebp - 0x28], eax
lea eax, [esi + edi]
push eax
call fcn.004c0040
add esp, 0xc
mov byte [esi + edi + 4], 0
jmp 0x457e7b
mov byte [ebp - 0x3c], 0
lea ecx, [ebp - 0x38]
push dword [ebp - 0x3c]
push 4
call fcn.004053e0
push 0
call fcn.004c82ab
add esp, 4
mov dword [ebp - 0x10c], 0
mov ebx, eax
mov dword [ebp - 0x20], 4
lea eax, [ebp - 0x3c]
mov dword [ebp - 0x3c], 4
push eax
lea eax, [ebp - 0x10c]
push eax
lea eax, [ebp - 0x20]
push eax
push str.alivetime
push str.Software360360huabao
push SysReAllocString
call dword [sym.imp.SHLWAPI.dll_SHGetValueW]
push dword [ebp - 0x10c]
push ebx
push 0x206
push str.UnInstallUtil::SendUninstallReport
push str.__s__d___time_now:_d__alive_time:_d
call fcn.0041f720
add esp, 0x14
lea esi, [ebp - 7]
sub ebx, dword [ebp - 0x10c]
nop word [eax + eax]
mov eax, 0xcccccccd
dec esi
mul ebx
shr edx, 3
mov al, dl
mov cl, dl
shl al, 2
add cl, al
add cl, cl
sub bl, cl
add bl, 0x30
mov byte [esi], bl
mov ebx, edx
test ebx, ebx
jne 0x457ef0
xor edi, edi
mov byte [ebp - 0x128], dl
lea ecx, [ebp - 7]
mov dword [ebp - 0x118], edi
mov eax, 0xf
mov dword [ebp - 0x114], eax
cmp esi, ecx
je 0x457f50
mov eax, ecx
lea ecx, [ebp - 0x128]
sub eax, esi
push eax
push esi
call fcn.00404000
mov edi, dword [ebp - 0x118]
mov eax, dword [ebp - 0x114]
mov esi, dword [ebp - 0x24]
lea ecx, [ebp - 0x128]
mov ebx, dword [ebp - 0x128]
cmp eax, 0x10
mov edx, dword [ebp - 0x28]
mov eax, esi
cmovae ecx, ebx
sub eax, edx
push edi
push ecx
cmp edi, eax
ja 0x457f94
lea eax, [edx + edi]
cmp esi, 0x10
mov dword [ebp - 0x28], eax
lea eax, [ebp - 0x38]
cmovae eax, dword [ebp - 0x38]
lea esi, [eax + edx]
push esi
call fcn.004c0040
add esp, 0xc
mov byte [esi + edi], 0
jmp 0x457faa
mov byte [ebp - 0x20], 0
lea ecx, [ebp - 0x38]
push dword [ebp - 0x20]
push edi
call fcn.004053e0
mov ebx, dword [ebp - 0x128]
mov eax, dword [ebp - 0x114]
cmp eax, 0x10
jb 0x457fe0
lea ecx, [eax + 1]
mov eax, ebx
cmp ecx, 0x1000
jb 0x457fd6
mov ebx, dword [ebx - 4]
add ecx, 0x23
sub eax, ebx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x458901
push ecx
push ebx
call fcn.004bdd39
add esp, 8
mov edx, dword [ebp - 0x24]
mov eax, edx
mov ecx, dword [ebp - 0x28]
sub eax, ecx
push 4
push str.os
cmp eax, 4
jb 0x458017
cmp edx, 0x10
lea esi, [ebp - 0x38]
lea eax, [ecx + 4]
cmovae esi, dword [ebp - 0x38]
add esi, ecx
mov dword [ebp - 0x28], eax
push esi
call fcn.004c0040
add esp, 0xc
mov byte [esi + 4], 0
jmp 0x458028
mov byte [ebp - 0x20], 0
lea ecx, [ebp - 0x38]
push dword [ebp - 0x20]
push 4
call fcn.004053e0
call fcn.004104e0
add eax, 0xfffffffb
cmp eax, 4
ja case.0x458035.6
jmp dword [eax*4 + 0x458908]
push 1
push 0x50d898
mov ecx, dword [ebp - 0x24]
mov eax, ecx
mov edi, dword [ebp - 0x28]
sub eax, edi
cmp eax, 1
jb 0x4580c7
cmp ecx, 0x10
lea esi, [ebp - 0x38]
lea eax, [edi + 1]
cmovae esi, dword [ebp - 0x38]
mov dword [ebp - 0x28], eax
lea eax, [esi + edi]
push eax
call fcn.004c0040
add esp, 0xc
mov byte [esi + edi + 1], 0
jmp 0x4580d8
push 1
push 0x50d8a8
jmp 0x458043
push 1
push str.3254
jmp 0x458043
push 1
push 0x50d8b0
jmp 0x458097
push 1
push 0x50d8ac
mov edx, dword [ebp - 0x24]
mov eax, edx
mov ecx, dword [ebp - 0x28]
sub eax, ecx
cmp eax, 1
jb 0x4580c7
cmp edx, 0x10
lea esi, [ebp - 0x38]
lea eax, [ecx + 1]
cmovae esi, dword [ebp - 0x38]
add esi, ecx
mov dword [ebp - 0x28], eax
push esi
call fcn.004c0040
add esp, 0xc
mov byte [esi + 1], 0
jmp 0x4580d8
mov byte [ebp - 0x20], 0
lea ecx, [ebp - 0x38]
push dword [ebp - 0x20]
push 1
call fcn.004053e0
mov edx, dword [ebp - 0x24]
mov eax, edx
mov ecx, dword [ebp - 0x28]
sub eax, ecx
push 4
push 0x50d8b4
cmp eax, 4
jb 0x45810f
cmp edx, 0x10
lea esi, [ebp - 0x38]
lea eax, [ecx + 4]
cmovae esi, dword [ebp - 0x38]
add esi, ecx
mov dword [ebp - 0x28], eax
push esi
call fcn.004c0040
add esp, 0xc
mov byte [esi + 4], 0
jmp 0x458120
mov byte [ebp - 0x20], 0
lea ecx, [ebp - 0x38]
push dword [ebp - 0x20]
push 4
call fcn.004053e0
call fcn.00417100
movzx ebx, al
lea esi, [ebp - 7]
nop dword [eax + eax]
mov eax, 0xcccccccd
dec esi
mul ebx
shr edx, 3
mov al, dl
mov cl, dl
shl al, 2
add cl, al
add cl, cl
sub bl, cl
add bl, 0x30
mov byte [esi], bl
mov ebx, edx
test ebx, ebx
jne 0x458130
xor edi, edi
mov byte [ebp - 0x128], dl
lea ecx, [ebp - 7]
mov dword [ebp - 0x118], edi
mov eax, 0xf
mov dword [ebp - 0x114], eax
cmp esi, ecx
je 0x458190
mov eax, ecx
lea ecx, [ebp - 0x128]
sub eax, esi
push eax
push esi
call fcn.00404000
mov edi, dword [ebp - 0x118]
mov eax, dword [ebp - 0x114]
mov esi, dword [ebp - 0x24]
lea ecx, [ebp - 0x128]
mov ebx, dword [ebp - 0x128]
cmp eax, 0x10
mov edx, dword [ebp - 0x28]
mov eax, esi
cmovae ecx, ebx
sub eax, edx
push edi
push ecx
cmp edi, eax
ja 0x4581d4
lea eax, [edi + edx]
cmp esi, 0x10
mov dword [ebp - 0x28], eax
lea eax, [ebp - 0x38]
cmovae eax, dword [ebp - 0x38]
lea esi, [eax + edx]
push esi
call fcn.004c0040
add esp, 0xc
mov byte [edi + esi], 0
jmp 0x4581ea
mov byte [ebp - 0x20], 0
lea ecx, [ebp - 0x38]
push dword [ebp - 0x20]
push edi
call fcn.004053e0
mov ebx, dword [ebp - 0x128]
mov eax, dword [ebp - 0x114]
cmp eax, 0x10
jb 0x458220
lea ecx, [eax + 1]
mov eax, ebx
cmp ecx, 0x1000
jb 0x458216
mov ebx, dword [ebx - 4]
add ecx, 0x23
sub eax, ebx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x458901
push ecx
push ebx
call fcn.004bdd39
add esp, 8
cmp dword [0x557b04], 0
jne 0x458238
push 1
call fcn.004bdd09
add esp, 4
mov dword [0x557b04], eax
call fcn.0043aaf0
mov edi, dword [ebp - 0x28]
mov ebx, eax
mov eax, dword [ebp - 0x24]
mov ecx, eax
sub ecx, edi
push 4
push str.ss
cmp ecx, 4
jb 0x458278
cmp eax, 0x10
lea esi, [ebp - 0x38]
lea ecx, [edi + 4]
cmovae esi, dword [ebp - 0x38]
mov dword [ebp - 0x28], ecx
lea eax, [esi + edi]
push eax
call fcn.004c0040
add esp, 0xc
mov byte [esi + edi + 4], 0
jmp 0x458289
mov byte [ebp - 0x20], 0
lea ecx, [ebp - 0x38]
push dword [ebp - 0x20]
push 4
call fcn.004053e0
lea esi, [ebp - 7]
test ebx, ebx
jns 0x4582c0
neg ebx
mov eax, 0xcccccccd
dec esi
mul ebx
shr edx, 3
mov al, dl
mov cl, dl
shl al, 2
add cl, al
add cl, cl
sub bl, cl
add bl, 0x30
mov byte [esi], bl
mov ebx, edx
test ebx, ebx
jne 0x458292
dec esi
mov byte [esi], 0x2d
jmp 0x4582e3
mov eax, 0xcccccccd
dec esi
mul ebx
shr edx, 3
mov al, dl
mov cl, dl
shl al, 2
add cl, al
add cl, cl
sub bl, cl
add bl, 0x30
mov byte [esi], bl
mov ebx, edx
test ebx, ebx
jne 0x4582c0
xor edi, edi
mov byte [ebp - 0x128], 0
lea ecx, [ebp - 7]
mov dword [ebp - 0x118], edi
mov eax, 0xf
mov dword [ebp - 0x114], eax
cmp esi, ecx
je 0x458321
mov eax, ecx
lea ecx, [ebp - 0x128]
sub eax, esi
push eax
push esi
call fcn.00404000
mov edi, dword [ebp - 0x118]
mov eax, dword [ebp - 0x114]
mov esi, dword [ebp - 0x24]
lea ecx, [ebp - 0x128]
mov ebx, dword [ebp - 0x128]
cmp eax, 0x10
mov edx, dword [ebp - 0x28]
mov eax, esi
cmovae ecx, ebx
sub eax, edx
push edi
push ecx
cmp edi, eax
ja 0x458365
lea eax, [edi + edx]
cmp esi, 0x10
mov dword [ebp - 0x28], eax
lea eax, [ebp - 0x38]
cmovae eax, dword [ebp - 0x38]
lea esi, [eax + edx]
push esi
call fcn.004c0040
add esp, 0xc
mov byte [edi + esi], 0
jmp 0x45837b
mov byte [ebp - 0x20], 0
lea ecx, [ebp - 0x38]
push dword [ebp - 0x20]
push edi
call fcn.004053e0
mov ebx, dword [ebp - 0x128]
mov eax, dword [ebp - 0x114]
cmp eax, 0x10
jb 0x4583b1
lea ecx, [eax + 1]
mov eax, ebx
cmp ecx, 0x1000
jb 0x4583a7
mov ebx, dword [ebx - 4]
add ecx, 0x23
sub eax, ebx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x458901
push ecx
push ebx
call fcn.004bdd39
add esp, 8
mov edx, dword [ebp - 0x24]
mov eax, edx
mov ecx, dword [ebp - 0x28]
sub eax, ecx
push 4
push str.wb
cmp eax, 4
jb 0x4583e8
cmp edx, 0x10
lea esi, [ebp - 0x38]
lea eax, [ecx + 4]
cmovae esi, dword [ebp - 0x38]
add esi, ecx
mov dword [ebp - 0x28], eax
push esi
call fcn.004c0040
add esp, 0xc
mov byte [esi + 4], 0
jmp 0x4583f9
mov byte [ebp - 0x20], 0
lea ecx, [ebp - 0x38]
push dword [ebp - 0x20]
push 4
call fcn.004053e0
call fcn.004171c0
movzx ebx, al
lea esi, [ebp - 7]
mov eax, 0xcccccccd
dec esi
mul ebx
shr edx, 3
mov al, dl
mov cl, dl
shl al, 2
add cl, al
add cl, cl
sub bl, cl
add bl, 0x30
mov byte [esi], bl
mov ebx, edx
test ebx, ebx
jne 0x458404
lea eax, [ebp - 7]
mov dword [ebp - 0x118], edx
mov dword [ebp - 0x114], 0xf
mov byte [ebp - 0x128], dl
cmp esi, eax
je 0x458453
sub eax, esi
lea ecx, [ebp - 0x128]
push eax
push esi
call fcn.00404000
lea eax, [ebp - 0x128]
push eax
lea ecx, [ebp - 0x38]
call fcn.00403130
lea ecx, [ebp - 0x128]
call fcn.004031a0
lea ecx, [ebp - 0x6c]
xor bl, bl
call fcn.004176c0
cmp dword [ebp - 0x58], 8
lea eax, [ebp - 0x6c]
cmovae eax, dword [ebp - 0x6c]
push eax
push 0x229
push str.UnInstallUtil::SendUninstallReport
push str.__s__d__strDeskTopRestPath:_s
call fcn.0041f720
add esp, 0x10
lea eax, [ebp - 0x6c]
cmp dword [ebp - 0x58], 8
cmovae eax, dword [ebp - 0x6c]
push eax
call dword [sym.imp.SHLWAPI.dll_PathFileExistsW]
test eax, eax
je 0x4584c2
call fcn.00417c60
test eax, eax
movzx ebx, bl
mov ecx, 1
cmove ebx, ecx
push str.ach
lea ecx, [ebp - 0x38]
call fcn.004030c0
xor eax, eax
mov dword [ebp - 0x44], 0
push eax
push 0x5010a0
lea ecx, [ebp - 0x128]
mov dword [ebp - 0x40], 0xf
mov byte [ebp - 0x54], 0
mov dword [ebp - 0x118], 0
mov dword [ebp - 0x114], 7
mov word [ebp - 0x128], ax
call fcn.00403e30
call fcn.00411740
test eax, eax
mov edx, 0x5074e0
mov ecx, 0x50d898
cmove ecx, edx
push ecx
lea ecx, [ebp - 0x54]
call fcn.004030c0
lea ecx, [ebp - 0x128]
call fcn.00402e70
call fcn.00417a50
mov esi, 0x50d9a4
test al, al
mov ecx, esi
mov edi, 0x50d9a0
cmove ecx, edi
push ecx
lea ecx, [ebp - 0x54]
call fcn.004030c0
test bl, bl
lea ecx, [ebp - 0x54]
cmove esi, edi
push esi
call fcn.004030c0
lea eax, [ebp - 0x54]
push eax
lea ecx, [ebp - 0x38]
call fcn.00403130
call fcn.00460220
push str.wscore
lea ecx, [ebp - 0x38]
mov esi, eax
call fcn.004030c0
mov edx, esi
lea ecx, [ebp - 7]
call fcn.00450400
lea ecx, [ebp - 7]
mov dword [ebp - 0x118], 0
mov dword [ebp - 0x114], 0xf
mov byte [ebp - 0x128], 0
cmp eax, ecx
je 0x4585bf
sub ecx, eax
push ecx
push eax
lea ecx, [ebp - 0x128]
call fcn.00404000
lea eax, [ebp - 0x128]
push eax
lea ecx, [ebp - 0x38]
call fcn.00403130
lea ecx, [ebp - 0x128]
call fcn.004031a0
call fcn.00460370
push str.des
lea ecx, [ebp - 0x38]
mov esi, eax
call fcn.004030c0
mov edx, esi
lea ecx, [ebp - 7]
call fcn.00450400
lea ecx, [ebp - 7]
mov dword [ebp - 0x118], 0
mov dword [ebp - 0x114], 0xf
mov byte [ebp - 0x128], 0
cmp eax, ecx
je 0x458628
sub ecx, eax
push ecx
push eax
lea ecx, [ebp - 0x128]
call fcn.00404000
lea eax, [ebp - 0x128]
push eax
lea ecx, [ebp - 0x38]
call fcn.00403130
lea ecx, [ebp - 0x128]
call fcn.004031a0
call fcn.00460520
push str.pic
lea ecx, [ebp - 0x38]
mov esi, eax
call fcn.004030c0
mov edx, esi
lea ecx, [ebp - 7]
call fcn.00450400
lea ecx, [ebp - 7]
mov dword [ebp - 0x118], 0
mov dword [ebp - 0x114], 0xf
mov byte [ebp - 0x128], 0
cmp eax, ecx
je 0x458691
sub ecx, eax
push ecx
push eax
lea ecx, [ebp - 0x128]
call fcn.00404000
lea eax, [ebp - 0x128]
push eax
lea ecx, [ebp - 0x38]
call fcn.00403130
lea ecx, [ebp - 0x128]
call fcn.004031a0
call fcn.00460600
push str.unpic
lea ecx, [ebp - 0x38]
mov esi, eax
call fcn.004030c0
mov edx, esi
lea ecx, [ebp - 7]
call fcn.00450400
lea ecx, [ebp - 7]
mov dword [ebp - 0x118], 0
mov dword [ebp - 0x114], 0xf
mov byte [ebp - 0x128], 0
cmp eax, ecx
je 0x4586fa
sub ecx, eax
push ecx
push eax
lea ecx, [ebp - 0x128]
call fcn.00404000
lea eax, [ebp - 0x128]
push eax
lea ecx, [ebp - 0x38]
call fcn.00403130
lea ecx, [ebp - 0x128]
call fcn.004031a0
lea eax, [ebp - 0x20]
mov dword [ebp - 0x110], 0
push eax
lea eax, [ebp - 0x110]
mov dword [ebp - 0x3c], 4
push eax
lea eax, [ebp - 0x3c]
mov dword [ebp - 0x20], 4
push eax
push str.install_model
push str.Software360360huabao
push SysReAllocString
call dword [sym.imp.SHLWAPI.dll_SHGetValueW]
push str.im
lea ecx, [ebp - 0x38]
call fcn.004030c0
mov edx, dword [ebp - 0x110]
lea ecx, [ebp - 7]
call fcn.00450400
lea ecx, [ebp - 7]
mov dword [ebp - 0x118], 0
mov dword [ebp - 0x114], 0xf
mov byte [ebp - 0x128], 0
cmp eax, ecx
je 0x45879c
sub ecx, eax
push ecx
push eax
lea ecx, [ebp - 0x128]
call fcn.00404000
lea eax, [ebp - 0x128]
push eax
lea ecx, [ebp - 0x38]
call fcn.00403130
lea ecx, [ebp - 0x128]
call fcn.004031a0
push 0x50f99c
lea ecx, [ebp - 0x38]
call fcn.004030c0
call fcn.004183e0
lea ecx, [ebp - 7]
test eax, eax
jns 0x4587e1
neg eax
mov edx, eax
call fcn.00450400
mov byte [eax - 1], 0x2d
lea ecx, [eax - 1]
jmp 0x4587ea
mov edx, eax
call fcn.00450400
mov ecx, eax
lea eax, [ebp - 7]
mov dword [ebp - 0x118], 0
mov dword [ebp - 0x114], 0xf
mov byte [ebp - 0x128], 0
cmp ecx, eax
je 0x45881b
sub eax, ecx
push eax
push ecx
lea ecx, [ebp - 0x128]
call fcn.00404000
lea eax, [ebp - 0x128]
push eax
lea ecx, [ebp - 0x38]
call fcn.00403130
lea ecx, [ebp - 0x128]
call fcn.004031a0
push 0x7c
lea eax, [ebp - 0x108]
push 0
push eax
call fcn.004c05c0
add esp, 0xc
lea ecx, [ebp - 0x108]
call fcn.00435ce0
sub esp, 0x18
lea eax, [ebp - 0x38]
mov ecx, esp
push eax
call fcn.004032f0
lea ecx, [ebp - 0x128]
call fcn.00402070
add esp, 0x18
cmp dword [eax + 0x14], 8
jb 0x458877
mov eax, dword [eax]
test eax, eax
jne 0x45887f
xor esi, esi
jmp 0x458898
push dword [ebp - 0x12c]
lea ecx, [ebp - 0x108]
push 0x446d30
push eax
call fcn.00435fc0
mov esi, eax
lea ecx, [ebp - 0x128]
call fcn.00402e70
test esi, esi
je 0x4588b3
lea eax, [ebp - 0x108]
push eax
call fcn.004364b0
lea ecx, [ebp - 0x108]
call fcn.00435df0
lea ecx, [ebp - 0x54]
call fcn.004031a0
lea ecx, [ebp - 0x6c]
call fcn.00402e70
lea ecx, [ebp - 0x84]
call fcn.00402e70
lea ecx, [ebp - 0x38]
call fcn.004031a0
mov ecx, dword [ebp - 4]
pop edi
pop esi
xor ecx, ebp
pop ebx
call fcn.004bdaf8
mov esp, ebp
pop ebp
ret
call fcn.004c8da3
call fcn.004c8da3
call fcn.004c8da3
call fcn.004c8da3
nop
cmp al, 0x80
inc ebp
add byte [eax + 0x75004580], dl
add byte [ebp], 0x7e
add byte [ebp], 0x87
add byte [ebp], 0xcc
int3