Function at 0x1400160a4
Capabilities:
Link many functions at runtime

Disassembly:
push rbx
push rsi
push rdi
sub rsp, 0x40
movzx esi, dl
mov rbx, rcx
mov dword [rcx], 0x1776df3
mov dword [rcx + 4], 0x4e50b9af
mov dword [rcx + 8], 0xe9561c9b
mov dword [rcx + 0xc], 0x4d71631
mov byte [rcx + 0x10], 0
test dl, dl
je 0x140016397
mov al, byte [0x1401659d1]
test al, al
jne 0x1400161b4
lea rcx, str.api_ms_win_core_processthreads_l1_1_3.dll
call qword [sym.imp.KERNEL32.dll_GetModuleHandleW]
nop dword [rax + rax]
mov rdi, rax
test rax, rax
je 0x140016159
lea rdx, str.GetProcessMitigationPolicy
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
nop dword [rax + rax]
lea rdx, str.SetThreadInformation
mov rcx, rdi
mov qword [0x140165a50], rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
nop dword [rax + rax]
lea rdx, str.GetThreadInformation
mov rcx, rdi
mov qword [0x140165a58], rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
nop dword [rax + rax]
mov qword [0x1401659e0], rax
cmp qword [0x140165a50], 0
je 0x14001619c
call qword [sym.imp.KERNEL32.dll_GetCurrentProcess]
nop dword [rax + rax]
mov r9d, 4
lea r8, [0x1401659f0]
mov rcx, rax
mov rax, qword [0x140165a50]
lea edx, [r9 - 2]
call qword [0x14008a7b8]
test eax, eax
je 0x14001619c
mov eax, dword [0x1401659f0]
jmp 0x1400161ab
mov eax, dword [0x1401659f0]
and eax, 0xfffffffe
mov dword [0x1401659f0], eax
mov byte [0x1401659d1], 1
jmp 0x1400161ba
mov eax, dword [0x1401659f0]
test al, 1
je 0x140016397
test al, 2
jne 0x140016315
mov al, byte [0x1401659d0]
test al, al
jne 0x140016315
lea rcx, str.api_ms_win_core_localregistry_l1_1_0.dll
call qword [sym.imp.KERNEL32.dll_GetModuleHandleW]
nop dword [rax + rax]
and dword [rsp + 0x70], 0
mov edi, 0x800
and dword [rsp + 0x60], 0
test rax, rax
jne 0x140016220
mov r8d, edi
lea rcx, str.api_ms_win_core_localregistry_l1_1_0.dll
xor edx, edx
call qword [sym.imp.KERNEL32.dll_LoadLibraryExW]
nop dword [rax + rax]
test rax, rax
jne 0x140016220
xor ecx, ecx
jmp 0x14001627f
lea rdx, str.RegGetValueW
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
nop dword [rax + rax]
test rax, rax
je 0x14001621c
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 [0x14008a7b8]
xor ecx, ecx
test eax, eax
cmove ecx, dword [rsp + 0x60]
sub ecx, 1
je 0x1400162fc
cmp ecx, 1
je 0x14001629b
call fcn.1400163ac
test al, al
je 0x14001629b
call fcn.1400165f4
test al, al
jne 0x14001630e
lea rcx, str.api_ms_win_core_com_l1_1_1.dll
call qword [sym.imp.KERNEL32.dll_GetModuleHandleW]
nop dword [rax + rax]
test rax, rax
jne 0x1400162d0
mov r8d, edi
lea rcx, str.api_ms_win_core_com_l1_1_1.dll
xor edx, edx
call qword [sym.imp.KERNEL32.dll_LoadLibraryExW]
nop dword [rax + rax]
test rax, rax
je 0x140016315
lea rdx, str.CoCreateInstanceFromApp
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
nop dword [rax + rax]
mov qword [0x1401659e8], rax
test rax, rax
je 0x140016315
mov rcx, rbx
call fcn.1400164b4
jmp 0x14001630a
call fcn.1400163ac
test al, al
je 0x140016315
call fcn.1400165f4
test al, al
je 0x140016315
mov byte [0x1401659d0], 1
cmp qword [0x140165a58], 0
je 0x140016397
cmp qword [0x1401659e0], 0
je 0x140016397
and dword [rsp + 0x68], 0
call qword [sym.imp.KERNEL32.dll_GetCurrentThread]
nop dword [rax + rax]
mov r9d, 4
lea r8, [rsp + 0x68]
mov rcx, rax
mov rax, qword [0x1401659e0]
lea edx, [r9 - 2]
call qword [0x14008a7b8]
test eax, eax
je 0x140016364
cmp dword [rsp + 0x68], 1
je 0x140016397
mov dword [rsp + 0x68], esi
call qword [sym.imp.KERNEL32.dll_GetCurrentThread]
nop dword [rax + rax]
mov r9d, 4
lea r8, [rsp + 0x68]
mov rcx, rax
mov rax, qword [0x140165a58]
lea edx, [r9 - 2]
call qword [0x14008a7b8]
mov byte [rbx + 0x10], 1
mov rax, rbx
add rsp, 0x40
pop rdi
pop rsi
pop rbx
ret