Function at 0x140060df0
Capabilities:
Check os version

Disassembly:
mov qword [rsp + 8], rcx
push rsi
push rdi
push r12
sub rsp, 0x30
mov qword [rsp + 0x20], 0xfffffffffffffffe
mov qword [rsp + 0x60], rbx
mov qword [rsp + 0x68], rbp
mov rdi, rcx
call fcn.1401dd28c
mov byte [rdi + 0x48], 1
xor ebp, ebp
mov qword [rdi + 0xe8], rbp
lea rax, [0x1402760f8]
mov qword [rdi], rax
lea rax, [0x1402763c0]
mov qword [rdi + 0xf0], rax
lea rcx, [rdi + 0x100]
call fcn.1401f3704
nop
call fcn.1401e9d6c
test rax, rax
je 0x140060e7f
mov rdx, qword [rax]
mov rcx, rax
call qword [rdx + 0xe8]
test rax, rax
je 0x140060e7f
mov rax, qword [rax + 0xc0]
test rax, rax
jne 0x140060e76
mov rax, rbp
jmp 0x140060e82
add dword [rax + 0x1ab4], 1
jmp 0x140060e82
mov rax, rbp
mov qword [rdi + 0xf8], rax
mov dword [rdi + 0x1e0], ebp
lea rax, [0x140265758]
mov qword [rdi], rax
lea rax, [0x140265a20]
mov qword [rdi + 0xf0], rax
mov edx, 0xa
lea rcx, [rdi + 0x1f8]
call fcn.1401e74bc
lea r11, [0x14025ab58]
mov qword [rdi + 0x1f8], r11
lea rcx, [rdi + 0x240]
call fcn.1401e00a4
lea r11, [0x140250388]
mov qword [rdi + 0x240], r11
lea rcx, [rdi + 0x2e8]
call fcn.1401064c0
nop
lea rsi, [rdi + 0x418]
mov qword [rsp + 0x58], rsi
mov rcx, rsi
call fcn.1401e00a4
nop
lea rax, [0x140285ec8]
mov qword [rsi], rax
lea rax, [0x140286150]
mov qword [rsi + 0xa8], rax
lea rcx, [rsi + 0xb0]
call fcn.1401edb28
nop
mov edx, 0xa
lea rcx, [rsi + 0xc8]
call fcn.1401e74bc
lea r11, [0x140286160]
mov qword [rsi + 0xc8], r11
mov byte [rsi + 0x48], 1
mov qword [rsi + 0xc0], rbp
call fcn.1401e9d6c
test rax, rax
je 0x140060f86
mov rdx, qword [rax]
mov rcx, rax
call qword [rdx + 0xe8]
test rax, rax
je 0x140060f86
mov rax, qword [rax + 0xc0]
test rax, rax
jne 0x140060f7d
mov rax, rbp
jmp 0x140060f89
add dword [rax + 0x1ab4], 1
jmp 0x140060f89
mov rax, rbp
mov qword [rsi + 0x100], rax
lea rsi, [0x140272878]
mov qword [rdi + 0x530], rsi
mov qword [rdi + 0x538], rbp
mov qword [rdi + 0x540], rbp
mov dword [rdi + 0x548], ebp
mov dword [rdi + 0x54c], ebp
mov dword [rdi + 0x550], ebp
mov dword [rdi + 0x554], ebp
mov byte [rdi + 0x558], 0
mov byte [rdi + 0x559], 0
mov dword [rdi + 0x55c], 0xffffffff
mov qword [rdi + 0x560], rbp
mov dword [rdi + 0x568], ebp
mov qword [rdi + 0x570], rbp
lea rcx, [0x140310d68]
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
add dword [0x140310d90], 1
lea rcx, [0x140310d68]
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
lea rbx, [0x140272838]
mov qword [rdi + 0x530], rbx
mov qword [rdi + 0x578], rbp
mov qword [rdi + 0x580], rsi
mov qword [rdi + 0x588], rbp
mov qword [rdi + 0x590], rbp
mov dword [rdi + 0x598], ebp
mov dword [rdi + 0x59c], ebp
mov dword [rdi + 0x5a0], ebp
mov dword [rdi + 0x5a4], ebp
mov byte [rdi + 0x5a8], 0
mov byte [rdi + 0x5a9], 0
mov dword [rdi + 0x5ac], 0xffffffff
mov qword [rdi + 0x5b0], rbp
mov dword [rdi + 0x5b8], ebp
mov qword [rdi + 0x5c0], rbp
lea rcx, [0x140310d68]
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
add dword [0x140310d90], 1
lea rcx, [0x140310d68]
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
mov qword [rdi + 0x580], rbx
mov qword [rdi + 0x5c8], rbp
mov byte [rdi + 0x48], 1
mov qword [rdi + 0x1e8], rbp
mov qword [rdi + 0x1f0], rbp
mov qword [rdi + 0x230], rbp
mov qword [rdi + 0x238], rbp
mov dword [rdi + 0x520], ebp
mov eax, dword [0x140311024]
test eax, eax
jne 0x1400610fb
mov dword [0x140311020], 0x114
lea rcx, [0x140311020]
call qword [sym.imp.KERNEL32.dll_GetVersionExW]
mov eax, dword [0x140311024]
cmp eax, 6
jne 0x140061110
cmp dword [0x140311028], 0
jne 0x140061110
mov eax, 1
jmp 0x140061112
mov eax, ebp
mov dword [rdi + 0x528], eax
mov dword [rdi + 0x524], ebp
mov rax, rdi
mov rbx, qword [rsp + 0x60]
mov rbp, qword [rsp + 0x68]
add rsp, 0x30
pop r12
pop rdi
pop rsi
ret