Function at 0x4031a0
Capabilities:
Query or enumerate registry value

Disassembly:
sub esp, 0xf8
mov ecx, dword [0x488e90]
lea eax, [esp + 0x58]
push ebx
push ebp
push esi
mov esi, dword [sym.imp.USER32.dll_LoadStringA]
push edi
push 0x50
push eax
push 0x33
push ecx
call esi
cmp dword [0x43799c], 4
jne 0x4031e3
mov eax, dword [esp + 0x10c]
lea edx, [esp + 0x68]
push edx
push 0x407
push eax
call dword [sym.imp.USER32.dll_SetDlgItemTextA]
mov edx, dword [0x488e90]
lea ecx, [esp + 0x68]
push 0x50
push ecx
push 0x35
push edx
call esi
mov ebp, dword [esp + 0x110]
mov ebx, dword [sym.imp.USER32.dll_SendMessageA]
mov edi, 0x34
jmp 0x40320f
mov esi, dword [sym.imp.USER32.dll_LoadStringA]
mov ecx, dword [0x488e90]
lea eax, [esp + 0xb8]
push 0x50
push eax
push edi
push ecx
call esi
cmp dword [0x43799c], 4
je 0x403264
lea esi, [esp + 0x68]
lea eax, [esp + 0xb8]
mov dl, byte [eax]
mov cl, dl
cmp dl, byte [esi]
jne 0x40325b
test cl, cl
je 0x403257
mov dl, byte [eax + 1]
mov cl, dl
cmp dl, byte [esi + 1]
jne 0x40325b
add eax, 2
add esi, 2
test cl, cl
jne 0x403237
xor eax, eax
jmp 0x403260
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
je 0x403276
lea eax, [esp + 0xb8]
push eax
push 0
push 0x143
push ebp
call ebx
inc edi
cmp edi, 0x3a
jle 0x403209
lea ecx, [esp + 0x10]
push ecx
push 0x20019
push 0
push str.SOFTWARELXSUPMON
push 0x80000002
call dword [sym.imp.ADVAPI32.dll_RegOpenKeyExA]
test eax, eax
jne 0x4033ea
mov ecx, dword [esp + 0x10]
lea edx, [esp + 0x14]
lea eax, [esp + 0x18]
push edx
push eax
push 0
push 0
push str.UserWantsToBeReminded
push ecx
mov dword [esp + 0x2c], 0x50
call dword [sym.imp.ADVAPI32.dll_RegQueryValueExA]
test eax, eax
jne 0x4033a0
lea edx, [esp + 0x18]
test edx, edx
je 0x403383
mov esi, 0x426b5c
lea eax, [esp + 0x18]
mov dl, byte [eax]
mov cl, dl
cmp dl, byte [esi]
jne 0x403307
test cl, cl
je 0x403303
mov dl, byte [eax + 1]
mov cl, dl
cmp dl, byte [esi + 1]
jne 0x403307
add eax, 2
add esi, 2
test cl, cl
jne 0x4032e3
xor eax, eax
jmp 0x40330c
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
jne 0x40333f
mov eax, dword [0x43799c]
push 0x50
cmp eax, 4
jne 0x40332c
mov ecx, dword [0x488e90]
lea eax, [esp + 0x1c]
push eax
push 0x35
push ecx
jmp 0x403339
mov eax, dword [0x488e90]
lea edx, [esp + 0x1c]
push edx
push 0x34
push eax
call dword [sym.imp.USER32.dll_LoadStringA]
mov eax, dword [0x43799c]
test eax, eax
je 0x403366
cmp eax, 1
je 0x403352
cmp eax, 2
jne 0x40337c
lea eax, [esp + 0x18]
push eax
push 0xffffffffffffffff
push 0x14c
push ebp
call ebx
cmp eax, 0xffffffff
jne 0x40337c
mov edx, dword [0x488e90]
lea ecx, [esp + 0x18]
push 0x50
push ecx
push 0x34
push edx
call dword [sym.imp.USER32.dll_LoadStringA]
lea eax, [esp + 0x18]
push eax
jmp 0x4033d5
mov edx, dword [0x488e90]
lea ecx, [esp + 0x68]
push 0x50
push ecx
push 0x34
push edx
call dword [sym.imp.USER32.dll_LoadStringA]
lea eax, [esp + 0x68]
push eax
jmp 0x4033d5
mov eax, dword [0x43799c]
push 0x50
cmp eax, 4
jne 0x4033bc
mov edx, dword [0x488e90]
lea ecx, [esp + 0x6c]
push ecx
push 0x35
push edx
jmp 0x4033ca
mov ecx, dword [0x488e90]
lea eax, [esp + 0x6c]
push eax
push 0x34
push ecx
call dword [sym.imp.USER32.dll_LoadStringA]
lea edx, [esp + 0x68]
push edx
push 0xffffffffffffffff
push 0x14c
push ebp
call ebx
push 0
push eax
push 0x14e
push ebp
call ebx
mov eax, dword [esp + 0x10]
push eax
call dword [sym.imp.ADVAPI32.dll_RegCloseKey]
pop edi
pop esi
pop ebp
pop ebx
add esp, 0xf8
ret