Function at 0x40e1f0
Capabilities:
Link many functions at runtime

Disassembly:
push ebp
mov ebp, esp
sub esp, 8
push edi
mov dword [ebp - 4], 0
mov dword [ebp - 8], 1
mov ecx, 0x10
xor eax, eax
mov edi, 0x428940
rep stosd dword es:[edi], eax
push str.gdi32.dll
call dword [sym.imp.KERNEL32.dll_LoadLibraryA]
mov dword [ebp - 4], eax
cmp dword [ebp - 4], 0
jne 0x40e22e
xor eax, eax
jmp 0x40e3f6
push str.D3DKMTCreateAllocation
mov eax, dword [ebp - 4]
push eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [0x428940], eax
push str.D3DKMTQueryResourceInfo
mov ecx, dword [ebp - 4]
push ecx
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [0x428944], eax
push str.D3DKMTOpenResource
mov edx, dword [ebp - 4]
push edx
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [0x428948], eax
push str.D3DKMTDestroyAllocation
mov eax, dword [ebp - 4]
push eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [0x42894c], eax
push str.D3DKMTSetAllocationPriority
mov ecx, dword [ebp - 4]
push ecx
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [0x428950], eax
push str.D3DKMTQueryAllocationResidency
mov edx, dword [ebp - 4]
push edx
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [0x428954], eax
push str.D3DKMTCreateDevice
mov eax, dword [ebp - 4]
push eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [0x428958], eax
push str.D3DKMTDestroyDevice
mov ecx, dword [ebp - 4]
push ecx
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [0x42895c], eax
push str.D3DKMTQueryAdapterInfo
mov edx, dword [ebp - 4]
push edx
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [0x428960], eax
push str.D3DKMTLock
mov eax, dword [ebp - 4]
push eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [0x428964], eax
push str.D3DKMTUnlock
mov ecx, dword [ebp - 4]
push ecx
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [0x428968], eax
push str.D3DKMTRender
mov edx, dword [ebp - 4]
push edx
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [0x42896c], eax
push str.D3DKMTOpenAdapterFromHdc
mov eax, dword [ebp - 4]
push eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [0x428970], eax
push str.D3DKMTGetSharedPrimaryHandle
mov ecx, dword [ebp - 4]
push ecx
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [0x428974], eax
push str.D3DKMTEscape
mov edx, dword [ebp - 4]
push edx
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [0x428978], eax
push str.D3DKMTCloseAdapter
mov eax, dword [ebp - 4]
push eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [0x42897c], eax
cmp dword [0x428940], 0
je 0x40e3ec
cmp dword [0x428944], 0
je 0x40e3ec
cmp dword [0x428948], 0
je 0x40e3ec
cmp dword [0x42894c], 0
je 0x40e3ec
cmp dword [0x428958], 0
je 0x40e3ec
cmp dword [0x42895c], 0
je 0x40e3ec
cmp dword [0x428960], 0
je 0x40e3ec
cmp dword [0x428964], 0
je 0x40e3ec
cmp dword [0x428968], 0
je 0x40e3ec
cmp dword [0x42896c], 0
je 0x40e3ec
cmp dword [0x428970], 0
je 0x40e3ec
cmp dword [0x428974], 0
je 0x40e3ec
cmp dword [0x428978], 0
je 0x40e3ec
cmp dword [0x42897c], 0
jne 0x40e3f3
mov dword [ebp - 8], 0
mov eax, dword [ebp - 8]
pop edi
mov esp, ebp
pop ebp
ret