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

Disassembly:
push 0x154
mov eax, 0x50339d
call fcn.004d2fe8
xor edi, edi
cmp dword [0x54fb84], edi
je 0x45fa21
xor eax, eax
inc eax
call fcn.004d306b
ret
mov esi, 0x11c
push esi
lea eax, [ebp - 0x130]
push edi
push eax
call fcn.004d7710
add esp, 0xc
lea eax, [ebp - 0x134]
push str.360Base.dll
push eax
mov dword [ebp - 0x130], esi
mov dword [ebp - 0x138], edi
call fcn.0045b262
mov dword [ebp - 4], edi
push dword [ebp - 0x134]
call fcn.00407d50
mov ebx, dword [sym.imp.KERNEL32.dll_GetProcAddress]
add esp, 0xc
test eax, eax
je 0x45fa88
lea eax, [ebp - 0x138]
push eax
lea eax, [ebp - 0x130]
push eax
call fcn.004600e4
pop ecx
pop ecx
test eax, eax
jne 0x45fad1
push str.RtlGetVersion
push str.NtDll.dll
call dword [sym.imp.KERNEL32.dll_GetModuleHandleW]
push eax
call ebx
cmp eax, edi
je 0x45fad1
lea ecx, [ebp - 0x130]
push ecx
call eax
test eax, eax
je 0x45fad1
lea eax, [ebp - 0x130]
push eax
call dword [sym.imp.KERNEL32.dll_GetVersionExW]
test eax, eax
jne 0x45fad1
xor esi, esi
lea ecx, [ebp - 0x134]
call fcn.004087f0
mov eax, esi
jmp 0x45fa1b
mov ax, word [ebp - 0x1c]
mov dword [0x54e864], edi
mov esi, 0x514b40
mov edx, esi
mov edi, 0x54f4c8
mov word [0x54e86c], ax
call fcn.004085a0
mov eax, dword [ebp - 0x120]
xor ecx, ecx
sub eax, ecx
je 0x45fcb3
dec eax
je 0x45fc6e
dec eax
je 0x45fb13
mov edx, esi
jmp 0x45fcc2
mov eax, dword [ebp - 0x12c]
cmp eax, 4
ja 0x45fb32
mov dword [0x54e864], 0x40
mov edx, str.Windows_NT
jmp 0x45fcc2
cmp eax, 5
jne 0x45fb91
cmp dword [ebp - 0x128], ecx
jne 0x45fb53
mov dword [0x54e864], 0x80
mov edx, str.Windows_2000
jmp 0x45fcc2
cmp dword [ebp - 0x128], 1
jne 0x45fb70
mov dword [0x54e864], 0x100
mov edx, str.Windows_XP
jmp 0x45fcc2
cmp dword [ebp - 0x128], 2
jne 0x45fcc7
mov dword [0x54e864], 0x200
mov edx, str.Windows_2003
jmp 0x45fcc2
cmp eax, 6
jne 0x45fc45
mov eax, dword [ebp - 0x128]
cmp eax, ecx
jne 0x45fbb8
mov dword [0x54e864], 0x400
mov edx, str.Windows_Vista
jmp 0x45fcc2
cmp eax, 1
jne 0x45fbd1
mov dword [0x54e864], 0x800
mov edx, str.Windows_7
jmp 0x45fcc2
cmp eax, 2
jne 0x45fbea
mov dword [0x54e864], 0x1000
mov edx, str.Windows_8
jmp 0x45fcc2
cmp eax, 3
jne 0x45fc03
mov dword [0x54e864], 0x2000
mov edx, str.Windows_8.1
jmp 0x45fcc2
cmp eax, 4
jne 0x45fcc7
cmp dword [ebp - 0x124], 0x2671
je 0x45fc34
cmp dword [ebp - 0x124], 0x2684
je 0x45fc34
cmp dword [ebp - 0x124], 0x2697
jne 0x45fcc7
mov dword [0x54e864], 0x4000
mov edx, str.Windows_10
jmp 0x45fcc2
cmp eax, 0xa
jne 0x45fc58
cmp dword [ebp - 0x124], 0x55ec
jae 0x45fc5d
jmp 0x45fc34
cmp eax, 0xb
jne 0x45fcc7
mov dword [0x54e864], 0x10000
mov edx, str.Windows_11
jmp 0x45fcc2
cmp dword [ebp - 0x12c], 4
jne 0x45fcc7
cmp dword [ebp - 0x128], ecx
jne 0x45fc90
mov dword [0x54e864], 8
mov edx, str.Windows_9x
jmp 0x45fcc2
cmp dword [ebp - 0x128], 0xa
je 0x45fc7f
cmp dword [ebp - 0x128], 0x5a
jne 0x45fcc7
mov dword [0x54e864], 0x20
mov edx, str.Windows_ME
jmp 0x45fcc2
mov dword [0x54e864], 1
mov edx, str.Windows_3.2
call fcn.004085a0
push 9
pop ecx
push 0x51b55c
xor eax, eax
lea edi, [ebp - 0x15c]
push 0x51b570
rep stosd dword es:[edi], eax
call dword [sym.imp.KERNEL32.dll_GetModuleHandleW]
push eax
call ebx
test eax, eax
je 0x45fcf6
lea ecx, [ebp - 0x15c]
push ecx
call eax
jmp 0x45fd03
lea eax, [ebp - 0x15c]
push eax
call dword [sym.imp.KERNEL32.dll_GetSystemInfo]
cmp word [ebp - 0x15c], 9
je 0x45fd2a
cmp word [ebp - 0x15c], 6
je 0x45fd2a
cmp word [ebp - 0x15c], 0
jne 0x45fd34
and dword [0x54e868], 0
jmp 0x45fd34
mov dword [0x54e868], 1
xor esi, esi
inc esi
mov dword [0x54fb84], esi
jmp 0x45fabf