Function at 0x452830
Capabilities:
Check os version
Query or enumerate registry value

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x1f0
mov eax, dword [0x5c0c70]
xor eax, ebp
mov dword [ebp - 0x10], eax
cmp dword [0x5c30fc], 0
je 0x452856
mov eax, dword [0x5c30fc]
jmp 0x452bb0
mov dword [ebp - 8], 0
mov dword [ebp - 0xc], 1
push 0x11c
push 0
lea eax, [ebp - 0x130]
push eax
call fcn.0053ef70
add esp, 0xc
mov dword [ebp - 0x130], 0x11c
lea ecx, [ebp - 0x130]
push ecx
call dword [sym.imp.KERNEL32.dll_GetVersionExW]
mov dword [ebp - 4], eax
cmp dword [ebp - 4], 0
jne 0x4528bd
mov dword [ebp - 0x130], 0x114
lea edx, [ebp - 0x130]
push edx
call dword [sym.imp.KERNEL32.dll_GetVersionExW]
test eax, eax
jne 0x4528bd
mov eax, dword [ebp - 0xc]
jmp 0x452bb0
cmp dword [ebp - 4], 0
je 0x4528ea
movzx eax, byte [ebp - 0x16]
cmp eax, 1
jne 0x4528d5
mov dword [ebp - 8], 0
jmp 0x4528e5
movzx ecx, byte [ebp - 0x16]
cmp ecx, 3
jne 0x4528e5
mov dword [ebp - 8], 1
jmp 0x45298d
lea edx, [ebp - 0x1d4]
push edx
push 1
push 0
push 0x582c90
push reloc.OLEAUT32.dll_SysReAllocString
call dword [sym.imp.ADVAPI32.dll_RegOpenKeyExW]
lea eax, [ebp - 0x1d8]
push eax
lea ecx, [ebp - 0x1d0]
push ecx
push 0
push 0
push 0x582c78
mov edx, dword [ebp - 0x1d4]
push edx
call dword [sym.imp.ADVAPI32.dll_RegQueryValueExW]
mov eax, dword [ebp - 0x1d4]
push eax
call dword [sym.imp.ADVAPI32.dll_RegCloseKey]
lea ecx, [ebp - 0x1d0]
push ecx
push 0x582c6c
call dword [sym.imp.KERNEL32.dll_lstrcmpiW]
test eax, eax
jne 0x452953
mov dword [ebp - 8], 0
lea edx, [ebp - 0x1d0]
push edx
push 0x582c58
call dword [sym.imp.KERNEL32.dll_lstrcmpiW]
test eax, eax
jne 0x452970
mov dword [ebp - 8], 1
lea eax, [ebp - 0x1d0]
push eax
push 0x582c44
call dword [sym.imp.KERNEL32.dll_lstrcmpiW]
test eax, eax
jne 0x45298d
mov dword [ebp - 8], 1
mov ecx, dword [ebp - 0x120]
mov dword [ebp - 0x1f0], ecx
cmp dword [ebp - 0x1f0], 0
je 0x452b9d
cmp dword [ebp - 0x1f0], 1
je 0x452b4c
cmp dword [ebp - 0x1f0], 2
je 0x4529c1
jmp 0x452ba4
cmp dword [ebp - 0x12c], 4
ja 0x4529d6
mov dword [ebp - 0xc], 6
jmp 0x452b4a
cmp dword [ebp - 0x12c], 5
jne 0x4529f4
cmp dword [ebp - 0x128], 0
jne 0x4529f4
mov dword [ebp - 0xc], 0xb
jmp 0x452b4a
cmp dword [ebp - 0x12c], 5
jne 0x452a12
cmp dword [ebp - 0x128], 1
jne 0x452a12
mov dword [ebp - 0xc], 0xd
jmp 0x452b4a
cmp dword [ebp - 0x12c], 5
jne 0x452a30
cmp dword [ebp - 0x128], 2
jne 0x452a30
mov dword [ebp - 0xc], 0xf
jmp 0x452b4a
cmp dword [ebp - 0x12c], 6
jne 0x452a5d
cmp dword [ebp - 0x128], 0
jne 0x452a5d
cmp dword [ebp - 8], 0
je 0x452a51
mov dword [ebp - 0xc], 0x15
jmp 0x452a58
mov dword [ebp - 0xc], 0x13
jmp 0x452b4a
cmp dword [ebp - 0x12c], 6
jne 0x452a8a
cmp dword [ebp - 0x128], 1
jne 0x452a8a
cmp dword [ebp - 8], 0
je 0x452a7e
mov dword [ebp - 0xc], 0x15
jmp 0x452a85
mov dword [ebp - 0xc], 0x17
jmp 0x452b4a
cmp dword [ebp - 0x12c], 6
jne 0x452b1f
cmp dword [ebp - 0x128], 2
jne 0x452b1f
cmp dword [ebp - 8], 0
je 0x452aaf
mov dword [ebp - 0xc], 0x1c
jmp 0x452ab6
mov dword [ebp - 0xc], 0x1b
push 0x582c3c
push ecx
mov ecx, esp
push str.CurrentVersion
call fcn.0041c8a0
push ecx
mov ecx, esp
push str.SOFTWAREMicrosoftWindows_NTCurrentVersion
call fcn.0041c8a0
push ecx
mov ecx, esp
push 0x582b98
call fcn.0041c8a0
lea edx, [ebp - 0x1ec]
push edx
call fcn.00452bc0
add esp, 0x10
push eax
call fcn.0041cac0
add esp, 8
mov byte [ebp - 0x1d9], al
lea ecx, [ebp - 0x1ec]
call fcn.0040f740
movzx eax, byte [ebp - 0x1d9]
test eax, eax
je 0x452b1d
mov dword [ebp - 0xc], 0x1e
jmp 0x452b4a
cmp dword [ebp - 0x12c], 6
jne 0x452b3a
cmp dword [ebp - 0x128], 3
jne 0x452b3a
mov dword [ebp - 0xc], 0x1e
jmp 0x452b4a
cmp dword [ebp - 0x12c], 6
jb 0x452b4a
mov dword [ebp - 0xc], 0x1f
jmp 0x452ba4
cmp dword [ebp - 0x12c], 4
jne 0x452b67
cmp dword [ebp - 0x128], 0
jne 0x452b67
mov dword [ebp - 0xc], 3
jmp 0x452b9b
cmp dword [ebp - 0x12c], 4
jne 0x452b82
cmp dword [ebp - 0x128], 0xa
jne 0x452b82
mov dword [ebp - 0xc], 8
jmp 0x452b9b
cmp dword [ebp - 0x12c], 4
jne 0x452b9b
cmp dword [ebp - 0x128], 0x5a
jne 0x452b9b
mov dword [ebp - 0xc], 0xa
jmp 0x452ba4
mov dword [ebp - 0xc], 2
mov ecx, dword [ebp - 0xc]
mov dword [0x5c30fc], ecx
mov eax, dword [ebp - 0xc]
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.0053ea90
mov esp, ebp
pop ebp
ret