Function at 0x409893
Capabilities:
Query or enumerate registry value
Set registry value

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x28
push ebx
push esi
push edi
push 1
mov edi, ecx
pop ebx
mov dword [ebp - 0x14], edi
mov dword [ebp - 8], ebx
call fcn.00409cff
mov ecx, edi
mov dword [ebp - 0x20], eax
call fcn.00409d86
mov dword [ebp - 0x28], eax
call fcn.0040a61f
mov dword [ebp - 0x24], eax
call fcn.0040a892
mov esi, eax
call fcn.0040a75a
mov dword [ebp - 0x1c], eax
call fcn.0040a9de
test esi, esi
jne 0x4099be
cmp dword [ebp - 0x1c], esi
jne 0x4099be
cmp dword [ebp - 0x24], esi
jne 0x4099be
test eax, eax
jne 0x4099be
push ebx
call fcn.0040ac76
mov ecx, eax
call fcn.0040acde
mov ecx, edi
call fcn.00409eb5
test eax, eax
jne 0x4099be
mov ecx, edi
call fcn.00409e77
test eax, eax
jne 0x4099be
push 2
call fcn.0040ac76
mov ecx, eax
call fcn.0040acde
push 0x103
push 0x41656c
mov ecx, edi
call fcn.00409b25
test eax, eax
je 0x4099be
push 3
call fcn.0040ac76
mov ecx, eax
call fcn.0040acde
push 4
lea eax, [ebp - 4]
pop esi
and dword [ebp - 0x18], 0
push eax
lea eax, [ebp - 0x18]
push eax
lea eax, [ebp - 0xc]
push eax
mov ebx, str.Software_se_wdtc
push str.notshowtip
mov edi, 0x80000001
push ebx
push edi
mov dword [ebp - 0xc], esi
mov dword [ebp - 4], esi
call dword [0x40d260]
cmp dword [ebp - 0x18], 0
je 0x40999b
and dword [ebp - 8], 0
push 5
call fcn.0040ac76
mov ecx, eax
call fcn.0040acde
cmp dword [ebp - 0x20], 0
je 0x4099ae
push esi
call fcn.0040ac76
mov ecx, eax
call fcn.0040acde
mov ecx, dword [ebp - 0x14]
call fcn.00409e0d
test eax, eax
je 0x4099c5
push 6
jmp 0x4099d3
xor eax, eax
jmp 0x409b1e
mov ecx, dword [ebp - 0x14]
call fcn.00409e42
test eax, eax
je 0x4099df
push 7
call fcn.0040ac76
mov ecx, eax
call fcn.0040acde
mov eax, dword [ebp + 8]
mov ax, word [eax + 6]
cmp ax, 0x31
jb 0x409a28
cmp ax, 0x33
ja 0x409a28
mov ecx, dword [ebp - 0x14]
call fcn.0040a144
mov ecx, dword [ebp + 8]
movzx ecx, word [ecx + 6]
sub ecx, 0x30
cmp eax, ecx
jbe 0x409a0c
and dword [ebp - 8], 0
cmp eax, 1
jne 0x409a15
push 8
jmp 0x409a1c
cmp eax, 2
jne 0x409a28
push 9
call fcn.0040ac76
mov ecx, eax
call fcn.0040acde
lea eax, [ebp - 4]
and dword [ebp - 0x10], 0
push eax
lea eax, [ebp - 0x10]
push eax
lea eax, [ebp - 0xc]
push eax
push str.ShowTipCount
push ebx
push edi
mov dword [ebp - 0xc], esi
mov dword [ebp - 4], esi
call dword [0x40d260]
push 0
push 0x413acc
call fcn.004010f9
mov ecx, eax
call fcn.00401470
push 0
push 0x413ac4
mov dword [ebp + 8], eax
call fcn.004010f9
mov ecx, eax
call fcn.00401470
mov ecx, dword [ebp + 8]
mov dword [ebp - 0x1c], eax
cmp ecx, dword [ebp - 0x10]
ja 0x409b04
test eax, eax
jbe 0x409b04
lea eax, [ebp - 4]
and dword [ebp - 0x14], 0
push eax
lea eax, [ebp - 0x14]
and dword [ebp + 8], 0
push eax
lea eax, [ebp - 0xc]
mov dword [ebp - 4], esi
push eax
push str.LastTimeCheck
push ebx
push edi
call dword [0x40d260]
lea eax, [ebp + 8]
push eax
call dword [0x40d1e8]
mov eax, dword [ebp + 8]
pop ecx
sub eax, dword [ebp - 0x14]
mov ecx, dword [ebp - 0x1c]
js 0x409ae3
mov edx, ecx
imul edx, edx, 0x15180
cmp eax, edx
jg 0x409ae3
push 1
push 0
call fcn.0040ac76
mov ecx, eax
call fcn.0040ad7a
and dword [ebp - 8], 0
jmp 0x409b04
imul ecx, ecx, 0x15180
cmp eax, ecx
jle 0x409b04
and dword [ebp - 0x10], 0
lea eax, [ebp - 0x10]
push esi
push eax
push esi
push str.ShowTipCount
push ebx
push edi
call dword [0x40d254]
xor eax, eax
cmp dword [0x411d50], eax
jne 0x409b1b
cmp dword [ebp - 0x20], eax
jne 0x409b18
cmp dword [ebp - 0x28], eax
je 0x409b1b
mov dword [ebp - 8], eax
mov eax, dword [ebp - 8]
pop edi
pop esi
pop ebx
leave
ret 4