Function at 0x100aefe0
Capabilities:
Check os version

Disassembly:
push ebp
mov ebp, esp
sub esp, 0xc
push esi
push edi
xor edi, edi
push 0x101031ac
mov dword [ebp - 0xc], edi
mov dword [ebp - 4], edi
mov dword [ebp - 8], edi
call dword [sym.imp.KERNEL32.dll_LoadLibraryW]
mov esi, eax
test esi, esi
je 0x100af12b
push 0x10103194
push esi
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
test eax, eax
je 0x100af11c
lea ecx, [ebp - 8]
push ecx
lea edx, [ebp - 4]
push edx
lea ecx, [ebp - 0xc]
push ecx
call eax
mov eax, dword [ebp - 0xc]
and dword [ebp - 8], 0xffff
cmp eax, 4
jne 0x100af04b
push esi
lea edi, [eax + 2]
call dword [sym.imp.KERNEL32.dll_FreeLibrary]
mov eax, edi
pop edi
pop esi
mov esp, ebp
pop ebp
ret
cmp eax, 5
jne 0x100af09b
mov eax, dword [ebp - 4]
test eax, eax
jne 0x100af069
push esi
lea edi, [eax + 7]
call dword [sym.imp.KERNEL32.dll_FreeLibrary]
mov eax, edi
pop edi
pop esi
mov esp, ebp
pop ebp
ret
cmp eax, 1
jne 0x100af080
push esi
lea edi, [eax + 7]
call dword [sym.imp.KERNEL32.dll_FreeLibrary]
mov eax, edi
pop edi
pop esi
mov esp, ebp
pop ebp
ret
cmp eax, 2
jne 0x100af11a
push esi
lea edi, [eax + 7]
call dword [sym.imp.KERNEL32.dll_FreeLibrary]
mov eax, edi
pop edi
pop esi
mov esp, ebp
pop ebp
ret
cmp eax, 6
jne 0x100af0fe
mov eax, dword [ebp - 4]
test eax, eax
jne 0x100af0b9
push esi
lea edi, [eax + 0xa]
call dword [sym.imp.KERNEL32.dll_FreeLibrary]
mov eax, edi
pop edi
pop esi
mov esp, ebp
pop ebp
ret
cmp eax, 1
jne 0x100af0d0
push esi
lea edi, [eax + 0xa]
call dword [sym.imp.KERNEL32.dll_FreeLibrary]
mov eax, edi
pop edi
pop esi
mov esp, ebp
pop ebp
ret
cmp eax, 2
jne 0x100af0e7
push esi
lea edi, [eax + 0xa]
call dword [sym.imp.KERNEL32.dll_FreeLibrary]
mov eax, edi
pop edi
pop esi
mov esp, ebp
pop ebp
ret
cmp eax, 3
jne 0x100af11a
push esi
lea edi, [eax + 0xa]
call dword [sym.imp.KERNEL32.dll_FreeLibrary]
mov eax, edi
pop edi
pop esi
mov esp, ebp
pop ebp
ret
cmp eax, 0xa
jne 0x100af11a
cmp dword [ebp - 4], edi
jne 0x100af11a
push esi
lea edi, [eax + 4]
call dword [sym.imp.KERNEL32.dll_FreeLibrary]
mov eax, edi
pop edi
pop esi
mov esp, ebp
pop ebp
ret
xor edi, edi
push esi
call dword [sym.imp.KERNEL32.dll_FreeLibrary]
mov eax, edi
pop edi
pop esi
mov esp, ebp
pop ebp
ret
call dword [sym.imp.KERNEL32.dll_GetVersion]
mov ecx, eax
shr ecx, 8
movzx edx, al
movzx ecx, cl
mov dword [ebp - 0xc], edx
mov dword [ebp - 4], ecx
cmp eax, 0x80000000
jae 0x100af1dd
cmp edx, 4
jne 0x100af15f
mov edi, 6
mov eax, edi
pop edi
pop esi
mov esp, ebp
pop ebp
ret
cmp edx, 5
jne 0x100af199
test ecx, ecx
jne 0x100af175
mov edi, 7
mov eax, edi
pop edi
pop esi
mov esp, ebp
pop ebp
ret
cmp ecx, 1
jne 0x100af187
mov edi, 8
mov eax, edi
pop edi
pop esi
mov esp, ebp
pop ebp
ret
cmp ecx, 2
jne 0x100af1d3
mov edi, 9
mov eax, edi
pop edi
pop esi
mov esp, ebp
pop ebp
ret
cmp edx, 6
jne 0x100af1d3
test ecx, ecx
jne 0x100af1af
mov edi, 0xa
mov eax, edi
pop edi
pop esi
mov esp, ebp
pop ebp
ret
cmp ecx, 1
jne 0x100af1c1
mov edi, 0xb
mov eax, edi
pop edi
pop esi
mov esp, ebp
pop ebp
ret
cmp ecx, 2
jne 0x100af1d3
mov edi, 0xc
mov eax, edi
pop edi
pop esi
mov esp, ebp
pop ebp
ret
xor edi, edi
mov eax, edi
pop edi
pop esi
mov esp, ebp
pop ebp
ret
cmp edx, 4
jae 0x100af1ef
mov edi, 1
mov eax, edi
pop edi
pop esi
mov esp, ebp
pop ebp
ret
push 0x114
mov edi, 3
call fcn.10094ba6
mov esi, eax
add esp, 4
test esi, esi
je 0x100af25c
push 0x114
push 0
push esi
call fcn.10092830
add esp, 0xc
push esi
mov dword [esi], 0x114
call dword [sym.imp.KERNEL32.dll_GetVersionExW]
mov eax, dword [esi + 4]
cmp eax, 4
jne 0x100af253
cmp dword [esi + 8], 0xa
jne 0x100af245
push esi
mov edi, eax
call fcn.10090638
add esp, 4
mov eax, edi
pop edi
pop esi
mov esp, ebp
pop ebp
ret
cmp eax, 4
jne 0x100af253
cmp dword [esi + 8], 0x5a
jne 0x100af253
lea edi, [eax + 1]
push esi
call fcn.10090638
add esp, 4
mov eax, edi
pop edi
pop esi
mov esp, ebp
pop ebp
ret