Function at 0x106dc3c
Capabilities:
Query or enumerate registry value

Disassembly:
mov edi, edi
push ebp
mov ebp, esp
sub esp, 0x30
push 0x102f5d0
push dword [0x10b247c]
push dword [0x10b2478]
call dword [sym.imp.ADVAPI32.dll_EventEnabled]
test al, al
je 0x106defb
push ebx
push edi
push 1
xor edi, edi
push edi
push 0x10153c0
push 1
mov dword [ebp - 4], edi
call dword [sym.imp.SHLWAPI.dll_Ordinal_635]
push 4
mov dword [ebp - 0x10], eax
pop ebx
cmp eax, edi
je 0x106dec1
push esi
mov esi, dword [sym.imp.ADVAPI32.dll_RegQueryValueExW]
lea ecx, [ebp - 8]
push ecx
lea ecx, [ebp - 0xc]
push ecx
push edi
push edi
push 0x106e088
push eax
mov dword [ebp - 8], ebx
call esi
test eax, eax
jne 0x106dcb1
inc eax
cmp dword [ebp - 0xc], eax
jne 0x106dcb1
mov dword [ebp - 4], eax
lea eax, [ebp - 8]
push eax
lea eax, [ebp - 0xc]
push eax
push edi
push edi
push 0x106e068
push dword [ebp - 0x10]
mov dword [ebp - 8], ebx
call esi
test eax, eax
jne 0x106dcd5
cmp dword [ebp - 0xc], edi
jne 0x106dcd5
or dword [ebp - 4], 2
lea eax, [ebp - 8]
push eax
lea eax, [ebp - 0xc]
push eax
push edi
push edi
push 0x106e03c
push dword [ebp - 0x10]
mov dword [ebp - 8], ebx
call esi
test eax, eax
jne 0x106dcfa
cmp dword [ebp - 0xc], 1
jne 0x106dcfa
or dword [ebp - 4], 8
lea eax, [ebp - 8]
push eax
lea eax, [ebp - 0xc]
push eax
push edi
push edi
push 0x106e01c
push dword [ebp - 0x10]
mov dword [ebp - 8], ebx
call esi
test eax, eax
jne 0x106dd1f
cmp dword [ebp - 0xc], 1
jne 0x106dd1f
or dword [ebp - 4], 0x10
lea eax, [ebp - 8]
push eax
lea eax, [ebp - 0xc]
push eax
push edi
push edi
push 0x106e00c
push dword [ebp - 0x10]
mov dword [ebp - 8], ebx
call esi
test eax, eax
jne 0x106dd44
cmp dword [ebp - 0xc], 2
jne 0x106dd44
or dword [ebp - 4], 0x20
lea eax, [ebp - 8]
push eax
lea eax, [ebp - 0xc]
push eax
push edi
push edi
push 0x106dff4
push dword [ebp - 0x10]
mov dword [ebp - 8], ebx
call esi
test eax, eax
jne 0x106dd69
cmp dword [ebp - 0xc], 1
jne 0x106dd69
or dword [ebp - 4], 0x40
lea eax, [ebp - 8]
push eax
lea eax, [ebp - 0xc]
push eax
push edi
push edi
push 0x106dfd0
push dword [ebp - 0x10]
mov dword [ebp - 8], ebx
call esi
test eax, eax
jne 0x106dd90
cmp dword [ebp - 0xc], edi
jne 0x106dd90
or dword [ebp - 4], 0x80
lea eax, [ebp - 8]
push eax
lea eax, [ebp - 0xc]
push eax
push edi
push edi
push 0x106dfac
push dword [ebp - 0x10]
mov dword [ebp - 8], ebx
call esi
test eax, eax
jne 0x106ddb8
cmp dword [ebp - 0xc], 2
jne 0x106ddb8
or dword [ebp - 4], 0x200
lea eax, [ebp - 8]
push eax
lea eax, [ebp - 0xc]
push eax
push edi
push edi
push 0x106df9c
push dword [ebp - 0x10]
mov dword [ebp - 8], ebx
call esi
test eax, eax
jne 0x106dde0
cmp dword [ebp - 0xc], 1
jne 0x106dde0
or dword [ebp - 4], 0x400
lea eax, [ebp - 8]
push eax
lea eax, [ebp - 0xc]
push eax
push edi
push edi
push 0x106df7c
push dword [ebp - 0x10]
mov dword [ebp - 8], ebx
call esi
test eax, eax
jne 0x106de08
cmp dword [ebp - 0xc], 1
jne 0x106de08
or dword [ebp - 4], 0x800
lea eax, [ebp - 8]
push eax
lea eax, [ebp - 0xc]
push eax
push edi
push edi
push 0x106df60
push dword [ebp - 0x10]
mov dword [ebp - 8], ebx
call esi
test eax, eax
jne 0x106de30
cmp dword [ebp - 0xc], 1
jne 0x106de30
or dword [ebp - 4], 0x1000
lea eax, [ebp - 8]
push eax
lea eax, [ebp - 0xc]
push eax
push edi
push edi
push 0x106df40
push dword [ebp - 0x10]
mov dword [ebp - 8], ebx
call esi
test eax, eax
jne 0x106de58
cmp dword [ebp - 0xc], 1
jne 0x106de58
or dword [ebp - 4], 0x2000
lea eax, [ebp - 8]
push eax
lea eax, [ebp - 0xc]
push eax
push edi
push edi
push 0x106df20
push dword [ebp - 0x10]
mov dword [ebp - 8], ebx
call esi
test eax, eax
jne 0x106de80
cmp dword [ebp - 0xc], 1
jne 0x106de80
or dword [ebp - 4], 0x4000
push 0x106e098
mov dword [ebp - 8], ebx
call dword [sym.imp.SHLWAPI.dll_Ordinal_618]
test eax, eax
jne 0x106deb0
lea eax, [ebp - 8]
push eax
lea eax, [ebp - 0xc]
push eax
push edi
push edi
push 0x106df00
push dword [ebp - 0x10]
call esi
test eax, eax
jne 0x106deb7
cmp dword [ebp - 0xc], 1
jne 0x106deb7
or dword [ebp - 4], 0x10000
push dword [ebp - 0x10]
call dword [sym.imp.ADVAPI32.dll_RegCloseKey]
pop esi
push 7
pop ecx
xor eax, eax
mov dword [ebp - 0x30], edi
push eax
lea edi, [ebp - 0x2c]
rep stosd dword es:[edi], eax
push 0x80
lea eax, [ebp - 0x30]
push eax
call dword [sym.imp.SHELL32.dll_SHGetSetSettings]
test byte [ebp - 0x30], 0x20
je 0x106dee7
or dword [ebp - 4], ebx
push dword [ebp - 4]
push 0x244
push 0x102f5d0
call fcn.0101585e
pop edi
pop ebx
leave
ret