Function at 0x4b6a1c
Capabilities:
Delete registry value
Set registry value

Disassembly:
push ebp
mov ebp, esp
push ecx
mov ecx, 0x1c
push 0
push 0
dec ecx
jne 0x4b6a25
push ecx
xchg dword [ebp - 4], ecx
push ebx
push esi
push edi
mov dword [ebp - 0x78], ecx
mov byte [ebp - 0x29], dl
mov dword [ebp - 0x30], eax
mov ecx, 0xa
lea eax, [ebp - 0x28]
mov edx, dword [0x4010ac]
call fcn.004071ec
xor eax, eax
push ebp
push 0x4b77da
push dword fs:[eax]
mov dword fs:[eax], esp
mov eax, 0x4b77f8
call fcn.004b2870
lea eax, [ebp - 0xa4]
call fcn.004810d0
mov eax, dword [ebp - 0xa4]
call fcn.0040e6b4
mov byte [ebp - 0x79], 1
mov eax, dword [ebp - 0x30]
mov byte [eax + 0x1c], 0
mov byte [ebp - 0x7a], 0
xor eax, eax
mov dword [ebp - 0x80], eax
xor eax, eax
mov dword [ebp - 0x44], eax
xor eax, eax
mov dword [ebp - 0x40], eax
xor eax, eax
mov dword [ebp - 0x38], eax
xor eax, eax
mov dword [ebp - 0x34], eax
xor eax, eax
mov dword [ebp - 0x48], eax
mov dl, 1
mov eax, dword [0x48553c]
call fcn.00404068
mov dword [ebp - 0x3c], eax
xor edx, edx
push ebp
push 0x4b776d
push dword fs:[edx]
mov dword fs:[edx], esp
mov dl, 1
mov eax, dword [0x48553c]
call fcn.00404068
mov dword [ebp - 0x80], eax
mov dl, 1
mov eax, dword [0x48553c]
call fcn.00404068
mov dword [ebp - 0x44], eax
mov dl, 1
mov eax, dword [0x48553c]
call fcn.00404068
mov dword [ebp - 0x40], eax
mov dl, 1
mov eax, dword [0x48553c]
call fcn.00404068
mov dword [ebp - 0x38], eax
mov dl, 1
mov eax, dword [0x48553c]
call fcn.00404068
mov dword [ebp - 0x34], eax
cmp dword [ebp - 0x78], 0
je 0x4b6b27
mov dl, 1
mov eax, dword [0x48553c]
call fcn.00404068
mov dword [ebp - 0x48], eax
mov eax, dword [ebp - 0x30]
mov eax, dword [eax + 0xc]
mov dword [ebp - 0x84], eax
mov ecx, eax
mov edx, dword [ebp - 0x84]
mov eax, dword [ebp - 0x30]
mov ebx, dword [eax]
call dword [ebx + 8]
cmp byte [ebp - 0x29], 0
je 0x4b6ee0
mov eax, dword [ebp - 0x30]
mov eax, dword [eax + 8]
mov dword [ebp - 0x88], eax
cmp dword [ebp - 0x88], 0
je 0x4b6ee0
mov eax, dword [ebp - 0x88]
cmp word [eax + 0x10], 0x80
jne 0x4b6ec5
xor eax, eax
push ebp
push 0x4b6e72
push dword fs:[eax]
mov dword fs:[eax], esp
push ebp
mov eax, dword [ebp - 0x88]
call fcn.004b69c8
pop ecx
cmp dword [ebp - 0x1c], 0
je 0x4b6bab
mov edx, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x80]
call fcn.00488b5c
inc eax
jne 0x4b6e33
mov bl, 1
mov eax, dword [ebp - 0x88]
mov esi, dword [eax + 8]
test esi, 1
je 0x4b6bc2
xor ebx, ebx
jmp 0x4b6bcc
test esi, 2
je 0x4b6bcc
mov bl, 2
mov dword [ebp - 0xa0], 1
test esi, 8
je 0x4b6bea
mov dword [ebp - 0xa0], 7
jmp 0x4b6c0e
test esi, 0x10
je 0x4b6bfe
mov dword [ebp - 0xa0], 3
jmp 0x4b6c0e
test esi, 0x40
je 0x4b6c0e
xor eax, eax
mov dword [ebp - 0xa0], eax
test esi, 4
jne 0x4b6d29
lea eax, [ebp - 0xa8]
mov ecx, dword [ebp - 0x28]
mov edx, 0x4b7850
call fcn.00406914
mov eax, dword [ebp - 0xa8]
call fcn.004b2870
cmp dword [ebp - 0x24], 0
je 0x4b6c5c
lea eax, [ebp - 0xac]
mov ecx, dword [ebp - 0x24]
mov edx, 0x4b788c
call fcn.00406914
mov eax, dword [ebp - 0xac]
call fcn.004b2870
mov eax, dword [ebp - 0x88]
test byte [eax + 8], 0x20
je 0x4b6c85
mov eax, dword [ebp - 0x88]
test byte [eax + 9], 1
setne al
mov edx, dword [ebp - 0x28]
call fcn.004850a0
test al, al
je 0x4b6d1a
mov eax, dword [ebp - 0x20]
push eax
push ebx
mov eax, dword [ebp - 0xa0]
push eax
push 0x4b5b30
lea eax, [ebp - 0x90]
push eax
mov eax, dword [ebp - 0x88]
test byte [eax + 9], 1
setne al
mov ecx, dword [ebp - 0x24]
mov edx, dword [ebp - 0x28]
call fcn.00487504
test al, al
jne 0x4b6ce7
mov eax, dword [ebp - 0x90]
mov dword [ebp - 0xb4], eax
mov byte [ebp - 0xb0], 0
lea edx, [ebp - 0xb4]
xor ecx, ecx
mov eax, 0x4b78cc
call fcn.004b2af4
mov byte [ebp - 0x79], 0
jmp 0x4b6e20
cmp bl, 1
jne 0x4b6e20
mov eax, dword [ebp - 0x90]
mov dword [ebp - 0xb4], eax
mov byte [ebp - 0xb0], 0
lea edx, [ebp - 0xb4]
xor ecx, ecx
mov eax, 0x4b7910
call fcn.004b2af4
jmp 0x4b6e20
mov eax, 0x4b7948
call fcn.004b2870
jmp 0x4b6e20
lea eax, [ebp - 0xb8]
mov ecx, dword [ebp - 0x28]
mov edx, 0x4b7990
call fcn.00406914
mov eax, dword [ebp - 0xb8]
call fcn.004b2870
cmp dword [ebp - 0x24], 0
je 0x4b6d6b
lea eax, [ebp - 0xbc]
mov ecx, dword [ebp - 0x24]
mov edx, 0x4b79d8
call fcn.00406914
mov eax, dword [ebp - 0xbc]
call fcn.004b2870
mov eax, dword [ebp - 0x88]
test byte [eax + 8], 0x20
je 0x4b6d87
mov eax, dword [ebp - 0x28]
call fcn.0048050c
test al, al
je 0x4b6e16
mov eax, dword [ebp - 0x88]
test byte [eax + 8], 0x80
jne 0x4b6d95
xor ebx, ebx
mov eax, dword [ebp - 0x20]
push eax
push ebx
mov eax, dword [ebp - 0xa0]
push eax
push 0x4b5b30
lea eax, [ebp - 0x90]
push eax
mov ecx, dword [ebp - 0x24]
mov edx, dword [ebp - 0x28]
mov eax, dword [ebp - 0x18]
call fcn.004877d0
test al, al
jne 0x4b6dea
mov eax, dword [ebp - 0x90]
mov dword [ebp - 0xb4], eax
mov byte [ebp - 0xb0], 0
lea edx, [ebp - 0xb4]
xor ecx, ecx
mov eax, 0x4b7a24
call fcn.004b2af4
mov byte [ebp - 0x79], 0
jmp 0x4b6e20
cmp bl, 1
jne 0x4b6e20
mov eax, dword [ebp - 0x90]
mov dword [ebp - 0xb4], eax
mov byte [ebp - 0xb0], 0
lea edx, [ebp - 0xb4]
xor ecx, ecx
mov eax, 0x4b7910
call fcn.004b2af4
jmp 0x4b6e20
mov eax, 0x4b7a68
call fcn.004b2870
cmp dword [ebp - 0x1c], 0
je 0x4b6e68
mov edx, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x80]
call fcn.00488a64
jmp 0x4b6e68
mov eax, dword [ebp - 0x1c]
mov dword [ebp - 0xcc], eax
mov byte [ebp - 0xc8], 0x11
mov eax, dword [ebp - 0x28]
mov dword [ebp - 0xc4], eax
mov byte [ebp - 0xc0], 0x11
lea edx, [ebp - 0xcc]
mov ecx, 1
mov eax, 0x4b7ac4
call fcn.004b2af4
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x4b6e9b
mov edx, dword [ebp - 0x88]
mov eax, dword [ebp - 0x30]
call fcn.004b59ac
mov dword [ebp - 0x88], eax
mov eax, dword [ebp - 0x30]
mov ecx, dword [eax + 0xc]
mov edx, dword [ebp - 0x84]
mov eax, dword [ebp - 0x30]
mov ebx, dword [eax]
call dword [ebx + 8]
jmp 0x4b6ed3
mov eax, dword [ebp - 0x88]
mov eax, dword [eax]
mov dword [ebp - 0x88], eax
cmp dword [ebp - 0x88], 0
jne 0x4b6b66
mov eax, dword [ebp - 0x30]
mov eax, dword [eax + 8]
mov dword [ebp - 0x88], eax
cmp dword [ebp - 0x88], 0
je 0x4b7115
mov byte [ebp - 0x89], 0
mov eax, dword [ebp - 0x88]
cmp word [eax + 0x10], 0x82
jne 0x4b70c7
mov byte [ebp - 0x89], 1
xor eax, eax
push ebp
push 0x4b709e
push dword fs:[eax]
mov dword fs:[eax], esp
push ebp
mov eax, dword [ebp - 0x88]
call fcn.004b69c8
pop ecx
cmp byte [ebp - 0x29], 0
jne 0x4b6f4a
mov eax, dword [ebp - 0x88]
test byte [eax + 8], 1
jne 0x4b708d
cmp byte [ebp - 0x29], 0
jne 0x4b6f56
cmp dword [ebp - 0x24], 0
jne 0x4b6f5a
xor eax, eax
jmp 0x4b6f5c
mov al, 1
mov byte [ebp - 0x8a], al
mov eax, dword [ebp - 0x88]
mov esi, dword [eax + 8]
test esi, 8
setne bl
test bl, bl
je 0x4b6f91
test esi, 0x400
setne dl
mov eax, dword [ebp - 0x28]
call fcn.004b6220
mov byte [ebp - 0x8b], al
jmp 0x4b6f98
mov byte [ebp - 0x8b], 0
test bl, bl
je 0x4b6fea
cmp byte [ebp - 0x8b], 0
je 0x4b7094
cmp byte [ebp - 0x8a], 0
jne 0x4b6fea
mov eax, dword [ebp - 0x88]
test byte [eax + 9], 8
setne al
mov edx, dword [ebp - 0x28]
call fcn.004850a0
test al, al
je 0x4b6fea
mov eax, dword [ebp - 0x88]
test byte [eax + 9], 2
jne 0x4b6fea
mov edx, dword [ebp - 0x28]
mov eax, dword [ebp - 0x30]
mov ecx, dword [eax]
call dword [ecx + 4]
test al, al
je 0x4b7094
mov byte [ebp - 0x89], 0
cmp byte [ebp - 0x8a], 0
jne 0x4b703e
mov eax, dword [ebp - 0x88]
test byte [eax + 8], 0x10
je 0x4b701d
push ebp
mov eax, dword [ebp - 0x88]
test byte [eax + 9], 8
setne al
mov edx, dword [ebp - 0x28]
call fcn.004b6328
pop ecx
mov eax, dword [ebp - 0x88]
test byte [eax + 8], 0x40
je 0x4b703e
mov eax, dword [ebp - 0x88]
test byte [eax + 9], 8
setne al
mov edx, dword [ebp - 0x28]
call fcn.004b65b8
mov eax, dword [ebp - 0x88]
test byte [eax + 8], 4
je 0x4b7077
mov eax, dword [ebp - 0x20]
mov dword [ebp - 0xb4], eax
mov byte [ebp - 0xb0], 0x11
lea edx, [ebp - 0xb4]
xor ecx, ecx
mov eax, 0x4b7b1c
call fcn.004b2af4
mov edx, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x20]
call fcn.004884d0
mov eax, dword [ebp - 0x88]
test byte [eax + 9], 0x10
je 0x4b7094
mov eax, dword [ebp - 0x18]
call fcn.004b67cc
jmp 0x4b7094
mov byte [ebp - 0x89], 0
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x4b70c7
cmp byte [ebp - 0x89], 0
je 0x4b70fa
mov edx, dword [ebp - 0x88]
mov eax, dword [ebp - 0x30]
call fcn.004b59ac
mov dword [ebp - 0x88], eax
mov eax, dword [ebp - 0x30]
mov ecx, dword [eax + 0xc]
mov edx, dword [ebp - 0x84]
mov eax, dword [ebp - 0x30]
mov ebx, dword [eax]
call dword [ebx + 8]
jmp 0x4b7108
mov eax, dword [ebp - 0x88]
mov eax, dword [eax]
mov dword [ebp - 0x88], eax
cmp dword [ebp - 0x88], 0
jne 0x4b6ef9
mov eax, dword [ebp - 0x30]
mov eax, dword [eax + 8]
mov dword [ebp - 0x88], eax
cmp dword [ebp - 0x88], 0
je 0x4b7695
push ebp
mov eax, dword [ebp - 0x88]
call fcn.004b69c8
pop ecx
xor eax, eax
push ebp
push 0x4b7637
push dword fs:[eax]
mov dword fs:[eax], esp
mov eax, dword [ebp - 0x88]
movzx esi, word [eax + 0x10]
movzx eax, si
cmp eax, 0x85
jg 0x4b71b4
je 0x4b7401
cmp eax, 0x81
jg 0x4b7196
je 0x4b7227
dec eax
je 0x4b71e5
add eax, 0xfffffff1
sub eax, 2
jb case.0x4b71c2.140
sub eax, 0xe
je case.0x4b71c2.140
sub eax, 0x60
je case.0x4b71c2.140
jmp case.default.0x4b71c2
sub eax, 0x82
je 0x4b72d0
dec eax
je case.0x4b71c2.140
dec eax
je 0x4b73ee
jmp case.default.0x4b71c2
add eax, 0xffffff7a
cmp eax, 6
ja case.default.0x4b71c2
jmp dword [eax*4 + 0x4b71c9]
lea eax, [ebp - 0xd4]
mov ecx, dword [ebp - 0x28]
mov edx, 0x4b7b58
call fcn.00406914
mov edx, dword [ebp - 0xd4]
lea ecx, [ebp - 0xd0]
mov al, 0xc2
call fcn.00484118
mov ecx, dword [ebp - 0xd0]
mov dl, 1
mov eax, dword [0x40b4ac]
call fcn.004122e0
call fcn.00404a74
jmp case.0x4b71c2.140
cmp byte [ebp - 0x29], 0
jne 0x4b723d
mov eax, dword [ebp - 0x88]
test byte [eax + 8], 1
jne case.0x4b71c2.140
mov eax, dword [ebp - 0x88]
mov ebx, dword [eax + 8]
test bl, 4
setne al
push eax
test bl, 8
setne al
push eax
push 0
push 0x4b5a2c
push 0x4b5a38
lea eax, [ebp - 0x48]
push eax
test bl, 2
setne cl
test bl, 0x20
setne al
mov edx, dword [ebp - 0x28]
call fcn.004864d4
test al, al
je case.0x4b71c2.140
mov eax, dword [ebp - 0x88]
test byte [eax + 8], 2
je case.0x4b71c2.140
mov eax, dword [ebp - 0x88]
test byte [eax + 8], 0x10
je case.0x4b71c2.140
push 0
mov eax, dword [ebp - 0x70]
push eax
push 5
push 0x10
call sub.shell32.dll_SHChangeNotify
lea edx, [ebp - 0xd8]
mov eax, dword [ebp - 0x28]
call fcn.004800fc
mov edx, dword [ebp - 0xd8]
mov eax, dword [ebp - 0x3c]
call fcn.00488ab8
jmp case.0x4b71c2.140
lea eax, [ebp - 0x74]
mov edx, dword [ebp - 0x24]
call fcn.0040649c
cmp byte [ebp - 0x29], 0
jne 0x4b72e7
cmp dword [ebp - 0x74], 0
jne 0x4b72f2
lea eax, [ebp - 0x74]
mov edx, dword [ebp - 0x28]
call fcn.0040649c
cmp byte [ebp - 0x29], 0
jne 0x4b7304
mov eax, dword [ebp - 0x88]
test byte [eax + 8], 1
jne 0x4b736b
cmp byte [ebp - 0x29], 0
jne 0x4b731a
mov eax, dword [ebp - 0x88]
test byte [eax + 8], 2
jne case.0x4b71c2.140
push ebp
mov eax, dword [ebp - 0x88]
test byte [eax + 8], 0x80
setne al
push eax
mov eax, dword [ebp - 0x88]
test byte [eax + 9], 1
setne al
push eax
mov eax, dword [ebp - 0x88]
test byte [eax + 8], 0x20
setne cl
mov eax, dword [ebp - 0x88]
test byte [eax + 9], 8
setne dl
mov eax, dword [ebp - 0x74]
call fcn.004b5cc0
pop ecx
test al, al
jne case.0x4b71c2.140
mov byte [ebp - 0x79], 0
jmp case.0x4b71c2.140
mov eax, dword [ebp - 0x88]
test byte [eax + 8], 8
je 0x4b738c
mov eax, dword [ebp - 0x88]
test byte [eax + 9], 4
setne dl
mov eax, dword [ebp - 0x28]
call fcn.004b6220
mov eax, dword [ebp - 0x74]
mov edx, dword [ebp - 0x28]
call fcn.00406be4
je case.0x4b71c2.140
push ebp
mov eax, dword [ebp - 0x88]
test byte [eax + 8], 0x80
setne al
push eax
mov eax, dword [ebp - 0x88]
test byte [eax + 9], 1
setne al
push eax
mov eax, dword [ebp - 0x88]
test byte [eax + 8], 0x20
setne cl
mov eax, dword [ebp - 0x88]
test byte [eax + 9], 8
setne dl
mov eax, dword [ebp - 0x74]
call fcn.004b5cc0
pop ecx
test al, al
jne case.0x4b71c2.140
mov byte [ebp - 0x79], 0
jmp case.0x4b71c2.140
mov ecx, dword [ebp - 0x28]
mov edx, dword [ebp - 0x20]
mov eax, dword [ebp - 0x24]
call fcn.00480948
jmp case.0x4b71c2.140
mov eax, dword [ebp - 0x88]
test byte [eax + 8], 1
je 0x4b7420
mov edx, dword [ebp - 0x28]
mov eax, dword [ebp - 0x24]
call fcn.004807ec
test al, al
je case.0x4b71c2.140
mov edx, dword [ebp - 0x28]
mov eax, dword [ebp - 0x24]
call fcn.00480994
jmp case.0x4b71c2.140
lea ecx, [ebp - 0x98]
lea edx, [ebp - 0x91]
mov eax, dword [ebp - 0x88]
mov eax, dword [eax + 8]
call fcn.004b5714
mov ecx, dword [ebp - 0x70]
mov edx, dword [ebp - 0x98]
movzx eax, byte [ebp - 0x91]
call fcn.00481770
test eax, eax
je case.0x4b71c2.140
sub eax, 2
je case.0x4b71c2.140
mov byte [ebp - 0x79], 0
jmp case.0x4b71c2.140
lea ecx, [ebp - 0x98]
lea edx, [ebp - 0x91]
mov eax, dword [ebp - 0x88]
mov eax, dword [eax + 8]
call fcn.004b5714
push 0
push 2
lea eax, [ebp - 0x9c]
push eax
mov ecx, dword [ebp - 0x70]
mov edx, dword [ebp - 0x98]
movzx eax, byte [ebp - 0x91]
call fcn.004816b0
test eax, eax
jne case.0x4b71c2.140
push 2
push 0x508340
push 1
push 0
mov eax, dword [ebp - 0x6c]
push eax
mov eax, dword [ebp - 0x9c]
push eax
call sub.advapi32.dll_RegSetValueExW
test eax, eax
je 0x4b74de
mov byte [ebp - 0x79], 0
mov eax, dword [ebp - 0x9c]
push eax
call sub.advapi32.dll_RegCloseKey_1
jmp case.0x4b71c2.140
lea ecx, [ebp - 0x98]
lea edx, [ebp - 0x91]
mov eax, dword [ebp - 0x88]
mov eax, dword [eax + 8]
call fcn.004b5714
mov ecx, dword [ebp - 0x70]
mov edx, dword [ebp - 0x98]
movzx eax, byte [ebp - 0x91]
call fcn.004818f4
test eax, eax
je case.0x4b71c2.140
sub eax, 2
je case.0x4b71c2.140
sub eax, 0x8f
je case.0x4b71c2.140
mov byte [ebp - 0x79], 0
jmp case.0x4b71c2.140
lea ecx, [ebp - 0x98]
lea edx, [ebp - 0x91]
mov eax, dword [ebp - 0x88]
mov eax, dword [eax + 8]
call fcn.004b5714
push 0
push 3
lea eax, [ebp - 0x9c]
push eax
mov ecx, dword [ebp - 0x70]
mov edx, dword [ebp - 0x98]
movzx eax, byte [ebp - 0x91]
call fcn.004816b0
test eax, eax
jne case.0x4b71c2.140
mov edx, dword [ebp - 0x6c]
mov eax, dword [ebp - 0x9c]
call fcn.004815f0
test al, al
je 0x4b75af
mov eax, dword [ebp - 0x6c]
push eax
mov eax, dword [ebp - 0x9c]
push eax
call sub.advapi32.dll_RegDeleteValueW
test eax, eax
je 0x4b75af
mov byte [ebp - 0x79], 0
mov eax, dword [ebp - 0x9c]
push eax
call sub.advapi32.dll_RegCloseKey_1
jmp case.0x4b71c2.140
mov eax, dword [ebp - 0x88]
test byte [eax + 8], 1
setne dl
mov eax, dword [ebp - 0x28]
call fcn.004b6220
jmp case.0x4b71c2.140
mov byte [ebp - 0x7a], 1
jmp case.0x4b71c2.140
lea eax, [ebp - 0xe0]
push eax
movzx eax, si
mov dword [ebp - 0xb4], eax
mov byte [ebp - 0xb0], 0
lea edx, [ebp - 0xb4]
xor ecx, ecx
mov eax, 0x4b7b84
call fcn.0040ec08
mov edx, dword [ebp - 0xe0]
lea ecx, [ebp - 0xdc]
mov al, 0xc2
call fcn.00484118
mov ecx, dword [ebp - 0xdc]
mov dl, 1
mov eax, dword [0x40b4ac]
call fcn.004122e0
call fcn.00404a74
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x4b7660
mov edx, dword [ebp - 0x88]
mov eax, dword [ebp - 0x30]
call fcn.004b59ac
mov dword [ebp - 0x88], eax
mov eax, dword [ebp - 0x30]
mov ecx, dword [eax + 0xc]
mov edx, dword [ebp - 0x84]
mov eax, dword [ebp - 0x30]
mov ebx, dword [eax]
call dword [ebx + 8]
cmp dword [ebp - 0x88], 0
jne 0x4b712e
cmp byte [ebp - 0x7a], 0
je 0x4b76ab
push 0
push 0
push 0
push 0x8000000
call sub.shell32.dll_SHChangeNotify
mov eax, dword [ebp - 0x30]
test byte [eax + 0x1d], 0x10
je 0x4b76b9
call fcn.0048879c
cmp dword [ebp - 0x78], 0
je 0x4b76c9
call dword [ebp - 0x78]
push ebp
call fcn.004b6934
pop ecx
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
push 0x4b7777
mov eax, dword [ebp - 0x48]
call fcn.00404098
mov eax, dword [ebp - 0x34]
call fcn.00404098
mov eax, dword [ebp - 0x38]
call fcn.00404098
mov eax, dword [ebp - 0x3c]
mov esi, dword [eax + 8]
dec esi
test esi, esi
jl 0x4b774c
inc esi
xor ebx, ebx
lea ecx, [ebp - 0xe4]
mov edx, ebx
mov eax, dword [ebp - 0x3c]
call fcn.00488b40
mov eax, dword [ebp - 0xe4]
call fcn.004804f8
test al, al
je 0x4b7748
push 0
lea ecx, [ebp - 0xe8]
mov edx, ebx
mov eax, dword [ebp - 0x3c]
call fcn.00488b40
mov eax, dword [ebp - 0xe8]
call fcn.004064d4
push eax
push 0x1005
push 0x1000
call sub.shell32.dll_SHChangeNotify
inc ebx
dec esi
jne 0x4b76fc
mov eax, dword [ebp - 0x40]
call fcn.00404098
mov eax, dword [ebp - 0x44]
call fcn.00404098
mov eax, dword [ebp - 0x80]
call fcn.00404098
mov eax, dword [ebp - 0x3c]
call fcn.00404098
ret