Function at 0x140004530
Capabilities:
Check os version
Get system information on windows

Disassembly:
push rbp
lea rbp, [rsp - 0x80]
sub rsp, 0x180
mov rax, qword [0x14003e010]
xor rax, rsp
mov qword [rbp + 0x70], rax
xor edx, edx
lea rcx, [rsp + 0x54]
mov r8d, 0x118
call fcn.140008090
lea rcx, [rsp + 0x50]
mov dword [rsp + 0x50], 0x11c
call qword [sym.imp.KERNEL32.dll_GetVersionExW]
test eax, eax
jne 0x140004588
lea rcx, [rsp + 0x50]
mov dword [rsp + 0x50], 0x114
call qword [sym.imp.KERNEL32.dll_GetVersionExW]
xor eax, eax
lea rcx, [rsp + 0x20]
mov qword [rsp + 0x20], rax
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x30], rax
mov qword [rsp + 0x38], rax
mov qword [rsp + 0x40], rax
mov qword [rsp + 0x48], rax
call qword [sym.imp.KERNEL32.dll_GetSystemInfo]
mov eax, dword [rsp + 0x60]
test eax, eax
je 0x140004781
sub eax, 1
je 0x140004731
cmp eax, 1
je 0x1400045d9
lea rcx, str.unkown_windows_version_n
jmp 0x140004788
cmp dword [rsp + 0x54], 0xa
jne 0x140004608
cmp dword [rsp + 0x58], 0
jne 0x14000478d
cmp dword [rsp + 0x5c], 0x55f0
lea rcx, str.Windows_10
jb 0x140004603
lea rcx, str.Windows_11
call fcn.1400012c0
cmp dword [rsp + 0x54], 6
jne 0x1400046b9
mov eax, dword [rsp + 0x58]
cmp eax, 3
jne 0x140004642
cmp byte [rbp + 0x6a], 1
lea rax, str.Windows_Server_2012_R2
lea rcx, str.Windows_8.1
cmovne rcx, rax
call fcn.1400012c0
cmp dword [rsp + 0x54], 6
jne 0x1400046b9
mov eax, dword [rsp + 0x58]
cmp eax, 2
jne 0x14000466d
cmp byte [rbp + 0x6a], 1
lea rax, str.Windows_Server_2012
lea rcx, str.Windows_8
cmovne rcx, rax
call fcn.1400012c0
cmp dword [rsp + 0x54], 6
jne 0x1400046b9
mov eax, dword [rsp + 0x58]
cmp eax, 1
jne 0x140004698
cmp byte [rbp + 0x6a], 1
lea rax, str.Windows_Server_2008_2011
lea rcx, str.Windows_7
cmovne rcx, rax
call fcn.1400012c0
cmp dword [rsp + 0x54], 6
jne 0x1400046b9
mov eax, dword [rsp + 0x58]
test eax, eax
jne 0x14000478d
cmp byte [rbp + 0x6a], 1
lea rcx, str.Windows_Vista
je 0x1400046b4
lea rcx, str.Windows_Server_2008
call fcn.1400012c0
cmp dword [rsp + 0x54], 5
jne 0x140004721
mov eax, dword [rsp + 0x58]
cmp eax, 2
jne 0x1400046f5
cmp byte [rbp + 0x6a], 1
jne 0x1400046de
cmp word [rsp + 0x20], 9
lea rcx, str.Microsoft_Windows_XP_Professional_x64_Edition
je 0x1400046e5
lea rcx, str.Microsoft_Windows_Server_2003_
call fcn.1400012c0
cmp dword [rsp + 0x54], 5
jne 0x140004721
mov eax, dword [rsp + 0x58]
cmp eax, 1
jne 0x140004711
lea rcx, str.Microsoft_Windows_XP
call fcn.1400012c0
cmp dword [rsp + 0x54], 5
jne 0x140004721
mov eax, dword [rsp + 0x58]
test eax, eax
jne 0x14000478d
lea rcx, str.Microsoft_Windows_2000
call fcn.1400012c0
cmp dword [rsp + 0x54], 4
ja 0x14000478d
lea rcx, str.Microsoft_Windows_NT
jmp 0x140004788
cmp dword [rsp + 0x54], 4
jne 0x14000478d
mov eax, dword [rsp + 0x58]
test eax, eax
jne 0x140004757
lea rcx, str.Microsoft_Windows_95
call fcn.1400012c0
cmp dword [rsp + 0x54], 4
jne 0x14000478d
mov eax, dword [rsp + 0x58]
cmp eax, 0xa
jne 0x140004773
lea rcx, str.Microsoft_Windows_98
call fcn.1400012c0
cmp dword [rsp + 0x54], 4
jne 0x14000478d
mov eax, dword [rsp + 0x58]
cmp eax, 0x5a
jne 0x14000478d
lea rcx, str.Microsoft_Windows_Millennium_Edition_n
jmp 0x140004788
lea rcx, str.Microsoft_Win32s_n
call fcn.1400012c0
mov al, 1
mov rcx, qword [rbp + 0x70]
xor rcx, rsp
call fcn.140004ef0
add rsp, 0x180
pop rbp
ret