Function at 0x14000e9c0
Capabilities:
Link many functions at runtime

Disassembly:
mov qword [rsp + 0x18], rdi
push rbp
lea rbp, [rsp - 0x57]
sub rsp, 0xd0
mov rax, qword [0x140068080]
xor rax, rsp
mov qword [rbp + 0x47], rax
xor eax, eax
mov rdi, rcx
xor edx, edx
mov qword [rbp - 0x49], rax
lea rcx, [rbp - 9]
mov qword [rbp - 0x41], rax
mov qword [rbp - 0x39], rax
lea r8d, [rax + 0x50]
mov qword [rbp - 0x31], rax
mov qword [rbp - 0x29], rax
mov qword [rbp - 0x21], rax
mov qword [rbp - 0x19], rax
mov qword [rbp - 0x11], rax
call fcn.140017b30
xor r8d, r8d
lea rcx, str.gdi32.dll
xor edx, edx
call qword [sym.imp.api_ms_win_core_libraryloader_l1_2_0.dll_LoadLibraryExW]
mov qword [rdi], rax
test rax, rax
jne 0x14000ea46
lea rdx, str.load_gdi32.dll_failed
xor ecx, ecx
call fcn.140003fe0
mov eax, 0x80004005
jmp 0x14000eb70
lea rdx, str.D3DKMTOpenAdapterFromGdiDisplayName
mov rcx, rax
call qword [sym.imp.api_ms_win_core_libraryloader_l1_2_0.dll_GetProcAddress]
mov rcx, qword [rdi]
lea rdx, str.D3DKMTOpenAdapterFromDeviceName
mov qword [rdi + 0x10], rax
call qword [sym.imp.api_ms_win_core_libraryloader_l1_2_0.dll_GetProcAddress]
mov rcx, qword [rdi]
lea rdx, str.D3DKMTEscape
mov qword [rdi + 0x18], rax
call qword [sym.imp.api_ms_win_core_libraryloader_l1_2_0.dll_GetProcAddress]
mov rcx, qword [rdi]
lea rdx, str.D3DKMTCreateDevice
mov qword [rdi + 0x38], rax
call qword [sym.imp.api_ms_win_core_libraryloader_l1_2_0.dll_GetProcAddress]
mov rcx, qword [rdi]
lea rdx, str.D3DKMTDestroyDevice
mov qword [rdi + 0x28], rax
call qword [sym.imp.api_ms_win_core_libraryloader_l1_2_0.dll_GetProcAddress]
mov rcx, qword [rdi]
lea rdx, str.D3DKMTCloseAdapter
mov qword [rdi + 0x30], rax
call qword [sym.imp.api_ms_win_core_libraryloader_l1_2_0.dll_GetProcAddress]
cmp qword [rdi + 0x10], 0
mov qword [rdi + 0x20], rax
je 0x14000ec1e
cmp qword [rdi + 0x18], 0
je 0x14000ec1e
cmp qword [rdi + 0x38], 0
je 0x14000ec1e
cmp qword [rdi + 0x28], 0
je 0x14000ec1e
cmp qword [rdi + 0x30], 0
je 0x14000ec1e
test rax, rax
je 0x14000ec1e
lea rdx, [rbp - 9]
mov qword [rsp + 0xe8], rbx
mov rcx, rdi
call fcn.14000ec40
mov r8d, eax
lea rdx, str.DeviceFound_:__d
xor ecx, ecx
mov ebx, eax
call fcn.140003fe0
lea r8, [rbp - 9]
xor ecx, ecx
lea rdx, str.Display_Name_is:__s
call fcn.140003fe0
test ebx, ebx
je 0x14000eb98
mov rbx, qword [rdi + 0x10]
mov rcx, rbx
call qword [fcn.140014fd0]
lea rcx, [rbp - 9]
call rbx
test eax, eax
je 0x14000eb8d
mov r8d, eax
lea rdx, str.pfnOpenAdapterFromGDIDisplayName_failed__0x_x
xor ecx, ecx
call fcn.140003fe0
mov eax, 0x80004005
mov rbx, qword [rsp + 0xe8]
mov rcx, qword [rbp + 0x47]
xor rcx, rsp
call fcn.140013c00
mov rdi, qword [rsp + 0xf0]
add rsp, 0xd0
pop rbp
ret
mov eax, dword [rbp + 0x37]
lea rbx, [rdi + 0xc]
mov dword [rbx], eax
jmp 0x14000ebcb
lea rbx, [rdi + 0xc]
mov dword [rbp - 0x59], 0x1ca05180
mov r8, rbx
mov dword [rbp - 0x55], 0x450aa699
lea rdx, [rbp - 0x59]
mov dword [rbp - 0x51], 0x4fde0c9a
mov rcx, rdi
mov dword [rbp - 0x4d], 0x89dd3dbe
call fcn.14000ed30
test eax, eax
jne 0x14000ec0b
mov eax, dword [rbx]
test eax, eax
je 0x14000ec0b
mov rbx, qword [rdi + 0x28]
or dword [rbp - 0x41], 1
mov rcx, rbx
mov dword [rbp - 0x49], eax
call qword [fcn.140014fd0]
lea rcx, [rbp - 0x49]
call rbx
test eax, eax
je 0x14000ebfe
mov r8d, eax
lea rdx, str.pfnCreateDevice_failed__x
jmp 0x14000eb5c
mov eax, dword [rbp - 0x3d]
mov dword [rdi + 8], eax
xor eax, eax
jmp 0x14000eb68
lea rdx, str.Failure_to_get_handle_to_adapter
xor ecx, ecx
call fcn.140003fe0
jmp 0x14000eb63
lea rdx, str.Ones_of_the_retrieved_function_poiters_is_NULL
xor ecx, ecx
call fcn.140003fe0
mov eax, 0x80004005
jmp 0x14000eb70