Function at 0x61f5c4
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 0x61f5cd
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 [0x4012b8]
call fcn.0040a254
xor eax, eax
push ebp
push 0x620382
push dword fs:[eax]
mov dword fs:[eax], esp
mov eax, 0x6203a0
call fcn.006013d8
lea eax, [ebp - 0xa4]
call fcn.005b09c4
mov eax, dword [ebp - 0xa4]
call fcn.00421594
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 [0x5f8118]
call fcn.00406998
mov dword [ebp - 0x3c], eax
xor edx, edx
push ebp
push 0x620315
push dword fs:[edx]
mov dword fs:[edx], esp
mov dl, 1
mov eax, dword [0x5f8118]
call fcn.00406998
mov dword [ebp - 0x80], eax
mov dl, 1
mov eax, dword [0x5f8118]
call fcn.00406998
mov dword [ebp - 0x44], eax
mov dl, 1
mov eax, dword [0x5f8118]
call fcn.00406998
mov dword [ebp - 0x40], eax
mov dl, 1
mov eax, dword [0x5f8118]
call fcn.00406998
mov dword [ebp - 0x38], eax
mov dl, 1
mov eax, dword [0x5f8118]
call fcn.00406998
mov dword [ebp - 0x34], eax
cmp dword [ebp - 0x78], 0
je 0x61f6cf
mov dl, 1
mov eax, dword [0x5f8118]
call fcn.00406998
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 0x61fa88
mov eax, dword [ebp - 0x30]
mov eax, dword [eax + 8]
mov dword [ebp - 0x88], eax
cmp dword [ebp - 0x88], 0
je 0x61fa88
mov eax, dword [ebp - 0x88]
cmp word [eax + 0x10], 0x80
jne 0x61fa6d
xor eax, eax
push ebp
push 0x61fa1a
push dword fs:[eax]
mov dword fs:[eax], esp
push ebp
mov eax, dword [ebp - 0x88]
call fcn.0061f570
pop ecx
cmp dword [ebp - 0x1c], 0
je 0x61f753
mov edx, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x80]
call fcn.005fb9a0
inc eax
jne 0x61f9db
mov bl, 1
mov eax, dword [ebp - 0x88]
mov esi, dword [eax + 8]
test esi, 1
je 0x61f76a
xor ebx, ebx
jmp 0x61f774
test esi, 2
je 0x61f774
mov bl, 2
mov dword [ebp - 0xa0], 1
test esi, 8
je 0x61f792
mov dword [ebp - 0xa0], 7
jmp 0x61f7b6
test esi, 0x10
je 0x61f7a6
mov dword [ebp - 0xa0], 3
jmp 0x61f7b6
test esi, 0x40
je 0x61f7b6
xor eax, eax
mov dword [ebp - 0xa0], eax
test esi, 4
jne 0x61f8d1
lea eax, [ebp - 0xa8]
mov ecx, dword [ebp - 0x28]
mov edx, 0x6203f8
call fcn.00409a18
mov eax, dword [ebp - 0xa8]
call fcn.006013d8
cmp dword [ebp - 0x24], 0
je 0x61f804
lea eax, [ebp - 0xac]
mov ecx, dword [ebp - 0x24]
mov edx, 0x620434
call fcn.00409a18
mov eax, dword [ebp - 0xac]
call fcn.006013d8
mov eax, dword [ebp - 0x88]
test byte [eax + 8], 0x20
je 0x61f82d
mov eax, dword [ebp - 0x88]
test byte [eax + 9], 1
setne al
mov edx, dword [ebp - 0x28]
call fcn.005f7c50
test al, al
je 0x61f8c2
mov eax, dword [ebp - 0x20]
push eax
push ebx
mov eax, dword [ebp - 0xa0]
push eax
push 0x61e6e8
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.005fa33c
test al, al
jne 0x61f88f
mov eax, dword [ebp - 0x90]
mov dword [ebp - 0xb4], eax
mov byte [ebp - 0xb0], 0
lea edx, [ebp - 0xb4]
xor ecx, ecx
mov eax, 0x620474
call fcn.0060165c
mov byte [ebp - 0x79], 0
jmp 0x61f9c8
cmp bl, 1
jne 0x61f9c8
mov eax, dword [ebp - 0x90]
mov dword [ebp - 0xb4], eax
mov byte [ebp - 0xb0], 0
lea edx, [ebp - 0xb4]
xor ecx, ecx
mov eax, 0x6204b8
call fcn.0060165c
jmp 0x61f9c8
mov eax, 0x6204f0
call fcn.006013d8
jmp 0x61f9c8
lea eax, [ebp - 0xb8]
mov ecx, dword [ebp - 0x28]
mov edx, 0x620538
call fcn.00409a18
mov eax, dword [ebp - 0xb8]
call fcn.006013d8
cmp dword [ebp - 0x24], 0
je 0x61f913
lea eax, [ebp - 0xbc]
mov ecx, dword [ebp - 0x24]
mov edx, 0x620580
call fcn.00409a18
mov eax, dword [ebp - 0xbc]
call fcn.006013d8
mov eax, dword [ebp - 0x88]
test byte [eax + 8], 0x20
je 0x61f92f
mov eax, dword [ebp - 0x28]
call fcn.005afdfc
test al, al
je 0x61f9be
mov eax, dword [ebp - 0x88]
test byte [eax + 8], 0x80
jne 0x61f93d
xor ebx, ebx
mov eax, dword [ebp - 0x20]
push eax
push ebx
mov eax, dword [ebp - 0xa0]
push eax
push 0x61e6e8
lea eax, [ebp - 0x90]
push eax
mov ecx, dword [ebp - 0x24]
mov edx, dword [ebp - 0x28]
mov eax, dword [ebp - 0x18]
call fcn.005fa608
test al, al
jne 0x61f992
mov eax, dword [ebp - 0x90]
mov dword [ebp - 0xb4], eax
mov byte [ebp - 0xb0], 0
lea edx, [ebp - 0xb4]
xor ecx, ecx
mov eax, 0x6205cc
call fcn.0060165c
mov byte [ebp - 0x79], 0
jmp 0x61f9c8
cmp bl, 1
jne 0x61f9c8
mov eax, dword [ebp - 0x90]
mov dword [ebp - 0xb4], eax
mov byte [ebp - 0xb0], 0
lea edx, [ebp - 0xb4]
xor ecx, ecx
mov eax, 0x6204b8
call fcn.0060165c
jmp 0x61f9c8
mov eax, 0x620610
call fcn.006013d8
cmp dword [ebp - 0x1c], 0
je 0x61fa10
mov edx, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x80]
call fcn.005fb8ac
jmp 0x61fa10
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, 0x62066c
call fcn.0060165c
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x61fa43
mov edx, dword [ebp - 0x88]
mov eax, dword [ebp - 0x30]
call fcn.0061e568
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 0x61fa7b
mov eax, dword [ebp - 0x88]
mov eax, dword [eax]
mov dword [ebp - 0x88], eax
cmp dword [ebp - 0x88], 0
jne 0x61f70e
mov eax, dword [ebp - 0x30]
mov eax, dword [eax + 8]
mov dword [ebp - 0x88], eax
cmp dword [ebp - 0x88], 0
je 0x61fcbd
mov byte [ebp - 0x89], 0
mov eax, dword [ebp - 0x88]
cmp word [eax + 0x10], 0x82
jne 0x61fc6f
mov byte [ebp - 0x89], 1
xor eax, eax
push ebp
push 0x61fc46
push dword fs:[eax]
mov dword fs:[eax], esp
push ebp
mov eax, dword [ebp - 0x88]
call fcn.0061f570
pop ecx
cmp byte [ebp - 0x29], 0
jne 0x61faf2
mov eax, dword [ebp - 0x88]
test byte [eax + 8], 1
jne 0x61fc35
cmp byte [ebp - 0x29], 0
jne 0x61fafe
cmp dword [ebp - 0x24], 0
jne 0x61fb02
xor eax, eax
jmp 0x61fb04
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 0x61fb39
test esi, 0x400
setne dl
mov eax, dword [ebp - 0x28]
call fcn.0061edc8
mov byte [ebp - 0x8b], al
jmp 0x61fb40
mov byte [ebp - 0x8b], 0
test bl, bl
je 0x61fb92
cmp byte [ebp - 0x8b], 0
je 0x61fc3c
cmp byte [ebp - 0x8a], 0
jne 0x61fb92
mov eax, dword [ebp - 0x88]
test byte [eax + 9], 8
setne al
mov edx, dword [ebp - 0x28]
call fcn.005f7c50
test al, al
je 0x61fb92
mov eax, dword [ebp - 0x88]
test byte [eax + 9], 2
jne 0x61fb92
mov edx, dword [ebp - 0x28]
mov eax, dword [ebp - 0x30]
mov ecx, dword [eax]
call dword [ecx + 4]
test al, al
je 0x61fc3c
mov byte [ebp - 0x89], 0
cmp byte [ebp - 0x8a], 0
jne 0x61fbe6
mov eax, dword [ebp - 0x88]
test byte [eax + 8], 0x10
je 0x61fbc5
push ebp
mov eax, dword [ebp - 0x88]
test byte [eax + 9], 8
setne al
mov edx, dword [ebp - 0x28]
call fcn.0061eed0
pop ecx
mov eax, dword [ebp - 0x88]
test byte [eax + 8], 0x40
je 0x61fbe6
mov eax, dword [ebp - 0x88]
test byte [eax + 9], 8
setne al
mov edx, dword [ebp - 0x28]
call fcn.0061f160
mov eax, dword [ebp - 0x88]
test byte [eax + 8], 4
je 0x61fc1f
mov eax, dword [ebp - 0x20]
mov dword [ebp - 0xb4], eax
mov byte [ebp - 0xb0], 0x11
lea edx, [ebp - 0xb4]
xor ecx, ecx
mov eax, 0x6206c4
call fcn.0060165c
mov edx, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x20]
call fcn.005fb310
mov eax, dword [ebp - 0x88]
test byte [eax + 9], 0x10
je 0x61fc3c
mov eax, dword [ebp - 0x18]
call fcn.0061f374
jmp 0x61fc3c
mov byte [ebp - 0x89], 0
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x61fc6f
cmp byte [ebp - 0x89], 0
je 0x61fca2
mov edx, dword [ebp - 0x88]
mov eax, dword [ebp - 0x30]
call fcn.0061e568
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 0x61fcb0
mov eax, dword [ebp - 0x88]
mov eax, dword [eax]
mov dword [ebp - 0x88], eax
cmp dword [ebp - 0x88], 0
jne 0x61faa1
mov eax, dword [ebp - 0x30]
mov eax, dword [eax + 8]
mov dword [ebp - 0x88], eax
cmp dword [ebp - 0x88], 0
je 0x62023d
push ebp
mov eax, dword [ebp - 0x88]
call fcn.0061f570
pop ecx
xor eax, eax
push ebp
push 0x6201df
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 0x61fd5c
je 0x61ffa9
cmp eax, 0x81
jg 0x61fd3e
je 0x61fdcf
dec eax
je 0x61fd8d
add eax, 0xfffffff1
sub eax, 2
jb case.0x61fd6a.140
sub eax, 0xe
je case.0x61fd6a.140
sub eax, 0x60
je case.0x61fd6a.140
jmp case.default.0x61fd6a
sub eax, 0x82
je 0x61fe78
dec eax
je case.0x61fd6a.140
dec eax
je 0x61ff96
jmp case.default.0x61fd6a
add eax, 0xffffff7a
cmp eax, 6
ja case.default.0x61fd6a
jmp dword [eax*4 + 0x61fd71]
lea eax, [ebp - 0xd4]
mov ecx, dword [ebp - 0x28]
mov edx, 0x620700
call fcn.00409a18
mov edx, dword [ebp - 0xd4]
lea ecx, [ebp - 0xd0]
mov al, 0xd8
call fcn.005b8018
mov ecx, dword [ebp - 0xd0]
mov dl, 1
mov eax, dword [0x4197e4]
call fcn.0042648c
call fcn.00407e14
jmp case.0x61fd6a.140
cmp byte [ebp - 0x29], 0
jne 0x61fde5
mov eax, dword [ebp - 0x88]
test byte [eax + 8], 1
jne case.0x61fd6a.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 0x61e5e4
push 0x61e5f0
lea eax, [ebp - 0x48]
push eax
test bl, 2
setne cl
test bl, 0x20
setne al
mov edx, dword [ebp - 0x28]
call fcn.005f930c
test al, al
je case.0x61fd6a.140
mov eax, dword [ebp - 0x88]
test byte [eax + 8], 2
je case.0x61fd6a.140
mov eax, dword [ebp - 0x88]
test byte [eax + 8], 0x10
je case.0x61fd6a.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.005af9c0
mov edx, dword [ebp - 0xd8]
mov eax, dword [ebp - 0x3c]
call fcn.005fb900
jmp case.0x61fd6a.140
lea eax, [ebp - 0x74]
mov edx, dword [ebp - 0x24]
call fcn.00408b40
cmp byte [ebp - 0x29], 0
jne 0x61fe8f
cmp dword [ebp - 0x74], 0
jne 0x61fe9a
lea eax, [ebp - 0x74]
mov edx, dword [ebp - 0x28]
call fcn.00408b40
cmp byte [ebp - 0x29], 0
jne 0x61feac
mov eax, dword [ebp - 0x88]
test byte [eax + 8], 1
jne 0x61ff13
cmp byte [ebp - 0x29], 0
jne 0x61fec2
mov eax, dword [ebp - 0x88]
test byte [eax + 8], 2
jne case.0x61fd6a.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.0061e864
pop ecx
test al, al
jne case.0x61fd6a.140
mov byte [ebp - 0x79], 0
jmp case.0x61fd6a.140
mov eax, dword [ebp - 0x88]
test byte [eax + 8], 8
je 0x61ff34
mov eax, dword [ebp - 0x88]
test byte [eax + 9], 4
setne dl
mov eax, dword [ebp - 0x28]
call fcn.0061edc8
mov eax, dword [ebp - 0x74]
mov edx, dword [ebp - 0x28]
call fcn.00409bb0
je case.0x61fd6a.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.0061e864
pop ecx
test al, al
jne case.0x61fd6a.140
mov byte [ebp - 0x79], 0
jmp case.0x61fd6a.140
mov ecx, dword [ebp - 0x28]
mov edx, dword [ebp - 0x20]
mov eax, dword [ebp - 0x24]
call fcn.005b023c
jmp case.0x61fd6a.140
mov eax, dword [ebp - 0x88]
test byte [eax + 8], 1
je 0x61ffc8
mov edx, dword [ebp - 0x28]
mov eax, dword [ebp - 0x24]
call fcn.005b00e0
test al, al
je case.0x61fd6a.140
mov edx, dword [ebp - 0x28]
mov eax, dword [ebp - 0x24]
call fcn.005b0288
jmp case.0x61fd6a.140
lea ecx, [ebp - 0x98]
lea edx, [ebp - 0x91]
mov eax, dword [ebp - 0x88]
mov eax, dword [eax + 8]
call fcn.0061e2d8
movzx eax, byte [ebp - 0x91]
mov ecx, dword [ebp - 0x70]
mov edx, dword [ebp - 0x98]
call fcn.005b103c
test eax, eax
je case.0x61fd6a.140
sub eax, 2
je case.0x61fd6a.140
mov byte [ebp - 0x79], 0
jmp case.0x61fd6a.140
lea ecx, [ebp - 0x98]
lea edx, [ebp - 0x91]
mov eax, dword [ebp - 0x88]
mov eax, dword [eax + 8]
call fcn.0061e2d8
push 0
push 2
lea eax, [ebp - 0x9c]
push eax
movzx eax, byte [ebp - 0x91]
mov ecx, dword [ebp - 0x70]
mov edx, dword [ebp - 0x98]
call fcn.005b0f7c
test eax, eax
jne case.0x61fd6a.140
push 2
push 0x661f98
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 0x620086
mov byte [ebp - 0x79], 0
mov eax, dword [ebp - 0x9c]
push eax
call sub.advapi32.dll_RegCloseKey
jmp case.0x61fd6a.140
lea ecx, [ebp - 0x98]
lea edx, [ebp - 0x91]
mov eax, dword [ebp - 0x88]
mov eax, dword [eax + 8]
call fcn.0061e2d8
movzx eax, byte [ebp - 0x91]
mov ecx, dword [ebp - 0x70]
mov edx, dword [ebp - 0x98]
call fcn.005b11c0
test eax, eax
je case.0x61fd6a.140
sub eax, 2
je case.0x61fd6a.140
sub eax, 0x8f
je case.0x61fd6a.140
mov byte [ebp - 0x79], 0
jmp case.0x61fd6a.140
lea ecx, [ebp - 0x98]
lea edx, [ebp - 0x91]
mov eax, dword [ebp - 0x88]
mov eax, dword [eax + 8]
call fcn.0061e2d8
push 0
push 3
lea eax, [ebp - 0x9c]
push eax
movzx eax, byte [ebp - 0x91]
mov ecx, dword [ebp - 0x70]
mov edx, dword [ebp - 0x98]
call fcn.005b0f7c
test eax, eax
jne case.0x61fd6a.140
mov edx, dword [ebp - 0x6c]
mov eax, dword [ebp - 0x9c]
call fcn.005b0ebc
test al, al
je 0x620157
mov eax, dword [ebp - 0x6c]
push eax
mov eax, dword [ebp - 0x9c]
push eax
call sub.advapi32.dll_RegDeleteValueW
test eax, eax
je 0x620157
mov byte [ebp - 0x79], 0
mov eax, dword [ebp - 0x9c]
push eax
call sub.advapi32.dll_RegCloseKey
jmp case.0x61fd6a.140
mov eax, dword [ebp - 0x88]
test byte [eax + 8], 1
setne dl
mov eax, dword [ebp - 0x28]
call fcn.0061edc8
jmp case.0x61fd6a.140
mov byte [ebp - 0x7a], 1
jmp case.0x61fd6a.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, 0x62072c
call fcn.00421a6c
mov edx, dword [ebp - 0xe0]
lea ecx, [ebp - 0xdc]
mov al, 0xd8
call fcn.005b8018
mov ecx, dword [ebp - 0xdc]
mov dl, 1
mov eax, dword [0x4197e4]
call fcn.0042648c
call fcn.00407e14
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x620208
mov edx, dword [ebp - 0x88]
mov eax, dword [ebp - 0x30]
call fcn.0061e568
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 0x61fcd6
cmp byte [ebp - 0x7a], 0
je 0x620253
push 0
push 0
push 0
push 0x8000000
call sub.shell32.dll_SHChangeNotify
mov eax, dword [ebp - 0x30]
test byte [eax + 0x1d], 0x10
je 0x620261
call fcn.005fb5e0
cmp dword [ebp - 0x78], 0
je 0x620271
call dword [ebp - 0x78]
push ebp
call fcn.0061f4dc
pop ecx
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
push 0x62031f
mov eax, dword [ebp - 0x48]
call fcn.004069c8
mov eax, dword [ebp - 0x34]
call fcn.004069c8
mov eax, dword [ebp - 0x38]
call fcn.004069c8
mov eax, dword [ebp - 0x3c]
mov esi, dword [eax + 8]
dec esi
test esi, esi
jl 0x6202f4
inc esi
xor ebx, ebx
lea ecx, [ebp - 0xe4]
mov edx, ebx
mov eax, dword [ebp - 0x3c]
call fcn.005fb984
mov eax, dword [ebp - 0xe4]
call fcn.005afde8
test al, al
je 0x6202f0
push 0
lea ecx, [ebp - 0xe8]
mov edx, ebx
mov eax, dword [ebp - 0x3c]
call fcn.005fb984
mov eax, dword [ebp - 0xe8]
call fcn.004097c8
push eax
push 0x1005
push 0x1000
call sub.shell32.dll_SHChangeNotify
inc ebx
dec esi
jne 0x6202a4
mov eax, dword [ebp - 0x40]
call fcn.004069c8
mov eax, dword [ebp - 0x44]
call fcn.004069c8
mov eax, dword [ebp - 0x80]
call fcn.004069c8
mov eax, dword [ebp - 0x3c]
call fcn.004069c8
ret