Function at 0x1401edb30
Capabilities:
Check os version

Disassembly:
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x3e0
mov qword [rsp + 0x28], 0xfffffffffffffffe
mov qword [rsp + Ordinal_1073], rbx
mov rax, qword [0x14042d950]
xor rax, rsp
mov qword [rsp + 0x3d0], rax
mov r12, rdx
mov qword [rcx + 0x290], rdx
lea rdi, [rcx + 0xf8]
mov rax, qword [rdx]
mov rcx, rdx
call qword [rax + 0x50]
mov edx, eax
mov rcx, rdi
call fcn.1401e23a0
xor r14d, r14d
cmp dword [0x140c455e8], r14d
je 0x1401edba8
cmp dword [rdi + 0x170], r14d
jne 0x1401edba8
mov dword [rdi + Ordinal_1404], r14d
jmp 0x1401edbcb
cmp dword [rdi + 0x158], r14d
je 0x1401edbcb
mov dword [rdi + 0x158], r14d
xor edx, edx
lea r8d, [rdx + 1]
mov rcx, qword [rdi + 0xf0]
call qword [sym.imp.USER32.dll_InvalidateRect]
mov dword [rdi + 0xa8], r14d
xor edx, edx
lea r8d, [rdx + 1]
mov rcx, qword [rdi + 0x40]
call qword [sym.imp.USER32.dll_InvalidateRect]
call fcn.1400494c0
mov rdx, qword [rax]
mov rcx, rax
call qword [rdx + 0x20]
test eax, eax
jne 0x1401edc2e
cmp dword [0x140442c90], r14d
je 0x1401edc2e
cmp dword [rdi + 0x1c0], r14d
je 0x1401edc20
cmp dword [rdi + 0x170], r14d
jne 0x1401edc20
lea rcx, [rdi + 0x230]
lea edx, [rax + 5]
call fcn.14015fd58
jmp 0x1401edc2e
lea rcx, [rdi + 0x230]
xor edx, edx
call fcn.14015fd58
mov rax, qword [r12]
mov rcx, r12
call qword [rax + 0x38]
cmp dword [0x140c455e8], r14d
je 0x1401edc53
cmp dword [rdi + 0x170], r14d
jne 0x1401edc53
mov qword [rdi + Ordinal_1412], rax
jmp 0x1401edc5a
mov qword [rdi + 0x160], rax
mov rcx, rdi
call fcn.1401e18d0
mov r11, qword [r12]
mov rcx, r12
call qword [r11 + 0x78]
mov r13, rax
mov dword [rdi + reloc.MFC80U.DLL_Ordinal_452], r14d
xor edx, edx
lea r8d, [rdx + 1]
mov rcx, qword [rdi + 0x40]
call qword [sym.imp.USER32.dll_InvalidateRect]
mov dword [rdi + 0x1c0], r14d
xor edx, edx
lea r8d, [rdx + 1]
mov rcx, qword [rdi + 0x40]
call qword [sym.imp.USER32.dll_InvalidateRect]
mov dword [rdi + 0x1c8], r14d
xor edx, edx
lea r8d, [rdx + 1]
mov rcx, qword [rdi + 0x40]
call qword [sym.imp.USER32.dll_InvalidateRect]
mov dword [rdi + 0x1cc], r14d
xor edx, edx
lea r8d, [rdx + 1]
mov rcx, qword [rdi + 0x40]
call qword [sym.imp.USER32.dll_InvalidateRect]
mov r11, qword [r13]
mov rcx, r13
call qword [r11 + 0x40]
mov rdx, qword [rax]
mov rcx, rax
call qword [rdx + 0x58]
mov ebx, eax
mov rdx, qword [r13]
mov rcx, r13
call qword [rdx + 0x40]
mov rdx, qword [rax]
mov rcx, rax
call qword [rdx + 0x60]
mov esi, eax
mov rdx, qword [r13]
mov rcx, r13
call qword [rdx + 0x40]
mov rdx, qword [rax]
mov rcx, rax
call qword [rdx + 0xb8]
mov ebp, eax
mov rdx, qword [r13]
mov rcx, r13
call qword [rdx + 0x40]
mov rdx, qword [rax]
mov rcx, rax
call qword [rdx + 0xc0]
test ebx, ebx
je 0x1401edd48
mov dword [rdi + 0x1c0], 1
xor edx, edx
lea r8d, [rdx + 1]
mov rcx, qword [rdi + 0x40]
call qword [sym.imp.USER32.dll_InvalidateRect]
jmp 0x1401ee124
test esi, esi
jne 0x1401edd92
test ebp, ebp
je 0x1401edd6f
mov dword [rdi + 0x1c8], 1
xor edx, edx
lea r8d, [rsi + 1]
mov rcx, qword [rdi + 0x40]
call qword [sym.imp.USER32.dll_InvalidateRect]
jmp 0x1401ee124
test eax, eax
je 0x1401edd92
mov dword [rdi + 0x1cc], 1
xor edx, edx
lea r8d, [rdx + 1]
mov rcx, qword [rdi + 0x40]
call qword [sym.imp.USER32.dll_InvalidateRect]
jmp 0x1401ee124
mov rax, qword [r12]
mov rcx, r12
call qword [rax + 0x60]
mov dword [rdi + reloc.MFC80U.DLL_Ordinal_452], eax
xor edx, edx
lea r8d, [rdx + 1]
mov rcx, qword [rdi + 0x40]
call qword [sym.imp.USER32.dll_InvalidateRect]
mov r11, qword [r13]
mov rcx, r13
call qword [r11 + 0x30]
mov rbx, rax
test rax, rax
je 0x1401ee11c
lea r15, [0x140000000]
mov esi, dword [rsp + 0x20]
mov rax, qword [r12]
mov rcx, r12
call qword [rax + 0x50]
mov dword [rsp + 0x170], eax
mov rax, qword [rbx]
mov rcx, rbx
call qword [rax + 0x98]
mov dword [rsp + 0x174], eax
mov rax, qword [rbx]
mov rcx, rbx
call qword [rax + 0x50]
mov word [rsp + 0x180], ax
mov rax, qword [rbx]
mov rcx, rbx
call qword [rax + 0x40]
mov qword [rsp + 0x208], rax
mov rax, qword [rbx]
mov rcx, rbx
call qword [rax + 0x68]
mov qword [rsp + 0x210], rax
mov rax, qword [rbx]
mov rcx, rbx
call qword [rax + 0x88]
mov qword [rsp + 0x218], rax
mov rax, qword [rbx]
mov rcx, rbx
call qword [rax + 0xc0]
mov dword [rsp + 0x17c], eax
mov rax, qword [rbx]
mov rcx, rbx
call qword [rax + 0x58]
lea rdx, [rsp + 0x182]
nop
nop
nop
nop
movzx ecx, word [rax]
mov word [rdx], cx
add rax, 2
add rdx, 2
test cx, cx
jne 0x1401ede70
lea rcx, [rsp + 0x20]
call qword [sym.imp.MFC80U.DLL_Ordinal_296]
nop
mov ebp, r14d
mov rax, qword [rbx]
mov rcx, rbx
call qword [rax + 0x48]
cmp eax, 0xb
ja case.default.0x1401edeb1
cdqe
mov ecx, dword [r15 + rax*4 + 0x1ee150]
add rcx, r15
jmp rcx
mov esi, 0x9b6cf2
lea rdx, [0x140370768]
lea rcx, [rsp + 0x20]
call qword [sym.imp.MFC80U.DLL_Ordinal_788]
jmp case.default.0x1401edeb1
mov esi, 0x9b6cf2
lea rdx, [0x140370778]
lea rcx, [rsp + 0x20]
call qword [sym.imp.MFC80U.DLL_Ordinal_788]
jmp case.default.0x1401edeb1
mov esi, 0xa86d00
lea rdx, [0x140370788]
lea rcx, [rsp + 0x20]
call qword [sym.imp.MFC80U.DLL_Ordinal_788]
jmp case.default.0x1401edeb1
mov esi, 0xbb4aaf
lea rdx, [0x140370798]
lea rcx, [rsp + 0x20]
call qword [sym.imp.MFC80U.DLL_Ordinal_788]
jmp case.default.0x1401edeb1
mov esi, 0x3f3f3f
call fcn.140049500
mov r8, qword [rax]
lea rdx, [0x1403707a8]
mov rcx, rax
call qword [r8]
mov rdx, rax
lea rcx, [rsp + 0x20]
call qword [sym.imp.MFC80U.DLL_Ordinal_788]
jmp case.default.0x1401edeb1
mov esi, 0x277a81
call fcn.140049500
mov r8, qword [rax]
lea rdx, [0x1403707b8]
mov rcx, rax
call qword [r8]
mov rdx, rax
lea rcx, [rsp + 0x20]
call qword [sym.imp.MFC80U.DLL_Ordinal_788]
jmp case.default.0x1401edeb1
mov esi, 0xa86d00
lea rdx, [0x1403707c8]
lea rcx, [rsp + 0x20]
call qword [sym.imp.MFC80U.DLL_Ordinal_788]
jmp case.default.0x1401edeb1
mov esi, 0xa86d00
lea rdx, [0x1403707d8]
lea rcx, [rsp + 0x20]
call qword [sym.imp.MFC80U.DLL_Ordinal_788]
jmp case.default.0x1401edeb1
mov ebp, 1
mov esi, 0x969696
call fcn.140049500
mov r8, qword [rax]
lea rdx, [0x1403707e8]
mov rcx, rax
call qword [r8]
mov rdx, rax
lea rcx, [rsp + 0x20]
call qword [sym.imp.MFC80U.DLL_Ordinal_788]
jmp case.default.0x1401edeb1
mov esi, 0xa86d00
lea rdx, [0x1403707f8]
lea rcx, [rsp + 0x20]
call qword [sym.imp.MFC80U.DLL_Ordinal_788]
jmp case.default.0x1401edeb1
mov esi, 0xa86d00
lea rdx, [0x140370808]
lea rcx, [rsp + 0x20]
call qword [sym.imp.MFC80U.DLL_Ordinal_788]
jmp case.default.0x1401edeb1
mov esi, 0xa86d00
lea rdx, [0x140370818]
lea rcx, [rsp + 0x20]
call qword [sym.imp.MFC80U.DLL_Ordinal_788]
mov rax, qword [rbx]
mov rcx, rbx
call qword [rax + 0xf0]
test eax, eax
je 0x1401ee095
xor edx, edx
mov r8d, Ordinal_280
lea rcx, [rsp + 0x2b0]
call sub.ntdll.dll_memset
mov dword [rsp + 0x2b0], Ordinal_280
lea rcx, [rsp + 0x2b0]
call qword [sym.imp.KERNEL32.dll_GetVersionExW]
cmp dword [rsp + 0x2b4], 6
jb 0x1401ee095
call fcn.140049500
mov r8, qword [rax]
lea rdx, [0x140370828]
mov rcx, rax
call qword [r8]
mov rdx, rax
lea rcx, [rsp + 0x20]
call qword [sym.imp.MFC80U.DLL_Ordinal_788]
lea rcx, [rsp + 0x20]
call qword [sym.imp.MFC80U.DLL_Ordinal_2492]
lea rdx, [rsp + 0x220]
nop
nop
movzx ecx, word [rax]
mov word [rdx], cx
add rax, 2
add rdx, 2
test cx, cx
jne 0x1401ee0b0
mov dword [rsp + reloc.MFC80U.DLL_Ordinal_672], esi
mov dword [rsp + reloc.MFC80U.DLL_Ordinal_376], ebp
lea rcx, [rsp + 0x30]
lea rdx, [rsp + 0x170]
mov r8d, 0x138
call sub.ntdll.dll_memcpy
xor r8d, r8d
lea rdx, [rsp + 0x30]
mov rcx, rdi
call fcn.1401e24d0
nop
lea rcx, [rsp + 0x20]
call qword [sym.imp.MFC80U.DLL_Ordinal_588]
mov r11, qword [r13]
mov rcx, r13
call qword [r11 + 0x38]
mov rbx, rax
test rax, rax
jne 0x1401eddd4
mov rcx, rdi
call fcn.1401e19f0
mov rcx, qword [rsp + 0x3d0]
xor rcx, rsp
call fcn.140161080
mov rbx, qword [rsp + 0x430]
add rsp, 0x3e0
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret