Function at 0x420654
Capabilities:
Check os version

Disassembly:
push 0x350
mov eax, 0x590a75
call fcn.005892d1
mov eax, dword [ebp + 8]
xor ebx, ebx
push 0x118
mov dword [ebp - 0x338], eax
mov dword [ebp - 0x35c], eax
lea eax, [ebp - 0x330]
push ebx
mov dword [ebp - 0x354], ebx
push eax
mov dword [ebp - 4], ebx
mov dword [ebp - 0x334], 0x11c
call fcn.00434140
add esp, 0xc
lea eax, [ebp - 0x334]
push eax
call dword [sym.imp.KERNEL32.dll_GetVersionExW]
call fcn.0041ca60
test al, al
je 0x4206c4
push eax
pop ebp
push ebx
push ecx
pop esp
push edi
pop ebx
pop edx
push edx
push edx
pop esi
pop edi
push ebp
pop edi
pop edi
push edi
xor ebx, ebx
mov ecx, dword [ebp - 0x338]
push 0x60dbc0
call fcn.00402db0
mov eax, dword [ebp - 0x330]
mov dword [ebp - 0x350], eax
movzx eax, byte [ebp - 0x21a]
mov dword [ebp - 0x358], eax
mov eax, dword [ebp - 0x328]
mov dword [ebp - 0x348], eax
mov eax, dword [ebp - 0x32c]
mov dword [ebp - 4], ebx
mov dword [ebp - 0x354], 1
mov dword [ebp - 0x340], ebx
mov dword [ebp - 0x344], ebx
mov dword [ebp - 0x33c], ebx
mov dword [ebp - 0x34c], eax
call fcn.0041ce26
test al, al
je 0x420744
pop ebx
push ebp
push ebx
pop esi
push ecx
push edx
pop ecx
pop esi
pop esp
pop ecx
pop edx
push eax
pop edx
pop esi
pop ecx
push ecx
push esi
pop edi
push esi
push edi
push ebp
push edi
pop ecx
call fcn.0041ce6b
test al, al
je 0x42076c
push ecx
pop ecx
pop ebp
push esp
pop edi
pop ebx
pop esi
pop esi
pop ebp
pop ebp
pop edx
push ebx
pop esi
push esi
push ecx
pop ebp
pop eax
push esp
push edi
pop esi
pop edi
pop edx
push ebx
push edx
pop eax
pop esp
push ebp
push edi
pop esi
push eax
push esp
push 0x5959e8
call dword [sym.imp.KERNEL32.dll_LoadLibraryW]
mov esi, eax
test esi, esi
je 0x4207b8
push str.RtlGetNtVersionNumbers
push esi
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
test eax, eax
je 0x4207b1
lea ecx, [ebp - 0x33c]
push ecx
lea ecx, [ebp - 0x344]
push ecx
lea ecx, [ebp - 0x340]
push ecx
call eax
movzx eax, word [ebp - 0x33c]
mov dword [ebp - 0x33c], eax
push esi
call dword [sym.imp.KERNEL32.dll_FreeLibrary]
call fcn.0041cb2f
test al, al
je 0x4207db
push ecx
pop ebp
push ecx
push ecx
pop ebx
push edx
pop edx
pop esi
push edx
push ebx
push esi
pop edx
pop eax
push edx
pop edi
pop ebp
pop ebx
push ebx
pop edx
push esi
pop eax
push ebp
push ebp
pop edx
pop ebx
push esi
call fcn.0041d093
test al, al
je 0x4207ff
push esp
push ebx
push ebp
pop edx
pop edi
push esi
pop edi
pop ebx
pop esi
push edx
push eax
push ebx
pop eax
push edx
push ebp
pop esi
push edi
push esi
push ecx
pop esp
push ecx
pop esi
push ecx
pop eax
push edi
push ebx
pop edi
mov eax, dword [ebp - 0x350]
cmp eax, 5
jne 0x420831
mov eax, dword [ebp - 0x34c]
test eax, eax
je 0x420904
cmp eax, 1
jne 0x420827
mov esi, str.WindowsXP
jmp 0x4208f0
mov esi, str.WindowsServer2003
jmp 0x4208f0
cmp eax, 6
jne 0x4208da
mov eax, dword [ebp - 0x34c]
sub eax, 0
je 0x4208c3
sub eax, 1
je 0x4208bc
sub eax, 1
jne 0x420904
mov ecx, dword [ebp - 0x348]
cmp ecx, 0x1ebb
jne 0x42086b
mov esi, str.Windows8
jmp 0x4208f0
lea eax, [ecx - 0x1ee6]
cmp eax, 0x25
jbe 0x420861
cmp ecx, 0x1f13
je 0x420861
cmp dword [ebp - 0x340], 0xa
jne 0x4208a3
cmp dword [ebp - 0x344], 0
jne 0x420904
cmp dword [ebp - 0x33c], 0x4e20
jae 0x4208eb
mov esi, str.Windows10
jmp 0x4208f0
cmp dword [ebp - 0x340], 6
jne 0x420904
cmp dword [ebp - 0x344], 3
jne 0x420904
mov esi, str.Windows8.1
jmp 0x4208f0
mov esi, str.Windows7
jmp 0x4208f0
cmp dword [ebp - 0x358], 1
jne 0x4208d3
mov esi, str.WindowsVista
jmp 0x4208f0
mov esi, str.WindowsServer2008
jmp 0x4208f0
cmp eax, 0xa
jne 0x420904
cmp dword [ebp - 0x348], 0x4e20
jb 0x420904
mov esi, str.Windows11
push esi
call fcn.00443739
pop ecx
mov ecx, dword [ebp - 0x338]
push eax
push esi
call fcn.00403020
call fcn.0041cb2f
test al, al
je 0x420927
push ecx
pop ebp
push ecx
push ecx
pop ebx
push edx
pop edx
pop esi
push edx
push ebx
push esi
pop edx
pop eax
push edx
pop edi
pop ebp
pop ebx
push ebx
pop edx
push esi
pop eax
push ebp
push ebp
pop edx
pop ebx
push esi
call fcn.0041d093
test al, al
je 0x42094b
push esp
push ebx
push ebp
pop edx
pop edi
push esi
pop edi
pop ebx
pop esi
push edx
push eax
push ebx
pop eax
push edx
push ebp
pop esi
push edi
push esi
push ecx
pop esp
push ecx
pop esi
push ecx
pop eax
push edi
push ebx
pop edi
mov ebx, dword [ebp - 0x338]
mov ecx, ebx
push 0x60dbc0
call fcn.0041f5a5
test eax, eax
jne 0x4209c5
push 0x208
xor esi, esi
lea eax, [ebp - 0x218]
push esi
push eax
call fcn.00434140
push dword [ebp - 0x348]
mov eax, dword [ebp - 0x350]
push dword [ebp - 0x34c]
push eax
lea eax, [ebp - 0x218]
push str.Windows_d._d._d
push eax
call fcn.004048f0
add esp, 0x20
cmp word [ebp - 0x218], si
jne 0x4209a9
mov eax, esi
jmp 0x4209b6
lea eax, [ebp - 0x218]
push eax
call fcn.00443739
pop ecx
push eax
lea eax, [ebp - 0x218]
mov ecx, ebx
push eax
call fcn.00403020
call fcn.0041cd57
test al, al
je 0x4209ed
pop ebx
pop esi
push edx
push edi
pop edi
push ecx
push eax
push ebp
push ebx
push edi
push eax
pop ebp
push edx
pop esi
push ebx
push esp
pop esi
pop ebx
pop edi
push ecx
pop esp
push eax
push ecx
push edx
pop ebx
pop esi
pop eax
push esp
pop edx
pop esp
pop esi
call fcn.0041cc88
test al, al
je 0x420a07
push eax
push esp
pop eax
push esp
push eax
push edx
pop eax
pop ebp
pop eax
push esi
pop edi
push eax
pop edx
push esp
push edx
push ebp
push edx
call fcn.0041ca60
test al, al
je 0x420a28
push ebp
pop ebp
push ecx
push edx
pop edi
push edi
push eax
push esp
pop esi
push esp
pop ebx
pop esp
push edx
pop ecx
push edi
push esi
pop edi
push edi
pop edi
pop ebp
push ebx
push esp
pop esi
push esp
cmp dword [ebp + 0xc], 0
je 0x420a5c
cmp word [ebp - 0x320], 0
jne 0x420a3c
xor eax, eax
jmp 0x420a49
lea eax, [ebp - 0x320]
push eax
call fcn.00443739
pop ecx
mov ecx, dword [ebp - 0x338]
push eax
lea eax, [ebp - 0x320]
push eax
call fcn.004034d0
mov eax, dword [ebp - 0x338]
call fcn.0058928c
ret