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

Disassembly:
mov qword [rsp + 0x10], rdx
mov qword [rsp + 8], rcx
push rdi
sub rsp, 0x1c0
mov qword [rsp + 0x190], 0xfffffffffffffffe
mov rax, qword [0x18002f0d0]
xor rax, rsp
mov qword [rsp + 0x1b0], rax
mov dword [rsp + 0x188], 0
lea rax, [rsp + 0x30]
mov rdi, rax
xor eax, eax
mov ecx, 0x11c
rep stosb byte [rdi], al
lea rdx, [0x180025d60]
lea rcx, [rsp + 0x20]
call fcn.180001530
nop
mov dword [rsp + 0x30], 0x11c
lea rcx, [rsp + 0x30]
call qword [sym.imp.KERNEL32.dll_GetVersionExW]
test eax, eax
je 0x1800101d4
mov eax, dword [rsp + 0x34]
mov dword [rsp + 0x198], eax
cmp dword [rsp + 0x198], 5
je 0x18000ffb1
cmp dword [rsp + 0x198], 6
je 0x180010053
jmp 0x1800101c3
mov eax, dword [rsp + 0x38]
mov dword [rsp + 0x19c], eax
cmp dword [rsp + 0x19c], 0
je 0x18000ffdc
cmp dword [rsp + 0x19c], 1
je 0x18000ffef
cmp dword [rsp + 0x19c], 2
je 0x180010002
jmp 0x18001004e
lea rdx, [0x180025d70]
lea rcx, [rsp + 0x20]
call fcn.1800015e0
jmp 0x18001004e
lea rdx, [0x180025d7c]
lea rcx, [rsp + 0x20]
call fcn.1800015e0
jmp 0x18001004e
movzx eax, byte [rsp + 0x14a]
cmp eax, 1
jne 0x18001003d
lea rcx, [rsp + 0x150]
call qword [sym.imp.KERNEL32.dll_GetSystemInfo]
movzx eax, word [rsp + 0x150]
cmp eax, 9
jne 0x18001003d
lea rdx, [0x180025d84]
lea rcx, [rsp + 0x20]
call fcn.1800015e0
jmp 0x18001004e
lea rdx, [0x180025d90]
lea rcx, [rsp + 0x20]
call fcn.1800015e0
jmp 0x1800101d4
mov eax, dword [rsp + 0x38]
mov dword [rsp + 0x1a0], eax
cmp dword [rsp + 0x1a0], 0
je 0x180010093
cmp dword [rsp + 0x1a0], 1
je 0x1800100c9
cmp dword [rsp + 0x1a0], 2
je 0x18001014a
cmp dword [rsp + 0x1a0], 3
je 0x18001017d
jmp 0x1800101b0
movzx eax, byte [rsp + 0x14a]
cmp eax, 1
jne 0x1800100b3
lea rdx, [0x180025da0]
lea rcx, [rsp + 0x20]
call fcn.1800015e0
jmp 0x1800100c4
lea rdx, [0x180025db0]
lea rcx, [rsp + 0x20]
call fcn.1800015e0
jmp 0x1800101c1
movzx eax, byte [rsp + 0x14a]
cmp eax, 1
jne 0x180010137
call fcn.1800142d0
test eax, eax
je 0x1800100fa
lea rdx, str.win7_64
lea rcx, [rsp + 0x20]
call fcn.1800015e0
mov qword [rsp + 0x1a8], rax
jmp 0x180010113
lea rdx, [0x180025dd0]
lea rcx, [rsp + 0x20]
call fcn.1800015e0
mov qword [rsp + 0x1a8], rax
mov rax, qword [rsp + 0x1a8]
mov qword [rsp + 0x180], rax
mov rdx, qword [rsp + 0x180]
lea rcx, [rsp + 0x20]
call fcn.180010340
jmp 0x180010148
lea rdx, [0x180025de0]
lea rcx, [rsp + 0x20]
call fcn.1800015e0
jmp 0x1800101c1
movzx eax, byte [rsp + 0x14a]
cmp eax, 1
jne 0x18001016a
lea rdx, str.Win8
lea rcx, [rsp + 0x20]
call fcn.1800015e0
jmp 0x18001017b
lea rdx, [0x180025e00]
lea rcx, [rsp + 0x20]
call fcn.1800015e0
jmp 0x1800101c1
movzx eax, byte [rsp + 0x14a]
cmp eax, 1
jne 0x18001019d
lea rdx, str.Win8.1
lea rcx, [rsp + 0x20]
call fcn.1800015e0
jmp 0x1800101ae
lea rdx, str.Other
lea rcx, [rsp + 0x20]
call fcn.1800015e0
jmp 0x1800101c1
lea rdx, [0x180025e30]
lea rcx, [rsp + 0x20]
call fcn.1800015e0
jmp 0x1800101d4
lea rdx, [0x180025e40]
lea rcx, [rsp + 0x20]
call fcn.1800015e0
lea rdx, [rsp + 0x20]
mov rcx, qword [rsp + 0x1d8]
call fcn.180001500
mov eax, dword [rsp + 0x188]
or eax, 1
mov dword [rsp + 0x188], eax
lea rcx, [rsp + 0x20]
call fcn.1800019a0
mov rax, qword [rsp + 0x1d8]
mov rcx, qword [rsp + 0x1b0]
xor rcx, rsp
call fcn.180004800
add rsp, 0x1c0
pop rdi
ret