Function at 0x40a180
Capabilities:
Query or enumerate registry value

Disassembly:
push ebp
mov ebp, esp
mov eax, 0x1264
call fcn.00402130
mov byte [ebp - 0x768], 0
mov dword [ebp - 0x94], 0x40c488
mov byte [ebp - 0x818], 0
mov dword [ebp - 0x2bc], 0
mov dword [ebp - 0x774], 0
mov dword [ebp - 0x770], 0
mov dword [ebp - 4], 0x40c48c
mov dword [ebp - 0x6cc], 0
mov dword [ebp - 0x19c], 0
mov byte [ebp - 0x158], 0
mov dword [ebp - 0x198], 0
mov dword [ebp - 0x190], 0
mov dword [ebp - 0x194], 0
mov dword [ebp - 0x18c], 0
mov dword [ebp - 0x784], 0
mov dword [ebp - 0x77c], 0
mov dword [ebp - 0x780], 0
mov dword [ebp - 0x778], 0
mov dword [ebp - 0x76c], 0
mov byte [ebp - 0x90], 0
mov eax, dword [ebp - 0x76c]
push eax
push 0x40c490
lea ecx, [ebp - 0x158]
push ecx
call dword [sym.imp.USER32.dll_wsprintfA]
add esp, 0xc
mov dword [ebp - 8], 0x104
movsx edx, byte [ebp - 0x90]
push edx
mov eax, dword [ebp - 0x19c]
push eax
lea ecx, [ebp - 0x198]
push ecx
call dword [sym.imp.USER32.dll_InflateRect]
mov edx, dword [ebp - 0x194]
mov dword [ebp - 0x784], edx
lea eax, [ebp - 0x784]
push eax
lea ecx, [ebp - 0x198]
push ecx
call dword [sym.imp.USER32.dll_EqualRect]
push 0x40f178
lea ecx, [ebp - 0x6c8]
call section..text
mov dword [ebp - 0x6d0], eax
mov edx, dword [ebp - 4]
push edx
lea eax, [ebp - 0x768]
push eax
call dword [sym.imp.KERNEL32.dll_lstrcpyA]
mov ecx, dword [ebp - 0x94]
push ecx
lea edx, [ebp - 0x768]
push edx
call dword [sym.imp.KERNEL32.dll_lstrcatA]
mov dword [ebp - 0x2c8], 0x80000002
cmp dword [ebp - 0x6d0], 0
je 0x40a307
mov eax, dword [ebp - 0x6d0]
push eax
lea ecx, [ebp - 0x3c8]
push ecx
call dword [sym.imp.KERNEL32.dll_lstrcpyA]
call dword [sym.imp.USER32.dll_GetFocus]
mov dword [ebp - 0x19c], eax
mov edx, dword [ebp - 0x19c]
add edx, dword [ebp - 0x198]
mov dword [ebp - 0x19c], edx
push 0
call dword [sym.imp.USER32.dll_IsWindowVisible]
mov dword [ebp - 0x19c], eax
push 0x40f160
lea ecx, [ebp - 0x6c8]
call section..text
mov dword [ebp - 0x6d0], eax
mov eax, dword [ebp - 0x76c]
push eax
push 0x40c494
lea ecx, [ebp - 0x158]
push ecx
call dword [sym.imp.USER32.dll_wsprintfA]
add esp, 0xc
mov dword [ebp - 0xef8], 1
mov dword [ebp - 0xef4], 0
lea edx, [ebp - 8]
push edx
lea eax, [ebp - 0x2b8]
push eax
lea ecx, [ebp - 0xef8]
push ecx
mov edx, dword [ebp - 0x6d0]
push edx
lea eax, [ebp - 0x3c8]
push eax
mov ecx, dword [ebp - 0x2c8]
push ecx
call dword [sym.imp.SHLWAPI.dll_SHGetValueA]
mov dword [ebp - 0xef4], eax
xor edx, edx
cmp dword [ebp - 0xef4], 0
sete dl
movzx eax, dl
test eax, eax
jne 0x40a3ed
lea ecx, [ebp - 0x774]
push ecx
push 0
call dword [sym.imp.USER32.dll_ClientToScreen]
mov dword [ebp - 0x770], eax
mov edx, dword [ebp - 0x774]
mov dword [ebp - 0x19c], edx
call dword [sym.imp.KERNEL32.dll_GetLastError]
xor al, al
jmp 0x40a506
lea eax, [ebp - 0x2b8]
push eax
call dword [sym.imp.KERNEL32.dll_lstrlenA]
push eax
lea ecx, [ebp - 0x2b8]
push ecx
call fcn.00409540
add esp, 8
mov dword [ebp - 0x2c0], eax
mov edx, dword [ebp - 0x194]
mov dword [ebp - 0x784], edx
lea eax, [ebp - 0x784]
push eax
lea ecx, [ebp - 0x198]
push ecx
call dword [sym.imp.USER32.dll_EqualRect]
push 0x40f16c
lea ecx, [ebp - 0x6c8]
call section..text
mov dword [ebp - 0x6d0], eax
mov edx, dword [ebp - 0x6d0]
push edx
mov eax, dword [ebp - 0x2c0]
push eax
push str._d_s
lea ecx, [ebp - 0x2b8]
push ecx
call dword [sym.imp.USER32.dll_wsprintfA]
add esp, 0x10
lea edx, [ebp - 0x2b8]
push edx
call dword [sym.imp.KERNEL32.dll_lstrlenA]
push eax
lea eax, [ebp - 0x2b8]
push eax
call fcn.00409540
add esp, 8
cmp eax, 0xc4b3293
jne 0x40a4e1
mov ecx, dword [ebp - 0x19c]
mov dword [ebp - 0x774], ecx
lea edx, [ebp - 0x774]
push edx
call dword [sym.imp.USER32.dll_GetCursorPos]
mov byte [ebp - 0x158], al
mov eax, dword [ebp - 0x94]
push eax
lea ecx, [ebp - 0x90]
push ecx
call dword [sym.imp.KERNEL32.dll_lstrcpyA]
mov al, 1
jmp 0x40a506
xor al, al
jmp 0x40a506
mov esp, ebp
pop ebp
ret