Function at 0x418ac7
Capabilities:
Query or enumerate registry value

Disassembly:
push ebp
lea ebp, [esp - 0x74]
mov eax, 0x16a0
call fcn.00420160
push ebx
push esi
push edi
xor edi, edi
mov esi, 0x7fe
push esi
lea eax, [ebp - 0x162a]
push edi
push eax
mov dword [ebp + 0x70], edi
mov word [ebp - 0x162c], di
call sub.MSVCRT.dll_memset
push 0x206
lea eax, [ebp - 0x62a]
push edi
push eax
mov word [ebp - 0x62c], di
call sub.MSVCRT.dll_memset
push esi
lea eax, [ebp - 0xe2a]
push edi
push eax
mov word [ebp - 0xe2c], di
call sub.MSVCRT.dll_memset
push dword [ebp + 0x7c]
call fcn.0040ac04
xor ecx, ecx
add esp, 0x28
cmp word [eax], 0x40
mov dword [ebp + 0x7c], eax
sete cl
cmp ecx, edi
mov dword [ebp + 0x6c], ecx
je 0x418b49
inc eax
inc eax
mov dword [ebp + 0x7c], eax
mov esi, dword [sym.imp.SHLWAPI.dll_SHGetValueW]
lea eax, [ebp + 0x68]
push eax
lea eax, [ebp - 0x62c]
push eax
lea eax, [ebp + 0x64]
push eax
push 0x403568
mov ebx, 0x402704
push ebx
mov edi, SysReAllocString
push edi
mov dword [ebp + 0x64], 1
mov dword [ebp + 0x68], 0x104
call esi
test eax, eax
je 0x418bf5
lea eax, [ebp + 0x68]
push eax
lea eax, [ebp - 0x62c]
push eax
lea eax, [ebp + 0x64]
push eax
push 0x403560
push ebx
push edi
call esi
test eax, eax
je 0x418bf5
cmp dword [ebp + 0x6c], 0
jne 0x418bed
mov esi, dword [sym.imp.USER32.dll_LoadStringW]
push 0x50
lea eax, [ebp - 0x3c]
push eax
push 0x2715
push dword [0x423438]
call esi
push 0x50
lea eax, [ebp - 0xdc]
push eax
push 0x2716
push dword [0x423438]
call esi
push 0x10
lea eax, [ebp - 0xdc]
push eax
lea eax, [ebp - 0x3c]
push eax
push dword [0x423434]
call dword [sym.imp.USER32.dll_MessageBoxW]
xor eax, eax
inc eax
jmp 0x418e5e
push 0x400
lea eax, [ebp - 0x162c]
push eax
lea eax, [ebp - 0x62c]
push eax
call fcn.00409bc8
mov edi, dword [sym.imp.USER32.dll_LoadStringW]
add esp, 0xc
push 0x50
lea eax, [ebp - 0x424]
push eax
push 0x2717
push dword [0x423438]
call edi
mov esi, dword [sym.imp.USER32.dll_wsprintfW]
lea eax, [ebp - 0x162c]
push eax
lea eax, [ebp - 0x424]
push eax
lea eax, [ebp - 0xe2c]
push eax
call esi
add esp, 0xc
push 0x403550
push dword [ebp + 0x7c]
call dword [sym.imp.SHLWAPI.dll_StrStrIW]
test eax, eax
je 0x418cec
push 0x50
lea eax, [ebp - 0x3c]
push eax
push 0x2718
push dword [0x423438]
call edi
push 0x50
lea eax, [ebp - 0xdc]
push eax
push 0x2719
push dword [0x423438]
call edi
mov esi, dword [sym.imp.KERNEL32.DLL_lstrcatW]
lea eax, [ebp - 0x3c]
push eax
lea eax, [ebp - 0xe2c]
push eax
call esi
cmp dword [ebp + 0x6c], 0
jne 0x418cc9
push 0x24
lea eax, [ebp - 0xdc]
push eax
lea eax, [ebp - 0xe2c]
push eax
push dword [0x423434]
call dword [sym.imp.USER32.dll_MessageBoxW]
cmp eax, 6
jne 0x418e5b
push 0x4033d4
lea eax, [ebp - 0x162c]
push eax
call esi
lea eax, [ebp - 0x162c]
push eax
call fcn.00410fe8
pop ecx
mov dword [ebp + 0x70], eax
jmp 0x418e5b
push 0x403540
push dword [ebp + 0x7c]
call dword [sym.imp.SHLWAPI.dll_StrStrIW]
test eax, eax
je 0x418e5b
push 0x50
lea eax, [ebp - 0x3c]
push eax
push 0x271a
push dword [0x423438]
call edi
push 0x50
lea eax, [ebp - 0xdc]
push eax
push 0x271b
push dword [0x423438]
call edi
lea eax, [ebp - 0x3c]
push eax
lea eax, [ebp - 0xe2c]
push eax
call dword [sym.imp.KERNEL32.DLL_lstrcatW]
push 0x24
lea eax, [ebp - 0xdc]
push eax
lea eax, [ebp - 0xe2c]
push eax
push dword [0x423434]
call dword [sym.imp.USER32.dll_MessageBoxW]
cmp eax, 6
jne 0x418e5b
push 0x50
lea eax, [ebp - 0x384]
push eax
push 0x271c
push dword [0x423438]
call edi
lea eax, [ebp - 0x384]
push eax
lea eax, [ebp - 0x162c]
push 0
push eax
call fcn.00418701
mov edi, eax
add esp, 0xc
test edi, edi
mov dword [ebp + 0x7c], edi
je 0x418e5b
push edi
call fcn.00403cfd
test eax, eax
pop ecx
jne 0x418dae
push edi
call fcn.00403cb6
pop ecx
push edi
call fcn.00403cfd
test eax, eax
pop ecx
je 0x418e5b
push edi
push ebx
mov edi, 0x402674
push edi
lea eax, [ebp - 0x2e4]
push 0x403524
push eax
call esi
lea eax, [ebp - 0x2e4]
push eax
call fcn.0040b5c4
push dword [ebp + 0x7c]
lea eax, [ebp - 0x2e4]
push ebx
push edi
push 0x403508
push eax
call esi
lea eax, [ebp - 0x2e4]
push eax
call fcn.0040b5c4
push dword [ebp + 0x7c]
lea eax, [ebp - 0x2e4]
push 0x4034f8
push eax
call esi
xor edi, edi
push edi
lea eax, [ebp - 0x2e4]
push 1
push eax
call fcn.0040ba39
add esp, 0x48
push dword [ebp + 0x7c]
mov dword [ebp + 0x70], eax
lea eax, [ebp - 0x2e4]
push 0x4034e8
push eax
call esi
push edi
lea eax, [ebp - 0x2e4]
push 1
push eax
call fcn.0040ba39
add dword [ebp + 0x70], eax
push edi
push edi
push 0x402620
call fcn.0040ba39
add esp, 0x24
add dword [ebp + 0x70], eax
mov eax, dword [ebp + 0x70]
pop edi
pop esi
pop ebx
add ebp, 0x74
leave
ret