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

Disassembly:
push rbp
lea rbp, [rsp - 0x80]
sub rsp, 0x180
mov rax, qword [0x14003d010]
xor rax, rsp
mov qword [rbp + 0x70], rax
xor edx, edx
lea rcx, [rsp + 0x54]
mov r8d, 0x118
call fcn.140008640
lea rcx, [rsp + 0x50]
mov dword [rsp + 0x50], 0x11c
call qword [sym.imp.KERNEL32.dll_GetVersionExW]
test eax, eax
jne 0x140004a88
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 0x140004c81
sub eax, 1
je 0x140004c31
cmp eax, 1
je 0x140004ad9
lea rcx, str.unkown_windows_version_n
jmp 0x140004c88
cmp dword [rsp + 0x54], 0xa
jne 0x140004b08
cmp dword [rsp + 0x58], 0
jne 0x140004c8d
cmp dword [rsp + 0x5c], 0x55f0
lea rcx, str.Windows_10
jb 0x140004b03
lea rcx, str.Windows_11
call fcn.1400012c0
cmp dword [rsp + 0x54], 6
jne 0x140004bb9
mov eax, dword [rsp + 0x58]
cmp eax, 3
jne 0x140004b42
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 0x140004bb9
mov eax, dword [rsp + 0x58]
cmp eax, 2
jne 0x140004b6d
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 0x140004bb9
mov eax, dword [rsp + 0x58]
cmp eax, 1
jne 0x140004b98
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 0x140004bb9
mov eax, dword [rsp + 0x58]
test eax, eax
jne 0x140004c8d
cmp byte [rbp + 0x6a], 1
lea rcx, str.Windows_Vista
je 0x140004bb4
lea rcx, str.Windows_Server_2008
call fcn.1400012c0
cmp dword [rsp + 0x54], 5
jne 0x140004c21
mov eax, dword [rsp + 0x58]
cmp eax, 2
jne 0x140004bf5
cmp byte [rbp + 0x6a], 1
jne 0x140004bde
cmp word [rsp + 0x20], 9
lea rcx, str.Microsoft_Windows_XP_Professional_x64_Edition
je 0x140004be5
lea rcx, str.Microsoft_Windows_Server_2003_
call fcn.1400012c0
cmp dword [rsp + 0x54], 5
jne 0x140004c21
mov eax, dword [rsp + 0x58]
cmp eax, 1
jne 0x140004c11
lea rcx, str.Microsoft_Windows_XP
call fcn.1400012c0
cmp dword [rsp + 0x54], 5
jne 0x140004c21
mov eax, dword [rsp + 0x58]
test eax, eax
jne 0x140004c8d
lea rcx, str.Microsoft_Windows_2000
call fcn.1400012c0
cmp dword [rsp + 0x54], 4
ja 0x140004c8d
lea rcx, str.Microsoft_Windows_NT
jmp 0x140004c88
cmp dword [rsp + 0x54], 4
jne 0x140004c8d
mov eax, dword [rsp + 0x58]
test eax, eax
jne 0x140004c57
lea rcx, str.Microsoft_Windows_95
call fcn.1400012c0
cmp dword [rsp + 0x54], 4
jne 0x140004c8d
mov eax, dword [rsp + 0x58]
cmp eax, 0xa
jne 0x140004c73
lea rcx, str.Microsoft_Windows_98
call fcn.1400012c0
cmp dword [rsp + 0x54], 4
jne 0x140004c8d
mov eax, dword [rsp + 0x58]
cmp eax, 0x5a
jne 0x140004c8d
lea rcx, str.Microsoft_Windows_Millennium_Edition_n
jmp 0x140004c88
lea rcx, str.Microsoft_Win32s_n
call fcn.1400012c0
mov al, 1
mov rcx, qword [rbp + 0x70]
xor rcx, rsp
call fcn.1400053f0
add rsp, 0x180
pop rbp
ret