Function at 0x4bc9b8
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 0x4bc9c1
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 0x4bd776
push dword fs:[eax]
mov dword fs:[eax], esp
mov eax, 0x4bd794
call fcn.004b880c
lea eax, [ebp - 0xa4]
call fcn.00487240
mov eax, dword [ebp - 0xa4]
call fcn.00415708
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 [0x48b4d8]
call fcn.00404068
mov dword [ebp - 0x3c], eax
xor edx, edx
push ebp
push 0x4bd709
push dword fs:[edx]
mov dword fs:[edx], esp
mov dl, 1
mov eax, dword [0x48b4d8]
call fcn.00404068
mov dword [ebp - 0x80], eax
mov dl, 1
mov eax, dword [0x48b4d8]
call fcn.00404068
mov dword [ebp - 0x44], eax
mov dl, 1
mov eax, dword [0x48b4d8]
call fcn.00404068
mov dword [ebp - 0x40], eax
mov dl, 1
mov eax, dword [0x48b4d8]
call fcn.00404068
mov dword [ebp - 0x38], eax
mov dl, 1
mov eax, dword [0x48b4d8]
call fcn.00404068
mov dword [ebp - 0x34], eax
cmp dword [ebp - 0x78], 0
je 0x4bcac3
mov dl, 1
mov eax, dword [0x48b4d8]
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 0x4bce7c
mov eax, dword [ebp - 0x30]
mov eax, dword [eax + 8]
mov dword [ebp - 0x88], eax
cmp dword [ebp - 0x88], 0
je 0x4bce7c
mov eax, dword [ebp - 0x88]
cmp word [eax + 0x10], 0x80
jne 0x4bce61
xor eax, eax
push ebp
push 0x4bce0e
push dword fs:[eax]
mov dword fs:[eax], esp
push ebp
mov eax, dword [ebp - 0x88]
call fcn.004bc964
pop ecx
cmp dword [ebp - 0x1c], 0
je 0x4bcb47
mov edx, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x80]
call fcn.0048eaf8
inc eax
jne 0x4bcdcf
mov bl, 1
mov eax, dword [ebp - 0x88]
mov esi, dword [eax + 8]
test esi, 1
je 0x4bcb5e
xor ebx, ebx
jmp 0x4bcb68
test esi, 2
je 0x4bcb68
mov bl, 2
mov dword [ebp - 0xa0], 1
test esi, 8
je 0x4bcb86
mov dword [ebp - 0xa0], 7
jmp 0x4bcbaa
test esi, 0x10
je 0x4bcb9a
mov dword [ebp - 0xa0], 3
jmp 0x4bcbaa
test esi, 0x40
je 0x4bcbaa
xor eax, eax
mov dword [ebp - 0xa0], eax
test esi, 4
jne 0x4bccc5
lea eax, [ebp - 0xa8]
mov ecx, dword [ebp - 0x28]
mov edx, 0x4bd7ec
call fcn.00406914
mov eax, dword [ebp - 0xa8]
call fcn.004b880c
cmp dword [ebp - 0x24], 0
je 0x4bcbf8
lea eax, [ebp - 0xac]
mov ecx, dword [ebp - 0x24]
mov edx, 0x4bd828
call fcn.00406914
mov eax, dword [ebp - 0xac]
call fcn.004b880c
mov eax, dword [ebp - 0x88]
test byte [eax + 8], 0x20
je 0x4bcc21
mov eax, dword [ebp - 0x88]
test byte [eax + 9], 1
setne al
mov edx, dword [ebp - 0x28]
call fcn.0048b03c
test al, al
je 0x4bccb6
mov eax, dword [ebp - 0x20]
push eax
push ebx
mov eax, dword [ebp - 0xa0]
push eax
push 0x4bbacc
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.0048d4a0
test al, al
jne 0x4bcc83
mov eax, dword [ebp - 0x90]
mov dword [ebp - 0xb4], eax
mov byte [ebp - 0xb0], 0
lea edx, [ebp - 0xb4]
xor ecx, ecx
mov eax, 0x4bd868
call fcn.004b8a90
mov byte [ebp - 0x79], 0
jmp 0x4bcdbc
cmp bl, 1
jne 0x4bcdbc
mov eax, dword [ebp - 0x90]
mov dword [ebp - 0xb4], eax
mov byte [ebp - 0xb0], 0
lea edx, [ebp - 0xb4]
xor ecx, ecx
mov eax, 0x4bd8ac
call fcn.004b8a90
jmp 0x4bcdbc
mov eax, 0x4bd8e4
call fcn.004b880c
jmp 0x4bcdbc
lea eax, [ebp - 0xb8]
mov ecx, dword [ebp - 0x28]
mov edx, 0x4bd92c
call fcn.00406914
mov eax, dword [ebp - 0xb8]
call fcn.004b880c
cmp dword [ebp - 0x24], 0
je 0x4bcd07
lea eax, [ebp - 0xbc]
mov ecx, dword [ebp - 0x24]
mov edx, 0x4bd974
call fcn.00406914
mov eax, dword [ebp - 0xbc]
call fcn.004b880c
mov eax, dword [ebp - 0x88]
test byte [eax + 8], 0x20
je 0x4bcd23
mov eax, dword [ebp - 0x28]
call fcn.0048667c
test al, al
je 0x4bcdb2
mov eax, dword [ebp - 0x88]
test byte [eax + 8], 0x80
jne 0x4bcd31
xor ebx, ebx
mov eax, dword [ebp - 0x20]
push eax
push ebx
mov eax, dword [ebp - 0xa0]
push eax
push 0x4bbacc
lea eax, [ebp - 0x90]
push eax
mov ecx, dword [ebp - 0x24]
mov edx, dword [ebp - 0x28]
mov eax, dword [ebp - 0x18]
call fcn.0048d76c
test al, al
jne 0x4bcd86
mov eax, dword [ebp - 0x90]
mov dword [ebp - 0xb4], eax
mov byte [ebp - 0xb0], 0
lea edx, [ebp - 0xb4]
xor ecx, ecx
mov eax, 0x4bd9c0
call fcn.004b8a90
mov byte [ebp - 0x79], 0
jmp 0x4bcdbc
cmp bl, 1
jne 0x4bcdbc
mov eax, dword [ebp - 0x90]
mov dword [ebp - 0xb4], eax
mov byte [ebp - 0xb0], 0
lea edx, [ebp - 0xb4]
xor ecx, ecx
mov eax, 0x4bd8ac
call fcn.004b8a90
jmp 0x4bcdbc
mov eax, 0x4bda04
call fcn.004b880c
cmp dword [ebp - 0x1c], 0
je 0x4bce04
mov edx, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x80]
call fcn.0048ea00
jmp 0x4bce04
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, 0x4bda60
call fcn.004b8a90
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x4bce37
mov edx, dword [ebp - 0x88]
mov eax, dword [ebp - 0x30]
call fcn.004bb948
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 0x4bce6f
mov eax, dword [ebp - 0x88]
mov eax, dword [eax]
mov dword [ebp - 0x88], eax
cmp dword [ebp - 0x88], 0
jne 0x4bcb02
mov eax, dword [ebp - 0x30]
mov eax, dword [eax + 8]
mov dword [ebp - 0x88], eax
cmp dword [ebp - 0x88], 0
je 0x4bd0b1
mov byte [ebp - 0x89], 0
mov eax, dword [ebp - 0x88]
cmp word [eax + 0x10], 0x82
jne 0x4bd063
mov byte [ebp - 0x89], 1
xor eax, eax
push ebp
push 0x4bd03a
push dword fs:[eax]
mov dword fs:[eax], esp
push ebp
mov eax, dword [ebp - 0x88]
call fcn.004bc964
pop ecx
cmp byte [ebp - 0x29], 0
jne 0x4bcee6
mov eax, dword [ebp - 0x88]
test byte [eax + 8], 1
jne 0x4bd029
cmp byte [ebp - 0x29], 0
jne 0x4bcef2
cmp dword [ebp - 0x24], 0
jne 0x4bcef6
xor eax, eax
jmp 0x4bcef8
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 0x4bcf2d
test esi, 0x400
setne dl
mov eax, dword [ebp - 0x28]
call fcn.004bc1bc
mov byte [ebp - 0x8b], al
jmp 0x4bcf34
mov byte [ebp - 0x8b], 0
test bl, bl
je 0x4bcf86
cmp byte [ebp - 0x8b], 0
je 0x4bd030
cmp byte [ebp - 0x8a], 0
jne 0x4bcf86
mov eax, dword [ebp - 0x88]
test byte [eax + 9], 8
setne al
mov edx, dword [ebp - 0x28]
call fcn.0048b03c
test al, al
je 0x4bcf86
mov eax, dword [ebp - 0x88]
test byte [eax + 9], 2
jne 0x4bcf86
mov edx, dword [ebp - 0x28]
mov eax, dword [ebp - 0x30]
mov ecx, dword [eax]
call dword [ecx + 4]
test al, al
je 0x4bd030
mov byte [ebp - 0x89], 0
cmp byte [ebp - 0x8a], 0
jne 0x4bcfda
mov eax, dword [ebp - 0x88]
test byte [eax + 8], 0x10
je 0x4bcfb9
push ebp
mov eax, dword [ebp - 0x88]
test byte [eax + 9], 8
setne al
mov edx, dword [ebp - 0x28]
call fcn.004bc2c4
pop ecx
mov eax, dword [ebp - 0x88]
test byte [eax + 8], 0x40
je 0x4bcfda
mov eax, dword [ebp - 0x88]
test byte [eax + 9], 8
setne al
mov edx, dword [ebp - 0x28]
call fcn.004bc554
mov eax, dword [ebp - 0x88]
test byte [eax + 8], 4
je 0x4bd013
mov eax, dword [ebp - 0x20]
mov dword [ebp - 0xb4], eax
mov byte [ebp - 0xb0], 0x11
lea edx, [ebp - 0xb4]
xor ecx, ecx
mov eax, 0x4bdab8
call fcn.004b8a90
mov edx, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x20]
call fcn.0048e46c
mov eax, dword [ebp - 0x88]
test byte [eax + 9], 0x10
je 0x4bd030
mov eax, dword [ebp - 0x18]
call fcn.004bc768
jmp 0x4bd030
mov byte [ebp - 0x89], 0
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x4bd063
cmp byte [ebp - 0x89], 0
je 0x4bd096
mov edx, dword [ebp - 0x88]
mov eax, dword [ebp - 0x30]
call fcn.004bb948
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 0x4bd0a4
mov eax, dword [ebp - 0x88]
mov eax, dword [eax]
mov dword [ebp - 0x88], eax
cmp dword [ebp - 0x88], 0
jne 0x4bce95
mov eax, dword [ebp - 0x30]
mov eax, dword [eax + 8]
mov dword [ebp - 0x88], eax
cmp dword [ebp - 0x88], 0
je 0x4bd631
push ebp
mov eax, dword [ebp - 0x88]
call fcn.004bc964
pop ecx
xor eax, eax
push ebp
push 0x4bd5d3
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 0x4bd150
je 0x4bd39d
cmp eax, 0x81
jg 0x4bd132
je 0x4bd1c3
dec eax
je 0x4bd181
add eax, 0xfffffff1
sub eax, 2
jb case.0x4bd15e.140
sub eax, 0xe
je case.0x4bd15e.140
sub eax, 0x60
je case.0x4bd15e.140
jmp case.default.0x4bd15e
sub eax, 0x82
je 0x4bd26c
dec eax
je case.0x4bd15e.140
dec eax
je 0x4bd38a
jmp case.default.0x4bd15e
add eax, 0xffffff7a
cmp eax, 6
ja case.default.0x4bd15e
jmp dword [eax*4 + 0x4bd165]
lea eax, [ebp - 0xd4]
mov ecx, dword [ebp - 0x28]
mov edx, 0x4bdaf4
call fcn.00406914
mov edx, dword [ebp - 0xd4]
lea ecx, [ebp - 0xd0]
mov al, 0xc2
call fcn.0048a0b4
mov ecx, dword [ebp - 0xd0]
mov dl, 1
mov eax, dword [0x412500]
call fcn.00419334
call fcn.00404a74
jmp case.0x4bd15e.140
cmp byte [ebp - 0x29], 0
jne 0x4bd1d9
mov eax, dword [ebp - 0x88]
test byte [eax + 8], 1
jne case.0x4bd15e.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 0x4bb9c8
push 0x4bb9d4
lea eax, [ebp - 0x48]
push eax
test bl, 2
setne cl
test bl, 0x20
setne al
mov edx, dword [ebp - 0x28]
call fcn.0048c470
test al, al
je case.0x4bd15e.140
mov eax, dword [ebp - 0x88]
test byte [eax + 8], 2
je case.0x4bd15e.140
mov eax, dword [ebp - 0x88]
test byte [eax + 8], 0x10
je case.0x4bd15e.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.0048626c
mov edx, dword [ebp - 0xd8]
mov eax, dword [ebp - 0x3c]
call fcn.0048ea54
jmp case.0x4bd15e.140
lea eax, [ebp - 0x74]
mov edx, dword [ebp - 0x24]
call fcn.0040649c
cmp byte [ebp - 0x29], 0
jne 0x4bd283
cmp dword [ebp - 0x74], 0
jne 0x4bd28e
lea eax, [ebp - 0x74]
mov edx, dword [ebp - 0x28]
call fcn.0040649c
cmp byte [ebp - 0x29], 0
jne 0x4bd2a0
mov eax, dword [ebp - 0x88]
test byte [eax + 8], 1
jne 0x4bd307
cmp byte [ebp - 0x29], 0
jne 0x4bd2b6
mov eax, dword [ebp - 0x88]
test byte [eax + 8], 2
jne case.0x4bd15e.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.004bbc5c
pop ecx
test al, al
jne case.0x4bd15e.140
mov byte [ebp - 0x79], 0
jmp case.0x4bd15e.140
mov eax, dword [ebp - 0x88]
test byte [eax + 8], 8
je 0x4bd328
mov eax, dword [ebp - 0x88]
test byte [eax + 9], 4
setne dl
mov eax, dword [ebp - 0x28]
call fcn.004bc1bc
mov eax, dword [ebp - 0x74]
mov edx, dword [ebp - 0x28]
call fcn.00406be4
je case.0x4bd15e.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.004bbc5c
pop ecx
test al, al
jne case.0x4bd15e.140
mov byte [ebp - 0x79], 0
jmp case.0x4bd15e.140
mov ecx, dword [ebp - 0x28]
mov edx, dword [ebp - 0x20]
mov eax, dword [ebp - 0x24]
call fcn.00486ab8
jmp case.0x4bd15e.140
mov eax, dword [ebp - 0x88]
test byte [eax + 8], 1
je 0x4bd3bc
mov edx, dword [ebp - 0x28]
mov eax, dword [ebp - 0x24]
call fcn.0048695c
test al, al
je case.0x4bd15e.140
mov edx, dword [ebp - 0x28]
mov eax, dword [ebp - 0x24]
call fcn.00486b04
jmp case.0x4bd15e.140
lea ecx, [ebp - 0x98]
lea edx, [ebp - 0x91]
mov eax, dword [ebp - 0x88]
mov eax, dword [eax + 8]
call fcn.004bb6b0
mov ecx, dword [ebp - 0x70]
mov edx, dword [ebp - 0x98]
movzx eax, byte [ebp - 0x91]
call fcn.004878e0
test eax, eax
je case.0x4bd15e.140
sub eax, 2
je case.0x4bd15e.140
mov byte [ebp - 0x79], 0
jmp case.0x4bd15e.140
lea ecx, [ebp - 0x98]
lea edx, [ebp - 0x91]
mov eax, dword [ebp - 0x88]
mov eax, dword [eax + 8]
call fcn.004bb6b0
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.00487820
test eax, eax
jne case.0x4bd15e.140
push 2
push 0x526340
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 0x4bd47a
mov byte [ebp - 0x79], 0
mov eax, dword [ebp - 0x9c]
push eax
call sub.advapi32.dll_RegCloseKey_1
jmp case.0x4bd15e.140
lea ecx, [ebp - 0x98]
lea edx, [ebp - 0x91]
mov eax, dword [ebp - 0x88]
mov eax, dword [eax + 8]
call fcn.004bb6b0
mov ecx, dword [ebp - 0x70]
mov edx, dword [ebp - 0x98]
movzx eax, byte [ebp - 0x91]
call fcn.00487a64
test eax, eax
je case.0x4bd15e.140
sub eax, 2
je case.0x4bd15e.140
sub eax, 0x8f
je case.0x4bd15e.140
mov byte [ebp - 0x79], 0
jmp case.0x4bd15e.140
lea ecx, [ebp - 0x98]
lea edx, [ebp - 0x91]
mov eax, dword [ebp - 0x88]
mov eax, dword [eax + 8]
call fcn.004bb6b0
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.00487820
test eax, eax
jne case.0x4bd15e.140
mov edx, dword [ebp - 0x6c]
mov eax, dword [ebp - 0x9c]
call fcn.00487760
test al, al
je 0x4bd54b
mov eax, dword [ebp - 0x6c]
push eax
mov eax, dword [ebp - 0x9c]
push eax
call sub.advapi32.dll_RegDeleteValueW
test eax, eax
je 0x4bd54b
mov byte [ebp - 0x79], 0
mov eax, dword [ebp - 0x9c]
push eax
call sub.advapi32.dll_RegCloseKey_1
jmp case.0x4bd15e.140
mov eax, dword [ebp - 0x88]
test byte [eax + 8], 1
setne dl
mov eax, dword [ebp - 0x28]
call fcn.004bc1bc
jmp case.0x4bd15e.140
mov byte [ebp - 0x7a], 1
jmp case.0x4bd15e.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, 0x4bdb20
call fcn.00415c5c
mov edx, dword [ebp - 0xe0]
lea ecx, [ebp - 0xdc]
mov al, 0xc2
call fcn.0048a0b4
mov ecx, dword [ebp - 0xdc]
mov dl, 1
mov eax, dword [0x412500]
call fcn.00419334
call fcn.00404a74
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x4bd5fc
mov edx, dword [ebp - 0x88]
mov eax, dword [ebp - 0x30]
call fcn.004bb948
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 0x4bd0ca
cmp byte [ebp - 0x7a], 0
je 0x4bd647
push 0
push 0
push 0
push 0x8000000
call sub.shell32.dll_SHChangeNotify
mov eax, dword [ebp - 0x30]
test byte [eax + 0x1d], 0x10
je 0x4bd655
call fcn.0048e738
cmp dword [ebp - 0x78], 0
je 0x4bd665
call dword [ebp - 0x78]
push ebp
call fcn.004bc8d0
pop ecx
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
push 0x4bd713
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 0x4bd6e8
inc esi
xor ebx, ebx
lea ecx, [ebp - 0xe4]
mov edx, ebx
mov eax, dword [ebp - 0x3c]
call fcn.0048eadc
mov eax, dword [ebp - 0xe4]
call fcn.00486668
test al, al
je 0x4bd6e4
push 0
lea ecx, [ebp - 0xe8]
mov edx, ebx
mov eax, dword [ebp - 0x3c]
call fcn.0048eadc
mov eax, dword [ebp - 0xe8]
call fcn.004064d4
push eax
push 0x1005
push 0x1000
call sub.shell32.dll_SHChangeNotify
inc ebx
dec esi
jne 0x4bd698
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