Function at 0x4b729c
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 0x4b72a5
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 0x4b805a
push dword fs:[eax]
mov dword fs:[eax], esp
mov eax, 0x4b8078
call fcn.004b30f0
lea eax, [ebp - 0xa4]
call fcn.0047f91c
mov eax, dword [ebp - 0xa4]
call fcn.0040dd74
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 [0x4adf9c]
call fcn.00404068
mov dword [ebp - 0x3c], eax
xor edx, edx
push ebp
push 0x4b7fed
push dword fs:[edx]
mov dword fs:[edx], esp
mov dl, 1
mov eax, dword [0x4adf9c]
call fcn.00404068
mov dword [ebp - 0x80], eax
mov dl, 1
mov eax, dword [0x4adf9c]
call fcn.00404068
mov dword [ebp - 0x44], eax
mov dl, 1
mov eax, dword [0x4adf9c]
call fcn.00404068
mov dword [ebp - 0x40], eax
mov dl, 1
mov eax, dword [0x4adf9c]
call fcn.00404068
mov dword [ebp - 0x38], eax
mov dl, 1
mov eax, dword [0x4adf9c]
call fcn.00404068
mov dword [ebp - 0x34], eax
cmp dword [ebp - 0x78], 0
je 0x4b73a7
mov dl, 1
mov eax, dword [0x4adf9c]
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 0x4b7760
mov eax, dword [ebp - 0x30]
mov eax, dword [eax + 8]
mov dword [ebp - 0x88], eax
cmp dword [ebp - 0x88], 0
je 0x4b7760
mov eax, dword [ebp - 0x88]
cmp word [eax + 0x10], 0x80
jne 0x4b7745
xor eax, eax
push ebp
push 0x4b76f2
push dword fs:[eax]
mov dword fs:[eax], esp
push ebp
mov eax, dword [ebp - 0x88]
call fcn.004b7248
pop ecx
cmp dword [ebp - 0x1c], 0
je 0x4b742b
mov edx, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x80]
call fcn.004b15bc
inc eax
jne 0x4b76b3
mov bl, 1
mov eax, dword [ebp - 0x88]
mov esi, dword [eax + 8]
test esi, 1
je 0x4b7442
xor ebx, ebx
jmp 0x4b744c
test esi, 2
je 0x4b744c
mov bl, 2
mov dword [ebp - 0xa0], 1
test esi, 8
je 0x4b746a
mov dword [ebp - 0xa0], 7
jmp 0x4b748e
test esi, 0x10
je 0x4b747e
mov dword [ebp - 0xa0], 3
jmp 0x4b748e
test esi, 0x40
je 0x4b748e
xor eax, eax
mov dword [ebp - 0xa0], eax
test esi, 4
jne 0x4b75a9
lea eax, [ebp - 0xa8]
mov ecx, dword [ebp - 0x28]
mov edx, 0x4b80d0
call fcn.00406914
mov eax, dword [ebp - 0xa8]
call fcn.004b30f0
cmp dword [ebp - 0x24], 0
je 0x4b74dc
lea eax, [ebp - 0xac]
mov ecx, dword [ebp - 0x24]
mov edx, 0x4b810c
call fcn.00406914
mov eax, dword [ebp - 0xac]
call fcn.004b30f0
mov eax, dword [ebp - 0x88]
test byte [eax + 8], 0x20
je 0x4b7505
mov eax, dword [ebp - 0x88]
test byte [eax + 9], 1
setne al
mov edx, dword [ebp - 0x28]
call fcn.004adb00
test al, al
je 0x4b759a
mov eax, dword [ebp - 0x20]
push eax
push ebx
mov eax, dword [ebp - 0xa0]
push eax
push 0x4b63b0
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.004aff64
test al, al
jne 0x4b7567
mov eax, dword [ebp - 0x90]
mov dword [ebp - 0xb4], eax
mov byte [ebp - 0xb0], 0
lea edx, [ebp - 0xb4]
xor ecx, ecx
mov eax, 0x4b814c
call fcn.004b3374
mov byte [ebp - 0x79], 0
jmp 0x4b76a0
cmp bl, 1
jne 0x4b76a0
mov eax, dword [ebp - 0x90]
mov dword [ebp - 0xb4], eax
mov byte [ebp - 0xb0], 0
lea edx, [ebp - 0xb4]
xor ecx, ecx
mov eax, 0x4b8190
call fcn.004b3374
jmp 0x4b76a0
mov eax, 0x4b81c8
call fcn.004b30f0
jmp 0x4b76a0
lea eax, [ebp - 0xb8]
mov ecx, dword [ebp - 0x28]
mov edx, 0x4b8210
call fcn.00406914
mov eax, dword [ebp - 0xb8]
call fcn.004b30f0
cmp dword [ebp - 0x24], 0
je 0x4b75eb
lea eax, [ebp - 0xbc]
mov ecx, dword [ebp - 0x24]
mov edx, 0x4b8258
call fcn.00406914
mov eax, dword [ebp - 0xbc]
call fcn.004b30f0
mov eax, dword [ebp - 0x88]
test byte [eax + 8], 0x20
je 0x4b7607
mov eax, dword [ebp - 0x28]
call fcn.0047ed58
test al, al
je 0x4b7696
mov eax, dword [ebp - 0x88]
test byte [eax + 8], 0x80
jne 0x4b7615
xor ebx, ebx
mov eax, dword [ebp - 0x20]
push eax
push ebx
mov eax, dword [ebp - 0xa0]
push eax
push 0x4b63b0
lea eax, [ebp - 0x90]
push eax
mov ecx, dword [ebp - 0x24]
mov edx, dword [ebp - 0x28]
mov eax, dword [ebp - 0x18]
call fcn.004b0230
test al, al
jne 0x4b766a
mov eax, dword [ebp - 0x90]
mov dword [ebp - 0xb4], eax
mov byte [ebp - 0xb0], 0
lea edx, [ebp - 0xb4]
xor ecx, ecx
mov eax, 0x4b82a4
call fcn.004b3374
mov byte [ebp - 0x79], 0
jmp 0x4b76a0
cmp bl, 1
jne 0x4b76a0
mov eax, dword [ebp - 0x90]
mov dword [ebp - 0xb4], eax
mov byte [ebp - 0xb0], 0
lea edx, [ebp - 0xb4]
xor ecx, ecx
mov eax, 0x4b8190
call fcn.004b3374
jmp 0x4b76a0
mov eax, 0x4b82e8
call fcn.004b30f0
cmp dword [ebp - 0x1c], 0
je 0x4b76e8
mov edx, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x80]
call fcn.004b14c4
jmp 0x4b76e8
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, 0x4b8344
call fcn.004b3374
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x4b771b
mov edx, dword [ebp - 0x88]
mov eax, dword [ebp - 0x30]
call fcn.004b622c
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 0x4b7753
mov eax, dword [ebp - 0x88]
mov eax, dword [eax]
mov dword [ebp - 0x88], eax
cmp dword [ebp - 0x88], 0
jne 0x4b73e6
mov eax, dword [ebp - 0x30]
mov eax, dword [eax + 8]
mov dword [ebp - 0x88], eax
cmp dword [ebp - 0x88], 0
je 0x4b7995
mov byte [ebp - 0x89], 0
mov eax, dword [ebp - 0x88]
cmp word [eax + 0x10], 0x82
jne 0x4b7947
mov byte [ebp - 0x89], 1
xor eax, eax
push ebp
push 0x4b791e
push dword fs:[eax]
mov dword fs:[eax], esp
push ebp
mov eax, dword [ebp - 0x88]
call fcn.004b7248
pop ecx
cmp byte [ebp - 0x29], 0
jne 0x4b77ca
mov eax, dword [ebp - 0x88]
test byte [eax + 8], 1
jne 0x4b790d
cmp byte [ebp - 0x29], 0
jne 0x4b77d6
cmp dword [ebp - 0x24], 0
jne 0x4b77da
xor eax, eax
jmp 0x4b77dc
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 0x4b7811
test esi, 0x400
setne dl
mov eax, dword [ebp - 0x28]
call fcn.004b6aa0
mov byte [ebp - 0x8b], al
jmp 0x4b7818
mov byte [ebp - 0x8b], 0
test bl, bl
je 0x4b786a
cmp byte [ebp - 0x8b], 0
je 0x4b7914
cmp byte [ebp - 0x8a], 0
jne 0x4b786a
mov eax, dword [ebp - 0x88]
test byte [eax + 9], 8
setne al
mov edx, dword [ebp - 0x28]
call fcn.004adb00
test al, al
je 0x4b786a
mov eax, dword [ebp - 0x88]
test byte [eax + 9], 2
jne 0x4b786a
mov edx, dword [ebp - 0x28]
mov eax, dword [ebp - 0x30]
mov ecx, dword [eax]
call dword [ecx + 4]
test al, al
je 0x4b7914
mov byte [ebp - 0x89], 0
cmp byte [ebp - 0x8a], 0
jne 0x4b78be
mov eax, dword [ebp - 0x88]
test byte [eax + 8], 0x10
je 0x4b789d
push ebp
mov eax, dword [ebp - 0x88]
test byte [eax + 9], 8
setne al
mov edx, dword [ebp - 0x28]
call fcn.004b6ba8
pop ecx
mov eax, dword [ebp - 0x88]
test byte [eax + 8], 0x40
je 0x4b78be
mov eax, dword [ebp - 0x88]
test byte [eax + 9], 8
setne al
mov edx, dword [ebp - 0x28]
call fcn.004b6e38
mov eax, dword [ebp - 0x88]
test byte [eax + 8], 4
je 0x4b78f7
mov eax, dword [ebp - 0x20]
mov dword [ebp - 0xb4], eax
mov byte [ebp - 0xb0], 0x11
lea edx, [ebp - 0xb4]
xor ecx, ecx
mov eax, 0x4b839c
call fcn.004b3374
mov edx, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x20]
call fcn.004b0f30
mov eax, dword [ebp - 0x88]
test byte [eax + 9], 0x10
je 0x4b7914
mov eax, dword [ebp - 0x18]
call fcn.004b704c
jmp 0x4b7914
mov byte [ebp - 0x89], 0
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x4b7947
cmp byte [ebp - 0x89], 0
je 0x4b797a
mov edx, dword [ebp - 0x88]
mov eax, dword [ebp - 0x30]
call fcn.004b622c
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 0x4b7988
mov eax, dword [ebp - 0x88]
mov eax, dword [eax]
mov dword [ebp - 0x88], eax
cmp dword [ebp - 0x88], 0
jne 0x4b7779
mov eax, dword [ebp - 0x30]
mov eax, dword [eax + 8]
mov dword [ebp - 0x88], eax
cmp dword [ebp - 0x88], 0
je 0x4b7f15
push ebp
mov eax, dword [ebp - 0x88]
call fcn.004b7248
pop ecx
xor eax, eax
push ebp
push 0x4b7eb7
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 0x4b7a34
je 0x4b7c81
cmp eax, 0x81
jg 0x4b7a16
je 0x4b7aa7
dec eax
je 0x4b7a65
add eax, 0xfffffff1
sub eax, 2
jb case.0x4b7a42.140
sub eax, 0xe
je case.0x4b7a42.140
sub eax, 0x60
je case.0x4b7a42.140
jmp case.default.0x4b7a42
sub eax, 0x82
je 0x4b7b50
dec eax
je case.0x4b7a42.140
dec eax
je 0x4b7c6e
jmp case.default.0x4b7a42
add eax, 0xffffff7a
cmp eax, 6
ja case.default.0x4b7a42
jmp dword [eax*4 + 0x4b7a49]
lea eax, [ebp - 0xd4]
mov ecx, dword [ebp - 0x28]
mov edx, 0x4b83d8
call fcn.00406914
mov edx, dword [ebp - 0xd4]
lea ecx, [ebp - 0xd0]
mov al, 0xc2
call fcn.004ac064
mov ecx, dword [ebp - 0xd0]
mov dl, 1
mov eax, dword [0x40ab6c]
call fcn.004119a0
call fcn.00404a74
jmp case.0x4b7a42.140
cmp byte [ebp - 0x29], 0
jne 0x4b7abd
mov eax, dword [ebp - 0x88]
test byte [eax + 8], 1
jne case.0x4b7a42.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 0x4b62ac
push 0x4b62b8
lea eax, [ebp - 0x48]
push eax
test bl, 2
setne cl
test bl, 0x20
setne al
mov edx, dword [ebp - 0x28]
call fcn.004aef34
test al, al
je case.0x4b7a42.140
mov eax, dword [ebp - 0x88]
test byte [eax + 8], 2
je case.0x4b7a42.140
mov eax, dword [ebp - 0x88]
test byte [eax + 8], 0x10
je case.0x4b7a42.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.0047e948
mov edx, dword [ebp - 0xd8]
mov eax, dword [ebp - 0x3c]
call fcn.004b1518
jmp case.0x4b7a42.140
lea eax, [ebp - 0x74]
mov edx, dword [ebp - 0x24]
call fcn.0040649c
cmp byte [ebp - 0x29], 0
jne 0x4b7b67
cmp dword [ebp - 0x74], 0
jne 0x4b7b72
lea eax, [ebp - 0x74]
mov edx, dword [ebp - 0x28]
call fcn.0040649c
cmp byte [ebp - 0x29], 0
jne 0x4b7b84
mov eax, dword [ebp - 0x88]
test byte [eax + 8], 1
jne 0x4b7beb
cmp byte [ebp - 0x29], 0
jne 0x4b7b9a
mov eax, dword [ebp - 0x88]
test byte [eax + 8], 2
jne case.0x4b7a42.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.004b6540
pop ecx
test al, al
jne case.0x4b7a42.140
mov byte [ebp - 0x79], 0
jmp case.0x4b7a42.140
mov eax, dword [ebp - 0x88]
test byte [eax + 8], 8
je 0x4b7c0c
mov eax, dword [ebp - 0x88]
test byte [eax + 9], 4
setne dl
mov eax, dword [ebp - 0x28]
call fcn.004b6aa0
mov eax, dword [ebp - 0x74]
mov edx, dword [ebp - 0x28]
call fcn.00406be4
je case.0x4b7a42.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.004b6540
pop ecx
test al, al
jne case.0x4b7a42.140
mov byte [ebp - 0x79], 0
jmp case.0x4b7a42.140
mov ecx, dword [ebp - 0x28]
mov edx, dword [ebp - 0x20]
mov eax, dword [ebp - 0x24]
call fcn.0047f194
jmp case.0x4b7a42.140
mov eax, dword [ebp - 0x88]
test byte [eax + 8], 1
je 0x4b7ca0
mov edx, dword [ebp - 0x28]
mov eax, dword [ebp - 0x24]
call fcn.0047f038
test al, al
je case.0x4b7a42.140
mov edx, dword [ebp - 0x28]
mov eax, dword [ebp - 0x24]
call fcn.0047f1e0
jmp case.0x4b7a42.140
lea ecx, [ebp - 0x98]
lea edx, [ebp - 0x91]
mov eax, dword [ebp - 0x88]
mov eax, dword [eax + 8]
call fcn.004b5f94
mov ecx, dword [ebp - 0x70]
mov edx, dword [ebp - 0x98]
movzx eax, byte [ebp - 0x91]
call fcn.0047ffbc
test eax, eax
je case.0x4b7a42.140
sub eax, 2
je case.0x4b7a42.140
mov byte [ebp - 0x79], 0
jmp case.0x4b7a42.140
lea ecx, [ebp - 0x98]
lea edx, [ebp - 0x91]
mov eax, dword [ebp - 0x88]
mov eax, dword [eax + 8]
call fcn.004b5f94
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.0047fefc
test eax, eax
jne case.0x4b7a42.140
push 2
push 0x5053a8
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 0x4b7d5e
mov byte [ebp - 0x79], 0
mov eax, dword [ebp - 0x9c]
push eax
call sub.advapi32.dll_RegCloseKey_1
jmp case.0x4b7a42.140
lea ecx, [ebp - 0x98]
lea edx, [ebp - 0x91]
mov eax, dword [ebp - 0x88]
mov eax, dword [eax + 8]
call fcn.004b5f94
mov ecx, dword [ebp - 0x70]
mov edx, dword [ebp - 0x98]
movzx eax, byte [ebp - 0x91]
call fcn.00480140
test eax, eax
je case.0x4b7a42.140
sub eax, 2
je case.0x4b7a42.140
sub eax, 0x8f
je case.0x4b7a42.140
mov byte [ebp - 0x79], 0
jmp case.0x4b7a42.140
lea ecx, [ebp - 0x98]
lea edx, [ebp - 0x91]
mov eax, dword [ebp - 0x88]
mov eax, dword [eax + 8]
call fcn.004b5f94
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.0047fefc
test eax, eax
jne case.0x4b7a42.140
mov edx, dword [ebp - 0x6c]
mov eax, dword [ebp - 0x9c]
call fcn.0047fe3c
test al, al
je 0x4b7e2f
mov eax, dword [ebp - 0x6c]
push eax
mov eax, dword [ebp - 0x9c]
push eax
call sub.advapi32.dll_RegDeleteValueW
test eax, eax
je 0x4b7e2f
mov byte [ebp - 0x79], 0
mov eax, dword [ebp - 0x9c]
push eax
call sub.advapi32.dll_RegCloseKey_1
jmp case.0x4b7a42.140
mov eax, dword [ebp - 0x88]
test byte [eax + 8], 1
setne dl
mov eax, dword [ebp - 0x28]
call fcn.004b6aa0
jmp case.0x4b7a42.140
mov byte [ebp - 0x7a], 1
jmp case.0x4b7a42.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, 0x4b8404
call fcn.0040e2c8
mov edx, dword [ebp - 0xe0]
lea ecx, [ebp - 0xdc]
mov al, 0xc2
call fcn.004ac064
mov ecx, dword [ebp - 0xdc]
mov dl, 1
mov eax, dword [0x40ab6c]
call fcn.004119a0
call fcn.00404a74
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x4b7ee0
mov edx, dword [ebp - 0x88]
mov eax, dword [ebp - 0x30]
call fcn.004b622c
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 0x4b79ae
cmp byte [ebp - 0x7a], 0
je 0x4b7f2b
push 0
push 0
push 0
push 0x8000000
call sub.shell32.dll_SHChangeNotify
mov eax, dword [ebp - 0x30]
test byte [eax + 0x1d], 0x10
je 0x4b7f39
call fcn.004b11fc
cmp dword [ebp - 0x78], 0
je 0x4b7f49
call dword [ebp - 0x78]
push ebp
call fcn.004b71b4
pop ecx
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
push 0x4b7ff7
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 0x4b7fcc
inc esi
xor ebx, ebx
lea ecx, [ebp - 0xe4]
mov edx, ebx
mov eax, dword [ebp - 0x3c]
call fcn.004b15a0
mov eax, dword [ebp - 0xe4]
call fcn.0047ed44
test al, al
je 0x4b7fc8
push 0
lea ecx, [ebp - 0xe8]
mov edx, ebx
mov eax, dword [ebp - 0x3c]
call fcn.004b15a0
mov eax, dword [ebp - 0xe8]
call fcn.004064d4
push eax
push 0x1005
push 0x1000
call sub.shell32.dll_SHChangeNotify
inc ebx
dec esi
jne 0x4b7f7c
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