Function at 0x44e5c0
Capabilities:
Check if file exists

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x32c
mov eax, dword [0x54c384]
xor eax, ebp
mov dword [ebp - 4], eax
push ebx
push esi
push edi
push 0x22
mov edi, ecx
mov dword [ebp - 0x238], 0
push str.http:__s.360.cn_360huabao_inst.htm
lea ecx, [ebp - 0x248]
mov dword [ebp - 0x234], 0xf
mov byte [ebp - 0x248], 0
call fcn.00404000
mov ecx, dword [ebp - 0x234]
mov eax, ecx
mov ebx, dword [ebp - 0x238]
sub eax, ebx
push 5
push str._ver
cmp eax, 5
jb 0x44e64d
cmp ecx, 0x10
lea esi, [ebp - 0x248]
lea eax, [ebx + 5]
cmovae esi, dword [ebp - 0x248]
mov dword [ebp - 0x238], eax
lea eax, [esi + ebx]
push eax
call fcn.004c0040
add esp, 0xc
mov byte [esi + ebx + 5], 0
jmp 0x44e667
mov byte [ebp - 0x314], 0
lea ecx, [ebp - 0x248]
push dword [ebp - 0x314]
push 5
call fcn.004053e0
sub esp, 0x18
lea eax, [edi + 0x6f0]
mov ecx, esp
push eax
call fcn.00402f60
lea ecx, [ebp - 0x32c]
call fcn.004022e0
add esp, 0x18
mov ecx, eax
cmp dword [eax + 0x14], 0x10
jb 0x44e690
mov ecx, dword [eax]
mov ebx, dword [eax + 0x10]
mov esi, dword [ebp - 0x234]
mov eax, esi
mov edx, dword [ebp - 0x238]
sub eax, edx
push ebx
push ecx
cmp ebx, eax
ja 0x44e6d4
lea eax, [ebx + edx]
cmp esi, 0x10
mov dword [ebp - 0x238], eax
lea eax, [ebp - 0x248]
cmovae eax, dword [ebp - 0x248]
lea esi, [eax + edx]
push esi
call fcn.004c0040
add esp, 0xc
mov byte [ebx + esi], 0
jmp 0x44e6ed
mov byte [ebp - 0x314], 0
lea ecx, [ebp - 0x248]
push dword [ebp - 0x314]
push ebx
call fcn.004053e0
mov edx, dword [ebp - 0x318]
cmp edx, 0x10
jb 0x44e727
mov ecx, dword [ebp - 0x32c]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x44e71d
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x44f712
push edx
push ecx
call fcn.004bdd39
add esp, 8
mov ecx, dword [ebp - 0x234]
mov eax, ecx
mov ebx, dword [ebp - 0x238]
sub eax, ebx
push 5
push str.pid
cmp eax, 5
jb 0x44e76f
cmp ecx, 0x10
lea esi, [ebp - 0x248]
lea eax, [ebx + 5]
cmovae esi, dword [ebp - 0x248]
mov dword [ebp - 0x238], eax
lea eax, [esi + ebx]
push eax
call fcn.004c0040
add esp, 0xc
mov byte [esi + ebx + 5], 0
jmp 0x44e789
mov byte [ebp - 0x314], 0
lea ecx, [ebp - 0x248]
push dword [ebp - 0x314]
push 5
call fcn.004053e0
sub esp, 0x18
lea eax, [edi + 0x75c]
mov ecx, esp
push eax
call fcn.00402f60
lea ecx, [ebp - 0x32c]
call fcn.004022e0
add esp, 0x18
mov ecx, eax
cmp dword [eax + 0x14], 0x10
jb 0x44e7b2
mov ecx, dword [eax]
mov ebx, dword [eax + 0x10]
mov esi, dword [ebp - 0x234]
mov eax, esi
mov edx, dword [ebp - 0x238]
sub eax, edx
push ebx
push ecx
cmp ebx, eax
ja 0x44e7f6
lea eax, [edx + ebx]
cmp esi, 0x10
mov dword [ebp - 0x238], eax
lea eax, [ebp - 0x248]
cmovae eax, dword [ebp - 0x248]
lea esi, [eax + edx]
push esi
call fcn.004c0040
add esp, 0xc
mov byte [ebx + esi], 0
jmp 0x44e80f
mov byte [ebp - 0x314], 0
lea ecx, [ebp - 0x248]
push dword [ebp - 0x314]
push ebx
call fcn.004053e0
mov edx, dword [ebp - 0x318]
cmp edx, 0x10
jb 0x44e849
mov ecx, dword [ebp - 0x32c]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x44e83f
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x44f717
push edx
push ecx
call fcn.004bdd39
add esp, 8
cmp dword [edi + 0x784], 0
je 0x44e978
mov ecx, dword [ebp - 0x234]
mov eax, ecx
mov ebx, dword [ebp - 0x238]
sub eax, ebx
push 6
push str.pid2
cmp eax, 6
jb 0x44e89e
cmp ecx, 0x10
lea esi, [ebp - 0x248]
lea eax, [ebx + 6]
cmovae esi, dword [ebp - 0x248]
mov dword [ebp - 0x238], eax
lea eax, [esi + ebx]
push eax
call fcn.004c0040
add esp, 0xc
mov byte [esi + ebx + 6], 0
jmp 0x44e8b8
mov byte [ebp - 0x314], 0
lea ecx, [ebp - 0x248]
push dword [ebp - 0x314]
push 6
call fcn.004053e0
sub esp, 0x18
lea eax, [edi + 0x774]
mov ecx, esp
push eax
call fcn.00402f60
lea ecx, [ebp - 0x32c]
call fcn.004022e0
add esp, 0x18
mov ecx, eax
cmp dword [eax + 0x14], 0x10
jb 0x44e8e1
mov ecx, dword [eax]
mov ebx, dword [eax + 0x10]
mov esi, dword [ebp - 0x234]
mov eax, esi
mov edx, dword [ebp - 0x238]
sub eax, edx
push ebx
push ecx
cmp ebx, eax
ja 0x44e925
lea eax, [edx + ebx]
cmp esi, 0x10
mov dword [ebp - 0x238], eax
lea eax, [ebp - 0x248]
cmovae eax, dword [ebp - 0x248]
lea esi, [eax + edx]
push esi
call fcn.004c0040
add esp, 0xc
mov byte [ebx + esi], 0
jmp 0x44e93e
mov byte [ebp - 0x314], 0
lea ecx, [ebp - 0x248]
push dword [ebp - 0x314]
push ebx
call fcn.004053e0
mov edx, dword [ebp - 0x318]
cmp edx, 0x10
jb 0x44e978
mov ecx, dword [ebp - 0x32c]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x44e96e
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x44f71c
push edx
push ecx
call fcn.004bdd39
add esp, 8
xor eax, eax
mov dword [ebp - 0x280], 0
mov word [ebp - 0x290], ax
mov edx, str.Software360360huabao
lea eax, [ebp - 0x290]
mov dword [ebp - 0x27c], 7
push eax
push 0x508bc0
mov ecx, SysReAllocString
call fcn.0040ffe0
add esp, 8
test eax, eax
je 0x44eaea
cmp dword [ebp - 0x280], 0
je 0x44eaea
mov ecx, dword [ebp - 0x234]
mov eax, ecx
mov ebx, dword [ebp - 0x238]
sub eax, ebx
push 6
push str.opid
cmp eax, 6
jb 0x44ea10
cmp ecx, 0x10
lea esi, [ebp - 0x248]
lea eax, [ebx + 6]
cmovae esi, dword [ebp - 0x248]
mov dword [ebp - 0x238], eax
lea eax, [esi + ebx]
push eax
call fcn.004c0040
add esp, 0xc
mov byte [esi + ebx + 6], 0
jmp 0x44ea2a
mov byte [ebp - 0x314], 0
lea ecx, [ebp - 0x248]
push dword [ebp - 0x314]
push 6
call fcn.004053e0
sub esp, 0x18
lea eax, [ebp - 0x290]
mov ecx, esp
push eax
call fcn.00402f60
lea ecx, [ebp - 0x32c]
call fcn.004022e0
add esp, 0x18
mov ecx, eax
cmp dword [eax + 0x14], 0x10
jb 0x44ea53
mov ecx, dword [eax]
mov ebx, dword [eax + 0x10]
mov esi, dword [ebp - 0x234]
mov eax, esi
mov edx, dword [ebp - 0x238]
sub eax, edx
push ebx
push ecx
cmp ebx, eax
ja 0x44ea97
lea eax, [edx + ebx]
cmp esi, 0x10
mov dword [ebp - 0x238], eax
lea eax, [ebp - 0x248]
cmovae eax, dword [ebp - 0x248]
lea esi, [eax + edx]
push esi
call fcn.004c0040
add esp, 0xc
mov byte [ebx + esi], 0
jmp 0x44eab0
mov byte [ebp - 0x314], 0
lea ecx, [ebp - 0x248]
push dword [ebp - 0x314]
push ebx
call fcn.004053e0
mov edx, dword [ebp - 0x318]
cmp edx, 0x10
jb 0x44eaea
mov ecx, dword [ebp - 0x32c]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x44eae0
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x44f721
push edx
push ecx
call fcn.004bdd39
add esp, 8
mov ecx, dword [ebp - 0x234]
mov eax, ecx
mov ebx, dword [ebp - 0x238]
sub eax, ebx
push 6
push 0x50d840
cmp eax, 6
jb 0x44eb32
cmp ecx, 0x10
lea esi, [ebp - 0x248]
lea eax, [ebx + 6]
cmovae esi, dword [ebp - 0x248]
mov dword [ebp - 0x238], eax
lea eax, [esi + ebx]
push eax
call fcn.004c0040
add esp, 0xc
mov byte [esi + ebx + 6], 0
jmp 0x44eb4c
mov byte [ebp - 0x314], 0
lea ecx, [ebp - 0x248]
push dword [ebp - 0x314]
push 6
call fcn.004053e0
cmp byte [edi + 0x80c], 1
mov ecx, str.reinstall
mov eax, str.install
cmovne eax, ecx
lea ecx, [ebp - 0x248]
push eax
call fcn.004030c0
mov ecx, dword [ebp - 0x234]
mov eax, ecx
mov ebx, dword [ebp - 0x238]
sub eax, ebx
push 5
push 0x50d848
cmp eax, 5
jb 0x44ebb4
cmp ecx, 0x10
lea esi, [ebp - 0x248]
lea eax, [ebx + 5]
cmovae esi, dword [ebp - 0x248]
mov dword [ebp - 0x238], eax
lea eax, [esi + ebx]
push eax
call fcn.004c0040
add esp, 0xc
mov byte [esi + ebx + 5], 0
jmp 0x44ebce
mov byte [ebp - 0x314], 0
lea ecx, [ebp - 0x248]
push dword [ebp - 0x314]
push 5
call fcn.004053e0
sub esp, 0x18
mov ecx, esp
call fcn.00412820
lea ecx, [ebp - 0x32c]
call fcn.004022e0
add esp, 0x18
mov ecx, eax
cmp dword [eax + 0x14], 0x10
jb 0x44ebf0
mov ecx, dword [eax]
mov ebx, dword [eax + 0x10]
mov esi, dword [ebp - 0x234]
mov eax, esi
mov edx, dword [ebp - 0x238]
sub eax, edx
push ebx
push ecx
cmp ebx, eax
ja 0x44ec34
lea eax, [edx + ebx]
cmp esi, 0x10
mov dword [ebp - 0x238], eax
lea eax, [ebp - 0x248]
cmovae eax, dword [ebp - 0x248]
lea esi, [eax + edx]
push esi
call fcn.004c0040
add esp, 0xc
mov byte [ebx + esi], 0
jmp 0x44ec4d
mov byte [ebp - 0x314], 0
lea ecx, [ebp - 0x248]
push dword [ebp - 0x314]
push ebx
call fcn.004053e0
mov edx, dword [ebp - 0x318]
cmp edx, 0x10
jb 0x44ec87
mov ecx, dword [ebp - 0x32c]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x44ec7d
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x44f726
push edx
push ecx
call fcn.004bdd39
add esp, 8
mov ecx, dword [ebp - 0x234]
mov eax, ecx
mov ebx, dword [ebp - 0x238]
sub eax, ebx
push 4
push str.m2
cmp eax, 4
jb 0x44eccf
cmp ecx, 0x10
lea esi, [ebp - 0x248]
lea eax, [ebx + 4]
cmovae esi, dword [ebp - 0x248]
mov dword [ebp - 0x238], eax
lea eax, [esi + ebx]
push eax
call fcn.004c0040
add esp, 0xc
mov byte [esi + ebx + 4], 0
jmp 0x44ece9
mov byte [ebp - 0x314], 0
lea ecx, [ebp - 0x248]
push dword [ebp - 0x314]
push 4
call fcn.004053e0
sub esp, 0x18
mov ecx, esp
push 0x553010
call fcn.00402f60
lea ecx, [ebp - 0x32c]
call fcn.004022e0
add esp, 0x18
mov edx, eax
cmp dword [eax + 0x14], 0x10
jb 0x44ed10
mov edx, dword [eax]
mov ebx, dword [eax + 0x10]
mov ecx, dword [ebp - 0x238]
mov eax, dword [ebp - 0x234]
sub eax, ecx
mov dword [ebp - 0x314], ecx
push ebx
push edx
cmp ebx, eax
ja 0x44ed65
cmp dword [ebp - 0x234], 0x10
lea esi, [ebp - 0x248]
lea eax, [ebx + ecx]
cmovae esi, dword [ebp - 0x248]
mov dword [ebp - 0x238], eax
lea eax, [esi + ecx]
push eax
call fcn.004c0040
mov ecx, dword [ebp - 0x314]
lea eax, [ebx + esi]
add esp, 0xc
mov byte [eax + ecx], 0
jmp 0x44ed7e
mov byte [ebp - 0x314], 0
lea ecx, [ebp - 0x248]
push dword [ebp - 0x314]
push ebx
call fcn.004053e0
mov edx, dword [ebp - 0x318]
cmp edx, 0x10
jb 0x44edb8
mov ecx, dword [ebp - 0x32c]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x44edae
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x44f72b
push edx
push ecx
call fcn.004bdd39
add esp, 8
mov eax, dword [edi + 0x720]
cmp eax, 5
jne 0x44eee9
mov ecx, dword [ebp - 0x234]
mov eax, ecx
mov ebx, dword [ebp - 0x238]
sub eax, ebx
push 0xa
push str.core_src
cmp eax, 0xa
jb 0x44ee0f
cmp ecx, 0x10
lea esi, [ebp - 0x248]
lea eax, [ebx + 0xa]
cmovae esi, dword [ebp - 0x248]
mov dword [ebp - 0x238], eax
lea eax, [esi + ebx]
push eax
call fcn.004c0040
add esp, 0xc
mov byte [esi + ebx + 0xa], 0
jmp 0x44ee29
mov byte [ebp - 0x314], 0
lea ecx, [ebp - 0x248]
push dword [ebp - 0x314]
push 0xa
call fcn.004053e0
lea eax, [edi + 0x7a4]
sub esp, 0x18
mov ecx, esp
push eax
call fcn.00402f60
lea ecx, [ebp - 0x32c]
call fcn.004022e0
add esp, 0x18
mov ecx, eax
cmp dword [eax + 0x14], 0x10
jb 0x44ee52
mov ecx, dword [eax]
mov ebx, dword [eax + 0x10]
mov esi, dword [ebp - 0x234]
mov eax, esi
mov edx, dword [ebp - 0x238]
sub eax, edx
push ebx
push ecx
cmp ebx, eax
ja 0x44ee96
lea eax, [edx + ebx]
cmp esi, 0x10
mov dword [ebp - 0x238], eax
lea eax, [ebp - 0x248]
cmovae eax, dword [ebp - 0x248]
lea esi, [eax + edx]
push esi
call fcn.004c0040
add esp, 0xc
mov byte [esi + ebx], 0
jmp 0x44eeaf
mov byte [ebp - 0x314], 0
lea ecx, [ebp - 0x248]
push dword [ebp - 0x314]
push ebx
call fcn.004053e0
mov edx, dword [ebp - 0x318]
cmp edx, 0x10
jb 0x44f044
mov ecx, dword [ebp - 0x32c]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x44ef68
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x44f730
jmp 0x44ef68
cmp eax, 7
jne 0x44ef77
mov ecx, dword [ebp - 0x234]
mov eax, ecx
mov ebx, dword [ebp - 0x238]
sub eax, ebx
push 6
push str.opid
cmp eax, 6
jb 0x44ef43
cmp ecx, 0x10
lea esi, [ebp - 0x248]
lea eax, [ebx + 6]
cmovae esi, dword [ebp - 0x248]
mov dword [ebp - 0x238], eax
lea eax, [esi + ebx]
push eax
call fcn.004c0040
add esp, 0xc
mov byte [esi + ebx + 6], 0
lea eax, [edi + 0x78c]
jmp 0x44ee2f
mov byte [ebp - 0x314], 0
lea ecx, [ebp - 0x248]
push dword [ebp - 0x314]
push 6
call fcn.004053e0
lea eax, [edi + 0x78c]
jmp 0x44ee2f
push edx
push ecx
call fcn.004bdd39
add esp, 8
jmp 0x44f044
cmp eax, 6
jne 0x44f044
mov ecx, dword [ebp - 0x234]
mov eax, ecx
mov ebx, dword [ebp - 0x238]
sub eax, ebx
push 6
push str.npid
cmp eax, 6
jb 0x44efc8
cmp ecx, 0x10
lea esi, [ebp - 0x248]
lea eax, [ebx + 6]
cmovae esi, dword [ebp - 0x248]
mov dword [ebp - 0x238], eax
lea eax, [esi + ebx]
push eax
call fcn.004c0040
add esp, 0xc
mov byte [esi + ebx + 6], 0
jmp 0x44efe2
mov byte [ebp - 0x314], 0
lea ecx, [ebp - 0x248]
push dword [ebp - 0x314]
push 6
call fcn.004053e0
mov ecx, dword [ebp - 0x234]
mov eax, ecx
mov ebx, dword [ebp - 0x238]
sub eax, ebx
push 0xc
push str.core_restore
cmp eax, 0xc
jb 0x44f02a
cmp ecx, 0x10
lea esi, [ebp - 0x248]
lea eax, [ebx + 0xc]
cmovae esi, dword [ebp - 0x248]
mov dword [ebp - 0x238], eax
lea eax, [esi + ebx]
push eax
call fcn.004c0040
add esp, 0xc
mov byte [esi + ebx + 0xc], 0
jmp 0x44f044
mov byte [ebp - 0x314], 0
lea ecx, [ebp - 0x248]
push dword [ebp - 0x314]
push 0xc
call fcn.004053e0
mov edx, dword [ebp - 0x234]
mov eax, edx
mov ecx, dword [ebp - 0x238]
sub eax, ecx
push 7
push str.ccsrc
cmp eax, 7
jb 0x44f08a
cmp edx, 0x10
lea esi, [ebp - 0x248]
lea eax, [ecx + 7]
cmovae esi, dword [ebp - 0x248]
add esi, ecx
mov dword [ebp - 0x238], eax
push esi
call fcn.004c0040
add esp, 0xc
mov byte [esi + 7], 0
jmp 0x44f0a4
mov byte [ebp - 0x314], 0
lea ecx, [ebp - 0x248]
push dword [ebp - 0x314]
push 7
call fcn.004053e0
sub esp, 0x18
lea eax, [edi + 0x78c]
mov ecx, esp
push eax
call fcn.00402f60
lea ecx, [ebp - 0x1c]
call fcn.004022e0
add esp, 0x18
mov ecx, eax
cmp dword [eax + 0x14], 0x10
jb 0x44f0ca
mov ecx, dword [eax]
mov ebx, dword [eax + 0x10]
mov esi, dword [ebp - 0x234]
mov eax, esi
mov edx, dword [ebp - 0x238]
sub eax, edx
push ebx
push ecx
cmp ebx, eax
ja 0x44f10e
lea eax, [edx + ebx]
cmp esi, 0x10
mov dword [ebp - 0x238], eax
lea eax, [ebp - 0x248]
cmovae eax, dword [ebp - 0x248]
lea esi, [eax + edx]
push esi
call fcn.004c0040
add esp, 0xc
mov byte [esi + ebx], 0
jmp 0x44f127
mov byte [ebp - 0x314], 0
lea ecx, [ebp - 0x248]
push dword [ebp - 0x314]
push ebx
call fcn.004053e0
mov edx, dword [ebp - 8]
cmp edx, 0x10
jb 0x44f15b
mov ecx, dword [ebp - 0x1c]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x44f151
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x44f735
push edx
push ecx
call fcn.004bdd39
add esp, 8
cmp dword [0x557b04], 0
mov dword [ebp - 0xc], 0
mov dword [ebp - 8], 0xf
mov byte [ebp - 0x1c], 0
jne 0x44f185
push 1
call fcn.004bdd09
add esp, 4
mov dword [0x557b04], eax
call fcn.0043aaf0
mov esi, dword [ebp - 0x234]
mov ebx, eax
mov edx, dword [ebp - 0x238]
mov ecx, esi
sub ecx, edx
push 4
push str.ss
cmp ecx, 4
jb 0x44f1d3
cmp esi, 0x10
lea eax, [ebp - 0x248]
lea ecx, [edx + 4]
cmovae eax, dword [ebp - 0x248]
mov dword [ebp - 0x238], ecx
lea esi, [eax + edx]
push esi
call fcn.004c0040
add esp, 0xc
mov byte [esi + 4], 0
jmp 0x44f1ed
mov byte [ebp - 0x314], 0
lea ecx, [ebp - 0x248]
push dword [ebp - 0x314]
push 4
call fcn.004053e0
lea esi, [ebp - 7]
test ebx, ebx
jns 0x44f220
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 0x44f1f6
dec esi
mov byte [esi], 0x2d
jmp 0x44f243
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 0x44f220
lea eax, [ebp - 7]
mov dword [ebp - 0x31c], 0
mov dword [ebp - 0x318], 0xf
mov byte [ebp - 0x32c], 0
cmp esi, eax
je 0x44f274
sub eax, esi
lea ecx, [ebp - 0x32c]
push eax
push esi
call fcn.00404000
lea eax, [ebp - 0x32c]
push eax
lea ecx, [ebp - 0x248]
call fcn.00403130
lea ecx, [ebp - 0x32c]
call fcn.004031a0
push str.os
lea ecx, [ebp - 0x248]
call fcn.004030c0
call fcn.004104e0
add eax, 0xfffffffb
cmp eax, 4
ja case.0x44f2ae.6
jmp dword [eax*4 + 0x44f73c]
mov eax, 0x50d898
jmp 0x44f2d6
mov eax, 0x50d8a8
jmp 0x44f2d6
mov eax, str.3254
jmp 0x44f2d6
mov eax, 0x50d8b0
jmp 0x44f2d6
mov eax, 0x50d8ac
push eax
lea ecx, [ebp - 0x248]
call fcn.004030c0
push str.w64
lea ecx, [ebp - 0x248]
call fcn.004030c0
call fcn.00410850
lea ecx, [ebp - 7]
test eax, eax
jns 0x44f310
neg eax
mov edx, eax
call fcn.00450400
mov byte [eax - 1], 0x2d
lea ecx, [eax - 1]
jmp 0x44f319
mov edx, eax
call fcn.00450400
mov ecx, eax
lea eax, [ebp - 7]
mov dword [ebp - 0x31c], 0
mov dword [ebp - 0x318], 0xf
mov byte [ebp - 0x32c], 0
cmp ecx, eax
je 0x44f34a
sub eax, ecx
push eax
push ecx
lea ecx, [ebp - 0x32c]
call fcn.00404000
lea eax, [ebp - 0x32c]
push eax
lea ecx, [ebp - 0x248]
call fcn.00403130
lea ecx, [ebp - 0x32c]
call fcn.004031a0
push 0x50d8b4
lea ecx, [ebp - 0x248]
call fcn.004030c0
call fcn.00417100
movzx edx, al
lea ecx, [ebp - 7]
call fcn.00450400
lea ecx, [ebp - 7]
mov dword [ebp - 0x31c], 0
mov dword [ebp - 0x318], 0xf
mov byte [ebp - 0x32c], 0
cmp eax, ecx
je 0x44f3b8
sub ecx, eax
push ecx
push eax
lea ecx, [ebp - 0x32c]
call fcn.00404000
lea eax, [ebp - 0x32c]
push eax
lea ecx, [ebp - 0x248]
call fcn.00403130
lea ecx, [ebp - 0x32c]
call fcn.004031a0
push str.wb
lea ecx, [ebp - 0x248]
call fcn.004030c0
call fcn.004171c0
movzx edx, al
lea ecx, [ebp - 7]
call fcn.00450400
lea ecx, [ebp - 7]
mov dword [ebp - 0x31c], 0
mov dword [ebp - 0x318], 0xf
mov byte [ebp - 0x32c], 0
cmp eax, ecx
je 0x44f426
sub ecx, eax
push ecx
push eax
lea ecx, [ebp - 0x32c]
call fcn.00404000
lea eax, [ebp - 0x32c]
push eax
lea ecx, [ebp - 0x248]
call fcn.00403130
lea ecx, [ebp - 0x32c]
call fcn.004031a0
push 0x20a
lea eax, [ebp - 0x230]
mov ebx, 1
push 0
push eax
call fcn.004c05c0
lea esi, [edi + 0x724]
add esp, 0xc
cmp dword [esi + 0x14], 8
mov ecx, esi
jb 0x44f46e
mov ecx, dword [esi]
lea eax, [ebp - 0x230]
mov edx, str._ltype:
push 0x104
push eax
call fcn.00410d70
add esp, 8
test eax, eax
je 0x44f4ae
cmp dword [esi + 0x14], 8
jb 0x44f493
mov esi, dword [esi]
push ecx
mov edx, str._ltype:
mov ecx, esi
call fcn.00410cf0
add esp, 4
mov ecx, 2
cmp eax, 5
cmove ebx, ecx
push str.im
lea ecx, [ebp - 0x248]
call fcn.004030c0
mov edx, ebx
lea ecx, [ebp - 7]
call fcn.00450400
lea ecx, [ebp - 7]
mov dword [ebp - 0x31c], 0
mov dword [ebp - 0x318], 0xf
mov byte [ebp - 0x32c], 0
cmp eax, ecx
je 0x44f4f9
sub ecx, eax
push ecx
push eax
lea ecx, [ebp - 0x32c]
call fcn.00404000
lea eax, [ebp - 0x32c]
push eax
lea ecx, [ebp - 0x248]
call fcn.00403130
lea ecx, [ebp - 0x32c]
call fcn.004031a0
lea ecx, [ebp - 0x278]
xor bl, bl
call fcn.004176c0
cmp dword [ebp - 0x264], 8
lea eax, [ebp - 0x278]
cmovae eax, dword [ebp - 0x278]
push eax
push 0x603
push str.InstallUtil::SendInstallReport
push str.__s__d__strDeskTopRestPath:_s
call fcn.0041f720
add esp, 0x10
lea eax, [ebp - 0x278]
cmp dword [ebp - 0x264], 8
cmovae eax, dword [ebp - 0x278]
push eax
call dword [sym.imp.SHLWAPI.dll_PathFileExistsW]
test eax, eax
je 0x44f580
call fcn.00417c60
test eax, eax
movzx ebx, bl
mov ecx, 1
cmove ebx, ecx
push str.ach
lea ecx, [ebp - 0x248]
call fcn.004030c0
xor eax, eax
mov dword [ebp - 0x250], 0
push eax
push 0x5010a0
lea ecx, [ebp - 0x32c]
mov dword [ebp - 0x24c], 0xf
mov byte [ebp - 0x260], 0
mov dword [ebp - 0x31c], 0
mov dword [ebp - 0x318], 7
mov word [ebp - 0x32c], ax
call fcn.00403e30
call fcn.00411740
test eax, eax
mov edx, 0x5074e0
mov ecx, 0x50d898
cmove ecx, edx
push ecx
lea ecx, [ebp - 0x260]
call fcn.004030c0
lea ecx, [ebp - 0x32c]
call fcn.00402e70
call fcn.00417a50
mov esi, 0x50d9a4
test al, al
mov edx, 0x50d9a0
mov ecx, esi
cmove ecx, edx
push ecx
lea ecx, [ebp - 0x260]
call fcn.004030c0
test bl, bl
lea ecx, [ebp - 0x260]
mov eax, 0x50d9a0
cmove esi, eax
push esi
call fcn.004030c0
lea eax, [ebp - 0x260]
push eax
lea ecx, [ebp - 0x248]
call fcn.00403130
push 0x7c
lea eax, [ebp - 0x310]
push 0
push eax
call fcn.004c05c0
add esp, 0xc
lea ecx, [ebp - 0x310]
call fcn.00435ce0
sub esp, 0x18
lea eax, [ebp - 0x248]
mov ecx, esp
push eax
call fcn.004032f0
lea ecx, [ebp - 0x32c]
call fcn.00402070
add esp, 0x18
cmp dword [eax + 0x14], 8
jb 0x44f693
mov eax, dword [eax]
test eax, eax
jne 0x44f69b
xor esi, esi
jmp 0x44f6af
push edi
push 0x446d30
push eax
lea ecx, [ebp - 0x310]
call fcn.00435fc0
mov esi, eax
lea ecx, [ebp - 0x32c]
call fcn.00402e70
test esi, esi
je 0x44f6ca
lea eax, [ebp - 0x310]
push eax
call fcn.004364b0
lea ecx, [ebp - 0x310]
call fcn.00435df0
lea ecx, [ebp - 0x260]
call fcn.004031a0
lea ecx, [ebp - 0x278]
call fcn.00402e70
lea ecx, [ebp - 0x290]
call fcn.00402e70
lea ecx, [ebp - 0x248]
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
call fcn.004c8da3
call fcn.004c8da3
call fcn.004c8da3
call fcn.004c8da3
nop
mov ch, 0xf2
inc esp
add cl, dl
inc esp
add byte [edx + esi*8 - 0xd3cffbc], bh
inc esp
add dl, cl
inc esp
add byte [ebp - 0x75], dl
push ebp
mov ebp, esp