Function at 0x10007ee0
Capabilities:
Link many functions at runtime

Disassembly:
push ebp
mov ebp, esp
push ecx
push str.kernel32.dll
call dword [sym.imp.KERNEL32.dll_GetModuleHandleW]
mov dword [0x100ae0d4], eax
test eax, eax
je 0x10008218
push str.ntdll.dll
call dword [sym.imp.KERNEL32.dll_GetModuleHandleW]
mov dword [0x100ae114], eax
test eax, eax
je 0x10008218
push esi
push 0x11c
push 0
push 0x100adfb8
call sym.IntelFirmwareInterfaceInstallHelper.dll_nocrt_memset
add esp, 0xc
mov dword [0x100adfb8], 0x11c
push str.RtlGetVersion
push dword [0x100ae114]
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov esi, eax
test esi, esi
je 0x10007f61
push 0x100adfb8
mov ecx, esi
call dword [section..rdata]
call esi
test eax, eax
je 0x10008063
push 0x11c
push 0
push 0x100adfb8
call sym.IntelFirmwareInterfaceInstallHelper.dll_nocrt_memset
add esp, 0xc
mov dword [0x100adfb8], 0x11c
push str.GetVersionExW
push dword [0x100ae0d4]
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov esi, eax
test esi, esi
je 0x10007fad
push 0x100adfb8
mov ecx, esi
call dword [section..rdata]
call esi
test eax, eax
jne 0x10008063
push 0x11c
push 0
push 0x100adfb8
call sym.IntelFirmwareInterfaceInstallHelper.dll_nocrt_memset
add esp, 0xc
mov dword [0x100adfb8], 0x114
test esi, esi
je 0x10007fe2
push 0x100adfb8
mov ecx, esi
call dword [section..rdata]
call esi
test eax, eax
jne 0x10008035
push 0x11c
push 0
push 0x100adfb8
call sym.IntelFirmwareInterfaceInstallHelper.dll_nocrt_memset
add esp, 0xc
call dword [sym.imp.KERNEL32.dll_GetVersion]
movzx ecx, al
mov dword [0x100adfbc], ecx
mov ecx, eax
shr ecx, 8
movzx ecx, cl
mov dword [0x100adfc0], ecx
test eax, eax
js 0x10008021
shr eax, 0x10
mov dword [0x100adfc4], eax
jmp 0x1000802b
mov dword [0x100adfc4], 0x1ff
mov dword [0x100adfc8], 2
lea eax, [ebp - 4]
mov dword [0x100adfb8], 0x11c
push eax
mov byte [0x100ae0d2], 1
mov dword [ebp - 4], 1
call dword [sym.imp.ntdll.dll_RtlGetNtProductType]
test al, al
je 0x10008063
mov al, byte [ebp - 4]
mov byte [0x100ae0d2], al
cmp dword [0x100adfb8], 0
je 0x1000807e
push 0x100adfb8
call fcn.10008380
add esp, 4
mov dword [0x100adfb0], eax
mov eax, dword [ebp + 8]
xor esi, esi
test al, 8
jne 0x10008092
push eax
call fcn.10008240
add esp, 4
mov esi, eax
push str.GetSystemWindowsDirectoryW
push dword [0x100ae0d4]
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [0x100ae0d8], eax
test eax, eax
je 0x100080c2
push str.GetWindowsDirectoryW
push dword [0x100ae0d4]
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [0x100ae0d8], eax
push str.SystemTimeToTzSpecificLocalTime
push dword [0x100ae0d4]
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
push str.CreateWaitableTimerExW
push dword [0x100ae0d4]
mov dword [0x100ae0e0], eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
push str.GetHandleInformation
push dword [0x100ae0d4]
mov dword [0x100ae0dc], eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
push str.SetHandleInformation
push dword [0x100ae0d4]
mov dword [0x100ae0e4], eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
push str.IsDebuggerPresent
push dword [0x100ae0d4]
mov dword [0x100ae0e8], eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
push str.GetSystemTimeAsFileTime
push dword [0x100ae0d4]
mov dword [0x100ae0ec], eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
push str.GetProcessAffinityMask
push dword [0x100ae0d4]
mov dword [0x100ae0f0], eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
push str.SetThreadAffinityMask
push dword [0x100ae0d4]
mov dword [0x100ae0f4], eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
push str.CreateIoCompletionPort
push dword [0x100ae0d4]
mov dword [0x100ae0f8], eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
push str.GetQueuedCompletionStatus
push dword [0x100ae0d4]
mov dword [0x100ae0fc], eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
push str.PostQueuedCompletionStatus
push dword [0x100ae0d4]
mov dword [0x100ae100], eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
push str.IsProcessorFeaturePresent
push dword [0x100ae0d4]
mov dword [0x100ae104], eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
push str.NtQueryFullAttributesFile
push dword [0x100ae114]
mov dword [0x100ae110], eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
push str.NtDuplicateToken
push dword [0x100ae114]
mov dword [0x100ae118], eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
push str.NtAlertThread
push dword [0x100ae114]
mov dword [0x100ae11c], eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [0x100ae120], eax
call fcn.100085c0
mov eax, esi
pop esi
mov esp, ebp
pop ebp
ret
mov eax, 0xffffff1e
mov esp, ebp
pop ebp
ret