Function at 0x140004c40
Capabilities:
Link many functions at runtime

Disassembly:
push rbx
push rsi
push rdi
sub rsp, 0x40
mov dword [rcx], 0x1776df3
mov sil, dl
mov dword [rcx + 4], 0x4e50b9af
mov rbx, rcx
mov dword [rcx + 8], 0xe9561c9b
mov dword [rcx + 0xc], 0x4d71631
mov byte [rcx + 0x10], 0
test dl, dl
je 0x140004ee9
mov al, byte [0x14000d8c9]
test al, al
jne 0x140004d32
lea rcx, str.api_ms_win_core_processthreads_l1_1_3.dll
call qword [sym.imp.api_ms_win_core_libraryloader_l1_2_0.dll_GetModuleHandleW]
mov rdi, rax
test rax, rax
je 0x140004cdd
lea rdx, [0x140009f38]
mov rcx, rax
call qword [sym.imp.api_ms_win_core_libraryloader_l1_2_0.dll_GetProcAddress]
lea rdx, str.SetThreadInformation
mov rcx, rdi
mov qword [0x14000d968], rax
call qword [sym.imp.api_ms_win_core_libraryloader_l1_2_0.dll_GetProcAddress]
lea rdx, str.GetThreadInformation
mov rcx, rdi
mov qword [0x14000d970], rax
call qword [sym.imp.api_ms_win_core_libraryloader_l1_2_0.dll_GetProcAddress]
mov qword [0x14000d8d8], rax
cmp qword [0x14000d968], 0
je 0x140004d1a
call qword [sym.imp.api_ms_win_core_processthreads_l1_1_0.dll_GetCurrentProcess]
mov r9d, 4
lea r8, [0x14000d8f0]
mov rcx, rax
mov rax, qword [0x14000d968]
lea edx, [r9 - 2]
call qword [0x140008fb0]
test eax, eax
je 0x140004d1a
mov eax, dword [0x14000d8f0]
jmp 0x140004d29
mov eax, dword [0x14000d8f0]
and eax, 0xfffffffe
mov dword [0x14000d8f0], eax
mov byte [0x14000d8c9], 1
jmp 0x140004d38
mov eax, dword [0x14000d8f0]
test al, 1
je 0x140004ee9
test al, 2
jne 0x140004e6f
mov al, byte [0x14000d8c8]
test al, al
jne 0x140004e6f
lea rcx, str.api_ms_win_core_localregistry_l1_1_0.dll
call qword [sym.imp.api_ms_win_core_libraryloader_l1_2_0.dll_GetModuleHandleW]
and dword [rsp + 0x70], 0
mov edi, 0x800
and dword [rsp + 0x60], 0
test rax, rax
jne 0x140004d92
mov r8d, edi
lea rcx, str.api_ms_win_core_localregistry_l1_1_0.dll
xor edx, edx
call qword [sym.imp.api_ms_win_core_libraryloader_l1_2_0.dll_LoadLibraryExW]
test rax, rax
jne 0x140004d92
xor ecx, ecx
jmp 0x140004deb
lea rdx, str.RegGetValueW
mov rcx, rax
call qword [sym.imp.api_ms_win_core_libraryloader_l1_2_0.dll_GetProcAddress]
test rax, rax
je 0x140004d8e
lea rcx, [rsp + 0x70]
mov r9d, 0x10
mov qword [rsp + 0x30], rcx
lea r8, str.AcgApi
lea rcx, [rsp + 0x60]
mov qword [rsp + 0x28], rcx
lea rdx, str.SoftwareMicrosoftWindows_NTCurrentVersionSoftwareProtectionPlatform
and qword [rsp + 0x20], 0
mov rcx, 0xffffffff80000002
call qword [0x140008fb0]
xor ecx, ecx
test eax, eax
cmove ecx, dword [rsp + 0x60]
sub ecx, 1
je 0x140004e56
cmp ecx, 1
je 0x140004e07
call fcn.140004ef4
test al, al
je 0x140004e07
call fcn.140005104
test al, al
jne 0x140004e68
lea rcx, str.api_ms_win_core_com_l1_1_1.dll
call qword [sym.imp.api_ms_win_core_libraryloader_l1_2_0.dll_GetModuleHandleW]
test rax, rax
jne 0x140004e30
mov r8d, edi
lea rcx, str.api_ms_win_core_com_l1_1_1.dll
xor edx, edx
call qword [sym.imp.api_ms_win_core_libraryloader_l1_2_0.dll_LoadLibraryExW]
test rax, rax
je 0x140004e6f
lea rdx, str.CoCreateInstanceFromApp
mov rcx, rax
call qword [sym.imp.api_ms_win_core_libraryloader_l1_2_0.dll_GetProcAddress]
mov qword [0x14000d8e0], rax
test rax, rax
je 0x140004e6f
mov rcx, rbx
call fcn.140004fcc
jmp 0x140004e64
call fcn.140004ef4
test al, al
je 0x140004e6f
call fcn.140005104
test al, al
je 0x140004e6f
mov byte [0x14000d8c8], 1
cmp qword [0x14000d970], 0
je 0x140004ee9
cmp qword [0x14000d8d8], 0
je 0x140004ee9
and dword [rsp + 0x68], 0
call qword [sym.imp.api_ms_win_core_processthreads_l1_1_0.dll_GetCurrentThread]
mov r9d, 4
lea r8, [rsp + 0x68]
mov rcx, rax
mov rax, qword [0x14000d8d8]
lea edx, [r9 - 2]
call qword [0x140008fb0]
test eax, eax
je 0x140004eb8
cmp dword [rsp + 0x68], 1
je 0x140004ee9
movzx eax, sil
mov dword [rsp + 0x68], eax
call qword [sym.imp.api_ms_win_core_processthreads_l1_1_0.dll_GetCurrentThread]
mov r9d, 4
lea r8, [rsp + 0x68]
mov rcx, rax
mov rax, qword [0x14000d970]
lea edx, [r9 - 2]
call qword [0x140008fb0]
mov byte [rbx + 0x10], 1
mov rax, rbx
add rsp, 0x40
pop rdi
pop rsi
pop rbx
ret