Function at 0x140039a8c
Capabilities:
Check if file exists
Get common file path
Get file attributes
Set current directory

Disassembly:
mov qword [rsp + 0x20], rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x5c0]
sub rsp, 0x6c0
mov rax, qword [0x1400592a0]
xor rax, rsp
mov qword [rbp + 0x5b0], rax
xor r13d, r13d
mov qword [rsp + 0x38], rcx
mov dword [rsp + 0x50], r13d
mov rax, r8
mov qword [rsp + 0x40], rax
mov r12d, r9d
lea rcx, str.DEFAULTINSTALL
mov rsi, rdx
lea r14d, [r13 + 1]
mov ebx, r13d
mov edi, r13d
test r8, r8
je 0x140039b03
mov rdx, rcx
mov rcx, rax
call qword [sym.imp.api_ms_win_crt_private_l1_1_0.dll__o__wcsicmp]
nop dword [rax + rax]
test eax, eax
jne 0x140039b12
call fcn.14001c84c
test eax, eax
cmove edi, r14d
mov dword [rsp + 0x50], edi
mov qword [rsp + 0x30], r13
mov r14, r13
test rsi, rsi
jne 0x140039b29
mov eax, 0x80004003
jmp 0x14003aa50
mov ecx, 0x208
call fcn.1400014a0
mov qword [rsp + 0x48], rax
mov r15, rax
test rax, rax
je 0x14003aa4b
mov r13d, 0x104
mov rdx, rax
mov ecx, r13d
call qword [sym.imp.KERNEL32.dll_GetCurrentDirectoryW]
nop dword [rax + rax]
mov edi, eax
test eax, eax
jne 0x140039b93
mov rcx, r15
call fcn.140001454
call qword [sym.imp.KERNEL32.dll_GetLastError]
nop dword [rax + rax]
mov edi, eax
test eax, eax
jne 0x140039b81
lea edi, [rax + 0x57]
jmp 0x140039b83
jle 0x140039b8c
movzx edi, di
or edi, 0x80070000
mov eax, edi
jmp 0x14003aa50
cmp edi, r13d
jbe 0x140039bdd
mov rcx, r15
call fcn.140001454
lea ecx, [rdi + 1]
mov eax, 2
mul rcx
mov rcx, 0xffffffffffffffff
cmovo rax, rcx
mov rcx, rax
call fcn.1400014a0
mov qword [rsp + 0x48], rax
test rax, rax
je 0x14003aa4b
mov rdx, rax
mov ecx, edi
call qword [sym.imp.KERNEL32.dll_GetCurrentDirectoryW]
nop dword [rax + rax]
mov rcx, rsi
call fcn.14001ab20
xor r9d, r9d
mov ecx, 0x5c
mov r15d, 0x102
test eax, eax
je 0x140039cb9
mov edx, ecx
mov rcx, rsi
call qword [sym.imp.api_ms_win_crt_private_l1_1_0.dll_wcsrchr]
nop dword [rax + rax]
xor r9d, r9d
lea edi, [r15 + 1]
test rax, rax
lea rcx, [rbp - 0x80]
lea rax, [rbp - 0x80]
mov edx, edi
je 0x140039c5b
sub rsi, rax
lea rax, [rdx + 0x7ffffefb]
test rax, rax
je 0x140039c47
movzx eax, word [rcx + rsi]
test ax, ax
je 0x140039c47
mov word [rcx], ax
add rcx, 2
sub rdx, 1
jne 0x140039c25
test rdx, rdx
lea rax, [rcx - 2]
cmovne rax, rcx
mov word [rax], r9w
jmp 0x140039d42
mov r8, qword [rsp + 0x48]
sub r8, rax
lea rax, [rdx + 0x7ffffefb]
test rax, rax
je 0x140039c86
movzx eax, word [rcx + r8]
test ax, ax
je 0x140039c86
mov word [rcx], ax
add rcx, 2
sub rdx, 1
jne 0x140039c63
lea rax, [rcx - 2]
test rdx, rdx
cmovne rax, rcx
lea rcx, [rbp - 0x80]
mov word [rax], r9w
call qword [sym.imp.SHLWAPI.dll_PathAddBackslashW]
nop dword [rax + rax]
mov r8, rsi
lea rcx, [rbp - 0x80]
mov rdx, rdi
call fcn.140010d0c
jmp 0x140039d42
mov r8, qword [rsp + 0x48]
lea rax, [rbp - 0x80]
sub r8, rax
lea rcx, [rbp - 0x80]
mov rdx, r15
lea rax, [rdx + 0x7ffffefc]
test rax, rax
je 0x140039cef
movzx eax, word [rcx + r8]
test ax, ax
je 0x140039cef
mov word [rcx], ax
add rcx, 2
sub rdx, 1
jne 0x140039ccc
lea rax, [rcx - 2]
test rdx, rdx
cmovne rax, rcx
lea rcx, [rbp - 0x80]
mov word [rax], r9w
call qword [sym.imp.SHLWAPI.dll_PathAddBackslashW]
nop dword [rax + rax]
mov edi, 0x103
lea rcx, [rbp - 0x80]
mov edx, edi
mov r8, rsi
call fcn.140010d0c
lea rcx, [rbp - 0x80]
call qword [sym.imp.KERNEL32.dll_GetFileAttributesW]
nop dword [rax + rax]
cmp eax, 0xffffffff
je 0x14003aa44
test al, 0x10
jne 0x14003aa44
mov rcx, qword [rsp + 0x40]
lea rsi, str.UNREGISTEROCXS
test rcx, rcx
je 0x140039da1
lea rdx, str.ninstall
call qword [sym.imp.api_ms_win_crt_private_l1_1_0.dll_wcsstr]
nop dword [rax + rax]
test rax, rax
je 0x140039da1
mov ecx, 0x202
call fcn.1400014a0
mov r14, rax
test rax, rax
je 0x14003aa4b
lea r9, str.DELFILES
mov qword [rsp + 0x20], rsi
lea r8, str._s__s
mov edx, pe_nt_image_headers64
mov rcx, rax
call fcn.140010e44
test r12d, r12d
je 0x140039dc5
or dword [0x140059568], 8
lea r8, str.INFParser_using_delayed_transactions
lea rdx, str.__Reboot_requested_due_to__S_file_copy._r_n
mov ecx, 2
call fcn.140019b1c
mov rsi, qword [rsp + 0x38]
mov rdx, qword [rsi + 0x18]
test rdx, rdx
jne 0x140039f28
mov edx, 0x3a
lea rcx, [rbp - 0x80]
call qword [sym.imp.api_ms_win_crt_private_l1_1_0.dll_wcschr]
nop dword [rax + rax]
test rax, rax
jne 0x140039ee5
lea rdx, [0x140051c5c]
lea rcx, [rbp - 0x80]
call qword [sym.imp.api_ms_win_crt_private_l1_1_0.dll_wcsstr]
nop dword [rax + rax]
test rax, rax
jne 0x140039ee5
mov r12, qword [rsp + 0x48]
lea rax, [rbp + 0x190]
mov rdx, r12
lea rcx, [rbp + 0x190]
sub rdx, rax
lea rax, [r15 + 0x7ffffefc]
test rax, rax
je 0x140039e50
movzx eax, word [rcx + rdx]
test ax, ax
je 0x140039e50
mov word [rcx], ax
add rcx, 2
sub r15, 1
jne 0x140039e2e
lea rax, [rcx - 2]
test r15, r15
cmovne rax, rcx
xor r15d, r15d
lea rcx, [rbp + 0x190]
mov word [rax], r15w
call qword [sym.imp.SHLWAPI.dll_PathAddBackslashW]
nop dword [rax + rax]
lea r8, [rbp - 0x80]
mov rdx, rdi
lea rcx, [rbp + 0x190]
call fcn.140010d0c
lea edx, [r15 + 0x5c]
lea rcx, [rbp - 0x80]
call qword [sym.imp.api_ms_win_crt_private_l1_1_0.dll_wcsrchr]
nop dword [rax + rax]
test rax, rax
je 0x140039f75
lea r8, [rbp + 0x190]
mov rdx, rdi
lea rax, [rbp - 0x80]
sub r8, rax
lea rcx, [rbp - 0x80]
lea rax, [rdx + 0x7ffffefb]
test rax, rax
je 0x140039edd
movzx eax, word [rcx + r8]
test ax, ax
je 0x140039edd
mov word [rcx], ax
add rcx, 2
sub rdx, 1
jne 0x140039eba
test rdx, rdx
jmp 0x140039f69
lea r8, [rbp - 0x80]
mov rdx, rdi
lea rax, [rbp + 0x190]
sub r8, rax
lea rcx, [rbp + 0x190]
xor r15d, r15d
lea rax, [rdx + 0x7ffffefb]
test rax, rax
je 0x140039f23
movzx eax, word [rcx + r8]
test ax, ax
je 0x140039f23
mov word [rcx], ax
add rcx, 2
sub rdx, 1
jne 0x140039f00
test rdx, rdx
jmp 0x140039f64
lea rax, [rbp + 0x190]
mov r8, rdi
sub rdx, rax
lea rcx, [rbp + 0x190]
xor r15d, r15d
lea rax, [r8 + 0x7ffffefb]
test rax, rax
je 0x140039f61
movzx eax, word [rcx + rdx]
test ax, ax
je 0x140039f61
mov word [rcx], ax
add rcx, 2
sub r8, 1
jne 0x140039f3f
test r8, r8
mov r12, qword [rsp + 0x48]
lea rax, [rcx - 2]
cmovne rax, rcx
mov word [rax], r15w
mov edx, 0x5c
lea rcx, [rbp + 0x190]
call qword [sym.imp.api_ms_win_crt_private_l1_1_0.dll_wcsrchr]
nop dword [rax + rax]
test rax, rax
je 0x140039f96
mov word [rax], r15w
lea rdx, [rbp + 0x190]
lea rax, [rbp + 0x3a0]
sub rdx, rax
lea rcx, [rbp + 0x3a0]
lea rax, [r13 + 0x7ffffefa]
test rax, rax
je 0x140039fd0
movzx eax, word [rcx + rdx]
test ax, ax
je 0x140039fd0
mov word [rcx], ax
add rcx, 2
sub r13, 1
jne 0x140039fae
test r13, r13
lea rax, [rcx - 2]
cmovne rax, rcx
mov word [rax], r15w
je 0x14003a04d
mov edx, 0x5c
or r8, 0xffffffffffffffff
lea rcx, [rbp + 0x3a0]
mov rax, r8
inc rax
cmp word [rcx + rax*2], r15w
jne 0x140039ff4
test rax, rax
je 0x14003a031
cmp word [rbp + rax*2 + 0x39e], dx
jne 0x14003a031
lea rcx, [rbp + 0x3a0]
mov rax, r8
inc rax
cmp word [rcx + rax*2], r15w
jne 0x14003a017
test rax, rax
je 0x14003a031
mov word [rbp + rax*2 + 0x39e], r15w
jmp 0x140039fea
lea rcx, [rbp + 0x3a0]
call qword [sym.imp.KERNEL32.dll_GetFileAttributesW]
nop dword [rax + rax]
cmp eax, 0xffffffff
je 0x14003a04d
test al, 0x10
jne 0x14003a092
lea rax, [rbp + 0x190]
mov rdx, r12
sub rdx, rax
lea rcx, [rbp + 0x190]
lea rax, [rdi + 0x7ffffefb]
test rax, rax
je 0x14003a083
movzx eax, word [rcx + rdx]
test ax, ax
je 0x14003a083
mov word [rcx], ax
add rcx, 2
sub rdi, 1
jne 0x14003a061
test rdi, rdi
lea rax, [rcx - 2]
cmovne rax, rcx
mov word [rax], r15w
mov rcx, qword [rsi + 0x18]
test rcx, rcx
je 0x14003a0a4
call fcn.140001454
mov qword [rsi + 0x18], r15
or r12, 0xffffffffffffffff
lea rax, [rbp + 0x190]
mov rdi, r12
inc rdi
cmp word [rax + rdi*2], r15w
jne 0x14003a0b2
mov r13d, 1
add rdi, r13
lea eax, [r13 + 1]
mul rdi
cmovo rax, r12
mov rcx, rax
call fcn.1400014a0
mov qword [rsi + 0x18], rax
test rax, rax
je 0x14003a10b
lea r8, [rbp + 0x190]
lea rdx, str.__InfParser:_Set_source_directory__S._r_n
lea ecx, [r13 + 3]
call fcn.140019b1c
mov rcx, qword [rsi + 0x18]
lea r8, [rbp + 0x190]
mov rdx, rdi
call fcn.140010dd0
lea rcx, [rbp + 0x190]
call qword [sym.imp.KERNEL32.dll_SetCurrentDirectoryW]
nop dword [rax + rax]
xorps xmm0, xmm0
lea rcx, [rbp - 0x80]
movdqu xmmword [rsp + 0x58], xmm0
call fcn.14001fb0c
mov rsi, rax
cmp rax, r12
je 0x14003a93b
mov r12d, dword [rsp + 0x50]
test r12d, r12d
je 0x14003a1ad
mov qword [rsp + 0x50], rax
lea r9, str.NONADMININSTALL
lea rax, str.IGNOREERRORS
mov dword [rsp + 0x28], r13d
lea r8, [rsp + 0x68]
mov qword [rsp + 0x20], rax
lea rdx, [rsp + 0x50]
xor ecx, ecx
call fcn.14003c7c0
test eax, eax
je 0x14003a1ad
lea rcx, [rsp + 0x68]
call fcn.14003ca58
mov rdi, rax
test rax, rax
je 0x14003a1ad
mov rcx, rax
call qword [sym.imp.api_ms_win_crt_private_l1_1_0.dll__o__wcsupr]
nop dword [rax + rax]
mov r8, rdi
lea rdx, str.INF:_INF_requested_error_override_for__S._r_n
mov ecx, 3
call fcn.140019b1c
mov r13, qword [rsp + 0x40]
xor r9d, r9d
mov r8, r13
mov dword [rsp + 0x20], r15d
mov rdx, rsi
call fcn.14003ce08
mov edi, eax
test eax, eax
jns 0x14003a20a
test r14, r14
je 0x14003a208
lea rdx, str.RUNPRESETUPCOMMANDS
mov rcx, r14
call qword [sym.imp.api_ms_win_crt_private_l1_1_0.dll_wcsstr]
nop dword [rax + rax]
test rax, rax
je 0x14003a208
lea r9, str.RUNPRESETUPCOMMANDS
mov r8d, edi
lea rdx, str.INF:_Error_0x_x_reported_for__S.__Honoring_INF_error_override_and_continuing._r_n
mov ecx, 3
call fcn.140019b1c
jmp 0x14003a20a
mov ebx, edi
test r12d, r12d
je 0x14003a26b
xor r9d, r9d
mov dword [rsp + 0x20], r15d
lea r8, str.NONADMININSTALL
mov rdx, rsi
call fcn.14003ce08
mov edi, eax
test eax, eax
jns 0x14003a26b
test r14, r14
je 0x14003a269
lea rdx, str.RUNPRESETUPCOMMANDS
mov rcx, r14
call qword [sym.imp.api_ms_win_crt_private_l1_1_0.dll_wcsstr]
nop dword [rax + rax]
test rax, rax
je 0x14003a269
lea r9, str.RUNPRESETUPCOMMANDS
mov r8d, edi
lea rdx, str.INF:_Error_0x_x_reported_for__S.__Honoring_INF_error_override_and_continuing._r_n
mov ecx, 3
call fcn.140019b1c
jmp 0x14003a26b
mov ebx, edi
lea rax, [rsp + 0x58]
mov r9, r13
mov r8, rsi
mov qword [rsp + 0x20], rax
lea rdx, [rbp - 0x80]
call fcn.14003d374
mov edi, eax
test eax, eax
jns 0x14003a291
mov ebx, eax
jmp 0x14003a924
test r12d, r12d
je 0x14003a2b8
lea rax, [rsp + 0x58]
mov r8, rsi
lea r9, str.NONADMININSTALL
mov qword [rsp + 0x20], rax
lea rdx, [rbp - 0x80]
call fcn.14003d374
test eax, eax
cmovs ebx, eax
lea r9, [rsp + 0x30]
mov r8, r13
mov rdx, rsi
call fcn.14003c678
mov r15d, eax
cmp eax, 0xd2af9
je 0x14003a304
xor edi, edi
test r12d, r12d
je 0x14003a304
mov rcx, qword [rsp + 0x30]
test rcx, rcx
je 0x14003a2ed
call fcn.140001454
mov qword [rsp + 0x30], rdi
lea r9, [rsp + 0x30]
mov rdx, rsi
lea r8, str.NONADMININSTALL
call fcn.14003c678
mov r15d, eax
mov r8, r13
mov rdx, rsi
call fcn.14003ac04
lea rax, str.DEFAULTINSTALL
mov dword [rsp + 0x28], 1
test r13, r13
mov qword [rsp + 0x40], rsi
mov rdi, r13
lea r8, [rsp + 0x68]
cmove rdi, rax
lea rdx, [rsp + 0x40]
lea rax, str.STOPSERVICES
mov r9, rdi
xor ecx, ecx
mov qword [rsp + 0x20], rax
call fcn.14003c7c0
test eax, eax
je 0x14003a360
mov rcx, qword [rsp + 0x40]
lea rdx, [rsp + 0x68]
call fcn.140035384
lea rax, str.DELETESERVICES
mov dword [rsp + 0x28], 1
mov r9, rdi
mov qword [rsp + 0x20], rax
lea r8, [rsp + 0x68]
mov qword [rsp + 0x40], rsi
lea rdx, [rsp + 0x40]
xor ecx, ecx
call fcn.14003c7c0
mov rdi, qword [rsp + 0x38]
test eax, eax
je 0x14003a3c3
lea r8, [rdi + 4]
mov r9, rdi
lea rdx, str.umwdf
call fcn.1400349d4
test eax, eax
je 0x14003a3b4
mov dword [rdi + 8], 1
mov rcx, qword [rsp + 0x40]
lea rdx, [rsp + 0x68]
call fcn.1400345e0
xor eax, eax
xor r9d, r9d
mov r8, r13
mov dword [rsp + 0x20], eax
mov rdx, rsi
mov rcx, rdi
call fcn.14003cba8
mov edi, eax
test eax, eax
jns 0x14003a41f
test r14, r14
je 0x14003a41d
lea rdx, str.UNREGISTEROCXS
mov rcx, r14
call qword [sym.imp.api_ms_win_crt_private_l1_1_0.dll_wcsstr]
nop dword [rax + rax]
test rax, rax
je 0x14003a41d
lea r9, str.UNREGISTEROCXS
mov r8d, edi
lea rdx, str.INF:_Error_0x_x_reported_for__S.__Honoring_INF_error_override_and_continuing._r_n
mov ecx, 3
call fcn.140019b1c
jmp 0x14003a41f
mov ebx, edi
xor eax, eax
test r12d, r12d
je 0x14003a486
mov rcx, qword [rsp + 0x38]
lea r8, str.NONADMININSTALL
xor r9d, r9d
mov dword [rsp + 0x20], eax
mov rdx, rsi
call fcn.14003cba8
mov edi, eax
test eax, eax
jns 0x14003a486
test r14, r14
je 0x14003a484
lea rdx, str.UNREGISTEROCXS
mov rcx, r14
call qword [sym.imp.api_ms_win_crt_private_l1_1_0.dll_wcsstr]
nop dword [rax + rax]
test rax, rax
je 0x14003a484
lea r9, str.UNREGISTEROCXS
mov r8d, edi
lea rdx, str.INF:_Error_0x_x_reported_for__S.__Honoring_INF_error_override_and_continuing._r_n
mov ecx, 3
call fcn.140019b1c
jmp 0x14003a486
mov ebx, edi
xor r9d, r9d
mov r8, r13
mov rdx, rsi
call fcn.14003b4fc
mov edi, eax
test eax, eax
jns 0x14003a4d9
test r14, r14
je 0x14003a4d7
lea rdx, str.DELREG
mov rcx, r14
call qword [sym.imp.api_ms_win_crt_private_l1_1_0.dll_wcsstr]
nop dword [rax + rax]
test rax, rax
je 0x14003a4d7
lea r9, str.DELREG
mov r8d, edi
lea rdx, str.INF:_Error_0x_x_reported_for__S.__Honoring_INF_error_override_and_continuing._r_n
mov ecx, 3
call fcn.140019b1c
jmp 0x14003a4d9
mov ebx, edi
test r12d, r12d
je 0x14003a535
xor r9d, r9d
lea r8, str.NONADMININSTALL
mov rdx, rsi
call fcn.14003b4fc
mov edi, eax
test eax, eax
jns 0x14003a535
test r14, r14
je 0x14003a533
lea rdx, str.DELREG
mov rcx, r14
call qword [sym.imp.api_ms_win_crt_private_l1_1_0.dll_wcsstr]
nop dword [rax + rax]
test rax, rax
je 0x14003a533
lea r9, str.DELREG
mov r8d, edi
lea rdx, str.INF:_Error_0x_x_reported_for__S.__Honoring_INF_error_override_and_continuing._r_n
mov ecx, 3
call fcn.140019b1c
jmp 0x14003a535
mov ebx, edi
mov rcx, qword [rsp + 0x38]
lea rax, [rsp + 0x58]
xor r9d, r9d
mov qword [rsp + 0x20], rax
mov r8, r13
mov rdx, rsi
call fcn.14003b6bc
mov edi, eax
test eax, eax
jns 0x14003a5ca
test r14, r14
je 0x14003a5c6
lea rdx, str.DELFILES
mov rcx, r14
call qword [sym.imp.api_ms_win_crt_private_l1_1_0.dll_wcsstr]
nop dword [rax + rax]
test rax, rax
je 0x14003a5c6
lea r9, str.DELFILES
mov r8d, edi
lea rdx, str.INF:_Error_0x_x_reported_for__S.__Honoring_INF_error_override_and_continuing._r_n
mov ecx, 3
call fcn.140019b1c
mov rdi, qword [rsp + 0x30]
test r12d, r12d
je 0x14003a607
mov rcx, qword [rsp + 0x38]
lea rax, [rsp + 0x58]
xor r9d, r9d
mov qword [rsp + 0x20], rax
lea r8, str.NONADMININSTALL
mov rdx, rsi
call fcn.14003b6bc
test eax, eax
jns 0x14003a5ec
mov ebx, eax
jmp 0x14003a607
mov ebx, edi
jmp 0x14003a593
cmp r15d, 0xd2af8
jne 0x14003a593
cmp edi, 1
je 0x14003a593
mov rdi, qword [rsp + 0x30]
mov edx, 4
mov r8, rdi
call fcn.14001e2e8
jmp 0x14003a598
cmp r15d, 0xd2af8
jne 0x14003a607
cmp eax, 1
je 0x14003a607
mov r8, rdi
mov edx, 4
call fcn.14001e2e8
mov rcx, qword [rsp + 0x38]
lea rax, [rsp + 0x58]
mov r9d, 1
mov qword [rsp + 0x20], rax
mov r8, r13
mov rdx, rsi
call fcn.14003b6bc
mov edi, eax
test eax, eax
jns 0x14003a6a2
test r14, r14
je 0x14003a69e
lea rdx, str.COPYFILES
mov rcx, r14
call qword [sym.imp.api_ms_win_crt_private_l1_1_0.dll_wcsstr]
nop dword [rax + rax]
test rax, rax
je 0x14003a69e
lea r9, str.COPYFILES
mov r8d, edi
lea rdx, str.INF:_Error_0x_x_reported_for__S.__Honoring_INF_error_override_and_continuing._r_n
mov ecx, 3
call fcn.140019b1c
mov rdi, qword [rsp + 0x30]
test r12d, r12d
je 0x14003a6df
mov rcx, qword [rsp + 0x38]
lea rax, [rsp + 0x58]
mov r9d, 1
mov qword [rsp + 0x20], rax
lea r8, str.NONADMININSTALL
mov rdx, rsi
call fcn.14003b6bc
test eax, eax
jns 0x14003a6c4
mov ebx, eax
jmp 0x14003a6df
mov ebx, edi
jmp 0x14003a668
cmp r15d, 0xd2af8
jne 0x14003a668
cmp edi, 1
je 0x14003a668
mov rdi, qword [rsp + 0x30]
mov edx, 4
mov r8, rdi
call fcn.14001e2e8
jmp 0x14003a66d
cmp r15d, 0xd2af8
jne 0x14003a6df
cmp eax, 1
je 0x14003a6df
mov r8, rdi
mov edx, 4
call fcn.14001e2e8
mov r8, r13
mov rdx, rsi
call fcn.14003dd68
mov edi, eax
test eax, eax
jns 0x14003a72f
test r14, r14
je 0x14003a72d
lea rdx, str.UPDATEINIS
mov rcx, r14
call qword [sym.imp.api_ms_win_crt_private_l1_1_0.dll_wcsstr]
nop dword [rax + rax]
test rax, rax
je 0x14003a72d
lea r9, str.UPDATEINIS
mov r8d, edi
lea rdx, str.INF:_Error_0x_x_reported_for__S.__Honoring_INF_error_override_and_continuing._r_n
mov ecx, 3
call fcn.140019b1c
jmp 0x14003a72f
mov ebx, edi
test r12d, r12d
je 0x14003a748
lea r8, str.NONADMININSTALL
mov rdx, rsi
call fcn.14003dd68
test eax, eax
cmovs ebx, eax
mov r9d, 1
mov r8, r13
mov rdx, rsi
call fcn.14003b4fc
mov edi, eax
test eax, eax
jns 0x14003a79e
test r14, r14
je 0x14003a79c
lea rdx, str.ADDREG
mov rcx, r14
call qword [sym.imp.api_ms_win_crt_private_l1_1_0.dll_wcsstr]
nop dword [rax + rax]
test rax, rax
je 0x14003a79c
lea r9, str.ADDREG
mov r8d, edi
lea rdx, str.INF:_Error_0x_x_reported_for__S.__Honoring_INF_error_override_and_continuing._r_n
mov ecx, 3
call fcn.140019b1c
jmp 0x14003a79e
mov ebx, edi
test r12d, r12d
je 0x14003a7bd
mov r9d, 1
lea r8, str.NONADMININSTALL
mov rdx, rsi
call fcn.14003b4fc
test eax, eax
cmovs ebx, eax
mov eax, dword [0x140059568]
mov r9d, 1
mov r15, qword [rsp + 0x38]
and eax, 8
mov r8, r13
mov dword [rsp + 0x20], eax
mov rdx, rsi
mov rcx, r15
call fcn.14003cba8
mov edi, eax
test eax, eax
jns 0x14003a828
test r14, r14
je 0x14003a826
lea rdx, str.REGISTEROCXS
mov rcx, r14
call qword [sym.imp.api_ms_win_crt_private_l1_1_0.dll_wcsstr]
nop dword [rax + rax]
test rax, rax
je 0x14003a826
lea r9, str.REGISTEROCXS
mov r8d, edi
lea rdx, str.INF:_Error_0x_x_reported_for__S.__Honoring_INF_error_override_and_continuing._r_n
mov ecx, 3
call fcn.140019b1c
jmp 0x14003a828
mov ebx, edi
test r12d, r12d
je 0x14003a857
mov eax, dword [0x140059568]
lea r8, str.NONADMININSTALL
and eax, 8
mov r9d, 1
mov rdx, rsi
mov dword [rsp + 0x20], eax
mov rcx, r15
call fcn.14003cba8
test eax, eax
cmovs ebx, eax
mov r8, r13
mov rdx, rsi
call fcn.14003c4e8
test eax, eax
cmovs ebx, eax
test r12d, r12d
je 0x14003a880
lea r8, str.NONADMININSTALL
mov rdx, rsi
call fcn.14003c4e8
test eax, eax
cmovs ebx, eax
mov eax, dword [0x140059568]
mov r9d, 1
and eax, 8
mov r8, r13
mov rdx, rsi
mov dword [rsp + 0x20], eax
call fcn.14003ce08
test eax, eax
mov edi, eax
cmovs ebx, eax
test r12d, r12d
je 0x14003a8d3
mov eax, dword [0x140059568]
lea r8, str.NONADMININSTALL
and eax, 8
mov r9d, 1
mov rdx, rsi
mov dword [rsp + 0x20], eax
call fcn.14003ce08
test eax, eax
mov edi, eax
cmovs ebx, eax
test byte [0x140059568], 8
jne 0x14003a921
mov r8, r13
mov rdx, rsi
mov rcx, r15
call fcn.140039088
xor r15d, r15d
mov r8, r13
test eax, eax
mov rdx, rsi
cmovs ebx, eax
call fcn.14003ad84
test eax, eax
mov edi, eax
cmovs ebx, eax
test r12d, r12d
je 0x14003a924
lea r8, str.NONADMININSTALL
mov rdx, rsi
call fcn.14003ad84
test eax, eax
mov edi, eax
cmovs ebx, eax
jmp 0x14003a924
xor r15d, r15d
mov rcx, rsi
call qword [sym.imp.SETUPAPI.dll_SetupCloseInfFile]
nop dword [rax + rax]
mov r13d, 1
jmp 0x14003a975
call qword [sym.imp.KERNEL32.dll_GetLastError]
nop dword [rax + rax]
mov edi, eax
test eax, eax
jne 0x14003a952
lea edi, [rax + 0x57]
jmp 0x14003a954
jle 0x14003a95d
movzx edi, di
or edi, 0x80070000
mov r9d, edi
lea r8, [rbp - 0x80]
lea rdx, str.ERROR:_Failed_to_open_INF:__S.__Result:_0x_x._r_n
mov ecx, 2
call fcn.140019b1c
mov rsi, qword [rsp + 0x48]
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_SetCurrentDirectoryW]
nop dword [rax + rax]
test edi, edi
js 0x14003a9b9
test ebx, ebx
js 0x14003a9b9
call fcn.14001e608
cmp dword [0x140059568], r15d
je 0x14003a9fd
call fcn.14001e608
movzx ebx, byte [0x140059568]
shr ebx, 3
and ebx, r13d
or ebx, 0xd2af8
jmp 0x14003a9fd
mov r9d, ebx
lea r8, [rbp - 0x80]
lea rdx, str.ERROR:_INF_parser_failed_on:__S.__Result:_0x_x._r_n
mov ecx, 2
call fcn.140019b1c
call fcn.14001e608
cmp dword [0x140059568], r15d
je 0x14003a9f8
call fcn.14001e608
mov ebx, dword [0x140059568]
shr ebx, 3
and ebx, r13d
or ebx, 0xc00d2afa
jmp 0x14003a9fd
test edi, edi
cmovs ebx, edi
mov rcx, rsi
call fcn.140001454
test r14, r14
je 0x14003aa12
mov rcx, r14
call fcn.140001454
mov rax, qword [rsp + 0x30]
test rax, rax
je 0x14003aa24
mov rcx, rax
call fcn.140001454
call fcn.14001c428
lea rcx, [rsp + 0x58]
mov dword [0x140059564], eax
mov dword [0x14005956c], r13d
call fcn.140037884
mov eax, ebx
jmp 0x14003aa50
mov eax, 0x80070002
jmp 0x14003aa50
mov eax, 0x8007000e
mov rcx, qword [rbp + 0x5b0]
xor rcx, rsp
call fcn.1400017f0
mov rbx, qword [rsp + 0x718]
add rsp, 0x6c0
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret