Function at 0x6114d8
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 0x6114e1
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.0040a268
xor eax, eax
push ebp
push 0x612296
push dword fs:[eax]
mov dword fs:[eax], esp
mov eax, 0x6122b4
call fcn.005f3d9c
lea eax, [ebp - 0xa4]
call fcn.005a3b4c
mov eax, dword [ebp - 0xa4]
call fcn.004216cc
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 [0x5eaadc]
call fcn.00406998
mov dword [ebp - 0x3c], eax
xor edx, edx
push ebp
push 0x612229
push dword fs:[edx]
mov dword fs:[edx], esp
mov dl, 1
mov eax, dword [0x5eaadc]
call fcn.00406998
mov dword [ebp - 0x80], eax
mov dl, 1
mov eax, dword [0x5eaadc]
call fcn.00406998
mov dword [ebp - 0x44], eax
mov dl, 1
mov eax, dword [0x5eaadc]
call fcn.00406998
mov dword [ebp - 0x40], eax
mov dl, 1
mov eax, dword [0x5eaadc]
call fcn.00406998
mov dword [ebp - 0x38], eax
mov dl, 1
mov eax, dword [0x5eaadc]
call fcn.00406998
mov dword [ebp - 0x34], eax
cmp dword [ebp - 0x78], 0
je 0x6115e3
mov dl, 1
mov eax, dword [0x5eaadc]
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 0x61199c
mov eax, dword [ebp - 0x30]
mov eax, dword [eax + 8]
mov dword [ebp - 0x88], eax
cmp dword [ebp - 0x88], 0
je 0x61199c
mov eax, dword [ebp - 0x88]
cmp word [eax + 0x10], 0x80
jne 0x611981
xor eax, eax
push ebp
push 0x61192e
push dword fs:[eax]
mov dword fs:[eax], esp
push ebp
mov eax, dword [ebp - 0x88]
call fcn.00611484
pop ecx
cmp dword [ebp - 0x1c], 0
je 0x611667
mov edx, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x80]
call fcn.005ee364
inc eax
jne 0x6118ef
mov bl, 1
mov eax, dword [ebp - 0x88]
mov esi, dword [eax + 8]
test esi, 1
je 0x61167e
xor ebx, ebx
jmp 0x611688
test esi, 2
je 0x611688
mov bl, 2
mov dword [ebp - 0xa0], 1
test esi, 8
je 0x6116a6
mov dword [ebp - 0xa0], 7
jmp 0x6116ca
test esi, 0x10
je 0x6116ba
mov dword [ebp - 0xa0], 3
jmp 0x6116ca
test esi, 0x40
je 0x6116ca
xor eax, eax
mov dword [ebp - 0xa0], eax
test esi, 4
jne 0x6117e5
lea eax, [ebp - 0xa8]
mov ecx, dword [ebp - 0x28]
mov edx, 0x61230c
call fcn.00409a14
mov eax, dword [ebp - 0xa8]
call fcn.005f3d9c
cmp dword [ebp - 0x24], 0
je 0x611718
lea eax, [ebp - 0xac]
mov ecx, dword [ebp - 0x24]
mov edx, 0x612348
call fcn.00409a14
mov eax, dword [ebp - 0xac]
call fcn.005f3d9c
mov eax, dword [ebp - 0x88]
test byte [eax + 8], 0x20
je 0x611741
mov eax, dword [ebp - 0x88]
test byte [eax + 9], 1
setne al
mov edx, dword [ebp - 0x28]
call fcn.005ea614
test al, al
je 0x6117d6
mov eax, dword [ebp - 0x20]
push eax
push ebx
mov eax, dword [ebp - 0xa0]
push eax
push 0x6105fc
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.005ecd00
test al, al
jne 0x6117a3
mov eax, dword [ebp - 0x90]
mov dword [ebp - 0xb4], eax
mov byte [ebp - 0xb0], 0
lea edx, [ebp - 0xb4]
xor ecx, ecx
mov eax, 0x612388
call fcn.005f4020
mov byte [ebp - 0x79], 0
jmp 0x6118dc
cmp bl, 1
jne 0x6118dc
mov eax, dword [ebp - 0x90]
mov dword [ebp - 0xb4], eax
mov byte [ebp - 0xb0], 0
lea edx, [ebp - 0xb4]
xor ecx, ecx
mov eax, 0x6123cc
call fcn.005f4020
jmp 0x6118dc
mov eax, 0x612404
call fcn.005f3d9c
jmp 0x6118dc
lea eax, [ebp - 0xb8]
mov ecx, dword [ebp - 0x28]
mov edx, 0x61244c
call fcn.00409a14
mov eax, dword [ebp - 0xb8]
call fcn.005f3d9c
cmp dword [ebp - 0x24], 0
je 0x611827
lea eax, [ebp - 0xbc]
mov ecx, dword [ebp - 0x24]
mov edx, 0x612494
call fcn.00409a14
mov eax, dword [ebp - 0xbc]
call fcn.005f3d9c
mov eax, dword [ebp - 0x88]
test byte [eax + 8], 0x20
je 0x611843
mov eax, dword [ebp - 0x28]
call fcn.005a2f84
test al, al
je 0x6118d2
mov eax, dword [ebp - 0x88]
test byte [eax + 8], 0x80
jne 0x611851
xor ebx, ebx
mov eax, dword [ebp - 0x20]
push eax
push ebx
mov eax, dword [ebp - 0xa0]
push eax
push 0x6105fc
lea eax, [ebp - 0x90]
push eax
mov ecx, dword [ebp - 0x24]
mov edx, dword [ebp - 0x28]
mov eax, dword [ebp - 0x18]
call fcn.005ecfcc
test al, al
jne 0x6118a6
mov eax, dword [ebp - 0x90]
mov dword [ebp - 0xb4], eax
mov byte [ebp - 0xb0], 0
lea edx, [ebp - 0xb4]
xor ecx, ecx
mov eax, 0x6124e0
call fcn.005f4020
mov byte [ebp - 0x79], 0
jmp 0x6118dc
cmp bl, 1
jne 0x6118dc
mov eax, dword [ebp - 0x90]
mov dword [ebp - 0xb4], eax
mov byte [ebp - 0xb0], 0
lea edx, [ebp - 0xb4]
xor ecx, ecx
mov eax, 0x6123cc
call fcn.005f4020
jmp 0x6118dc
mov eax, 0x612524
call fcn.005f3d9c
cmp dword [ebp - 0x1c], 0
je 0x611924
mov edx, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x80]
call fcn.005ee270
jmp 0x611924
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, 0x612580
call fcn.005f4020
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x611957
mov edx, dword [ebp - 0x88]
mov eax, dword [ebp - 0x30]
call fcn.0061047c
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 0x61198f
mov eax, dword [ebp - 0x88]
mov eax, dword [eax]
mov dword [ebp - 0x88], eax
cmp dword [ebp - 0x88], 0
jne 0x611622
mov eax, dword [ebp - 0x30]
mov eax, dword [eax + 8]
mov dword [ebp - 0x88], eax
cmp dword [ebp - 0x88], 0
je 0x611bd1
mov byte [ebp - 0x89], 0
mov eax, dword [ebp - 0x88]
cmp word [eax + 0x10], 0x82
jne 0x611b83
mov byte [ebp - 0x89], 1
xor eax, eax
push ebp
push 0x611b5a
push dword fs:[eax]
mov dword fs:[eax], esp
push ebp
mov eax, dword [ebp - 0x88]
call fcn.00611484
pop ecx
cmp byte [ebp - 0x29], 0
jne 0x611a06
mov eax, dword [ebp - 0x88]
test byte [eax + 8], 1
jne 0x611b49
cmp byte [ebp - 0x29], 0
jne 0x611a12
cmp dword [ebp - 0x24], 0
jne 0x611a16
xor eax, eax
jmp 0x611a18
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 0x611a4d
test esi, 0x400
setne dl
mov eax, dword [ebp - 0x28]
call fcn.00610cdc
mov byte [ebp - 0x8b], al
jmp 0x611a54
mov byte [ebp - 0x8b], 0
test bl, bl
je 0x611aa6
cmp byte [ebp - 0x8b], 0
je 0x611b50
cmp byte [ebp - 0x8a], 0
jne 0x611aa6
mov eax, dword [ebp - 0x88]
test byte [eax + 9], 8
setne al
mov edx, dword [ebp - 0x28]
call fcn.005ea614
test al, al
je 0x611aa6
mov eax, dword [ebp - 0x88]
test byte [eax + 9], 2
jne 0x611aa6
mov edx, dword [ebp - 0x28]
mov eax, dword [ebp - 0x30]
mov ecx, dword [eax]
call dword [ecx + 4]
test al, al
je 0x611b50
mov byte [ebp - 0x89], 0
cmp byte [ebp - 0x8a], 0
jne 0x611afa
mov eax, dword [ebp - 0x88]
test byte [eax + 8], 0x10
je 0x611ad9
push ebp
mov eax, dword [ebp - 0x88]
test byte [eax + 9], 8
setne al
mov edx, dword [ebp - 0x28]
call fcn.00610de4
pop ecx
mov eax, dword [ebp - 0x88]
test byte [eax + 8], 0x40
je 0x611afa
mov eax, dword [ebp - 0x88]
test byte [eax + 9], 8
setne al
mov edx, dword [ebp - 0x28]
call fcn.00611074
mov eax, dword [ebp - 0x88]
test byte [eax + 8], 4
je 0x611b33
mov eax, dword [ebp - 0x20]
mov dword [ebp - 0xb4], eax
mov byte [ebp - 0xb0], 0x11
lea edx, [ebp - 0xb4]
xor ecx, ecx
mov eax, 0x6125d8
call fcn.005f4020
mov edx, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x20]
call fcn.005edcd4
mov eax, dword [ebp - 0x88]
test byte [eax + 9], 0x10
je 0x611b50
mov eax, dword [ebp - 0x18]
call fcn.00611288
jmp 0x611b50
mov byte [ebp - 0x89], 0
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x611b83
cmp byte [ebp - 0x89], 0
je 0x611bb6
mov edx, dword [ebp - 0x88]
mov eax, dword [ebp - 0x30]
call fcn.0061047c
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 0x611bc4
mov eax, dword [ebp - 0x88]
mov eax, dword [eax]
mov dword [ebp - 0x88], eax
cmp dword [ebp - 0x88], 0
jne 0x6119b5
mov eax, dword [ebp - 0x30]
mov eax, dword [eax + 8]
mov dword [ebp - 0x88], eax
cmp dword [ebp - 0x88], 0
je 0x612151
push ebp
mov eax, dword [ebp - 0x88]
call fcn.00611484
pop ecx
xor eax, eax
push ebp
push 0x6120f3
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 0x611c70
je 0x611ebd
cmp eax, 0x81
jg 0x611c52
je 0x611ce3
dec eax
je 0x611ca1
add eax, 0xfffffff1
sub eax, 2
jb case.0x611c7e.140
sub eax, 0xe
je case.0x611c7e.140
sub eax, 0x60
je case.0x611c7e.140
jmp case.default.0x611c7e
sub eax, 0x82
je 0x611d8c
dec eax
je case.0x611c7e.140
dec eax
je 0x611eaa
jmp case.default.0x611c7e
add eax, 0xffffff7a
cmp eax, 6
ja case.default.0x611c7e
jmp dword [eax*4 + 0x611c85]
lea eax, [ebp - 0xd4]
mov ecx, dword [ebp - 0x28]
mov edx, 0x612614
call fcn.00409a14
mov edx, dword [ebp - 0xd4]
lea ecx, [ebp - 0xd0]
mov al, 0xd8
call fcn.005ab1a0
mov ecx, dword [ebp - 0xd0]
mov dl, 1
mov eax, dword [0x41991c]
call fcn.004265c4
call fcn.00407e08
jmp case.0x611c7e.140
cmp byte [ebp - 0x29], 0
jne 0x611cf9
mov eax, dword [ebp - 0x88]
test byte [eax + 8], 1
jne case.0x611c7e.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 0x6104f8
push 0x610504
lea eax, [ebp - 0x48]
push eax
test bl, 2
setne cl
test bl, 0x20
setne al
mov edx, dword [ebp - 0x28]
call fcn.005ebcd0
test al, al
je case.0x611c7e.140
mov eax, dword [ebp - 0x88]
test byte [eax + 8], 2
je case.0x611c7e.140
mov eax, dword [ebp - 0x88]
test byte [eax + 8], 0x10
je case.0x611c7e.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.005a2b48
mov edx, dword [ebp - 0xd8]
mov eax, dword [ebp - 0x3c]
call fcn.005ee2c4
jmp case.0x611c7e.140
lea eax, [ebp - 0x74]
mov edx, dword [ebp - 0x24]
call fcn.00408b34
cmp byte [ebp - 0x29], 0
jne 0x611da3
cmp dword [ebp - 0x74], 0
jne 0x611dae
lea eax, [ebp - 0x74]
mov edx, dword [ebp - 0x28]
call fcn.00408b34
cmp byte [ebp - 0x29], 0
jne 0x611dc0
mov eax, dword [ebp - 0x88]
test byte [eax + 8], 1
jne 0x611e27
cmp byte [ebp - 0x29], 0
jne 0x611dd6
mov eax, dword [ebp - 0x88]
test byte [eax + 8], 2
jne case.0x611c7e.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.00610778
pop ecx
test al, al
jne case.0x611c7e.140
mov byte [ebp - 0x79], 0
jmp case.0x611c7e.140
mov eax, dword [ebp - 0x88]
test byte [eax + 8], 8
je 0x611e48
mov eax, dword [ebp - 0x88]
test byte [eax + 9], 4
setne dl
mov eax, dword [ebp - 0x28]
call fcn.00610cdc
mov eax, dword [ebp - 0x74]
mov edx, dword [ebp - 0x28]
call fcn.00409bac
je case.0x611c7e.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.00610778
pop ecx
test al, al
jne case.0x611c7e.140
mov byte [ebp - 0x79], 0
jmp case.0x611c7e.140
mov ecx, dword [ebp - 0x28]
mov edx, dword [ebp - 0x20]
mov eax, dword [ebp - 0x24]
call fcn.005a33c4
jmp case.0x611c7e.140
mov eax, dword [ebp - 0x88]
test byte [eax + 8], 1
je 0x611edc
mov edx, dword [ebp - 0x28]
mov eax, dword [ebp - 0x24]
call fcn.005a3268
test al, al
je case.0x611c7e.140
mov edx, dword [ebp - 0x28]
mov eax, dword [ebp - 0x24]
call fcn.005a3410
jmp case.0x611c7e.140
lea ecx, [ebp - 0x98]
lea edx, [ebp - 0x91]
mov eax, dword [ebp - 0x88]
mov eax, dword [eax + 8]
call fcn.006101ec
movzx eax, byte [ebp - 0x91]
mov ecx, dword [ebp - 0x70]
mov edx, dword [ebp - 0x98]
call fcn.005a41c4
test eax, eax
je case.0x611c7e.140
sub eax, 2
je case.0x611c7e.140
mov byte [ebp - 0x79], 0
jmp case.0x611c7e.140
lea ecx, [ebp - 0x98]
lea edx, [ebp - 0x91]
mov eax, dword [ebp - 0x88]
mov eax, dword [eax + 8]
call fcn.006101ec
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.005a4104
test eax, eax
jne case.0x611c7e.140
push 2
push 0x652f8c
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 0x611f9a
mov byte [ebp - 0x79], 0
mov eax, dword [ebp - 0x9c]
push eax
call sub.advapi32.dll_RegCloseKey
jmp case.0x611c7e.140
lea ecx, [ebp - 0x98]
lea edx, [ebp - 0x91]
mov eax, dword [ebp - 0x88]
mov eax, dword [eax + 8]
call fcn.006101ec
movzx eax, byte [ebp - 0x91]
mov ecx, dword [ebp - 0x70]
mov edx, dword [ebp - 0x98]
call fcn.005a4348
test eax, eax
je case.0x611c7e.140
sub eax, 2
je case.0x611c7e.140
sub eax, 0x8f
je case.0x611c7e.140
mov byte [ebp - 0x79], 0
jmp case.0x611c7e.140
lea ecx, [ebp - 0x98]
lea edx, [ebp - 0x91]
mov eax, dword [ebp - 0x88]
mov eax, dword [eax + 8]
call fcn.006101ec
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.005a4104
test eax, eax
jne case.0x611c7e.140
mov edx, dword [ebp - 0x6c]
mov eax, dword [ebp - 0x9c]
call fcn.005a4044
test al, al
je 0x61206b
mov eax, dword [ebp - 0x6c]
push eax
mov eax, dword [ebp - 0x9c]
push eax
call sub.advapi32.dll_RegDeleteValueW
test eax, eax
je 0x61206b
mov byte [ebp - 0x79], 0
mov eax, dword [ebp - 0x9c]
push eax
call sub.advapi32.dll_RegCloseKey
jmp case.0x611c7e.140
mov eax, dword [ebp - 0x88]
test byte [eax + 8], 1
setne dl
mov eax, dword [ebp - 0x28]
call fcn.00610cdc
jmp case.0x611c7e.140
mov byte [ebp - 0x7a], 1
jmp case.0x611c7e.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, 0x612640
call fcn.00421ba4
mov edx, dword [ebp - 0xe0]
lea ecx, [ebp - 0xdc]
mov al, 0xd8
call fcn.005ab1a0
mov ecx, dword [ebp - 0xdc]
mov dl, 1
mov eax, dword [0x41991c]
call fcn.004265c4
call fcn.00407e08
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x61211c
mov edx, dword [ebp - 0x88]
mov eax, dword [ebp - 0x30]
call fcn.0061047c
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 0x611bea
cmp byte [ebp - 0x7a], 0
je 0x612167
push 0
push 0
push 0
push 0x8000000
call sub.shell32.dll_SHChangeNotify
mov eax, dword [ebp - 0x30]
test byte [eax + 0x1d], 0x10
je 0x612175
call fcn.005edfa4
cmp dword [ebp - 0x78], 0
je 0x612185
call dword [ebp - 0x78]
push ebp
call fcn.006113f0
pop ecx
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
push 0x612233
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 0x612208
inc esi
xor ebx, ebx
lea ecx, [ebp - 0xe4]
mov edx, ebx
mov eax, dword [ebp - 0x3c]
call fcn.005ee348
mov eax, dword [ebp - 0xe4]
call fcn.005a2f70
test al, al
je 0x612204
push 0
lea ecx, [ebp - 0xe8]
mov edx, ebx
mov eax, dword [ebp - 0x3c]
call fcn.005ee348
mov eax, dword [ebp - 0xe8]
call fcn.004097c0
push eax
push 0x1005
push 0x1000
call sub.shell32.dll_SHChangeNotify
inc ebx
dec esi
jne 0x6121b8
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