Function at 0x140066340
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.1401ee37c
mov byte [rdi + 0x48], 1
xor ebp, ebp
mov qword [rdi + 0xe8], rbp
lea rax, [0x140288be8]
mov qword [rdi], rax
lea rax, [0x140288eb0]
mov qword [rdi + 0xf0], rax
lea rcx, [rdi + 0x100]
call fcn.1402045f8
nop
call fcn.1401fafc0
test rax, rax
je 0x1400663cf
mov rdx, qword [rax]
mov rcx, rax
call qword [rdx + 0xe8]
test rax, rax
je 0x1400663cf
mov rax, qword [rax + 0xc0]
test rax, rax
jne 0x1400663c6
mov rax, rbp
jmp 0x1400663d2
add dword [rax + 0x1ab4], 1
jmp 0x1400663d2
mov rax, rbp
mov qword [rdi + 0xf8], rax
mov dword [rdi + 0x1e0], ebp
lea rax, [0x140278278]
mov qword [rdi], rax
lea rax, [0x140278540]
mov qword [rdi + 0xf0], rax
mov edx, 0xa
lea rcx, [rdi + 0x1f8]
call fcn.1401f85a4
lea r11, [0x14026cb78]
mov qword [rdi + 0x1f8], r11
lea rcx, [rdi + 0x240]
call fcn.1401f118c
lea r11, [0x140262438]
mov qword [rdi + 0x240], r11
lea rcx, [rdi + 0x2e8]
call fcn.14010bb70
nop
lea rsi, [rdi + 0x418]
mov qword [rsp + 0x58], rsi
mov rcx, rsi
call fcn.1401f118c
nop
lea rax, [0x1402991a8]
mov qword [rsi], rax
lea rax, [0x140299430]
mov qword [rsi + 0xa8], rax
lea rcx, [rsi + 0xb0]
call fcn.1401febc8
nop
mov edx, 0xa
lea rcx, [rsi + 0xc8]
call fcn.1401f85a4
lea r11, [0x140299440]
mov qword [rsi + 0xc8], r11
mov byte [rsi + 0x48], 1
mov qword [rsi + 0xc0], rbp
call fcn.1401fafc0
test rax, rax
je 0x1400664d6
mov rdx, qword [rax]
mov rcx, rax
call qword [rdx + 0xe8]
test rax, rax
je 0x1400664d6
mov rax, qword [rax + 0xc0]
test rax, rax
jne 0x1400664cd
mov rax, rbp
jmp 0x1400664d9
add dword [rax + 0x1ab4], 1
jmp 0x1400664d9
mov rax, rbp
mov qword [rsi + 0x100], rax
lea rsi, [0x140285368]
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, [0x140325e48]
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
add dword [0x140325e70], 1
lea rcx, [0x140325e48]
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
lea rbx, [0x140285328]
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, [0x140325e48]
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
add dword [0x140325e70], 1
lea rcx, [0x140325e48]
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 [0x140326104]
test eax, eax
jne 0x14006664b
mov dword [0x140326100], 0x114
lea rcx, [0x140326100]
call qword [sym.imp.KERNEL32.dll_GetVersionExW]
mov eax, dword [0x140326104]
cmp eax, 6
jne 0x140066660
cmp dword [0x140326108], 0
jne 0x140066660
mov eax, 1
jmp 0x140066662
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