Function at 0x402dd0
Capabilities:
Contain obfuscated stackstrings
Query or enumerate registry value
Set registry value

Disassembly:
lea ecx, [esp + 4]
and esp, 0xfffffff0
push dword [ecx - 4]
push ebp
mov ebp, esp
push edi
push esi
push ebx
push ecx
sub esp, 0x2b8
mov eax, dword [ecx + 4]
mov ebx, dword [ecx]
mov dword [ebp - 0x248], 0x6f0053
mov dword [ebp - 0x244], 0x740066
mov edx, dword [ecx + 8]
xor ecx, ecx
mov dword [ebp - 0x240], 0x610077
mov dword [ebp - 0x23c], 0x650072
mov dword [ebp - 0x238], 0x4d005c
mov dword [ebp - 0x234], 0x630069
mov dword [ebp - 0x230], 0x6f0072
mov dword [ebp - 0x22c], 0x6f0073
mov dword [ebp - 0x228], 0x740066
mov dword [ebp - 0x224], 0x4f005c
mov dword [ebp - 0x220], 0x45004c
mov dword [ebp - 0x21c], 0x5c
mov dword [ebp - 0x288], 0x6e0045
mov dword [ebp - 0x284], 0x620061
mov dword [ebp - 0x280], 0x65006c
mov dword [ebp - 0x27c], 0x430044
mov dword [ebp - 0x278], 0x4d004f
mov word [ebp - 0x274], cx
mov dword [ebp - 0x270], 0x6e0045
mov dword [ebp - 0x26c], 0x620061
mov dword [ebp - 0x268], 0x65006c
mov dword [ebp - 0x264], 0x650052
mov dword [ebp - 0x260], 0x6f006d
mov dword [ebp - 0x25c], 0x650074
mov dword [ebp - 0x258], 0x6f0043
mov dword [ebp - 0x254], 0x6e006e
mov dword [ebp - 0x250], 0x630065
mov dword [ebp - 0x24c], 0x74
mov dword [ebp - 0x290], 0x59
mov dword [ebp - 0x28c], 0x4e
cmp eax, 0x110
je 0x402f70
cmp eax, 0x111
je 0x402f40
lea esp, [ebp - 0x10]
xor eax, eax
pop ecx
pop ebx
pop esi
pop edi
pop ebp
lea esp, [ecx - 4]
ret 0x10
movzx eax, dx
cmp dx, 1
je 0x4030b8
cmp eax, 2
jne 0x402f28
mov dword [esp + 4], 2
mov dword [esp], ebx
call sym._EndDialog_8
sub esp, 8
jmp 0x4030a0
lea edi, [ebp - 0x298]
lea esi, [ebp - 0x248]
mov dword [esp], 0x80000002
mov dword [esp + 8], edi
mov dword [esp + 4], esi
call sym._RegOpenKeyW_12
sub esp, 0xc
test eax, eax
jne 0x403280
lea edx, [ebp - 0x288]
lea edi, [ebp - 0x294]
mov dword [ebp - 0x294], 0x200
lea esi, [ebp - 0x218]
mov dword [esp + 8], edx
mov dword [esp + 0x18], edi
mov dword [esp + 0x14], esi
mov dword [esp + 0x10], 0
mov dword [esp + 0xc], 2
mov dword [esp + 4], 0
mov eax, dword [ebp - 0x298]
mov dword [esp], eax
call sym._RegGetValueW_28
lea edx, [ebp - 0x288]
sub esp, 0x1c
test eax, eax
jne 0x403230
xor eax, eax
cmp word [ebp - 0x218], 0x59
mov dword [esp], ebx
sete al
mov dword [esp + 4], 0x3f3
mov dword [esp + 8], eax
call sym._CheckDlgButton_12
mov dword [ebp - 0x294], 0x200
sub esp, 0xc
mov dword [esp + 0x14], esi
lea esi, [ebp - 0x270]
mov dword [esp + 0x18], edi
mov dword [esp + 0x10], 0
mov dword [esp + 0xc], 2
mov dword [esp + 8], esi
mov dword [esp + 4], 0
mov eax, dword [ebp - 0x298]
mov dword [esp], eax
call sym._RegGetValueW_28
sub esp, 0x1c
test eax, eax
jne 0x4031e0
xor eax, eax
cmp word [ebp - 0x218], 0x59
mov dword [esp], ebx
sete al
mov dword [esp + 4], 0x3f4
mov dword [esp + 8], eax
call sym._CheckDlgButton_12
mov eax, dword [ebp - 0x298]
sub esp, 0xc
mov dword [esp], eax
call sym._RegCloseKey_4
sub esp, 4
lea esp, [ebp - 0x10]
mov eax, 1
pop ecx
pop ebx
pop esi
pop edi
pop ebp
lea esp, [ecx - 4]
ret 0x10
lea eax, [ebp - 0x298]
lea edi, [ebp - 0x290]
mov dword [ebp - 0x294], 4
mov dword [esp + 8], eax
lea eax, [ebp - 0x248]
lea esi, [ebp - 0x28c]
mov dword [esp + 4], eax
mov dword [esp], 0x80000002
call sym._RegOpenKeyW_12
mov edx, dword [ebp - 0x294]
sub esp, 0xc
mov dword [ebp - 0x29c], edx
mov dword [esp + 4], 0x3f3
mov dword [esp], ebx
call sym._IsDlgButtonChecked_8
mov edx, dword [ebp - 0x29c]
sub esp, 8
cmp eax, 1
mov eax, edi
cmovne eax, esi
mov dword [esp + 0x14], edx
mov dword [esp + 0xc], 1
mov dword [esp + 0x10], eax
lea eax, [ebp - 0x288]
mov dword [esp + 8], 0
mov dword [esp + 4], eax
mov eax, dword [ebp - 0x298]
mov dword [esp], eax
call sym._RegSetValueExW_24
mov edx, dword [ebp - 0x294]
sub esp, 0x18
mov dword [ebp - 0x29c], edx
mov dword [esp + 4], 0x3f4
mov dword [esp], ebx
call sym._IsDlgButtonChecked_8
mov edx, dword [ebp - 0x29c]
sub esp, 8
cmp eax, 1
lea eax, [ebp - 0x270]
cmove esi, edi
mov dword [esp + 0x14], edx
mov dword [esp + 0xc], 1
mov dword [esp + 0x10], esi
mov dword [esp + 8], 0
mov dword [esp + 4], eax
mov eax, dword [ebp - 0x298]
mov dword [esp], eax
call sym._RegSetValueExW_24
mov eax, dword [ebp - 0x298]
sub esp, 0x18
mov dword [esp], eax
call sym._RegCloseKey_4
sub esp, 4
mov dword [esp + 4], 1
mov dword [esp], ebx
call sym._EndDialog_8
sub esp, 8
jmp 0x4030a0
mov dword [ebp - 0x294], 4
lea eax, [ebp - 0x290]
mov dword [esp + 0x14], 4
mov dword [esp + 0x10], eax
mov dword [esp + 0xc], 1
mov dword [esp + 8], 0
mov dword [esp + 4], esi
mov eax, dword [ebp - 0x298]
mov dword [esp], eax
call sym._RegSetValueExW_24
sub esp, 0x18
jmp 0x40306b
mov dword [ebp - 0x294], 4
lea eax, [ebp - 0x290]
mov dword [esp + 0x14], 4
mov dword [esp + 0x10], eax
mov dword [esp + 0xc], 1
mov dword [esp + 8], 0
mov dword [esp + 4], edx
mov eax, dword [ebp - 0x298]
mov dword [esp], eax
call sym._RegSetValueExW_24
sub esp, 0x18
jmp 0x402ffa
mov dword [esp + 8], edi
mov dword [esp + 4], esi
mov dword [esp], 0x80000002
call sym._RegCreateKeyW_12
sub esp, 0xc
jmp 0x402f9b