Function at 0x4b672c
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 0x4b6735
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.004071dc
xor eax, eax
push ebp
push 0x4b74ea
push dword fs:[eax]
mov dword fs:[eax], esp
mov eax, 0x4b7508
call fcn.004b2580
lea eax, [ebp - 0xa4]
call fcn.0047f080
mov eax, dword [ebp - 0xa4]
call fcn.0040daa8
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 [0x4ad468]
call fcn.00404068
mov dword [ebp - 0x3c], eax
xor edx, edx
push ebp
push 0x4b747d
push dword fs:[edx]
mov dword fs:[edx], esp
mov dl, 1
mov eax, dword [0x4ad468]
call fcn.00404068
mov dword [ebp - 0x80], eax
mov dl, 1
mov eax, dword [0x4ad468]
call fcn.00404068
mov dword [ebp - 0x44], eax
mov dl, 1
mov eax, dword [0x4ad468]
call fcn.00404068
mov dword [ebp - 0x40], eax
mov dl, 1
mov eax, dword [0x4ad468]
call fcn.00404068
mov dword [ebp - 0x38], eax
mov dl, 1
mov eax, dword [0x4ad468]
call fcn.00404068
mov dword [ebp - 0x34], eax
cmp dword [ebp - 0x78], 0
je 0x4b6837
mov dl, 1
mov eax, dword [0x4ad468]
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 0x4b6bf0
mov eax, dword [ebp - 0x30]
mov eax, dword [eax + 8]
mov dword [ebp - 0x88], eax
cmp dword [ebp - 0x88], 0
je 0x4b6bf0
mov eax, dword [ebp - 0x88]
cmp word [eax + 0x10], 0x80
jne 0x4b6bd5
xor eax, eax
push ebp
push 0x4b6b82
push dword fs:[eax]
mov dword fs:[eax], esp
push ebp
mov eax, dword [ebp - 0x88]
call fcn.004b66d8
pop ecx
cmp dword [ebp - 0x1c], 0
je 0x4b68bb
mov edx, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x80]
call fcn.004b0a54
inc eax
jne 0x4b6b43
mov bl, 1
mov eax, dword [ebp - 0x88]
mov esi, dword [eax + 8]
test esi, 1
je 0x4b68d2
xor ebx, ebx
jmp 0x4b68dc
test esi, 2
je 0x4b68dc
mov bl, 2
mov dword [ebp - 0xa0], 1
test esi, 8
je 0x4b68fa
mov dword [ebp - 0xa0], 7
jmp 0x4b691e
test esi, 0x10
je 0x4b690e
mov dword [ebp - 0xa0], 3
jmp 0x4b691e
test esi, 0x40
je 0x4b691e
xor eax, eax
mov dword [ebp - 0xa0], eax
test esi, 4
jne 0x4b6a39
lea eax, [ebp - 0xa8]
mov ecx, dword [ebp - 0x28]
mov edx, 0x4b7560
call fcn.00406904
mov eax, dword [ebp - 0xa8]
call fcn.004b2580
cmp dword [ebp - 0x24], 0
je 0x4b696c
lea eax, [ebp - 0xac]
mov ecx, dword [ebp - 0x24]
mov edx, 0x4b759c
call fcn.00406904
mov eax, dword [ebp - 0xac]
call fcn.004b2580
mov eax, dword [ebp - 0x88]
test byte [eax + 8], 0x20
je 0x4b6995
mov eax, dword [ebp - 0x88]
test byte [eax + 9], 1
setne al
mov edx, dword [ebp - 0x28]
call fcn.004acfcc
test al, al
je 0x4b6a2a
mov eax, dword [ebp - 0x20]
push eax
push ebx
mov eax, dword [ebp - 0xa0]
push eax
push 0x4b5840
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.004af430
test al, al
jne 0x4b69f7
mov eax, dword [ebp - 0x90]
mov dword [ebp - 0xb4], eax
mov byte [ebp - 0xb0], 0
lea edx, [ebp - 0xb4]
xor ecx, ecx
mov eax, 0x4b75dc
call fcn.004b2804
mov byte [ebp - 0x79], 0
jmp 0x4b6b30
cmp bl, 1
jne 0x4b6b30
mov eax, dword [ebp - 0x90]
mov dword [ebp - 0xb4], eax
mov byte [ebp - 0xb0], 0
lea edx, [ebp - 0xb4]
xor ecx, ecx
mov eax, 0x4b7620
call fcn.004b2804
jmp 0x4b6b30
mov eax, 0x4b7658
call fcn.004b2580
jmp 0x4b6b30
lea eax, [ebp - 0xb8]
mov ecx, dword [ebp - 0x28]
mov edx, 0x4b76a0
call fcn.00406904
mov eax, dword [ebp - 0xb8]
call fcn.004b2580
cmp dword [ebp - 0x24], 0
je 0x4b6a7b
lea eax, [ebp - 0xbc]
mov ecx, dword [ebp - 0x24]
mov edx, 0x4b76e8
call fcn.00406904
mov eax, dword [ebp - 0xbc]
call fcn.004b2580
mov eax, dword [ebp - 0x88]
test byte [eax + 8], 0x20
je 0x4b6a97
mov eax, dword [ebp - 0x28]
call fcn.0047e4bc
test al, al
je 0x4b6b26
mov eax, dword [ebp - 0x88]
test byte [eax + 8], 0x80
jne 0x4b6aa5
xor ebx, ebx
mov eax, dword [ebp - 0x20]
push eax
push ebx
mov eax, dword [ebp - 0xa0]
push eax
push 0x4b5840
lea eax, [ebp - 0x90]
push eax
mov ecx, dword [ebp - 0x24]
mov edx, dword [ebp - 0x28]
mov eax, dword [ebp - 0x18]
call fcn.004af6fc
test al, al
jne 0x4b6afa
mov eax, dword [ebp - 0x90]
mov dword [ebp - 0xb4], eax
mov byte [ebp - 0xb0], 0
lea edx, [ebp - 0xb4]
xor ecx, ecx
mov eax, 0x4b7734
call fcn.004b2804
mov byte [ebp - 0x79], 0
jmp 0x4b6b30
cmp bl, 1
jne 0x4b6b30
mov eax, dword [ebp - 0x90]
mov dword [ebp - 0xb4], eax
mov byte [ebp - 0xb0], 0
lea edx, [ebp - 0xb4]
xor ecx, ecx
mov eax, 0x4b7620
call fcn.004b2804
jmp 0x4b6b30
mov eax, 0x4b7778
call fcn.004b2580
cmp dword [ebp - 0x1c], 0
je 0x4b6b78
mov edx, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x80]
call fcn.004b095c
jmp 0x4b6b78
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, 0x4b77d4
call fcn.004b2804
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x4b6bab
mov edx, dword [ebp - 0x88]
mov eax, dword [ebp - 0x30]
call fcn.004b56bc
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 0x4b6be3
mov eax, dword [ebp - 0x88]
mov eax, dword [eax]
mov dword [ebp - 0x88], eax
cmp dword [ebp - 0x88], 0
jne 0x4b6876
mov eax, dword [ebp - 0x30]
mov eax, dword [eax + 8]
mov dword [ebp - 0x88], eax
cmp dword [ebp - 0x88], 0
je 0x4b6e25
mov byte [ebp - 0x89], 0
mov eax, dword [ebp - 0x88]
cmp word [eax + 0x10], 0x82
jne 0x4b6dd7
mov byte [ebp - 0x89], 1
xor eax, eax
push ebp
push 0x4b6dae
push dword fs:[eax]
mov dword fs:[eax], esp
push ebp
mov eax, dword [ebp - 0x88]
call fcn.004b66d8
pop ecx
cmp byte [ebp - 0x29], 0
jne 0x4b6c5a
mov eax, dword [ebp - 0x88]
test byte [eax + 8], 1
jne 0x4b6d9d
cmp byte [ebp - 0x29], 0
jne 0x4b6c66
cmp dword [ebp - 0x24], 0
jne 0x4b6c6a
xor eax, eax
jmp 0x4b6c6c
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 0x4b6ca1
test esi, 0x400
setne dl
mov eax, dword [ebp - 0x28]
call fcn.004b5f30
mov byte [ebp - 0x8b], al
jmp 0x4b6ca8
mov byte [ebp - 0x8b], 0
test bl, bl
je 0x4b6cfa
cmp byte [ebp - 0x8b], 0
je 0x4b6da4
cmp byte [ebp - 0x8a], 0
jne 0x4b6cfa
mov eax, dword [ebp - 0x88]
test byte [eax + 9], 8
setne al
mov edx, dword [ebp - 0x28]
call fcn.004acfcc
test al, al
je 0x4b6cfa
mov eax, dword [ebp - 0x88]
test byte [eax + 9], 2
jne 0x4b6cfa
mov edx, dword [ebp - 0x28]
mov eax, dword [ebp - 0x30]
mov ecx, dword [eax]
call dword [ecx + 4]
test al, al
je 0x4b6da4
mov byte [ebp - 0x89], 0
cmp byte [ebp - 0x8a], 0
jne 0x4b6d4e
mov eax, dword [ebp - 0x88]
test byte [eax + 8], 0x10
je 0x4b6d2d
push ebp
mov eax, dword [ebp - 0x88]
test byte [eax + 9], 8
setne al
mov edx, dword [ebp - 0x28]
call fcn.004b6038
pop ecx
mov eax, dword [ebp - 0x88]
test byte [eax + 8], 0x40
je 0x4b6d4e
mov eax, dword [ebp - 0x88]
test byte [eax + 9], 8
setne al
mov edx, dword [ebp - 0x28]
call fcn.004b62c8
mov eax, dword [ebp - 0x88]
test byte [eax + 8], 4
je 0x4b6d87
mov eax, dword [ebp - 0x20]
mov dword [ebp - 0xb4], eax
mov byte [ebp - 0xb0], 0x11
lea edx, [ebp - 0xb4]
xor ecx, ecx
mov eax, 0x4b782c
call fcn.004b2804
mov edx, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x20]
call fcn.004b03c8
mov eax, dword [ebp - 0x88]
test byte [eax + 9], 0x10
je 0x4b6da4
mov eax, dword [ebp - 0x18]
call fcn.004b64dc
jmp 0x4b6da4
mov byte [ebp - 0x89], 0
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x4b6dd7
cmp byte [ebp - 0x89], 0
je 0x4b6e0a
mov edx, dword [ebp - 0x88]
mov eax, dword [ebp - 0x30]
call fcn.004b56bc
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 0x4b6e18
mov eax, dword [ebp - 0x88]
mov eax, dword [eax]
mov dword [ebp - 0x88], eax
cmp dword [ebp - 0x88], 0
jne 0x4b6c09
mov eax, dword [ebp - 0x30]
mov eax, dword [eax + 8]
mov dword [ebp - 0x88], eax
cmp dword [ebp - 0x88], 0
je 0x4b73a5
push ebp
mov eax, dword [ebp - 0x88]
call fcn.004b66d8
pop ecx
xor eax, eax
push ebp
push 0x4b7347
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 0x4b6ec4
je 0x4b7111
cmp eax, 0x81
jg 0x4b6ea6
je 0x4b6f37
dec eax
je 0x4b6ef5
add eax, 0xfffffff1
sub eax, 2
jb case.0x4b6ed2.140
sub eax, 0xe
je case.0x4b6ed2.140
sub eax, 0x60
je case.0x4b6ed2.140
jmp case.default.0x4b6ed2
sub eax, 0x82
je 0x4b6fe0
dec eax
je case.0x4b6ed2.140
dec eax
je 0x4b70fe
jmp case.default.0x4b6ed2
add eax, 0xffffff7a
cmp eax, 6
ja case.default.0x4b6ed2
jmp dword [eax*4 + 0x4b6ed9]
lea eax, [ebp - 0xd4]
mov ecx, dword [ebp - 0x28]
mov edx, 0x4b7868
call fcn.00406904
mov edx, dword [ebp - 0xd4]
lea ecx, [ebp - 0xd0]
mov al, 0xc2
call fcn.004ab530
mov ecx, dword [ebp - 0xd0]
mov dl, 1
mov eax, dword [0x40a8a0]
call fcn.004116d4
call fcn.00404a74
jmp case.0x4b6ed2.140
cmp byte [ebp - 0x29], 0
jne 0x4b6f4d
mov eax, dword [ebp - 0x88]
test byte [eax + 8], 1
jne case.0x4b6ed2.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 0x4b573c
push 0x4b5748
lea eax, [ebp - 0x48]
push eax
test bl, 2
setne cl
test bl, 0x20
setne al
mov edx, dword [ebp - 0x28]
call fcn.004ae400
test al, al
je case.0x4b6ed2.140
mov eax, dword [ebp - 0x88]
test byte [eax + 8], 2
je case.0x4b6ed2.140
mov eax, dword [ebp - 0x88]
test byte [eax + 8], 0x10
je case.0x4b6ed2.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.0047e0ac
mov edx, dword [ebp - 0xd8]
mov eax, dword [ebp - 0x3c]
call fcn.004b09b0
jmp case.0x4b6ed2.140
lea eax, [ebp - 0x74]
mov edx, dword [ebp - 0x24]
call fcn.0040649c
cmp byte [ebp - 0x29], 0
jne 0x4b6ff7
cmp dword [ebp - 0x74], 0
jne 0x4b7002
lea eax, [ebp - 0x74]
mov edx, dword [ebp - 0x28]
call fcn.0040649c
cmp byte [ebp - 0x29], 0
jne 0x4b7014
mov eax, dword [ebp - 0x88]
test byte [eax + 8], 1
jne 0x4b707b
cmp byte [ebp - 0x29], 0
jne 0x4b702a
mov eax, dword [ebp - 0x88]
test byte [eax + 8], 2
jne case.0x4b6ed2.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.004b59d0
pop ecx
test al, al
jne case.0x4b6ed2.140
mov byte [ebp - 0x79], 0
jmp case.0x4b6ed2.140
mov eax, dword [ebp - 0x88]
test byte [eax + 8], 8
je 0x4b709c
mov eax, dword [ebp - 0x88]
test byte [eax + 9], 4
setne dl
mov eax, dword [ebp - 0x28]
call fcn.004b5f30
mov eax, dword [ebp - 0x74]
mov edx, dword [ebp - 0x28]
call fcn.00406bd4
je case.0x4b6ed2.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.004b59d0
pop ecx
test al, al
jne case.0x4b6ed2.140
mov byte [ebp - 0x79], 0
jmp case.0x4b6ed2.140
mov ecx, dword [ebp - 0x28]
mov edx, dword [ebp - 0x20]
mov eax, dword [ebp - 0x24]
call fcn.0047e8f8
jmp case.0x4b6ed2.140
mov eax, dword [ebp - 0x88]
test byte [eax + 8], 1
je 0x4b7130
mov edx, dword [ebp - 0x28]
mov eax, dword [ebp - 0x24]
call fcn.0047e79c
test al, al
je case.0x4b6ed2.140
mov edx, dword [ebp - 0x28]
mov eax, dword [ebp - 0x24]
call fcn.0047e944
jmp case.0x4b6ed2.140
lea ecx, [ebp - 0x98]
lea edx, [ebp - 0x91]
mov eax, dword [ebp - 0x88]
mov eax, dword [eax + 8]
call fcn.004b5424
mov ecx, dword [ebp - 0x70]
mov edx, dword [ebp - 0x98]
movzx eax, byte [ebp - 0x91]
call fcn.0047f720
test eax, eax
je case.0x4b6ed2.140
sub eax, 2
je case.0x4b6ed2.140
mov byte [ebp - 0x79], 0
jmp case.0x4b6ed2.140
lea ecx, [ebp - 0x98]
lea edx, [ebp - 0x91]
mov eax, dword [ebp - 0x88]
mov eax, dword [eax + 8]
call fcn.004b5424
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.0047f660
test eax, eax
jne case.0x4b6ed2.140
push 2
push 0x5032b0
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 0x4b71ee
mov byte [ebp - 0x79], 0
mov eax, dword [ebp - 0x9c]
push eax
call sub.advapi32.dll_RegCloseKey_1
jmp case.0x4b6ed2.140
lea ecx, [ebp - 0x98]
lea edx, [ebp - 0x91]
mov eax, dword [ebp - 0x88]
mov eax, dword [eax + 8]
call fcn.004b5424
mov ecx, dword [ebp - 0x70]
mov edx, dword [ebp - 0x98]
movzx eax, byte [ebp - 0x91]
call fcn.0047f8a4
test eax, eax
je case.0x4b6ed2.140
sub eax, 2
je case.0x4b6ed2.140
sub eax, 0x8f
je case.0x4b6ed2.140
mov byte [ebp - 0x79], 0
jmp case.0x4b6ed2.140
lea ecx, [ebp - 0x98]
lea edx, [ebp - 0x91]
mov eax, dword [ebp - 0x88]
mov eax, dword [eax + 8]
call fcn.004b5424
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.0047f660
test eax, eax
jne case.0x4b6ed2.140
mov edx, dword [ebp - 0x6c]
mov eax, dword [ebp - 0x9c]
call fcn.0047f5a0
test al, al
je 0x4b72bf
mov eax, dword [ebp - 0x6c]
push eax
mov eax, dword [ebp - 0x9c]
push eax
call sub.advapi32.dll_RegDeleteValueW
test eax, eax
je 0x4b72bf
mov byte [ebp - 0x79], 0
mov eax, dword [ebp - 0x9c]
push eax
call sub.advapi32.dll_RegCloseKey_1
jmp case.0x4b6ed2.140
mov eax, dword [ebp - 0x88]
test byte [eax + 8], 1
setne dl
mov eax, dword [ebp - 0x28]
call fcn.004b5f30
jmp case.0x4b6ed2.140
mov byte [ebp - 0x7a], 1
jmp case.0x4b6ed2.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, 0x4b7894
call fcn.0040dffc
mov edx, dword [ebp - 0xe0]
lea ecx, [ebp - 0xdc]
mov al, 0xc2
call fcn.004ab530
mov ecx, dword [ebp - 0xdc]
mov dl, 1
mov eax, dword [0x40a8a0]
call fcn.004116d4
call fcn.00404a74
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x4b7370
mov edx, dword [ebp - 0x88]
mov eax, dword [ebp - 0x30]
call fcn.004b56bc
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 0x4b6e3e
cmp byte [ebp - 0x7a], 0
je 0x4b73bb
push 0
push 0
push 0
push 0x8000000
call sub.shell32.dll_SHChangeNotify
mov eax, dword [ebp - 0x30]
test byte [eax + 0x1d], 0x10
je 0x4b73c9
call fcn.004b0694
cmp dword [ebp - 0x78], 0
je 0x4b73d9
call dword [ebp - 0x78]
push ebp
call fcn.004b6644
pop ecx
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
push 0x4b7487
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 0x4b745c
inc esi
xor ebx, ebx
lea ecx, [ebp - 0xe4]
mov edx, ebx
mov eax, dword [ebp - 0x3c]
call fcn.004b0a38
mov eax, dword [ebp - 0xe4]
call fcn.0047e4a8
test al, al
je 0x4b7458
push 0
lea ecx, [ebp - 0xe8]
mov edx, ebx
mov eax, dword [ebp - 0x3c]
call fcn.004b0a38
mov eax, dword [ebp - 0xe8]
call fcn.004064d4
push eax
push 0x1005
push 0x1000
call sub.shell32.dll_SHChangeNotify
inc ebx
dec esi
jne 0x4b740c
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