Function at 0x14002b590
Capabilities:
Enumerate gui resources
Query environment variable

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rsi
mov qword [rsp + 0x18], rdi
push rbp
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x11d0]
mov eax, 0x12d0
call fcn.14004ff90
sub rsp, rax
xor r15d, r15d
mov esi, r8d
mov rbx, rdx
mov dword [rbp + 0x1218], r15d
mov rdi, rcx
mov dword [rsp + 0x40], r15d
xor edx, edx
mov dword [rsp + 0x58], r15d
mov r8d, 0x200
mov dword [rsp + 0x44], r15d
lea rcx, [rbp + 0x1b0]
mov r13d, r15d
mov r14d, r15d
mov r12d, r15d
call fcn.1400514f0
xor edx, edx
mov dword [rsp + 0x60], r15d
mov r8d, 0x200
lea rcx, [rbp - 0x50]
call fcn.1400514f0
movsd xmm0, qword [str.amdkmpfd]
lea rcx, str.dpinst.exe
movzx eax, byte [0x1400b0f08]
movsd qword [rbp - 0x50], xmm0
mov byte [rbp - 0x48], al
call fcn.14002adf0
mov r15d, 1
test eax, eax
je 0x14002b652
mov edx, eax
lea rcx, [0x14002f050]
call qword [sym.imp.USER32.dll_EnumWindows]
test eax, eax
jne 0x14002b6d0
lea rcx, str.ATISetup.exe
call fcn.14002adf0
test eax, eax
je 0x14002b677
mov rcx, qword [0x1400da5d8]
test rcx, rcx
je 0x14002b6d0
lea r9, str.ATISetup.exe
jmp 0x14002b6bf
lea rcx, str.InstallManagerApp.exe
call fcn.14002adf0
test eax, eax
je 0x14002b69c
mov rcx, qword [0x1400da5d8]
test rcx, rcx
je 0x14002b6d0
lea r9, str.InstallManagerApp.exe
jmp 0x14002b6bf
lea rcx, str.RadeonInstaller.exe
call fcn.14002adf0
test eax, eax
je 0x14002b6d5
mov rcx, qword [0x1400da5d8]
test rcx, rcx
je 0x14002b6d0
lea r9, str.RadeonInstaller.exe
lea r8, str.IsProcessFound:__s_is_running.
mov edx, 2
call fcn.140040750
mov dword [rsp + 0x44], r15d
lea rax, [rsp + 0x60]
mov r9, rbx
mov r8, rdi
mov qword [rsp + 0x20], rax
mov edx, 0x200
lea rcx, [rbp + 0x1b0]
call fcn.14002a820
test eax, eax
jne 0x14002b71e
mov rcx, qword [0x1400da5d8]
test rcx, rcx
je 0x14002b717
lea r8, str._InstallFilterDriver_GetFilterInstallPath_failed.
mov edx, 0x100
call fcn.140040530
xor eax, eax
jmp 0x14002bda0
mov rdi, 0xffffffffffffffff
lea rax, [rbp + 0x1b0]
mov rbx, rdi
nop
inc rbx
cmp byte [rax + rbx], r12b
jne 0x14002b730
lea rax, [rbp - 0x70]
mov dword [rsp + 0x70], r12d
mov qword [rsp + 0x28], rax
lea r8, str.RebootIsPending
lea rax, [rsp + 0x70]
mov dword [rbp - 0x70], 4
xor r9d, r9d
mov qword [rsp + 0x20], rax
lea rdx, [0x1400a65a8]
mov rcx, 0xffffffff80000002
call fcn.140043e50
test eax, eax
mov eax, dword [0x1400da61c]
je 0x14002b78e
cmp dword [rsp + 0x70], r15d
cmove eax, r15d
mov dword [0x1400da61c], eax
cmp rbx, 0x1f3
jae 0x14002bd19
test eax, eax
jne 0x14002bd19
cmp dword [0x1400da4d4], r12d
jne 0x14002bd19
lea rcx, [rbp + 0x1b0]
dec rcx
cmp dword [rsp + 0x60], r12d
je 0x14002b7f0
cmp byte [rcx + 1], r12b
lea rcx, [rcx + 1]
jne 0x14002b7c1
mov eax, dword [0x1400b1548]
movsd xmm0, qword [str._amdpfdun.inf]
movsd qword [rcx], xmm0
mov dword [rcx + 8], eax
movzx eax, word [0x1400b154c]
jmp 0x14002b816
cmp byte [rcx + 1], r12b
lea rcx, [rcx + 1]
jne 0x14002b7f0
mov eax, dword [0x1400b1298]
movsd xmm0, qword [str._amdkmpfd.inf]
movsd qword [rcx], xmm0
mov dword [rcx + 8], eax
movzx eax, word [0x1400b129c]
mov word [rcx + 0xc], ax
xor edx, edx
lea rcx, [rbp + 0x5b0]
mov r8d, 0x200
call fcn.1400514f0
xor edx, edx
lea rcx, [rbp + 0x7b0]
mov r8d, 0x200
call fcn.1400514f0
lea r9, [rbp - 0x50]
lea r8, [rbp + 0x7b0]
lea rdx, [rbp + 0x5b0]
lea rcx, [rbp + 0x1b0]
call fcn.140029b80
test eax, eax
je 0x14002bf47
mov ecx, 0x4100
call fcn.14004feec
mov ecx, 0x4100
mov qword [rsp + 0x50], rax
call fcn.14004feec
mov rcx, qword [rsp + 0x50]
mov r15, rax
mov qword [rsp + 0x68], rax
test rcx, rcx
je 0x14002bd06
test rax, rax
je 0x14002bd01
xor edx, edx
mov r8d, 0x4100
call fcn.1400514f0
xor edx, edx
mov r8d, 0x4100
mov rcx, r15
call fcn.1400514f0
mov ebx, r12d
mov dword [rsp + 0x74], 8
xor edx, edx
mov dword [rsp + 0x5c], ebx
mov r8d, 0x200
mov dword [rsp + 0x78], 8
lea rcx, [rbp - 0x50]
call fcn.1400514f0
mov rcx, r12
nop dword [rax + rax]
movzx eax, byte [rbp + rcx + 0x5b0]
mov byte [rbp + rcx - 0x50], al
lea rcx, [rcx + 1]
test al, al
jne 0x14002b8f0
lea rdx, str..inf
lea rcx, [rbp - 0x50]
call qword [sym.imp.SHLWAPI.dll_StrStrIA]
test rax, rax
je 0x14002b924
mov word [rax + 1], 0x7973
mov byte [rax + 3], 0x73
xor edx, edx
lea rcx, [rbp + 0x3b0]
mov r8d, 0x200
call fcn.1400514f0
mov r8d, 0x104
lea rdx, [rbp + 0x3b0]
lea rcx, str._SYSTEMROOT_
call qword [sym.imp.KERNEL32.dll_ExpandEnvironmentStringsA]
lea rcx, [rbp + 0x3b0]
dec rcx
nop dword [rax]
cmp byte [rcx + 1], bl
lea rcx, [rcx + 1]
jne 0x14002b960
movzx eax, word [0x1400b0ef0]
movups xmm0, xmmword [str.System32drivers_]
movups xmmword [rcx], xmm0
mov word [rcx + 0x10], ax
movzx eax, byte [0x1400b0ef2]
mov byte [rcx + 0x12], al
lea rcx, [rbp + 0x3b0]
dec rcx
cmp byte [rcx + 1], bl
lea rcx, [rcx + 1]
jne 0x14002b992
movsd xmm0, qword [str.amdkmpfd]
movzx eax, byte [0x1400b0f08]
movsd qword [rcx], xmm0
mov byte [rcx + 8], al
lea rcx, [rbp + 0x3b0]
dec rcx
nop dword [rax + rax]
cmp byte [rcx + 1], bl
lea rcx, [rcx + 1]
jne 0x14002b9c0
mov eax, dword [str..sys]
mov rdx, rdi
mov dword [rcx], eax
movzx eax, byte [0x1400b0ef8]
mov byte [rcx + 4], al
xor eax, eax
mov qword [rbp - 0x80], rax
mov qword [rbp - 0x78], rax
mov qword [rbp - 0x68], rax
mov qword [rbp - 0x60], rax
lea rax, [rbp - 0x50]
inc rdx
cmp byte [rax + rdx], bl
jne 0x14002b9f4
lea r8, [rbp - 0x68]
lea rcx, [rbp - 0x50]
call fcn.140034980
test eax, eax
je 0x14002ba5e
lea rax, [rbp + 0x3b0]
inc rdi
cmp byte [rax + rdi], bl
jne 0x14002ba14
mov rdx, rdi
lea r8, [rbp - 0x80]
lea rcx, [rbp + 0x3b0]
call fcn.140034980
test eax, eax
je 0x14002ba5e
mov r14, qword [rbp - 0x80]
mov edi, 1
cmp r14w, word [rbp - 0x68]
jne 0x14002ba67
movzx eax, word [rbp - 0x66]
cmp word [rbp - 0x7e], ax
jne 0x14002ba67
movzx eax, word [rbp - 0x62]
cmp word [rbp - 0x7a], ax
cmove ebx, edi
mov dword [rsp + 0x5c], ebx
jmp 0x14002ba67
mov r14, qword [rbp - 0x80]
mov edi, 1
xor edx, edx
mov dword [rsp + 0x7c], r12d
mov r8d, 0x820
lea rcx, [rbp + 0x9b0]
call fcn.1400514f0
mov rdx, qword [rsp + 0x50]
lea rax, [rbp + 0x9b0]
mov qword [rsp + 0x30], rax
lea r8, [rsp + 0x74]
lea rax, [rsp + 0x7c]
mov r9, r15
mov qword [rsp + 0x28], rax
mov ecx, esi
lea rax, [rsp + 0x78]
mov qword [rsp + 0x20], rax
call fcn.14002cf00
mov r13d, eax
test eax, eax
je 0x14002bac6
test ebx, ebx
je 0x14002bac6
mov r15d, edi
xor eax, eax
jmp 0x14002bacb
xor eax, eax
mov r15d, eax
test r13d, r13d
je 0x14002baea
test r15d, r15d
je 0x14002baea
mov r14d, dword [rsp + 0x40]
mov r12d, edi
mov r15, qword [rsp + 0x68]
mov r13d, r14d
jmp 0x14002bcfc
mov esi, dword [rsp + 0x74]
mov r12d, edi
mov dword [rsp + 0x48], eax
mov edx, eax
test esi, esi
je 0x14002bb43
mov r14, qword [rsp + 0x50]
mov ebx, eax
test edx, edx
jne 0x14002bb3d
mov eax, ebx
imul rcx, rax, 0x820
cmp dword [rcx + r14 + 0x614], edx
je 0x14002bb37
xor r8d, r8d
lea r9, [rsp + 0x48]
add rcx, 0x214
add rcx, r14
lea edx, [r8 + 4]
call qword [sym.imp.DIFXAPI.dll_DriverPackageUninstallA]
mov edx, edi
inc ebx
cmp ebx, esi
jb 0x14002bb02
mov r14, qword [rbp - 0x80]
xor eax, eax
mov edi, dword [rsp + 0x78]
test edi, edi
je 0x14002bb96
test edx, edx
jne 0x14002bbc0
mov ebx, eax
test edi, edi
je 0x14002bb9a
test edx, edx
jne 0x14002bbc0
mov eax, ebx
imul rcx, rax, 0x820
mov rax, qword [rsp + 0x68]
cmp dword [rcx + rax + 0x614], edx
je 0x14002bb90
xor r8d, r8d
lea r9, [rsp + 0x48]
add rax, 0x214
add rcx, rax
lea edx, [r8 + 4]
call qword [sym.imp.DIFXAPI.dll_DriverPackageUninstallA]
mov edx, 1
inc ebx
cmp ebx, edi
jb 0x14002bb55
test edx, edx
jne 0x14002bbc0
cmp dword [rbp + 0xfc4], 0
je 0x14002bc87
xor r8d, r8d
lea r9, [rsp + 0x48]
lea rcx, [rbp + 0xbc4]
lea edx, [r8 + 4]
call qword [sym.imp.DIFXAPI.dll_DriverPackageUninstallA]
cmp dword [rsp + 0x7c], 1
jbe 0x14002bc7c
cmp dword [rsp + 0x5c], 0
jne 0x14002bc7c
mov eax, 0x7e2
cmp r14w, ax
ja 0x14002bc7c
cmp word [rbp - 0x7e], 8
jae 0x14002bc7c
mov r14d, 1
mov dword [rsp + 0x28], 4
lea rax, [rsp + 0x5c]
mov dword [rbp + 0x1218], r14d
xor r9d, r9d
mov dword [0x1400da61c], r14d
lea r8, str.RebootIsPending
mov dword [0x1400da4d4], r14d
lea rdx, [0x1400a65a8]
mov dword [rsp + 0x5c], r14d
mov rcx, 0xffffffff80000002
mov qword [rsp + 0x20], rax
xor r12d, r12d
call fcn.1400442e0
test eax, eax
jne 0x14002bc66
mov rcx, qword [0x1400da5d8]
test rcx, rcx
je 0x14002bc66
lea r9, str.Write_RegValue_EEU_REBOOT_PENDING_failed.
mov r8d, r14d
mov edx, 0x60004005
call fcn.140040490
cmp dword [0x1400da4a4], 7
mov ebx, dword [rsp + 0x44]
jge 0x14002bc77
test ebx, ebx
je 0x14002bc90
mov r14d, r12d
jmp 0x14002bc90
mov ecx, 0xc8
call qword [sym.imp.KERNEL32.dll_Sleep]
mov ebx, dword [rsp + 0x44]
mov r14d, dword [rsp + 0x40]
mov edx, 0xc
lea rcx, [rbp + 0x5b0]
call qword [sym.imp.DIFXAPI.dll_DriverPackagePreinstallA]
cmp eax, 0xb7
jne 0x14002bcbb
mov edx, 0xd
lea rcx, [rbp + 0x5b0]
call qword [sym.imp.DIFXAPI.dll_DriverPackagePreinstallA]
test eax, eax
je 0x14002bdc1
cmp eax, 0xb7
je 0x14002bdc1
mov rcx, qword [0x1400da5d8]
test rcx, rcx
je 0x14002bceb
lea r8, str.InstallFilterDriver:_The_install_using_DriverPackagePreinstall_failed.
mov edx, 2
call fcn.140040750
mov r15, qword [rsp + 0x68]
mov r12d, dword [rsp + 0x58]
mov r13d, dword [rbp + 0x1218]
mov rcx, qword [rsp + 0x50]
call fcn.14004fef4
test r15, r15
je 0x14002bd13
mov rcx, r15
call fcn.14004fef4
mov r15d, 1
cmp dword [0x1400da3c0], 0
jne 0x14002bd93
cmp dword [0x1400da3bc], 0
mov eax, 0
cmovne r14d, eax
test r13d, r13d
je 0x14002bd93
lea rax, [rbp + 0x1218]
mov dword [rsp + 0x28], 4
xor r9d, r9d
mov qword [rsp + 0x20], rax
lea r8, [0x1400b1748]
mov dword [rbp + 0x1218], r15d
lea rdx, [0x1400a65a8]
mov rcx, 0xffffffff80000002
call fcn.1400442e0
test eax, eax
jne 0x14002bd93
mov rcx, qword [0x1400da5d8]
test rcx, rcx
je 0x14002bd93
lea r9, str.Write_RegValue_EEU_REBOOT_POP_UP_REQUIRED_failed.
mov r8d, r15d
mov edx, 0x60004005
call fcn.140040490
test r14d, r14d
je 0x14002bd9d
call fcn.140022170
mov eax, r12d
lea r11, [rsp + 0x12d0]
mov rbx, qword [r11 + 0x30]
mov rsi, qword [r11 + 0x38]
mov rdi, qword [r11 + 0x40]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rbp
ret
test r12d, r12d
je 0x14002bceb
test esi, esi
je 0x14002bdf8
test r13d, r13d
je 0x14002bdde
test r15d, r15d
jne 0x14002bdde
lea r9d, [r15 + 1]
jmp 0x14002bde1
xor r9d, r9d
mov rdx, qword [rsp + 0x50]
lea rcx, [rsp + 0x48]
mov r8d, esi
call fcn.14002bf70
mov r12d, eax
jmp 0x14002bdfd
mov r12d, dword [rsp + 0x58]
test edi, edi
je 0x14002be2e
test r13d, r13d
je 0x14002be11
test r15d, r15d
jne 0x14002be11
lea r9d, [r15 + 1]
jmp 0x14002be14
xor r9d, r9d
mov r15, qword [rsp + 0x68]
lea rcx, [rsp + 0x48]
mov rdx, r15
mov r8d, edi
call fcn.14002bf70
mov r12d, eax
jmp 0x14002be33
mov r15, qword [rsp + 0x68]
test r12d, r12d
je 0x14002bcf5
lea rax, [rbp + 0x5b0]
mov dword [rsp + 0x28], 0x200
mov r9d, 2
mov qword [rsp + 0x20], rax
lea r8, str.EeuPciFilterUnInstallPath
mov rcx, 0xffffffff80000002
lea rdx, [0x1400a65a8]
call fcn.1400442e0
lea rax, [rbp + 0x7b0]
mov dword [rsp + 0x28], 0x200
mov r9d, 2
mov qword [rsp + 0x20], rax
lea r8, str.EeuClientPathForPciFilterUnInstall
mov rcx, 0xffffffff80000002
lea rdx, [0x1400a65a8]
call fcn.1400442e0
cmp dword [rsp + 0x60], 0
lea rax, str._amdpfdun.inf
lea rdx, str._amdkmpfd.inf
cmovne rdx, rax
lea rcx, [rbp + 0x1b0]
call qword [sym.imp.SHLWAPI.dll_StrStrIA]
test rax, rax
je 0x14002bf04
mov byte [rax], 0
lea r8, str.EeuPciFilterPackageInstallFolder
lea rax, [rbp + 0x1b0]
mov dword [rsp + 0x28], 0x200
mov r9d, 2
mov qword [rsp + 0x20], rax
lea rdx, [0x1400a65a8]
mov rcx, 0xffffffff80000002
call fcn.1400442e0
mov eax, dword [0x1400da4a4]
mov edi, 1
mov dword [0x1400da4d4], edi
mov r13d, edi
mov dword [0x1400da61c], edi
cmp eax, 5
jge 0x14002bf33
mov ecx, 0x8086
call fcn.1400229f0
mov eax, dword [0x1400da4a4]
cmp eax, 7
jge 0x14002bcfc
test ebx, ebx
cmove r14d, edi
jmp 0x14002bcfc
mov rcx, qword [0x1400da5d8]
test rcx, rcx
je 0x14002bd19
lea r8, str.InstallFilterDriver:_CreateInstallPackage_fails.
mov edx, 2
call fcn.140040750
jmp 0x14002bd19