Function at 0x406b5a
Capabilities:
Check os version

Disassembly:
push 0x344
mov eax, 0x410466
call fcn.00402b60
xor ebx, ebx
mov dword [ebp - 0x220], ebx
mov dword [ebp - 0x21c], ebx
mov dword [ebp - 0x218], ebx
mov dword [ebp - 0x214], ebx
lea eax, [ebp - 0x210]
mov dword [ebp - 0x214], eax
mov dword [ebp - 0x21c], 0x200
mov dword [ebp - 4], ebx
push 2
pop edx
mov dword [ebp - 0x220], edx
mov eax, dword [ebp - 0x214]
xor ecx, ecx
mov word [eax], cx
mov dword [ebp - 4], edx
lea ecx, [ebp - 0x220]
call fcn.00405013
push 0x406f28
lea ecx, [ebp - 0x220]
call fcn.0040481c
lea edx, [ebp - 0x33c]
mov ecx, 0x407078
mov dword [ebp - 0x33c], ebx
call fcn.00407bec
mov esi, dword [ebp - 0x33c]
mov edi, ebx
mov dword [ebp - 0x350], esi
mov dword [ebp - 0x34c], edi
test esi, esi
je 0x406c03
inc edi
mov dword [ebp - 0x34c], edi
mov byte [ebp - 4], 6
test esi, esi
je 0x406c27
push 0x40401c
lea ecx, [ebp - 0x220]
call fcn.0040481c
push esi
lea ecx, [ebp - 0x220]
call fcn.0040481c
push 0x406f44
lea ecx, [ebp - 0x220]
call fcn.0040481c
mov dword [ebp - 0x33c], ebx
lea ecx, [ebp - 0x220]
call fcn.0040bb9a
mov edx, dword [ebp - 0x214]
push ecx
lea eax, [ebp - 0x33c]
push eax
push 0x406f54
call fcn.0040d6c0
test eax, eax
je 0x406ca1
cmp dword [ebp - 0x33c], 0
je 0x406ca1
mov byte [ebp - 4], 2
test edi, edi
je 0x406c82
mov ecx, esi
call fcn.004010b8
mov dword [ebp - 0x34c], ebx
or dword [ebp - 4], 0xffffffff
test byte [ebp - 0x218], 8
je 0x406c9a
mov ecx, dword [ebp - 0x214]
call fcn.004010b8
mov al, 1
jmp 0x406ef6
lea ecx, [ebp - 0x220]
call fcn.00405013
push 0x406efc
lea ecx, [ebp - 0x220]
call fcn.0040481c
push 0x406f18
lea ecx, [ebp - 0x220]
call fcn.0040481c
lea ecx, [ebp - 0x220]
call fcn.0040bb9a
mov edx, dword [ebp - 0x214]
push ecx
lea eax, [ebp - 0x33c]
push eax
push 0x406f6c
call fcn.0040d6c0
test eax, eax
je 0x406d1a
cmp dword [ebp - 0x33c], 0
je 0x406d1a
mov byte [ebp - 4], 2
test edi, edi
je 0x406c82
mov ecx, esi
call fcn.004010b8
mov dword [ebp - 0x34c], ebx
jmp 0x406c82
lea eax, [ebp - 0x338]
xor ebx, ebx
push eax
inc ebx
mov dword [ebp - 0x338], 0x114
call dword [sym.imp.KERNEL32.dll_GetVersionExW]
test eax, eax
jne 0x406d3d
call fcn.0040b689
cmp dword [ebp - 0x334], 5
ja 0x406d51
jne 0x406d56
cmp dword [ebp - 0x330], 0
jbe 0x406d56
mov ebx, 0x101
and dword [ebp - 0x340], 0
mov byte [ebp - 4], 0x11
lea eax, [ebp - 0x340]
push eax
push ebx
push ecx
mov edx, 0x406f88
call fcn.004081dc
test eax, eax
jne 0x406df5
xor ecx, ecx
mov dword [ebp - 0x33c], ecx
mov dword [ebp - 0x348], ecx
push ecx
push ecx
push ecx
push ecx
lea eax, [ebp - 0x348]
push eax
push ecx
push ecx
lea eax, [ebp - 0x33c]
push eax
push ecx
push ecx
push ecx
push dword [ebp - 0x340]
call dword [sym.imp.ADVAPI32.dll_RegQueryInfoKeyW]
test eax, eax
jne 0x406df5
cmp dword [ebp - 0x33c], eax
jne 0x406dbd
cmp dword [ebp - 0x348], eax
je 0x406df5
mov byte [ebp - 4], 6
cmp dword [ebp - 0x340], 0
je 0x406dd6
push dword [ebp - 0x340]
call dword [sym.imp.ADVAPI32.dll_RegCloseKey]
mov byte [ebp - 4], 2
test edi, edi
je 0x406c82
mov ecx, esi
call fcn.004010b8
and dword [ebp - 0x34c], 0
jmp 0x406c82
and dword [ebp - 0x344], 0
mov byte [ebp - 4], 0x17
lea eax, [ebp - 0x344]
push eax
push ebx
push ecx
mov edx, 0x407000
call fcn.004081dc
test eax, eax
jne 0x406e96
xor ecx, ecx
mov dword [ebp - 0x348], ecx
push ecx
push ecx
push ecx
push ecx
push ecx
push ecx
push ecx
lea eax, [ebp - 0x348]
push eax
push ecx
push ecx
push ecx
push dword [ebp - 0x344]
call dword [sym.imp.ADVAPI32.dll_RegQueryInfoKeyW]
test eax, eax
jne 0x406e96
cmp dword [ebp - 0x348], eax
je 0x406e96
mov byte [ebp - 4], 0x11
mov ebx, dword [sym.imp.ADVAPI32.dll_RegCloseKey]
cmp dword [ebp - 0x344], eax
je 0x406e62
push dword [ebp - 0x344]
call ebx
mov byte [ebp - 4], 6
cmp dword [ebp - 0x340], 0
je 0x406e77
push dword [ebp - 0x340]
call ebx
mov byte [ebp - 4], 2
test edi, edi
je 0x406c82
mov ecx, esi
call fcn.004010b8
and dword [ebp - 0x34c], 0
jmp 0x406c82
mov byte [ebp - 4], 0x11
cmp dword [ebp - 0x344], 0
mov ebx, dword [sym.imp.ADVAPI32.dll_RegCloseKey]
je 0x406eb1
push dword [ebp - 0x344]
call ebx
mov byte [ebp - 4], 6
cmp dword [ebp - 0x340], 0
je 0x406ec6
push dword [ebp - 0x340]
call ebx
mov byte [ebp - 4], 2
test edi, edi
je 0x406edc
mov ecx, esi
call fcn.004010b8
and dword [ebp - 0x34c], 0
or dword [ebp - 4], 0xffffffff
test byte [ebp - 0x218], 8
je 0x406ef4
mov ecx, dword [ebp - 0x214]
call fcn.004010b8
xor al, al
call fcn.00402c20
ret