Function at 0x140004fe0
Capabilities:
Print debug messages

Disassembly:
mov rax, rsp
push rsi
push rdi
push r12
push r13
push r14
sub rsp, 0x220
mov qword [rsp + 0x20], 0xfffffffffffffffe
mov qword [rax + 8], rbx
mov qword [rax + 0x10], rbp
mov edi, r8d
mov r12, rdx
mov r13, rcx
lea rcx, [rsp + 0x30]
call fcn.140002350
nop
xor al, al
movzx ebp, al
mov r14d, 1
test edi, edi
cmovne ebp, r14d
xor esi, esi
mov rbx, qword [0x1400ae080]
test rbx, rbx
jne 0x1400050ee
mov ecx, 0x310
call fcn.1400278b8
mov rbx, rax
mov qword [rsp + 0x268], rax
test rax, rax
je 0x1400050e4
call fcn.14002790c
mov rcx, rax
mov eax, esi
test rcx, rcx
setne al
test eax, eax
jne 0x140005077
mov ecx, 0x80004005
call fcn.140007e00
int3
mov rax, qword [rcx]
call qword [rax + 0x18]
add rax, 0x18
mov qword [rbx], rax
mov word [rbx + 0x64], 0
xor eax, eax
or rcx, 0xffffffffffffffff
lea rdi, [0x14008a5b0]
repne scasw ax, word [rdi]
not rcx
lea r8d, [rcx - 1]
lea rdx, [0x14008a5b0]
mov rcx, rbx
call fcn.140008260
lea rcx, [rbx + 8]
call qword [sym.imp.KERNEL32.dll_InitializeCriticalSection]
lea rcx, [rbx + 0x30]
call qword [sym.imp.KERNEL32.dll_InitializeCriticalSection]
lea rcx, [rbx + 0x26c]
mov word [rcx], 0
lea r8, [0x14008a5b8]
mov edx, 0x50
call fcn.140052920
nop
jmp 0x1400050e7
mov rbx, rsi
mov qword [0x1400ae080], rbx
mov r8, r12
lea rdx, str.EnableSmartInstallOld__s_
mov rcx, rbx
call fcn.14000d860
mov r8, r12
lea rdx, [rsp + 0x30]
mov rcx, r13
call fcn.140003050
test eax, eax
jne 0x140005141
mov rcx, qword [rsp + 0x40]
test rcx, rcx
je 0x14000512a
mov rax, qword [rsp + 0x68]
test rax, rax
je 0x14000512a
call rax
mov rcx, qword [rsp + 0x38]
test rcx, rcx
je 0x14000513a
call qword [sym.imp.KERNEL32.dll_FreeLibrary]
xor eax, eax
jmp 0x14000525a
mov rbx, qword [rsp + 0x38]
mov rdi, qword [rsp + 0x40]
test rdi, rdi
je 0x1400051ed
mov rax, qword [rsp + 0x1e8]
test rax, rax
jne 0x1400051b3
test rbx, rbx
je 0x14000519b
lea rdx, str.EnableSmartInstall
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [rsp + 0x1e8], rax
test rax, rax
jne 0x1400051b3
mov esi, 0x7f
mov dword [rsp + 0x30], esi
lea rcx, str.EWSIntf::enable_smart_install:_Function_not_found_in_DLL:_EnableSmartInstall_n
call qword [sym.imp.KERNEL32.dll_OutputDebugStringA]
jmp 0x1400051f1
mov esi, 6
mov dword [rsp + 0x30], esi
lea rcx, str.EWSIntf::enable_smart_install:_Attempting_to_lookup_EnableSmartInstall_with_no_DLL_handle_n
call qword [sym.imp.KERNEL32.dll_OutputDebugStringA]
jmp 0x1400051f1
cmp bpl, 1
sete sil
mov edx, esi
mov rcx, rdi
call rax
test eax, eax
setne al
test al, al
je 0x1400051ed
mov rdx, qword [rsp + 0x68]
test rdx, rdx
je 0x1400051da
mov rcx, rdi
call rdx
test rbx, rbx
je 0x1400051e8
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_FreeLibrary]
mov eax, r14d
jmp 0x14000525a
mov esi, dword [rsp + 0x30]
or ebp, 0xffffffff
test rdi, rdi
je 0x14000521d
mov rax, qword [rsp + 0x70]
test rax, rax
je 0x14000521f
lea rdx, [rsp + 0x260]
mov rcx, rdi
call rax
test eax, eax
je 0x14000521f
mov ebp, dword [rsp + 0x260]
jmp 0x14000521f
mov ebp, esi
call fcn.14000d730
mov rcx, rax
lea r8, str.ewsinfo.enable_smart_install__
mov edx, ebp
call fcn.14000daa0
nop
test rdi, rdi
je 0x14000524a
mov rax, qword [rsp + 0x68]
test rax, rax
je 0x14000524a
mov rcx, rdi
call rax
test rbx, rbx
je 0x140005258
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_FreeLibrary]
xor eax, eax
lea r11, [rsp + 0x220]
mov rbx, qword [r11 + 0x30]
mov rbp, qword [r11 + 0x38]
mov rsp, r11
pop r14
pop r13
pop r12
pop rdi
pop rsi
ret
push rsi
push rdi
push r12
sub rsp, 0x30
mov qword [rsp + 0x20], 0xfffffffffffffffe
mov qword [rsp + 0x50], rbx
mov qword [rsp + 0x58], rbp
mov ebp, r8d
mov rsi, rdx
mov r12, rcx
mov rbx, qword [0x1400ae080]
test rbx, rbx
jne 0x1400053cb
mov ecx, 0x310
call fcn.1400278b8
mov rbx, rax
mov qword [rsp + 0x68], rax
test rax, rax
je 0x1400053bf
call fcn.14002790c
mov rdx, rax
xor ecx, ecx
test rax, rax
setne cl
test ecx, ecx
jne 0x14000534f
mov ecx, 0x80004005
call fcn.140007e00
int3
mov rax, qword [rax]
mov rcx, rdx
call qword [rax + 0x18]
add rax, 0x18
mov qword [rbx], rax
mov word [rbx + 0x64], 0
xor eax, eax
or rcx, 0xffffffffffffffff
lea rdi, [0x14008a5b0]
repne scasw ax, word [rdi]
not rcx
lea r8d, [rcx - 1]
lea rdx, [0x14008a5b0]
mov rcx, rbx
call fcn.140008260
lea rcx, [rbx + 8]
call qword [sym.imp.KERNEL32.dll_InitializeCriticalSection]
lea rcx, [rbx + 0x30]
call qword [sym.imp.KERNEL32.dll_InitializeCriticalSection]
lea rcx, [rbx + 0x26c]
mov word [rcx], 0
lea r8, [0x14008a5b8]
mov edx, 0x50
call fcn.140052920
nop
jmp 0x1400053c4
xor ecx, ecx
mov rbx, rcx
mov qword [0x1400ae080], rbx
mov r8, rsi
lea rdx, str.EnableSmartInstall__s_
mov rcx, rbx
call fcn.14000d860
mov r8d, ebp
mov rdx, rsi
mov rcx, r12
mov rbx, qword [rsp + 0x50]
mov rbp, qword [rsp + 0x58]
add rsp, 0x30
pop r12
pop rdi
pop rsi
jmp 0x140004fe0